Add a "Whats New in this release" Section. Further work on multiple filter
[privoxy.git] / doc / webserver / user-manual / installation.html
index c73538e..611c4e9 100644 (file)
@@ -1,20 +1,20 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <HTML
 ><HEAD
 ><TITLE
 >Installation</TITLE
 ><META
 NAME="GENERATOR"
-CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
+CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
+"><LINK
 REL="HOME"
-TITLE="Privoxy 3.0.3 User Manual"
+TITLE="Privoxy 3.0.4 User Manual"
 HREF="index.html"><LINK
 REL="PREVIOUS"
 TITLE="Introduction"
 HREF="introduction.html"><LINK
 REL="NEXT"
-TITLE="Note to Upgraders"
-HREF="upgradersnote.html"><LINK
+TITLE="What's New in this Release"
+HREF="whatsnew.html"><LINK
 REL="STYLESHEET"
 TYPE="text/css"
 HREF="../p_doc.css"></HEAD
@@ -37,7 +37,7 @@ CELLSPACING="0"
 ><TH
 COLSPAN="3"
 ALIGN="center"
->Privoxy 3.0.3 User Manual</TH
+>Privoxy 3.0.4 User Manual</TH
 ></TR
 ><TR
 ><TD
@@ -59,7 +59,7 @@ WIDTH="10%"
 ALIGN="right"
 VALIGN="bottom"
 ><A
-HREF="upgradersnote.html"
+HREF="whatsnew.html"
 ACCESSKEY="N"
 >Next</A
 ></TD
@@ -74,8 +74,8 @@ CLASS="SECT1"
 CLASS="SECT1"
 ><A
 NAME="INSTALLATION"
->2. Installation</A
-></H1
+></A
+>2. Installation</H1
 ><P
 > <SPAN
 CLASS="APPLICATION"
@@ -108,7 +108,7 @@ CLASS="EMPHASIS"
  you.</I
 ></SPAN
 > See the <A
-HREF="upgradersnote.html"
+HREF="whatsnew.html#UPGRADERSNOTE"
 >note to
  upgraders</A
 > section below.</P
@@ -118,8 +118,8 @@ CLASS="SECT2"
 CLASS="SECT2"
 ><A
 NAME="INSTALLATION-PACKAGES"
->2.1. Binary Packages</A
-></H2
+></A
+>2.1. Binary Packages</H2
 ><P
 >How to install the binary packages depends on your operating system:</P
 ><DIV
@@ -128,12 +128,12 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-PACK-RPM"
->2.1.1. Red Hat, SuSE and Conectiva RPMs</A
-></H3
+></A
+>2.1.1. Red Hat, SuSE and Conectiva RPMs</H3
 ><P
-> RPMs can be installed with <VAR
+> RPMs can be installed with <TT
 CLASS="LITERAL"
->rpm -Uvh privoxy-3.0.3-1.rpm</VAR
+>rpm -Uvh privoxy-3.0.4-1.rpm</TT
 >,
  and will use <TT
 CLASS="FILENAME"
@@ -163,9 +163,9 @@ CLASS="COMMAND"
 automatically start Privoxy in the boot process.</P
 ><P
 > If you have problems with failed dependencies, try rebuilding the SRC RPM: 
- <VAR
+ <TT
 CLASS="LITERAL"
->rpm --rebuild privoxy-3.0.3-1.src.rpm</VAR
+>rpm --rebuild privoxy-3.0.4-1.src.rpm</TT
 >. This 
  will use your locally installed libraries and RPM version. </P
 ><P
@@ -189,12 +189,12 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-DEB"
->2.1.2. Debian</A
-></H3
+></A
+>2.1.2. Debian</H3
 ><P
-> DEBs can be installed with <VAR
+> DEBs can be installed with <TT
 CLASS="LITERAL"
->apt-get install privoxy</VAR
+>apt-get install privoxy</TT
 >,
  and will use <TT
 CLASS="FILENAME"
@@ -208,13 +208,12 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-PACK-WIN"
->2.1.3. Windows</A
-></H3
+></A
+>2.1.3. Windows</H3
 ><P
 > 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. </P
+ in the same directory as you installed Privoxy in. </P
 ></DIV
 ><DIV
 CLASS="SECT3"
@@ -222,12 +221,12 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-PACK-BINTGZ"
->2.1.4. Solaris, NetBSD, FreeBSD, HP-UX</A
-></H3
+></A
+>2.1.4. Solaris, NetBSD, FreeBSD, HP-UX</H3
 ><P
-> Create a new directory, <VAR
+> Create a new directory, <TT
 CLASS="LITERAL"
->cd</VAR
+>cd</TT
 > to it, then unzip and
  untar the archive. For the most part, you'll have to figure out where
  things go. </P
@@ -238,8 +237,8 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-OS2"
->2.1.5. OS/2</A
-></H3
+></A
+>2.1.5. OS/2</H3
 ><P
 > First, make sure that no previous installations of
  <SPAN
@@ -280,40 +279,40 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-MAC"
->2.1.6. Mac OSX</A
-></H3
+></A
+>2.1.6. Mac OSX</H3
 ><P
 > 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
- <VAR
+ <TT
 CLASS="LITERAL"
->Privoxy.pkg</VAR
+>Privoxy.pkg</TT
 >
  and follow the installation process.
  <SPAN
 CLASS="APPLICATION"
 >Privoxy</SPAN
 > will be installed in the folder
- <VAR
+ <TT
 CLASS="LITERAL"
->/Library/Privoxy</VAR
+>/Library/Privoxy</TT
 >.
  It will start automatically whenever you start up.  To prevent it from
  starting automatically, remove or rename the folder
- <VAR
+ <TT
 CLASS="LITERAL"
->/Library/StartupItems/Privoxy</VAR
+>/Library/StartupItems/Privoxy</TT
 >. </P
 ><P
 > To start Privoxy by hand, double-click on 
- <VAR
+ <TT
 CLASS="LITERAL"
->StartPrivoxy.command</VAR
+>StartPrivoxy.command</TT
 > in the
- <VAR
+ <TT
 CLASS="LITERAL"
->/Library/Privoxy</VAR
+>/Library/Privoxy</TT
 > folder.
  Or, type this command in the Terminal:</P
 ><P
@@ -340,8 +339,8 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATION-AMIGA"
->2.1.7. AmigaOS</A
-></H3
+></A
+>2.1.7. AmigaOS</H3
 ><P
 > Copy and then unpack the <TT
 CLASS="FILENAME"
@@ -360,8 +359,8 @@ CLASS="SECT3"
 CLASS="SECT3"
 ><A
 NAME="INSTALLATTION-GENTOO"
->2.1.8. Gentoo</A
-></H3
+></A
+>2.1.8. Gentoo</H3
 ><P
 > Gentoo source packages (Ebuilds) for <SPAN
 CLASS="APPLICATION"
@@ -378,13 +377,13 @@ CLASS="APPLICATION"
 CLASS="APPLICATION"
 >Privoxy</SPAN
 > under Gentoo just do 
- first <VAR
+ first <TT
 CLASS="LITERAL"
->emerge rsync</VAR
+>emerge rsync</TT
 > to get the latest changes from the 
- Portage tree. With <VAR
+ Portage tree. With <TT
 CLASS="LITERAL"
->emerge privoxy</VAR
+>emerge privoxy</TT
 > you install the latest 
  version.</P
 ><P
@@ -394,7 +393,7 @@ CLASS="FILENAME"
 >, the 
  documentation is in <TT
 CLASS="FILENAME"
->/usr/share/doc/privoxy-3.0.3</TT
+>/usr/share/doc/privoxy-3.0.4</TT
 >
  and the Log directory is in <TT
 CLASS="FILENAME"
@@ -408,8 +407,8 @@ CLASS="SECT2"
 CLASS="SECT2"
 ><A
 NAME="INSTALLATION-SOURCE"
->2.2. Building from Source</A
-></H2
+></A
+>2.2. Building from Source</H2
 ><P
 > The most convenient way to obtain the <SPAN
 CLASS="APPLICATION"
@@ -429,12 +428,7 @@ HREF="http://sourceforge.net/cvs/?group_id=11118"
 TARGET="_top"
 >the
  CVS repository</A
-> or simply download <A
-HREF="http://cvs.sourceforge.net/cvstarballs/ijbswa-cvsroot.tar.bz2"
-TARGET="_top"
->the nightly CVS
- tarball.</A
-></P
+>. </P
 ><P
 > To build <SPAN
 CLASS="APPLICATION"
@@ -457,12 +451,7 @@ TARGET="_top"
 > are required.</P
 ><P
 > When building from a source tarball (either release version or
- <A
-HREF="http://cvs.sourceforge.net/cvstarballs/ijbswa-cvsroot.tar.bz2"
-TARGET="_top"
->nightly CVS
- tarball</A
->), first unpack the source: </P
+ a nightly CVS tarball, first unpack the source: </P
 ><P
 > <TABLE
 BORDER="0"
@@ -472,8 +461,8 @@ WIDTH="100%"
 ><TD
 ><PRE
 CLASS="SCREEN"
-> tar xzvf privoxy-3.0.3-src* [.tgz or .tar.gz]
- cd privoxy-3.0.3</PRE
+> tar xzvf privoxy-3.0.4-beta-src* [.tgz or .tar.gz]
+ cd privoxy-3.0.4-beta</PRE
 ></TD
 ></TR
 ></TABLE
@@ -481,7 +470,8 @@ CLASS="SCREEN"
 ><P
 > For retrieving the current CVS sources, you'll need CVS installed.
  Note that sources from CVS are development quality, and may not be
- stable, or well tested. To download CVS source:</P
+ stable, or well tested. To download CVS source, check the Sourceforge
+ documentation, which might give commands like:</P
 ><P
 > <TABLE
 BORDER="0"
@@ -491,8 +481,8 @@ WIDTH="100%"
 ><TD
 ><PRE
 CLASS="SCREEN"
->  cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
-  cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co current
+>  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</PRE
 ></TD
 ></TR
@@ -505,7 +495,72 @@ CLASS="FILENAME"
 >, which will 
  contain the source tree.</P
 ><P
-> Then, in either case, to build from unpacked tarball or CVS source:</P
+> You can also check out any <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+>
+ <SPAN
+CLASS="QUOTE"
+>"branch"</SPAN
+>, just exchange the <SPAN
+CLASS="APPLICATION"
+>current</SPAN
+>
+ name with the wanted branch name (Example: v_3_0_branch for the 3.0 cvs
+ tree).</P
+><P
+> It is also strongly recommended to not run <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+>
+ as root, and instead it is suggested to create a <SPAN
+CLASS="QUOTE"
+>"privoxy"</SPAN
+> user
+ and group for this purpose. See your local documentation for the correct 
+ command line to do this. </P
+><P
+> <TT
+CLASS="FILENAME"
+>/etc/passwd</TT
+> might then look like:</P
+><P
+> <TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="SCREEN"
+>  privoxy:*:7777:7777:privoxy proxy:/no/home:/no/shell</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+> And then <TT
+CLASS="FILENAME"
+>/etc/group</TT
+>, like:</P
+><P
+> <TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="SCREEN"
+>  privoxy:*:7777:</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+> Some binary packages may do this for you.</P
+><P
+> Then, to build from either unpacked tarball or CVS source:</P
 ><P
 > <TABLE
 BORDER="0"
@@ -518,16 +573,19 @@ CLASS="SCREEN"
 > autoheader
  autoconf
  ./configure      # (--help to see options)
- make             # (the make from gnu, gmake for *BSD
+ make             # (the make from GNU, sometimes called gmake
  su 
  make -n install  # (to see where all the files will go)
- make install     # (to really install)</PRE
+ make -s install  # (to really install, -s to silence output)</PRE
 ></TD
 ></TR
 ></TABLE
 ></P
 ><P
->  If you have gnu make, you can have the first four steps 
+>  If you have GNU <B
+CLASS="COMMAND"
+>make</B
+>, you can have the first four steps
   automatically done for you by just typing:</P
 ><P
 > <TABLE
@@ -546,6 +604,204 @@ CLASS="SCREEN"
 ><P
 >  in the freshly downloaded or unpacked source directory.</P
 ><P
+> <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>WARNING:</I
+></SPAN
+> If installing as root, the install will fail
+ unless a non-root user or group is specified, or a <TT
+CLASS="LITERAL"
+>privoxy</TT
+>
+ 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 <SPAN
+CLASS="QUOTE"
+>"user"</SPAN
+>. 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.</P
+><P
+> <B
+CLASS="COMMAND"
+>configure</B
+> accepts <TT
+CLASS="LITERAL"
+>--with-user</TT
+> and
+ <TT
+CLASS="LITERAL"
+>--with-group</TT
+> options for setting user and group ownership
+ of the configuration files (which need to be writable by the daemon). The
+ specified <SPAN
+CLASS="emphasis"
+><I
+CLASS="EMPHASIS"
+>user must already exist</I
+></SPAN
+>. When starting
+ <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+>, it should be run as this same user to
+ insure write access to configuration and log files.</P
+><P
+> Alternately, you can specify <TT
+CLASS="LITERAL"
+>user</TT
+> and <TT
+CLASS="LITERAL"
+>group</TT
+>
+ on the <B
+CLASS="COMMAND"
+>make</B
+> command line, but be sure both already exist:</P
+><P
+> <TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
+><TR
+><TD
+><PRE
+CLASS="SCREEN"
+> make -s install  USER=privoxy GROUP=privoxy</PRE
+></TD
+></TR
+></TABLE
+></P
+><P
+> The default installation path for <B
+CLASS="COMMAND"
+>make install</B
+> is 
+ <TT
+CLASS="FILENAME"
+>/usr/local</TT
+>. This may of course be customized with 
+ the various <B
+CLASS="COMMAND"
+>./configure</B
+> path options. If you are doing 
+ a root install to anywhere else besides <TT
+CLASS="FILENAME"
+>/usr/local</TT
+>, be
+ sure to set the appropriate paths with the correct configure options
+ (<B
+CLASS="COMMAND"
+>./configure --help</B
+>).</P
+><P
+> If you do install to <TT
+CLASS="FILENAME"
+>/usr/local</TT
+>, the install will use
+ <TT
+CLASS="LITERAL"
+>sysconfdir=$prefix/etc/privoxy</TT
+> by default. All other
+ destinations, and the direct usage of <TT
+CLASS="LITERAL"
+>--sysconfdir</TT
+> flag
+ behave like normal, i.e. will not add the extra <TT
+CLASS="FILENAME"
+>privoxy</TT
+>
+ directory. This is for a safer install, as there may already exist another
+ program that uses a file with the <SPAN
+CLASS="QUOTE"
+>"config"</SPAN
+> name, and thus makes
+ <TT
+CLASS="FILENAME"
+>/usr/local/etc</TT
+> cleaner.</P
+><P
+> If installing to <TT
+CLASS="FILENAME"
+>/usr/local</TT
+>, the docs will go by default
+ to <TT
+CLASS="FILENAME"
+>$prefix/share/doc</TT
+>. But if this directory doesn't
+ exist, it will then try <TT
+CLASS="FILENAME"
+>$prefix/doc</TT
+> and install there before
+ creating a new <TT
+CLASS="FILENAME"
+>$prefix/share/doc</TT
+> just for
+ <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+>.</P
+><P
+> Again, if the installs goes to <TT
+CLASS="FILENAME"
+>/usr/local</TT
+>, the
+ <TT
+CLASS="LITERAL"
+>localstatedir</TT
+> (ie: <TT
+CLASS="FILENAME"
+>var/</TT
+>) will default
+ to <TT
+CLASS="FILENAME"
+>/var</TT
+> instead of <TT
+CLASS="LITERAL"
+>$prefix/var</TT
+> so
+ the logs will go to <TT
+CLASS="FILENAME"
+>/var/log/privoxy/</TT
+>, and the pid file
+ will be created in <TT
+CLASS="FILENAME"
+>/var/run/privoxy.pid</TT
+>. </P
+><P
+> <B
+CLASS="COMMAND"
+>make install</B
+> will attempt to set the correct values 
+ in <TT
+CLASS="FILENAME"
+>config</TT
+> (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 <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+>. The init 
+ script should be checked for correct paths and values, if anything other than
+ a default install is done.</P
+><P
+> If install finds previous versions of any configuration files, these will not
+ be overwritten, and the new ones will be installed with a <SPAN
+CLASS="QUOTE"
+>"new"</SPAN
+>
+ extension. You will then need to manually update the 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 <SPAN
+CLASS="APPLICATION"
+>Privoxy</SPAN
+> is already running, you will
+ have to restart it manually.</P
+><P
 > For more detailed instructions on how to build Redhat and SuSE RPMs,
  Windows self-extracting installers, building on platforms with
  special requirements etc, please consult the <A
@@ -560,8 +816,8 @@ CLASS="SECT2"
 CLASS="SECT2"
 ><A
 NAME="INSTALLATION-KEEPUPDATED"
->2.3. Keeping your Installation Up-to-Date</A
-></H2
+></A
+>2.3. Keeping your Installation Up-to-Date</H2
 ><P
 > As user feedback comes in and development continues, we will make updated versions
  of both the main <A
@@ -586,10 +842,10 @@ TARGET="_top"
  to our announce  mailing list</A
 >, ijbswa-announce@lists.sourceforge.net.</P
 ><P
-> In order not to loose your personal changes and adjustments when updating
- to the latest <VAR
+> In order not to lose your personal changes and adjustments when updating
+ to the latest <TT
 CLASS="LITERAL"
->default.action</VAR
+>default.action</TT
 > file we <SPAN
 CLASS="emphasis"
 ><I
@@ -597,9 +853,9 @@ CLASS="EMPHASIS"
 >strongly
  recommend</I
 ></SPAN
-> that you use <VAR
+> that you use <TT
 CLASS="LITERAL"
->user.action</VAR
+>user.action</TT
 > for your
  customization of <SPAN
 CLASS="APPLICATION"
@@ -644,7 +900,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="upgradersnote.html"
+HREF="whatsnew.html"
 ACCESSKEY="N"
 >Next</A
 ></TD
@@ -664,7 +920,7 @@ VALIGN="top"
 WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
->Note to Upgraders</TD
+>What's New in this Release</TD
 ></TR
 ></TABLE
 ></DIV