Command line basics | Pluckeye

This page briefly explains a few of the more basic Pluckeye commands you can run in a console window (which is called a terminal on macOS) to control how Pluckeye operates. In many cases the commands are documented on other pages, so follow the links. For a more detailed explanation of how to run commands, see Notation. For a full list of commands, see Commands.

Setting the delay

Use the delay command to see your current delay, like so:

  pluck delay 5 minutes

Don’t set your delay to be very long yet, though! Take a few days first to get used to Pluckeye and ensure it is behaving the way you want it to.

Seeing the future

To see if there are any pending rule changes, use the future command:

  pluck future

If you see no output from the future command, it either means that your delay is 0 (so any changes you make are immediate), or there are no pending changes. If your delay is 0, you can temporarily set your delay to 60 seconds and add an allow rule to see what the future command would normally print:

  pluck delay 60
  pluck delay 0
  pluck + allow example.com
  pluck future

Setting the system feature

To enable the system feature (which used to be known as level 2):

  pluck + system

To disable the system feature (note that the change won’t take effect for one delay period):

  pluck - system

To see if the system feature is enabled, use the features command:

  pluck features

Other examples

Some common rule-changing examples follow using the + (add) and - (minus) commands with allow and block rules.

Allowing all media

To allow all media (images, videos, etc.) on a website or page:

   pluck + allow example.com
   pluck + allow https://eg.com/something

Blocking all media

To block all media on a website or page:

   pluck + block google.com
   pluck + block https://facebook.com/bob

To block part of a site by url, just block the url. All sub-urls will be automatically blocked.

Blocking images on a particular site

   pluck + block example.com image/

Blocking by program

To block a program’s access to the internet:

   pluck + block program:foo.exe

Removing rules (undoing)

As + adds, so - subtracts:

   pluck - allow example.com
   pluck - allow https://eg.com/something

Observing allowing and blocking

The verdicts command allows you to see what Pluckeye is allowing and blocking.

Complete rule syntax

For a more complete description of the syntax used in Pluckeye rules, see Rules.

More help

Invoke the help and more-help commands to see some other things you can do at the command line. Here is the output of pluck --more-help (as of v1.0.23) for your convenience:

Usage:

  pluck [--help|--more-help]
  pluck [add|del|+|-] <rule>
  pluck export

More Usage:

  pluck abort [term]            # discard pending changes that match term
  pluck approved?               # get expedite approvals from u.pluckeye.net
  pluck clear                   # clear configuration (requires 0 delay)
  pluck compact                 # maintenance command to shrink data
  pluck delay [n]               # print or set the delay
  pluck delays                  # print delay and non-standard delays
  pluck eval [-x] <context(s)>  # show whether context would be allowed
  pluck export                  # export configuration
  pluck factoryreset            # use factory defaults
  pluck features                # print enabled features
  pluck find <term(s)>          # print configuration items that match term(s)
  pluck future                  # like export, but only print the future
  pluck import <file>           # import rules from file
  pluck import-allow <file>     # add hosts to allow
  pluck import-block <file>     # add hosts to block
  pluck mayprove                # synonym for 'approved?'
  pluck mety .<ext>             # show media type for extension ext
  pluck repair                  # attempt to repair Internet
  pluck refresh                 # refetch configurations from u.pluckeye.net
  pluck supplicate              # send expedite requests to u.pluckeye.net
  pluck sync                    # immediately synchronize with u.pluckeye.net
  pluck trim                    # maintenance command to shrink data
  pluck unimport <file>         # remove rules matching those in file
  pluck unimport-allow <file>   # remove hosts to allow
  pluck unimport-block <file>   # remove hosts to block
  pluck uninstall               # uninstall (requires 0 delay)
  pluck upload                  # upload configurations to u.pluckeye.net
  pluck verdicts                # print recent allow/block verdicts
  pluck version                 # print version

  pluck [+|-] <rule1>   <+|-> <rule2>
  pluck [+|-] <rule1> , [+|-] <rule2>

Examples:

  pluck + allow ok.com
  pluck + block http://no.com/something
  pluck - block um.com
  pluck export

More Examples:

  pluck export                  # show the current configuration
  pluck export >file.txt        # put configuration into file.txt
  pluck eval http://a.com/p.png # would http://a.com/p.png be allowed?
  pluck eval http://a.com/ image/ # would an image on a.com be allowed?
  pluck find google             # search configuration for google
  pluck import file.txt         # import configuration from file.txt
  pluck import-allow good.txt   # allow all hosts listed in good.txt
  pluck import-block bad.txt    # block all hosts listed in bad.txt
  pluck delay 3600              # set delay to 1 hour
  pluck delay                   # print the current delay
  pluck abort                   # abort all pending changes
  pluck abort foo               # abort pending changes that contain "foo"
  pluck mety a.txt              # print the default media type for a.txt
  pluck + system                # enable the system feature (aka level 2)
  pluck - system                # disable the system feature
  pluck + nhb                   # enable the nhb feature
  pluck + block image/          # block images
  pluck + block port 123        # block port 123
  pluck + block 1.2.3.4         # block ip address 1.2.3.4
  pluck + block youtube.com     # block youtube.com
  pluck + block facebook.com image/  # block images on facebook.com
  pluck + when 8-9 allow google.com  # allow google.com from 8-9 AM
  pluck + allow program git     # allow git
  pluck + when now+10m a.com    # allow a.com ASAP, but only for 10 minutes
  pluck + allow ok.com + block no.com # fancy
  pluck + allow ok.com , block no.com # fancy

Even more Examples:

  # block all aa.com
  pluck find aa.com | pluck replace allow "when now+5m block" | pluck import -

Features:

  diedisable                    # legacy, prevent extension removal
  diedisable2                   # legacy, like diedisable but gentler
  diedisable3                   # legacy, like diedisable but harsher
  nhb                           # block 'more' (unspecified)
  noapproval                    # disable approvals (aka expedite)
  nochrome                      # disallow chrome-based browsers
  nochromesignin                # disallow chrome sign-in
  nochromesync                  # disallow chrome sync
  nodoh                         # disallow DNS over HTTPS
  nofirefox                     # disallow firefox-based browsers
  nohistoryclear                # disallow clearing of history
  nosync                        # disable synchronization to u.pluckeye.net
  nounbork                      # disable unbork completely
  okincognito                   # permit incognito mode in chrome
  safe                          # use experimental "safe" browsing features
  safer                         # like safe, but more so
  slowunbork                    # allow unbork time to exceed 1 day
  system                        # integrate with the system (aka 'level 2')

Advice:

  Use a short delay while learning how to use Pluck.

  Use the 'system' feature (aka level 2), but ignore most of the rest
  unless you discover a need for one of them.

  Don't import big blacklists using `pluck import`.  Instead, use
  https://u.pluckeye.net/ and create a host or ip specific blacklist
  and import it on the site.  That will keep your specific
  customizations separate from the big blacklist, and it will allow
  you to share the blacklist with other pluckers if you so choose.

  If you still need help, see https://r.pluckeye.net/help .

  Finally, as the Dread Pirate Roberts says, "Get used to disappointment."