Sisyphus repositório
Última atualização: 1 outubro 2023 | SRPMs: 18631 | Visitas: 37413160
en ru br
ALT Linux repositórios
S:2.4.0-alt2
5.0: 0.82-alt1
4.1: 0.82-alt1
4.0: 0.80-alt1

Group :: Desenvolvimento/Outros
RPM: rpmlint

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs e FR  Repocop 

Patch: rpmlint-2.4.0.patch
Download


 .gear/config.alt                                   | 389 +++++++++++++++
 .gear/rpmlint.spec                                 | 296 +++++++++++
 .gear/rules                                        |   6 +
 .../tags/192fc817e8ca74cb4d168966a4735c8564af3e09  |   6 +
 .gear/tags/list                                    |   1 +
 .gear/upstream/remotes                             |   3 +
 configs/ALT/alt.toml                               | 314 ++++++++++++
 configs/ALT/groups.toml                            | 121 +++++
 configs/ALT/licenses.toml                          | 550 +++++++++++++++++++++
 configs/ALT/scoring.toml                           |  33 ++
 configs/ALT/users-groups.toml                      |  96 ++++
 rpmlint/pkg.py                                     |  18 +-
 12 files changed, 1820 insertions(+), 13 deletions(-)
diff --git a/.gear/config.alt b/.gear/config.alt
new file mode 100644
index 0000000..266edca
--- /dev/null
+++ b/.gear/config.alt
@@ -0,0 +1,389 @@
+# -*- python -*-
+# Configuration for the rpmlint utility.
+# Loaded before ~/.rpmlintrc
+# $Id: config,v 1.38 2000/08/31 11:24:03 flepied Exp $
+
+# This line is mandatory to access the configuration functions
+from Config import *
+
+# Additionale path to look for checks
+
+#addCheckDir("~/mandrake/rpmlint")
+
+# Configure the checks if you don't want the default ones
+
+resetChecks()
+
+addCheck("DistributionCheck")
+addCheck("TagsCheck")
+addCheck("BinariesCheck")
+addCheck("ConfigCheck")
+addCheck("FilesCheck")
+addCheck("FHSCheck")
+addCheck("SignatureCheck")
+addCheck("I18NCheck")
+addCheck("MenuCheck")
+addCheck("PostCheck")
+addCheck("InitScriptCheck")
+addCheck("SourceCheck")
+addCheck("SpecCheck")
+addCheck("NamingPolicyCheck")
+addCheck("ZipCheck")
+
+
+# Configuration options used by the checks
+
+# for ALT Linux only!!!
+setOption("Vendor", "ALT Linux Team")
+setOption("Distribution", "ALT Linux")
+#setOption("UseBzip2", 1)
+setOption("Packager",
+'@altlinux\.(ru|org|com)| at altlinux dot (ru|org)|@packages\.altlinux\.org| at altlinux\.ru')
+setOption("ReleaseExtension", "^(alt[0-9]+|ipl[0-9]+mdk)$")
+setOption("ValidLicenses", (
+"GPL",
+"LGPL",
+"GPL v2",
+"Proprietary",
+"distributable",
+"Distributable",
+"Different licenses",
+"Public Domain",
+"public domain",
+"OpenSource",
+"ARTISTIC BSD GPL_V2 LGPL_V2 QPL_V1.0",
+"Boost Software License",
+"CMU License",
+"GPL or Academic Free License",
+"MPL",
+"MIT",
+"FTL/GPL",
+"GPL2",
+"Dual: GPL or BSD",
+"Apache",
+"Artistic",
+"FDL",
+"GPL, LGPL",
+"AT&T open source (see COPYING)",
+"AFL/GPL",
+"GPL with exceptions (see COPYING.txt)"
+"BSD License",
+"Sun Binary Code License",
+"Free for non-commercial use",
+"BSD derivative",
+"QPL",
+"ARSENAL INC.",
+"QPL & LGPL",
+"Sleepycat",
+"GPL/QPL",
+"OSL",
+"MIT/X Consortium",
+"BSD style + APSL",
+"Modified BSD",
+"OpenLDAP Public License",
+"Distributable (see License.htm)",
+"Apple Public Source License",
+"Distributable (see LICENSE)",
+"OSI certified",
+"GPL & QPL",
+"Dual: GPL and Ruby",
+"Freely Distributable",
+"LGPL/FDL",
+"GNU GPL",
+"X/MIT and other",
+"Free",
+"PHP",
+"MPL/NPL",
+"Commercial",
+"free to use, but restricted (see EULA)",
+"Public domain",
+"NVIDIA",
+"QPL & LGPL",
+"Open Group Public License",
+"GPL, LGPL, SISSL, PDL",
+"GPL or Artistic",
+"Apache License v2.0",
+"GPL/Artistic/Tk/Tix (see docs)",
+"PHP Licence",
+"IBM Public License",
+"povray",
+"freeware",
+"PSF",
+"wxWindows Library Licence",
+"Dual: GPL and Ruby",
+"LGPL/FDL",
+"Python License",
+"The author disclaims copyright to this source code.",
+"GPL-2",
+"freely modifiable and distributable",
+"Freely distributable",
+"GPL, URW holds copyright",
+"Charityware",
+"wxWidgets License",
+"BSD with minor restrictions",
+"Free for personal and educational use, see /usr/share/doc/xmms-in-mac-0.2.1/COPYING",
+"BSD"))
+
+setOption("ValidBuildHost", '\.hasher\.altlinux\.(ru|org)|\.office\.altlinux\.ru$')
+
+# ValidGroups taken from rpm-4.0.4-alt73
+setOption("ValidGroups", (
+"Accessibility",
+"Archiving/Backup",
+"Archiving/Cd burning",
+"Archiving/Compression",
+"Archiving/Other",
+"Books/Computer books",
+"Books/Faqs",
+"Books/Howtos",
+"Books/Literature",
+"Books/Other",
+"Communications",
+"Databases",
+"Development/C",
+"Development/C++",
+"Development/Databases",
+"Development/Debuggers",
+"Development/Documentation",
+"Development/Functional",
+"Development/GNOME and GTK+",
+"Development/Haskell",
+"Development/Java",
+"Development/KDE and QT",
+"Development/Kernel",
+"Development/Lisp",
+"Development/ML",
+"Development/Objective-C",
+"Development/Other",
+"Development/Perl",
+"Development/Python",
+"Development/Ruby",
+"Development/Scheme",
+"Development/Tcl",
+"Documentation",
+"Editors",
+"Education",
+"Emulators",
+"File tools",
+"Games/Adventure",
+"Games/Arcade",
+"Games/Boards",
+"Games/Cards",
+"Games/Educational",
+"Games/Other",
+"Games/Puzzles",
+"Games/Sports",
+"Games/Strategy",
+"Graphical desktop/Enlightenment",
+"Graphical desktop/FVWM based",
+"Graphical desktop/GNOME",
+"Graphical desktop/GNUstep",
+"Graphical desktop/Icewm",
+"Graphical desktop/KDE",
+"Graphical desktop/Motif",
+"Graphical desktop/Other",
+"Graphical desktop/Rox",
+"Graphical desktop/Sawfish",
+"Graphical desktop/Window Maker",
+"Graphical desktop/XFce",
+"Graphics",
+"Monitoring",
+"Networking/Chat",
+"Networking/DNS",
+"Networking/File transfer",
+"Networking/FTN",
+"Networking/IRC",
+"Networking/Instant messaging",
+"Networking/Mail",
+"Networking/News",
+"Networking/Other",
+"Networking/Remote access",
+"Networking/WWW",
+"Office",
+"Publishing",
+"Sciences/Astronomy",
+"Sciences/Biology",
+"Sciences/Chemistry",
+"Sciences/Computer science",
+"Sciences/Geosciences",
+"Sciences/Mathematics",
+"Sciences/Medicine",
+"Sciences/Other",
+"Sciences/Physics",
+"Security/Antivirus",
+"Security/Networking",
+"Shells",
+"Sound",
+"System/Base",
+"System/Configuration/Boot and Init",
+"System/Configuration/Hardware",
+"System/Configuration/Networking",
+"System/Configuration/Other",
+"System/Configuration/Packaging",
+"System/Configuration/Printing",
+"System/Fonts/Console",
+"System/Fonts/True type",
+"System/Fonts/Type1",
+"System/Fonts/X11 bitmap",
+"System/Internationalization",
+"System/Kernel and hardware",
+"System/Libraries",
+"System/Servers",
+"System/Servers/ZProducts",
+"System/X11",
+"System/XFree86",
+"Terminals",
+"Text tools",
+"Toys",
+"Video"))
+
+# taken from menu-policy-0.0.2.txt
+setOption("ValidMenuSections", (
+"Amusement/Adventure",
+"Amusement/Arcade",
+"Amusement/Boards",
+"Amusement/Cards",
+"Amusement/Puzzles",
+"Amusement/Sports",
+"Amusement/Strategy",
+"Amusement/Toys",
+"Amusement/Other",
+"Applications/Accessibility",
+"Applications/Archiving/Compression",
+"Applications/Archiving/Cd burning",
+"Applications/Archiving/Backup",
+"Applications/Archiving/Other",
+"Applications/Communications",
+"Applications/Databases",
+"Applications/Development/Interpreters",
+"Applications/Development/Code generators",
+"Applications/Development/Development environments",
+"Applications/Development/Tools",
+"Applications/Editors",
+"Applications/Emulators",
+"Applications/File tools",
+"Applications/Finances",
+"Applications/Monitoring",
+"Applications/Publishing",
+"Applications/Sciences/Astronomy",
+"Applications/Sciences/Biology",
+"Applications/Sciences/Chemistry",
+"Applications/Sciences/Computer science",
+"Applications/Sciences/Geosciences",
+"Applications/Sciences/Mathematics",
+"Applications/Sciences/Physics",
+"Applications/Sciences/Other",
+"Applications/Shells",
+"Applications/Text tools",
+"Chinese/Configuration",
+"Chinese/Boot and Init",
+"Chinese/Hardware",
+"Chinese/Networking",
+"Chinese/Packaging",
+"Chinese/Printing",
+"Chinese/Other",
+"Documentation",
+"Edutainment/Languages",
+"Edutainment/Mathematics",
+"Edutainment/Science",
+"Edutainment/Tools",
+"Edutainment/Other",
+"Multimedia/Graphics",
+"Multimedia/Sound",
+"Multimedia/Video",
+"Networking/Chat",
+"Networking/IRC",
+"Networking/Instant messaging",
+"Networking/File transfer",
+"Networking/Mail",
+"Networking/News",
+"Networking/Remote access",
+"Networking/WWW",
+"Networking/Other",
+"Office/Accessories",
+"Office/AddressBooks",
+"Office/Graphs",
+"Office/PDA",
+"Office/Presentations",
+"Office/Spreadsheets",
+"Office/Tasks management",
+"Office/Time management",
+"Office/Wordprocessors",
+"Session/Windowmanagers",
+"Terminals"))
+
+
+# Output filters
+# addFilter("E: .* no-signature")
+
+# ALT Linux filters
+# defaults
+addFilter('E: .* no-buildroot-tag')
+addFilter('W: .* hardcoded-packager-tag')
+addFilter('E: .* no-%clean-section')
+addFilter('E: .* no-cleaning-of-buildroot')
+addFilter('W: .* setup-not-quiet')
+addFilter('W: .* source-or-patch-not-bzipped')
+addFilter('W: .* manpage-not-bzipped')
+addFilter('W: .* infopage-not-bzipped')
+addFilter('W: .* non-conffile-in-etc /etc/rpm/macros.d/')
+addFilter('E: .* requires-on-release')
+# 
+addFilter('W: .* not-standard-release-extension')
+addFilter('W: .* invalid-license')
+addFilter('W: .* summary-not-capitalized')
+addFilter('W: .* summary-ended-with-dot')
+addFilter('W: .* non-conffile-in-etc /etc/buildreqs')
+
+# kernel's
+addFilter('unstripped-binary-or-object /lib/modules/')
+
+# rootfiles-alt-alt9.noarch.rpm
+addFilter('rootfiles non-etc-or-var-file-marked-as-conffile /root/.*')
+addFilter('rootfiles non-readable /root/.*')
+
+# mkinitrd-busybox-1.00.rel-alt3.i586.rpm
+addFilter('mkinitrd-busybox statically-linked-binary /lib/mkinitrd/busybox')
+
+# glibc-2.3.5-alt5.i586.rpm
+addFilter('glibc no-binary')
+addFilter('glibc-core statically-linked-binary /sbin/ldconfig')
+
+# etcskel-2.0.10-alt1.2.noarch.rpm
+addFilter('etcskel hidden-file-or-dir /etc/skel.*/')
+addFilter('etcskel zero-length /etc/skel.*/.mutt/folder')
+addFilter('etcskel executable-marked-as-config-file /etc/skel.*/.mutt/color-select')
+
+# filesystem-2.3.1-alt1.i586.rpm
+addFilter('filesystem no-binary')
+addFilter('filesystem non-standard-dir-perm /root 0700')
+addFilter('filesystem non-standard-dir-perm /lib/modules 0700')
+addFilter('filesystem non-standard-dir-perm /boot 0700')
+addFilter('filesystem non-standard-dir-perm /sys 0555')
+addFilter('filesystem non-standard-dir-perm /proc 0555')
+addFilter('filesystem non-standard-dir-perm /tmp 01777')
+addFilter('filesystem dir-or-file-in-usr-local .*')
+addFilter('filesystem dir-or-file-in-mnt /mnt/(floppy|disk|cdrom)')
+
+# MPlayer-1.0-alt20.pre7.i586.rpm
+# MPlayer-doc-1.0-alt20.pre7.i586.rpm
+# MPlayer-gui-1.0-alt20.pre7.i586.rpm
+# MPlayer-skin-default-1.7-alt1.1.i586.rpm
+addFilter('MPlayer invalid-license GPL for all but not for OpenDivX')
+addFilter('MPlayer-doc invalid-license GPL for all but not for OpenDivX')
+addFilter('MPlayer-gui invalid-license GPL for all but not for OpenDivX')
+addFilter('MPlayer-skin-default invalid-license GPL for all but not for OpenDivX')
+addFilter('MPlayer conffile-without-noreplace-flag /etc/MPlayer/codecs.conf')
+
+# altlinux-release-Sisyphus-alt20050723.noarch.rpm
+addFilter('altlinux-release non-conffile-in-etc /etc/altlinux-release')
+
+# rpm-4.0.4-alt89.i586.rpm and later
+addFilter('E: rpm-build.* only-non-binary-in-usr-lib') # files in /usr/lib/rpm/ may be scripts
+
+# hack's
+#addFilter('E: .* invalid-lc-messages-dir')
+#addFilter('W: .* no-url-tag')
+#addFilter('W: .* no-documentation')
+
+# config ends here
diff --git a/.gear/rpmlint.spec b/.gear/rpmlint.spec
new file mode 100644
index 0000000..7eae029
--- /dev/null
+++ b/.gear/rpmlint.spec
@@ -0,0 +1,296 @@
+%def_disable check
+
+Name: rpmlint
+Version: 2.4.0
+Release: alt2
+
+Summary: Tool for checking common errors in RPM packages
+License: GPL-2
+Group: Development/Other
+URL: https://github.com/rpm-software-management/rpmlint
+
+Source0: %name-%version.tar
+Patch0: %name-%version.patch
+BuildArch: noarch
+
+BuildRequires(pre): rpm-build-python3
+BuildRequires: python3-devel
+
+%if_enabled check
+# for tests
+BuildRequires: /proc
+BuildRequires: python3-module-pyxdg python3-module-rpm python3-module-toml python3-module-zstd python3-module-pybeam
+BuildRequires: python3-module-pytest python3-module-pytest-cov python3-module-pytest-flake8 python3-module-pytest-xdist
+BuildRequires: python3-module-enchant hunspell-en hunspell-cs glibc-locales
+BuildRequires: glibc-utils binutils
+BuildRequires: dash
+BuildRequires: /usr/bin/appstream-util
+BuildRequires: /usr/bin/checkbashisms
+BuildRequires: /usr/bin/desktop-file-validate
+%endif
+
+Requires: rpm-build glibc-utils binutils
+#Requires: /usr/bin/appstream-util
+Requires: /usr/bin/bzip2
+Requires: /usr/bin/checkbashisms
+Requires: /bin/cpio
+Requires: /usr/bin/desktop-file-validate
+Requires: /usr/bin/groff
+Requires: /usr/bin/gtbl
+Requires: /usr/bin/ldd
+Requires: /usr/bin/man
+Requires: /usr/bin/perl
+Requires: /usr/bin/readelf
+Requires: /usr/bin/xz
+Requires: /usr/bin/zstd
+%py3_requires tomli
+%py3_requires magic
+%py3_provides rpmlint.checks
+
+%description
+Rpmlint is a tool to check common errors on rpm packages.
+Binary and source packages can be checked.
+
+%prep
+%setup -q
+%patch0 -p1
+
+%build
+%python3_build
+
+%install
+%python3_install
+
+mkdir -p %buildroot%_sysconfdir/xdg/rpmlint
+cp -a configs/ALT/*.toml %buildroot%_sysconfdir/xdg/rpmlint/
+
+%check
+python3 -m pytest
+
+%files
+%doc README.md
+%config(noreplace) %_sysconfdir/xdg/rpmlint/*.toml
+%_bindir/*
+%python3_sitelibdir/*
+
+%changelog
+* Wed Apr 26 2023 Alexey Shabalin <shaba@altlinux.org> 2.4.0-alt2
+- backport fix for python-magic and add requires python3(magic).
+- add requires python3(tomli).
+
+* Sun Mar 26 2023 Alexey Shabalin <shaba@altlinux.org> 2.4.0-alt1
+- New version 2.4.0.
+
+* Wed Dec 22 2021 Alexey Shabalin <shaba@altlinux.org> 2.2.0-alt1
+- new version 2.2.0
+
+* Wed Sep 15 2021 Alexey Shabalin <shaba@altlinux.org> 2.1.0-alt1
+- 2.1.0
+- Filter no-cleaning-of-buildroot, setup-not-quiet in ALT config
+- Disable R: /usr/bin/appstream-util
+
+* Fri Aug 06 2021 Alexey Shabalin <shaba@altlinux.org> 2.0.0-alt1
+- 2.0.0 (ALT #39550)
+
+* Mon Dec  2 2019 Terechkov Evgenii <evg@altlinux.org> 0.85-alt6
+- Build with python2 (Patch2)
+
+* Wed Dec 28 2016 Terechkov Evgenii <evg@altlinux.org> 0.85-alt5
+- Turn off patch0 to work with rpm-4.3
+
+* Thu Jul  3 2014 Terechkov Evgenii <evg@altlinux.org> 0.85-alt4
+- Patch0 updated to work with ALT >= rpm-4.0.4-alt100.78
+
+* Sat Oct 22 2011 Vitaly Kuznetsov <vitty@altlinux.ru> 0.85-alt3.1
+- Rebuild with Python-2.7
+
+* Tue Jan 12 2010 Terechkov Evgenii <evg@altlinux.ru> 0.85-alt3
+- Patch1 added to remove warnings on deprecated popen2 module
+
+* Wed Nov 11 2009 Eugeny A. Rostovtsev (REAL) <real at altlinux.org> 0.85-alt2.1
+- Rebuilt with python 2.6
+
+* Tue Mar 17 2009 Terechkov Evgenii <evg@altlinux.ru> 0.85-alt2
+- Noarch build fix (shame on me)
+
+* Tue Mar 17 2009 Terechkov Evgenii <evg@altlinux.ru> 0.85-alt1
+- 0.85 (#19195)
+- Build as noarch
+- Buildrequires updated
+- Packager tag updated
+
+* Sun Mar 16 2008 Terechkov Evgenii <evg@altlinux.ru> 0.82-alt1
+- 0.82
+- Licencse tag changed to gpl2
+- Some filters added to config (#14098)
+- Spec cleanups
+
+* Fri Jan 25 2008 Grigory Batalov <bga@altlinux.ru> 0.80-alt1.1
+- Rebuilt with python-2.5.
+
+* Fri Apr 27 2007 Igor Zubkov <icesik@altlinux.org> 0.80-alt1
+- 0.79 -> 0.80
+
+* Sun Mar 18 2007 Igor Zubkov <icesik@altlinux.org> 0.79-alt1
+- 0.71 -> 0.79
+- update Patch0 for old rpm
+- add manpage
+- enable all checks in rpmlint
+
+* Tue Mar 13 2007 Igor Zubkov <icesik@altlinux.org> 0.71-alt7
+- sync list groups with rpm-4.0.4-alt73
+- update Url
+
+* Tue Mar 13 2007 Igor Zubkov <icesik@altlinux.org> 0.71-alt6
+- bzip2 ChangeLog file (closes #11080)
+- buildreq
+
+* Mon Oct 31 2005 Igor Zubkov <icesik@altlinux.ru> 0.71-alt5
+- update ValidBuildHost
+- remove not-standard-release-extension warning
+- remove invalid-license warning
+- remove summary-not-capitalized warning
+- remove summary-ended-with-dot warning
+
+* Mon Oct 31 2005 Igor Zubkov <icesik@altlinux.ru> 0.71-alt4
+- remove requires-on-release warning 
+- enable TagsCheck
+
+* Mon Oct 31 2005 Igor Zubkov <icesik@altlinux.ru> 0.71-alt3
+- disable all checks
+- enable DistributionCheck
+
+* Mon Oct 31 2005 Igor Zubkov <icesik@altlinux.ru> 0.71-alt2
+- update config
+
+* Mon Oct 31 2005 Igor Zubkov <icesik@altlinux.ru> 0.71-alt1
+- update to 0.71
+
+* Fri Sep 09 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.8
+- added /etc/bash_completion.d/rpmlint
+
+* Wed Sep 07 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.7
+- add check for missing Packager tag
+
+* Mon Sep 05 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.6
+- correct check for release tag
+
+* Sun Sep 04 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.5
+- correct groups and users check
+
+* Sat Sep 03 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.4
+- correct check for menu files
+
+* Sat Aug 20 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.3
+- realy remove some old policy (thx to rpmlint)
+
+* Fri Aug 19 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.2
+- remove some old policy from mandrake (mandriva)
+- add some new policy for ALTLinux Sisyphus
+
+* Mon Aug 15 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0.1
+- fix work with old rpm
+
+* Mon Aug 15 2005 Igor Zubkov <icesik@altlinux.ru> 0.70-alt0
+- update to 0.70
+
+* Mon Aug 15 2005 Igor Zubkov <icesik@altlinux.ru> 0.48-alt0
+- update to 0.48
+
+* Mon Aug 15 2005 Igor Zubkov <icesik@altlinux.ru> 0.47-alt0
+- update to 0.47
+
+* Thu Aug 11 2005 Igor Zubkov <icesik@altlinux.ru> 0.46-alt0.2
+- twiks
+
+* Wed Aug 10 2005 Igor Zubkov <icesik@altlinux.ru> 0.46-alt0.1
+- add README.ALT to package
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.46-alt0
+- update to 0.46
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.45-alt0
+- update to 0.45
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.44-alt0
+- update to 0.44
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.43-alt0
+- update to 0.43
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.42-alt0
+- update to 0.42
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.41-alt0
+- update to 0.41
+
+* Sat Aug 06 2005 Igor Zubkov <icesik@altlinux.ru> 0.40-alt1.1
+- add config
+
+* Tue Jan 29 2002 Dmitry V. Levin <ldv@alt-linux.org> 0.40-alt1
+- 0.40
+- Relocated %_datadir/%name to %_libdir/%name.
+
+* Wed Nov 28 2001 Konstantin Volckov <goldhead@altlinux.ru> 0.39-alt1
+- 0.39
+
+* Wed Jun 27 2001 Konstantin Volckov <goldhead@altlinux.ru> 0.32-alt1
+- New version
+- Killed all changelogs before 2001
+
+* Mon Jun 18 2001 Christian Belisle <cbelisle@mandrakesoft.com> 0.32-2mdk
+- Added descriptions for the -i option.
+
+* Wed Jun 13 2001 Frederic Lepied <flepied@mandrakesoft.com> 0.32-1mdk
+- rpmlint.py: o If the file given on the command line doesn't exist,
+               try to use the name as an installed package to check.
+              o new -i option to give explanation on the errors/warnings (not too much
+               descriptions have been added ;-)
+
+- MenuCheck.py: added new Office sub menus.
+
+- FilesCheck.py: o added /usr/X11R6/man subdirs to the list of
+	          STANDARD_DIRS.
+	         o warn for .so file only if they are in a lib dir.
+                 o warn for source files in a non devel package only if they are not
+                  doc files.
+
+- TagsCheck.py: corrected description-line-too-long check.
+
+- FilesCheck.py: add the rpm user and group per request of Jeff
+	         Johnson for the future version of rpm.
+
+* Fri May 18 2001 Frederic Lepied <flepied@mandrakesoft.com> 0.31-1mdk
+- PostCheck.py: check that a script isn't only one command.
+                check postin and prein instead of postun and preun
+	        for ghost files creation.
+
+- MenuCheck.py: don't check NO_XALF in menu command.
+
+- FilesCheck.py: Add rpcuser.
+
+- Config.py: Expections for ldconfig, initscripts, netkit-base and iputils.
+
+- TagsCheck.py: check length of summary and description lines.
+
+* Fri Feb 16 2001 Frederic Lepied <flepied@mandrakesoft.com> 0.30-1mdk
+
+- InitScriptCheck.py: check if runlevels are set
+
+- MenuCheck.py: added support to check launchers.
+
+- I18NCheck.py: check subdirs of /sur/share/man.
+
+- PostCheck.py: check that the postun creates the ghost files
+                added install to dangerous commands
+
+- LSBCheck.py: first version
+
+- TagsCheck.py: changed Window Maker to WindowMaker
+                Add https as valid url.
+                Used list of licenses from www.opensource.org/licenses
+                Check the full license before splitting in it
+                multiple parts.
+
+* Tue Dec 26 2000 Dmitry V. Levin <ldv@fandra.org> 0.29-ipl1mdk
+- RE adaptions.
diff --git a/.gear/rules b/.gear/rules
new file mode 100644
index 0000000..dbd574f
--- /dev/null
+++ b/.gear/rules
@@ -0,0 +1,6 @@
+spec: .gear/rpmlint.spec
+copy?: .gear/*.ALT
+copy?: .gear/*.alt
+copy?: .gear/*.patch
+tar: @version@:.
+diff: @version@:. . name=@name@-@version@.patch
diff --git a/.gear/tags/192fc817e8ca74cb4d168966a4735c8564af3e09 b/.gear/tags/192fc817e8ca74cb4d168966a4735c8564af3e09
new file mode 100644
index 0000000..f79dac0
--- /dev/null
+++ b/.gear/tags/192fc817e8ca74cb4d168966a4735c8564af3e09
@@ -0,0 +1,6 @@
+object 7f427752e76624b15e9c5dfaea35c1fa11aa4b0b
+type commit
+tag 2.4.0
+tagger Martin Liska <mliska@suse.cz> 1664805652 +0200
+
+2.4.0
diff --git a/.gear/tags/list b/.gear/tags/list
new file mode 100644
index 0000000..2b90751
--- /dev/null
+++ b/.gear/tags/list
@@ -0,0 +1 @@
+192fc817e8ca74cb4d168966a4735c8564af3e09 2.4.0
diff --git a/.gear/upstream/remotes b/.gear/upstream/remotes
new file mode 100644
index 0000000..c4e95ab
--- /dev/null
+++ b/.gear/upstream/remotes
@@ -0,0 +1,3 @@
+[remote "upstream"]
+	url = https://github.com/rpm-software-management/rpmlint.git
+	fetch = +refs/heads/*:refs/remotes/upstream/*
diff --git a/configs/ALT/alt.toml b/configs/ALT/alt.toml
new file mode 100644
index 0000000..556c66a
--- /dev/null
+++ b/configs/ALT/alt.toml
@@ -0,0 +1,314 @@
+# ALT configuration for the rpmlint utility.
+
+# Configuration options used by the checks
+CompressExtension = ""
+BadnessThreshold = 999
+
+# Regexp string with expected suffix in Release tags.
+ReleaseExtension = "^(alt[0-9]+|ipl[0-9]+mdk)$"
+
+# String regexp validating value for the Packager tag.
+Packager = '@altlinux\.(ru|org|com)| at altlinux dot (ru|org)|@packages\.altlinux\.org| at altlinux\.ru'
+
+# Regexp string with value for the BuildHost preamble tag
+ValidBuildHost = '\.hasher\.altlinux\.(ru|org)|\.office\.altlinux\.ru$'
+
+# List of directories considered to be system default library search paths.
+SystemLibPaths = [
+    "/lib",
+    "/usr/lib",
+    "/lib64",
+    "/usr/lib64",
+]
+
+# Enabled checks for the rpmlint to be run (besides the default set)
+Checks = [
+    "BashismsCheck",
+    "PAMModulesCheck",
+    "TmpFilesCheck",
+    "SysVInitOnSystemdCheck",
+    "SharedLibraryPolicyCheck",
+]
+
+# Package scriptlet interpreters
+ValidShells = [
+    "<lua>",
+    "/bin/sh",
+    "/bin/bash",
+    "/usr/bin/perl",
+    "/usr/bin/python2",
+    "/usr/bin/python3",
+]
+
+# List of directory prefixes that are not allowed in packages
+DisallowedDirs = [
+    "/etc/NetworkManager/dispatcher.d",
+    "/etc/binfmt.d",
+    "/etc/depmod.d",
+    "/etc/modules-load.d",
+    "/etc/modprobe.d",
+    "/etc/sysctl.d",
+    "/etc/systemd/system",
+    "/etc/tmpfiles.d",
+    "/etc/udev/rules.d",
+]
+
+Filters = [
+    '.*invalid-version.*',
+    '.*invalid-packager.*',
+    '.*not-standard-release-extension.*',
+    '.*invalid-buildhost.*',
+    '.*executable-in-library-package.*',
+    '.*non-versioned-file-in-library-package.*',
+    '.*shlib-policy-name-error.*',
+    '.*hardcoded-path-in-buildroot-tag.*',
+    '.*no-buildroot-tag.*',
+    '.*cross-directory-hard-link.*',
+
+# Do not validate package rpm groups
+    '.*devel-package-with-non-devel-group.*',
+    '.*no-group-tag.*',
+    '.*non-standard-group.*',
+
+# Output filters
+    '.*spurious-bracket-in-.*',
+    '.*one-line-command-in-.*',
+    ' dir-or-file-in-opt ',  # handled by CheckFilelist.py
+    ' dir-or-file-in-usr-local ',  # handled by CheckFilelist.py
+    ' non-standard-dir-in-usr ',  # handled by CheckFilelist.py
+    ' no-signature',
+    ' symlink-crontab-file',  #bnc591431
+    ' without-chkconfig',
+    'unstripped-binary-or-object.*\.ko',
+    ' no-chkconfig',
+    ' subsys-not-used',
+    ' dangerous-command.*',
+    ' setuid-binary.*',
+    'subdir-in-bin /sbin/conf.d/',
+    '.* nss_db non-standard-dir-in-var db',
+    'non-standard-dir-in-usr openwin',
+    'ibcs2 non-standard-dir-in-usr i486-sysv4',
+    'shlibs5 non-standard-dir-in-usr i486-linux-libc5',
+    'explicit-lib-dependency libtool',
+#
+## Filesystem package needs special exceptions
+    '^filesystem\..*: dir-or-file-in-var-run',
+    '^filesystem\..*: dir-or-file-in-var-lock',
+    '^filesystem\..*: dir-or-file-in-var-tmp',
+    '^filesystem\..*: dir-or-file-in-var-run',
+    '^filesystem\..*: dir-or-file-in-var-lock',
+    '^filesystem\..*: dir-or-file-in-usr-tmp',
+    '^filesystem\..*: dir-or-file-in-tmp',
+    '^filesystem\..*: dir-or-file-in-mnt',
+    '^filesystem\..*: dir-or-file-in-home',
+    '^filesystem\..*: hidden-file-or-dir /root/.gnupg',
+    '^filesystem\..*: hidden-file-or-dir /root/.gnupg',
+    '^filesystem\..*: hidden-file-or-dir /etc/skel.*/.config',
+    '^filesystem\..*: hidden-file-or-dir /etc/skel/.local',
+    '^filesystem\..*: hidden-file-or-dir /tmp/.X11-unix',
+    '^filesystem\..*: hidden-file-or-dir /tmp/.ICE-unix',
+    '^filesystem\..*: hidden-file-or-dir /etc/skel/.fonts',
+    '^filesystem\..*: filelist-forbidden-fhs23',
+    '^filesystem\..*: filelist-forbidden-opt',
+    '^filesystem\..*: non-standard-uid /var/lib/nobody nobody',
+    '^filesystem\..*: missing-dependency-to-cron',
+## has arch specific dirs in /usr
+    '^filesystem\..*: no-binary',
+#
+## Suppress any errors about internal packages
+    '^qa\S+: [EWI]:',
+    '^\S*(?:INTERNAL|internal)\.\S+: [EWI]:',
+#
+## Exceptions for devel-files
+    'devel-file-in-non-devel-package.*/boot/vmlinuz-.*autoconf.h',
+    'devel-file-in-non-devel-package.*/usr/src/linux-',
+    'devel-file-in-non-devel-package.*/usr/share/systemtap',
+    '-(?:examples|doc)\.\S+: \w: devel-file-in-non-devel-package',
+    'java\S+-demo\.\S+: \w: devel-file-in-non-devel-package',
+    'avr-libc\.\S+: \w: devel-file-in-non-devel-package',
+    'cross-.*devel-file-in-non-devel-package',
+    'cmake.*devel-file-in-non-devel-package',
+    'gcc\d\d.*devel-file-in-non-devel-package',
+    'OpenOffice_org-sdk\.\S+: \w: devel-file-in-non-devel-package',
+    'wnn-sdk\.\S+: \w: devel-file-in-non-devel-package',
+    'ocaml\.\S+: \w: devel-file-in-non-devel-package',
+    'xorg-x11-server-sdk\.\S+: \w: devel-file-in-non-devel-package',
+    'linux-kernel-headers\.\S+: \w: devel-file-in-non-devel-package',
+    ' devel-file-in-non-devel-package.*-config',
+    'libtool\.\S+: \w: devel-file-in-non-devel-package',
+    'sdb.* dangling-relative-symlink /usr/share/doc/sdb/.*/gifs ../gifs',
+    'kernel-modules-not-in-kernel-packages',
+#
+## SUSE kmp's don't need manual depmod (bnc#456048)
+#    'module-without-depmod-postin',
+#    'postin-with-wrong-depmod',
+#    'module-without-depmod-postun',
+#    'postun-with-wrong-depmod',
+#    'configure-without-libdir-spec',
+#    'conffile-without-noreplace-flag /etc/init.d',
+#    'use-of-RPM_SOURCE_DIR',
+#    'use-tmp-in-',
+#    'symlink-contains-up-and-down-segments /var/lib/named',
+#    'no-ldconfig-symlink',
+#    'aaa_base\.\S+: \w: use-of-home-in-%post',
+#    'description-line-too-long',
+    'hardcoded-library-path',
+#
+## Doesn't seem to make sense
+#    'invalid-ldconfig-symlink',
+#    'invalid-soname',
+#    'library-not-linked-against-libc',
+#    'only-non-binary-in-usr-lib',
+    'outside-libdir-files',
+#
+## We want these files
+    ' perl-temp-file ',
+    ' hidden-file-or-dir .*/\.packlist',
+    ' hidden-file-or-dir .*/\.directory',
+    'perl-.*no-binary',
+    ' no-major-in-name ',
+#
+## We check for that already
+    'dangling-relative-symlink',
+    ' lib-package-without-%mklibname',
+    ' requires-on-release',
+    ' non-executable-script /etc/profile.d/',
+#    ' non-executable-script /var/adm/fillup-templates/',
+#    ' init-script-name-with-dot ',
+    '.* statically-linked-binary /sbin/ldconfig',
+    '.* statically-linked-binary /sbin/init',
+#    'valgrind.* statically-linked-binary',
+#    'ldconfig-post.*/ddiwrapper/wine/',
+#    'glibc\.\S+: \w: statically-linked-binary /usr/sbin/glibc_post_upgrade',
+    ' symlink-should-be-relative ',
+#    ' binary-or-shlib-defines-rpath .*ORIGIN',
+#    'libzypp.*shlib-policy-name-error.*libzypp',
+#    'libtool.*shlib-policy.*',
+#
+## Stuff that is currently too noisy, but might become relevant in the future
+#    ' prereq-use',
+#    ' file-not-utf8',
+#    ' tag-not-utf8',
+    ' setup-not-quiet',
+    ' no-cleaning-of-buildroot ',
+#    ' mixed-use-of-spaces-and-tabs ',
+#    ' prereq-use ',
+#
+## An issue with OBS, works with autobuild
+    ' no-packager-tag',
+#    ' unversioned-explicit-provides ',
+#    ' unversioned-explicit-obsoletes ',
+#    ' service-default-enabled ',
+#    ' non-standard-dir-perm ',
+#    ' conffile-without-noreplace-flag ',
+#    ' non-standard-executable-perm ',
+    ' jar-not-indexed ',
+#    ' uncompressed-zip ',
+#    ' %ifarch-applied-patch ',
+#    ' read-error ',
+#    ' init-script-without-chkconfig-postin ',
+#    ' init-script-without-chkconfig-preun ',
+#    ' postin-without-chkconfig ',
+#    ' preun-without-chkconfig ',
+    ' no-dependency-on locales',
+    ' no-dependency-on perl-base',
+    ' no-dependency-on python-base',
+    ' python-naming-policy-not-applied',
+    # FIXME does this really exists?
+    ' perl-naming-policy-not-applied',
+#    ' shlib-policy-name-error',
+#    ' binary-or-shlib-defines-rpath',
+#    ' executable-marked-as-config-file',
+#    ' log-files-without-logrotate',
+#    ' hardcoded-prefix-tag',
+    ' -debug(info|source).* no-documentation',
+#    ' multiple-specfiles',
+#    ' no-default-runlevel ',
+#    ' setgid-binary ',
+#    ' non-readable ',
+    ' postin-without-ghost-file-creation ',
+#
+## Exceptions for filelist checks
+#    'nfs-client\.\S+: \w: filelist-forbidden-backup-file /var/lib/nfs/sm.bak',
+#    'perl\.\S+: \w: filelist-forbidden-perl-dir ',
+#    'info\.\S+: \w: info-dir-file .*/usr/share/info/dir',
+#
+## These packages are used for CD creation and are not supposed to be
+## installed. It's still a dirty hack to make an exception. The
+## packages should either be built in a separate project with
+## different config or file be put somewhere below /opt/suse/*
+#    '(?:dosutils|skelcd|installation-images|yast2-slide-show|instlux|skelcd-.*|patterns-.*)\.\S+: \w: filelist-forbidden-fhs23 /CD1',
+#
+## Too noisy, and usually not something downstream packagers can fix
+#    ' incorrect-fsf-address ',
+#    ' no-manual-page-for-binary ',
+#    ' static-library-without-debuginfo /usr/lib(?:64)?/ghc-[\d\.]+/',
+#
+## Many places have shorter paths
+#    ' non-coherent-filename ',
+
+# Mandriva specific stuff that we don't want
+    ' invalid-build-requires ',
+    ' no-provides ',
+
+# Bash completion files are not scripts, do not require them marked as %config
+    'W: non-conffile-in-etc /etc/bash_completion.d/',
+
+# ALT specific stuff that we don't want
+    ' ghost-files-without-postin',
+    ' -debuginfo.* /usr/lib/debug/',
+    ' -debugsource.* /usr/src/debug/',
+    ' doc-file-dependency .* /bin/sh$',
+    # Don't bother with the non-ghost-in-run checks, /var/lock and /var/run are
+    # symlinks to /run/lock and /run respectively, and /run is a tmpfs
+    'non-ghost-in-run',
+    # Someone thought it was a good idea to make .desktop files executable. They were wrong.
+    # Nevertheless, I do not yet control the universe, so we squelch the error here.
+    'script-without-shebang .*\.desktop$',
+    # Some files in /etc/ are not meant to be modified by the sysadmin
+    'non-conffile-in-etc /etc/rpm/.*$',
+    'W: non-conffile-in-etc /etc/buildreqs',
+    # Don't care about long descriptions on debuginfo packages
+    # They automatically include the package name and are always
+    # quite long.
+    '-debuginfo.* description-line-too-long',
+    # ALT no uses explicit ldconfig %post/%postun
+    'library-without-ldconfig-postin',
+    'library-without-ldconfig-postun',
+    # Ignore 700 dir perms here
+    'non-standard-dir-perm /etc/.* 700',
+    'non-standard-dir-perm /var/lib/.* 700',
+    'non-standard-dir-perm /root 0700',
+    'non-standard-dir-perm /lib/modules 0700',
+    'non-standard-dir-perm /boot 0700',
+    'non-standard-dir-perm /sys 0555',
+    'non-standard-dir-perm /proc 0555',
+    'non-standard-dir-perm /tmp 01777',
+
+# Info uses file triggers now (boo#1152169)
+    ' info-files-without-install-info-postin',
+    ' info-files-without-install-info-postun ',
+    ' postin-without-install-info ',
+]
+
+[DanglingSymlinkExceptions."/usr/share/licenses/"]
+path = "/usr/share/licenses/"
+name = "licenses"
+[DanglingSymlinkExceptions."consolehelper$"]
+path = "consolehelper$"
+name = "usermode"
+[DanglingSymlinkExceptions."consolehelper-gtk$"]
+path = "consolehelper-gtk$"
+name = "usermode-gtk"
+
+[Descriptions]
+non-standard-uid = '''A file in this package is owned by an unregistered user id.
+To register the user, please make a pull request to the rpmlint config file
+configs/ALT/alt.toml in the rpmlint repository.
+'''
+non-standard-gid = '''A file in this package is owned by an unregistered group id.
+To register the group, please make a pull request to the rpmlint config file
+configs/ALT/alt.toml in the rpmlint repository.
+'''
+no-changelogname-tag = '''There is no changelog. Please insert a '%changelog' section heading in your
+spec file and prepare your changes file using e.g. the 'add_changelog' command.'''
diff --git a/configs/ALT/groups.toml b/configs/ALT/groups.toml
new file mode 100644
index 0000000..184136f
--- /dev/null
+++ b/configs/ALT/groups.toml
@@ -0,0 +1,121 @@
+# based on /usr/lib/rpm/GROUPS from rpm
+
+ValidGroups = [
+    'Accessibility',
+    'Archiving/Backup',
+    'Archiving/Cd burning',
+    'Archiving/Compression',
+    'Archiving/Other',
+    'Books/Computer books',
+    'Books/Faqs',
+    'Books/Howtos',
+    'Books/Literature',
+    'Books/Other',
+    'Communications',
+    'Databases',
+    'Development/C',
+    'Development/C++',
+    'Development/Databases',
+    'Development/Debug',
+    'Development/Debuggers',
+    'Development/Documentation',
+    'Development/Erlang',
+    'Development/Functional',
+    'Development/GNOME and GTK+',
+    'Development/Haskell',
+    'Development/Java',
+    'Development/KDE and QT',
+    'Development/Kernel',
+    'Development/Lisp',
+    'Development/ML',
+    'Development/Objective-C',
+    'Development/Other',
+    'Development/Perl',
+    'Development/Python',
+    'Development/Python3',
+    'Development/Ruby',
+    'Development/Scheme',
+    'Development/Tcl',
+    'Development/Tools',
+    'Documentation',
+    'Editors',
+    'Education',
+    'Emulators',
+    'Engineering',
+    'File tools',
+    'Games/Adventure',
+    'Games/Arcade',
+    'Games/Boards',
+    'Games/Cards',
+    'Games/Educational',
+    'Games/Other',
+    'Games/Puzzles',
+    'Games/Sports',
+    'Games/Strategy',
+    'Graphical desktop/Enlightenment',
+    'Graphical desktop/FVWM based',
+    'Graphical desktop/GNOME',
+    'Graphical desktop/GNUstep',
+    'Graphical desktop/Icewm',
+    'Graphical desktop/KDE',
+    'Graphical desktop/MATE',
+    'Graphical desktop/Motif',
+    'Graphical desktop/Other',
+    'Graphical desktop/Rox',
+    'Graphical desktop/Sawfish',
+    'Graphical desktop/Sugar',
+    'Graphical desktop/Window Maker',
+    'Graphical desktop/XFce',
+    'Graphics',
+    'Monitoring',
+    'Networking/Chat',
+    'Networking/DNS',
+    'Networking/File transfer',
+    'Networking/FTN',
+    'Networking/IRC',
+    'Networking/Instant messaging',
+    'Networking/Mail',
+    'Networking/News',
+    'Networking/Other',
+    'Networking/Remote access',
+    'Networking/WWW',
+    'Office',
+    'Other',
+    'Publishing',
+    'Sciences/Astronomy',
+    'Sciences/Biology',
+    'Sciences/Chemistry',
+    'Sciences/Computer science',
+    'Sciences/Geosciences',
+    'Sciences/Mathematics',
+    'Sciences/Medicine',
+    'Sciences/Other',
+    'Sciences/Physics',
+    'Security/Antivirus',
+    'Security/Networking',
+    'Shells',
+    'Sound',
+    'System/Base',
+    'System/Configuration/Boot and Init',
+    'System/Configuration/Hardware',
+    'System/Configuration/Networking',
+    'System/Configuration/Other',
+    'System/Configuration/Packaging',
+    'System/Configuration/Printing',
+    'System/Fonts/Console',
+    'System/Fonts/True type',
+    'System/Fonts/Type1',
+    'System/Fonts/X11 bitmap',
+    'System/Internationalization',
+    'System/Kernel and hardware',
+    'System/Libraries',
+    'System/Legacy libraries',
+    'System/Servers',
+    'System/Servers/ZProducts',
+    'System/X11',
+    'System/XFree86',
+    'Terminals',
+    'Text tools',
+    'Toys',
+    'Video',
+]
diff --git a/configs/ALT/licenses.toml b/configs/ALT/licenses.toml
new file mode 100644
index 0000000..6188a1e
--- /dev/null
+++ b/configs/ALT/licenses.toml
@@ -0,0 +1,550 @@
+# taken from ALT common-licenses package
+
+ValidLicenses = [
+    # /usr/share/license
+    '0BSD',
+    'AAL',
+    'Abstyles',
+    'Adobe-2006',
+    'Adobe-Glyph',
+    'ADSL',
+    'AFL-1.1',
+    'AFL-1.2',
+    'AFL-2.0',
+    'AFL-2.1',
+    'AFL-3.0',
+    'Afmparse',
+    'AGPL-1.0',
+    'AGPL-1.0+',
+    'AGPL-1.0-only',
+    'AGPL-1.0-or-later',
+    'AGPL-3.0',
+    'AGPL-3.0+',
+    'AGPL-3.0-only',
+    'AGPL-3.0-or-later',
+    'Aladdin',
+    'Aladdin-8.0',
+    'ALT-Bitstream-Vera',
+    'ALT-Cryptix',
+    'ALT-Cyrus',
+    'ALT-Free-Art-1.3',
+    'ALT-MITX',
+    'ALT-NVIDIA-340',
+    'ALT-NVIDIA-390',
+    'ALT-OCL-1.0',
+    'ALT-OpenPub-0.4',
+    'ALT-OpenPub-1.0',
+    'ALT-ParaType-1.3',
+    'ALT-Perl',
+    'ALT-Proprietary-PLATON',
+    'ALT-Public-Domain',
+    'ALT-RADVD',
+    'ALT-TPL',
+    'ALT-Ubuntu-Font-License-1.0',
+    'ALT-UCD',
+    'ALT-XConsortium',
+    'ALT-XFree86-other',
+    'ALT-Zsh',
+    'AMDPLPA',
+    'AML',
+    'AMPAS',
+    'ANTLR-PD',
+    'Apache-1.0',
+    'Apache-1.1',
+    'Apache-2.0',
+    'APAFML',
+    'APL',
+    'APL-1.0',
+    'APSL-1.0',
+    'APSL-1.1',
+    'APSL-1.2',
+    'APSL-2.0',
+    'Artistic-1',
+    'Artistic-1.0',
+    'Artistic-1.0-cl8',
+    'Artistic-1.0-Perl',
+    'Artistic-2',
+    'Artistic-2.0',
+    'Bahyph',
+    'Barr',
+    'Beerware',
+    'BitTorrent-1.0',
+    'BitTorrent-1.1',
+    'blessing',
+    'BlueOak-1.0.0',
+    'Borceux',
+    'BSD',
+    'BSD-1-Clause',
+    'BSD-2-Clause',
+    'BSD-2-Clause-FreeBSD',
+    'BSD-2-Clause-NetBSD',
+    'BSD-2-Clause-Patent',
+    'BSD-3-Clause',
+    'BSD-3-Clause-Attribution',
+    'BSD-3-Clause-Clear',
+    'BSD-3-Clause-LBNL',
+    'BSD-3-Clause-No-Nuclear-License',
+    'BSD-3-Clause-No-Nuclear-License-2014',
+    'BSD-3-Clause-No-Nuclear-Warranty',
+    'BSD-3-Clause-Open-MPI',
+    'BSD-4-Clause',
+    'BSD-4-Clause-UC',
+    'BSD-Protection',
+    'BSD-Source-Code',
+    'BSL',
+    'BSL-1.0',
+    'bzip2-1.0.5',
+    'bzip2-1.0.6',
+    'Caldera',
+    'CATOSL',
+    'CATOSL-1.1',
+    'CC0',
+    'CC0-1.0',
+    'CC-BY-1.0',
+    'CC-BY-2.0',
+    'CC-BY-2.5',
+    'CC-BY-3.0',
+    'CC-BY-4.0',
+    'CC-BY-NC-1.0',
+    'CC-BY-NC-2.0',
+    'CC-BY-NC-2.5',
+    'CC-BY-NC-3.0',
+    'CC-BY-NC-4.0',
+    'CC-BY-NC-ND-1.0',
+    'CC-BY-NC-ND-2.0',
+    'CC-BY-NC-ND-2.5',
+    'CC-BY-NC-ND-3.0',
+    'CC-BY-NC-ND-4.0',
+    'CC-BY-NC-SA-1.0',
+    'CC-BY-NC-SA-2.0',
+    'CC-BY-NC-SA-2.5',
+    'CC-BY-NC-SA-3.0',
+    'CC-BY-NC-SA-4.0',
+    'CC-BY-ND-1.0',
+    'CC-BY-ND-2.0',
+    'CC-BY-ND-2.5',
+    'CC-BY-ND-3.0',
+    'CC-BY-ND-4.0',
+    'CC-BY-SA-1.0',
+    'CC-BY-SA-2.0',
+    'CC-BY-SA-2.5',
+    'CC-BY-SA-3.0',
+    'CC-BY-SA-4.0',
+    'CC-PDDC',
+    'CDDL-1.0',
+    'CDDL-1.1',
+    'CDLA-Permissive-1.0',
+    'CDLA-Sharing-1.0',
+    'CECILL-1.0',
+    'CECILL-1.1',
+    'CECILL-2.0',
+    'CECILL-2.1',
+    'CECILL-B',
+    'CECILL-C',
+    'CERN-OHL-1.1',
+    'CERN-OHL-1.2',
+    'ClArtistic',
+    'CNRI-Jython',
+    'CNRI-Python',
+    'CNRI-Python-GPL-Compatible',
+    'Condor-1.1',
+    'copyleft-next-0.3.0',
+    'copyleft-next-0.3.1',
+    'CPAL-1.0',
+    'CPL-1.0',
+    'CPOL-1.02',
+    'Crossword',
+    'Cryptix',
+    'CrystalStacker',
+    'CUA-OPL-1.0',
+    'Cube',
+    'curl',
+    'D-FSL-1.0',
+    'diffmark',
+    'DOC',
+    'Dotseqn',
+    'DSDP',
+    'dvipdfm',
+    'ECL-1.0',
+    'ECL-2.0',
+    'eCos',
+    'eCos-2.0',
+    'EFL-1.0',
+    'EFL-2.0',
+    'eGenix',
+    'Entessa',
+    'EPL-1.0',
+    'EPL-2.0',
+    'ErlPL',
+    'ErlPL-1.1',
+    'etalab-2.0',
+    'EUDatagrid',
+    'EUPL-1.0',
+    'EUPL-1.1',
+    'EUPL-1.2',
+    'Eurosym',
+    'Fair',
+    'FDL-1.1',
+    'FDL-1.2',
+    'Frameworx',
+    'Frameworx-1.0',
+    'FreeImage',
+    'FreeImage-1.0',
+    'FSFAP',
+    'FSFUL',
+    'FSFULLR',
+    'FTL',
+    'GFDL-1.1',
+    'GFDL-1.1+',
+    'GFDL-1.1-only',
+    'GFDL-1.1-or-later',
+    'GFDL-1.2',
+    'GFDL-1.2+',
+    'GFDL-1.2-only',
+    'GFDL-1.2-or-later',
+    'GFDL-1.3',
+    'GFDL-1.3+',
+    'GFDL-1.3-only',
+    'GFDL-1.3-or-later',
+    'Giftware',
+    'GL2PS',
+    'GL2PS-2.0',
+    'Glide',
+    'Glulxe',
+    'gnuplot',
+    'GPL-1',
+    'GPL-1.0',
+    'GPL-1.0+',
+    'GPL-1.0-only',
+    'GPL-1.0-or-later',
+    'GPL-2',
+    'GPL-2.0',
+    'GPL-2.0+',
+    'GPL-2.0-only',
+    'GPL-2.0-or-later',
+    'GPL-3',
+    'GPL-3.0',
+    'GPL-3.0+',
+    'GPL-3.0-only',
+    'GPL-3.0-or-later',
+    'GPLv2',
+    'GPLv2+',
+    'GPLv3',
+    'GPLv3+',
+    'gSOAP-1.3b',
+    'HaskellReport',
+    'HPND',
+    'HPND-sell-variant',
+    'IBM-pibs',
+    'ICU',
+    'ICU-1.8.1+',
+    'ICU-1.8.1-or-later',
+    'IJG',
+    'ImageMagick',
+    'iMatix',
+    'Imlib2',
+    'Info-ZIP',
+    'Intel',
+    'Intel-ACPI',
+    'Interbase',
+    'Interbase-1.0',
+    'IPA',
+    'IPA-1.0',
+    'IPL',
+    'IPL-1.0',
+    'ISC',
+    'JasPer',
+    'JasPer-2.0',
+    'JPNIC',
+    'JSON',
+    'LAL-1.2',
+    'LAL-1.3',
+    'Latex2e',
+    'Leptonica',
+    'LGPL-2',
+    'LGPL-2.0',
+    'LGPL-2.0+',
+    'LGPL-2.0-only',
+    'LGPL-2.0-or-later',
+    'LGPL-2.1',
+    'LGPL-2.1+',
+    'LGPL-2.1-only',
+    'LGPL-2.1-or-later',
+    'LGPL-3',
+    'LGPL-3.0',
+    'LGPL-3.0+',
+    'LGPL-3.0-only',
+    'LGPL-3.0-or-later',
+    'LGPLLR',
+    'LGPLv2',
+    'LGPLv2+',
+    'LGPLv2.1',
+    'LGPLv2.1+',
+    'LGPLv3',
+    'LGPLv3+',
+    'Libpng',
+    'libpng-2.0',
+    'libtiff',
+    'LiLiQ-P-1.1',
+    'LiLiQ-R-1.1',
+    'LiLiQ-Rplus-1.1',
+    'Linux-OpenIB',
+    'LPL-1.0',
+    'LPL-1.02',
+    'LPPL-1.0',
+    'LPPL-1.1',
+    'LPPL-1.2',
+    'LPPL-1.3a',
+    'LPPL-1.3c',
+    'MakeIndex',
+    'MirOS',
+    'MIT',
+    'MIT-0',
+    'MIT-advertising',
+    'MIT-CMU',
+    'MIT-enna',
+    'MIT-feh',
+    'MITNFA',
+    'MITX',
+    'Motosoto',
+    'mpich2',
+    'MPL-1.0',
+    'MPL-1.1',
+    'MPL-2.0',
+    'MPL-2.0-no-copyleft-exception',
+    'MS-PL',
+    'MS-RL',
+    'MTLL',
+    'MulanPSL-1.0',
+    'Multics',
+    'Mup',
+    'NASA-1.3',
+    'Naumen',
+    'NBPL-1.0',
+    'NCSA',
+    'NetCDF',
+    'Net-SNMP',
+    'Newsletr',
+    'NGPL',
+    'NLOD',
+    'NLOD-1.0',
+    'NLPL',
+    'Nokia',
+    'NOSL',
+    'NOSL-1.0',
+    'Noweb',
+    'NPL-1.0',
+    'NPL-1.1',
+    'NPOSL',
+    'NPOSL-3.0',
+    'NRL',
+    'NTP',
+    'Nunit',
+    'NVIDIA-340',
+    'NVIDIA-390',
+    'OCCT-PL',
+    'OCL',
+    'OCL-1.0',
+    'OCLC',
+    'OCLC-2.0',
+    'ODbL',
+    'ODbL-1.0',
+    'ODC-By',
+    'ODC-By-1.0',
+    'OFL-1.0',
+    'OFL-1.1',
+    'OGL-Canada-2.0',
+    'OGL-UK-1.0',
+    'OGL-UK-2.0',
+    'OGL-UK-3.0',
+    'OGTSL',
+    'OLDAP-1.1',
+    'OLDAP-1.2',
+    'OLDAP-1.3',
+    'OLDAP-1.4',
+    'OLDAP-2.0',
+    'OLDAP-2.0.1',
+    'OLDAP-2.1',
+    'OLDAP-2.2',
+    'OLDAP-2.2.1',
+    'OLDAP-2.2.2',
+    'OLDAP-2.3',
+    'OLDAP-2.4',
+    'OLDAP-2.5',
+    'OLDAP-2.6',
+    'OLDAP-2.7',
+    'OLDAP-2.8',
+    'OML',
+    'OpenPub',
+    'OpenPub-0.4',
+    'OpenSSL',
+    'OPL',
+    'OPL-1.0',
+    'OSET-PL',
+    'OSET-PL-2.1',
+    'OSL-1.0',
+    'OSL-1.1',
+    'OSL-2.0',
+    'OSL-2.1',
+    'OSL-3.0',
+    'Parity-6.0.0',
+    'PDDL',
+    'PDDL-1.0',
+    'Perl',
+    'PHP-3.0',
+    'PHP-3.01',
+    'Plexus',
+    'PostgreSQL',
+    'psfrag',
+    'psutils',
+    'Python',
+    'Python-2.0',
+    'Qhull',
+    'QPL',
+    'QPL-1.0',
+    'Rdisc',
+    'RHeCos',
+    'RHeCos-1.1',
+    'RPL-1.1',
+    'RPL-1.5',
+    'RPSL',
+    'RPSL-1.0',
+    'RSA-MD',
+    'RSCPL',
+    'RSCPL-1.0',
+    'Ruby',
+    'Saxpath',
+    'SAX-PD',
+    'SCEA',
+    'SCEA-1.0',
+    'Sendmail',
+    'Sendmail-8.23',
+    'SGI-B-1.0',
+    'SGI-B-1.1',
+    'SGI-B-2.0',
+    'SHL-0.5',
+    'SHL-0.51',
+    'SimPL',
+    'SimPL-2.0',
+    'SISSL-1.1',
+    'SISSL-1.2',
+    'Sleepycat',
+    'SMLNJ',
+    'SMPPL',
+    'SNIA',
+    'Spencer-86',
+    'Spencer-94',
+    'Spencer-99',
+    'SPL',
+    'SPL-1.0',
+    'SSH-OpenSSH',
+    'SSH-short',
+    'SSPL-1.0',
+    'StandardML-NJ',
+    'SugarCRM',
+    'SugarCRM-1.1.3',
+    'SWL',
+    'TAPR-OHL-1.0',
+    'TCL',
+    'TCP-wrappers',
+    'TMate',
+    'TORQUE-1.1',
+    'TOSL',
+    'TPL',
+    'TU-Berlin-1.0',
+    'TU-Berlin-2.0',
+    'UCD',
+    'UCL-1.0',
+    'Unicode-DFS-2015',
+    'Unicode-DFS-2016',
+    'Unicode-TOU',
+    'Unlicense',
+    'UPL',
+    'UPL-1.0',
+    'Vim',
+    'VOSTROM',
+    'VSL',
+    'VSL-1.0',
+    'W3C',
+    'W3C-19980720',
+    'W3C-20150513',
+    'Watcom',
+    'Watcom-1.0',
+    'Wsuipa',
+    'WTFPL',
+    'wxWidgets',
+    'wxWindows',
+    'X11',
+    'XConsortium',
+    'Xerox',
+    'XFree86',
+    'XFree86-1.1',
+    'XFree86-other',
+    'xinetd',
+    'Xnet',
+    'xpp',
+    'XSkat',
+    'YPL-1.0',
+    'YPL-1.1',
+    'Zed',
+    'Zend',
+    'Zend-2.0',
+    'Zimbra-1.3',
+    'Zimbra-1.4',
+    'Zlib',
+    'zlib-acknowledgement',
+    'ZPL-1.0',
+    'ZPL-1.1',
+    'ZPL-2.0',
+    'ZPL-2.1',
+    # /usr/share/license-exception
+    '389-exception',
+    'Autoconf-exception-2.0',
+    'Autoconf-exception-3.0',
+    'Bison-exception',
+    'Bison-exception-2.2',
+    'Bootloader-exception',
+    'Classpath-exception',
+    'Classpath-exception-2.0',
+    'CLISP-exception',
+    'CLISP-exception-2.0',
+    'DigiRule-FOSS-exception',
+    'eCos-exception',
+    'eCos-exception-2.0',
+    'Fawkes-Runtime-exception',
+    'FLTK-exception',
+    'Font-exception',
+    'Font-exception-2.0',
+    'freertos-exception',
+    'freertos-exception-2.0',
+    'GCC-exception-2.0',
+    'GCC-exception-3.1',
+    'gnu-javamail-exception',
+    'GPL-CC-1.0',
+    'i2p-gpl-java-exception',
+    'Libtool-exception',
+    'Linux-syscall-note',
+    'LLVM-exception',
+    'LZMA-exception',
+    'mif-exception',
+    'Nokia-Qt-exception',
+    'Nokia-Qt-exception-1.1',
+    'OCaml-LGPL-linking-exception',
+    'OCCT-exception',
+    'OCCT-exception-1.0',
+    'OpenJDK-assembly-exception',
+    'OpenJDK-assembly-exception-1.0',
+    'openvpn-openssl-exception',
+    'PS-or-PDF-font-exception-20170817',
+    'Qt-GPL-exception',
+    'Qt-GPL-exception-1.0',
+    'Qt-LGPL-exception',
+    'Qt-LGPL-exception-1.1',
+    'Qwt-exception-1.0',
+    'Swift-exception',
+    'u-boot-exception',
+    'u-boot-exception-2.0',
+    'Universal-FOSS-exception-1.0',
+    'WxWindows-exception',
+    'WxWindows-exception-3.1',
+]
diff --git a/configs/ALT/scoring.toml b/configs/ALT/scoring.toml
new file mode 100644
index 0000000..e82c34e
--- /dev/null
+++ b/configs/ALT/scoring.toml
@@ -0,0 +1,33 @@
+[Scoring]
+arch-dependent-file-in-usr-share = 590
+arch-independent-package-contains-binary-or-object = 499
+binary-in-etc = 900
+devel-file-in-non-devel-package = 50
+dir-or-file-in-var-lock = 10000
+dir-or-file-in-var-run = 10000
+env-script-interpreter = 9
+executable-docs = 900
+file-contains-buildroot = 10000
+files-duplicated-waste = 100
+hardlink-across-config-files = 10000
+hardlink-across-partition = 10000
+info-dir-file = 10000
+invalid-license = 100000
+invalid-pkgconfig-file = 10000
+libtool-wrapper-in-package = 10000
+lto-bytecode = 10000
+lto-no-text-in-archive = 10000
+makefile-junk = 109
+no-pkg-config-provides = 300
+non-ghost-in-run = 10000
+non-position-independent-executable = 10000
+percent-in-conflicts = 10000
+percent-in-dependency = 10000
+percent-in-obsoletes = 10000
+percent-in-provides = 10000
+spurious-executable-perm = 50
+summary-ended-with-dot = 20
+summary-not-capitalized = 20
+summary-too-long = 200
+pam-unauthorized-module = 10000
+wrong-script-interpreter = 490
diff --git a/configs/ALT/users-groups.toml b/configs/ALT/users-groups.toml
new file mode 100644
index 0000000..1568535
--- /dev/null
+++ b/configs/ALT/users-groups.toml
@@ -0,0 +1,96 @@
+# based setup package
+
+StandardGroups = [
+    'root',
+    'bin',
+    'daemon',
+    'sys',
+    'adm',
+    'tty',
+    'disk',
+    'lp',
+    'mem',
+    'kmem',
+    'wheel',
+    'firewall',
+    'mail',
+    'news',
+    'uucp',
+    'man',
+    'rpm',
+    'console',
+    'wnn',
+    'proc',
+    'games',
+    'slocate',
+    'cdrom',
+    'squid',
+    'chkpwd',
+    'named',
+    'shadow',
+    'auth',
+    'nscd',
+    'rpcuser',
+    'gopher',
+    'netwatch',
+    'rpc',
+    'rpminst',
+    'asterisk',
+    'kqemu',
+    'vmusers',
+    'dip',
+    'mailman',
+    'postfix',
+    'popa3d',
+    'xfs',
+    'mysql',
+    'postgres',
+    'gdm',
+    'postman',
+    'ftp:x',
+    'ftpadmin',
+    'cvs',
+    'cvsadmin',
+    'postdrop',
+    'ldap',
+    'loop',
+    'floppy',
+    'utmp',
+    'exim',
+    'cdwriter',
+    'audio',
+    'x10',
+    'radio',
+    'apache',
+    'nobody',
+    'users',
+]
+
+StandardUsers = [
+    'root',
+    'bin',
+    'daemon',
+    'adm',
+    'lp',
+    'mail',
+    'news',
+    'uucp',
+    'games',
+    'ftp',
+    'squid',
+    'named',
+    'nscd',
+    'rpcuser',
+    'rpc',
+    'mailman',
+    'postfix',
+    'popa3d',
+    'xfs',
+    'mysql',
+    'postgres',
+    'gdm',
+    'ldap',
+    'exim',
+    'apache',
+    'nobody',
+]
diff --git a/rpmlint/pkg.py b/rpmlint/pkg.py
index 3352885..9f063e2 100644
--- a/rpmlint/pkg.py
+++ b/rpmlint/pkg.py
@@ -16,12 +16,9 @@ from urllib.parse import urljoin
 
 try:
     import magic
-    # TODO: magic.MAGIC_COMPRESS when PkgFile gets decompress support.
-    _magic = magic.open(magic.MAGIC_NONE)
-    _ = _magic.descriptor  # magic >= 5.05 needed
-    _magic.load()
+    has_magic = True
 except ImportError:
-    _magic = None
+    has_magic = False
 import rpm
 from rpmlint.helpers import byte_to_string, ENGLISH_ENVIROMENT, print_warning
 from rpmlint.pkgfile import PkgFile
@@ -358,14 +355,9 @@ def parse_deps(line):
 
 
 def get_magic(path):
-    # file() method evaluates every file twice with python2,
-    # use descriptor() method instead
     try:
-        fd = os.open(path, os.O_RDONLY)
-        magic = byte_to_string(_magic.descriptor(fd))
-        os.close(fd)
-        return magic
-    except OSError:
+        return magic.detect_from_filename(path).name
+    except ValueError:
         return ''
 
 
@@ -590,7 +582,7 @@ class Pkg(AbstractPkg):
                     elif not pkgfile.size:
                         pkgfile.magic = 'empty'
                 if (not pkgfile.magic and
-                        not pkgfile.is_ghost and _magic):
+                        not pkgfile.is_ghost and has_magic):
                     pkgfile.magic = get_magic(pkgfile.path)
                 if pkgfile.magic is None or Pkg._magic_from_compressed_re.search(pkgfile.magic):
                     # Discard magic from inside compressed files ('file -z')
 
projeto & código: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
mantenedor atual: Michael Shigorin
mantenedor da tradução: Fernando Martini aka fmartini © 2009