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

Annotation of cvsweb/cvsweb.conf, Revision 3.36.2.13

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

CVSweb