Go to file
Frédéric Lepied a59bf58d89 non-standard-executable-perm was never run (Ville Skyttä)
git-svn-id: svn+ssh://rpmlint.zarb.org/home/projects/rpmlint/svn/trunk@800 9bc8b190-ac0f-0410-8968-dc7d1f502856
2015-07-09 16:39:08 +03:00
.cvsignore * added .flog and .bz2. 1999-10-23 22:10:10 +00:00
AUTHORS first version 2002-05-14 03:13:03 +00:00
AbstractCheck.py corrected warnings reported by pychecker 2001-11-14 16:34:02 +00:00
BinariesCheck.py Add lib64 paths 2003-01-17 12:18:17 +00:00
COPYING Initial revision 1999-10-01 07:15:25 +00:00
ChangeLog Generated by cvs2cl the 05_Sep 2015-07-09 16:39:08 +03:00
Config.py added exception for busybox 2015-07-09 16:39:08 +03:00
ConfigCheck.py corrected warnings reported by pychecker 2001-11-14 16:34:02 +00:00
DistributionCheck.py corrected warnings reported by pychecker 2001-11-14 16:34:02 +00:00
FHSCheck.py Add lib64 as standard subdir in /usr (that's the /lib<qual> part of FHS) 2002-07-23 08:23:06 +00:00
FilesCheck.py non-standard-executable-perm was never run (Ville Skyttä) 2015-07-09 16:39:08 +03:00
Filter.py don't print the description if the error/warning is filtered. 2001-07-15 16:52:55 +00:00
I18NCheck.py Added 'mn' to list of languages 2015-07-09 16:39:07 +03:00
INSTALL described policy 2002-04-24 20:12:06 +00:00
InitScriptCheck.py allow multiple spaces before chkconfig (Eric Sandeen) 2015-07-09 16:39:08 +03:00
LSBCheck.py Linux-Mandrake => Mandrake Linux 2001-11-25 21:41:09 +00:00
Makefile install rpmdiff in /usr/bin 2015-07-09 16:39:07 +03:00
MenuCheck.py add default values from Config. 2002-08-08 07:34:27 +00:00
NamingPolicyCheck.py corrected info reports 2015-07-09 16:39:07 +03:00
Pkg.py in shell_var_value escape the var name to avoid a backtrace (Ville Skyttä) 2015-07-09 16:39:07 +03:00
PostCheck.py check rpm-helper prereq. 2002-08-08 07:35:54 +00:00
README Spelling fixes, new options: UseEpoch, ValidSrcPerms (Ville Skyttä). 2015-07-09 16:38:57 +03:00
README.CVS * give command line example. 2000-07-19 08:05:34 +00:00
SignatureCheck.py rpm 4.2 support (Ville Skyttä) 2015-07-09 16:38:57 +03:00
SourceCheck.py Made valid source permissions configurable (Ville Skyttä). 2015-07-09 16:38:50 +03:00
SpecCheck.py Add /usr/lib/hotplug to hardcoded-library-path exceptions 2015-07-09 16:39:07 +03:00
TagsCheck.py added explicit-lib-dependency check 2015-07-09 16:39:08 +03:00
check-install.py Linux-Mandrake => Mandrake Linux 2001-11-25 21:41:09 +00:00
compile.py pass the destination directory to avoid change when the byte compilation 2002-01-03 04:56:35 +00:00
config move standard exceptions to Config.py. 2000-08-31 11:24:03 +00:00
rpmdiff load Pkg from /usr/share/rpmlint to be able to be installed anywhere 2015-07-09 16:39:07 +03:00
rpmlint * launch python with unbuffered output. 1999-10-06 13:03:45 +00:00
rpmlint.py 2003 2015-07-09 16:39:07 +03:00
rpmlint.spec add policycoreutils exception 2015-07-09 16:39:08 +03:00
setuplist.py split old and new users/groups. 2002-08-08 07:51:32 +00: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. Send feedback to
<flepied@mandrakesoft.com>.

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

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.

Available options:

name			type		default
========================================================
Vendor			string		"MandrakeSoft"
Distribution		string		"Mandrake Linux"
UseBzip2		boolean		1
ValidGroups		list of strings
ValidMenuSections	list of strings
ReleaseExtension	string or None	"mdk"
UseVersionInChangelog	boolean		1
ExtraMenuNeeds		list of strings
ExtractDir		string		"/tmp"
ValidLicenses		list of strings
SystemLibPaths		list of strings	('/lib', '/usr/lib', '/usr/X11R6/lib')
ValidShells		list of strings	('/bin/sh', '/bin/bash', '/usr/bin/perl')
Packager		regex		'@mandrakesoft.com|bugs@linux-mandrake.com|https://qa.mandrakesoft.com'
RpmGamesGroup		regex		'Games'
DanglingSymlinkExceptions list of pairs (['consolehelper$', 'usermode'],)
ForbiddenWords		regex		'Linux.?Mandrake|Mandrake[^ ]*Linux'
ValidBuildHost		regex		'\.mandrakesoft\.com$|\.mandrake\.org$'
InvalidRequires		list of strings ('is', 'not', 'owned', 'by', 'any', 'package')
IconFilename		regex		'.*\.png$'
PerlVersionTrick	boolean		1
CrossCompilation	regex		'-mandrake-linux-[^/]+$'
UsrLibBinaryException	regex		'^/usr/lib/(perl|python|menu|pkgconfig|lib[^/]+\.(so|l?a)$)'
UseEpoch		boolean		0
ValidSrcPerms		list of modes	(0644, 0755)