Syncing with recent sgml updates.
[privoxy.git] / doc / webserver / user-manual / installation.html
index 87131cb..9982796 100644 (file)
@@ -7,14 +7,14 @@ NAME="GENERATOR"
 CONTENT="Modular DocBook HTML Stylesheet Version 1.76b+
 "><LINK
 REL="HOME"
-TITLE="Privoxy 3.1.1 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.1.1 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
@@ -73,7 +73,9 @@ CLASS="SECT1"
 ><H1
 CLASS="SECT1"
 ><A
-NAME="INSTALLATION">2. Installation</H1
+NAME="INSTALLATION"
+></A
+>2. Installation</H1
 ><P
 > <SPAN
 CLASS="APPLICATION"
@@ -106,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
@@ -115,7 +117,9 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="INSTALLATION-PACKAGES">2.1. Binary Packages</H2
+NAME="INSTALLATION-PACKAGES"
+></A
+>2.1. Binary Packages</H2
 ><P
 >How to install the binary packages depends on your operating system:</P
 ><DIV
@@ -123,11 +127,13 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-PACK-RPM">2.1.1. Red Hat, SuSE and Conectiva RPMs</H3
+NAME="INSTALLATION-PACK-RPM"
+></A
+>2.1.1. Red Hat, SuSE and Conectiva RPMs</H3
 ><P
 > RPMs can be installed with <TT
 CLASS="LITERAL"
->rpm -Uvh privoxy-3.1.1-1.rpm</TT
+>rpm -Uvh privoxy-3.0.4-1.rpm</TT
 >,
  and will use <TT
 CLASS="FILENAME"
@@ -159,7 +165,7 @@ automatically start Privoxy in the boot process.</P
 > If you have problems with failed dependencies, try rebuilding the SRC RPM: 
  <TT
 CLASS="LITERAL"
->rpm --rebuild privoxy-3.1.1-1.src.rpm</TT
+>rpm --rebuild privoxy-3.0.4-1.src.rpm</TT
 >. This 
  will use your locally installed libraries and RPM version. </P
 ><P
@@ -182,37 +188,41 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-DEB">2.1.2. Debian</H3
+NAME="INSTALLATION-DEB"
+></A
+>2.1.2. Debian</H3
 ><P
 > DEBs can be installed with <TT
 CLASS="LITERAL"
->dpkg -i
- privoxy_3.1.1-1.deb</TT
->, and will use
- <TT
+>apt-get install privoxy</TT
+>,
+ and will use <TT
 CLASS="FILENAME"
 >/etc/privoxy</TT
-> for the location of configuration
- files.</P
+> for the location of 
configuration files.</P
 ></DIV
 ><DIV
 CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-PACK-WIN">2.1.3. Windows</H3
+NAME="INSTALLATION-PACK-WIN"
+></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"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-PACK-BINTGZ">2.1.4. Solaris, NetBSD, FreeBSD, HP-UX</H3
+NAME="INSTALLATION-PACK-BINTGZ"
+></A
+>2.1.4. Solaris, NetBSD, FreeBSD, HP-UX</H3
 ><P
 > Create a new directory, <TT
 CLASS="LITERAL"
@@ -226,7 +236,9 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-OS2">2.1.5. OS/2</H3
+NAME="INSTALLATION-OS2"
+></A
+>2.1.5. OS/2</H3
 ><P
 > First, make sure that no previous installations of
  <SPAN
@@ -266,7 +278,9 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-MAC">2.1.6. Mac OSX</H3
+NAME="INSTALLATION-MAC"
+></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).
@@ -324,7 +338,9 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATION-AMIGA">2.1.7. AmigaOS</H3
+NAME="INSTALLATION-AMIGA"
+></A
+>2.1.7. AmigaOS</H3
 ><P
 > Copy and then unpack the <TT
 CLASS="FILENAME"
@@ -342,7 +358,9 @@ CLASS="SECT3"
 ><H3
 CLASS="SECT3"
 ><A
-NAME="INSTALLATTION-GENTOO">2.1.8. Gentoo</H3
+NAME="INSTALLATTION-GENTOO"
+></A
+>2.1.8. Gentoo</H3
 ><P
 > Gentoo source packages (Ebuilds) for <SPAN
 CLASS="APPLICATION"
@@ -375,7 +393,7 @@ CLASS="FILENAME"
 >, the 
  documentation is in <TT
 CLASS="FILENAME"
->/usr/share/doc/privoxy-3.1.1</TT
+>/usr/share/doc/privoxy-3.0.4</TT
 >
  and the Log directory is in <TT
 CLASS="FILENAME"
@@ -388,7 +406,9 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="INSTALLATION-SOURCE">2.2. Building from Source</H2
+NAME="INSTALLATION-SOURCE"
+></A
+>2.2. Building from Source</H2
 ><P
 > The most convenient way to obtain the <SPAN
 CLASS="APPLICATION"
@@ -408,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.gz"
-TARGET="_top"
->the nightly CVS
- tarball.</A
-></P
+>. </P
 ><P
 > To build <SPAN
 CLASS="APPLICATION"
@@ -435,13 +450,8 @@ TARGET="_top"
 >gcc</A
 > are required.</P
 ><P
-> When building from a source tarball (either release version or
- <A
-HREF="http://cvs.sourceforge.net/cvstarballs/ijbswa-cvsroot.tar.gz"
-TARGET="_top"
->nightly CVS
- tarball</A
->), first unpack the source: </P
+> When building from a source tarball,
+ first unpack the source: </P
 ><P
 > <TABLE
 BORDER="0"
@@ -451,8 +461,8 @@ WIDTH="100%"
 ><TD
 ><PRE
 CLASS="SCREEN"
-> tar xzvf privoxy-3.1.1-beta-src* [.tgz or .tar.gz]
- cd privoxy-3.1.1-beta</PRE
+> tar xzvf privoxy-3.0.4-beta-src* [.tgz or .tar.gz]
+ cd privoxy-3.0.4-beta</PRE
 ></TD
 ></TR
 ></TABLE
@@ -460,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"
@@ -470,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
@@ -484,7 +495,35 @@ 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"
@@ -494,50 +533,59 @@ WIDTH="100%"
 ><TD
 ><PRE
 CLASS="SCREEN"
-> 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)</PRE
+>  privoxy:*:7777:7777:privoxy proxy:/no/home:/no/shell</PRE
 ></TD
 ></TR
 ></TABLE
 ></P
-><DIV
-CLASS="WARNING"
 ><P
-></P
-><TABLE
-CLASS="WARNING"
-BORDER="1"
+> And then <TT
+CLASS="FILENAME"
+>/etc/group</TT
+>, like:</P
+><P
+> <TABLE
+BORDER="0"
+BGCOLOR="#E0E0E0"
 WIDTH="100%"
 ><TR
 ><TD
-ALIGN="CENTER"
-><B
->Warning</B
+><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"
+BGCOLOR="#E0E0E0"
+WIDTH="100%"
 ><TR
 ><TD
-ALIGN="LEFT"
-><P
-> 
-  The <SPAN
-CLASS="QUOTE"
->"make install"</SPAN
-> target is temporary quite broken! It is
-  recommended to use a binary package, or do a source build, and manually 
-  install the components. Sorry.
- </P
+><PRE
+CLASS="SCREEN"
+> 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)</PRE
 ></TD
 ></TR
 ></TABLE
-></DIV
+></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
@@ -556,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
@@ -569,7 +815,9 @@ CLASS="SECT2"
 ><H2
 CLASS="SECT2"
 ><A
-NAME="INSTALLATION-KEEPUPDATED">2.3. Keeping your Installation Up-to-Date</H2
+NAME="INSTALLATION-KEEPUPDATED"
+></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
@@ -594,7 +842,7 @@ 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
+> In order not to lose your personal changes and adjustments when updating
  to the latest <TT
 CLASS="LITERAL"
 >default.action</TT
@@ -652,7 +900,7 @@ WIDTH="33%"
 ALIGN="right"
 VALIGN="top"
 ><A
-HREF="upgradersnote.html"
+HREF="whatsnew.html"
 ACCESSKEY="N"
 >Next</A
 ></TD
@@ -672,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