From 3acb91f3c49d455504c9c5f72b6266c2327e8ab6 Mon Sep 17 00:00:00 2001 From: Michał Górny Date: Tue, 25 Feb 2020 16:16:18 +0100 Subject: Update for PG idents MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Michał Górny --- _sources/dependencies.rst.txt | 6 ++ _sources/ebuild-format.rst.txt | 23 +++++- _sources/filesystem.rst.txt | 6 ++ _sources/installed-files.rst.txt | 3 + _sources/keywords.rst.txt | 3 + _sources/languages.rst.txt | 2 + _sources/maintainer.rst.txt | 3 + _sources/other-metadata.rst.txt | 53 ++++++++++++++ _sources/use-flags.rst.txt | 3 + _sources/user-group.rst.txt | 1 + _static/basic.css | 2 +- _static/doctools.js | 7 +- _static/language_data.js | 2 +- _static/searchtools.js | 22 +++--- basics.html | 29 ++++++-- dependencies.html | 147 ++++++++++++++++++++++--------------- ebuild-format.html | 123 +++++++++++++++++++++---------- filesystem.html | 151 ++++++++++++++++++++++++--------------- genindex.html | 31 ++++++-- index.html | 97 ++++++++++++++----------- installed-files.html | 80 ++++++++++++++------- keywords.html | 84 ++++++++++++++-------- languages.html | 71 +++++++++++------- maintainer.html | 80 ++++++++++++++------- motivation.html | 29 ++++++-- other-docs.html | 29 ++++++-- other-metadata.html | 138 +++++++++++++++++++++++++++-------- preface.html | 33 +++++++-- search.html | 31 +++++--- searchindex.js | 2 +- use-flags.html | 92 +++++++++++++++--------- user-group.html | 48 +++++++++---- 32 files changed, 1001 insertions(+), 430 deletions(-) diff --git a/_sources/dependencies.rst.txt b/_sources/dependencies.rst.txt index 55bba5c..a1f5177 100644 --- a/_sources/dependencies.rst.txt +++ b/_sources/dependencies.rst.txt @@ -6,6 +6,7 @@ Dependencies Optional runtime dependencies ----------------------------- +:PG: 0001 :Source: QA :Reference: https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=104017#USE-Controlled_Optional_RDEPENDS :Reported: no @@ -35,6 +36,7 @@ This is especially important for packages that take long time to build. =-dependencies with no revision ------------------------------- +:PG: 0002 :Source: QA :Reported: by repoman and pkgcheck @@ -67,6 +69,7 @@ Slot and subslot dependencies on (sub-)slotted packages ~~~~~~~~~~~~~~~~~~~~~~~~~ +:PG: 0011 :Source: QA :Reference: https://archives.gentoo.org/gentoo-portage-dev/message/9cae3a92412a007febe7ac0612d50f5f :Reported: by repoman and pkgcheck @@ -100,6 +103,7 @@ means 'verified that any slot is acceptable'. special case: Qt packages ~~~~~~~~~~~~~~~~~~~~~~~~~ +:PG: 0012 :Source: Qt project :Reference: https://wiki.gentoo.org/wiki/Project:Qt/Policies#Dependencies :Reported: no @@ -132,6 +136,7 @@ They point out the case of Qt packages as an example. Revision bumps on runtime dependency changes -------------------------------------------- +:PG: 0003 :Source: Council :Reference: https://projects.gentoo.org/council/meeting-logs/20151011-summary.txt :Reported: no @@ -175,6 +180,7 @@ USE dependencies on packages without the flag ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +:PG: 0021 :Source: QA (inferred from PMS) :Reported: by pkgcheck diff --git a/_sources/ebuild-format.rst.txt b/_sources/ebuild-format.rst.txt index d2c8dc5..a5bf5aa 100644 --- a/_sources/ebuild-format.rst.txt +++ b/_sources/ebuild-format.rst.txt @@ -8,6 +8,7 @@ Ebuild file format Coding style ------------ +:PG: 0101 :Source: QA :Reported: partially via repoman and pkgcheck @@ -32,6 +33,7 @@ the ebuild. Code must be contained within ebuild and eclasses ------------------------------------------------- +:PG: 0102 :Source: QA :Reference: https://bugs.gentoo.org/612630 :Reported: no @@ -54,6 +56,7 @@ that possibility, including linting tools. HOMEPAGE must not contain variables ----------------------------------- +:PG: 0103 :Source: QA :Reported: by pkgcheck, highlighted as error by gentoo-syntax @@ -68,12 +71,12 @@ preprocessing, breaking URI support in terminals and editors, as well as reducing the usefulness of plain tools such as grep. - .. index:: pair: src uri; homepage SRC_URI must not refer to HOMEPAGE ---------------------------------- +:PG: 0104 :Source: QA :Reported: by pkgcheck @@ -87,3 +90,21 @@ incidentally depend on multi-valued variable having a single value goes against the principle of least surprise. Furthermore, it makes it hard to copy-paste part of the URI e.g. to investigate the directory index. + + +.. index:: keywords; one line + +KEYWORDS must be defined on a single line +----------------------------------------- +:PG: 0105 +:Source: QA +:Reported: no + +The ``KEYWORDS`` variable must be defined at most once in an ebuild, +on a single line, with literal content (no variable references, line +wrapping, appending, etc.). + +*Rationale*: it is common for arch teams to use the ``ekeyword`` tool +when working with large number of ebuilds. The tool has only limited +ability to process and modify ebuilds, and therefore developers must +make sure that it works correctly on their ebuilds. diff --git a/_sources/filesystem.rst.txt b/_sources/filesystem.rst.txt index 081ab99..52e20a3 100644 --- a/_sources/filesystem.rst.txt +++ b/_sources/filesystem.rst.txt @@ -5,6 +5,7 @@ File system layout Installation paths ------------------ +:PG: 0201 :Source: QA :Reference: https://gitweb.gentoo.org/repo/gentoo.git/tree/metadata/install-qa-check.d/08gentoo-paths :Reported: via install-qa-check.d @@ -60,6 +61,7 @@ exceptions are: Support for separate /usr ------------------------- +:PG: 0202 :Source: QA :Reference: https://projects.gentoo.org/council/meeting-logs/20130813-summary.txt https://projects.gentoo.org/council/meeting-logs/20130924-summary.txt @@ -79,6 +81,7 @@ from rootfs to initramfs. Strict multilib layout ---------------------- +:PG: 0203 :Source: QA :Reference: https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80multilib-strict :Reported: via install-qa-check.d, fatal @@ -103,6 +106,7 @@ to be correctly found by the dynamic loader. Static libraries and libtool files ---------------------------------- +:PG: 0204 :Source: QA :Reference: https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80libraries :Reported: via install-qa-check.d, fatal @@ -124,6 +128,7 @@ be a waste of space. Game install locations and ownership ------------------------------------ +:PG: 0205 :Source: Council, clarified by QA :Reference: https://projects.gentoo.org/council/meeting-logs/20151213-summary.txt https://projects.gentoo.org/council/meeting-logs/20151011-summary.txt @@ -160,6 +165,7 @@ fulfill that purpose. Absolute symbolic link targets ------------------------------ +:PG: 0206 :Source: QA :Reported: by repoman and pkgcheck (when ebuild-generated) diff --git a/_sources/installed-files.rst.txt b/_sources/installed-files.rst.txt index b77bc02..c8c55f2 100644 --- a/_sources/installed-files.rst.txt +++ b/_sources/installed-files.rst.txt @@ -7,6 +7,7 @@ Installed files Installation of small files --------------------------- +:PG: 0301 :Source: QA :Reported: no @@ -40,6 +41,7 @@ such a huge package in order to install one tiny file. Installation of static libraries -------------------------------- +:PG: 0302 :Source: QA :Reported: no @@ -61,6 +63,7 @@ libraries if they are never going to be used. Installation of libtool (.la) files ----------------------------------- +:PG: 0303 :Source: QA :Reported: no diff --git a/_sources/keywords.rst.txt b/_sources/keywords.rst.txt index 272dca4..81db271 100644 --- a/_sources/keywords.rst.txt +++ b/_sources/keywords.rst.txt @@ -5,6 +5,7 @@ Keywording and stabilization Rekeywording on dropped keywords -------------------------------- +:PG: 0401 :Source: QA :Reported: by pkgcheck and repoman @@ -23,6 +24,7 @@ a new version or to remove an old version. Stabilizing new versions ------------------------ +:PG: 0402 :Source: QA :Reported: by pkgcheck @@ -50,6 +52,7 @@ requested on remaining architectures in the first place. Removing stable keywords ------------------------ +:PG: 0403 :Source: QA :Reference: https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=126033#Dropping_Stable_KEYWORDs :Reported: n/a diff --git a/_sources/languages.rst.txt b/_sources/languages.rst.txt index b84a80c..dc3a142 100644 --- a/_sources/languages.rst.txt +++ b/_sources/languages.rst.txt @@ -13,6 +13,7 @@ Python Eclass usage ~~~~~~~~~~~~ +:PG: 0501 :Source: Python project :Reference: https://wiki.gentoo.org/wiki/Project:Python/Eclasses :Reported: by pkgcheck @@ -41,6 +42,7 @@ implementations with minimal changes to existing ebuilds. Python 2 deprecation ~~~~~~~~~~~~~~~~~~~~ +:PG: 0502 :Source: Python project :Reference: https://wiki.gentoo.org/wiki/Project:Python#Python_2_end-of-life :Reported: no diff --git a/_sources/maintainer.rst.txt b/_sources/maintainer.rst.txt index 07dd3b1..e37daf4 100644 --- a/_sources/maintainer.rst.txt +++ b/_sources/maintainer.rst.txt @@ -5,6 +5,7 @@ Package Maintainers Adding new maintainers ---------------------- +:PG: 0601 :Source: QA :Reported: no @@ -31,6 +32,7 @@ them from packages actually within project's profile was hard. New packages without a maintainer --------------------------------- +:PG: 0602 :Source: QA :Reported: no @@ -50,6 +52,7 @@ to take care of them. Removing package maintainers ---------------------------- +:PG: 0603 :Source: QA :Reported: no diff --git a/_sources/other-metadata.rst.txt b/_sources/other-metadata.rst.txt index f05014b..c59e0c2 100644 --- a/_sources/other-metadata.rst.txt +++ b/_sources/other-metadata.rst.txt @@ -6,6 +6,7 @@ Other metadata variables Dynamic slots (multislot flag) ------------------------------ +:PG: 0701 :Source: QA (inferred from PMS) :Reference: https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#multislot.2FUSE-dependent_SLOT :Reported: ``use`` in global scope triggers fatal error @@ -42,6 +43,7 @@ invalidation or explicit errors. HOMEPAGE value must be meaningful --------------------------------- +:PG: 0702 :Source: QA :Reference: https://archives.gentoo.org/gentoo-dev/message/83cc5bbd7bbe8bdf04dd3c3bc7f8a035 :Reported: known bad values are reported by pkgcheck @@ -69,6 +71,7 @@ easy to identify such packages. RESTRICT=test for USE=-test --------------------------- +:PG: 0703 :Source: QA :Reported: by pkgcheck @@ -94,4 +97,54 @@ this circumstance, and they will not fail for users. common, and there is little harm in overspecifying it. +.. index:: license + +LICENSE +------- +:PG: 0704 +:Source: QA +:Reported: no + +The ``LICENSE`` variable must explicitly list licenses for all files +installed by the package. If some of the applicable licenses are +conditional to USE flags, appropriate USE conditionals need to +be expressed in the variable. + +If a package bundles any dependencies that are either installed, +statically linked or in any other way combined with installed files, +the licenses of these dependencies need to be listed as well. This +is not presently required when statically linking to dependencies +installed by separate packages in the repository. + +The licenses for files that are not installed but that are used at build +time are not listed explicitly. + +*Rationale*: the primary purpose of the license support in the package +manager is to provide the users with ability to decide on acceptable +licenses for their installed systems (and binary packages). In order +for this to work effectively, the packages must provide a correct +and complete license list. + +Static linking combines code from multiple packages, potentially covered +by different licenses. Listing all licenses is the simplest way +of ensuring that nothing is missed, as well as protecting against wrong +derivative work licenses stated upstream (i.e. when a less restrictively +licensed package links to a more restrictively licensed dependency). + +Listing of licenses is enforced for bundled dependencies but not for +static linking to other packages, as in the latter case it is +non-trivial to implement and the package manager already verifies +the license while building dependencies (but not when installing binary +packages). + +The ebuild format does not provide a separate variable to list licenses +needed only at build time. So far it has not been considered important +enough to have one, as the relevant files exist only temporarily +on the user's system and do not affect the runtime use of packages. + +.. Note:: + Please remember to include the licenses of support files provided + by the ebuild, e.g. init.d scripts (usually GPL-2). + + .. _metadata invariance: https://projects.gentoo.org/pms/7/pms.html#x1-600007.1 diff --git a/_sources/use-flags.rst.txt b/_sources/use-flags.rst.txt index c6a8b4a..4344edc 100644 --- a/_sources/use-flags.rst.txt +++ b/_sources/use-flags.rst.txt @@ -8,6 +8,7 @@ USE flags Versioned USE flags ------------------- +:PG: 0801 :Source: QA :Reference: https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#Versioned_USE_flags :Reported: no @@ -38,6 +39,7 @@ with the QA team before introduction. USE=gui flag ------------ +:PG: 0802 :Source: QA :Reference: https://archives.gentoo.org/gentoo-dev/message/cf3f5a59ac918335766632bd02438722 :Reported: no @@ -61,6 +63,7 @@ multiple GUIs. Underscores in USE flag names ----------------------------- +:PG: 0803 :Source: Council :Reference: https://projects.gentoo.org/council/meeting-logs/20191013-summary.txt :Reported: by pkgcheck diff --git a/_sources/user-group.rst.txt b/_sources/user-group.rst.txt index 389f3b9..09944a5 100644 --- a/_sources/user-group.rst.txt +++ b/_sources/user-group.rst.txt @@ -6,6 +6,7 @@ Users and groups User and group account policy ----------------------------- +:PG: 0901 :Source: QA :Reference: https://bugs.gentoo.org/702460 :Reported: by repoman and pkgcheck (as deprecated eclass) diff --git a/_static/basic.css b/_static/basic.css index b04360d..0119285 100644 --- a/_static/basic.css +++ b/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/_static/doctools.js b/_static/doctools.js index b33f87f..daccd20 100644 --- a/_static/doctools.js +++ b/_static/doctools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for all documentation. * - * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -283,10 +283,11 @@ var Documentation = { }, initOnKeyListeners: function() { - $(document).keyup(function(event) { + $(document).keydown(function(event) { var activeElementType = document.activeElement.tagName; // don't navigate when in search box or textarea - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') { + if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT' + && !event.altKey && !event.ctrlKey && !event.metaKey && !event.shiftKey) { switch (event.keyCode) { case 37: // left var prevHref = $('link[rel="prev"]').prop('href'); diff --git a/_static/language_data.js b/_static/language_data.js index 5266fb1..d2b4ee9 100644 --- a/_static/language_data.js +++ b/_static/language_data.js @@ -5,7 +5,7 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/_static/searchtools.js b/_static/searchtools.js index ad84587..d11b33a 100644 --- a/_static/searchtools.js +++ b/_static/searchtools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2019 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2020 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -63,6 +63,11 @@ var Search = { htmlElement.innerHTML = htmlString; $(htmlElement).find('.headerlink').remove(); docContent = $(htmlElement).find('[role=main]')[0]; + if(docContent === undefined) { + console.warn("Content block not found. Sphinx search tries to obtain it " + + "via '[role=main]'. Could you check your theme or template."); + return ""; + } return docContent.textContent || docContent.innerText; }, @@ -245,6 +250,7 @@ var Search = { if (results.length) { var item = results.pop(); var listItem = $('
  • '); + var requestUrl = ""; if (DOCUMENTATION_OPTIONS.BUILDER === 'dirhtml') { // dirhtml builder var dirname = item[0] + '/'; @@ -253,15 +259,15 @@ var Search = { } else if (dirname == 'index/') { dirname = ''; } - listItem.append($('').attr('href', - DOCUMENTATION_OPTIONS.URL_ROOT + dirname + - highlightstring + item[2]).html(item[1])); + requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + dirname; + } else { // normal html builders - listItem.append($('').attr('href', - item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX + - highlightstring + item[2]).html(item[1])); + requestUrl = DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX; } + listItem.append($('').attr('href', + requestUrl + + highlightstring + item[2]).html(item[1])); if (item[3]) { listItem.append($(' (' + item[3] + ')')); Search.output.append(listItem); @@ -269,7 +275,7 @@ var Search = { displayNextItem(); }); } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) { - $.ajax({url: DOCUMENTATION_OPTIONS.URL_ROOT + item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX, + $.ajax({url: requestUrl, dataType: "text", complete: function(jqxhr, textstatus) { var data = jqxhr.responseText; diff --git a/basics.html b/basics.html index 68f5c68..a9efb4c 100644 --- a/basics.html +++ b/basics.html @@ -15,10 +15,10 @@ - - - - + + + + @@ -76,8 +76,25 @@
  • Source
  • Search
  • + + +
  • + + General Index + +
  • +
  • - Index
  • + + Policy Index + + + + + + + + @@ -264,7 +281,7 @@ be appealed to the Gentoo Policy Guide
    diff --git a/dependencies.html b/dependencies.html index 3011108..c014c8b 100644 --- a/dependencies.html +++ b/dependencies.html @@ -15,10 +15,10 @@ - - - - + + + + @@ -76,8 +76,25 @@
  • Source
  • Search
  • + +
  • - Index
  • + + General Index + + + +
  • + + Policy Index + +
  • + + + + + + @@ -115,17 +132,20 @@

    Dependencies

    -
    -

    Optional runtime dependencies

    +
    +

    Optional runtime dependencies

    -
    Source
    -

    QA

    +
    PG
    +

    0001

    -
    Reference
    -

    https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=104017#USE-Controlled_Optional_RDEPENDS

    +
    Source
    +

    QA

    -
    Reported
    -

    no

    +
    Reference
    +

    https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=104017#USE-Controlled_Optional_RDEPENDS

    +
    +
    Reported
    +

    no

    Using USE flags to control optional runtime dependencies is not @@ -146,14 +166,17 @@ rebuilding package in question. It has been tentatively approved by the Council but no reference implementation has been written.

    -
    -

    =-dependencies with no revision

    +
    +

    =-dependencies with no revision

    -
    Source
    -

    QA

    +
    PG
    +

    0002

    -
    Reported
    -

    by repoman and pkgcheck

    +
    Source
    +

    QA

    +
    +
    Reported
    +

    by repoman and pkgcheck

    Whenever a non-wildcard = (equals) dependency is used on a package, @@ -177,17 +200,20 @@ used the correct operator.

    Slot and subslot dependencies

    -
    -

    on (sub-)slotted packages

    +
    +

    on (sub-)slotted packages

    -
    Source
    -

    QA

    +
    PG
    +

    0011

    -
    Reference
    -

    https://archives.gentoo.org/gentoo-portage-dev/message/9cae3a92412a007febe7ac0612d50f5f

    +
    Source
    +

    QA

    -
    Reported
    -

    by repoman and pkgcheck

    +
    Reference
    +

    https://archives.gentoo.org/gentoo-portage-dev/message/9cae3a92412a007febe7ac0612d50f5f

    +
    +
    Reported
    +

    by repoman and pkgcheck

    Whenever a package dependency specification matches a range of versions @@ -211,17 +237,20 @@ is specified on the dependency. It pulls in the slot corresponding to the newest package version available.

    -
    -

    special case: Qt packages

    +
    +

    special case: Qt packages

    -
    Source
    -

    Qt project

    +
    PG
    +

    0012

    -
    Reference
    -

    https://wiki.gentoo.org/wiki/Project:Qt/Policies#Dependencies

    +
    Source
    +

    Qt project

    -
    Reported
    -

    no

    +
    Reference
    +

    https://wiki.gentoo.org/wiki/Project:Qt/Policies#Dependencies

    +
    +
    Reported
    +

    no

    The Qt packages use subslots in an uncommon way. The public ABI of Qt @@ -244,17 +273,20 @@ predictable.

    They point out the case of Qt packages as an example.

    -
    -

    Revision bumps on runtime dependency changes

    +
    +

    Revision bumps on runtime dependency changes

    -
    Source
    -

    Council

    +
    PG
    +

    0003

    -
    Reference
    -

    https://projects.gentoo.org/council/meeting-logs/20151011-summary.txt

    +
    Source
    +

    Council

    -
    Reported
    -

    no

    +
    Reference
    +

    https://projects.gentoo.org/council/meeting-logs/20151011-summary.txt

    +
    +
    Reported
    +

    no

    It must not be assumed that changes to package’s dependencies will @@ -286,14 +318,17 @@ if the package installed by the user still links to libfoo.

    USE dependencies

    -
    -

    on packages without the flag

    +
    +

    on packages without the flag

    -
    Source
    -

    QA (inferred from PMS)

    +
    PG
    +

    0021

    -
    Reported
    -

    by pkgcheck

    +
    Source
    +

    QA (inferred from PMS)

    +
    +
    Reported
    +

    by pkgcheck

    Whenever a package uses a 2-style USE-dependency on another package, @@ -372,17 +407,17 @@ updating its reverse dependencies.

  • Basic information
  • Other policy documents
  • Dependencies @@ -414,7 +449,7 @@ updating its reverse dependencies.

    Gentoo Policy Guide

    diff --git a/ebuild-format.html b/ebuild-format.html index 3a89fb2..74402f5 100644 --- a/ebuild-format.html +++ b/ebuild-format.html @@ -15,10 +15,10 @@ - - - - + + + + @@ -76,8 +76,25 @@
  • Source
  • Search
  • + + +
  • + + General Index + +
  • +
  • - Index
  • + + Policy Index + + + + + + + + @@ -115,14 +132,17 @@

    Ebuild file format

    -
    -

    Coding style

    +
    +

    Coding style

    -
    Source
    -

    QA

    +
    PG
    +

    0101

    -
    Reported
    -

    partially via repoman and pkgcheck

    +
    Source
    +

    QA

    +
    +
    Reported
    +

    partially via repoman and pkgcheck

    While Gentoo leaves most of the coding style choices to developers, @@ -139,17 +159,20 @@ or test

    -
    -

    Code must be contained within ebuild and eclasses

    +
    +

    Code must be contained within ebuild and eclasses

    -
    Source
    -

    QA

    +
    PG
    +

    0102

    -
    Reference
    -

    https://bugs.gentoo.org/612630

    +
    Source
    +

    QA

    -
    Reported
    -

    no

    +
    Reference
    +

    https://bugs.gentoo.org/612630

    +
    +
    Reported
    +

    no

    The ebuild code must be fully contained within .ebuild and .eclass @@ -163,14 +186,17 @@ the principle of least surprise. It makes the maintenance harder, confuses other developers and tools that do not explicitly account for that possibility, including linting tools.

    -
    -

    HOMEPAGE must not contain variables

    +
    +

    HOMEPAGE must not contain variables

    -
    Source
    -

    QA

    +
    PG
    +

    0103

    -
    Reported
    -

    by pkgcheck, highlighted as error by gentoo-syntax

    +
    Source
    +

    QA

    +
    +
    Reported
    +

    by pkgcheck, highlighted as error by gentoo-syntax

    The HOMEPAGE variable in ebuild must specify all the URIs verbatim, @@ -182,14 +208,17 @@ there. On the other hand, variables render the URIs unusable without preprocessing, breaking URI support in terminals and editors, as well as reducing the usefulness of plain tools such as grep.

    -
    -

    SRC_URI must not refer to HOMEPAGE

    +
    +

    SRC_URI must not refer to HOMEPAGE

    -
    Source
    -

    QA

    +
    PG
    +

    0104

    -
    Reported
    -

    by pkgcheck

    +
    Source
    +

    QA

    +
    +
    Reported
    +

    by pkgcheck

    The SRC_URI variable in ebuild must not refer to ${HOMEPAGE}. @@ -202,6 +231,27 @@ goes against the principle of least surprise. Furthermore, it makes it hard to copy-paste part of the URI e.g. to investigate the directory index.

    +
    +

    KEYWORDS must be defined on a single line

    +
    +
    PG
    +

    0105

    +
    +
    Source
    +

    QA

    +
    +
    Reported
    +

    no

    +
    +
    +

    The KEYWORDS variable must be defined at most once in an ebuild, +on a single line, with literal content (no variable references, line +wrapping, appending, etc.).

    +

    Rationale: it is common for arch teams to use the ekeyword tool +when working with large number of ebuilds. The tool has only limited +ability to process and modify ebuilds, and therefore developers must +make sure that it works correctly on their ebuilds.

    +
    @@ -252,10 +302,11 @@ index.

  • Other policy documents
  • Dependencies
  • Ebuild file format
  • File system layout
  • @@ -284,7 +335,7 @@ index.

    Gentoo Policy Guide

    diff --git a/filesystem.html b/filesystem.html index 92860f5..2d3db1d 100644 --- a/filesystem.html +++ b/filesystem.html @@ -15,10 +15,10 @@ - - - - + + + + @@ -76,8 +76,25 @@
  • Source
  • Search
  • + + +
  • + + General Index + +
  • +
  • - Index
  • + + Policy Index + + + + + + + + @@ -115,17 +132,20 @@

    File system layout

    -
    -

    Installation paths

    +
    +

    Installation paths

    -
    Source
    -

    QA

    +
    PG
    +

    0201

    -
    Reference
    -

    https://gitweb.gentoo.org/repo/gentoo.git/tree/metadata/install-qa-check.d/08gentoo-paths

    +
    Source
    +

    QA

    -
    Reported
    -

    via install-qa-check.d

    +
    Reference
    +

    https://gitweb.gentoo.org/repo/gentoo.git/tree/metadata/install-qa-check.d/08gentoo-paths

    +
    +
    Reported
    +

    via install-qa-check.d

    Gentoo packages may only install into one of the following top-level @@ -181,18 +201,21 @@ exceptions are:

  • /nix for the nix package manager

  • -
    -

    Support for separate /usr

    +
    +

    Support for separate /usr

    -
    Source
    -

    QA

    +
    PG
    +

    0202

    +
    +
    Source
    +

    QA

    -
    Reference
    -

    https://projects.gentoo.org/council/meeting-logs/20130813-summary.txt +

    Reference
    +

    https://projects.gentoo.org/council/meeting-logs/20130813-summary.txt https://projects.gentoo.org/council/meeting-logs/20130924-summary.txt

    -
    Reported
    -

    no

    +
    Reported
    +

    no

    Developers are not required to support using separate /usr filesystem @@ -203,17 +226,20 @@ works, it is either subtly broken or relying on hacks (udev). In setups using initramfs, some of the boot and repair functionality can be moved from rootfs to initramfs.

    -
    -

    Strict multilib layout

    +
    +

    Strict multilib layout

    -
    Source
    -

    QA

    +
    PG
    +

    0203

    -
    Reference
    -

    https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80multilib-strict

    +
    Source
    +

    QA

    -
    Reported
    -

    via install-qa-check.d, fatal

    +
    Reference
    +

    https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80multilib-strict

    +
    +
    Reported
    +

    via install-qa-check.d, fatal

    Libraries must be installed into an appropriate /lib* or /usr/lib* @@ -227,17 +253,20 @@ path. With modern Gentoo profiles, this is no longer the case and packages must install libraries into appropriate directory for them to be correctly found by the dynamic loader.

    -
    -

    Static libraries and libtool files

    +
    +

    Static libraries and libtool files

    -
    Source
    -

    QA

    +
    PG
    +

    0204

    -
    Reference
    -

    https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80libraries

    +
    Source
    +

    QA

    -
    Reported
    -

    via install-qa-check.d, fatal

    +
    Reference
    +

    https://gitweb.gentoo.org/proj/portage.git/tree/bin/install-qa-check.d/80libraries

    +
    +
    Reported
    +

    via install-qa-check.d, fatal

    Static libraries and libtool files (.la) must be installed into /usr @@ -250,18 +279,21 @@ installations may still use small / partition. Static libraries are used only during package builds, and installing them to rootfs would be a waste of space.

    -
    -

    Game install locations and ownership

    +
    +

    Game install locations and ownership

    -
    Source
    -

    Council, clarified by QA

    +
    PG
    +

    0205

    +
    +
    Source
    +

    Council, clarified by QA

    -
    Reference
    -

    https://projects.gentoo.org/council/meeting-logs/20151213-summary.txt +

    Reference
    +

    https://projects.gentoo.org/council/meeting-logs/20151213-summary.txt https://projects.gentoo.org/council/meeting-logs/20151011-summary.txt

    -
    Reported
    -

    via install-qa-check.d

    +
    Reported
    +

    via install-qa-check.d

    The historical game install locations (/usr/games and /etc/games) must @@ -286,14 +318,17 @@ share data files. Since the latter implied users must not be added to the games group, a new group (gamestat) needed to be created to fulfill that purpose.

    -