diff options
author | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
---|---|---|
committer | V3n3RiX <venerix@redcorelinux.org> | 2017-10-09 18:53:29 +0100 |
commit | 4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch) | |
tree | ba5f07bf3f9d22d82e54a462313f5d244036c768 /metadata/repoman |
reinit the tree, so we can have metadata
Diffstat (limited to 'metadata/repoman')
-rw-r--r-- | metadata/repoman/linechecks.yaml | 277 | ||||
-rw-r--r-- | metadata/repoman/qa_data.yaml | 287 | ||||
-rw-r--r-- | metadata/repoman/repository.yaml | 76 |
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 + |