3. Installation

Privoxy is available as raw source code (tarball or via CVS), or pre-compiled binaries for various platforms. See the Privoxy Project Page for the most up to date release information. Privoxy is also available via CVS. This is the recommended approach at this time. But please be aware that CVS is constantly changing, and it may break in mysterious ways.

At present, Privoxy is known to run on Win32, Mac OSX, OS/2, AmigaOS, Linux (RedHat, Suse, Debian), FreeBSD, and many flavors of Unix. There are source and binary releases for these available for download at http://sourceforge.net/project/showfiles.php?group_id=11118.

3.1. Source

There are several ways to install Privoxy.

To build Privoxy from source, autoconf and GNU make (gmake) are required. Source is available as gzipped tar archives. For this, first unpack the source:

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

For retrieving the current CVS sources, you'll need the CVS package installed first. Note CVS source is development quality, and may not be stable, or well tested. To download CVS source:

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

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

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

 autoheader
 autoconf
 ./configure      (--help to see options)
 make             (the make from gnu, gmake for *BSD) 
 su 
 make -n install  (to see where all the files will go)
 make install     (to really install)
 

Redhat and SuSE src and binary RPMs can be built with "make redhat-dist" or "make suse-dist" from unpacked sources. You will need to run "autoconf; autoheader; ./configure" beforehand. *BSD will require gmake (from http://www.gnu.org).

For Redhat and SuSE Linux RPM packages, see below.

3.1.1. Red Hat

To build Redhat RPM packages from source, install source as above. Then:

 autoheader
 autoconf
 ./configure
 make redhat-dist
 

This will create both binary and src RPMs in the usual places. Example:

   /usr/src/redhat/RPMS/i686/privoxy-2.9.13-1.i686.rpm

   /usr/src/redhat/SRPMS/privoxy-2.9.13-1.src.rpm

To install, of course:

 rpm -Uvv /usr/src/redhat/RPMS/i686/privoxy-2.9.13-1.i686.rpm
 

This will place the Privoxy configuration files in /etc/privoxy/, and log files in /var/log/privoxy/. Run ckconfig privoxy on to have Privoxy start automatically during init.

3.1.2. SuSE

To build SuSE RPM packages, install source as above. Then:

 autoheader
 autoconf
 ./configure
 make suse-dist
 

This will create both binary and src RPMs in the usual places. Example:

   /usr/src/packages/RPMS/i686/privoxy-2.9.13-1.i686.rpm

   /usr/src/packages/SRPMS/privoxy-2.9.13-1.src.rpm

To install, of course:

 rpm -Uvv /usr/src/packages/RPMS/i686/privoxy-2.9.13-1.i686.rpm
 

This will place the Privoxy configuration files in /etc/privoxy/, and log files in /var/log/privoxy/.

3.1.3. OS/2

Privoxy is packaged in a WarpIN self- installing archive. The self-installing program will be named depending on the release version, something like: privoxyos2_setup_2.9.13.exe. In order to install it, simply run this executable or double-click on its icon and follow the WarpIN installation panels. 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.

If you would like to build binary images on OS/2 yourself, you will need a few Unix-like tools: autoconf, autoheader and sh. These tools will be used to create the required config.h file, which is not part of the source distribution because it differs based on platform. You will also need a compiler. The distribution has been created using IBM VisualAge compilers, but you can use any compiler you like. GCC/EMX has the disadvantage of needing to be single-threaded due to a limitation of EMX's implementation of the select() socket call.

In addition to needing the source code distribution as outlined earlier, you will want to extract the os2seutp directory from CVS:
 cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login          
 cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co os2setup
 
This will create a directory named os2setup/, which will contain the Makefile.vac makefile and os2build.cmd which is used to completely create the binary distribution. The sequence of events for building the executable for yourself goes something like this:
 cd current
 autoheader
 autoconf
 sh configure
 cd ..\os2setup
 nmake -f Makefile.vac
 
You will see this sequence laid out in os2build.cmd.

3.1.4. Windows

Click-click. (I need help on this. Not a clue here. Also for configuration section below. HB.)

3.1.5. Other

Some quick notes on other Operating Systems.

For FreeBSD (and other *BSDs?), the build will require gmake instead of the included make. gmake is available from http://www.gnu.org. The rest should be the same as above for Linux/Unix.