summaryrefslogtreecommitdiff
path: root/metadata/repoman
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /metadata/repoman
reinit the tree, so we can have metadata
Diffstat (limited to 'metadata/repoman')
-rw-r--r--metadata/repoman/linechecks.yaml277
-rw-r--r--metadata/repoman/qa_data.yaml287
-rw-r--r--metadata/repoman/repository.yaml76
3 files changed, 640 insertions, 0 deletions
diff --git a/metadata/repoman/linechecks.yaml b/metadata/repoman/linechecks.yaml
new file mode 100644
index 000000000000..4f3e6468a5c9
--- /dev/null
+++ b/metadata/repoman/linechecks.yaml
@@ -0,0 +1,277 @@
+---
+# linecheck.yaml
+
+# configuration file for the LineCheck plugins run via the multicheck
+# scan module
+# no random drive-by commits please
+# Please obtain authorization from the portage team
+#
+# Overlay maintainers override/add/negate checks at your discression
+# but support for third party module will be limited to the plugin API
+#
+
+# Repoman API version (do not edit)
+version: 1
+# minimum
+repoman_version: 2.3.3
+
+errors:
+ COPYRIGHT_ERROR: 'Invalid Gentoo Copyright on line: %d'
+ LICENSE_ERROR: 'Invalid Gentoo/GPL License on line: %d'
+ ID_HEADER_ERROR: 'Stale CVS header on line: %d'
+ NO_BLANK_LINE_ERROR: 'Non-blank line after header on line: %d'
+ LEADING_SPACES_ERROR: 'Ebuild contains leading spaces on line: %d'
+ TRAILING_WHITESPACE_ERROR: 'Trailing whitespace error on line: %d'
+ READONLY_ASSIGNMENT_ERROR: 'Ebuild contains assignment to read-only variable on line: %d'
+ MISSING_QUOTES_ERROR: 'Unquoted Variable on line: %d'
+ NESTED_DIE_ERROR: 'Ebuild calls die in a subshell on line: %d'
+ PATCHES_ERROR: 'PATCHES is not a bash array on line: %d'
+ REDUNDANT_CD_S_ERROR: 'Ebuild has redundant cd ${S} statement on line: %d'
+ EMAKE_PARALLEL_DISABLED: 'Upstream parallel compilation bug (ebuild calls emake -j1 on line: %d)'
+ EMAKE_PARALLEL_DISABLED_VIA_MAKEOPTS: 'Upstream parallel compilation bug (MAKEOPTS=-j1 on line: %d)'
+ DEPRECATED_BINDNOW_FLAGS: 'Deprecated bindnow-flags call on line: %d'
+ EAPI_DEFINED_AFTER_INHERIT: 'EAPI defined after inherit on line: %d'
+ NO_AS_NEEDED: 'Upstream asneeded linking bug (no-as-needed on line: %d)'
+ PRESERVE_OLD_LIB: 'Ebuild calls deprecated preserve_old_lib on line: %d'
+ BUILT_WITH_USE: 'built_with_use on line: %d'
+ NO_OFFSET_WITH_HELPERS: 'Helper function is used with D, ROOT, ED, EROOT or EPREFIX on line: %d'
+ SANDBOX_ADDPREDICT: 'Ebuild calls addpredict on line: %d'
+ USEQ_ERROR: 'Ebuild calls deprecated useq function on line: %d'
+ HASQ_ERROR: 'Ebuild calls deprecated hasq function on line: %d'
+ URI_HTTPS: 'Ebuild uses http:// but should use https:// on line: %d'
+
+eclass_export_functions:
+ - ant-tasks
+ - apache-2
+ - apache-module
+ - aspell-dict
+ - autotools-utils
+ - base
+ - bsdmk
+ - cannadic
+ - clutter
+ - cmake-utils
+ - db
+ - distutils
+ - elisp
+ - embassy
+ - emboss
+ - emul-linux-x86
+ - enlightenment
+ - font-ebdftopcf
+ - font
+ - fox
+ - freebsd
+ - freedict
+ - games
+ - games-ggz
+ - games-mods
+ - gdesklets
+ - gems
+ - gkrellm-plugin
+ - gnatbuild
+ - gnat
+ - gnome2
+ - gnome-python-common
+ - gnustep-base
+ - go-mono
+ - gpe
+ - gst-plugins-bad
+ - gst-plugins-base
+ - gst-plugins-good
+ - gst-plugins-ugly
+ - gtk-sharp-module
+ - haskell-cabal
+ - horde
+ - java-ant-2
+ - java-pkg-2
+ - java-pkg-simple
+ - java-virtuals-2
+ - kde4-base
+ - kde4-meta
+ - kernel-2
+ - latex-package
+ - linux-mod
+ - mozlinguas
+ - myspell
+ - myspell-r2
+ - mysql
+ - mysql-v2
+ - mythtv-plugins
+ - oasis
+ - obs-service
+ - office-ext
+ - perl-app
+ - perl-module
+ - php-ext-base-r1
+ - php-ext-pecl-r2
+ - php-ext-source-r2
+ - php-lib-r1
+ - php-pear-lib-r1
+ - php-pear-r1
+ - python-distutils-ng
+ - python
+ - qt4-build
+ - qt4-r2
+ - rox-0install
+ - rox
+ - ruby
+ - ruby-ng
+ - scsh
+ - selinux-policy-2
+ - sgml-catalog
+ - stardict
+ - sword-module
+ - tetex-3
+ - tetex
+ - texlive-module
+ - toolchain-binutils
+ - toolchain
+ - twisted
+ - vdr-plugin-2
+ - vdr-plugin
+ - vim
+ - vim-plugin
+ - vim-spell
+ - virtuoso
+ - vmware
+ - vmware-mod
+ - waf-utils
+ - webapp
+ - xemacs-elisp
+ - xemacs-packages
+ - xfconf
+ - x-modular
+ - xorg-2
+ - zproduct
+
+eclass_info_experimental_inherit:
+ autotools:
+ funcs:
+ - eaclocal
+ - eautoconf
+ - eautoheader
+ - eautomake
+ - eautoreconf
+ - _elibtoolize
+ - eautopoint
+ comprehensive: true
+ # Exempt eclasses:
+ # git - An EGIT_BOOTSTRAP variable may be used to call one of
+ # the autotools functions.
+ # subversion - An ESVN_BOOTSTRAP variable may be used to call one of
+ # the autotools functions.
+ exempt_eclasses:
+ - git
+ - git-2
+ - subversion
+ - autotools-utils
+ eutils:
+ funcs:
+ - estack_push
+ - estack_pop
+ - eshopts_push
+ - eshopts_pop
+ - eumask_push
+ - eumask_pop
+ - epatch
+ - epatch_user
+ - emktemp
+ - edos2unix
+ - in_iuse
+ - use_if_iuse
+ - usex
+ comprehensive: false
+ flag-o-matic:
+ funcs:
+ - 'filter-(ld)?flags'
+ - 'strip-flags'
+ - 'strip-unsupported-flags'
+ - 'append-((ld|c(pp|xx)?))?flags'
+ - 'append-libs'
+ comprehensive: false
+ libtool:
+ funcs:
+ - elibtoolize
+ comprehensive: true
+ exempt_eclasses:
+ - autotools
+ multilib:
+ funcs:
+ - get_libdir
+ # These are "eclasses are the whole ebuild" type thing.
+ exempt_eclasses:
+ - autotools
+ - libtool
+ - multilib-minimal
+ comprehensive: false
+ multiprocessing:
+ funcs:
+ - makeopts_jobs
+ comprehensive: false
+ prefix:
+ funcs:
+ - eprefixify
+ comprehensive: true
+ toolchain-funcs:
+ funcs:
+ - gen_usr_ldscript
+ comprehensive: false
+ user:
+ funcs:
+ - enewuser
+ - enewgroup
+ - egetent
+ - egethome
+ - egetshell
+ - esethome
+ comprehensive: true
+
+# non experimental_inherit
+eclass_info:
+ autotools:
+ funcs:
+ - eaclocal
+ - eautoconf
+ - eautoheader
+ - eautomake
+ - eautoreconf
+ - _elibtoolize
+ - eautopoint
+ comprehensive: true
+ ignore_missing: true
+ # Exempt eclasses:
+ # git - An EGIT_BOOTSTRAP variable may be used to call one of
+ # the autotools functions.
+ # subversion - An ESVN_BOOTSTRAP variable may be used to call one of
+ # the autotools functions.
+ exempt_eclasses:
+ - git
+ - git-2
+ - subversion
+ - autotools-utils
+ prefix:
+ funcs:
+ - eprefixify
+ comprehensive: true
+
+usex_supported_eapis:
+ - "0"
+ - "1"
+ - "2"
+ - "3"
+ - "4"
+ - "4-python"
+ - "4-slot-abi"
+
+in_iuse_supported_eapis:
+ - "0"
+ - "1"
+ - "2"
+ - "3"
+ - "4"
+ - "4-python"
+ - "4-slot-abi"
+ - "5"
+ - "5-hdepend"
+ - "5-progress"
diff --git a/metadata/repoman/qa_data.yaml b/metadata/repoman/qa_data.yaml
new file mode 100644
index 000000000000..c39aec9dda49
--- /dev/null
+++ b/metadata/repoman/qa_data.yaml
@@ -0,0 +1,287 @@
+---
+# This yaml syntax file holds various configuration data for
+# the Quality-Assurance checks performed.
+
+# no random drive-by commits please
+# Please obtain authorization from the portage team
+#
+# Overlay maintainers override/add/negate checks at your discression
+# but support for third party module will be limited to the plugin API
+#
+
+# Repoman API version (do not edit)
+version: 1
+# minimum
+repoman_version: 2.3.3
+
+
+allowed_filename_chars: "a-zA-Z0-9._-+:"
+max_description_length: 80
+
+# missingvars check: Mandatory (non-defaulted) ebuild variables
+# list
+missingvars:
+ - KEYWORDS
+ - LICENSE
+ - DESCRIPTION
+ - HOMEPAGE
+
+# file.executable check, non executable files
+# list
+no_exec_files:
+ - Manifest
+ - ChangeLog
+ - metadata.xml
+
+# qahelp: Primary QA help messages to describe the errors or warnings
+# Dictionary
+qahelp:
+ Entries:
+ IO_error: "Attempting to commit, and an IO error was encountered access the Entries file"
+ ebuild:
+ invalidname: "Ebuild files with a non-parseable or syntactically incorrect name (or using 2.1 versioning extensions)"
+ namenomatch: "Ebuild files that do not have the same name as their parent directory"
+ notadded: "Ebuilds that exist but have not been added to the vcs"
+ patches: "PATCHES variable should be a bash array to ensure white space safety"
+ changelog:
+ ebuildadded: "An ebuild was added but the ChangeLog was not modified"
+ missing: "Missing ChangeLog files"
+ notadded: "ChangeLogs that exist but have not been added to cvs"
+ dependency:
+ bad: "User-visible ebuilds with unsatisfied dependencies (matched against *visible* ebuilds)"
+ badmasked: "Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds)"
+ badindev: "User-visible ebuilds with unsatisfied dependencies (matched against *visible* ebuilds) in developing arch"
+ badmaskedindev: Masked ebuilds with unsatisfied dependencies (matched against *all* ebuilds) in developing arch"
+ badtilde: "Uses the ~ dep operator with a non-zero revision part, which is useless (the revision is ignored)"
+ missingslot: "RDEPEND matches more than one SLOT but does not specify a slot and/or use the := or :* slot operator"
+ perlcore: "This ebuild directly depends on a package in perl-core; it should use the corresponding virtual instead."
+ syntax: "Syntax error in dependency string (usually an extra/missing space/parenthesis)"
+ unknown: "Ebuild has a dependency that refers to an unknown package (which may be valid if it is a blocker for a renamed/removed package, or is an alternative choice provided by an overlay)"
+ badslotop: "RDEPEND contains ':=' slot operator under '||' dependency."
+ DESCRIPTION:
+ missing: "Ebuilds that have a missing or empty DESCRIPTION variable"
+ toolong: "DESCRIPTION is over %d characters"
+ digest:
+ assumed: "Existing digest must be assumed correct (Package level only)"
+ missing: "Some files listed in SRC_URI aren't referenced in the Manifest"
+ unused: "Some files listed in the Manifest aren't referenced in SRC_URI"
+ EAPI:
+ definition: "EAPI definition does not conform to PMS section 7.3.1 (first non-comment, non-blank line)"
+ deprecated: "Ebuilds that use features that are deprecated in the current EAPI"
+ incompatible: "Ebuilds that use features that are only available with a different EAPI"
+ unsupported: "Ebuilds that have an unsupported EAPI version (you must upgrade portage)"
+ ebuild:
+ absdosym: "This ebuild uses absolute target to dosym where relative symlink could be used instead"
+ badheader: "This ebuild has a malformed header"
+ majorsyn: "This ebuild has a major syntax error that may cause the ebuild to fail partially or fully"
+ minorsyn: "This ebuild has a minor syntax error that contravenes gentoo coding style"
+ nesteddie: "Placing 'die' inside ( ) prints an error, but doesn't stop the ebuild."
+ output: "A simple sourcing of the ebuild produces output; this breaks ebuild policy."
+ syntax: "Error generating cache entry for ebuild; typically caused by ebuild syntax error or digest verification failure"
+ file:
+ executable: "Ebuilds, digests, metadata.xml, Manifest, and ChangeLog do not need the executable bit"
+ size: "Files in the files directory must be under 20 KiB"
+ size-fatal: "Files in the files directory must be under 60 KiB"
+ empty: "Empty file in the files directory"
+ name: "File/dir name must be composed of only the following chars: %s "
+ UTF8: "File is not UTF8 compliant"
+ HOMEPAGE:
+ missing: "Ebuilds that have a missing or empty HOMEPAGE variable"
+ virtual: "Virtuals that have a non-empty HOMEPAGE variable"
+ missingurischeme: "HOMEPAGE is missing an URI scheme"
+ inherit:
+ deprecated: "Ebuild inherits a deprecated eclass"
+ missing: "Ebuild uses functions from an eclass but does not inherit it"
+ unused: "Ebuild inherits an eclass but does not use it"
+ IUSE:
+ invalid: "This ebuild has a variable in IUSE that is not in the use.desc or its metadata.xml file"
+ missing: "This ebuild has a USE conditional which references a flag that is not listed in IUSE"
+ rubydeprecated: "The ebuild has set a ruby interpreter in USE_RUBY, that is not available as a ruby target anymore"
+ java:
+ eclassesnotused: "With virtual/jdk in DEPEND you must inherit a java eclass"
+ KEYWORDS:
+ dropped: "Ebuilds that appear to have dropped KEYWORDS for some arch"
+ invalid: "This ebuild contains KEYWORDS that are not listed in profiles/arch.list or for which no valid profile was found"
+ missing: "Ebuilds that have a missing or empty KEYWORDS variable"
+ stable: "Ebuilds that have been added directly with stable KEYWORDS"
+ stupid: "Ebuilds that use KEYWORDS=-* instead of package.mask"
+ LICENSE:
+ deprecated: "This ebuild is listing a deprecated license."
+ invalid: "This ebuild is listing a license that doesnt exist in portages license/ dir."
+ missing: "Ebuilds that have a missing or empty LICENSE variable"
+ syntax: "Syntax error in LICENSE (usually an extra/missing space/parenthesis)"
+ virtual: "Virtuals that have a non-empty LICENSE variable"
+ LIVEVCS:
+ stable: "This ebuild is a live checkout from a VCS but has stable keywords."
+ unmasked: "This ebuild is a live checkout from a VCS but has keywords and is not masked in the global package.mask."
+ manifest:
+ bad: "Manifest has missing or incorrect digests"
+ metadata:
+ bad: "Bad metadata.xml files"
+ missing: "Missing metadata.xml files"
+ warning: "Warnings in metadata.xml files"
+ PDEPEND:
+ suspect: "PDEPEND contains a package that usually only belongs in DEPEND."
+ portage:
+ internal: "The ebuild uses an internal Portage function or variable"
+ PROVIDE:
+ syntax: "Syntax error in PROVIDE (usually an extra/missing space/parenthesis)"
+ PROPERTIES:
+ syntax: "Syntax error in PROPERTIES (usually an extra/missing space/parenthesis)"
+ RDEPEND:
+ implicit: "RDEPEND is unset in the ebuild which triggers implicit RDEPEND=$DEPEND assignment (prior to EAPI 4)"
+ suspect: "RDEPEND contains a package that usually only belongs in DEPEND."
+ repo:
+ eapi-banned: "The ebuild uses an EAPI which is banned by the repository's metadata/layout.conf settings"
+ eapi-deprecated: "The ebuild uses an EAPI which is deprecated by the repository's metadata/layout.conf settings"
+ RESTRICT:
+ invalid: "This ebuild contains invalid RESTRICT values."
+ syntax: "Syntax error in RESTRICT (usually an extra/missing space/parenthesis)"
+ REQUIRED_USE:
+ syntax: "Syntax error in REQUIRED_USE (usually an extra/missing space/parenthesis)"
+ SLOT:
+ invalid: "Ebuilds that have a missing or invalid SLOT variable value"
+ SRC_URI:
+ syntax: "Syntax error in SRC_URI (usually an extra/missing space/parenthesis)"
+ mirror: "A uri listed in profiles/thirdpartymirrors is found in SRC_URI"
+ upstream:
+ workaround: "The ebuild works around an upstream bug, an upstream bug should be filed and tracked in bugs.gentoo.org"
+ uri:
+ https: "URI uses http:// but should use https://"
+ usage:
+ obsolete: "The ebuild makes use of an obsolete construct"
+ variable:
+ invalidchar: "A variable contains an invalid character that is not part of the ASCII character set"
+ readonly: "Assigning a readonly variable"
+ usedwithhelpers: "Ebuild uses D, ROOT, ED, EROOT or EPREFIX with helpers"
+ oldstyle: "The ebuild PROVIDEs an old-style virtual (see GLEP 37)"
+ virtual:
+ suspect: "Ebuild contains a package that usually should be pulled via virtual/, not directly."
+ wxwidgets:
+ eclassnotused: "Ebuild DEPENDs on x11-libs/wxGTK without inheriting wxwidgets.eclass"
+
+# qawarnings: Non-fatal warnings,
+# all values in here MUST have a corresponding qahelp entry
+# list
+qawarnings:
+ - changelog.missing
+ - changelog.notadded
+ - dependency.unknown
+ - dependency.badmasked
+ - dependency.badindev
+ - dependency.badmaskedindev
+ - dependency.badtilde
+ - dependency.missingslot
+ - dependency.perlcore
+ - DESCRIPTION.toolong
+ - digest.assumed
+ - digest.unused
+ - EAPI.deprecated
+ - ebuild.notadded
+ - ebuild.nesteddie
+ - ebuild.absdosym
+ - ebuild.minorsyn
+ - ebuild.badheader
+ - ebuild.patches
+ - file.empty
+ - file.size
+ - HOMEPAGE.virtual
+ - inherit.unused
+ - inherit.deprecated
+ - IUSE.rubydeprecated
+ - java.eclassesnotused
+ - KEYWORDS.dropped
+ - KEYWORDS.stupid
+ - KEYWORDS.missing
+ - LICENSE.deprecated
+ - LICENSE.virtual
+ - metadata.warning
+ - PDEPEND.suspect
+ - portage.internal
+ - RDEPEND.implicit
+ - RDEPEND.suspect
+ - repo.eapi-deprecated
+ - RESTRICT.invalid
+ - usage.obsolete
+ - upstream.workaround
+ - uri.https
+ - virtual.suspect
+ - wxwidgets.eclassnotused
+
+# ruby_deprecated: Deprecated ruby targets
+# list
+ruby_deprecated:
+ - ruby_targets_ruby18
+ - ruby_targets_ruby19
+ - ruby_targets_ruby20
+
+# suspect_rdepend: Common build only Dependencies
+# not usually run time dependencies
+# list
+suspect_rdepend:
+ - app-arch/cabextract
+ - app-arch/rpm2targz
+ - app-doc/doxygen
+ - dev-lang/nasm
+ - dev-lang/swig
+ - dev-lang/yasm
+ - dev-perl/extutils-pkgconfig
+ - dev-qt/linguist-tools
+ - dev-util/byacc
+ - dev-util/cmake
+ - dev-util/ftjam
+ - dev-util/gperf
+ - dev-util/gtk-doc
+ - dev-util/gtk-doc-am
+ - dev-util/intltool
+ - dev-util/jam
+ - dev-util/pkg-config-lite
+ - dev-util/pkgconf
+ - dev-util/pkgconfig
+ - dev-util/pkgconfig-openbsd
+ - dev-util/scons
+ - dev-util/unifdef
+ - dev-util/yacc
+ - media-gfx/ebdftopcf
+ - sys-apps/help2man
+ - sys-devel/autoconf
+ - sys-devel/automake
+ - sys-devel/bin86
+ - sys-devel/bison
+ - sys-devel/dev86
+ - sys-devel/flex
+ - sys-devel/m4
+ - sys-devel/pmake
+ - virtual/linux-sources
+ - virtual/linuxtv-dvb-headers
+ - virtual/os-headers
+ - virtual/pkgconfig
+ - x11-misc/bdftopcf
+ - x11-misc/imake
+
+# suspect_virtual: Dependencies that should usually be made to the virtual
+# Not to the final target library
+# dictionary
+suspect_virtual:
+ dev-libs/libusb: virtual/libusb
+ dev-libs/libusb-compat: virtual/libusb
+ dev-libs/libusbx: virtual/libusb
+ dev-util/pkg-config-lite: virtual/pkgconfig
+ dev-util/pkgconf: virtual/pkgconfig
+ dev-util/pkgconfig: virtual/pkgconfig
+ dev-util/pkgconfig-openbsd: virtual/pkgconfig
+
+# valid_restrict: ???
+# list
+valid_restrict:
+ - binchecks
+ - bindist
+ - fetch
+ - installsources
+ - mirror
+ - preserve-libs
+ - primaryuri
+ - splitdebug
+ - strip
+ - test
+ - userpriv
diff --git a/metadata/repoman/repository.yaml b/metadata/repoman/repository.yaml
new file mode 100644
index 000000000000..9352604243c3
--- /dev/null
+++ b/metadata/repoman/repository.yaml
@@ -0,0 +1,76 @@
+---
+# repository-modules.yaml
+#
+# This is the repository configuration file for repoman modules
+#
+# no random drive-by commits please
+# Please obtain authorization from the portage team
+#
+# Overlay maintainers override/add/negate checks at your discression
+# but support for third party module will be limited to the plugin API
+#
+
+# Repoman API version (do not edit)
+version: 1
+# minimum
+repoman_version: 2.3.3
+
+# NOTE: for non-gentoo repos, any custom modules added will need their
+# module names to the modules list in order for them to run.
+
+# These are the non-mandatory modules that can be disabled/enabled.
+# use -foo notation to disable, just like use flags
+# Add custom modules to enable them too
+scan_modules:
+ description
+ eapi
+ ebuild_metadata
+ fetches
+ files
+ keywords
+ live
+ manifests
+ multicheck
+ pkgmetadata
+ profile
+ restrict
+ ruby
+
+linechecks_modules:
+ assignment
+ eapi3assignment
+ implicitdepend
+ hasq
+ useq
+ preservelib
+ bindnow
+ inherit
+ dosym
+ definition
+ srcprepare
+ eapi3deprecated
+ pkgpretend
+ eapi4incompatible
+ eapi4gonevars
+ paralleldisabled
+ autodefault
+ gentooheader
+ nooffset
+ nesteddie
+ patches
+ emakeparallel
+ srccompileeconf
+ srcunpackpatches
+ portageinternal
+ portageinternalvariableassignment
+ quote
+ quoteda
+ httpsuri
+ builtwith
+ uselesscds
+ uselessdodoc
+ whitespace
+ blankline
+ addpredict
+ noasneeded
+