I really like browsing without all the flashy ads around, so I've been using the filtering-proxy Privoxy now for many years. But there is no longer support for Mac OS X, as there isn't a maintainer for the Mac OS X port any more. MacPorts still has 3.0.12, which has some major bugs (timeouts), so I decided to build from source. Here's how to get it run...
First, get the source for Privoxy 3.0.16 from SourceForge (1.7MB direct download). Unpack the download somewhere, and make sure you have Xcode installed somewhere.
Open Terminal and change to the directory where you expanded Privoxy: cd ~/Downloads/privoxy-3.0.16-stable (or wherever you put it). You can drag the folder to the Terminal to complete the path, if you wish.
Next, build the app with these commands:
$ autoheader $ autoconf $ ./configure $ sudo make installIf you had Privoxy installed before, you should already have the user privoxy, otherwise you need to create it:
$ /usr/bin/dscl /Local/Default -create /Groups/_privoxy $ /usr/bin/dscl /Local/Default -append /Groups/_privoxy RecordName privoxy $ /usr/bin/dscl /Local/Default -create /Groups/_privoxy Password * $ /usr/bin/dscl /Local/Default -create /Groups/_privoxy PrimaryGroupID 601 $ /usr/bin/dscl /Local/Default -create /Groups/_privoxy RealName "privoxy users" $ /usr/bin/dscl /Local/Default -create /Users/_privoxy $ /usr/bin/dscl /Local/Default -append /Users/_privoxy RecordName privoxy $ /usr/bin/dscl /Local/Default -create /Users/_privoxy NFSHomeDirectory /var/empty $ /usr/bin/dscl /Local/Default -create /Users/_privoxy Password * $ /usr/bin/dscl /Local/Default -create /Users/_privoxy PrimaryGroupID 601 $ /usr/bin/dscl /Local/Default -create /Users/_privoxy RealName "privoxy server" $ /usr/bin/dscl /Local/Default -create /Users/_privoxy UniqueID 601 $ /usr/bin/dscl /Local/Default -create /Users/_privoxy UserShell /usr/bin/false
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>org.privoxy.launchd.privoxy</string> <key>ProgramArguments</key> <array> <string>/usr/local/sbin/privoxy</string> <string>--user</string> <string>privoxy</string> <string>--pidfile</string> <string>/var/run/privoxy.pid</string> <string>/usr/local/etc/privoxy/config</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist>
$ sudo chown root:wheel /Library/LaunchDaemons/org.privoxy.plistThen start the app using launchctl:
$ sudo launchctl load /Library/LaunchDaemons/org.privoxy.plistI use Firefox with privoxy, so tell Firefox to use a local proxy in the network setting, port 8118, and test if privoxy is running by opening the Privoxy status page. You should see the status page of your proxy now.
Mac OS X Hints
http://hints.macworld.com/article.php?story=20100227045756617