# This file contains a smattering of Pluckeye language samples, and # the language described herein is specific to Pluckeye v0.99.x and # above. # # For Pluckeye v0.98 and below, see old/legacy-rule-syntax.txt # # Note that more specific settings take precedence over less specific settings. # ## Other notes # # To reset settings to the original, you may use the factoryreset command: # # pluck factoryreset # The 'block everything' rule is the highest priority setting and # overrides every other rule. It used to be called "blackout". block everything # The 'allow everything' rule a high priority setting that overrides # all other filtering except for 'block everything'. It used to be # called "whiteout". allow everything # hosts allow pluckeye.net block youtube.com # IP addresses allow 127.0.0.1 block 1.1.1.1 # a subnet (trailing 0's are special to Pluckeye) allow 192.168.0.0 # ipv6 allow ::1 block [::1234] # mediaType allow image/svg+xml block image/ block video/ block application/x-shockwave-flash block application/x-silverlight # ports block port 25 # programs allow program /usr/bin/git # urls allow http://www.pluckeye.net/faq.html allow http://www.pluckeye.net/eyeball.png image/png # scheduled settings # # uses hrs3 to describe time periods # # MTWRFAU <- sUn, Mon, Tue, Wed, thuR, Fri, sAt, sUn # See also https://u.pluckeye.net/hrs3 when M10-12&13-15.T1-2 block everything when 0000-0600 block everything when MTWRF0800-1200&1300-1700 block a.pluckeye.net when 201505301100-201505301130 block b.pluckeye.net when now+30m block c.pluckeye.net when F10-12 allow d.pluckeye.net # mix and match (but not all combinations are valid) block 1.1.1.1 port 80 allow youtube.com text/ when M10-12 allow youtube.com video/ # optional qualification # # Most syntax in this file is technically called "implicit form". # When using "implicit form" the meaning of strings are inferred based # on their syntax. E.g. 1.2.3.4 is an ipv4 address. However, you can # and sometimes must explicitly qualify what you mean using one of the # following prefixes. # # host, ipv4, ipv6, package, port, program, mediaType, when, or url. # # Such qualification is mandatory for package, port, program, and when # terms as well as any term immediately following package or program # because both package and program values can contain spaces. For # example, the following three entries have the same meaning. allow pluckeye.net allow host pluckeye.net allow host:pluckeye.net # the main delay delay 3600 # delay patterns # # The syntax of these is *very* picky at present. # # To set a 10 hour delay for allowing everything (a.k.a., a whiteout): delay 36000 + action:allow everything:true # must be a tab ^ # # In a bash shell this is done like so: # # pluck + delay 36000 $'+ action:allow\teverything' # # To set a 3 hour delay for unblocking youtube.com: # # pluck + delay 3h $'- action:block\thost:youtube.com' # noteworthy feature settings # system is a feature to integrate with the entire system, not just a # browser. In Pluckeye 0.98.x and below, this formerly was called # installation level 2. system # nhb is a feature that causes Pluckeye to block "more" outside the # browser context. nhb