head	1.36;
access;
symbols
	FreeBSD-cvsweb-3_0_6:1.36
	FreeBSD-cvsweb-3_0_5:1.36
	FreeBSD-cvsweb-3_0_4:1.34
	FreeBSD-cvsweb-3_0_3:1.34
	FreeBSD-cvsweb-3_0_2:1.31
	FreeBSD-cvsweb-3_0_1:1.30
	FreeBSD-cvsweb-3_0_0:1.27
	FreeBSD-cvsweb-2_9_3-beta:1.27
	FreeBSD-cvsweb-2_9_2-beta:1.26
	FreeBSD-cvsweb-2_9_1-beta:1.18
	FreeBSD-cvsweb-2_0_6:1.3.2.1
	FreeBSD-cvsweb-2_0_5:1.3
	rel-2_0-branch:1.3.0.2
	FreeBSD-cvsweb-2_0_4:1.3
	FreeBSD-cvsweb-2_0_3:1.3
	FreeBSD-cvsweb-2_0_2:1.3
	FreeBSD-cvsweb-2_0_1:1.3
	FreeBSD-cvsweb-2_0_0:1.2;
locks; strict;
comment	@# @;


1.36
date	2005.01.22.12.43.55;	author scop;	state Exp;
branches;
next	1.35;

1.35
date	2005.01.08.19.38.57;	author scop;	state Exp;
branches;
next	1.34;

1.34
date	2004.11.03.20.14.54;	author scop;	state Exp;
branches;
next	1.33;

1.33
date	2004.10.15.09.59.03;	author scop;	state Exp;
branches;
next	1.32;

1.32
date	2004.10.15.09.56.41;	author scop;	state Exp;
branches;
next	1.31;

1.31
date	2004.08.20.18.28.44;	author scop;	state Exp;
branches;
next	1.30;

1.30
date	2004.05.08.14.13.40;	author scop;	state Exp;
branches;
next	1.29;

1.29
date	2004.05.04.23.40.50;	author scop;	state Exp;
branches;
next	1.28;

1.28
date	2004.02.27.23.10.01;	author scop;	state Exp;
branches;
next	1.27;

1.27
date	2004.02.14.17.25.02;	author scop;	state Exp;
branches;
next	1.26;

1.26
date	2004.01.31.18.04.42;	author scop;	state Exp;
branches;
next	1.25;

1.25
date	2004.01.31.17.23.29;	author scop;	state Exp;
branches;
next	1.24;

1.24
date	2004.01.24.19.48.33;	author scop;	state Exp;
branches;
next	1.23;

1.23
date	2004.01.24.12.18.19;	author scop;	state Exp;
branches;
next	1.22;

1.22
date	2004.01.15.22.01.26;	author scop;	state Exp;
branches;
next	1.21;

1.21
date	2004.01.15.19.08.57;	author scop;	state Exp;
branches;
next	1.20;

1.20
date	2004.01.10.00.59.51;	author scop;	state Exp;
branches;
next	1.19;

1.19
date	2003.10.30.20.09.18;	author scop;	state Exp;
branches;
next	1.18;

1.18
date	2003.10.05.21.03.20;	author scop;	state Exp;
branches;
next	1.17;

1.17
date	2003.10.05.20.49.26;	author scop;	state Exp;
branches;
next	1.16;

1.16
date	2003.09.27.20.55.33;	author scop;	state Exp;
branches;
next	1.15;

1.15
date	2003.09.26.19.16.05;	author scop;	state Exp;
branches;
next	1.14;

1.14
date	2003.09.14.17.39.39;	author scop;	state Exp;
branches;
next	1.13;

1.13
date	2003.08.11.21.49.04;	author scop;	state Exp;
branches;
next	1.12;

1.12
date	2003.08.08.20.12.52;	author scop;	state Exp;
branches;
next	1.11;

1.11
date	2003.08.03.10.58.58;	author scop;	state Exp;
branches;
next	1.10;

1.10
date	2003.07.19.23.02.29;	author scop;	state Exp;
branches;
next	1.9;

1.9
date	2003.05.01.15.47.32;	author scop;	state Exp;
branches;
next	1.8;

1.8
date	2003.04.27.16.57.39;	author scop;	state Exp;
branches;
next	1.7;

1.7
date	2002.11.24.18.03.21;	author scop;	state Exp;
branches;
next	1.6;

1.6
date	2002.11.16.00.01.00;	author scop;	state Exp;
branches;
next	1.5;

1.5
date	2002.11.13.17.28.32;	author scop;	state Exp;
branches;
next	1.4;

1.4
date	2002.07.30.19.42.26;	author scop;	state Exp;
branches;
next	1.3;

1.3
date	2002.04.05.11.12.41;	author knu;	state Exp;
branches
	1.3.2.1;
next	1.2;

1.2
date	2000.09.30.18.48.15;	author knu;	state Exp;
branches;
next	1.1;

1.1
date	2000.07.19.21.59.47;	author knu;	state Exp;
branches;
next	;

1.3.2.1
date	2002.07.30.19.35.42;	author scop;	state Exp;
branches;
next	;


desc
@@


1.36
log
@Release 3.0.5.
@
text
@$FreeBSD$

For notes on upgrading between FreeBSD-CVSweb releases, see the bottom
of this document.

1) To get cvsweb.cgi to work, make sure that you have Perl 5.6.0 or
   newer installed and a web server which is capable of executing CGI
   scripts.  See also samples/cvsweb-httpd.conf.

   CVSweb uses the following Perl modules.  Chances are that some of
   these are already installed with your Perl distribution.  The oldest
   Perl distributions, if any, that already ship with these modules have
   been marked below.  If your Perl doesn't have some of the modules,
   you can get them from CPAN, <http://www.cpan.org/>.  Be sure to
   install also the prerequisites these modules may have.  Note that
   this list contains only modules that aren't already part of Perl
   5.6.0 and newer.


      Module                Version  Ships with Perl      Type
      ----------------------------------------------------------
      File::Temp                          5.8.0         required
      IPC::Run                              N/A         required
      MIME::Types                           N/A         optional
      String::Ediff                         N/A         optional
      URI                                   N/A         required

   Surprisingly enough, you need to have cvs installed.  The recommended
   version of cvs is 1.11 or newer.  Older cvs versions may work with
   more or less quirks, YMMV.

   Currently, you'll also need to have the GNU RCS utilities  'rlog',
   'rcsdiff' installed (current version is 5.7).

   This may change if cvs will be able to serve these functions without
   having a working directory [see TODO].

   Note that the cvsweb.cgi script needs to have physical access to the
   repository (or a copy of it) therefore; rsh, ssh or pserver access
   doesn't work yet.

   Install CvsGraph if you want to use it with CVSweb, and see (6) for
   configuration notes.  CvsGraph 1.4.0 or newer is required.

   Install GNU Enscript if you want syntax highlighting, and see (7) for
   more info.  You'll need version 1.6.3 or newer.

   Install CVSHistory if you want to use it with CVSweb, and see (8) for
   configuration notes.  You'll need version 2.0 or newer.

2) Copy cvsweb.conf to a configuration directory, typically
   /usr/local/etc/cvsweb/cvsweb.conf.
   Edit cvsweb.conf to fit your needs, you'll probably need to tweak the
   CVS root(s) of the Repository(ies) you want to view.
   See also the @@command_path variable for the path where cvsweb.cgi
   looks for the various external executables it interacts with.
   The other cvsweb.conf-* files are example per-cvsroot configuration files,
   see commentary in cvsweb.conf for more information.

3) Copy cvsweb.cgi to a directory of your web server where the execution
   of CGI scripts is allowed.  Edit it to make the variable $config
   (look for 'Configuration Area') point to your configuration file.
   If your perl binary isn't located in /usr/bin you'll have to edit the
   first line of the script as well.  For Apache web servers, there is an
   optional sample httpd.conf snippet in the samples/ directory.  Most
   setups do not need it though, it is only for advanced and/or mod_perl
   configurations.

4) If you do not have the dir.gif, text.gif and back.gif icons, copy
   them somewhere in your $DocumentRoot and edit the %ICONS hash
   in cvsweb.conf.  You won't need to do this if you have a stock
   Apache installed - they're located in the default icons directory.
   The icons distributed with this cvsweb are in the public domain.
   If you think that the default icons are too large, use the corresponding
   mini icons in the icons/ directory and change the %ICONS hash in
   cvsweb.conf.

5) Copy cvsweb.css from the css/ directory to a web server directory, and
   point the $cssurl variable in cvsweb.conf to it.

6) CvsGraph <http://www.akhphd.au.dk/~bertho/cvsgraph/> can be used with
   this version of CVSweb.  See the $allow_cvsgraph and $cvsgraph_config
   configuration variables in cvsweb.conf.  Note (and install) also the
   cvsgraph.png icon in the icons/ directory.

7) GNU Enscript <http://www.iki.fi/~mtr/genscript/> can be used for syntax
   highlighting.  To enable it, copy lang_cvsweb.st and lang_cvsweb_diff.st
   from the enscript/ dir to your Enscript "hl" directory (often eg.
   /usr/share/enscript/hl/) and enable $allow_enscript in cvsweb.conf.
   lang_cvsweb.st is used for generic colorization, and lang_cvsweb_diff.st
   for diffs.

8) CVSHistory <http://www.jamwt.com/CVSHistory/> can be used with this
   version of CVSweb.  See the $cvshistory_url configuration variable in
   cvsweb.conf.  For best results, configure CVSweb and CVSHistory to use
   the same "logical names" for CVS roots.

9) If you like you can add descriptions to be shown next to each directory
   or module name.  These are read from CVSROOT/descriptions.

   - Check out a copy of your CVSROOT
   - edit checkoutlist and add a line that says
       descriptions
   - Edit descriptions.  Add one line for each directory that you would like
     to have a comment for.  You can have HTML in the descriptions.
     These lines are relative from the $CVSROOT.  Example:
       JVote          An application to assist with <a href="http://www.irtc.org/">IRTC</a> voting
       JVote/images   Store the images for JVote
       JVote/tools    Scripts to startup JVote
   - cvs add descriptions
   - cvs commit
   - Set $use_descriptions to 1 in cvsweb.conf.

10) Have fun!

Troubleshooting
---------------

If you've trouble to make cvsweb.cgi work ...
.. if nothing seems to work:
 o Check if you can execute CGI scripts (Apache needs to have an
   ScriptAlias /cgi-bin or cgi-script Handler defined).  Try to
   execute a simple CGI script that often comes with the distribution
   of the web server; locate the log files and try to find hints
   which explain the malfunction.
o  View the entries in the web server's error.log.  Set $DEBUG to 1 in
   cvsweb.conf to get more error output.

.. If cvsweb seems to work but doesn't show the expected result
  (Typical error: you can't see any files)
 o Check whether the CGI script has read permissions to your
   CVS repository.  The CGI script often runs as the user 'nobody'
   or 'httpd'.
 o If you use annotation, see @@annotate_options in cvsweb.conf.
 o See CVSROOT/config for various options controlling what gets written
   into CVSROOT/history, where lock files are placed etc.  You can also
   build a fake cvsroot with symlinks to the 'real' CVS directories and make
   a fake CVSROOT/history as symbolic link to /dev/null.
   If you don't want cvs called from cvsweb to place read locks at all, let
   cvsweb operate on a copy.
 o Does cvsweb find your RCS utils/cvs binary(annotate)?
   See $command_path in in cvsweb.conf.
 o cvsweb allows for compression now.  It is determined first if the
   browser accepts gzip encoding.  But - no rule without exception - some
   versions of MSIE claim to understand gzip encoded content but
   display garbage .. so compression for MSIE is disabled now.  Maybe you
   find another browser with this problem, then you should disable
   compression ($allow_compress=0 in cvsweb.conf) and report it to
   <freebsd-cvsweb@@freebsd.org>.

Upgrade instructions
--------------------

List of things to pay attention to when upgrading FreeBSD-CVSweb from
earlier versions follows.  Lack of instructions for a particular
version means that there are no special things to pay attention to.

Upgrading to 3.0.5
------------------

The following configuration variables in cvsweb.conf have changed:

  $allow_mailtos is new, and optional.  See comments in cvsweb.conf.

Upgrading to 3.0.3
------------------

The following configuration variables in cvsweb.conf have changed:

  $DEBUG is new, and optional.  See comments in cvsweb.conf.

Upgrading to 3.0.1
------------------

The following configuration variables in cvsweb.conf have changed:

   $cvshistory_url is new, and optional.  See comments in cvsweb.conf.

Upgrading to 3.0.0
------------------

Make sure that the dependencies are met, see 1) above.

The following configuration variables in cvsweb.conf have changed:

   $command_path has been changed to @@command_path, ie. a list.

   @@HideModules has been removed.  It had nothing to do with actual
   modules in CVS terminology, and the implementation was broken.
   @@ForbiddenFiles has been enhanced to affect directories as well.

   $cvstreedefault is now optional.  If unset, the first one in
   @@CVSrepositories is used.

   %DEFAULTVALUE for "f" (default diff format) now understands the values
   "uc", "cc" and "sc" for enscript-colored diffs (unified, context and
   side-by-side respectively).

   %DEFAULTVALUE for "ln" can now be set to a boolean indicating whether
   line numbers in markup views should be shown or not.  The default is off.

   The following parameters have been removed, use CSS instead:
   $body_tag, $body_tag_for_src, $navigationHeaderColor, $dirtable,
   @@tabcolors, $columnHeaderColorDefault, $columnHeaderColorSorted,
   $tableBorderColor, $diffcolorHeading, $diffcolorEmpty, $diffcolorRemove,
   $diffcolorChange, $diffcolorAdd, $diffcolorDarkChange, $difffontface,
   $difffontsize, $markupLogColor.

   The following parameters have been removed, with no replacement:
   $open_extern_window, $extern_window_height, $extern_window_width,
   $checkout_magic.

   $allow_enscript, @@enscript_options and %enscript_types control the use
   and behavior of enscript(1).

   $allow_cvsgraph and $cvsgraph_config control the use and behavior of
   cvsgraph(1).

   $file_list_len can be set to work around problems with rlog(1) and dirs
   with lots of files.

   $cssurl contains the absolute URI to the CSS file to use.

   %ICONS has two new entries: binfile for binary files (-kb keyword
   substitution) and graph for the cvsgraph icon.

   %DIFF_COMMANDS is new, it is used to configure external per file type
   diff commands.
@


1.35
log
@New config variable $allow_mailtos controls mailto: link creation.
@
text
@d158 1
a158 1
Upgrading to x.x.x
@


1.34
log
@Rephrase upgrade instructions a bit, mention $DEBUG for 3.0.3.
@
text
@d158 7
@


1.33
log
@s/worry/pay attention to/ in upgrade instructions.
@
text
@d154 3
a156 3
List of things to pay attention to when upgrading FreeBSD-CVSweb from an
earlier version follows.  Lack of instructions for a particular version
means that there are no special things to pay attention to.
d158 9
a166 2
Upgrading from 3.0.0 to 3.0.1
-----------------------------
d172 2
a173 2
Upgrading from 2.0.x to 3.0.0
-----------------------------
@


1.32
log
@$DEBUG: New configuration parameter for enabling more output to web server
error log for troubleshooting.
@
text
@d156 1
a156 1
means that there are no special things to worry about.
@


1.31
log
@Release 3.0.2.
@
text
@d126 2
a127 1
o  View the entries in the web server's error.log.
@


1.30
log
@Release 3.0.1.
@
text
@d150 9
a158 2
Upgrading from FreeBSD-CVSweb 3.0.0 to 3.0.1
--------------------------------------------
d164 2
a165 2
Upgrading from FreeBSD-CVSweb 2.0.x to 3.0.0
--------------------------------------------
@


1.29
log
@Light integration with CVSHistory, <http://www.jamwt.com/CVSHistory/>.
@
text
@d150 1
a150 1
Upgrading from FreeBSD-CVSweb 3.0.0 to 3.x.x
@


1.28
log
@Always pass the -m (module) argument to cvsgraph(1), and move some related
documentation from INSTALL to cvsweb.conf.  Thanks to Gernot W. Schmied and
Jon Noack for the heads up.
@
text
@d3 2
a4 1
For notes on upgrading from 2.0.x to 3.x, see the bottom of this document.
d48 3
d93 4
a96 1
8) Have fun!
d114 1
d150 6
d157 2
a158 2
Upgrading from FreeBSD-CVSweb 2.0.x to 3.x
------------------------------------------
@


1.27
log
@Use a separate Enscript language file for diffs, and tune it for better
diff readability.

Submitted by:	Christopher Wolf <wolf@@ti.com> (modified)
@
text
@d79 2
a80 5
   configuration variables in cvsweb.conf.  cvsweb.cgi will override some
   of the settings in the cvsgraph configuration file with command line
   options; the following in particular: map_branch_href, map_rev_href and
   map_diff_href so you won't have to tweak them for CVSweb.  Note (and
   install) also the cvsgraph.png icon in the icons/ directory.
@


1.26
log
@Mention per-cvsroot config files and the Apache httpd.conf sample snippet.
@
text
@d86 5
a90 3
   highlighting.  To enable it, copy lang_cvsweb.st from the enscript/ dir
   to your Enscript "hl" directory (eg. /usr/share/enscript/hl/) and enable
   $allow_enscript in cvsweb.conf.
@


1.25
log
@Rework handling of forbidden files.  forbidden_module() and @@HideModules
had nothing to do with modules in CVS terminology, and the implementation
was broken.  forbidden() and @@ForbiddenFiles now affect directories as well.
@
text
@d51 1
a51 1
   See also the $command_path variable for the path where cvsweb.cgi
d53 2
d60 4
a63 1
   first line of the script as well.
@


1.24
log
@Fix earlier command_path colon/semicolon thinko, and turn it into a list.
@
text
@d148 4
@


1.23
log
@Add support for per file type external diff commands. [1]
Improve diff linking for binary files.

Submitted by:	Bryce Nesbitt <bryce1@@obviously.com> (modified) [1]
@
text
@d146 2
@


1.22
log
@Documentation improvements.
@
text
@d180 3
@


1.21
log
@Remove the $checkout_magic configuration variable.  Support for it has
been apparently broken since 2000-10-10 so probably nobody will miss it.
@
text
@d96 1
a96 1
       JVote          An application to assist with <a href="http://www.irtc.org/">IRTC</A> voting
d150 2
a151 1
   uc, cc and sc for enscript-colored diffs.
@


1.20
log
@Document removed parameters, fix typos.
@
text
@d163 2
a164 1
   $open_extern_window, $extern_window_height, $extern_window_width.
@


1.19
log
@The minimum supported version of GNU Enscript is actually 1.6.3.
@
text
@d41 1
a41 1
   Install CvsGraph if you want to use it with CVSWeb, and see (6) for
d73 1
a73 1
   this version of CVSWeb.  See the $allow_cvsgraph and $cvsgraph_config
d77 1
a77 1
   map_diff_href so you won't have to tweak them for CVSWeb.  Note (and
d155 1
a155 1
   The following parameter have been removed, use CSS instead:
d161 3
@


1.18
log
@Add sample Apache configuration snippet.
@
text
@d45 1
a45 1
   more info.  You'll need version 1.6.2 or newer.
@


1.17
log
@Clean up and add instructions for upgrading from 2.0.x.
@
text
@d7 1
a7 1
   scripts.
@


1.16
log
@Use the warnings and filetest pragmas, clean up $^W hacks which aren't needed
any more.  Perl 5.6.0 or newer is now required.
@
text
@d3 2
d17 1
a17 1
   
d32 1
a32 1
   'rcsdiff' installed (current version is 5.7). 
d47 10
a56 11
2) Copy cvsweb.conf to your configuration directory. If
   you've installed Apache, $ServerRoot/conf (or $ServerRoot/etc 
   with versions >= 1.3.0) makes sense.
   Edit cvsweb.conf to fit your needs, esp. set the CVS-Root(s)
   of the Repository(ies) you want to view. 
   If your RCS utilities are not in the $PATH of the cgi execution 
   environment you need to set it in the 'Misc' section as well.

3) Copy cvsweb.cgi to the cgi script location of your web server. 
   Edit it to make the variable $config (look for 'Configuration Area')
   point to your configuration file. 
d58 1
a58 2
   first line of the script as well. 
   If you want to run cvsweb.cgi on Windows NT, see (9).
d87 1
a87 14
9) If you've Windows NT running, calling of external programs with parameters
   single quoted doesn't work (search for rcsdiff, rlog in
   cvsweb.cgi), you've to replace it with double quotes.  Thanks to
   Nick Brachet for pointing this out.
   I don't know if cvs-annotate works on NT.
   
   > From: Nick Brachet <nick@@gradient.com>
   [...]
   > I'm running NT <g> and I had to patch a few things. For example,
   >   open(RCS, "co -p$rev '$fullname' 2>&1 |")
   > will fail on NT because the ' are not recognized. Using " will work
   > though.

10) If you like you can add descriptions to be shown next to each directory
d93 1
a93 1
   - edit descriptions.  Add one line for each directory that you would like
d96 1
a96 1
       JVote          An application to assist with <A HREF="http://www.irtc.org/">IRTC</A> voting
a102 1
--------------------
d104 2
a105 2
if you got PROBLEMS ..
----------------------
d109 2
a110 2
 o Check if you can execute CGI-scripts (Apache needs to have an
   ScriptAlias /cgi-bin or cgi-script Handler defined).  Try to 
d114 1
a114 1
o  View the entries in the web servers error.log
d119 6
a124 7
   CVS-Repository.  The CGI script often runs as the user 'nobody' 
   or 'httpd'...
   If you use annotation, the user needs to have write permissions
   to CVSROOT/history and to the directory the file is in in order
   to place the read-lock.
   If you don't want cvsweb to write into your CVSROOT/history, build
   a fake cvsroot with symlinks to the 'real' CVS-directories and make
d126 1
a126 1
   If you don't want cvs called from cvsweb to place read-locks - let
d128 47
a174 9
 o Does cvsweb find your RCS-utils/cvs-binary(annotate) ? ($ENV{PATH} in
   cvsweb.conf !)
 o cvsweb allows for compression now.  It is determined first, 
   if the browser accepts gzip-encoding.  But - no rule without
   exception - MSIE claims to understand gzip encoded content but
   displays garbage .. so MSIE is disabled now.  Maybe you find another
   Browser with this problem, then you should disable compression
   ($allow_compress=0 in cvsweb.conf) and 
   report it to me (<zeller@@think.de>)
@


1.15
log
@Pulling in the huge CGI module only for the sake of query string parsing
isn't quite worth it.  Revert to a homebrew implementation, use URI::Escape
and grok semicolons as separators.
@
text
@d3 1
a3 1
1) To get cvsweb.cgi to work, make sure that you have Perl 5.005_03 or
d14 1
a14 1
   5.005_03 and newer.
a18 1
      File::Spec::Functions   0.8+        5.6.0         required
@


1.14
log
@Strict input checking and laundering, needed for running under Perl 5.8
with taint checks enabled.  Use the CGI module for input parsing.

PR:		52386
@
text
@a18 1
      CGI                                   N/A         required
d24 1
@


1.13
log
@Use String::Ediff for Emacs-style human readable ediffs if available.

Submitted by:	Bo Zou <boxzou@@yahoo.com>
@
text
@d19 1
@


1.12
log
@Use IPC::Run instead of IPC::Open2 and IO::Pipe for better portability,
useful for eg. mod_perl 1.99+.  IPC::Run is now required.
@
text
@d23 1
@


1.11
log
@First steps in using File::Spec::Functions (0.8+) for better portability.
@
text
@d21 1
@


1.10
log
@Mention MIME::Types (optional).
@
text
@d17 5
a21 4
        Module name         Ships with Perl version
        --------------------------------------------------------
        File::Temp          5.8.0                       required
        MIME::Types         N/A                         optional
@


1.9
log
@Syntax highlighting using GNU Enscript (1.6.2+).

Submitted by:	Neal Horman <neal@@wanlink.com>
@
text
@d7 1
a7 1
   The following Perl modules are required.  Chances are that some of
d17 4
a20 3
       Module name         Ships with Perl version
       -------------------------------------------
       File::Temp          5.8.0
@


1.8
log
@- Handle text/vnd.viewcvs-markup for interoperability/easier migration
  from ViewCVS.
- Prevent cross site scripting in CvsGraph maps, output HTML 4.
- CvsGraph >= 1.4.0 is required (still optional, of course).
@
text
@d38 3
d54 1
a54 1
   If you want to run cvsweb.cgi on Windows NT, see (8).
d76 6
a81 1
7) Have fun!
d83 1
a83 1
8) If you've Windows NT running, calling of external programs with parameters
d96 1
a96 1
9) If you like you can add descriptions to be shown next to each directory
@


1.7
log
@- Use File::Temp for secure temp stuff creation.
- Bump minimum required perl version to 5.005_03.
@
text
@d36 1
a36 1
   configuration notes.  This has been tested with CvsGraph 1.3.0.
@


1.6
log
@Move CSS into external stylesheet file.
@
text
@d3 17
a19 3
1) To get cvsweb.cgi to work, make sure that you
   have Perl 5 installed and a web server which is capable
   of executing cgi-scripts.
@


1.5
log
@Implement CvsGraph integration.

Thanks to:	CvsGraph and ViewCVS folks for ideas.
@
text
@d14 2
a15 6
   This will change if cvs will be able
   to serve these functions without having a working directory 
   [see TODO]
   Note that the cvsweb.cgi script needs to have physical
   access to the repository (or a copy of it) therefore; 
   rsh/ssh or pserver access doesn't work yet.
d17 5
a21 1
   Install CvsGraph if you want to use it with CVSWeb, and see (5) for
d37 1
a37 1
   If you want to run cvsweb.cgi on Windows NT, see (7).
d48 4
a51 1
5) CvsGraph <http://www.akhphd.au.dk/~bertho/cvsgraph/> can be used with
d59 1
a59 1
6) Have fun!
d61 1
a61 1
7) If you've Windows NT running, calling of external programs with parameters
d74 1
a74 1
8) If you like you can add descriptions to be shown next to each directory
@


1.4
log
@Sync with the stable 2_0 branch.
@
text
@d21 3
d37 1
a37 1
   If you want to run cvsweb.cgi on Windows NT, see (6).
d48 9
a56 1
5) Have fun!
d58 1
a58 1
6) If you've Windows NT running, calling of external programs with parameters
d71 1
a71 1
7) If you like you can add descriptions to be shown next to each directory
@


1.3
log
@Somehow description configuration doesn't work if you put trailing /'s
in module names, so fix the document for the moment.

Submitted by:   lioux

Put a FreeBSD tag.
@
text
@d4 2
a5 2
   have Perl 5 installed and a webserver which is capable
   to execute cgi-scripts.
d7 5
a11 1
   Currently, you need to have the GNU RCS utilities  'rlog',
d17 1
a17 1
   Note, that the cvsweb.cgi-script needs to have physical
d21 1
a21 1
2) copy cvsweb.conf to your configuration directory. If
d29 1
a29 1
3) copy cvsweb.cgi to the cgi-script location of your web server. 
d32 1
a32 1
   If your perl binary isn't located in /usr/bin you have to edit the
d34 1
a34 1
   If you want to let cvsweb.cgi run on WinNT running see (7).
d36 4
a39 4
4) If you do not have the dir.gif, text.gif and back.gif-icons, copy
   them somewhere in your $DocumentRoot and edit the %ICONS-Hashtable
   in cvsweb.conf. You won't need to do this if you have a stock
   Apache installed .. the're located in the default icons-directory.
d41 2
a42 2
   If you think that the default icons are to large, use the corresponding
   miniicons in the icons-directory and change the %ICONS-Hashtable in
d45 1
a45 1
5) have fun
d49 2
a50 2
   cvsweb.cgi), you've to replace it with double quotes. Thanks to
   Nick Brachet to point this out.
d61 1
a61 1
   or module name. These are read from CVSROOT/descriptions.
d83 6
a88 6
 o check, if you can execute CGI-scripts (Apache needs to have an
   ScriptAlias /cgi-bin or cgi-script Handler defined). Try to 
   execute a simple CGI-script that often comes with the distribution
   of the webserver; locate the logfiles and try to find hints
   which explain the malfunction
o  view the entries in the webservers error.log
d92 4
a95 4
 o check, whether the CGI-script has read-permissions to your
   CVS-Repository. The CGI-script often runs as the user 'nobody' 
   or 'httpd' ..
   If you use annotation, the user needs to have write-permissions
d98 1
a98 1
   If you don't like cvsweb to write into your CVSROOT/history, build
d101 1
a101 1
   If you don't like cvs, called from cvsweb, to place read-locks - let
d103 1
a103 1
 o does cvsweb find your RCS-utils/cvs-binary(annotate) ? ($ENV{PATH} in
d105 2
a106 2
 o cvsweb allows for compression now. It is determined first, 
   if the browser accepts gzip-encoding. But - no rule without
d108 1
a108 1
   displays garbage .. so MSIE is disabled now. Maybe you find another
d110 1
a110 1
   ($allo_compress=0 in cvsweb.conf) and 
a111 1

@


1.3.2.1
log
@We now recommend cvs >= 1.11.
Add note about cvs < 1.11 and the buggy '-l' option.

Approved by:	knu (mentor)
@
text
@d4 2
a5 2
   have Perl 5 installed and a web server which is capable
   of executing cgi-scripts.
d7 1
a7 5
   Surprisingly enough, you need to have cvs installed.  The recommended
   version of cvs is 1.11 or newer.  Older cvs versions may work with
   more or less quirks, YMMV.

   Currently, you'll also need to have the GNU RCS utilities  'rlog',
d13 1
a13 1
   Note that the cvsweb.cgi script needs to have physical
d17 1
a17 1
2) Copy cvsweb.conf to your configuration directory. If
d25 1
a25 1
3) Copy cvsweb.cgi to the cgi script location of your web server. 
d28 1
a28 1
   If your perl binary isn't located in /usr/bin you'll have to edit the
d30 1
a30 1
   If you want to run cvsweb.cgi on Windows NT, see (6).
d32 4
a35 4
4) If you do not have the dir.gif, text.gif and back.gif icons, copy
   them somewhere in your $DocumentRoot and edit the %ICONS hash
   in cvsweb.conf.  You won't need to do this if you have a stock
   Apache installed - they're located in the default icons directory.
d37 2
a38 2
   If you think that the default icons are too large, use the corresponding
   mini icons in the icons/ directory and change the %ICONS hash in
d41 1
a41 1
5) Have fun!
d45 2
a46 2
   cvsweb.cgi), you've to replace it with double quotes.  Thanks to
   Nick Brachet for pointing this out.
d57 1
a57 1
   or module name.  These are read from CVSROOT/descriptions.
d79 6
a84 6
 o Check if you can execute CGI-scripts (Apache needs to have an
   ScriptAlias /cgi-bin or cgi-script Handler defined).  Try to 
   execute a simple CGI script that often comes with the distribution
   of the web server; locate the log files and try to find hints
   which explain the malfunction.
o  View the entries in the web servers error.log
d88 4
a91 4
 o Check whether the CGI script has read permissions to your
   CVS-Repository.  The CGI script often runs as the user 'nobody' 
   or 'httpd'...
   If you use annotation, the user needs to have write permissions
d94 1
a94 1
   If you don't want cvsweb to write into your CVSROOT/history, build
d97 1
a97 1
   If you don't want cvs called from cvsweb to place read-locks - let
d99 1
a99 1
 o Does cvsweb find your RCS-utils/cvs-binary(annotate) ? ($ENV{PATH} in
d101 2
a102 2
 o cvsweb allows for compression now.  It is determined first, 
   if the browser accepts gzip-encoding.  But - no rule without
d104 1
a104 1
   displays garbage .. so MSIE is disabled now.  Maybe you find another
d106 1
a106 1
   ($allow_compress=0 in cvsweb.conf) and 
d108 1
@


1.2
log
@Specify -R (Read-only mode) and -l (Do not log in history) flags when
doing a cvs annotation so that one does not need to turn on the write
permission on CVSROOT/history for the user which httpd runs cvsweb.cgi
as. (typically "nobody")
@
text
@d1 1
a1 1
$Id$
d65 3
a67 3
       JVote/          An application to assist with <A HREF="http://www.irtc.org/">IRTC</A> voting
       JVote/images/   Store the images for JVote
       JVote/tools/    Scripts to startup JVote
@


1.1
log
@Start point.
@
text
@d1 2
d32 1
a32 13
4) If you want to have CVS-annotate support, make sure the process
   running cvsweb.cgi (the webserver, usually running as 'httpd' or
   'nobody') has write permission to CVSROOT/history (if it exists) and
   any directory within your repository to place the lockfiles of the
   called cvs-process.  I prefer adding the httpd-user to the cvs-group
   (but: adding 'nobody' to this group may not be a good idea for
   security reasons). Make sure, the cvs-binary is in your PATH.
   Note: cvs 1.10 and later supports the LockDir option, allowing you
   to move the lock files to a separate directory. With this option
   cvsweb does not need any write permission to the CVS repository
   directories.

5) If you do not have the dir.gif, text.gif and back.gif-icons, copy
d41 1
a41 1
6) have fun
d43 1
a43 1
7) If you've Windows NT running, calling of external programs with parameters
d56 1
a56 1
8) If you like you can add descriptions to be shown next to each directory
@

