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>
|