Go to file
Ville Skyttä 66a34c6568 Output basic statistics before exiting.
git-svn-id: svn+ssh://rpmlint.zarb.org/home/projects/rpmlint/svn/trunk@1423 9bc8b190-ac0f-0410-8968-dc7d1f502856
2015-07-09 16:43:29 +03:00
test fix test 2015-07-09 16:43:28 +03:00
AbstractCheck.py Autoregister checks only once (by name) so checks (and configs) can import each other without resulting in multiple instances of a particular check being run. 2015-07-09 16:43:27 +03:00
BinariesCheck.py Fix section header regexps (#152, dmueller at suse.de). 2015-07-09 16:43:29 +03:00
COPYING Update FSF's address, copy current GPL from gnu.org as-is. 2015-07-09 16:42:46 +03:00
Config.py Add removeFilter() for removing filters from the config, useful eg. in per-user config files for restoring filters added in system config files. 2015-07-09 16:43:25 +03:00
ConfigCheck.py Add indentation settings for vi* and *Emacs, use -tt, untabify. 2015-07-09 16:43:22 +03:00
DistributionCheck.py - check manpages compressed with lzma, asked by lzma lover dvalin :) ( and blino@mandriva ) 2015-07-09 16:43:29 +03:00
DocFilesCheck.py Fix for rpm-python < 4.3.2 (#53). 2015-07-09 16:43:27 +03:00
FHSCheck.py Use textwrap.fill() to pretty print all info messages, not just a few special cases. 2015-07-09 16:43:29 +03:00
FilesCheck.py Don't warn about hidden files in /etc/skel (#151, dmueller at suse.de). 2015-07-09 16:43:29 +03:00
Filter.py Count number of printed (== non-filtered) messages per category. 2015-07-09 16:43:29 +03:00
I18NCheck.py Fix webapp detection (#122, dmueller at suse.de) 2015-07-09 16:43:28 +03:00
INSTALL Use readelf instead of objdump for binary checks (#83, dmueller at suse.de). 2015-07-09 16:43:28 +03:00
InitScriptCheck.py Don't think that a service is enabled by default if it contains LSB Default-Start: with empty value. 2015-07-09 16:43:28 +03:00
LSBCheck.py Cleanups. 2015-07-09 16:43:24 +03:00
Makefile 0.82 2015-07-09 16:43:28 +03:00
MenuCheck.py Improve capitalization checks, https://bugzilla.redhat.com/228645 2015-07-09 16:43:27 +03:00
MenuXDGCheck.py Fix path to failing .desktop file in output (#61, dmueller at suse.de) 2015-07-09 16:43:27 +03:00
NamingPolicyCheck.py Spelling fix. 2015-07-09 16:43:29 +03:00
PamCheck.py Add editor indentation settings. 2015-07-09 16:43:26 +03:00
Pkg.py Comment typo fix. 2015-07-09 16:43:29 +03:00
PostCheck.py Avoid percent-in-%foo warnings for commented out lines (#149). 2015-07-09 16:43:29 +03:00
README Add SkipDocsRegexp config parameter for skipping end of line and UTF-8 tests for doc files, include RTF, HTML, and OCaml files in it by default, https://bugzilla.redhat.com/434694 2015-07-09 16:43:29 +03:00
README.devel Update anon checkout instructions. 2015-07-09 16:43:21 +03:00
RpmFileCheck.py - fix pychecker warning, notably a missing regexp in commit [1201] 2015-07-09 16:43:24 +03:00
SignatureCheck.py Add indentation settings for vi* and *Emacs, use -tt, untabify. 2015-07-09 16:43:22 +03:00
SourceCheck.py merge 2015-07-09 16:43:25 +03:00
SpecCheck.py Tighten ifarch and endif regexps. 2015-07-09 16:43:29 +03:00
TagsCheck.py Use textwrap.fill() to pretty print all info messages, not just a few special cases. 2015-07-09 16:43:29 +03:00
Testing.py Add editor indentation settings. 2015-07-09 16:43:26 +03:00
ZipCheck.py Do not issue errors for jars without manifests; META-INF/* are optional in them: http://java.sun.com/j2se/1.4/docs/guide/jar/jar.html 2015-07-09 16:43:29 +03:00
authors.xml add my new uid to authors.xml 2015-07-09 16:43:21 +03:00
authors.xsl Generate AUTHORS from authors.xml. 2015-07-09 16:43:22 +03:00
compile.py Add indentation settings for vi* and *Emacs, use -tt, untabify. 2015-07-09 16:43:22 +03:00
config added KernelModuleRPMsOK 2015-07-09 16:39:08 +03:00
rpmdiff Print what's wrong if getopt fails. 2015-07-09 16:43:23 +03:00
rpmlint Add indentation settings for vi* and *Emacs, use -tt, untabify. 2015-07-09 16:43:22 +03:00
rpmlint.1 Exit with non-zero status if errors/warnings printed (#128). 2015-07-09 16:43:29 +03:00
rpmlint.bash-completion initial import 2015-07-09 16:39:11 +03:00
rpmlint.py Output basic statistics before exiting. 2015-07-09 16:43:29 +03:00
test.sh r1014@mallarme: misc | 2006-07-05 23:57:46 +0200 2015-07-09 16:43:25 +03:00

README

rpmlint is a tool for checking common errors in rpm packages.  rpmlint
can be used to test individual packages before uploading or to check
an entire distribution.  By default all checks are processed but
specific checks can be performed by using command line parameters.

The idea for rpmlint is from the lintian tool of the Debian project.

Comments and new checks welcome. See the project home page at
http://rpmlint.zarb.org/ for mailing list information, bug tracking
system and other project resources.

Implemented checks:

	o Tag checks (TagsCheck).
	o Distribution specific checks (MandrakeCheck).
	o Binary checks (BinaryCheck).
	o Configuration file checks (ConfigCheck).
	o Location, permission, group and owner checks (FileCheck).
	o suid warnings (FileCheck).
	o Signature checks (SignatureCheck).
	o FHS checks (FHSCheck).
	o Source specific checks (SourceCheck).
	o i18n checks (I18NCheck).
	o Menu system checks (MenuCheck).
	o %post; %pre, %postun and %preun script checks (PostCheck).
	o /etc/rc.d/init.d checks (InitScriptCheck).
	o Spec file checks (SpecCheck).
	o Zip/Jar file checks (ZipCheck).
    o Pam configuration file checks (PamCheck).
    o Rpm file checks ( RpmFileCheck).

If you want to change configuration options or the list of checks, use
the global configuration file /etc/rpmlint/config or in the user
configuration file ~/.rpmlintrc.

Configuration files are Python source files and should begin with the
following line:

from Config import *

to load configuration functions.

Configuration functions:

resetChecks() resets the list of checks.

addCheck(check) adds the check to the list of checks to try.

addCheckDir(path) adds a path to look for checks.

setOption(name, value) sets the value of the configuration option.
See below for the list of available options.

addFilter(regexp) adds a filter to remove the output of a check, and
removeFilter(regexp) removes one (for use eg. in per-user configuration
files to remove filters added in system config files).

Available options:

name			type		default
========================================================
DanglingSymlinkExceptions list of pairs (['consolehelper$', 'usermode'],)
Distribution		string		""
ExtraMenuNeeds		list of strings
ExtractDir		string		"/tmp"
ForbiddenWords		regex		''
IconFilename		regex		'.*\.png$'
InvalidRequires		list of regexps see DEFAULT_INVALID_REQUIRES in
					TagsCheck.py
KernelModuleRPMsOK	boolean		1
MetaPackageRegexp	regex		'^(bundle|task)-' 
Packager		regex		''
PerlVersionTrick	boolean		1
ReleaseExtension	string or None	""
RpmGamesGroup		regex		'Games'
SkipDocsRegexp		regex		'\.(rtf|x?html?|ml[ily]?)$'
StandardGroups		list of strings	see DEFAULT_STANDARD_GROUPS in
					FilesCheck.py
StandardUsers		list of strings	see DEFAULT_STANDARD_USERS in
					FilesCheck.py 
SystemLibPaths		list of strings	('/lib', '/usr/lib', '/usr/X11R6/lib')
UseBzip2		boolean		1
UseDefaultRunlevels	boolean		1
UseEpoch		boolean		0
UseIndexedJars		boolean		1
UseRelativeSymlinks	boolean		1
UseVersionInChangelog	boolean		1
UsrLibBinaryException	regex		'^/usr/lib/(perl|python|menu|pkgconfig|lib[^/]+\.(so|l?a)$)'
UseUTF8			boolean		(autodetected)
ValidBuildHost		regex		''
ValidGroups		list of strings
ValidLicenses		list of strings
ValidMenuSections	list of strings
ValidShells		list of strings	('/bin/sh', '/bin/bash', '/usr/bin/perl')
ValidSrcPerms		list of modes	(0644, 0755)
Vendor			string		""