summaryrefslogtreecommitdiff
path: root/prtverify.1
blob: e5f57ddf7b2faa4777a5c8570046b744296cd097 (plain)
    1 .TH prtverify 1 "Nov 23 2014" "prtverify 0.4.4" ""
    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  - use of non-ASCII characters
   26  - missing dependencies (-m missing-deps option)
   27 .TP
   28 .B .footprint
   29  - world writable files/directories
   30  - junk files like perllocal.pod
   31  - invalid directories like /usr/info
   32  - invalid users
   33  - files not owned by root
   34  - SUID/SGID files
   35  - permission collisions with directories provided by core/filesystem
   36  - file-conflicts with other ports (-m file-conflict option)
   37 .SH OPTIONS
   38 .TP
   39 .B -l <loglevel>
   40 All tests are categorized into 4 levels, from FATAL to INFO, which
   41 can be used to adjust the output of prtverify.
   42 Set loglevel to 8 for INFO, 4 for WARN, 2 for ERROR and 1 for FATAL
   43 errors. Sum them up to show combined loglevels, e.g. 12 for WARN
   44 and INFO errors. The default is 15, which shows all error messages.
   45 .TP
   46 .B -m clean-repo
   47 If this mode is set, an additional test for invalid files
   48 like *.pkg.tar.gz or invalid directories like .svn is selected.
   49 Only sensible for clean repositories, of course.
   50 .TP
   51 .B -m missing-deps -c <path_to_collection> [-c <path_to_collection> ...]
   52 Adds a test for missing dependencies. The test takes the arguments set 
   53 by the 'Depends on'-header and looks for a complying directory in the 
   54 path specified by the -c option. Multiple -c options are allowed.
   55 .TP
   56 .B -m file-conflict -c <path_to_collection> [-c <path_to_collection> ...]
   57 Adds a test for file-conflicts with other ports. The ports .footprint
   58 entries are compared with a list of files from the ports specified
   59 with the -c options.
   60 
   61 \fBNote:\fP the test is very time-consuming if you run it over a large 
   62 number of collections !
   63 .SH WHITELIST
   64 To avoid messages for errors which are known and accepted \fBprtverify\fP 
   65 uses one or more whitelists to hide those. 
   66 The whitelists are located at \fI/usr/lib/prtverify/*.wl\fP.
   67 .SH FILES
   68  \fI/usr/lib/prtverify/*.awk\fP
   69  \fI/usr/lib/prtverify/prtverify.wl\fP
   70 .SH CREDITS
   71 I'd like to thank Johannes Winkelmann for the initial idea for such a tool
   72 and for many suggestions and contributions.
   73 .SH AUTHOR
   74 Juergen Daubert <jue@jue.li>

Generated by cgit