[BACK]Return to cvsweb.conf CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / cvsweb

Annotation of cvsweb/cvsweb.conf, Revision 3.23

3.1       knu         1: # -*-perl-*-
                      2: # Configuration of cvsweb.cgi, the
                      3: # CGI interface to CVS Repositories.
                      4: #
                      5: # (c) 1998-1999 H. Zeller    <zeller@think.de>
                      6: #     1999      H. Nordstrom <hno@hem.passagen.se>
3.22      knu         7: #     2000-2001 A. MUSHA     <knu@FreeBSD.org>
3.1       knu         8: #          based on work by Bill Fenner  <fenner@FreeBSD.org>
3.22      knu         9: # $Id: cvsweb.conf,v 3.27 2000/07/27 10:16:39 kcoar Exp $
3.23    ! knu        10: # $Idaemons: /home/cvs/cvsweb/cvsweb.conf,v 3.22 2001/01/13 07:48:09 knu Exp $
3.1       knu        11: #
                     12: ###
                     13:
3.19      knu        14: # Set the path for the following commands:
                     15: #   uname, cvs, rlog, rcsdiff
                     16: #   gzip (if you enable $allow_compress)
                     17: #   tar,rm (if you enable $allow_tar)
                     18: $command_path = '/bin:/usr/bin:/usr/local/bin';
                     19:
                     20: # Search the above directories for each command
                     21: for (qw(uname cvs rlog rcsdiff gzip tar rm)) {
                     22:     $CMD{$_} = search_path($_);
                     23: }
                     24:
                     25: # The name of the operating system implementation
3.21      knu        26: chomp($uname = `$CMD{uname}`);
3.19      knu        27:
3.1       knu        28: ##############
                     29: # CVS Root
                     30: ##############
                     31: # CVSweb can handle several CVS-Repositories
                     32: # at once. Enter a short symbolic names and the
                     33: # full path of these repositories here.
                     34: # NOTE that the symbolic names may not contain
                     35: # whitespaces.
                     36: # Note, that cvsweb.cgi currently needs to have physical access
                     37: # to the CVS repository so :pserver:someone@xyz.com:/data/cvsroot
                     38: # won't work!
                     39:
3.17      knu        40: # 'symbolic_name' => ['name_to_display', 'path_to_the_actual_repository']
                     41: # Listed in the order specified:
                     42: @CVSrepositories = (
                     43:                    'local'     => ['Local Repository', '/home/cvs'],
                     44: #                  'freebsd'   => ['FreeBSD',          '/home/ncvs'],
                     45: #                  'openbsd'   => ['OpenBSD',          '/home/ncvs'],
                     46: #                  'netbsd'    => ['NetBSD',           '/home/ncvs'],
                     47: #                  'ruby'      => ['Ruby',             '/var/anoncvs/ruby'],
                     48:                   );
3.1       knu        49:
                     50: # This tree is enabled by default when
                     51: # you enter the page
3.17      knu        52: $cvstreedefault = $CVSrepositories[2 * 0];     # The first one
3.1       knu        53:
                     54: ##############
3.15      knu        55: # Bug tracking system options
                     56: # ("PR" means Problem Report, as in GNATS)
3.1       knu        57: ##############
3.15      knu        58: #@prcategories = qw(
                     59: #                 advocacy
                     60: #                 alpha
                     61: #                 bin
                     62: #                 conf
                     63: #                 docs
                     64: #                 gnu
                     65: #                 i386
                     66: #                 kern
                     67: #                 misc
                     68: #                 pending
                     69: #                 ports
                     70: #                 sparc
                     71: #                );
                     72: #
                     73: #$prcgi = "http://www.FreeBSD.org/cgi/query-pr.cgi?pr=%s";
                     74: #
                     75: #$prkeyword = "PR";
3.1       knu        76:
                     77: ##############
3.15      knu        78: # Manual gateway
3.8       knu        79: ##############
                     80: $mancgi = "http://www.FreeBSD.org/cgi/man.cgi?apropos=0&sektion=%s&query=%s&manpath=FreeBSD+5.0-current&format=html";
3.1       knu        81:
                     82: ##############
                     83: # Defaults for UserSettings
                     84: ##############
                     85: %DEFAULTVALUE = (
                     86:       # sortby: File sort order
                     87:       #   file   Sort by filename
                     88:       #   rev    Sort by revision number
                     89:       #   date   Sort by commit date
                     90:       #   author Sort by author
                     91:       #   log    Sort by log message
                     92:
                     93:       "sortby" => "file",
                     94:
                     95:       # hideattic: Hide or show files in Attic
                     96:       #   1      Hide files in Attic
                     97:       #   0      Show files in Attic
                     98:
                     99:       "hideattic" => "1",
                    100:
                    101:       # logsort: Sort order for CVS logs
                    102:       #   date   Sort revisions by date
                    103:       #   rev    Sort revision by revision number
                    104:       #   cvs    Don't sort them. Same order as CVS/RCS shows them.
                    105:
                    106:       "logsort" => "date",
                    107:
                    108:       # f:      Default diff format
                    109:       #   h      Human readable
                    110:       #   u      Unified diff
                    111:       #   c      Context diff
                    112:       #   s      Side by side
3.10      knu       113:       "f" => "u",
3.1       knu       114:
                    115:       # hidecvsroot: Don't show the CVSROOT directory
                    116:       #   1      Hide CVSROOT directory
                    117:       #   0      Show CVSROOT directory
                    118:       "hidecvsroot" => "0",
                    119:
                    120:       # hidenonreadable: Don't show entries which cannot be read
                    121:       #   1      Hide non-readable entries
3.4       knu       122:       #   0      Show non-readable entries
3.1       knu       123:       "hidenonreadable" => "1",
                    124: );
                    125:
                    126: ##############
                    127: # some layout stuff
                    128: ##############
                    129:
3.9       knu       130: # The body-tag for directory views and logs
3.1       knu       131: $body_tag = '<body text="#000000" bgcolor="#ffffff">';
                    132:
3.9       knu       133: # The body-tag for diffs and annotations
                    134: $body_tag_for_src = '<body text="#000000" bgcolor="#eeeeee">';
                    135:
3.1       knu       136: # Wanna have a logo on the page ?
                    137: $logo = '<img src="/icons/apache_pb.gif">';
                    138:
                    139: # The title of the Page on startup
                    140: $defaulttitle = "CVS Repository";
                    141:
                    142: # The address is shown on the footer
3.2       knu       143: $address = "<font size=-1>CVSweb by &lt;knu\@FreeBSD.org&gt;</font>";
3.1       knu       144:
                    145: # color of navigation Header for
                    146: # diffs and annotations
                    147: $navigationHeaderColor = '#9999ee';
                    148:
                    149: $long_intro = <<EOT;
                    150: <p>
                    151: This is a WWW interface for CVS Repositories.
                    152: You can browse the file hierarchy by picking directories
                    153: (which have slashes after them, <i>e.g.</i>, <b>src/</b>).
                    154: If you pick a file, you will see the revision history
                    155: for that file.
                    156: Selecting a revision number will download that revision of
                    157: the file.  There is a link at each revision to display
                    158: diffs between that revision and the previous one, and
                    159: a form at the bottom of the page that allows you to
                    160: display diffs between arbitrary revisions.
                    161: </p>
                    162: <p>
3.22      knu       163: This script has been written by Bill Fenner &lt;<a
                    164: href="mailto:fenner\@FreeBSD.org">fenner\@FreeBSD.org</a>&gt; and
                    165: improved by Henner Zeller &lt;<a
                    166: href="mailto:zeller\@think.de">zeller\@think.de</a>&gt;, Henrik
                    167: Nordstr&ouml;m &lt;<a
                    168: href="mailto:hno\@hem.passagen.se">hno\@hem.passagen.se</a>&gt;, and
                    169: Ken Coar &lt;<a
                    170: href="mailto:Ken.Coar\@Golux.Com">Ken.Coar\@Golux.Com</a>&gt;, then
                    171: Akinori MUSHA &lt;<a
                    172: href="mailto:knu\@FreeBSD.org">knu\@FreeBSD.org</a>&gt; brought it
                    173: back to FreeBSD community and made further improvements; it is covered
                    174: by the <a
                    175: href="http://www.opensource.org/licenses/bsd-license.html">BSD-Licence</a>.
3.1       knu       176: </p>
                    177: <p>
                    178: If you would like to use this CGI script on your own web server and
3.23    ! knu       179: CVS tree, download the latest version <a
3.22      knu       180: href="ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/local-distfiles/knu/">here</a>,
                    181: and also check out Zeller's <a
                    182: href="http://linux.fh-heilbronn.de/~zeller/cgi/cvsweb.cgi" >CVSweb
                    183: distribution site</a>.  Bill's original script can be found <a
                    184: href="http://www.FreeBSD.org/~fenner/cvsweb/">here</a>.
3.1       knu       185: </p>
                    186: <p>
                    187: Please send any suggestions, comments, etc. to
3.5       knu       188: <a href="mailto:fenner\@FreeBSD.org">Bill Fenner</a> or, regarding the
3.1       knu       189: modifications, to
                    190: <a href="mailto:knu\@FreeBSD.org">Akinori MUSHA</a>,
                    191: <a href="mailto:zeller\@think.de">Henner Zeller</a>,
                    192: <a href="mailto:hno\@hem.passagen.se">Henrik Nordstr&ouml;m</a>, or
                    193: <a href="mailto:Ken.Coar\@Golux.Com">Ken Coar</a>.
                    194: </p>
                    195: EOT
                    196:
                    197: $short_instruction = <<EOT;
                    198: <p>
                    199: Click on a directory to enter that directory. Click on a file to display
                    200: its revision history and to get a chance to display diffs between revisions.
                    201: </p>
                    202: EOT
                    203:
                    204: # used icons; if icon-url is empty, the text representation is used; if
                    205: # you do not want to have an ugly tooltip for the icon, remove the
                    206: # text-representation.
                    207: # The width and height of the icon allow the browser to correcly display
                    208: # the table while still loading the icons.
                    209: # These default icons are coming with apache.
                    210: # If these icons are too large, check out the miniicons in the
                    211: # icons/ directory; they have a width/height of 16/16
3.15      knu       212: my $iconsdir = "/icons";
                    213: # format:             TEXT      ICON-URL              width height
3.1       knu       214: %ICONS  = (
3.15      knu       215:           back => [ ("[BACK]", "$iconsdir/back.gif", 20,   22) ],
                    216:           dir  => [ ("[DIR]",  "$iconsdir/dir.gif",  20,   22) ],
                    217:           file => [ ("[TXT]",  "$iconsdir/text.gif", 20,   22) ],
                    218:          );
                    219: undef $iconsdir;
3.1       knu       220:
                    221: # the length to which the last logentry should
                    222: # be truncated when shown in the directory view
                    223: $shortLogLen = 80;
                    224:
                    225: # Show author of last change
                    226: $show_author = 1;
                    227:
                    228: ##############
                    229: # table view for directories
                    230: ##############
                    231:
                    232: # Show directory as table
                    233: # this is much more readable but has one
                    234: # drawback: the whole table has to be loaded
                    235: # before common browsers display it which may
                    236: # be annoying if you have a slow link - and a
                    237: # large directory ..
                    238: $dirtable = 1;
                    239:
                    240: # show different colors for even/odd rows
                    241: @tabcolors = ('#ffffff', '#ffffff');
                    242: $tablepadding = 2;
                    243:
                    244: # Color of Header
                    245: $columnHeaderColorDefault = '#ffffcc';
                    246: $columnHeaderColorSorted  = '#ffcc66';
                    247:
                    248: #
                    249: # If you want to have colored borders
                    250: # around each row, uncomment this
                    251: $tableBorderColor = '#cccccc';
                    252:
                    253: #
                    254: # Modules in the repository that should not be displayed, either by default
                    255: # nor by explicit path specification.
                    256: #
                    257: @HideModules = (
                    258:               );
                    259:
                    260: #
                    261: # Use CVSROOT/CVSROOT/descriptions for describing the directories/modules
                    262: # See INSTALL section 8
                    263: #
                    264: $use_descriptions = 0;
                    265:
                    266: ##############
                    267: # Human Readable Diff
                    268: ##############
                    269:
                    270: # (c) 1998 H. Zeller <zeller@think.de>
                    271: #
                    272: # Generates two columns of color encoded
                    273: # diff; much like xdiff or emacs-ediff mode.
                    274: #
                    275: # The diff-stuff is a piece of code I once made for
                    276: # cvs2html which is under GPL,
                    277: # see http://www.sslug.dk/cvs2html
                    278: # (c) 1997/98 Peter Toft <pto@sslug.imm.dtu.dk>
                    279: #
                    280: # some parameters to screw:
                    281: ##
                    282:
                    283: # make lines breakable so that the columns do not
                    284: # exceed the width of the browser
                    285: $hr_breakable = 1;
                    286:
3.4       knu       287: # give out function names in diffs
3.1       knu       288: # this just makes sense if we have C-files, otherwise
                    289: # diff's heuristic doesn't work well ..
                    290: # ( '-p' option to diff)
3.4       knu       291: $showfunc = 1;
3.1       knu       292:
                    293: # For each pair of regexps, files that match the first regexp will be diff'ed
                    294: # with an '-F' option with the second regexp.
3.4       knu       295: %funcline_regexp = (
3.15      knu       296:                    "\\.(4th|fr)\$" => "\\(^\\|[ \t]\\): ",
                    297:                    "\\.rb\$" => "^[\t ]*\\(class\\|module\\|def\\) ",
3.4       knu       298:                   );
3.1       knu       299:
                    300: # ignore whitespaces for human readable diffs
                    301: # (indendation and stuff ..)
                    302: # ( '-w' option to diff)
3.7       knu       303: $hr_ignwhite = 0;
3.1       knu       304:
                    305: # ignore diffs which are caused by
                    306: # keyword-substitution like $Id - Stuff
                    307: # ( '-kk' option to rcsdiff)
                    308: $hr_ignkeysubst = 1;
                    309:
                    310: # Colors and font to show the diff type of code changes
                    311: $diffcolorHeading    = '#99cccc';  # color of 'Line'-head of each diffed file
                    312: $diffcolorEmpty      = '#cccccc';  # color of 'empty' lines
                    313: $diffcolorRemove     = '#ff9999';  # Removed line(s) (left)  (  -  )
                    314: $diffcolorChange     = '#99ff99';  # Changed line(s) (     both    )
                    315: $diffcolorAdd        = '#ccccff';  # Added line(s)   (  - )  (right)
                    316: $diffcolorDarkChange = '#99cc99';  # lines, which are empty in change
                    317: $difffontface        = "Helvetica,Arial";
                    318: $difffontsize        = "-1";
                    319:
                    320: # the width of the textinput of the
                    321: # request-diff-form
                    322: $inputTextSize = 12;
                    323:
                    324: ##############
                    325: # Mime Types
                    326: ##############
                    327:
                    328: # mapping to mimetypes to help
                    329: # cvsweb to guess the correct mime-type on
                    330: # checkout; you can use the mime.types from
                    331: # apache here:
                    332: $mime_types = '/usr/local/etc/apache/mime.types';
                    333:
                    334: # quick mime-type lookup; maps file-suffices to
                    335: # mime-types for displaying checkouts in the browser.
                    336: # Further MimeTypes will be found in the
                    337: # file $mime_types (apache style mime.types - file)
                    338: # - add common mappings here for faster lookup
                    339: %MTYPES = (
                    340:           "html"  => "text/html",
                    341:           "shtml" => "text/html",
                    342:           "gif"   => "image/gif",
                    343:           "jpeg"  => "image/jpeg",
3.12      knu       344:           "jpg"   => "image/jpeg",
                    345:           "png"   => "image/png",
                    346:           "xpm"   => "image/xpm",
3.1       knu       347:           "*"     => "text/plain",
                    348:          );
3.11      knu       349:
                    350: # Charset for HTML output
3.13      knu       351: $charset = '';
                    352: # e.g.
                    353: #$charset = $where =~ m,/ru[/_-], ? 'koi8-r'
                    354: #  : $where =~ m,/zh[/_-], ? 'big5'
                    355: #  : $where =~ m,/ja[/_-], ? 'x-euc-jp'
                    356: #  : $where =~ m,/ko[/_-], ? 'x-euc-kr'
                    357: #  : 'iso-8859-1';
3.1       knu       358:
                    359: ##############
                    360: # Misc
                    361: ##############
                    362: # allow annotation of files
                    363: # this requires rw-access to the
3.12      knu       364: # CVSROOT/history file (if you have one)
                    365: # and rw-access to the subdirectory to
                    366: # place the lock so you maybe don't want it
3.1       knu       367: $allow_annotate = 1;
                    368:
                    369: # allow pretty-printed version of files
                    370: $allow_markup = 1;
                    371:
                    372: # allow compression with gzip
                    373: # of output if the Browser accepts
                    374: # it (HTTP_ACCEPT_ENCODING=gzip)
                    375: # [make sure to have gzip in the path]
3.16      knu       376: $allow_compress = 0;
3.1       knu       377:
                    378: # Make use of javascript functions.
                    379: # This way you can select one of your CVSroot
                    380: # without pressing 'Go' (.. if you do have more
                    381: # than one CVSROOT defined)
                    382: $use_java_script = 1;
                    383:
                    384: # open Download-Links in another window
                    385: $open_extern_window = 1;
                    386:
                    387: # The size of this extern window; this size option
                    388: # needs use_java_script to be defined
                    389: # just comment them if you don't want to have a fixed
                    390: # size
                    391: #$extern_window_width = 600;
                    392: #$extern_window_height = 440;
                    393:
                    394: # Edit Options
                    395: # Enable form to edit your options (hideattic,sortbydate)
                    396: # this isn't necessary if you've $dirtable defined 'cause
                    397: # this allows editing of all your options more intuitive
                    398: $edit_option_form = (not $dirtable);
                    399:
                    400: # If you have files which automatically refers to other files
                    401: # (such as HTML) then this allows you to browse the checked
                    402: # out files as if outside CVS.
                    403: $checkout_magic = 1;
                    404:
                    405: # Show last changelog message for sub directories
                    406: # The current implementation makes many assumptions and may show the
                    407: # incorrect file at some times. The main assumption is that the last
                    408: # modified file has the newest filedate. But some CVS operations
                    409: # touches the file without even when a new version is't checked in,
                    410: # and TAG based browsing essientially puts this out of order, unless
                    411: # the last checkin was on the same tag as you are viewing.
                    412: # Enable this if you like the feature, but don't rely on correct results.
                    413: $show_subdir_lastmod = 0;
                    414:
                    415: # Background color of logentry in markup
                    416: $markupLogColor = "#ffffff";
                    417:
                    418: # Show CVS log when viewing file contents
                    419: $show_log_in_markup = 1;
                    420:
3.13      knu       421: # Preformat when viewing file contents.  This should be turned off
                    422: # when you have files in the repository that are in a multibyte
                    423: # encoding which uses HTML special characters ([<>&"]) as part of a
                    424: # multi-byte character. (such as iso-2022-jp, ShiftJIS, etc.)
                    425: # Otherwise those files will get screwed up in markup.
                    426: $preformat_in_markup = '';
                    427:
3.1       knu       428: # Tabstop used to expand tabs in colored diffs. If undefined then
                    429: # tabs are always expanded to 8 spaces.
                    430: $tabstop = 8;
                    431:
                    432: # if you wish to display absolute times in your local timezone,
                    433: # then define mytz and fill in the strings for your standard and
                    434: # daylight time. Note that you must also make sure the system
                    435: # timezone is correctly set.
                    436: # @mytz=("EST", "EDT");
                    437:
                    438: # cvsweb is friendly to caches by indicating a suitable
                    439: # last-modified timestamp. Doing this uses slightly more
                    440: # CPU so you might want to disable it if you have a slow
                    441: # server
                    442: $use_moddate = 1;
                    443:
3.12      knu       444: # Allows downloading a tarball of the current directory if set.
                    445: # Bear in mind that this allows downloading a tarball of your entire
                    446: # repository, which can take a lot of time and disk space to create!
                    447: # If you enable this, you may need to make sure that cvsweb can write to
                    448: # CVSROOT/val-tags, due to a bug in cvs.
                    449: $allow_tar = '';
3.13      knu       450:
                    451: # Options to pass to tar(1).
3.15      knu       452: @tar_options = qw();
3.13      knu       453: # e.g. @tar_options = qw(--ignore-failed-read);
                    454: #      GNU tar has some useful options against unexpected errors.
                    455:
3.19      knu       456: # Options to pass to gzip(1) when compressing a tarball to download.
                    457: @gzip_options = qw();
                    458: # e.g. @gzip_options = qw(-3);
                    459: #      Try lower compression level than 6 (default) if you want faster
3.21      knu       460: #      compression, or higher, for better compression.
3.19      knu       461:
3.13      knu       462: # Options to pass to cvs(1).
                    463: @cvs_options = qw(-l);
3.19      knu       464:
                    465: push @cvs_options, '-R' if ($uname eq 'FreeBSD' || $uname eq 'OpenBSD');
                    466: #      Only FreeBSD's and OpenBSD's cvs(1) supports -R (read only access
                    467: #      mode) option, which considerably speeds up checkouts over NFS.
3.12      knu       468:
                    469: 1;
3.1       knu       470: #EOF

CVSweb