FreedomBox version of Privoxy
Fetching latest commit…
Cannot retrieve the latest commit at this time
# freedombox-privoxy James Vasile <email@example.com> Released under GPLv3 or later. Modifications to Privoxy are copyright 2012 James Vasile and are released under GNU General Public License, version 3 or later. One thing many people seem to agree the FreedomBox should do is web filtering for privacy and ad-removal. Toward that end, this is a first draft version of a privoxy package for FreedomBox. To use: If you are on a Debian system: ("wheezy" release) cd freedombox-privoxy sudo apt-get build-dep privoxy sudo apt-get install logrotate docbook-website quilt python-beautifulsoup python-lxml devscripts make deb sudo apt-get purge privoxy # yes, this is necessary the first time sudo dpkg -i Debian/*.deb sudo service freedombox-privoxy restart Or, you can do the usual (after installing library dependencies) cd freedombox-privoxy make sudo make install If you want to see what I changed, look in Debian/freedombox-privacy*/debian/patches/9*.dpatch after doing the make deb. I'll get some binary packages up for x86 and Dream Plug soon. This package differs from the standard Debian privoxy package in a few key ways. * First (and most importantly) it doesn't just listen on localhost. The plan is eventually to control access to it via iptables, so by default it listens to the world. Be careful with that if your FreedomBox is reachable via public net. * Second, I imported the https-everywhere ruleset as a privoxy action file and modified the privoxy binary to handle it. * Third, I imported the easyprivacy ruleset from Ad-Block Plus as a privoxy action file. Easyprivacy is not included in ABP and most users are unaware that they can add it in. To me, that makes it a good candidate for inclusion here. * Fourth, I *started* to pull in the easylist ruleset from ABP. It is impossible to fully duplicate easylist with a proxy because the proxy lacks information the browser uses to make more nuanced decisions about what to block. Scripted import of easylist might be buggy, and this needs more investigation. * Fifth, I lowered the amount of filtering compared to the stock privoxy config (see the match-all.action file for details). I did this because unlike a proxy running on your local machine, a proxy that clients don't control should be a bit more careful about breaking sites. I'm trying to get down to a level where we don't break anything and then seeing how we build up from there. If you are a privoxy user, please do give this package a test run and report any problems to: https://github.com/jvasile/freedombox-privoxy/issues Further work will include writing a script to test all the https-everywhere rules and discard the ones that are broken. As well as one to periodically check for new regexes. Anybody who wants to contribute to writing that is welcome to jump on in! ## Dependencies ### Privoxy This package is based on privoxy, which is copyright (C) 2001 the SourceForge Privoxy team. http://www.privoxy.org/. Privoxy is released under GNU General Public License, version 2 or later. ### Internet Junkbuster Privoxy is in turn based on the Internet Junkbuster originally written by and copyright (C) 1997 Anonymous Coders and Junkbusters Corporation. http://www.junkbusters.com The Internet Junkbuster was released under the GNU General Public License, version 2 or later. ### https-everywhere This package downloads https-everywhere, which is released under GNU General Public License version 2 or later and has the following copyright information: Copyright © 2010 Mike Perry <firstname.lastname@example.org> Peter Eckersley <email@example.com> Incorporating code from NoScript, Copyright © 2004-2007 Giorgio Maone <firstname.lastname@example.org> ### git2changelog This package downloads git2changelog, which is copyright 2012 James Vasile and released under GNU General Public License version 3 or later. ### URL Compare Using the URL Compare tests requires GNU Parallel and Lynx.