summaryrefslogtreecommitdiff
path: root/prtverify.1
blob: 5edb717aaeed164b2a794af0b6d2172ecb874003 (plain)
    1 .TH prtverify 1 "Oct 29 2006" "prtverify 0.4.1" ""
    2 .SH NAME
    3 prtverify \- utility to check CRUX ports for typical errors 
    4 .SH SYNOPSIS
    5 \fBprtverify [options] <port> ...\fP
    6 .SH DESCRIPTION
    7 \fBprtverify\fP is a shell script which calls gawk with a bunch of 
    8 small modules, each of them containing one or more tests.
    9 
   10 The following tests are implemented:
   11 
   12 .TP
   13 .B port
   14  - missing files Pkgfile/.footprint/.md5sum
   15  - invalid files/directories (-m clean-repo option)
   16 .TP
   17 .B Pkgfile
   18  - existence of name/version/release/source variables
   19  - existence of Description/Maintainer/URL headers
   20  - empty Description/Maintainer/URL headers
   21  - invalid email address in Maintainer header
   22  - match of portname to name variable
   23  - wrong release number
   24  - cd/rm command outside the work directory
   25  - missing dependencies (-m missing-deps option)
   26 .TP
   27 .B .footprint
   28  - world writable files/directories
   29  - junk files like perllocal.pod
   30  - invalid directories like /usr/info
   31  - invalid users
   32  - files not owned by root
   33  - SUID/SGID files
   34  - permission collisions with directories provided by core/filesystem
   35  - file-conflicts with other ports (-m file-conflict option)
   36 .SH OPTIONS
   37 .TP
   38 .B -l <loglevel>
   39 All tests are categorized into 4 levels, from FATAL to INFO, which
   40 can be used to adjust the output of prtverify.
   41 Set loglevel to 8 for INFO, 4 for WARN, 2 for ERROR and 1 for FATAL
   42 errors. Sum them up to show combined loglevels, e.g. 12 for WARN
   43 and INFO errors. The default is 15, which shows all error messages.
   44 .TP
   45 .B -m clean-repo
   46 If this mode is set, an additional test for invalid files
   47 like *.pkg.tar.gz or invalid directories like .svn is selected.
   48 Only sensible for clean repositories, of course.
   49 .TP
   50 .B -m missing-deps -c <path_to_collection> [-c <path_to_collection> ...]
   51 Adds a test for missing dependencies. The test takes the arguments set 
   52 by the 'Depends on'-header and looks for a complying directory in the 
   53 path specified by the -c option. Multiple -c options are allowed.
   54 .TP
   55 .B -m file-conflict -c <path_to_collection> [-c <path_to_collection> ...]
   56 Adds a test for file-conflicts with other ports. The ports .footprint
   57 entries are compared with a list of files from the ports specified
   58 with the -c options.
   59 
   60 \fBNote:\fP the test is very time-consuming if you run it over a large 
   61 number of collections !
   62 .SH WHITELIST
   63 To avoid messages for errors which are known and accepted \fBprtverify\fP 
   64 uses a whitelist to hide those. 
   65 The whitelist is located at \fI/usr/lib/prtverify/prtverify.wl\fP.
   66 .SH FILES
   67  \fI/usr/lib/prtverify/*.awk\fP
   68  \fI/usr/lib/prtverify/prtverify.wl\fP
   69 .SH CREDITS
   70 I'd like to thank Johannes Winkelmann for the initial idea for such a tool
   71 and for many suggestions and contributions.
   72 .SH AUTHOR
   73 Jürgen Daubert <juergen.daubert@t-online.de>

Generated by cgit