2. Installation

Privoxy is available both in convenient pre-compiled packages for a wide range of operating systems, and as raw source code. For most users, we recommend using the packages, which can be downloaded from our Privoxy Project Page.

Note: If you have a previous Junkbuster or Privoxy installation on your system, you will need to remove it. On some platforms, this may be done for you as part of their installation procedure. (See below for your platform). In any case be sure to backup your old configuration if it is valuable to you. See the note to upgraders section below.

2.1. Binary Packages

How to install the binary packages depends on your operating system:

2.1.1. Red Hat, SuSE and Conectiva RPMs

RPMs can be installed with rpm -Uvh privoxy-3.0.3-1.rpm, and will use /etc/privoxy for the location of configuration files.

Note that on Red Hat, Privoxy will not be automatically started on system boot. You will need to enable that using chkconfig, ntsysv, or similar methods. Note that SuSE will automatically start Privoxy in the boot process.

If you have problems with failed dependencies, try rebuilding the SRC RPM: rpm --rebuild privoxy-3.0.3-1.src.rpm. This will use your locally installed libraries and RPM version.

Also note that if you have a Junkbuster RPM installed on your system, you need to remove it first, because the packages conflict. Otherwise, RPM will try to remove Junkbuster automatically, before installing Privoxy.

2.1.2. Debian

DEBs can be installed with apt-get install privoxy, and will use /etc/privoxy for the location of configuration files.

2.1.3. Windows

Just double-click the installer, which will guide you through the installation process. You will find the configuration files in the same directory as you installed Privoxy in. We do not use the registry of Windows.

2.1.4. Solaris, NetBSD, FreeBSD, HP-UX

Create a new directory, cd to it, then unzip and untar the archive. For the most part, you'll have to figure out where things go.

2.1.5. OS/2

First, make sure that no previous installations of Junkbuster and / or Privoxy are left on your system. Check that no Junkbuster or Privoxy objects are in your startup folder.

Then, just double-click the WarpIN self-installing archive, which will guide you through the installation process. A shadow of the Privoxy executable will be placed in your startup folder so it will start automatically whenever OS/2 starts.

The directory you choose to install Privoxy into will contain all of the configuration files.

2.1.6. Mac OSX

Unzip the downloaded file (you can either double-click on the file from the finder, or from the desktop if you downloaded it there). Then, double-click on the package installer icon named Privoxy.pkg and follow the installation process. Privoxy will be installed in the folder /Library/Privoxy. It will start automatically whenever you start up. To prevent it from starting automatically, remove or rename the folder /Library/StartupItems/Privoxy.

To start Privoxy by hand, double-click on StartPrivoxy.command in the /Library/Privoxy folder. Or, type this command in the Terminal:

  /Library/Privoxy/StartPrivoxy.command
  

You will be prompted for the administrator password.

2.1.7. AmigaOS

Copy and then unpack the lha archive to a suitable location. All necessary files will be installed into Privoxy directory, including all configuration and log files. To uninstall, just remove this directory.

2.1.8. Gentoo

Gentoo source packages (Ebuilds) for Privoxy are contained in the Gentoo Portage Tree (they are not on the download page, but there is a Gentoo section, where you can see when a new Privoxy Version is added to the Portage Tree).

Before installing Privoxy under Gentoo just do first emerge rsync to get the latest changes from the Portage tree. With emerge privoxy you install the latest version.

Configuration files are in /etc/privoxy, the documentation is in /usr/share/doc/privoxy-3.0.3 and the Log directory is in /var/log/privoxy.

2.2. Building from Source

The most convenient way to obtain the Privoxy sources is to download the source tarball from our project page.

If you like to live on the bleeding edge and are not afraid of using possibly unstable development versions, you can check out the up-to-the-minute version directly from the CVS repository.

To build Privoxy from source, autoconf, GNU make (gmake), and, of course, a C compiler like gcc are required.

When building from a source tarball, first unpack the source:

 
         tar xzvf privoxy-3.0.3-src* [.tgz or .tar.gz]
         cd privoxy-3.0.3

For retrieving the current CVS sources, you'll need a CVS client installed. Note that sources from CVS are typicially development quality, and may not be stable, or well tested. To download CVS source, check the Sourceforge documentation, which might give commands like:

  
             cvs -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa login
             cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa co current
             cd current

This will create a directory named current/, which will contain the source tree.

You can also check out any Privoxy "branch", just exchange the current name with the wanted branch name (Example: v_3_0_branch for the 3.0 cvs tree).

It is also strongly recommended to not run Privoxy as root, and instead it is suggested to create a "privoxy" user and group for this purpose. See your local documentation for the correct command line to do this.

/etc/passwd might then look like:

  privoxy:*:7777:7777:privoxy proxy:/no/home:/no/shell

And then /etc/group, like:

  privoxy:*:7777:

Some binary packages may do this for you.

Then, to build from either unpacked tarball or CVS source:

 
           autoheader
           autoconf
           ./configure      # (--help to see options)
           make             # (the make from GNU, sometimes called gmake) 
           su 
           make -n install  # (to see where all the files will go)
           make -s install  # (to really install, -s to silence output)

If you have GNU make, you can have the first four steps automatically done for you by just typing:

  make

in the freshly downloaded or unpacked source directory.

WARNING: If installing as root, the install will fail unless a non-root user or group is specified, or a privoxy user and group already exist on the system. If a non-root user is specified, and no group, then the installation will try to also use a group of the same name as "user". If a group is specified (and no user), then the support files will be installed as writable by that group, and owned by the user running the installation.

configure accepts --with-user and --with-group options for setting user and group ownership of the configuration files (which need to be writable by the daemon). The specified user must already exist. When starting Privoxy, it should be run as this same user to insure write access to configuration and log files.

Alternately, you can specify user and group on the make command line, but be sure both already exist:

 make -s install  USER=privoxy GROUP=privoxy

The default installation path for make install is /usr/local. This may of course be customized with the various ./configure path options. If you are doing a root install to anywhere else besides /usr/local, be sure to set the appropriate paths with the correct configure options (./configure --help).

If you do install to /usr/local, the install will use sysconfdir=$prefix/etc/privoxy by default. All other destinations, and the direct usage of --sysconfdir flag behave like normal, i.e. will not add the extra privoxy directory. This is for a safer install, as there may already exist another program that uses a file with the "config" name, and thus makes /usr/local/etc cleaner.

If installing to /usr/local, the docs will go by default to $prefix/share/doc. But if this directory doesn't exist, it will then try $prefix/doc and install there before creating a new $prefix/share/doc just for Privoxy.

Again, if the installs goes to /usr/local, the localstatedir (ie: var/) will default to /var instead of $prefix/var so the logs will go to /var/log/privoxy/, and the pid file will be created in /var/run/privoxy.pid.

make install will attempt to set the correct values in config (main configuration file). You may want to check this to make sure all values are correct. If appropriate, an init script will be installed, but it is up to the user to determine how and where to start Privoxy. The init script should be checked for correct paths and values, if anything other than a default install is done.

If install finds previous versions of any local configuration files, these will not be overwritten, and the new ones will be installed with a "new" extension. default.action, default.filter, and standard.action will be overwritten. You will then need to manually update the other installed configuration files as needed. All template files will be overwritten. If you have customized, local templates, you should save these first. If a previous version of Privoxy is already running, you will have to restart it manually.

For more detailed instructions on how to build Redhat RPMs, Windows self-extracting installers, building on platforms with special requirements etc, please consult the developer manual.

2.3. Keeping your Installation Up-to-Date

As user feedback comes in and development continues, we will make updated versions of both the main actions file (as a separate package) and the software itself (including the actions file) available for download.

If you wish to receive an email notification whenever we release updates of Privoxy or the actions file, subscribe to our announce mailing list, ijbswa-announce@lists.sourceforge.net.

In order not to loose your personal changes and adjustments when updating to the latest default.action file we strongly recommend that you use user.action for your customization of Privoxy. See the Chapter on actions files for details.