aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Bernardo <samuelbernardo@tecnico.ulisboa.pt>2019-01-03 16:49:47 +0000
committerSamuel Bernardo <samuelbernardo.mail@gmail.com>2019-01-03 22:10:26 +0000
commit91c074a40b6a538d3ea8bc9986eda7c82d943046 (patch)
tree6a036a12dc13759b3b337acad3e65eabb813f27d
parentupdate rubymine (diff)
downloadssnb-91c074a40b6a538d3ea8bc9986eda7c82d943046.tar.gz
ssnb-91c074a40b6a538d3ea8bc9986eda7c82d943046.tar.bz2
ssnb-91c074a40b6a538d3ea8bc9986eda7c82d943046.zip
add rpmlint ebuild
Signed-off-by: Samuel Bernardo <samuelbernardo.mail@gmail.com>
-rw-r--r--dev-util/rpmlint/Manifest4
-rw-r--r--dev-util/rpmlint/files/fedora.config419
l---------dev-util/rpmlint/rpmlint-1.10.ebuild1
l---------dev-util/rpmlint/rpmlint-1.5.ebuild1
-rw-r--r--dev-util/rpmlint/rpmlint-9999.ebuild43
5 files changed, 468 insertions, 0 deletions
diff --git a/dev-util/rpmlint/Manifest b/dev-util/rpmlint/Manifest
new file mode 100644
index 0000000..941d284
--- /dev/null
+++ b/dev-util/rpmlint/Manifest
@@ -0,0 +1,4 @@
+AUX fedora.config 9778 BLAKE2B 18ec007c92cea5ee444f18f15e94ac5e8d682cd4d475a97a7f362a16665b85bd5a5a94cdaf0b77b4f309f0dbf36e3d9cc80adae3619bc8aa30b63894facf4c00 SHA512 999d646d8df3fc4ebbcd67017673408b1d35ce7807054b0f4f025415d8611ca26a87cb4b41b011f1e6f0ac2916aca69d90f3f754065453d61f23ef1a1e281bfa
+EBUILD rpmlint-1.10.ebuild 1010 BLAKE2B 4fe53a0e355d1cd0cf96d4e396e0bc8c54ed5fe11124747d4cd759a6d8fe970c42f5fc0fbd6053d499041e67eba9f2696d77aeeb616bc5d583d1fbc84f033e9d SHA512 e4c0c8b2c60abd4aa629043e7b906347d778a0ed7e4e9557e3a854b25397b55ea669245f0cea212eb4808e3bee6841240196b9a35664f50c9edc205ba0440989
+EBUILD rpmlint-1.5.ebuild 1010 BLAKE2B 4fe53a0e355d1cd0cf96d4e396e0bc8c54ed5fe11124747d4cd759a6d8fe970c42f5fc0fbd6053d499041e67eba9f2696d77aeeb616bc5d583d1fbc84f033e9d SHA512 e4c0c8b2c60abd4aa629043e7b906347d778a0ed7e4e9557e3a854b25397b55ea669245f0cea212eb4808e3bee6841240196b9a35664f50c9edc205ba0440989
+EBUILD rpmlint-9999.ebuild 1010 BLAKE2B 4fe53a0e355d1cd0cf96d4e396e0bc8c54ed5fe11124747d4cd759a6d8fe970c42f5fc0fbd6053d499041e67eba9f2696d77aeeb616bc5d583d1fbc84f033e9d SHA512 e4c0c8b2c60abd4aa629043e7b906347d778a0ed7e4e9557e3a854b25397b55ea669245f0cea212eb4808e3bee6841240196b9a35664f50c9edc205ba0440989
diff --git a/dev-util/rpmlint/files/fedora.config b/dev-util/rpmlint/files/fedora.config
new file mode 100644
index 0000000..cf6c52b
--- /dev/null
+++ b/dev-util/rpmlint/files/fedora.config
@@ -0,0 +1,419 @@
+# -*- python -*-
+
+# System wide rpmlint default configuration. Do not modify, override/add
+# options in /etc/rpmlint/config and/or ~/.rpmlintrc as needed.
+
+import os.path
+import re
+import sys
+
+from Config import *
+import Pkg
+
+
+setOption("CompressExtension", "gz")
+setOption("DefaultPythonVersion", sys.version[:3])
+setOption("KernelModuleRPMsOK", False)
+setOption("MaxLineLength", 80)
+setOption("NetworkEnabled", True)
+setOption("ReleaseExtension", '\.(fc|rhe?l|el)\d+(?=\.|$)')
+setOption("UseDefaultRunlevels", False)
+setOption("UseEpoch", False)
+setOption("UseUTF8", True)
+setOption("UseVersionInChangeLog", True)
+setOption("ValidSrcPerms", (int("664",8), int("644",8), ))
+
+setOption("ValidShells", (
+ "<lua>",
+ "/bin/sh",
+ "/bin/bash",
+ "/sbin/ldconfig",
+ "/usr/bin/perl",
+ "/usr/bin/python",
+))
+
+setOption("DanglingSymlinkExceptions", (
+ ['consolehelper$', 'usermode'],
+ ['consolehelper-gtk$', 'usermode-gtk'],
+))
+
+setOption("ValidLicenses", (
+ # These are the short names for all of the Fedora approved licenses.
+ # The master list is kept here: http://fedoraproject.org/wiki/Licensing
+ # Last synced with revision "2.20, 9 February 2014" of that page.
+ 'AAL',
+ 'Abstyles',
+ 'Adobe',
+ 'ADSL',
+ 'AFL',
+ 'Afmparse',
+ 'AGPLv1',
+ 'AGPLv3',
+ 'AGPLv3+',
+ 'AGPLv3 with exceptions',
+ 'AMDPLPA',
+ 'AML',
+ 'AMPAS BSD',
+ 'APAFML',
+ 'APSL 2.0',
+ 'APSL 2.0+',
+ 'ARL',
+ 'Artistic 2.0',
+ 'Artistic clarified',
+ 'ASL 1.0',
+ 'ASL 1.0+',
+ 'ASL 1.1',
+ 'ASL 1.1+',
+ 'ASL 2.0',
+ 'ASL 2.0+',
+ 'Bahyph',
+ 'Barr',
+ 'Beerware',
+ 'BeOpen',
+ 'Bibtex',
+ 'BitTorrent',
+ 'Boost',
+ 'Borceux',
+ 'BSD',
+ 'BSD Protection',
+ 'BSD with advertising',
+ 'BSD with attribution',
+ 'CATOSL',
+ 'CC0',
+ 'CeCILL',
+ 'CeCILL-B',
+ 'CeCILL-C',
+ 'CDDL',
+ 'CNRI',
+ 'Condor',
+ 'Copyright only',
+ 'CPAL',
+ 'CPL',
+ 'Crossword',
+ 'Crystal Stacker',
+ 'Cube',
+ 'diffmark',
+ 'DMIT',
+ 'DOC',
+ 'Dotseqn',
+ 'DSDP',
+ 'dvipdfm',
+ 'ECL 1.0',
+ 'ECL 2.0',
+ 'eCos',
+ 'EFL 2.0',
+ 'EFL 2.0+',
+ 'eGenix',
+ 'Entessa',
+ 'EPL',
+ 'ERPL',
+ 'EU Datagrid',
+ 'EUPL 1.1',
+ 'Eurosym',
+ 'Fair',
+ 'FSFUL',
+ 'FSFULLR',
+ 'FTL',
+ 'Giftware',
+ 'GL2PS',
+ 'Glide',
+ 'Glulxe',
+ 'gnuplot',
+ 'GPL+',
+ 'GPL+ or Artistic',
+ 'GPL+ with exceptions',
+ 'GPLv1',
+ 'GPLv2 or Artistic',
+ 'GPLv2+ or Artistic',
+ 'GPLv2',
+ 'GPLv2 with exceptions',
+ 'GPLv2+',
+ 'GPLv2+ with exceptions',
+ 'GPLv3',
+ 'GPLv3 with exceptions',
+ 'GPLv3+',
+ 'GPLv3+ with exceptions',
+ 'HaskellReport',
+ 'IBM',
+ 'IJG',
+ 'ImageMagick',
+ 'iMatix',
+ 'Imlib2',
+ 'Intel ACPI',
+ 'Interbase',
+ 'ISC',
+ 'Jabber',
+ 'JasPer',
+ 'JPython',
+ 'Julius',
+ 'Knuth',
+ 'Latex2e',
+ 'LBNL BSD',
+ 'Leptonica',
+ 'LGPLv2',
+ 'LGPLv2 with exceptions',
+ 'LGPLv2+',
+ 'LGPLv2+ or Artistic',
+ 'LGPLv2+ with exceptions',
+ 'LGPLv3',
+ 'LGPLv3 with exceptions',
+ 'LGPLv3+',
+ 'LGPLv3+ with exceptions',
+ 'Lhcyr',
+ 'libtiff',
+ 'LLGPL',
+ 'Logica',
+ 'LOSLA',
+ 'LPL',
+ 'LPPL',
+ 'MakeIndex',
+ 'mecab-ipadic',
+ 'midnight',
+ 'MirOS',
+ 'MIT',
+ 'MITNFA',
+ 'MIT with advertising',
+ 'mod_macro',
+ 'Motosoto',
+ 'MPLv1.0',
+ 'MPLv1.0+',
+ 'MPLv1.1',
+ 'MPLv1.1+',
+ 'MPLv2.0',
+ 'MS-PL',
+ 'MS-RL',
+ 'MTLL',
+ 'Mup',
+ 'Naumen',
+ 'NCSA',
+ 'NetCDF',
+ 'Netscape',
+ 'Newmat',
+ 'Newsletr',
+ 'NGPL',
+ 'NLPL',
+ 'Nmap',
+ 'Nokia',
+ 'NOSL',
+ 'Noweb',
+ 'OML',
+ 'OpenLDAP',
+ 'OpenPBS',
+ 'OpenSSL',
+ 'OReilly',
+ 'OSL 1.0',
+ 'OSL 1.0+',
+ 'OSL 1.1',
+ 'OSL 1.1+',
+ 'OSL 2.0',
+ 'OSL 2.0+',
+ 'OSL 2.1',
+ 'OSL 2.1+',
+ 'OSL 3.0',
+ 'OSL 3.0+',
+ 'Par',
+ 'Phorum',
+ 'PHP',
+ 'PlainTeX',
+ 'Plexus',
+ 'PostgreSQL',
+ 'psfrag',
+ 'psutils',
+ 'Public Domain',
+ 'Python',
+ 'Qhull',
+ 'QPL',
+ 'Rdisc',
+ 'REX',
+ 'RiceBSD',
+ 'Romio',
+ 'RPSL',
+ 'Rsfs',
+ 'Ruby',
+ 'Saxpath',
+ 'SCEA',
+ 'SCRIP',
+ 'Sendmail',
+ 'Sleepycat',
+ 'SISSL',
+ 'SLIB',
+ 'SNIA',
+ 'softSurfer',
+ 'SPL',
+ 'STMPL',
+ 'SWL',
+ 'TCL',
+ 'Teeworlds',
+ 'Threeparttable',
+ 'TMate',
+ 'Tolua',
+ 'TORQUEv1.1',
+ 'TOSL',
+ 'TPDL',
+ 'TPL',
+ 'UCD',
+ 'Vim',
+ 'VNLSL',
+ 'VOSTROM',
+ 'VSL',
+ 'W3C',
+ 'Webmin',
+ 'Wsuipa',
+ 'WTFPL',
+ 'wxWidgets',
+ 'Xerox',
+ 'xinetd',
+ 'xpp',
+ 'XSkat',
+ 'YPLv1.1',
+ 'Zed',
+ 'Zend',
+ 'zlib',
+ 'zlib with acknowledgement',
+ 'ZPLv1.0',
+ 'ZPLv1.0+',
+ 'ZPLv2.0',
+ 'ZPLv2.0+',
+ 'ZPLv2.1',
+ 'ZPLv2.1+',
+ # Documentation licenses
+ 'CDL',
+ 'FBSDDL',
+ 'GFDL',
+ 'IEEE',
+ 'LDPL',
+ 'OFSFDL',
+ 'Open Publication',
+ 'Public Use',
+ 'Verbatim',
+ # Content licenses
+ 'CC-BY',
+ 'CC-BY-ND',
+ 'CC-BY-SA',
+ 'DMTF',
+ 'DSL',
+ 'EFML',
+ 'Free Art',
+ 'GeoGratis',
+ 'Green OpenMusic',
+ 'OAL',
+ # Font licenses
+ 'AMS',
+ 'Arphic',
+ 'Baekmuk',
+ 'Bitstream Vera',
+ 'DoubleStroke',
+ 'Hershey',
+ 'IPA',
+ 'Liberation',
+ 'Lucida',
+ 'MgOpen',
+ 'mplus',
+ 'OFL',
+ 'PTFL',
+ 'STIX',
+ 'Utopia',
+ 'Wadalab',
+ 'XANO',
+ # Others
+ 'Redistributable, no modification permitted',
+ 'Freely redistributable without restriction',
+))
+
+setOption('SystemLibPaths', ('/lib', '/lib64', '/usr/lib', '/usr/lib64'))
+
+# Get standard users and groups from the setup package's uidgid file
+setOption('StandardUsers', [])
+setOption('StandardGroups', [])
+setup_pkg = None
+try:
+ setup_pkg = Pkg.InstalledPkg('setup')
+except:
+ pass
+if setup_pkg:
+ users = set()
+ groups = set()
+ uidgid_regex = re.compile(r'^\s*(\S+)\s+(-|\d+)\s+(-|\d+|\(\d+\))\s')
+ for uidgid_file in [x for x in setup_pkg.files() if x.endswith('/uidgid')]:
+ if os.path.exists(uidgid_file):
+ fobj = open(uidgid_file)
+ try:
+ for line in fobj.read().strip().splitlines():
+ res = uidgid_regex.search(line)
+ if res:
+ name = res.group(1)
+ if res.group(2) != '-':
+ users.add(name)
+ if res.group(3) != '-' and not '(' in res.group(3):
+ groups.add(name)
+ del res
+ del line
+ finally:
+ fobj.close()
+ del fobj
+ setOption('StandardUsers', sorted(users))
+ setOption('StandardGroups', sorted(groups))
+ del uidgid_regex, uidgid_file, users, groups
+del setup_pkg
+
+# Output filters
+addFilter("source-or-patch-not-compressed")
+addFilter("%mklibname")
+addFilter("no-dependency-on (perl|python)-base")
+addFilter("no-dependency-on locales-")
+addFilter("(python|perl5)-naming-policy-not-applied")
+addFilter("no-(packager-tag|signature)")
+addFilter("incoherent-version-in-name")
+addFilter("invalid-build-requires")
+addFilter("ghost-files-without-postin")
+addFilter("postin-without-ghost-file-creation")
+addFilter("no-major-in-name")
+addFilter("no-provides")
+addFilter("executable-in-library-package")
+addFilter("non-versioned-file-in-library-package")
+addFilter("requires-on-release")
+addFilter("jar-not-indexed")
+addFilter("outside-libdir-files")
+addFilter("-debuginfo.* no-documentation")
+addFilter("-debuginfo.* /usr/lib/debug/")
+addFilter("non-standard-dir-in-usr libexec")
+addFilter("^gpg-pubkey:")
+addFilter(" doc-file-dependency .* /bin/sh$")
+addFilter("hardcoded-library-path .*/lib/udev(/|$)")
+addFilter("not-standard-release-extension")
+addFilter("explicit-lib-dependency (liberation-fonts|libertas-.*-firmware|libvirt$|.*-(java|python)$)")
+addFilter("filename-too-long-for-joliet")
+addFilter("symlink-should-be-")
+addFilter("dangling-\S*symlink /usr/share/doc/HTML/\S+/common .+/common$")
+addFilter("hidden-file-or-dir .*/man5/\.k5login\.5[^/]+$")
+addFilter("blender.+ (wrong-script-interpreter|non-executable-script) .+/blender/.+\.py.*BPY.*")
+# Fedora 12 and newer no longer need a buildroot defined, to have the buildroot cleaned at the beginning
+# of %install, and do not need to define a %clean section unless the default is invalid.
+addFilter("no-cleaning-of-buildroot")
+addFilter("no-buildroot-tag")
+addFilter("no-%clean-section")
+# Only EL4 needs the files-attr-not-set check, because rpm 4.4 and newer no longer need a %defattr line
+# (it automatically provides one).
+addFilter("files-attr-not-set")
+# Don't bother with the non-ghost-in-var-(lock|run) checks on Fedora 15 or newer
+# since they have tmpfs /var/lock and /var/run.
+addFilter("non-ghost-in-var-lock")
+addFilter("non-ghost-in-var-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.
+addFilter("script-without-shebang .*\.desktop$")
+# Some files in /etc/ are not meant to be modified by the sysadmin
+addFilter("non-conffile-in-etc /etc/rpm/.*$")
+addFilter("non-conffile-in-etc /etc/rc.d/init.d/.*$")
+# Fixed in rpm >= 4.7.1
+addFilter("broken-syntax-in-scriptlet-requires")
+
+# https://bugzilla.redhat.com/496737, https://bugzilla.redhat.com/646455
+for pkg, exe in (("coreutils", "/bin/su"),
+ ("krb5-workstation", "/usr/kerberos/bin/ksu"),
+ ("passwd", "/usr/bin/passwd"),
+ ("sudo", "/usr/bin/sudo(edit)?"),
+ ("upstart", "/sbin/initctl"),
+ ("usermode", "/usr/sbin/userhelper")):
+ addFilter("%s.* (setuid-binary|non-standard-executable-perm) %s (root )?04"
+ % (pkg, exe))
diff --git a/dev-util/rpmlint/rpmlint-1.10.ebuild b/dev-util/rpmlint/rpmlint-1.10.ebuild
new file mode 120000
index 0000000..dc1570b
--- /dev/null
+++ b/dev-util/rpmlint/rpmlint-1.10.ebuild
@@ -0,0 +1 @@
+rpmlint-9999.ebuild \ No newline at end of file
diff --git a/dev-util/rpmlint/rpmlint-1.5.ebuild b/dev-util/rpmlint/rpmlint-1.5.ebuild
new file mode 120000
index 0000000..dc1570b
--- /dev/null
+++ b/dev-util/rpmlint/rpmlint-1.5.ebuild
@@ -0,0 +1 @@
+rpmlint-9999.ebuild \ No newline at end of file
diff --git a/dev-util/rpmlint/rpmlint-9999.ebuild b/dev-util/rpmlint/rpmlint-9999.ebuild
new file mode 100644
index 0000000..cad98b1
--- /dev/null
+++ b/dev-util/rpmlint/rpmlint-9999.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2019 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+
+inherit python-single-r1 git-r3
+#inherit python-single-r1
+#[ "${PV}" = 9999 ] && inherit git-r3
+
+DESCRIPTION="Tool for checking common errors in RPM packages"
+HOMEPAGE="http://rpmlint.zarb.org/"
+if [ "${PV}" = 9999 ]; then
+ EGIT_REPO_URI="git://git.code.sf.net/p/rpmlint/code"
+else
+ #[ "${PV}" = 9999 ] || SRC_URI="mirror://sourceforge/rpmlint/${P}.tar.xz"
+ EGIT_REPO_URI="https://github.com/rpm-software-management/rpmlint.git"
+ EGIT_COMMIT="${P}"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+[ "${PV}" = 9999 ] || KEYWORDS="~amd64 ~x86"
+
+COMMON_DEPEND="
+ ${PYTHON_DEPS}
+ app-arch/rpm[python]
+"
+DEPEND="
+ ${COMMON_DEPEND}
+"
+RDEPEND="
+ ${COMMON_DEPEND}
+ || ( dev-python/python-magic[${PYTHON_USEDEP}] sys-apps/file[${PYTHON_USEDEP}] )
+ dev-python/pyenchant[${PYTHON_USEDEP}]
+"
+
+src_install() {
+ default
+
+ insinto /usr/share/rmplint/config
+ newins ${FILESDIR}/fedora.config config
+}