1 .TH "REPOMAN" "1" "Aug 2008" "Portage 2.2" "Portage"
3 repoman \- Gentoo's program to enforce a minimal level of quality assurance in packages added to the portage tree
5 \fBrepoman\fR [\fIoption\fR] [\fImode\fR]
7 .BR "Quality is job zero."
10 is meant for Gentoo developers only due to the fact it does not work on a per-ebuild basis.
11 It checks the quality of CVS repositories.
13 Note: \fBrepoman commit\fR only works \fIinside local\fR CVS repositories.
17 Force commit to proceed, regardless of QA issues. For convenience, this option
18 causes the most time consuming QA checks to be skipped. The commit message will
19 include an indication that this option has been enabled, together with the
20 usual portage version stamp.
22 \fB-q\fR, \fB--quiet\fR
23 Be less verbose about extraneous info
25 \fB-p\fR, \fB--pretend\fR
26 Don't commit or fix anything; just show what would be done
28 \fB-x\fR, \fB--xmlparse\fR
29 Forces the metadata.xml parse check to be carried out
31 \fB-v\fR, \fB--verbose\fR
32 Displays every package name while checking
34 \fB\-i\fR, \fB\-\-ignore\-arches\fR
35 Ignore arch-specific failures (where arch != host)
37 \fB\-I\fR, \fB\-\-ignore\-masked\fR
38 Ignore masked packages (not allowed with commit mode)
40 \fB\-d\fR, \fB\-\-include\-dev\fR
41 Include dev profiles in dependency checks.
43 \fB\-\-without\-mask\fR
44 Behave as if no package.mask entries exist (not allowed with commit mode)
46 \fB-m\fR, \fB--commitmsg\fR
47 Adds a commit message via the command line
49 \fB-M\fR, \fB--commitmsgfile\fR
50 Adds a commit message from the specified file
52 \fB-V\fR, \fB--version\fR
55 \fB-h\fR, \fB--help\fR
60 Scan directory tree for QA issues (full listing)
66 Scan directory tree for QA issues (short listing)
69 Fix simple QA issues (stray digests, missing digests)
72 Generate a Manifest (fetches files if necessary)
75 Scan directory tree for QA issues; if OK, commit via cvs
78 .B CVS/Entries.IO_error
79 Attempting to commit, and an IO error was encountered access the Entries file
82 User-visible ebuilds with bad DEPEND settings (matched against *visible* ebuilds)
85 User-visible ebuilds with bad DEPEND settings (matched against *visible* ebuilds) in developing arch
88 Masked ebuilds with bad DEPEND settings (matched against *all* ebuilds)
90 .B DEPEND.badmaskedindev
91 Masked ebuilds with bad DEPEND settings (matched against *all* ebuilds) in developing arch
94 Syntax error in DEPEND (usually an extra/missing space/parenthesis)
96 .B DESCRIPTION.missing
97 Ebuilds that have a missing or empty DESCRIPTION variable
100 Ebuilds that use features that are only available with a different EAPI
103 Ebuilds that have an unsupported EAPI version (you must upgrade portage)
106 Ebuilds that have a missing or empty HOMEPAGE variable
109 This build has a variable in IUSE that is not in the use.desc or use.local.desc file
112 This ebuild does not define IUSE (style guideline says to define IUSE even when empty)
115 Ebuilds that appear to have dropped KEYWORDS for some arch
118 This ebuild contains KEYWORDS that are not listed in profiles/arch.list or for which no valid profile was found
121 Ebuilds that have a missing or empty KEYWORDS variable
124 Ebuilds that have been added directly with stable KEYWORDS
127 Ebuilds that use KEYWORDS=-* instead of package.mask
130 This ebuild is listing a license that doesnt exist in portages license/ dir.
133 Ebuilds that have a missing or empty LICENSE variable
136 Syntax error in LICENSE (usually an extra/missing space/parenthesis)
139 Ebuild is a live ebuild (cvs, git, darcs, svn, etc) checkout with stable keywords.
142 User-visible ebuilds with bad PDEPEND settings (matched against *visible* ebuilds)
145 User-visible ebuilds with bad PDEPEND settings (matched against *visible* ebuilds) in developing arch
148 Masked ebuilds with PDEPEND settings (matched against *all* ebuilds)
150 .B PDEPEND.badmaskedindev
151 Masked ebuilds with PDEPEND settings (matched against *all* ebuilds) in developing arch
154 Syntax error in PDEPEND (usually an extra/missing space/parenthesis)
157 Syntax error in PROVIDE (usually an extra/missing space/parenthesis)
160 User-visible ebuilds with bad RDEPEND settings (matched against *visible* ebuilds)
163 User-visible ebuilds with bad RDEPEND settings (matched against *visible* ebuilds) in developing arch
166 Masked ebuilds with RDEPEND settings (matched against *all* ebuilds)
168 .B RDEPEND.badmaskedindev
169 Masked ebuilds with RDEPEND settings (matched against *all* ebuilds) in developing arch
172 RDEPEND contains a package that usually only belongs in DEPEND
175 Syntax error in RDEPEND (usually an extra/missing space/parenthesis)
178 Syntax error in PROPERTIES (usually an extra/missing space/parenthesis)
181 Syntax error in RESTRICT (usually an extra/missing space/parenthesis)
184 Ebuilds that have a missing or empty SLOT variable
187 A uri listed in profiles/thirdpartymirrors is found in SRC_URI
189 .B changelog.ebuildadded
190 An ebuild was added but the ChangeLog was not modified
193 Missing ChangeLog files
195 .B changelog.notadded
196 ChangeLogs that exist but have not been added to cvs
199 Existing digest must be assumed correct (Package level only)
202 All ebuilds are masked for this package (Package level only)
205 This ebuild has a malformed header
207 .B ebuild.invalidname
208 Ebuild files with a non-parseable or syntactically incorrect name (or using 2.1 versioning extensions)
211 This ebuild has a major syntax error that may cause the ebuild to fail partially or fully
214 This ebuild has a minor syntax error that contravenes gentoo coding style
216 .B ebuild.namenomatch
217 Ebuild files that do not have the same name as their parent directory
220 Placing 'die' inside ( ) prints an error, but doesn't stop the ebuild.
223 There are no ebuilds that are marked as stable for your ARCH
226 Ebuilds that exist but have not been added to cvs
229 A simple sourcing of the ebuild produces output; this breaks ebuild policy.
232 PATCHES variable should be a bash array to ensure white space safety
235 Error generating cache entry for ebuild; typically caused by ebuild syntax error
236 or digest verification failure.
239 File is not UTF8 compliant
242 Ebuilds, digests, metadata.xml, Manifest, and ChangeLog do not need the executable bit
245 File/dir name must be composed of only the following chars: a-zA-Z0-9._-+:
248 Files in the files directory must be under 20k
251 Package lacks a files directory
254 Ebuild inherits autotools but does not call eautomake, eautoconf or eautoreconf
256 .B java.eclassesnotused
257 With virtual/jdk in DEPEND you must inherit a java eclass. Refer to
258 \fIhttp://www.gentoo.org/proj/en/java/java\-devel.xml\fR for more information.
261 Bad metadata.xml files
264 Missing metadata.xml files
267 Warnings in metadata.xml files
269 .B upstream.workaround
270 The ebuild works around an upstream bug, an upstream bug should be filed and
271 tracked in bugs.gentoo.org
274 The ebuild makes use of an obsolete construct
276 .B variable.invalidchar
277 A variable contains an invalid character that is not part of the ASCII
281 Assigning a readonly variable
284 PROVIDE contains existing package names
286 .B virtual.unavailable
287 PROVIDE contains a virtual which contains no profile default
290 PROVIDE contains virtuals with versions
292 Please report bugs via http://bugs.gentoo.org/
295 Daniel Robbins <drobbins@gentoo.org>
296 Saleem Abdulrasool <compnerd@gentoo.org>