diff options
author | Samuel Bernardo <samuelbernardo@tecnico.ulisboa.pt> | 2019-01-03 16:49:47 +0000 |
---|---|---|
committer | Samuel Bernardo <samuelbernardo.mail@gmail.com> | 2019-01-03 22:10:26 +0000 |
commit | 91c074a40b6a538d3ea8bc9986eda7c82d943046 (patch) | |
tree | 6a036a12dc13759b3b337acad3e65eabb813f27d | |
parent | update rubymine (diff) | |
download | ssnb-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/Manifest | 4 | ||||
-rw-r--r-- | dev-util/rpmlint/files/fedora.config | 419 | ||||
l--------- | dev-util/rpmlint/rpmlint-1.10.ebuild | 1 | ||||
l--------- | dev-util/rpmlint/rpmlint-1.5.ebuild | 1 | ||||
-rw-r--r-- | dev-util/rpmlint/rpmlint-9999.ebuild | 43 |
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 +} |