From a3212d8ef9f80ba6944d8f29b9ad3650f6c93c49 Mon Sep 17 00:00:00 2001 From: Ulrich Müller Date: Sat, 14 Jan 2023 18:21:24 +0100 Subject: Rebuild MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Manually fix the copyright line. Signed-off-by: Ulrich Müller --- .buildinfo | 2 +- _sources/ebuild-format.rst.txt | 18 + _sources/installed-files.rst.txt | 2 +- _sources/other-metadata.rst.txt | 19 +- _sources/preface.rst.txt | 1 + _static/basic.css | 55 ++- _static/doctools.js | 420 ++++++-------------- _static/documentation_options.js | 2 +- _static/language_data.js | 102 +---- _static/searchtools.js | 823 ++++++++++++++++++++------------------- _static/sphinx_highlight.js | 144 +++++++ basics.html | 22 +- combined.html | 490 ++++++++++++----------- dependencies.html | 76 ++-- deprecation.html | 32 +- ebuild-format.html | 86 ++-- filesystem.html | 72 ++-- genindex.html | 17 +- index.html | 17 +- installed-files.html | 48 +-- keywords.html | 40 +- languages.html | 36 +- maintainer.html | 38 +- motivation.html | 18 +- other-docs.html | 28 +- other-metadata.html | 68 ++-- preface.html | 21 +- search.html | 10 +- searchindex.js | 2 +- std-policy-index.html | 15 +- use-flags.html | 44 +-- user-group.html | 24 +- 32 files changed, 1373 insertions(+), 1419 deletions(-) create mode 100644 _static/sphinx_highlight.js diff --git a/.buildinfo b/.buildinfo index b04ba03..c66858e 100644 --- a/.buildinfo +++ b/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 6a6c5d26087b71c89861a7880468166f +config: 650f3a702cb2256d3bea72db0695c26d tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/_sources/ebuild-format.rst.txt b/_sources/ebuild-format.rst.txt index 041c088..a381e07 100644 --- a/_sources/ebuild-format.rst.txt +++ b/_sources/ebuild-format.rst.txt @@ -126,3 +126,21 @@ allowed. *Rationale*: since license names do not contain dynamic parts (such as package versions), using variables there has little advantage. On the other hand, variables reduce the usefulness of plain tools such as grep. + + +.. index:: d; variable + +D must be used only in src_install and pkg_preinst +-------------------------------------------------- +:PG: 0107 +:Source: QA +:Reported: no + +The ``D`` and ``ED`` variables must be used only in the ``src_install`` +and ``pkg_preinst`` phase functions. Exceptions to this policy can be +granted by the QA team. + +*Rationale*: using ``D`` in other phases (e.g. ``src_configure``) is +error-prone and may lead to the path being embedded in files of the +installed image. In addition, the directory pointed to by ``${D}`` +does not exist in other phases. diff --git a/_sources/installed-files.rst.txt b/_sources/installed-files.rst.txt index da6263e..1468288 100644 --- a/_sources/installed-files.rst.txt +++ b/_sources/installed-files.rst.txt @@ -79,7 +79,7 @@ b. the package is installing static libraries that have additional It is recommended to use the following one-liner to remove .la files:: - find "${ED}" -name '*.la' -delete || die + find "${ED}" -type f -name '*.la' -delete || die *Rationale*: libtool files were historically introduced as an attempt to supplement static library archives with dependent library list. diff --git a/_sources/other-metadata.rst.txt b/_sources/other-metadata.rst.txt index d79ef6f..d3c98fd 100644 --- a/_sources/other-metadata.rst.txt +++ b/_sources/other-metadata.rst.txt @@ -105,10 +105,12 @@ LICENSE :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. +The ``LICENSE`` variable must explicitly list all licenses pertaining +to the "corresponding source" of the files installed by the package. +This includes all their source code, but also all scripts used to +control compilation and installation. 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, @@ -116,8 +118,8 @@ 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. +The licenses for files that are neither installed nor used at build +time shall not be listed. *Rationale*: the primary purpose of the license support in the package manager is to provide the users with ability to decide on acceptable @@ -137,11 +139,6 @@ 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). diff --git a/_sources/preface.rst.txt b/_sources/preface.rst.txt index 85344d4..e0af2d9 100644 --- a/_sources/preface.rst.txt +++ b/_sources/preface.rst.txt @@ -19,6 +19,7 @@ This document is maintained by the Gentoo `QA project`_. The current text authors are: - Michał Górny (mgorny) +- Ulrich Müller (ulm) License diff --git a/_static/basic.css b/_static/basic.css index bf18350..7577acb 100644 --- a/_static/basic.css +++ b/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -222,7 +222,7 @@ table.modindextable td { /* -- general body styles --------------------------------------------------- */ div.body { - min-width: 450px; + min-width: 360px; max-width: 800px; } @@ -237,16 +237,6 @@ a.headerlink { visibility: hidden; } -a.brackets:before, -span.brackets > a:before{ - content: "["; -} - -a.brackets:after, -span.brackets > a:after { - content: "]"; -} - h1:hover > a.headerlink, h2:hover > a.headerlink, h3:hover > a.headerlink, @@ -335,12 +325,16 @@ p.sidebar-title { font-weight: bold; } +nav.contents, +aside.topic, div.admonition, div.topic, blockquote { clear: left; } /* -- topics ---------------------------------------------------------------- */ +nav.contents, +aside.topic, div.topic { border: 1px solid #ccc; padding: 7px; @@ -379,6 +373,8 @@ div.body p.centered { div.sidebar > :last-child, aside.sidebar > :last-child, +nav.contents > :last-child, +aside.topic > :last-child, div.topic > :last-child, div.admonition > :last-child { margin-bottom: 0; @@ -386,6 +382,8 @@ div.admonition > :last-child { div.sidebar::after, aside.sidebar::after, +nav.contents::after, +aside.topic::after, div.topic::after, div.admonition::after, blockquote::after { @@ -428,10 +426,6 @@ table.docutils td, table.docutils th { border-bottom: 1px solid #aaa; } -table.footnote td, table.footnote th { - border: 0 !important; -} - th { text-align: left; padding-right: 5px; @@ -615,19 +609,26 @@ ul.simple p { margin-bottom: 0; } -dl.footnote > dt, -dl.citation > dt { +aside.footnote > span, +div.citation > span { float: left; - margin-right: 0.5em; } - -dl.footnote > dd, -dl.citation > dd { +aside.footnote > span:last-of-type, +div.citation > span:last-of-type { + padding-right: 0.5em; +} +aside.footnote > p { + margin-left: 2em; +} +div.citation > p { + margin-left: 4em; +} +aside.footnote > p:last-of-type, +div.citation > p:last-of-type { margin-bottom: 0em; } - -dl.footnote > dd:after, -dl.citation > dd:after { +aside.footnote > p:last-of-type:after, +div.citation > p:last-of-type:after { content: ""; clear: both; } @@ -644,10 +645,6 @@ dl.field-list > dt { padding-right: 5px; } -dl.field-list > dt:after { - content: ":"; -} - dl.field-list > dd { padding-left: 0.5em; margin-top: 0em; diff --git a/_static/doctools.js b/_static/doctools.js index e1bfd70..d06a71d 100644 --- a/_static/doctools.js +++ b/_static/doctools.js @@ -2,357 +2,155 @@ * doctools.js * ~~~~~~~~~~~ * - * Sphinx JavaScript utilities for all documentation. + * Base JavaScript utilities for all Sphinx HTML documentation. * - * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ - -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - * - * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL - */ -jQuery.urldecode = function(x) { - if (!x) { - return x - } - return decodeURIComponent(x.replace(/\+/g, ' ')); -}; - -/** - * small helper function to urlencode strings - */ -jQuery.urlencode = encodeURIComponent; - -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s === 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; - } - return result; -}; - -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node, addItems) { - if (node.nodeType === 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && - !jQuery(node.parentNode).hasClass(className) && - !jQuery(node.parentNode).hasClass("nohighlight")) { - var span; - var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg"); - if (isInSVG) { - span = document.createElementNS("http://www.w3.org/2000/svg", "tspan"); - } else { - span = document.createElement("span"); - span.className = className; - } - span.appendChild(document.createTextNode(val.substr(pos, text.length))); - node.parentNode.insertBefore(span, node.parentNode.insertBefore( - document.createTextNode(val.substr(pos + text.length)), - node.nextSibling)); - node.nodeValue = val.substr(0, pos); - if (isInSVG) { - var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect"); - var bbox = node.parentElement.getBBox(); - rect.x.baseVal.value = bbox.x; - rect.y.baseVal.value = bbox.y; - rect.width.baseVal.value = bbox.width; - rect.height.baseVal.value = bbox.height; - rect.setAttribute('class', className); - addItems.push({ - "parent": node.parentNode, - "target": rect}); - } - } - } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this, addItems); - }); - } - } - var addItems = []; - var result = this.each(function() { - highlight(this, addItems); - }); - for (var i = 0; i < addItems.length; ++i) { - jQuery(addItems[i].parent).before(addItems[i].target); +"use strict"; + +const BLACKLISTED_KEY_CONTROL_ELEMENTS = new Set([ + "TEXTAREA", + "INPUT", + "SELECT", + "BUTTON", +]); + +const _ready = (callback) => { + if (document.readyState !== "loading") { + callback(); + } else { + document.addEventListener("DOMContentLoaded", callback); } - return result; }; -/* - * backward compatibility for jQuery.browser - * This will be supported until firefox bug is fixed. - */ -if (!jQuery.browser) { - jQuery.uaMatch = function(ua) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || - /(webkit)[ \/]([\w.]+)/.exec(ua) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || - /(msie) ([\w.]+)/.exec(ua) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - jQuery.browser = {}; - jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; -} - /** * Small JavaScript module for the documentation. */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - this.initOnKeyListeners(); +const Documentation = { + init: () => { + Documentation.initDomainIndexTable(); + Documentation.initOnKeyListeners(); }, /** * i18n support */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n === 1 ? 0 : 1; }, - LOCALE : 'unknown', + TRANSLATIONS: {}, + PLURAL_EXPR: (n) => (n === 1 ? 0 : 1), + LOCALE: "unknown", // gettext and ngettext don't access this so that the functions // can safely bound to a different name (_ = Documentation.gettext) - gettext : function(string) { - var translated = Documentation.TRANSLATIONS[string]; - if (typeof translated === 'undefined') - return string; - return (typeof translated === 'string') ? translated : translated[0]; - }, - - ngettext : function(singular, plural, n) { - var translated = Documentation.TRANSLATIONS[singular]; - if (typeof translated === 'undefined') - return (n == 1) ? singular : plural; - return translated[Documentation.PLURALEXPR(n)]; - }, - - addTranslations : function(catalog) { - for (var key in catalog.messages) - this.TRANSLATIONS[key] = catalog.messages[key]; - this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); - this.LOCALE = catalog.locale; - }, - - /** - * add context elements like header anchor links - */ - addContextElements : function() { - $('div[id] > :header:first').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this headline')). - appendTo(this); - }); - $('dt[id]').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this definition')). - appendTo(this); - }); - }, - - /** - * workaround a firefox stupidity - * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 - */ - fixFirefoxAnchorBug : function() { - if (document.location.hash && $.browser.mozilla) - window.setTimeout(function() { - document.location.href += ''; - }, 10); - }, - - /** - * highlight the search words provided in the url in the text - */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - if (!body.length) { - body = $('body'); - } - window.setTimeout(function() { - $.each(terms, function() { - body.highlightText(this.toLowerCase(), 'highlighted'); - }); - }, 10); - $('') - .appendTo($('#searchbox')); + gettext: (string) => { + const translated = Documentation.TRANSLATIONS[string]; + switch (typeof translated) { + case "undefined": + return string; // no translation + case "string": + return translated; // translation exists + default: + return translated[0]; // (singular, plural) translation tuple exists } }, - /** - * init the domain index toggle buttons - */ - initIndexTable : function() { - var togglers = $('img.toggler').click(function() { - var src = $(this).attr('src'); - var idnum = $(this).attr('id').substr(7); - $('tr.cg-' + idnum).toggle(); - if (src.substr(-9) === 'minus.png') - $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); - else - $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); - }).css('display', ''); - if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { - togglers.click(); - } + ngettext: (singular, plural, n) => { + const translated = Documentation.TRANSLATIONS[singular]; + if (typeof translated !== "undefined") + return translated[Documentation.PLURAL_EXPR(n)]; + return n === 1 ? singular : plural; }, - /** - * helper function to hide the search marks again - */ - hideSearchWords : function() { - $('#searchbox .highlight-link').fadeOut(300); - $('span.highlighted').removeClass('highlighted'); - var url = new URL(window.location); - url.searchParams.delete('highlight'); - window.history.replaceState({}, '', url); + addTranslations: (catalog) => { + Object.assign(Documentation.TRANSLATIONS, catalog.messages); + Documentation.PLURAL_EXPR = new Function( + "n", + `return (${catalog.plural_expr})` + ); + Documentation.LOCALE = catalog.locale; }, - /** + /** * helper function to focus on search bar */ - focusSearchBar : function() { - $('input[name=q]').first().focus(); + focusSearchBar: () => { + document.querySelectorAll("input[name=q]")[0]?.focus(); }, /** - * make the url absolute + * Initialise the domain index toggle buttons */ - makeURL : function(relativeURL) { - return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; - }, + initDomainIndexTable: () => { + const toggler = (el) => { + const idNumber = el.id.substr(7); + const toggledRows = document.querySelectorAll(`tr.cg-${idNumber}`); + if (el.src.substr(-9) === "minus.png") { + el.src = `${el.src.substr(0, el.src.length - 9)}plus.png`; + toggledRows.forEach((el) => (el.style.display = "none")); + } else { + el.src = `${el.src.substr(0, el.src.length - 8)}minus.png`; + toggledRows.forEach((el) => (el.style.display = "")); + } + }; - /** - * get the current relative url - */ - getCurrentURL : function() { - var path = document.location.pathname; - var parts = path.split(/\//); - $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { - if (this === '..') - parts.pop(); - }); - var url = parts.join('/'); - return path.substring(url.lastIndexOf('/') + 1, path.length - 1); + const togglerElements = document.querySelectorAll("img.toggler"); + togglerElements.forEach((el) => + el.addEventListener("click", (event) => toggler(event.currentTarget)) + ); + togglerElements.forEach((el) => (el.style.display = "")); + if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) togglerElements.forEach(toggler); }, - initOnKeyListeners: function() { + initOnKeyListeners: () => { // only install a listener if it is really needed - if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && - !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) - return; - - $(document).keydown(function(event) { - var activeElementType = document.activeElement.tagName; - // don't navigate when in search box, textarea, dropdown or button - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT' - && activeElementType !== 'BUTTON') { - if (event.altKey || event.ctrlKey || event.metaKey) - return; - - if (!event.shiftKey) { - switch (event.key) { - case 'ArrowLeft': - if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) - break; - var prevHref = $('link[rel="prev"]').prop('href'); - if (prevHref) { - window.location.href = prevHref; - return false; - } - break; - case 'ArrowRight': - if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) - break; - var nextHref = $('link[rel="next"]').prop('href'); - if (nextHref) { - window.location.href = nextHref; - return false; - } - break; - case 'Escape': - if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) - break; - Documentation.hideSearchWords(); - return false; - } - } - - // some keyboard layouts may need Shift to get / + if ( + !DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS && + !DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS + ) + return; + + document.addEventListener("keydown", (event) => { + // bail for input elements + if (BLACKLISTED_KEY_CONTROL_ELEMENTS.has(document.activeElement.tagName)) return; + // bail with special keys + if (event.altKey || event.ctrlKey || event.metaKey) return; + + if (!event.shiftKey) { switch (event.key) { - case '/': - if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) - break; - Documentation.focusSearchBar(); - return false; + case "ArrowLeft": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const prevLink = document.querySelector('link[rel="prev"]'); + if (prevLink && prevLink.href) { + window.location.href = prevLink.href; + event.preventDefault(); + } + break; + case "ArrowRight": + if (!DOCUMENTATION_OPTIONS.NAVIGATION_WITH_KEYS) break; + + const nextLink = document.querySelector('link[rel="next"]'); + if (nextLink && nextLink.href) { + window.location.href = nextLink.href; + event.preventDefault(); + } + break; } } + + // some keyboard layouts may need Shift to get / + switch (event.key) { + case "/": + if (!DOCUMENTATION_OPTIONS.ENABLE_SEARCH_SHORTCUTS) break; + Documentation.focusSearchBar(); + event.preventDefault(); + } }); - } + }, }; // quick alias for translations -_ = Documentation.gettext; +const _ = Documentation.gettext; -$(document).ready(function() { - Documentation.init(); -}); +_ready(Documentation.init); diff --git a/_static/documentation_options.js b/_static/documentation_options.js index 724e382..b57ae3b 100644 --- a/_static/documentation_options.js +++ b/_static/documentation_options.js @@ -1,7 +1,7 @@ var DOCUMENTATION_OPTIONS = { URL_ROOT: document.getElementById("documentation_options").getAttribute('data-url_root'), VERSION: '', - LANGUAGE: 'None', + LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', FILE_SUFFIX: '.html', diff --git a/_static/language_data.js b/_static/language_data.js index ebe2f03..250f566 100644 --- a/_static/language_data.js +++ b/_static/language_data.js @@ -5,12 +5,12 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ -var stopwords = ["a","and","are","as","at","be","but","by","for","if","in","into","is","it","near","no","not","of","on","or","such","that","the","their","then","there","these","they","this","to","was","will","with"]; +var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; /* Non-minified version is copied as a separate JS file, is available */ @@ -197,101 +197,3 @@ var Stemmer = function() { } } - - - -var splitChars = (function() { - var result = {}; - var singles = [96, 180, 187, 191, 215, 247, 749, 885, 903, 907, 909, 930, 1014, 1648, - 1748, 1809, 2416, 2473, 2481, 2526, 2601, 2609, 2612, 2615, 2653, 2702, - 2706, 2729, 2737, 2740, 2857, 2865, 2868, 2910, 2928, 2948, 2961, 2971, - 2973, 3085, 3089, 3113, 3124, 3213, 3217, 3241, 3252, 3295, 3341, 3345, - 3369, 3506, 3516, 3633, 3715, 3721, 3736, 3744, 3748, 3750, 3756, 3761, - 3781, 3912, 4239, 4347, 4681, 4695, 4697, 4745, 4785, 4799, 4801, 4823, - 4881, 5760, 5901, 5997, 6313, 7405, 8024, 8026, 8028, 8030, 8117, 8125, - 8133, 8181, 8468, 8485, 8487, 8489, 8494, 8527, 11311, 11359, 11687, 11695, - 11703, 11711, 11719, 11727, 11735, 12448, 12539, 43010, 43014, 43019, 43587, - 43696, 43713, 64286, 64297, 64311, 64317, 64319, 64322, 64325, 65141]; - var i, j, start, end; - for (i = 0; i < singles.length; i++) { - result[singles[i]] = true; - } - var ranges = [[0, 47], [58, 64], [91, 94], [123, 169], [171, 177], [182, 184], [706, 709], - [722, 735], [741, 747], [751, 879], [888, 889], [894, 901], [1154, 1161], - [1318, 1328], [1367, 1368], [1370, 1376], [1416, 1487], [1515, 1519], [1523, 1568], - [1611, 1631], [1642, 1645], [1750, 1764], [1767, 1773], [1789, 1790], [1792, 1807], - [1840, 1868], [1958, 1968], [1970, 1983], [2027, 2035], [2038, 2041], [2043, 2047], - [2070, 2073], [2075, 2083], [2085, 2087], [2089, 2307], [2362, 2364], [2366, 2383], - [2385, 2391], [2402, 2405], [2419, 2424], [2432, 2436], [2445, 2446], [2449, 2450], - [2483, 2485], [2490, 2492], [2494, 2509], [2511, 2523], [2530, 2533], [2546, 2547], - [2554, 2564], [2571, 2574], [2577, 2578], [2618, 2648], [2655, 2661], [2672, 2673], - [2677, 2692], [2746, 2748], [2750, 2767], [2769, 2783], [2786, 2789], [2800, 2820], - [2829, 2830], [2833, 2834], [2874, 2876], [2878, 2907], [2914, 2917], [2930, 2946], - [2955, 2957], [2966, 2968], [2976, 2978], [2981, 2983], [2987, 2989], [3002, 3023], - [3025, 3045], [3059, 3076], [3130, 3132], [3134, 3159], [3162, 3167], [3170, 3173], - [3184, 3191], [3199, 3204], [3258, 3260], [3262, 3293], [3298, 3301], [3312, 3332], - [3386, 3388], [3390, 3423], [3426, 3429], [3446, 3449], [3456, 3460], [3479, 3481], - [3518, 3519], [3527, 3584], [3636, 3647], [3655, 3663], [3674, 3712], [3717, 3718], - [3723, 3724], [3726, 3731], [3752, 3753], [3764, 3772], [3774, 3775], [3783, 3791], - [3802, 3803], [3806, 3839], [3841, 3871], [3892, 3903], [3949, 3975], [3980, 4095], - [4139, 4158], [4170, 4175], [4182, 4185], [4190, 4192], [4194, 4196], [4199, 4205], - [4209, 4212], [4226, 4237], [4250, 4255], [4294, 4303], [4349, 4351], [4686, 4687], - [4702, 4703], [4750, 4751], [4790, 4791], [4806, 4807], [4886, 4887], [4955, 4968], - [4989, 4991], [5008, 5023], [5109, 5120], [5741, 5742], [5787, 5791], [5867, 5869], - [5873, 5887], [5906, 5919], [5938, 5951], [5970, 5983], [6001, 6015], [6068, 6102], - [6104, 6107], [6109, 6111], [6122, 6127], [6138, 6159], [6170, 6175], [6264, 6271], - [6315, 6319], [6390, 6399], [6429, 6469], [6510, 6511], [6517, 6527], [6572, 6592], - [6600, 6607], [6619, 6655], [6679, 6687], [6741, 6783], [6794, 6799], [6810, 6822], - [6824, 6916], [6964, 6980], [6988, 6991], [7002, 7042], [7073, 7085], [7098, 7167], - [7204, 7231], [7242, 7244], [7294, 7400], [7410, 7423], [7616, 7679], [7958, 7959], - [7966, 7967], [8006, 8007], [8014, 8015], [8062, 8063], [8127, 8129], [8141, 8143], - [8148, 8149], [8156, 8159], [8173, 8177], [8189, 8303], [8306, 8307], [8314, 8318], - [8330, 8335], [8341, 8449], [8451, 8454], [8456, 8457], [8470, 8472], [8478, 8483], - [8506, 8507], [8512, 8516], [8522, 8525], [8586, 9311], [9372, 9449], [9472, 10101], - [10132, 11263], [11493, 11498], [11503, 11516], [11518, 11519], [11558, 11567], - [11622, 11630], [11632, 11647], [11671, 11679], [11743, 11822], [11824, 12292], - [12296, 12320], [12330, 12336], [12342, 12343], [12349, 12352], [12439, 12444], - [12544, 12548], [12590, 12592], [12687, 12689], [12694, 12703], [12728, 12783], - [12800, 12831], [12842, 12880], [12896, 12927], [12938, 12976], [12992, 13311], - [19894, 19967], [40908, 40959], [42125, 42191], [42238, 42239], [42509, 42511], - [42540, 42559], [42592, 42593], [42607, 42622], [42648, 42655], [42736, 42774], - [42784, 42785], [42889, 42890], [42893, 43002], [43043, 43055], [43062, 43071], - [43124, 43137], [43188, 43215], [43226, 43249], [43256, 43258], [43260, 43263], - [43302, 43311], [43335, 43359], [43389, 43395], [43443, 43470], [43482, 43519], - [43561, 43583], [43596, 43599], [43610, 43615], [43639, 43641], [43643, 43647], - [43698, 43700], [43703, 43704], [43710, 43711], [43715, 43738], [43742, 43967], - [44003, 44015], [44026, 44031], [55204, 55215], [55239, 55242], [55292, 55295], - [57344, 63743], [64046, 64047], [64110, 64111], [64218, 64255], [64263, 64274], - [64280, 64284], [64434, 64466], [64830, 64847], [64912, 64913], [64968, 65007], - [65020, 65135], [65277, 65295], [65306, 65312], [65339, 65344], [65371, 65381], - [65471, 65473], [65480, 65481], [65488, 65489], [65496, 65497]]; - for (i = 0; i < ranges.length; i++) { - start = ranges[i][0]; - end = ranges[i][1]; - for (j = start; j <= end; j++) { - result[j] = true; - } - } - return result; -})(); - -function splitQuery(query) { - var result = []; - var start = -1; - for (var i = 0; i < query.length; i++) { - if (splitChars[query.charCodeAt(i)]) { - if (start !== -1) { - result.push(query.slice(start, i)); - start = -1; - } - } else if (start === -1) { - start = i; - } - } - if (start !== -1) { - result.push(query.slice(start)); - } - return result; -} - - diff --git a/_static/searchtools.js b/_static/searchtools.js index 0a44e85..97d56a7 100644 --- a/_static/searchtools.js +++ b/_static/searchtools.js @@ -4,22 +4,24 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2022 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ +"use strict"; -if (!Scorer) { - /** - * Simple result scoring code. - */ +/** + * Simple result scoring code. + */ +if (typeof Scorer === "undefined") { var Scorer = { // Implement the following function to further tweak the score for each result - // The function takes a result array [filename, title, anchor, descr, score] + // The function takes a result array [docname, title, anchor, descr, score, filename] // and returns the new score. /* - score: function(result) { - return result[4]; + score: result => { + const [docname, title, anchor, descr, score, filename] = result + return score }, */ @@ -28,9 +30,11 @@ if (!Scorer) { // or matches in the last dotted part of the object name objPartialMatch: 6, // Additive scores depending on the priority of the object - objPrio: {0: 15, // used to be importantResults - 1: 5, // used to be objectResults - 2: -5}, // used to be unimportantResults + objPrio: { + 0: 15, // used to be importantResults + 1: 5, // used to be objectResults + 2: -5, // used to be unimportantResults + }, // Used when the priority is not in the mapping. objPrioDefault: 0, @@ -39,452 +43,495 @@ if (!Scorer) { partialTitle: 7, // query found in terms term: 5, - partialTerm: 2 + partialTerm: 2, }; } -if (!splitQuery) { - function splitQuery(query) { - return query.split(/\s+/); +const _removeChildren = (element) => { + while (element && element.lastChild) element.removeChild(element.lastChild); +}; + +/** + * See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping + */ +const _escapeRegExp = (string) => + string.replace(/[.*+\-?^${}()|[\]\\]/g, "\\$&"); // $& means the whole matched string + +const _displayItem = (item, searchTerms) => { + const docBuilder = DOCUMENTATION_OPTIONS.BUILDER; + const docUrlRoot = DOCUMENTATION_OPTIONS.URL_ROOT; + const docFileSuffix = DOCUMENTATION_OPTIONS.FILE_SUFFIX; + const docLinkSuffix = DOCUMENTATION_OPTIONS.LINK_SUFFIX; + const showSearchSummary = DOCUMENTATION_OPTIONS.SHOW_SEARCH_SUMMARY; + + const [docName, title, anchor, descr, score, _filename] = item; + + let listItem = document.createElement("li"); + let requestUrl; + let linkUrl; + if (docBuilder === "dirhtml") { + // dirhtml builder + let dirname = docName + "/"; + if (dirname.match(/\/index\/$/)) + dirname = dirname.substring(0, dirname.length - 6); + else if (dirname === "index/") dirname = ""; + requestUrl = docUrlRoot + dirname; + linkUrl = requestUrl; + } else { + // normal html builders + requestUrl = docUrlRoot + docName + docFileSuffix; + linkUrl = docName + docLinkSuffix; } + let linkEl = listItem.appendChild(document.createElement("a")); + linkEl.href = linkUrl + anchor; + linkEl.dataset.score = score; + linkEl.innerHTML = title; + if (descr) + listItem.appendChild(document.createElement("span")).innerHTML = + " (" + descr + ")"; + else if (showSearchSummary) + fetch(requestUrl) + .then((responseData) => responseData.text()) + .then((data) => { + if (data) + listItem.appendChild( + Search.makeSearchSummary(data, searchTerms) + ); + }); + Search.output.appendChild(listItem); +}; +const _finishSearch = (resultCount) => { + Search.stopPulse(); + Search.title.innerText = _("Search Results"); + if (!resultCount) + Search.status.innerText = Documentation.gettext( + "Your search did not match any documents. Please make sure that all words are spelled correctly and that you've selected enough categories." + ); + else + Search.status.innerText = _( + `Search finished, found ${resultCount} page(s) matching the search query.` + ); +}; +const _displayNextItem = ( + results, + resultCount, + searchTerms +) => { + // results left, load the summary and display it + // this is intended to be dynamic (don't sub resultsCount) + if (results.length) { + _displayItem(results.pop(), searchTerms); + setTimeout( + () => _displayNextItem(results, resultCount, searchTerms), + 5 + ); + } + // search finished, update title and status message + else _finishSearch(resultCount); +}; + +/** + * Default splitQuery function. Can be overridden in ``sphinx.search`` with a + * custom function per language. + * + * The regular expression works by splitting the string on consecutive characters + * that are not Unicode letters, numbers, underscores, or emoji characters. + * This is the same as ``\W+`` in Python, preserving the surrogate pair area. + */ +if (typeof splitQuery === "undefined") { + var splitQuery = (query) => query + .split(/[^\p{Letter}\p{Number}_\p{Emoji_Presentation}]+/gu) + .filter(term => term) // remove remaining empty strings } /** * Search Module */ -var Search = { - - _index : null, - _queued_query : null, - _pulse_status : -1, - - htmlToText : function(htmlString) { - var virtualDocument = document.implementation.createHTMLDocument('virtual'); - var htmlElement = $(htmlString, virtualDocument); - 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; +const Search = { + _index: null, + _queued_query: null, + _pulse_status: -1, + + htmlToText: (htmlString) => { + const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); + htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() }); + const docContent = htmlElement.querySelector('[role="main"]'); + if (docContent !== undefined) return docContent.textContent; + console.warn( + "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + ); + return ""; }, - init : function() { - var params = $.getQueryParameters(); - if (params.q) { - var query = params.q[0]; - $('input[name="q"]')[0].value = query; - this.performSearch(query); - } + init: () => { + const query = new URLSearchParams(window.location.search).get("q"); + document + .querySelectorAll('input[name="q"]') + .forEach((el) => (el.value = query)); + if (query) Search.performSearch(query); }, - loadIndex : function(url) { - $.ajax({type: "GET", url: url, data: null, - dataType: "script", cache: true, - complete: function(jqxhr, textstatus) { - if (textstatus != "success") { - document.getElementById("searchindexloader").src = url; - } - }}); - }, + loadIndex: (url) => + (document.body.appendChild(document.createElement("script")).src = url), - setIndex : function(index) { - var q; - this._index = index; - if ((q = this._queued_query) !== null) { - this._queued_query = null; - Search.query(q); + setIndex: (index) => { + Search._index = index; + if (Search._queued_query !== null) { + const query = Search._queued_query; + Search._queued_query = null; + Search.query(query); } }, - hasIndex : function() { - return this._index !== null; - }, + hasIndex: () => Search._index !== null, - deferQuery : function(query) { - this._queued_query = query; - }, + deferQuery: (query) => (Search._queued_query = query), - stopPulse : function() { - this._pulse_status = 0; - }, + stopPulse: () => (Search._pulse_status = -1), - startPulse : function() { - if (this._pulse_status >= 0) - return; - function pulse() { - var i; + startPulse: () => { + if (Search._pulse_status >= 0) return; + + const pulse = () => { Search._pulse_status = (Search._pulse_status + 1) % 4; - var dotString = ''; - for (i = 0; i < Search._pulse_status; i++) - dotString += '.'; - Search.dots.text(dotString); - if (Search._pulse_status > -1) - window.setTimeout(pulse, 500); - } + Search.dots.innerText = ".".repeat(Search._pulse_status); + if (Search._pulse_status >= 0) window.setTimeout(pulse, 500); + }; pulse(); }, /** * perform a search for something (or wait until index is loaded) */ - performSearch : function(query) { + performSearch: (query) => { // create the required interface elements - this.out = $('#search-results'); - this.title = $('

' + _('Searching') + '

').appendTo(this.out); - this.dots = $('').appendTo(this.title); - this.status = $('

 

').appendTo(this.out); - this.output = $('
-

Support for separate /usr

+

Support for separate /usr

-
PG
+
PG:

0202

-
Source
+
Source:

QA

-
Reference
+
Reference:

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

-
Reported
+
Reported:

no

@@ -826,18 +847,18 @@ using initramfs, some of the boot and repair functionality can be moved from rootfs to initramfs.

-

Strict multilib layout

+

Strict multilib layout

-
PG
+
PG:

0203

-
Source
+
Source:

QA

-
Reference
+
Reference:

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

-
Reported
+
Reported:

via install-qa-check.d, fatal

@@ -853,18 +874,18 @@ 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

-
PG
+
PG:

0204

-
Source
+
Source:

QA

-
Reference
+
Reference:

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

-
Reported
+
Reported:

via install-qa-check.d, fatal

@@ -879,19 +900,19 @@ 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

-
PG
+
PG:

0205

-
Source
+
Source:

Council, clarified by QA

-
Reference
+
Reference:

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

-
Reported
+
Reported:

via install-qa-check.d

@@ -918,15 +939,15 @@ to the games group, a new group (gamestat) needed to be created to fulfill that purpose.

-

Absolute symbolic link targets

+

Absolute symbolic link targets

-
PG
+
PG:

0206

-
Source
+
Source:

QA

-
Reported
+
Reported:

by repoman and pkgcheck (when ebuild-generated)

@@ -949,17 +970,17 @@ it is mounted in another location, e.g. for the purposes of recovery.

-

Installed files

+

Installed files

-

Installation of small files

+

Installation of small files

-
PG
+
PG:

0301

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -986,15 +1007,15 @@ installed, completion files are not used at all.

-

Installation of static libraries

+

Installation of static libraries

-
PG
+
PG:

0302

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1010,15 +1031,15 @@ it is considered harmful. There is no point in installing static libraries if they are never going to be used.

-

Installation of libtool (.la) files

+

Installation of libtool (.la) files

-
PG
+
PG:

0303

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1032,7 +1053,7 @@ dependencies and no pkg-config files or other tools that provide the list of dependencies to build systems.

It is recommended to use the following one-liner to remove .la files:

-
find "${ED}" -name '*.la' -delete || die
+
find "${ED}" -type f -name '*.la' -delete || die
 

Rationale: libtool files were historically introduced as an attempt @@ -1044,15 +1065,15 @@ and while libtool keeps generating them, they are considered unnecessary and potentially harmful.

-

Virtuals

+

Virtuals

-
PG
+
PG:

0304

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1065,17 +1086,17 @@ be impossible if they installed any files).

-

Keywording and stabilization

+

Keywording and stabilization

-

Rekeywording on dropped keywords

+

Rekeywording on dropped keywords

-
PG
+
PG:

0401

-
Source
+
Source:

QA

-
Reported
+
Reported:

by pkgcheck and repoman

@@ -1089,15 +1110,15 @@ affects other developers who in the future either want to stabilize a new version or to remove an old version.

-

Stabilizing new versions

+

Stabilizing new versions

-
PG
+
PG:

0402

-
Source
+
Source:

QA

-
Reported
+
Reported:

by pkgcheck

@@ -1119,18 +1140,18 @@ is stable and whether arch teams are slacking or stabilization was not requested on remaining architectures in the first place.

-

Removing stable keywords

+

Removing stable keywords

-
PG
+
PG:

0403

-
Source
+
Source:

QA

-
Reference
+
Reference:

https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=126033#Dropping_Stable_KEYWORDs

-
Reported
+
Reported:

n/a

@@ -1144,22 +1165,22 @@ of last rite mails.

-

Language-specific policies

+

Language-specific policies

-

Python

+

Python

-

Eclass usage

+

Eclass usage

-
PG
+
PG:

0501

-
Source
+
Source:

Python project

-
Reference
+
Reference:

https://wiki.gentoo.org/wiki/Project:Python/Eclasses

-
Reported
+
Reported:

by pkgcheck

@@ -1181,18 +1202,18 @@ and variables also make it possible to gracefully retire old implementations with minimal changes to existing ebuilds.

-

Python 2 deprecation

+

Python 2 deprecation

-
PG
+
PG:

0502

-
Source
+
Source:

Python project

-
Reference
+
Reference:

https://wiki.gentoo.org/wiki/Project:Python#Python_2_end-of-life

-
Reported
+
Reported:

no

@@ -1217,17 +1238,17 @@ will cause major upgrade issues.

-

Package Maintainers

+

Package Maintainers

-

Adding new maintainers

+

Adding new maintainers

-
PG
+
PG:

0601

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1248,15 +1269,15 @@ packages ended up being maintained solely by Python, and distinguishing them from packages actually within project’s profile was hard.

-

New packages without a maintainer

+

New packages without a maintainer

-
PG
+
PG:

0602

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1270,15 +1291,15 @@ to increase their maintenance burden by adding new packages and refusing to take care of them.

-

Removing package maintainers

+

Removing package maintainers

-
PG
+
PG:

0603

-
Source
+
Source:

QA

-
Reported
+
Reported:

no

@@ -1302,20 +1323,20 @@ to them silently becoming maintainer-needed).

-

Other metadata variables

+

Other metadata variables

-

Dynamic slots (multislot flag)

+

Dynamic slots (multislot flag)

-
PG
+
PG:

0701

-
Source
+
Source:

QA (inferred from PMS)

-
Reference
+
Reference:

https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#multislot.2FUSE-dependent_SLOT, https://bugs.gentoo.org/174407

-
Reported
+
Reported:

use in global scope triggers fatal error

@@ -1342,18 +1363,18 @@ manager behavior which could include use of unpredictable slot, cache invalidation or explicit errors.

-

HOMEPAGE value must be meaningful

+

HOMEPAGE value must be meaningful

-
PG
+
PG:

0702

-
Source
+
Source:

QA

-
Reference
+
Reference:

https://archives.gentoo.org/gentoo-dev/message/83cc5bbd7bbe8bdf04dd3c3bc7f8a035

-
Reported
+
Reported:

known bad values are reported by pkgcheck

@@ -1373,15 +1394,15 @@ those cases, using the explicit No_homepage marker at least makes it easy to identify such packages.

-

RESTRICT=test for USE=-test

+

RESTRICT=test for USE=-test

-
PG
+
PG:

0703

-
Source
+
Source:

QA

-
Reported
+
Reported:

by pkgcheck

@@ -1407,29 +1428,31 @@ common, and there is little harm in overspecifying it.

-

LICENSE

+

LICENSE

-
PG
+
PG:

0704

-
Source
+
Source:

QA

-
Reported
+
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.

+

The LICENSE variable must explicitly list all licenses pertaining +to the “corresponding source” of the files installed by the package. +This includes all their source code, but also all scripts used to +control compilation and installation. 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.

+

The licenses for files that are neither installed nor used at build +time shall not be listed.

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 @@ -1445,10 +1468,6 @@ 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 @@ -1457,20 +1476,20 @@ by the ebuild, e.g. init.d scripts (usually GPL-2).

-

USE flags

+

USE flags

-

Versioned USE flags

+

Versioned USE flags

-
PG
+
PG:

0801

-
Source
+
Source:

QA

-
Reference
+
Reference:

https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#Versioned_USE_flags

-
Reported
+
Reported:

no

@@ -1490,18 +1509,18 @@ removed since.

-

USE=gui flag

+

USE=gui flag

-
PG
+
PG:

0802

-
Source
+
Source:

QA

-
Reference
+
Reference:

https://archives.gentoo.org/gentoo-dev/message/cf3f5a59ac918335766632bd02438722

-
Reported
+
Reported:

no

@@ -1519,18 +1538,18 @@ afterwards caused issues with packages supporting a choice between multiple GUIs.

-

Underscores in USE flag names

+

Underscores in USE flag names

-
PG
+
PG:

0803

-
Source
+
Source:

Council

-
Reference
+
Reference:

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

-
Reported
+
Reported:

by pkgcheck

@@ -1553,20 +1572,20 @@ or underscores depending on developer’s personal preference.

-

Users and groups

+

Users and groups

-

User and group account policy

+

User and group account policy

-
PG
+
PG:

0901

-
Source
+
Source:

QA

-
Reference
+
Reference:

https://bugs.gentoo.org/702460

-
Reported
+
Reported:

by repoman and pkgcheck (as deprecated eclass)

@@ -1608,7 +1627,7 @@ been reserved for true system users and groups.

-

Indices and tables

+

Indices and tables

  • File system layout
  • File system layout
      diff --git a/dependencies.html b/dependencies.html index 69a0046..39fcf31 100644 --- a/dependencies.html +++ b/dependencies.html @@ -1,11 +1,11 @@ - + - + Dependencies — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,20 +133,20 @@
      -

      Dependencies

      +

      Dependencies

      -

      Optional runtime dependencies

      +

      Optional runtime dependencies

      -
      PG
      +
      PG:

      0001

      -
      Source
      +
      Source:

      QA

      -
      Reference
      +
      Reference:

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

      -
      Reported
      +
      Reported:

      no

      @@ -170,15 +169,15 @@ by the Council but no reference implementation has been written.

      -

      =-dependencies with no revision

      +

      =-dependencies with no revision

      -
      PG
      +
      PG:

      0002

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      by repoman and pkgcheck

      @@ -202,20 +201,20 @@ requesting the latter, it warns developers to reconsider whether they used the correct operator.

      -

      Slot and subslot dependencies

      +

      Slot and subslot dependencies

      -

      on (sub-)slotted packages

      +

      on (sub-)slotted packages

      -
      PG
      +
      PG:

      0011

      -
      Source
      +
      Source:

      QA

      -
      Reference
      +
      Reference:

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

      -
      Reported
      +
      Reported:

      by repoman and pkgcheck

      @@ -241,18 +240,18 @@ to the newest package version available.

      -

      special case: Qt packages

      +

      special case: Qt packages

      -
      PG
      +
      PG:

      0012

      -
      Source
      +
      Source:

      Qt project

      -
      Reference
      +
      Reference:

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

      -
      Reported
      +
      Reported:

      no

      @@ -263,7 +262,7 @@ if your package uses one of the private API parts, and plain -

      proactive use of slot operators

      +

      proactive use of slot operators

      There is an open debate on whether developers should be proactively adding := slot operators on packages that do not define subslots yet.

      @@ -277,18 +276,18 @@ They point out the case of Qt packages as an example.

      -

      Revision bumps on runtime dependency changes

      +

      Revision bumps on runtime dependency changes

      -
      PG
      +
      PG:

      0003

      -
      Source
      +
      Source:

      Council

      -
      Reference
      +
      Reference:

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

      -
      Reported
      +
      Reported:

      no

      @@ -320,17 +319,17 @@ if the package installed by the user still links to libfoo.

      -

      USE dependencies

      +

      USE dependencies

      -

      on packages without the flag

      +

      on packages without the flag

      -
      PG
      +
      PG:

      0021

      -
      Source
      +
      Source:

      QA (inferred from PMS)

      -
      Reported
      +
      Reported:

      by pkgcheck

      @@ -453,7 +452,7 @@ updating its reverse dependencies.

      Gentoo Policy Guide

      @@ -470,11 +469,12 @@ updating its reverse dependencies.

      - © 2001–2022 Gentoo Authors
      + © 2001–2023 Gentoo Authors, Inc.
      Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/deprecation.html b/deprecation.html index d149b80..21c4111 100644 --- a/deprecation.html +++ b/deprecation.html @@ -1,11 +1,11 @@ - + - + Deprecations — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,20 +133,20 @@
      -

      Deprecations

      +

      Deprecations

      -

      Deprecated EAPIs

      +

      Deprecated EAPIs

      -
      PG
      +
      PG:

      1001

      -
      Source
      +
      Source:

      Council

      -
      Reference
      +
      Reference:

      https://gitweb.gentoo.org/repo/gentoo.git/tree/metadata/layout.conf

      -
      Reported
      +
      Reported:

      by pkgcheck and repoman

      @@ -158,15 +157,15 @@ no version bumps are expected.

      in metadata/layout.conf.

      -

      Deprecated eclasses

      +

      Deprecated eclasses

      -
      PG
      +
      PG:

      1003

      -
      Source
      +
      Source:

      individual eclass maintainers

      -
      Reported
      +
      Reported:

      by pkgcheck and repoman

      @@ -257,7 +256,7 @@ inside the eclass files.

      Gentoo Policy Guide

      @@ -274,11 +273,12 @@ inside the eclass files.

      - © 2001–2022 Gentoo Authors
      + © 2001–2023 Gentoo Authors, Inc.
      Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/ebuild-format.html b/ebuild-format.html index 946c42d..2c9f1ee 100644 --- a/ebuild-format.html +++ b/ebuild-format.html @@ -1,11 +1,11 @@ - + - + Ebuild file format — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,17 +133,17 @@
      -

      Ebuild file format

      +

      Ebuild file format

      -

      Coding style

      +

      Coding style

      -
      PG
      +
      PG:

      0101

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      partially via repoman and pkgcheck

      @@ -163,18 +162,18 @@ Consistency avoids unnecessary changes when other developers edit the ebuild.

      -

      Code must be contained within ebuild and eclasses

      +

      Code must be contained within ebuild and eclasses

      -
      PG
      +
      PG:

      0102

      -
      Source
      +
      Source:

      QA

      -
      Reference
      +
      Reference:

      https://bugs.gentoo.org/612630

      -
      Reported
      +
      Reported:

      no

      @@ -190,15 +189,15 @@ 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

      -
      PG
      +
      PG:

      0103

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      by pkgcheck, highlighted as error by gentoo-syntax

      @@ -212,15 +211,15 @@ 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

      -
      PG
      +
      PG:

      0104

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      by pkgcheck

      @@ -235,15 +234,15 @@ it hard to copy-paste part of the URI e.g. to investigate the directory index.

      -

      KEYWORDS must be defined on a single line

      +

      KEYWORDS must be defined on a single line

      -
      PG
      +
      PG:

      0105

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      no

      @@ -256,15 +255,15 @@ ability to process and modify ebuilds, and therefore developers must make sure that it works correctly on their ebuilds.

      -

      LICENSE must not contain variables

      +

      LICENSE must not contain variables

      -
      PG
      +
      PG:

      0106

      -
      Source
      +
      Source:

      QA

      -
      Reported
      +
      Reported:

      no

      @@ -276,6 +275,27 @@ allowed.

      package versions), using variables there has little advantage. On the other hand, variables reduce the usefulness of plain tools such as grep.

      +
      +

      D must be used only in src_install and pkg_preinst

      +
      +
      PG:
      +

      0107

      +
      +
      Source:
      +

      QA

      +
      +
      Reported:
      +

      no

      +
      +
      +

      The D and ED variables must be used only in the src_install +and pkg_preinst phase functions. Exceptions to this policy can be +granted by the QA team.

      +

      Rationale: using D in other phases (e.g. src_configure) is +error-prone and may lead to the path being embedded in files of the +installed image. In addition, the directory pointed to by ${D} +does not exist in other phases.

      +
      @@ -333,6 +353,7 @@ other hand, variables reduce the usefulness of plain tools such as grep.

    • SRC_URI must not refer to HOMEPAGE
    • KEYWORDS must be defined on a single line
    • LICENSE must not contain variables
    • +
    • D must be used only in src_install and pkg_preinst
  • File system layout
  • @@ -361,7 +382,7 @@ other hand, variables reduce the usefulness of plain tools such as grep.

    Gentoo Policy Guide

    @@ -378,11 +399,12 @@ other hand, variables reduce the usefulness of plain tools such as grep.

    - © 2001–2022 Gentoo Authors
    + © 2001–2023 Gentoo Authors, Inc.
    Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/filesystem.html b/filesystem.html index 4823f47..d26f65b 100644 --- a/filesystem.html +++ b/filesystem.html @@ -1,11 +1,11 @@ - + - + File system layout — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,20 +133,20 @@
    -

    File system layout

    +

    File system layout

    -

    Installation paths

    +

    Installation paths

    -
    PG
    +
    PG:

    0201

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    via install-qa-check.d

    @@ -205,19 +204,19 @@ exceptions are:

    -

    Support for separate /usr

    +

    Support for separate /usr

    -
    PG
    +
    PG:

    0202

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    no

    @@ -230,18 +229,18 @@ using initramfs, some of the boot and repair functionality can be moved from rootfs to initramfs.

    -

    Strict multilib layout

    +

    Strict multilib layout

    -
    PG
    +
    PG:

    0203

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    via install-qa-check.d, fatal

    @@ -257,18 +256,18 @@ 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

    -
    PG
    +
    PG:

    0204

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    via install-qa-check.d, fatal

    @@ -283,19 +282,19 @@ 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

    -
    PG
    +
    PG:

    0205

    -
    Source
    +
    Source:

    Council, clarified by QA

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    via install-qa-check.d

    @@ -322,15 +321,15 @@ to the games group, a new group (gamestat) needed to be created to fulfill that purpose.

    -

    Absolute symbolic link targets

    +

    Absolute symbolic link targets

    -
    PG
    +
    PG:

    0206

    -
    Source
    +
    Source:

    QA

    -
    Reported
    +
    Reported:

    by repoman and pkgcheck (when ebuild-generated)

    @@ -436,7 +435,7 @@ it is mounted in another location, e.g. for the purposes of recovery.

    Gentoo Policy Guide

    @@ -453,11 +452,12 @@ it is mounted in another location, e.g. for the purposes of recovery.

    - © 2001–2022 Gentoo Authors
    + © 2001–2023 Gentoo Authors, Inc.
    Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/genindex.html b/genindex.html index ac6a9c5..6de6ee2 100644 --- a/genindex.html +++ b/genindex.html @@ -1,7 +1,7 @@ - + @@ -18,9 +18,8 @@ - - + @@ -167,6 +166,13 @@ + + + @@ -410,7 +414,7 @@

    Gentoo Policy Guide

    @@ -427,11 +431,12 @@
    - © 2001–2022 Gentoo Authors
    + © 2001–2023 Gentoo Authors, Inc.
    Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/use-flags.html b/use-flags.html index 28f4b10..2f09440 100644 --- a/use-flags.html +++ b/use-flags.html @@ -1,11 +1,11 @@ - + - + USE flags — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,20 +133,20 @@
    -

    USE flags

    +

    USE flags

    -

    Versioned USE flags

    +

    Versioned USE flags

    -
    PG
    +
    PG:

    0801

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

    https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#Versioned_USE_flags

    -
    Reported
    +
    Reported:

    no

    @@ -167,18 +166,18 @@ removed since.

    -

    USE=gui flag

    +

    USE=gui flag

    -
    PG
    +
    PG:

    0802

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

    https://archives.gentoo.org/gentoo-dev/message/cf3f5a59ac918335766632bd02438722

    -
    Reported
    +
    Reported:

    no

    @@ -196,18 +195,18 @@ afterwards caused issues with packages supporting a choice between multiple GUIs.

    -

    Underscores in USE flag names

    +

    Underscores in USE flag names

    -
    PG
    +
    PG:

    0803

    -
    Source
    +
    Source:

    Council

    -
    Reference
    +
    Reference:

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

    -
    Reported
    +
    Reported:

    by pkgcheck

    @@ -310,7 +309,7 @@ or underscores depending on developer’s personal preference.

    Gentoo Policy Guide

    @@ -327,11 +326,12 @@ or underscores depending on developer’s personal preference.

    - © 2001–2022 Gentoo Authors
    + © 2001–2023 Gentoo Authors, Inc.
    Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/user-group.html b/user-group.html index 63dd8cb..0698a46 100644 --- a/user-group.html +++ b/user-group.html @@ -1,11 +1,11 @@ - + - + Users and groups — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -131,20 +130,20 @@
    -

    Users and groups

    +

    Users and groups

    -

    User and group account policy

    +

    User and group account policy

    -
    PG
    +
    PG:

    0901

    -
    Source
    +
    Source:

    QA

    -
    Reference
    +
    Reference:

    https://bugs.gentoo.org/702460

    -
    Reported
    +
    Reported:

    by repoman and pkgcheck (as deprecated eclass)

    @@ -255,7 +254,7 @@ been reserved for true system users and groups.

    Gentoo Policy Guide

    @@ -272,11 +271,12 @@ been reserved for true system users and groups.

    - © 2001–2022 Gentoo Authors
    + © 2001–2023 Gentoo Authors, Inc.
    Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the -- cgit v1.2.3-65-gdbad
    • + d + +
    • +
    • dependency
    • File system layout
        @@ -261,7 +261,7 @@ in which the policy can be updated.

        -

        Indices and tables

        +

        Indices and tables

        • Index

        • Search Page

        • @@ -336,7 +336,7 @@ in which the policy can be updated.

          Gentoo Policy Guide

          @@ -353,11 +353,12 @@ in which the policy can be updated.

          - © 2001–2022 Gentoo Authors
          + © 2001–2023 Gentoo Authors, Inc.
          Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/installed-files.html b/installed-files.html index 1dd684d..9406b71 100644 --- a/installed-files.html +++ b/installed-files.html @@ -1,11 +1,11 @@ - + - + Installed files — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,17 +133,17 @@
          -

          Installed files

          +

          Installed files

          -

          Installation of small files

          +

          Installation of small files

          -
          PG
          +
          PG:

          0301

          -
          Source
          +
          Source:

          QA

          -
          Reported
          +
          Reported:

          no

          @@ -171,15 +170,15 @@ installed, completion files are not used at all.

        -

        Installation of static libraries

        +

        Installation of static libraries

        -
        PG
        +
        PG:

        0302

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -195,15 +194,15 @@ it is considered harmful. There is no point in installing static libraries if they are never going to be used.

        -

        Installation of libtool (.la) files

        +

        Installation of libtool (.la) files

        -
        PG
        +
        PG:

        0303

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -217,7 +216,7 @@ dependencies and no pkg-config files or other tools that provide the list of dependencies to build systems.

        It is recommended to use the following one-liner to remove .la files:

        -
        find "${ED}" -name '*.la' -delete || die
        +
        find "${ED}" -type f -name '*.la' -delete || die
         

        Rationale: libtool files were historically introduced as an attempt @@ -229,15 +228,15 @@ and while libtool keeps generating them, they are considered unnecessary and potentially harmful.

        -

        Virtuals

        +

        Virtuals

        -
        PG
        +
        PG:

        0304

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -331,7 +330,7 @@ be impossible if they installed any files).

        Gentoo Policy Guide

        @@ -348,11 +347,12 @@ be impossible if they installed any files).

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/keywords.html b/keywords.html index a955958..26de801 100644 --- a/keywords.html +++ b/keywords.html @@ -1,11 +1,11 @@ - + - + Keywording and stabilization — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,17 +133,17 @@
        -

        Keywording and stabilization

        +

        Keywording and stabilization

        -

        Rekeywording on dropped keywords

        +

        Rekeywording on dropped keywords

        -
        PG
        +
        PG:

        0401

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        by pkgcheck and repoman

        @@ -158,15 +157,15 @@ affects other developers who in the future either want to stabilize a new version or to remove an old version.

        -

        Stabilizing new versions

        +

        Stabilizing new versions

        -
        PG
        +
        PG:

        0402

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        by pkgcheck

        @@ -188,18 +187,18 @@ is stable and whether arch teams are slacking or stabilization was not requested on remaining architectures in the first place.

        -

        Removing stable keywords

        +

        Removing stable keywords

        -
        PG
        +
        PG:

        0403

        -
        Source
        +
        Source:

        QA

        -
        Reference
        +
        Reference:

        https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=126033#Dropping_Stable_KEYWORDs

        -
        Reported
        +
        Reported:

        n/a

        @@ -293,7 +292,7 @@ of last rite mails.

        Gentoo Policy Guide

        @@ -310,11 +309,12 @@ of last rite mails.

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/languages.html b/languages.html index 3cde1c6..c4dec80 100644 --- a/languages.html +++ b/languages.html @@ -1,11 +1,11 @@ - + - + Language-specific policies — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,22 +133,22 @@
        -

        Language-specific policies

        +

        Language-specific policies

        -

        Python

        +

        Python

        -

        Eclass usage

        +

        Eclass usage

        -
        PG
        +
        PG:

        0501

        -
        Source
        +
        Source:

        Python project

        -
        Reference
        +
        Reference:

        https://wiki.gentoo.org/wiki/Project:Python/Eclasses

        -
        Reported
        +
        Reported:

        by pkgcheck

        @@ -171,18 +170,18 @@ and variables also make it possible to gracefully retire old implementations with minimal changes to existing ebuilds.

        -

        Python 2 deprecation

        +

        Python 2 deprecation

        -
        PG
        +
        PG:

        0502

        -
        Source
        +
        Source:

        Python project

        -
        Reference
        +
        Reference:

        https://wiki.gentoo.org/wiki/Project:Python#Python_2_end-of-life

        -
        Reported
        +
        Reported:

        no

        @@ -289,7 +288,7 @@ will cause major upgrade issues.

        Gentoo Policy Guide

        @@ -306,11 +305,12 @@ will cause major upgrade issues.

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/maintainer.html b/maintainer.html index 48449e4..3576471 100644 --- a/maintainer.html +++ b/maintainer.html @@ -1,11 +1,11 @@ - + - + Package Maintainers — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,17 +133,17 @@
        -

        Package Maintainers

        +

        Package Maintainers

        -

        Adding new maintainers

        +

        Adding new maintainers

        -
        PG
        +
        PG:

        0601

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -165,15 +164,15 @@ packages ended up being maintained solely by Python, and distinguishing them from packages actually within project’s profile was hard.

        -

        New packages without a maintainer

        +

        New packages without a maintainer

        -
        PG
        +
        PG:

        0602

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -187,15 +186,15 @@ to increase their maintenance burden by adding new packages and refusing to take care of them.

        -

        Removing package maintainers

        +

        Removing package maintainers

        -
        PG
        +
        PG:

        0603

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        no

        @@ -299,7 +298,7 @@ to them silently becoming maintainer-needed).

        Gentoo Policy Guide

        @@ -316,11 +315,12 @@ to them silently becoming maintainer-needed).

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/motivation.html b/motivation.html index 2f802d7..d818fa2 100644 --- a/motivation.html +++ b/motivation.html @@ -1,11 +1,11 @@ - + - + Motivation and history — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,9 +133,9 @@
        -

        Motivation and history

        +

        Motivation and history

        -

        Historical state of policy documentation

        +

        Historical state of policy documentation

        At the time, Gentoo was lacking a clear and focused document listing all development-related policies in a concise and clear way.

        PMS provided a technical specification for the ebuild files but did @@ -163,7 +162,7 @@ established less or more formally in the past but were never really written down.

        -

        Purpose of the Policy Guide

        +

        Purpose of the Policy Guide

        The Policy Guide was created in order to address aforementioned documentation deficiencies. Its primary purpose is to collect all applicable policies from various sources and combine them into a single @@ -259,7 +258,7 @@ devmanual) should conform to policies stated here.

        Gentoo Policy Guide

        @@ -276,11 +275,12 @@ devmanual) should conform to policies stated here.

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/other-docs.html b/other-docs.html index 1f586f9..f1bfb3f 100644 --- a/other-docs.html +++ b/other-docs.html @@ -1,11 +1,11 @@ - + - + Other policy documents — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,11 +133,11 @@
        -

        Other policy documents

        +

        Other policy documents

        -

        Gentoo-specific documentation

        +

        Gentoo-specific documentation

        -

        Package Manager Specification

        +

        Package Manager Specification

        PMS provides the specification of ebuild format, as well as general guidelines for implementing package managers. All ebuilds in the Gentoo repository are required to conform to the PMS. Tree policies may @@ -148,7 +147,7 @@ in subsequent EAPIs that are approved by the Council. The project’s wiki page discusses how PMS can be changed via future EAPI process.

        -

        GLEPs

        +

        GLEPs

        GLEPs provide the highest level policies applicable to Gentoo. Final or active GLEPs apply to all developers. Tree policies may impose additional restrictions on GLEPs but may not override them.

        @@ -157,7 +156,7 @@ In general, all GLEP updates go through mailing list review and need to be approved by the Council.

        -

        Developer Manual

        +

        Developer Manual

        Devmanual is the basic guide for ebuild developers. Besides policies, it contains many general recommendations and detailed instructions. Developer Manual does not specify policies itself, and needs to comply @@ -167,16 +166,16 @@ recommended that all changes are reviewed by the

        -

        External standards

        +

        External standards

        -

        POSIX

        +

        POSIX

        POSIX is the basic standard for operating systems. However, its rules apply to the software packaged in Gentoo rather than the distribution itself. Nevertheless, when no more specific policy applies, following POSIX is recommended.

        -

        FHS

        +

        FHS

        FHS specifies the suggested filesystem layout for Linux systems. Gentoo follows FHS only partially. Whenever Gentoo policies and FHS disagree, Gentoo policies should be followed.

        @@ -272,7 +271,7 @@ disagree, Gentoo policies should be followed.

        Gentoo Policy Guide

        @@ -289,11 +288,12 @@ disagree, Gentoo policies should be followed.

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/other-metadata.html b/other-metadata.html index ab3be00..0fce736 100644 --- a/other-metadata.html +++ b/other-metadata.html @@ -1,11 +1,11 @@ - + - + Other metadata variables — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -134,20 +133,20 @@
        -

        Other metadata variables

        +

        Other metadata variables

        -

        Dynamic slots (multislot flag)

        +

        Dynamic slots (multislot flag)

        -
        PG
        +
        PG:

        0701

        -
        Source
        +
        Source:

        QA (inferred from PMS)

        -
        Reference
        +
        Reference:

        https://wiki.gentoo.org/index.php?title=Project:Quality_Assurance/Policies&oldid=109991#multislot.2FUSE-dependent_SLOT, https://bugs.gentoo.org/174407

        -
        Reported
        +
        Reported:

        use in global scope triggers fatal error

        @@ -174,18 +173,18 @@ manager behavior which could include use of unpredictable slot, cache invalidation or explicit errors.

        -

        HOMEPAGE value must be meaningful

        +

        HOMEPAGE value must be meaningful

        -
        PG
        +
        PG:

        0702

        -
        Source
        +
        Source:

        QA

        -
        Reference
        +
        Reference:

        https://archives.gentoo.org/gentoo-dev/message/83cc5bbd7bbe8bdf04dd3c3bc7f8a035

        -
        Reported
        +
        Reported:

        known bad values are reported by pkgcheck

        @@ -205,15 +204,15 @@ those cases, using the explicit No_homepage marker at least makes it easy to identify such packages.

        -

        RESTRICT=test for USE=-test

        +

        RESTRICT=test for USE=-test

        -
        PG
        +
        PG:

        0703

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        Reported:

        by pkgcheck

        @@ -239,29 +238,31 @@ common, and there is little harm in overspecifying it.

        -

        LICENSE

        +

        LICENSE

        -
        PG
        +
        PG:

        0704

        -
        Source
        +
        Source:

        QA

        -
        Reported
        +
        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.

        +

        The LICENSE variable must explicitly list all licenses pertaining +to the “corresponding source” of the files installed by the package. +This includes all their source code, but also all scripts used to +control compilation and installation. 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.

        +

        The licenses for files that are neither installed nor used at build +time shall not be listed.

        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 @@ -277,10 +278,6 @@ 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 @@ -370,7 +367,7 @@ by the ebuild, e.g. init.d scripts (usually GPL-2).

        Gentoo Policy Guide

        @@ -387,11 +384,12 @@ by the ebuild, e.g. init.d scripts (usually GPL-2).

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/preface.html b/preface.html index f9a01d6..42fd093 100644 --- a/preface.html +++ b/preface.html @@ -1,11 +1,11 @@ - + - + Preface — Gentoo Policy Guide documentation @@ -19,9 +19,8 @@ - - + @@ -138,9 +137,9 @@
        -

        Preface

        +

        Preface

        -

        Introduction

        +

        Introduction

        Gentoo Policy Guide aims to become a definitive clear source of all Tree Policies that are currently binding to Gentoo developers. It combines both policies that are global by design (i.e. set by the QA @@ -150,15 +149,16 @@ indication of the body setting the policy, and therefore the process in which the policy can be updated.

        -

        Authors

        +

        Authors

        This document is maintained by the Gentoo QA project.

        The current text authors are:

        • Michał Górny (mgorny)

        • +
        • Ulrich Müller (ulm)

        -

        License

        +

        License

        This work is licensed under the Creative Commons Attribution-ShareAlike 4.0 International License.

        @@ -244,7 +244,7 @@ in which the policy can be updated.

        Gentoo Policy Guide

        @@ -261,11 +261,12 @@ in which the policy can be updated.

        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/search.html b/search.html index 4250a1a..bb9f4ce 100644 --- a/search.html +++ b/search.html @@ -1,7 +1,7 @@ - + @@ -19,9 +19,8 @@ - - + @@ -190,7 +189,7 @@

        Gentoo Policy Guide

        @@ -207,11 +206,12 @@
        - © 2001–2022 Gentoo Authors
        + © 2001–2023 Gentoo Authors, Inc.
        Gentoo is a trademark of the Gentoo Foundation, Inc. The contents of this document, unless otherwise expressly stated, are licensed under the diff --git a/searchindex.js b/searchindex.js index 460a4aa..2aab29a 100644 --- a/searchindex.js +++ b/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["basics","dependencies","deprecation","ebuild-format","filesystem","index","installed-files","keywords","languages","maintainer","motivation","other-docs","other-metadata","preface","use-flags","user-group"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":5,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,"sphinx.ext.todo":2,sphinx:56},filenames:["basics.rst","dependencies.rst","deprecation.rst","ebuild-format.rst","filesystem.rst","index.rst","installed-files.rst","keywords.rst","languages.rst","maintainer.rst","motivation.rst","other-docs.rst","other-metadata.rst","preface.rst","use-flags.rst","user-group.rst"],objects:{},objnames:{},objtypes:{},terms:{"0":[13,15],"0001":1,"0002":1,"0003":1,"0011":1,"0012":1,"0021":1,"0101":3,"0102":3,"0103":3,"0104":3,"0105":3,"0106":3,"0201":4,"0202":4,"0203":4,"0204":4,"0205":4,"0206":4,"0301":6,"0302":6,"0303":6,"0304":6,"0401":7,"0402":7,"0403":7,"0501":8,"0502":8,"0601":9,"0602":9,"0603":9,"0701":12,"0702":12,"0703":12,"0704":12,"0801":14,"0802":14,"0803":14,"08gentoo":4,"0901":15,"1":[1,11],"100":[1,15],"1001":2,"1003":2,"101":15,"104017":1,"109991":[12,14],"126033":7,"174407":12,"2":[1,5,12,14],"2013":4,"20130813":4,"20130924":4,"20151011":[1,4],"20151213":4,"2016":12,"2019":8,"20191013":14,"2fuse":12,"3":[1,8,14],"4":[1,13],"48":0,"499":15,"5":1,"612630":3,"62":1,"64":4,"702460":15,"749":15,"80librari":4,"80multilib":4,"81":15,"83cc5bbd7bbe8bdf04dd3c3bc7f8a035":12,"90":7,"999":15,"9cae3a92412a007febe7ac0612d50f5f":1,"break":[3,8],"case":[0,4,5,7,12],"class":0,"default":[1,6],"do":[1,3,6,8,12],"final":[0,10,11],"function":[0,3,4,8],"g\u00f3rny":13,"import":[1,8,12,15],"long":[1,7,8,12],"micha\u0142":13,"new":[2,4,5,8,10,14,15],"public":1,"static":[5,12],"switch":14,"true":15,"try":[0,3,9],"var":4,"while":[0,1,3,6,12],A:15,As:4,At:10,By:[0,1],For:[1,4,9],If:[0,1,3,4,6,7,9,12,14,15],In:[0,1,4,8,11,12,14],It:[0,1,3,5,6,8,9,10,12,13,14,15],Its:[0,10],On:3,Such:[6,12],The:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],There:[1,6,9,10],With:4,abi:[1,4],abil:[3,10,12],abolish:0,about:[6,12],absolut:5,accept:[1,4,12,15],access:4,accident:8,accord:1,account:[1,3,5],acct:15,achiev:0,across:[0,10],action:0,activ:11,actual:9,ad:[1,4,5,6,15],add:[3,9],addit:[3,4,6,10,11],addition:0,address:10,adjust:14,adopt:15,advantag:[3,14],affect:[0,3,7,12],aforement:[4,10],after:[0,1,4],afterward:14,against:[0,3,10,12],agre:9,aid:15,aim:[0,1,5,9,13,14],align:3,all:[0,1,3,5,6,7,8,9,10,11,12,13,14,15],alloc:15,allow:[3,12],along:[4,10],alreadi:[1,4,8,12],also:[0,6,8,10,14],alter:12,alwai:[3,4],amd64:4,amount:10,an:[1,3,4,6,7,9,10,14,15],analyz:0,ani:[1,3,6,9,10,11,12,14],anoth:[1,4,12],anymor:[4,7],anywher:12,api:1,app:6,appeal:5,append:3,appli:[0,1,7,9,10,11],applic:[1,4,6,10,11,12],appropri:[4,12],approv:[1,11,15],ar:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15],arbitrari:15,arch:[3,7],architectur:[0,4,7],archiv:[1,6,12,14],area:0,argu:1,aris:[10,14,15],ask:[0,7],assign:[6,9,15],assum:[1,14],assumpt:[6,12],attempt:[3,6,10,14],attribut:13,author:5,autom:0,autotool:6,avail:[1,10,12,14],avoid:[3,6],awar:9,backup:9,bad:[1,4,12],base:6,baselayout:15,bash:[3,6],basic:[5,11],becom:[1,5,9,13],been:[1,4,6,12,14,15],befor:[0,7,14,15],behavior:[0,1,6,12],being:[1,6,7,8,9,12],besid:11,better:[8,10],between:[4,8,12,14,15],bin:4,binari:12,bind:[5,10,13],bit:4,blurri:4,bodi:[0,5,10,13],boot:4,both:[0,3,5,6,8,13,14],boundari:4,bracket:3,breakag:[1,7],broken:4,brought:6,browser:4,bug:[3,7,9,12,15],build:[0,1,4,6,8,12,14],builtin:3,bump:[2,5,15],bundl:12,burden:9,cach:12,call:[1,8],can:[0,1,4,5,7,10,11,12,13,14,15],care:9,categori:6,caus:[1,6,7,8,12,14],cc:7,certain:6,cf3f5a59ac918335766632bd02438722:14,chanc:[8,9],chang:[3,5,8,11],check:[1,4,5],choic:[3,14],choos:[12,14],chosen:15,chost:4,ci:0,circumst:[1,12],claim:1,clarifi:4,clean:1,clear:[5,10,13,14],close:7,co:0,code:[0,1,5,8,12],collect:10,collis:15,combin:[0,5,10,12,13],comment:9,commit:0,common:[1,3,12,13],compar:9,compat:[4,8],compil:0,complet:[6,10,12],compli:11,complianc:5,compon:0,concept:0,concis:10,condit:[3,12],conf:2,config:6,conform:[10,11],confus:[3,7,14],consent:9,consequ:6,consid:[6,12,14],consist:[0,3,8,14],construct:3,contact:0,contain:[5,9,11,14],content:3,context:6,contrari:12,contribut:0,control:[1,4,6,12,14],controlled_optional_rdepend:1,convert:[3,14],copi:3,correct:[1,4,12],correctli:[0,3,4],correspond:[1,4],cost:[6,8],could:[6,9,12],council:[0,1,2,4,5,10,11,13,14],cover:12,creat:[0,4,10,11,14,15],creativ:13,cross:15,ctarget:4,cumbersom:1,current:[0,2,4,5,9,13],d:[4,12],dai:7,data:4,de:10,debat:1,decid:[1,12],decis:[0,10],declar:12,dedic:[9,12],defer:8,defici:10,defin:[1,5,8,11,14],definit:[5,13],delai:[8,15],delet:6,depclean:12,depend:[3,5,6,7,8,12,14],dependent_slot:12,deprec:[5,15],deriv:12,design:[3,5,13],desir:15,detail:11,detect:[0,1],dev:[1,4,9,12,14],develop:[0,1,3,4,5,7,9,10,13,14,15],devmanu:[10,11],did:[6,10,12],die:6,differ:[0,1,3,12],difficult:4,direct:[0,12],directli:[0,8,10],directori:[3,4],disabl:[1,12],disagre:[0,11],disciplinari:0,discourag:[6,14],discov:14,discuss:[11,14],distinguish:[9,14],distribut:[4,11],distro:15,doc:4,document:[0,5,12,13],doe:[1,6,7,9,11,12],done:11,dosym:4,doubt:[0,15],down:[0,10],download:12,downward:15,drop:[5,9],dropping_stable_keyword:7,due:[1,4,6,7],duplic:7,dure:[1,4],dynam:[1,3,4,5,15],e:[0,1,3,4,5,6,7,10,12,13,14],each:[0,1,10,12],eapi:[5,11],earli:[4,8],easi:[0,12],easier:[0,14],easili:9,eblit:3,ebuild:[0,1,2,4,5,6,8,10,11,12],eclass:[1,5,12,15],eclassdoc:2,ed:[6,7],edit:[3,10],editor:3,educ:0,effect:12,effort:[0,7],eight:10,either:[1,4,6,7,8,12,14],ekeyword:3,elog:1,emerg:12,empti:6,enabl:[1,6,12,14],encourag:3,end:[0,8,9,14],enforc:[3,5,11,12],enough:12,ensur:[1,4,8,12],entri:[3,15],equal:1,equival:1,error:[1,3,12],especi:[1,4],establish:10,etc:[0,3,4],eval:3,even:[1,12,14],everi:10,exampl:[1,4,6,9,12],except:[1,3,4,7],execut:[0,4,12],exempt:7,exist:[1,2,8,12,14,15],expect:[0,2],experi:0,experienc:[0,1],experiment:7,explan:10,explicit:[1,3,12],explicitli:[1,3,6,8,9,10,12,14,15],exponenti:8,express:[12,14],extend:14,extern:[3,5],fact:1,facto:10,fail:12,fallback:6,far:[0,10,12],fatal:[4,12],favor:15,featur:[1,12],few:[3,14],fh:5,file:[0,2,5,7,9,10,12],filesystem:[4,11],find:[6,9,10,12],first:[6,7],fit:9,fix:[0,9,15],flag:[0,5,6],flat:[10,14],flip:1,focu:0,focus:[0,10],follow:[0,4,6,7,9,11,15],foo:[1,3],forbidden:[3,9,12],form:[3,10,14],formal:10,format:[5,11,12],former:[1,10],found:[4,10],free:15,frequent:[8,9],frobnic:4,from:[1,3,4,7,9,10,12,15],fulfil:4,full:[4,6],fulli:3,further:[0,15],furthermor:[1,3,4,9,10,12],futur:[1,7,9,11,14,15],g:[0,1,3,4,6,7,10,12,14],game:5,gamestat:4,gap:15,gener:[3,4,6,11,12,14],gentoo:[0,1,2,3,4,7,8,9,10,12,13,14,15],get:1,gid:15,git:[2,4],github:3,gitweb:[2,4],give:8,glep:[0,1,5,15],global:[5,12,13,14],gnu:4,go:[6,10,11],goal:[5,6],goe:3,good:[1,4,12,15],govern:0,gpl:12,grab:9,gracefulli:[8,12],grant:4,graph:[1,7,8],grep:[3,9],group:[4,5,9],grow:8,gtk2:[1,14],gtk3:14,gtk:14,guarante:[8,12],gui:5,guid:[11,13],guidelin:[4,11],guix:4,ha:[1,3,4,6,8,12,14,15],hack:4,had:[1,7],hand:3,handl:[8,12],hard:[3,9,10,12,14],hardcod:[4,6],harder:3,harm:[6,12],have:[1,3,6,7,8,12,15],he:6,help:[0,1,3,9],helper:8,here:[6,7,10],hi:[0,8],hierarch:14,hierarchi:4,high:4,highest:11,highlight:3,histor:[1,3,4,5,6,12,14,15],histori:5,hold:4,homepag:5,host:4,hour:6,how:[1,10,11],howev:[6,7,10,11,12],http:[1,2,3,4,7,8,12,14,15],huge:6,hyphen:14,i:[0,1,3,5,12,13,14],idea:1,identifi:12,imag:6,imit:14,immedi:[1,7],immin:15,implement:[0,1,8,11,12],impli:4,implicit:3,implicitli:1,impos:11,imposs:6,improv:14,inappropri:9,incident:3,includ:[0,1,3,4,6,9,12],inconsist:4,increas:[1,9],indent:3,independ:7,index:[1,3,5,7,12,14],indic:[0,1,2,4,10,13],individu:[2,3],infer:[1,12],inform:[1,5,9,10,12],init:12,initramf:4,insid:2,instal:[0,1,5,8,12,14],install_mask:6,instead:[1,4,8],instruct:11,intend:10,interchang:1,interest:[7,9],intern:13,introduc:[6,8,14],introduct:[5,14],invalid:12,invari:12,investig:3,involv:0,ish:3,isol:4,issu:[0,6,8,14],its:[1,4,8,10,11],itself:[3,11],ius:12,job:12,justifi:15,keep:6,kept:7,keyword:5,kind:0,knowledg:9,known:[0,7,12],la:[4,5],lack:10,languag:5,larg:[3,9,10],larger:4,last:[7,9],later:8,latter:[1,4,10,12,14],layout:[2,5,11],lead:15,least:[1,3,7,12],leav:[3,15],lengthen:14,less:[0,3,10,12],level:[3,4,11],lib64:4,lib:[1,4,6],libbar:1,libexec:4,libfoo:1,libfrobn:1,libpython:8,librari:[1,5],libreoffic:6,libtool:5,licens:[5,6],life:8,like:14,likeli:0,likewis:1,limit:[0,3],line:5,liner:6,link:[1,5,6,8,12],linker:[0,4],lint:[0,3],linux:11,list:[0,2,4,6,9,10,11,12,15],liter:3,littl:[3,12],load:3,loader:[4,6],local:[6,14],locat:[3,5,6,12],log:[1,4,10,14],logic:[1,10],longer:[1,4,9],lose:[1,8],lost:9,lot:10,low:14,lowest:15,made:[4,14],mai:[1,4,6,11,14],mail:[0,7,9,11],maintain:[0,2,4,5,7,8,10,11,13],mainten:[3,8,9],major:[0,8,11,12,15],make:[1,3,4,5,6,8,9,10,12,14],manag:[0,1,4,5,6,12],mani:[1,4,6,8,9,11,12],manual:[5,14],marker:12,match:[1,8,15],mean:[1,14],meaning:5,meant:[5,7,9,13],measur:0,meet:[1,4,10,14],member:[0,9],mention:10,mere:9,messag:[1,12,14],metadata:[2,4,5,9],method:3,mgorni:13,might:6,migrat:[2,15],minim:8,minor:[0,7],mismatch:14,miss:[1,12],mistak:[0,1,12],modern:4,modifi:3,modul:8,moment:1,more:[3,6,10,11,12,14],most:3,motiv:5,mount:4,move:[3,4],mtab:4,much:[6,12],multi:3,multilib:5,multipl:[3,12,14],multislot:5,must:[1,4,5,6,7,8,9,14,15],n:7,name:[3,4,5,6],necessari:[1,6,9,14],need:[1,4,6,9,10,11,12,14,15],needless:1,neg:[6,7],neglect:7,neither:9,never:[4,6,10],nevertheless:11,newer:2,newest:1,newli:14,next:15,nix:4,no_homepag:12,non:[0,1,3,4,7,10,12],nonfunct:1,nor:[1,9],normal:[4,12],noth:12,notic:[1,6],number:[3,8,9,15],obsolet:10,obtain:14,offer:14,often:[7,9],old:[1,4,7,8,9,12],oldid:[1,7,12,14],omit:12,onc:[1,3,7,9],one:[1,4,6,7,8,9,12],ones:15,onli:[1,3,4,6,7,10,11,12],open:[1,15],oper:[5,11],oppon:1,opportun:1,opt:4,optfeatur:1,optim:6,option:[5,12,14],order:[0,1,4,6,8,10,12],org:[1,2,3,4,7,8,12,14,15],organ:10,origin:[9,10,12],other:[0,1,3,4,5,6,7,8,9,10,13,14],otherwis:[1,6],out:[1,8,9,10,14],over:[0,7],overlai:12,overlap:3,overrid:[0,11],overspecifi:12,own:4,ownership:5,packag:[0,2,3,4,5,6,7,8,12,14,15],page:[3,5,10,11],paludi:1,parallel:12,part:[1,3,4,10],partial:[3,10,11],particular:[6,10],partit:4,past:[3,10],path:[0,5,6],per:14,period:0,permit:[1,3,4,9,12],person:[0,7,14],pf:4,pg:[1,2,3,4,6,7,8,9,12,14,15],phase:[0,3,8,14],php:[1,7,12,14],pkg:6,pkgcheck:[0,1,2,3,4,7,8,12,14,15],place:[1,6,7],plain:[1,3],pleas:[9,12],plugin:6,pm:[1,10,11,12],point:[1,4,6,10],pointless:15,polici:[1,6,7,9,12,13,14],port:8,portabl:[0,1,6],portag:[1,4],posix:[3,5],possibl:[0,1,3,8,9,10],potenti:[6,12],practic:[0,6],pre:12,precis:10,predict:1,prefac:5,prefer:[1,8,14],prepar:8,preprocess:3,prerequisit:12,present:12,prevent:[1,9,15],previou:[0,1,7],primari:[10,12],primit:15,principl:3,prioriti:14,privat:1,privileg:4,proactiv:[2,5],problem:[0,1],proc:4,proceed:7,process:[3,5,7,11,13,15],profil:[4,9],program:[6,8,9],proj:4,project:[0,1,3,4,5,6,7,8,9,10,11,12,13,14],prolifer:6,prone:3,propag:1,proper:14,propon:1,propos:1,protect:12,provid:[0,6,8,10,11,12,15],pull:1,purpos:[4,5,12],push:[0,15],pypi:3,python:[5,9],python_2_end:8,python_compat:8,python_gen_cond_dep:8,python_single_target:8,python_single_usedep:8,python_target:8,python_usedep:8,qa:[0,1,3,4,5,6,7,9,10,12,13,14,15],qt4:14,qt5:14,qt:5,qualiti:0,quality_assur:[1,7,12,14],queri:[10,12],question:[0,1,4,7,9,12],r0:1,r1:[1,8],r3:1,rang:[1,15],rapid:15,rather:[3,10,11,14],rational:[1,3,4,5,6,7,8,9,10,12,13,14,15],reach:8,readabl:4,readi:8,readm:1,realli:[6,10],reason:[1,4,15],reassign:9,rebuild:[1,6],recommend:[3,6,11,14,15],reconsid:1,recoveri:[4,6],reduc:[0,3,8],refer:[1,2,4,5,7,8,10,12,14,15],refin:1,refus:[0,9],regard:0,regular:[14,15],reject:10,rekeyword:5,rel:4,relat:[0,10],relev:[0,7,12],reli:[1,4,6],reliabl:[0,8],remain:7,rememb:12,remov:[1,5,6,8,12,14,15],render:3,repair:4,repeat:[0,3],replac:[6,10,14],repo:[2,4],repoman:[0,1,2,3,4,7,15],report:[0,1,2,3,4,6,7,8,9,12,14,15],repositori:[0,10,11,12],request:[0,1,7,15],requir:[1,4,6,8,10,11,12,15],resembl:14,reserv:[6,14,15],resign:9,resolv:[0,12],respond:7,respons:[1,12,14,15],restrict:[1,4,5,10,11],result:[1,15],retest:7,retir:8,reus:15,revers:[1,6,8],review:[11,15],revis:[4,5],risk:0,rite:7,role:0,root:4,rootf:4,rule:[3,7,11,12,14,15],run:[0,4],runtim:[5,8,12],s:[1,9,11,12,14],same:[0,12,15],sbin:4,scale:10,scan:0,scatter:10,scope:12,score:4,script:[4,8,12],search:5,second:15,section:1,secur:6,select:15,self:4,send:9,separ:[5,12],serv:15,servic:[0,6],set:[1,3,5,10,13,14],setgid:4,setup:[0,4],share:[4,6],sharealik:13,shell:6,shorter:14,should:[0,1,2,4,6,7,8,10,11,12,14,15],side:1,silent:9,similar:12,simpl:[14,15],simplest:12,simpli:1,simplifi:15,simultan:12,sinc:[3,4,6,12,14],singl:[5,10,12],size:6,skip:12,slack:7,slot:[5,8],small:[4,5,9],smaller:6,so:[0,4,6,10,12],softwar:[0,4,11],sole:9,solut:1,some:[4,6,7,10,12],soon:8,sooner:8,sourc:[1,2,3,4,5,6,7,8,9,10,12,13,14,15],space:[4,12],span:1,special:[4,5,12,14],specif:[0,1,5,6,10,12,13,14],specifi:[1,3,11,12],spend:6,spirit:10,split:9,src:4,src_uri:5,srv:4,stabil:5,stabl:[1,5],stale:10,standard:[3,5],start:[1,10,15],state:[4,5,12],still:[1,4,7,14],store:2,strict:5,strictli:[4,12],strip:6,strongli:6,style:[1,5],sub:5,subdirectori:4,subpag:12,subsequ:11,subset:7,subslot:5,subtli:4,success:15,suffer:9,suffici:10,suffix:4,suggest:11,summari:[1,4,14],supplement:[0,6],suppli:[5,13],support:[0,1,3,5,6,8,12,14],suppos:4,sure:[3,9],surpris:[0,3],symbol:5,symlink:4,sync:15,synchron:15,syntax:3,system:[0,5,6,11,12,15],systemd:[0,6],t:1,tab:3,tag:2,take:[0,1,7,9],target:5,task:0,team:[0,3,4,5,7,9,10,13,14],technic:[4,6,9,10,11,12,14],temporarili:12,tent:1,term:8,termin:3,test:[0,3,5],text:13,than:[0,3,6,8,10,11,14],thei:[0,1,4,6,7,9,12,14],them:[0,4,6,9,10,11,14],themselv:6,therefor:[1,3,4,5,10,13],thi:[0,1,3,4,6,7,9,10,11,12,13,14,15],those:[0,3,4,8,9,12],three:[0,1],through:[8,11],tild:1,time:[0,1,7,8,10,12],timefram:1,tini:6,tip:10,titl:[1,7,12,14],todai:6,toggl:1,tool:[0,1,3,6],toolchain:[4,12],toolkit:14,top:4,tracker:12,tree:[0,2,4,5,10,11,13],trigger:[0,12],triplet:4,trivial:[0,12],turn:[10,12],two:[0,12],txt:[1,4,14,15],udev:4,uid:15,unclear:10,uncommon:[1,6],uncondition:[6,12],undefin:12,under:[1,12,13],underscor:5,understand:10,unfair:9,unit:[0,6],unless:[1,6,8,9,15],unmaintain:9,unnecessari:[3,6,7,8,14],unnecessarili:[1,14],unpredict:12,unprefix:14,unreli:1,unset:12,until:8,unus:3,unwilling:0,up:9,updat:[1,2,5,10,11,13,15],upgrad:[8,12],upon:11,upstream:[4,8,12],upward:15,uri:3,us:[0,2,3,4,5,6,8,9,10,15],usag:[1,5,10],use_expand:14,user:[0,1,4,5,6,8,9,12,14],usr:5,usual:[1,12],v2:1,valid:14,valu:[1,3,4,5],variabl:[5,6,8],variant:4,variou:[0,9,10,14],verbatim:3,veri:[1,4,6,9,10,14,15],verifi:[1,12],version:[1,2,3,4,5,12,15],versioned_use_flag:14,via:[3,4,10,11,12,14,15],violat:[0,12],virtual:5,wa:[0,4,7,9,10,12],wai:[1,10,12,14],want:[7,14],warn:1,wast:4,we:[1,3,12],web:[4,12],well:[3,5,7,10,11,12,13],were:[1,3,6,7,10,12,15],what:9,when:[0,1,2,3,4,6,9,11,12,14],whenev:[1,3,4,6,7,11,12,14],where:4,whether:[0,1,7],which:[1,3,5,6,7,10,12,13,14],who:[1,6,7,9,10,14],whole:8,why:9,wide:0,wider:10,widget:14,width:3,wiki:[1,7,8,10,11,12,14],wildcard:1,wish:[6,14],within:[1,4,5,7,9,14],without:[0,3,4,5],word:10,work:[0,3,4,7,12,13,14],world:4,wors:9,would:[4,6,10],wrap:3,writabl:4,written:[0,1,9,10],wrong:[4,12],www:12,x:14,xml:9,yet:1,you:1,your:1,zeroth:1},titles:["Basic information","Dependencies","Deprecations","Ebuild file format","File system layout","Gentoo Policy Guide","Installed files","Keywording and stabilization","Language-specific policies","Package Maintainers","Motivation and history","Other policy documents","Other metadata variables","Preface","USE flags","Users and groups"],titleterms:{"2":8,"case":1,"new":[7,9],"static":[4,6],absolut:4,account:15,ad:9,appeal:0,author:13,basic:0,bump:1,chang:[0,1],check:0,code:3,complianc:0,contain:3,content:5,defin:3,depend:1,deprec:[2,8],develop:11,document:[10,11],drop:7,dynam:12,eapi:2,ebuild:3,eclass:[2,3,8],enforc:0,extern:11,fh:11,file:[3,4,6],flag:[1,12,14],format:3,game:4,gentoo:[5,11],glep:11,goal:0,group:15,gui:14,guid:[5,10],histor:10,histori:10,homepag:[3,12],indic:5,inform:0,instal:[4,6],introduct:13,keyword:[3,7],la:6,languag:8,layout:4,librari:[4,6],libtool:[4,6],licens:[3,12,13],line:3,link:4,locat:4,maintain:9,make:0,manag:11,manual:11,meaning:12,metadata:12,motiv:10,multilib:4,multislot:12,must:[3,12],name:14,oper:1,option:1,other:[11,12],ownership:4,packag:[1,9,11],path:4,polici:[0,5,8,10,11,15],posix:11,prefac:13,proactiv:1,purpos:10,python:8,qt:1,refer:3,rekeyword:7,remov:[7,9],restrict:12,revis:1,runtim:1,separ:4,singl:3,slot:[1,12],small:6,special:1,specif:[8,11],src_uri:3,stabil:7,stabl:7,standard:11,state:10,strict:4,style:3,sub:1,subslot:1,support:4,symbol:4,system:4,tabl:5,target:4,test:12,todo:[4,7,14],underscor:14,us:[1,12,14],usag:8,user:15,usr:4,valu:12,variabl:[3,12],version:[7,14],virtual:6,within:3,without:[1,9]}}) \ No newline at end of file +Search.setIndex({"docnames": ["basics", "dependencies", "deprecation", "ebuild-format", "filesystem", "index", "installed-files", "keywords", "languages", "maintainer", "motivation", "other-docs", "other-metadata", "preface", "use-flags", "user-group"], "filenames": ["basics.rst", "dependencies.rst", "deprecation.rst", "ebuild-format.rst", "filesystem.rst", "index.rst", "installed-files.rst", "keywords.rst", "languages.rst", "maintainer.rst", "motivation.rst", "other-docs.rst", "other-metadata.rst", "preface.rst", "use-flags.rst", "user-group.rst"], "titles": ["Basic information", "Dependencies", "Deprecations", "Ebuild file format", "File system layout", "Gentoo Policy Guide", "Installed files", "Keywording and stabilization", "Language-specific policies", "Package Maintainers", "Motivation and history", "Other policy documents", "Other metadata variables", "Preface", "USE flags", "Users and groups"], "terms": {"The": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], "gentoo": [0, 1, 2, 3, 4, 7, 8, 9, 10, 12, 13, 14, 15], "focu": 0, "three": [0, 1], "aim": [0, 1, 5, 9, 13, 14], "portabl": [0, 1, 6], "By": [0, 1], "follow": [0, 4, 6, 7, 9, 11, 15], "should": [0, 1, 2, 4, 6, 7, 8, 10, 11, 12, 14, 15], "possibl": [0, 1, 3, 8, 9, 10], "packag": [0, 2, 3, 4, 5, 6, 7, 8, 12, 14, 15], "softwar": [0, 4, 11], "so": [0, 4, 6, 10], "work": [0, 3, 4, 7, 12, 13, 14], "differ": [0, 1, 3, 12], "system": [0, 5, 6, 11, 12, 15], "setup": [0, 4], "thi": [0, 1, 3, 4, 6, 7, 9, 10, 11, 12, 13, 14, 15], "includ": [0, 1, 3, 4, 6, 9, 12], "variou": [0, 9, 10, 14], "support": [0, 1, 3, 5, 6, 8, 12, 14], "architectur": [0, 4, 7], "compon": 0, "servic": [0, 6], "manag": [0, 1, 4, 5, 6, 12], "combin": [0, 5, 10, 12, 13], "compil": [0, 12], "linker": [0, 4], "flag": [0, 5, 6], "etc": [0, 3, 4], "maintain": [0, 2, 4, 5, 7, 8, 10, 11, 13], "provid": [0, 6, 8, 10, 11, 12, 15], "consist": [0, 3, 8, 14], "code": [0, 1, 5, 8, 12], "practic": [0, 6], "easi": [0, 12], "person": [0, 7, 14], "co": 0, "take": [0, 1, 7, 9], "over": [0, 7], "after": [0, 1, 4], "previou": [0, 1, 7], "also": [0, 6, 8, 10, 12, 14], "reduc": [0, 3, 8], "risk": 0, "mistak": [0, 1, 12], "experienc": [0, 1], "end": [0, 8, 9, 14], "user": [0, 1, 4, 5, 6, 8, 9, 12, 14], "experi": 0, "try": [0, 3, 9], "help": [0, 1, 3, 9], "develop": [0, 1, 3, 4, 5, 7, 9, 10, 13, 14, 15], "same": [0, 12, 15], "concept": 0, "appli": [0, 1, 7, 9, 10, 11], "across": [0, 10], "easier": [0, 14], "achiev": 0, "hi": [0, 8], "likeli": 0, "surpris": [0, 3], "behavior": [0, 1, 6, 12], "current": [0, 2, 4, 5, 9, 13], "ar": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], "two": [0, 12], "kind": 0, "tool": [0, 1, 3, 6], "involv": 0, "detect": [0, 1], "violat": [0, 12], "lint": [0, 3], "class": 0, "repoman": [0, 1, 2, 3, 4, 7, 15], "pkgcheck": [0, 1, 2, 3, 4, 7, 8, 12, 14, 15], "those": [0, 3, 4, 8, 9, 12], "analyz": 0, "ebuild": [0, 1, 2, 4, 5, 6, 8, 10, 11, 12], "other": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 13, 14], "file": [0, 2, 5, 7, 9, 10, 12], "repositori": [0, 10, 11, 12], "known": [0, 7, 12], "thei": [0, 1, 4, 6, 7, 9, 12, 14], "limit": [0, 3], "problem": [0, 1], "can": [0, 1, 3, 4, 5, 7, 10, 11, 12, 13, 14, 15], "without": [0, 3, 4, 5], "run": [0, 4], "phase": [0, 3, 8, 14], "function": [0, 3, 4, 8], "build": [0, 1, 4, 6, 8, 12, 14], "instal": [0, 1, 3, 5, 8, 12, 14], "time": [0, 1, 7, 8, 10, 12], "qa": [0, 1, 3, 4, 5, 6, 7, 9, 10, 12, 13, 14, 15], "implement": [0, 1, 8, 11, 12], "trigger": [0, 12], "while": [0, 1, 3, 6, 12], "execut": [0, 4, 12], "test": [0, 3, 5], "path": [0, 3, 5, 6], "expect": [0, 2], "us": [0, 2, 4, 5, 6, 8, 9, 10, 15], "both": [0, 3, 5, 6, 8, 13, 14], "befor": [0, 7, 14, 15], "push": [0, 15], "commit": 0, "whether": [0, 1, 7], "correctli": [0, 3, 4], "addition": 0, "i": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], "period": 0, "ci": 0, "all": [0, 1, 3, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], "non": [0, 1, 3, 4, 7, 10, 12], "trivial": [0, 12], "report": [0, 1, 2, 3, 4, 6, 7, 8, 9, 12, 14, 15], "autom": 0, "mail": [0, 7, 9, 11], "list": [0, 2, 4, 6, 9, 10, 11, 12, 15], "relev": [0, 7], "supplement": [0, 6], "direct": [0, 12], "reliabl": [0, 8], "tree": [0, 2, 4, 5, 10, 11, 13], "wide": 0, "scan": 0, "team": [0, 3, 4, 5, 7, 9, 10, 13, 14], "task": 0, "Its": [0, 10], "role": 0, "govern": 0, "glep": [0, 1, 5, 15], "48": 0, "It": [0, 1, 3, 5, 6, 8, 9, 10, 12, 13, 14, 15], "focus": [0, 10], "document": [0, 5, 12, 13], "resolv": [0, 12], "doubt": [0, 15], "regard": 0, "them": [0, 4, 6, 9, 10, 11, 14], "educ": 0, "member": [0, 9], "action": 0, "minor": [0, 7], "qualiti": 0, "e": [0, 1, 3, 4, 5, 6, 7, 10, 12, 13, 14], "when": [0, 1, 2, 3, 4, 6, 9, 11, 12, 14], "fix": [0, 9, 15], "directli": [0, 8, 10], "far": [0, 10], "less": [0, 3, 10, 12], "effort": [0, 7], "than": [0, 3, 6, 8, 10, 11, 14], "wa": [0, 4, 7, 9, 10, 12], "request": [0, 1, 7, 15], "refus": [0, 9], "final": [0, 10, 11], "case": [0, 4, 5, 7, 12], "repeat": [0, 3], "unwilling": 0, "issu": [0, 6, 8, 14], "disciplinari": 0, "measur": 0, "against": [0, 3, 10, 12], "question": [0, 1, 4, 7, 9, 12], "major": [0, 8, 11, 12, 15], "written": [0, 1, 9, 10], "down": [0, 10], "project": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14], "creat": [0, 4, 10, 11, 14, 15], "affect": [0, 3, 7], "specif": [0, 1, 5, 6, 10, 12, 13, 14], "area": 0, "contribut": 0, "g": [0, 1, 3, 4, 6, 7, 10, 12, 14], "systemd": [0, 6], "relat": [0, 10], "unit": [0, 6], "each": [0, 1, 10, 12], "indic": [0, 1, 2, 4, 10, 13], "bodi": [0, 5, 10, 13], "In": [0, 1, 3, 4, 8, 11, 12, 14], "order": [0, 1, 4, 6, 8, 10, 12], "abolish": 0, "contact": 0, "If": [0, 1, 3, 4, 6, 7, 9, 12, 14, 15], "disagre": [0, 11], "ask": [0, 7], "overrid": [0, 11], "decis": [0, 10], "further": [0, 15], "council": [0, 1, 2, 4, 5, 10, 11, 13, 14], "pg": [1, 2, 3, 4, 6, 7, 8, 9, 12, 14, 15], "0001": 1, "sourc": [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15], "refer": [1, 2, 4, 5, 7, 8, 10, 12, 14, 15], "http": [1, 2, 3, 4, 7, 8, 12, 14, 15], "wiki": [1, 7, 8, 10, 11, 12, 14], "org": [1, 2, 3, 4, 7, 8, 12, 14, 15], "index": [1, 3, 5, 7, 12, 14], "php": [1, 7, 12, 14], "titl": [1, 7, 12, 14], "quality_assur": [1, 7, 12, 14], "polici": [1, 3, 6, 7, 9, 12, 13, 14], "oldid": [1, 7, 12, 14], "104017": 1, "controlled_optional_rdepend": 1, "control": [1, 4, 6, 12, 14], "accept": [1, 4, 12, 15], "except": [1, 3, 4, 7], "under": [1, 12, 13], "veri": [1, 4, 6, 9, 10, 14, 15], "circumst": [1, 12], "being": [1, 3, 6, 7, 8, 9, 12], "nonfunct": 1, "unless": [1, 6, 8, 9, 15], "least": [1, 3, 7, 12], "one": [1, 4, 6, 7, 8, 9], "set": [1, 3, 5, 10, 13, 14], "There": [1, 6, 9, 10], "prefer": [1, 8, 14], "how": [1, 10, 11], "inform": [1, 5, 9, 10, 12], "wai": [1, 10, 12, 14], "optfeatur": 1, "eclass": [1, 5, 12, 15], "readm": 1, "r1": [1, 8], "plain": [1, 3], "elog": 1, "messag": [1, 12, 14], "rational": [1, 3, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15], "toggl": 1, "enabl": [1, 6, 12, 14], "disabl": [1, 12], "caus": [1, 6, 7, 8, 12, 14], "needless": 1, "rebuild": [1, 6], "especi": [1, 4], "import": [1, 8, 15], "long": [1, 7, 8, 12], "62": 1, "propos": 1, "solut": 1, "permit": [1, 3, 4, 9, 12], "flip": 1, "ha": [1, 3, 4, 6, 8, 12, 14, 15], "been": [1, 4, 6, 12, 14, 15], "tent": 1, "approv": [1, 11, 15], "0002": 1, "whenev": [1, 3, 4, 6, 7, 11, 12, 14], "wildcard": 1, "equal": 1, "must": [1, 4, 5, 6, 7, 8, 9, 14, 15], "specifi": [1, 3, 11, 12], "explicitli": [1, 3, 6, 8, 9, 10, 12, 14, 15], "zeroth": 1, "r0": 1, "necessari": [1, 6, 9, 14], "tild": 1, "instead": [1, 4, 8], "exampl": [1, 4, 6, 9, 12], "bad": [1, 4, 12], "dev": [1, 4, 9, 12, 14], "lib": [1, 4, 6], "libfrobn": 1, "1": [1, 11], "2": [1, 5, 12, 14], "3": [1, 8, 14], "good": [1, 4, 12, 15], "r3": 1, "place": [1, 6, 7], "mean": [1, 14], "version": [1, 2, 3, 4, 5, 12, 15], "common": [1, 3, 12, 13], "fact": 1, "explicit": [1, 3, 12], "equival": 1, "latter": [1, 4, 10, 12, 14], "warn": 1, "reconsid": 1, "correct": [1, 4, 12], "0011": 1, "archiv": [1, 6, 12, 14], "portag": [1, 4], "9cae3a92412a007febe7ac0612d50f5f": 1, "match": [1, 8, 15], "rang": [1, 15], "span": 1, "applic": [1, 4, 6, 10, 11, 12], "ani": [1, 3, 6, 9, 10, 11, 12, 14], "onli": [1, 4, 5, 6, 7, 10, 11], "valu": [1, 3, 4, 5], "nor": [1, 9, 12], "moment": 1, "miss": [1, 12], "start": [1, 10, 15], "therefor": [1, 3, 4, 5, 10, 13], "interchang": 1, "we": [1, 3, 12], "assum": [1, 14], "verifi": [1, 12], "yet": 1, "former": [1, 10], "paludi": 1, "logic": [1, 10], "pull": 1, "correspond": [1, 4, 12], "newest": 1, "avail": [1, 10, 12, 14], "0012": 1, "an": [1, 3, 4, 6, 7, 9, 10, 14, 15], "uncommon": [1, 6], "public": 1, "abi": [1, 4], "librari": [1, 5], "stabl": [1, 5], "within": [1, 4, 5, 7, 9, 14], "privat": 1, "your": 1, "api": 1, "part": [1, 3, 4, 10], "5": 1, "likewis": 1, "otherwis": [1, 6], "open": [1, 15], "debat": 1, "ad": [1, 4, 5, 6, 15], "do": [1, 3, 6, 8, 12], "defin": [1, 5, 8, 11, 14], "propon": 1, "idea": 1, "point": [1, 3, 4, 6, 10], "out": [1, 8, 9, 10, 14], "revers": [1, 6, 8], "becom": [1, 5, 9, 13], "cumbersom": 1, "usual": [1, 12], "result": [1, 15], "lose": [1, 8], "opportun": 1, "onc": [1, 3, 7, 9], "argu": 1, "mani": [1, 4, 6, 8, 9, 11, 12], "futur": [1, 7, 9, 11, 14, 15], "reason": [1, 4, 15], "predict": 1, "oppon": 1, "claim": 1, "100": [1, 15], "0003": 1, "meet": [1, 4, 10, 14], "log": [1, 4, 10, 14], "20151011": [1, 4], "summari": [1, 4, 14], "txt": [1, 4, 14, 15], "": [1, 9, 11, 14], "implicitli": 1, "propag": 1, "who": [1, 6, 7, 9, 10, 14], "have": [1, 3, 6, 7, 8, 12, 15], "alreadi": [1, 4, 8, 12], "need": [1, 4, 6, 9, 10, 11, 12, 14, 15], "prevent": [1, 9, 15], "from": [1, 3, 4, 7, 9, 10, 12, 15], "clean": 1, "increas": [1, 9], "doe": [1, 3, 6, 7, 9, 11, 12], "were": [1, 3, 6, 7, 10, 12, 15], "histor": [1, 3, 4, 5, 6, 12, 14, 15], "reli": [1, 4, 6], "call": [1, 8], "dynam": [1, 3, 4, 5, 15], "which": [1, 3, 5, 6, 7, 10, 12, 13, 14], "unreli": 1, "featur": [1, 12], "simpli": 1, "timefram": 1, "dure": [1, 4], "old": [1, 4, 7, 8, 9, 12], "exist": [1, 2, 3, 8, 14, 15], "had": [1, 7], "graph": [1, 7, 8], "breakag": [1, 7], "due": [1, 4, 6, 7], "requir": [1, 4, 6, 8, 10, 11, 12, 15], "account": [1, 3, 5], "ensur": [1, 4, 8, 12], "get": 1, "updat": [1, 2, 5, 10, 11, 13, 15], "usag": [1, 5, 10], "side": 1, "you": 1, "t": 1, "either": [1, 4, 6, 7, 8, 12, 14], "For": [1, 4, 9], "notic": [1, 6], "link": [1, 5, 6, 8, 12], "libfoo": 1, "unnecessarili": [1, 14], "decid": [1, 12], "remov": [1, 5, 6, 8, 12, 14, 15], "respons": [1, 12, 14, 15], "mai": [1, 3, 4, 6, 11, 14], "immedi": [1, 7], "even": [1, 12, 14], "still": [1, 4, 7, 14], "0021": 1, "infer": [1, 12], "pm": [1, 10, 11, 12], "style": [1, 5], "anoth": [1, 4, 12], "4": [1, 13], "restrict": [1, 4, 5, 10, 11], "refin": 1, "gtk2": [1, 14], "v2": 1, "foo": [1, 3], "default": [1, 6], "longer": [1, 4, 9], "libbar": 1, "accord": 1, "section": 1, "error": [1, 3, 12], "furthermor": [1, 3, 4, 9, 10, 12], "check": [1, 4, 5], "make": [1, 3, 4, 5, 6, 8, 9, 10, 12, 14], "its": [1, 4, 8, 10, 11], "1001": 2, "gitweb": [2, 4], "repo": [2, 4], "git": [2, 4], "metadata": [2, 4, 5, 9], "layout": [2, 5, 11], "conf": 2, "new": [2, 4, 5, 8, 10, 14, 15], "migrat": [2, 15], "newer": 2, "bump": [2, 5, 15], "proactiv": [2, 5], "store": 2, "1003": 2, "individu": [2, 3], "eclassdoc": 2, "tag": 2, "insid": 2, "0101": 3, "partial": [3, 10, 11], "via": [3, 4, 10, 11, 12, 14, 15], "leav": [3, 15], "most": 3, "choic": [3, 14], "few": [3, 14], "rule": [3, 7, 11, 12, 14, 15], "enforc": [3, 5, 11, 12], "alwai": [3, 4], "indent": 3, "tab": 3, "level": [3, 4, 11], "attempt": [3, 6, 10, 14], "align": 3, "width": 3, "name": [3, 4, 5, 6], "bracket": 3, "form": [3, 10, 14], "rather": [3, 10, 11, 14], "bash": [3, 6], "condit": [3, 12], "posix": [3, 5], "ish": 3, "builtin": 3, "recommend": [3, 6, 11, 14, 15], "construct": 3, "prone": 3, "avoid": [3, 6], "unnecessari": [3, 6, 7, 8, 14], "chang": [3, 5, 8, 11], "edit": [3, 10], "0102": 3, "bug": [3, 7, 9, 12, 15], "612630": 3, "fulli": 3, "forbidden": [3, 9, 12], "load": 3, "addit": [3, 4, 6, 10, 11], "eval": 3, "method": 3, "eblit": 3, "extern": [3, 5], "convert": [3, 14], "move": [3, 4], "standard": [3, 5], "locat": [3, 5, 6, 12], "principl": 3, "mainten": [3, 8, 9], "harder": 3, "confus": [3, 7, 14], "0103": 3, "highlight": 3, "syntax": 3, "uri": 3, "verbatim": 3, "allow": [3, 12], "gener": [3, 4, 6, 11, 12, 14], "sinc": [3, 4, 6, 12, 14], "littl": [3, 12], "advantag": [3, 14], "On": 3, "hand": 3, "render": 3, "unus": 3, "preprocess": 3, "break": [3, 8], "termin": 3, "editor": 3, "well": [3, 5, 7, 10, 11, 12, 13], "grep": [3, 9], "0104": 3, "overlap": 3, "multipl": [3, 12, 14], "entri": [3, 15], "design": [3, 5, 13], "encourag": 3, "add": [3, 9], "more": [3, 6, 10, 11, 12, 14], "page": [3, 5, 10, 11], "pypi": 3, "github": 3, "incident": 3, "depend": [3, 5, 6, 7, 8, 12, 14], "multi": 3, "goe": 3, "hard": [3, 9, 10, 12, 14], "copi": 3, "past": [3, 10], "investig": 3, "directori": [3, 4], "0105": 3, "liter": 3, "content": 3, "wrap": 3, "append": 3, "arch": [3, 7], "ekeyword": 3, "larg": [3, 9, 10], "number": [3, 8, 9, 15], "abil": [3, 10, 12], "process": [3, 5, 7, 11, 13, 15], "modifi": 3, "sure": [3, 9], "0106": 3, "implicit": 3, "itself": [3, 11], "0107": 3, "ed": [3, 6, 7], "grant": [3, 4], "src_configur": 3, "lead": [3, 15], "embed": 3, "imag": [3, 6], "0201": 4, "d": [4, 5, 12], "08gentoo": 4, "top": 4, "bin": 4, "boot": 4, "opt": 4, "sbin": 4, "srv": 4, "var": 4, "subdirectori": 4, "libexec": 4, "share": [4, 6], "src": 4, "triplet": 4, "doc": 4, "hierarchi": 4, "full": [4, 6], "revis": [4, 5], "pf": 4, "aforement": [4, 10], "appropri": [4, 12], "suffix": 4, "variant": 4, "chost": 4, "ctarget": 4, "toolchain": [4, 12], "gnu": 4, "guix": 4, "nix": 4, "0202": 4, "20130813": 4, "20130924": 4, "filesystem": [4, 11], "initramf": 4, "upstream": [4, 8, 12], "2013": 4, "earli": [4, 8], "mount": 4, "difficult": 4, "subtli": 4, "broken": 4, "hack": 4, "udev": 4, "some": [4, 6, 7, 10, 12], "repair": 4, "rootf": 4, "0203": 4, "proj": 4, "80multilib": 4, "fatal": [4, 12], "64": 4, "bit": 4, "amd64": 4, "lib64": 4, "larger": 4, "along": [4, 10], "symlink": 4, "compat": [4, 8], "hardcod": [4, 6], "With": 4, "modern": 4, "profil": [4, 9], "found": [4, 10], "loader": [4, 6], "0204": 4, "80librari": 4, "la": [4, 5], "never": [4, 6, 10], "root": 4, "script": [4, 8, 12], "purpos": [4, 5, 12], "hold": 4, "strictli": [4, 12], "small": [4, 5, 9], "partit": 4, "would": [4, 6, 10], "wast": 4, "space": [4, 12], "0205": 4, "clarifi": 4, "20151213": 4, "anymor": [4, 7], "normal": [4, 12], "guidelin": [4, 11], "As": 4, "high": 4, "score": 4, "state": [4, 5, 12], "group": [4, 5, 9], "own": 4, "world": 4, "readabl": 4, "privileg": 4, "access": 4, "gamestat": 4, "made": [4, 14], "setgid": 4, "writabl": 4, "technic": [4, 6, 9, 10, 11, 12, 14], "isol": 4, "boundari": 4, "between": [4, 8, 12, 14, 15], "blurri": 4, "web": [4, 12], "browser": 4, "inconsist": 4, "distribut": [4, 11], "where": 4, "data": 4, "impli": 4, "fulfil": 4, "0206": 4, "rel": 4, "special": [4, 5, 12, 14], "proc": 4, "suppos": 4, "host": 4, "dosym": 4, "frobnic": 4, "self": 4, "mtab": 4, "wrong": [4, 12], "recoveri": [4, 6], "definit": [5, 13], "clear": [5, 10, 13, 14], "bind": [5, 10, 13], "global": [5, 12, 13, 14], "meant": [5, 7, 9, 13], "suppli": [5, 13], "prefac": 5, "introduct": [5, 14], "author": 5, "licens": [5, 6], "motiv": 5, "histori": 5, "basic": [5, 11], "goal": [5, 6], "complianc": 5, "appeal": 5, "manual": [5, 14], "fh": 5, "option": [5, 12, 14], "runtim": [5, 8], "slot": [5, 8], "subslot": 5, "sub": 5, "qt": 5, "oper": [5, 11], "deprec": [5, 15], "eapi": [5, 11], "format": [5, 11], "contain": [5, 9, 11, 14], "homepag": 5, "variabl": [5, 6, 8], "src_uri": 5, "keyword": 5, "singl": [5, 10, 12], "line": 5, "src_instal": 5, "pkg_preinst": 5, "separ": [5, 12], "usr": 5, "strict": 5, "multilib": 5, "static": [5, 12], "libtool": 5, "game": 5, "ownership": 5, "absolut": 5, "symbol": 5, "target": 5, "virtual": 5, "stabil": 5, "rekeyword": 5, "drop": [5, 9], "languag": 5, "python": [5, 9], "multislot": 5, "meaning": 5, "gui": 5, "underscor": 5, "search": 5, "0301": 6, "introduc": [6, 8, 14], "size": 6, "neg": [6, 7], "consequ": 6, "program": [6, 8, 9], "Such": [6, 12], "uncondition": [6, 12], "shell": 6, "complet": [6, 10, 12], "local": [6, 14], "wish": [6, 14], "strip": 6, "categori": 6, "install_mask": 6, "cost": [6, 8], "much": [6, 12], "smaller": 6, "brought": 6, "context": 6, "libreoffic": 6, "did": [6, 10, 12], "he": 6, "spend": 6, "hour": 6, "huge": 6, "tini": 6, "app": 6, "could": [6, 9, 12], "consid": [6, 14], "here": [6, 7, 10], "first": [6, 7], "0302": 6, "themselv": 6, "strongli": 6, "discourag": [6, 14], "secur": 6, "imposs": 6, "realli": [6, 10], "prolifer": 6, "harm": [6, 12], "go": [6, 10, 11], "0303": 6, "might": 6, "plugin": 6, "fallback": 6, "pkg": 6, "config": 6, "liner": 6, "find": [6, 9, 10, 12], "type": 6, "f": 6, "delet": 6, "die": 6, "howev": [6, 7, 10, 11, 12], "base": 6, "autotool": 6, "particular": [6, 10], "todai": 6, "replac": [6, 10, 14], "keep": 6, "potenti": [6, 12], "0304": 6, "reserv": [6, 14, 15], "empti": 6, "optim": 6, "certain": 6, "assumpt": [6, 12], "about": [6, 12], "assign": [6, 9, 15], "0401": 7, "retest": 7, "exempt": 7, "often": [7, 9], "neglect": 7, "want": [7, 14], "0402": 7, "cc": 7, "experiment": 7, "close": 7, "remain": 7, "kept": 7, "subset": 7, "interest": [7, 9], "independ": 7, "duplic": 7, "slack": 7, "0403": 7, "126033": 7, "dropping_stable_keyword": 7, "n": 7, "last": [7, 9], "respond": 7, "90": 7, "dai": 7, "proceed": 7, "rite": 7, "0501": 8, "through": [8, 11], "modul": 8, "libpython": 8, "python_single_target": 8, "python_target": 8, "python_compat": 8, "python_usedep": 8, "python_single_usedep": 8, "python_gen_cond_dep": 8, "guarante": [8, 12], "handl": [8, 12], "whole": 8, "accident": 8, "helper": 8, "gracefulli": [8, 12], "retir": 8, "minim": 8, "0502": 8, "python_2_end": 8, "life": 8, "sooner": 8, "later": 8, "port": 8, "chanc": [8, 9], "soon": 8, "readi": 8, "reach": 8, "defer": 8, "2019": 8, "frequent": [8, 9], "grow": 8, "exponenti": 8, "term": 8, "give": 8, "better": [8, 10], "prepar": 8, "delai": [8, 15], "until": 8, "upgrad": [8, 12], "0601": 9, "consent": 9, "agre": 9, "backup": 9, "knowledg": 9, "what": 9, "wors": 9, "origin": [9, 10, 12], "resign": 9, "neither": [9, 12], "awar": 9, "why": 9, "fit": 9, "up": 9, "sole": 9, "distinguish": [9, 14], "actual": 9, "0602": 9, "dedic": [9, 12], "mere": 9, "split": 9, "unmaintain": 9, "suffer": 9, "unfair": 9, "inappropri": 9, "burden": 9, "care": 9, "0603": 9, "reassign": 9, "comment": 9, "xml": 9, "send": 9, "grab": 9, "pleas": [9, 12], "lost": 9, "easili": 9, "compar": 9, "silent": 9, "At": 10, "lack": 10, "concis": 10, "suffici": 10, "explan": 10, "wider": 10, "intend": 10, "mention": 10, "establish": 10, "eight": 10, "flat": [10, 14], "scale": 10, "turn": [10, 12], "devmanu": [10, 11], "reject": 10, "amount": 10, "stale": 10, "everi": 10, "unclear": 10, "obsolet": 10, "tip": 10, "scatter": 10, "lot": 10, "de": 10, "facto": 10, "formal": 10, "address": 10, "defici": 10, "primari": [10, 12], "collect": 10, "organ": 10, "word": 10, "understand": 10, "spirit": 10, "precis": 10, "queri": [10, 12], "aris": [10, 14, 15], "conform": [10, 11], "upon": 11, "discuss": [11, 14], "done": 11, "subsequ": 11, "highest": 11, "activ": 11, "impos": 11, "review": [11, 15], "guid": [11, 13], "besid": 11, "detail": 11, "instruct": 11, "compli": 11, "nevertheless": 11, "suggest": 11, "linux": 11, "0701": 12, "109991": [12, 14], "2fuse": 12, "dependent_slot": 12, "174407": 12, "scope": 12, "alter": 12, "overlai": 12, "declar": 12, "pre": 12, "2016": 12, "simultan": 12, "choos": [12, 14], "parallel": 12, "emerg": 12, "depclean": 12, "invari": 12, "cach": 12, "undefin": 12, "unpredict": 12, "invalid": 12, "0702": 12, "83cc5bbd7bbe8bdf04dd3c3bc7f8a035": 12, "www": 12, "similar": 12, "no_homepag": 12, "download": 12, "tracker": 12, "job": 12, "subpag": 12, "anywher": 12, "marker": 12, "identifi": 12, "0703": 12, "prerequisit": 12, "unset": 12, "ius": 12, "contrari": 12, "skip": 12, "fail": 12, "omit": 12, "overspecifi": 12, "0704": 12, "pertain": 12, "express": [12, 14], "bundl": 12, "present": 12, "shall": 12, "binari": 12, "effect": 12, "cover": 12, "simplest": 12, "noth": 12, "protect": 12, "deriv": 12, "rememb": 12, "init": 12, "gpl": 12, "text": 13, "micha\u0142": 13, "g\u00f3rny": 13, "mgorni": 13, "ulrich": 13, "m\u00fcller": 13, "ulm": 13, "creativ": 13, "attribut": 13, "sharealik": 13, "0": [13, 15], "intern": 13, "0801": 14, "versioned_use_flag": 14, "switch": 14, "qt4": 14, "qt5": 14, "hierarch": 14, "gtk": 14, "gtk3": 14, "0802": 14, "cf3f5a59ac918335766632bd02438722": 14, "offer": 14, "x": 14, "toolkit": 14, "widget": 14, "simpl": [14, 15], "adjust": 14, "per": 14, "discov": 14, "obtain": 14, "afterward": 14, "0803": 14, "20191013": 14, "use_expand": 14, "newli": 14, "regular": [14, 15], "valid": 14, "low": 14, "prioriti": 14, "resembl": 14, "proper": 14, "shorter": 14, "unprefix": 14, "hyphen": 14, "imit": 14, "like": 14, "lengthen": 14, "mismatch": 14, "extend": 14, "improv": 14, "0901": 15, "702460": 15, "81": 15, "next": 15, "uid": 15, "gid": 15, "499": 15, "baselayout": 15, "reus": 15, "acct": 15, "justifi": 15, "101": 15, "749": 15, "A": 15, "select": 15, "arbitrari": 15, "free": 15, "success": 15, "upward": 15, "gap": 15, "desir": 15, "serv": 15, "synchron": 15, "primit": 15, "collis": 15, "second": 15, "simplifi": 15, "aid": 15, "rapid": 15, "adopt": 15, "pointless": 15, "cross": 15, "distro": 15, "sync": 15, "favor": 15, "alloc": 15, "chosen": 15, "immin": 15, "ones": 15, "999": 15, "downward": 15, "lowest": 15, "true": 15}, "objects": {}, "objtypes": {}, "objnames": {}, "titleterms": {"basic": 0, "inform": 0, "goal": 0, "polici": [0, 5, 8, 10, 11, 15], "make": 0, "complianc": 0, "check": 0, "enforc": 0, "chang": [0, 1], "appeal": 0, "depend": 1, "option": 1, "runtim": 1, "revis": 1, "slot": [1, 12], "subslot": 1, "sub": 1, "packag": [1, 9, 11], "special": 1, "case": 1, "qt": 1, "proactiv": 1, "us": [1, 3, 12, 14], "oper": 1, "bump": 1, "without": [1, 9], "flag": [1, 12, 14], "deprec": [2, 8], "eapi": 2, "eclass": [2, 3, 8], "ebuild": 3, "file": [3, 4, 6], "format": 3, "code": 3, "style": 3, "must": [3, 12], "contain": 3, "within": 3, "homepag": [3, 12], "variabl": [3, 12], "src_uri": 3, "refer": 3, "keyword": [3, 7], "defin": 3, "singl": 3, "line": 3, "licens": [3, 12, 13], "d": 3, "onli": 3, "src_instal": 3, "pkg_preinst": 3, "system": 4, "layout": 4, "instal": [4, 6], "path": 4, "todo": [4, 7, 14], "support": 4, "separ": 4, "usr": 4, "strict": 4, "multilib": 4, "static": [4, 6], "librari": [4, 6], "libtool": [4, 6], "game": 4, "locat": 4, "ownership": 4, "absolut": 4, "symbol": 4, "link": 4, "target": 4, "gentoo": [5, 11], "guid": [5, 10], "content": 5, "indic": 5, "tabl": 5, "small": 6, "la": 6, "virtual": 6, "stabil": 7, "rekeyword": 7, "drop": 7, "new": [7, 9], "version": [7, 14], "remov": [7, 9], "stabl": 7, "languag": 8, "specif": [8, 11], "python": 8, "usag": 8, "2": 8, "maintain": 9, "ad": 9, "motiv": 10, "histori": 10, "histor": 10, "state": 10, "document": [10, 11], "purpos": 10, "other": [11, 12], "manag": 11, "glep": 11, "develop": 11, "manual": 11, "extern": 11, "standard": 11, "posix": 11, "fh": 11, "metadata": 12, "dynam": 12, "multislot": 12, "valu": 12, "meaning": 12, "restrict": 12, "test": 12, "prefac": 13, "introduct": 13, "author": 13, "gui": 14, "underscor": 14, "name": 14, "user": 15, "group": 15, "account": 15}, "envversion": {"sphinx.domains.c": 2, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 8, "sphinx.domains.index": 1, "sphinx.domains.javascript": 2, "sphinx.domains.math": 2, "sphinx.domains.python": 3, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.todo": 2, "sphinx": 57}, "alltitles": {"Basic information": [[0, "basic-information"]], "Goals of policy making": [[0, "goals-of-policy-making"]], "Policy compliance checking": [[0, "policy-compliance-checking"]], "Policy enforcement": [[0, "policy-enforcement"]], "Policy making, changes and appeals": [[0, "policy-making-changes-and-appeals"]], "Dependencies": [[1, "dependencies"]], "Optional runtime dependencies": [[1, "pg0001"]], "=-dependencies with no revision": [[1, "pg0002"]], "Slot and subslot dependencies": [[1, "slot-and-subslot-dependencies"]], "on (sub-)slotted packages": [[1, "pg0011"]], "special case: Qt packages": [[1, "pg0012"]], "proactive use of slot operators": [[1, "proactive-use-of-slot-operators"]], "Revision bumps on runtime dependency changes": [[1, "pg0003"]], "USE dependencies": [[1, "use-dependencies"]], "on packages without the flag": [[1, "pg0021"]], "Deprecations": [[2, "deprecations"]], "Deprecated EAPIs": [[2, "pg1001"]], "Deprecated eclasses": [[2, "pg1003"]], "Ebuild file format": [[3, "ebuild-file-format"]], "Coding style": [[3, "pg0101"]], "Code must be contained within ebuild and eclasses": [[3, "pg0102"]], "HOMEPAGE must not contain variables": [[3, "pg0103"]], "SRC_URI must not refer to HOMEPAGE": [[3, "pg0104"]], "KEYWORDS must be defined on a single line": [[3, "pg0105"]], "LICENSE must not contain variables": [[3, "pg0106"]], "D must be used only in src_install and pkg_preinst": [[3, "pg0107"]], "File system layout": [[4, "file-system-layout"]], "Installation paths": [[4, "pg0201"]], "Todo": [[4, "id1"], [7, "id1"], [14, "id1"]], "Support for separate /usr": [[4, "pg0202"]], "Strict multilib layout": [[4, "pg0203"]], "Static libraries and libtool files": [[4, "pg0204"]], "Game install locations and ownership": [[4, "pg0205"]], "Absolute symbolic link targets": [[4, "pg0206"]], "Gentoo Policy Guide": [[5, "gentoo-policy-guide"]], "Contents:": [[5, null]], "Indices and tables": [[5, "indices-and-tables"]], "Installed files": [[6, "installed-files"]], "Installation of small files": [[6, "pg0301"]], "Installation of static libraries": [[6, "pg0302"]], "Installation of libtool (.la) files": [[6, "pg0303"]], "Virtuals": [[6, "pg0304"]], "Keywording and stabilization": [[7, "keywording-and-stabilization"]], "Rekeywording on dropped keywords": [[7, "pg0401"]], "Stabilizing new versions": [[7, "pg0402"]], "Removing stable keywords": [[7, "pg0403"]], "Language-specific policies": [[8, "language-specific-policies"]], "Python": [[8, "python"]], "Eclass usage": [[8, "pg0501"]], "Python 2 deprecation": [[8, "pg0502"]], "Package Maintainers": [[9, "package-maintainers"]], "Adding new maintainers": [[9, "pg0601"]], "New packages without a maintainer": [[9, "pg0602"]], "Removing package maintainers": [[9, "pg0603"]], "Motivation and history": [[10, "motivation-and-history"]], "Historical state of policy documentation": [[10, "historical-state-of-policy-documentation"]], "Purpose of the Policy Guide": [[10, "purpose-of-the-policy-guide"]], "Other policy documents": [[11, "other-policy-documents"]], "Gentoo-specific documentation": [[11, "gentoo-specific-documentation"]], "Package Manager Specification": [[11, "package-manager-specification"]], "GLEPs": [[11, "gleps"]], "Developer Manual": [[11, "developer-manual"]], "External standards": [[11, "external-standards"]], "POSIX": [[11, "posix"]], "FHS": [[11, "fhs"]], "Other metadata variables": [[12, "other-metadata-variables"]], "Dynamic slots (multislot flag)": [[12, "pg0701"]], "HOMEPAGE value must be meaningful": [[12, "pg0702"]], "RESTRICT=test for USE=-test": [[12, "pg0703"]], "LICENSE": [[12, "pg0704"]], "Preface": [[13, "preface"]], "Introduction": [[13, "introduction"]], "Authors": [[13, "authors"]], "License": [[13, "license"]], "USE flags": [[14, "use-flags"]], "Versioned USE flags": [[14, "pg0801"]], "USE=gui flag": [[14, "pg0802"]], "Underscores in USE flag names": [[14, "pg0803"]], "Users and groups": [[15, "users-and-groups"]], "User and group account policy": [[15, "pg0901"]]}, "indexentries": {"= with no revision": [[1, "index-2"]], "qt": [[1, "index-4"], [14, "index-0"], [14, "index-1"]], "use flags": [[1, "index-1"], [1, "index-6"], [6, "index-0"], [12, "index-1"], [12, "index-3"], [14, "index-0"], [14, "index-1"], [14, "index-2"]], "dependency": [[1, "index-0"], [1, "index-2"], [1, "index-3"], [1, "index-5"], [1, "index-6"]], "dynamic": [[1, "index-5"], [12, "index-0"]], "for optional rdepend": [[1, "index-1"]], "optional runtime": [[1, "index-0"]], "revision bump": [[1, "index-5"]], "slot/subslot": [[1, "index-3"], [1, "index-4"], [12, "index-0"]], "eapi": [[2, "index-0"]], "deprecated": [[2, "index-0"], [2, "index-1"]], "eclass": [[2, "index-1"], [8, "index-1"], [8, "index-2"], [8, "index-3"], [8, "index-4"]], "bash": [[3, "index-0"]], "conditions": [[3, "index-0"]], "d": [[3, "index-6"]], "eblit": [[3, "index-1"]], "homepage": [[3, "index-2"], [3, "index-3"], [12, "index-2"]], "indentation": [[3, "index-0"]], "keywords": [[3, "index-4"], [7, "index-0"], [7, "index-1"], [7, "index-2"]], "license": [[3, "index-5"], [12, "index-4"]], "one line": [[3, "index-4"]], "src uri": [[3, "index-3"]], "variable": [[3, "index-2"], [3, "index-5"], [3, "index-6"]], "variable reference": [[3, "index-0"]], "absolute target": [[4, "index-5"]], "file system": [[4, "index-0"], [4, "index-1"], [4, "index-2"], [4, "index-3"], [4, "index-4"]], "games": [[4, "index-4"]], "installation paths": [[4, "index-0"]], "libtool file": [[4, "index-3"], [6, "index-2"]], "multilib-strict": [[4, "index-2"]], "separate /usr": [[4, "index-1"]], "static library": [[4, "index-3"], [6, "index-1"]], "symbolic link": [[4, "index-5"]], "installed files": [[6, "index-0"], [6, "index-1"], [6, "index-2"], [6, "index-3"]], "small files": [[6, "index-0"]], "virtuals": [[6, "index-3"]], "rekeywording": [[7, "index-0"]], "removing stable": [[7, "index-2"]], "stabilizing new versions": [[7, "index-1"]], "python": [[8, "index-0"], [8, "index-1"], [8, "index-5"]], "python 2": [[8, "index-5"]], "python-any-r1": [[8, "index-2"]], "python-r1": [[8, "index-3"]], "python-single-r1": [[8, "index-4"]], "adding": [[9, "index-0"]], "maintainer": [[9, "index-0"], [9, "index-1"], [9, "index-2"]], "new packages without": [[9, "index-1"]], "removing": [[9, "index-2"]], "up for grabs": [[9, "index-3"]], "gentoo.org": [[12, "index-2"]], "meaningful value": [[12, "index-2"]], "multislot": [[12, "index-1"]], "restrict": [[12, "index-3"]], "test; use=-test": [[12, "index-3"]], "test; restrict": [[12, "index-3"]], "gtk": [[14, "index-0"], [14, "index-1"]], "gui": [[14, "index-1"]], "gui flag": [[14, "index-1"]], "underscore": [[14, "index-2"]], "versioned": [[14, "index-0"]], "group": [[15, "index-1"]], "user": [[15, "index-0"]]}}) \ No newline at end of file diff --git a/std-policy-index.html b/std-policy-index.html index 4297aa3..d89796c 100644 --- a/std-policy-index.html +++ b/std-policy-index.html @@ -1,7 +1,7 @@ - + @@ -18,9 +18,8 @@ - - + @@ -213,6 +212,11 @@
    PG0106 (LICENSE must not contain variables)
    + PG0107 (D must be used only in src_install and pkg_preinst) +
     
    File system layout