Go to file
Ville Skyttä d5835d4300 Further Python 3 porting
Thanks to Alberto Planas Dominguez <aplanas@suse.com> for sanity
checks and suggestions.
2015-07-09 16:43:43 +03:00
test Handle %autosetup and %autopatch. 2015-07-09 16:43:43 +03:00
tools Add ISO 639-2 3-letter terminology codes for langs without 639-1 2-letter code. 2015-07-09 16:43:41 +03:00
.gitignore AUTHORS is no longer generated. 2015-07-09 16:43:41 +03:00
AUTHORS AUTHORS is no longer generated. 2015-07-09 16:43:41 +03:00
AbstractCheck.py Python 3 compatibility tweaks 2015-07-09 16:43:43 +03:00
AppDataCheck.py s/invalid-appdate/invalid-appdata/ 2015-07-09 16:43:43 +03:00
BinariesCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
COPYING Update FSF's address, copy current GPL from gnu.org as-is. 2015-07-09 16:42:46 +03:00
Common.py start to refactor various copy of tag ( since %verifyscript 2015-07-09 16:43:42 +03:00
Config.py Fix inclusion of AppDataCheck in default checks. 2015-07-09 16:43:43 +03:00
ConfigCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
DistributionCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
DocFilesCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
FHSCheck.py removed /usr/spool and /usr/X386, reorder /var subdir, removed 2015-07-09 16:43:42 +03:00
FilesCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
Filter.py Python 3 compatibility tweaks. 2015-07-09 16:43:43 +03:00
I18NCheck.py Python 3 compatibility tweaks 2015-07-09 16:43:43 +03:00
INSTALL Further Python 3 porting 2015-07-09 16:43:43 +03:00
InitScriptCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
LSBCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
Makefile Add rpmdiff man page (#29) 2015-07-09 16:43:43 +03:00
MenuCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
MenuXDGCheck.py Python 3 compatibility tweaks 2015-07-09 16:43:43 +03:00
NamingPolicyCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
PamCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
Pkg.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
PostCheck.py Python 3 compatibility tweaks. 2015-07-09 16:43:43 +03:00
README Update home page. 2015-07-09 16:43:42 +03:00
README.devel Update checkout instructions. 2015-07-09 16:43:41 +03:00
RpmFileCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
SignatureCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
SourceCheck.py Python 3 compatibility tweaks 2015-07-09 16:43:43 +03:00
SpecCheck.py Handle %autosetup and %autopatch. 2015-07-09 16:43:43 +03:00
TagsCheck.py Further Python 3 porting 2015-07-09 16:43:43 +03:00
ZipCheck.py Remove no longer updated CVS keywords. 2015-07-09 16:43:41 +03:00
__isocodes__.py Regenerate ISO codes list with iso-codes 3.44. 2015-07-09 16:43:43 +03:00
config Add UseVarLockSubsys option for forbidding use of /var/lock/subsys (Ludwig Nussel). 2015-07-09 16:43:40 +03:00
rpmdiff Further Python 3 porting 2015-07-09 16:43:43 +03:00
rpmdiff.1 rpmdiff.1: Update list of valid --ignore values 2015-07-09 16:43:43 +03:00
rpmlint Don't modify sys.argv[0]. 2015-07-09 16:43:43 +03:00
rpmlint.1 Force plain ASCII quotes in man page examples. 2015-07-09 16:43:41 +03:00
rpmlint.bash-completion Hush when trying to load _rpm_installed_packages. 2015-07-09 16:43:41 +03:00
test.sh Handle %autosetup and %autopatch. 2015-07-09 16:43:43 +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 applicable checks are
performed but specific checks can be performed by using command line
parameters.

rpmlint can check binary rpms (files and installed ones), source rpms,
and plain specfiles, but all checks do not apply to all argument
types.  For best check coverage, run rpmlint on source rpms instead of
plain specfiles, and installed binary rpms instead of uninstalled
binary rpm files.

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://sourceforge.net/p/rpmlint/ for contact 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 files /etc/rpmlint/*config or the user
configuration file $XDG_CONFIG_HOME/rpmlint (~/.config/rpmlint if
$XDG_CONFIG_HOME is empty or not set).

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

See the file "config" shipped with rpmlint for examples, available
options and their default values.