Ansgar Burchardt <ans...@debian.org> writes: > I discussed this a bit on IRC with the other ftp-masters and we came to > this summary:
> 0) We would like to drop the requirement for packages to not depend on > packages of lower priority: it is better to declare only what we > actually want included in the installation (that is at priority >= > standard) rather than also the dependency closure. > 1) We agree that the 'extra' priority can be dropped. > 2) We wonder if the 'standard' priority can also be dropped: as far as > we know, it is used only by the "standard" task and it might make > sense to treat it the same as other tasks. > (Depending on what works better for the installer team.) Given KiBi's reply, I'll leave 2 out for now. Given the necessary wording changes, I don't think we can separate 0 and 1 very easily, so I'll just propose wording for both (even though we forked the Policy bugs into two). Here's a wording proposal based on Adam Borowski's wording with a bit of (hopefully correct) tightening. Note that this also says that no two packages that both have a priority of standard or higher may conflict. I think that's a logical consequence of the use of priorities, and didn't want to lose that completely when that requirement was dropped from optional. diff --git a/policy.xml b/policy.xml index ace6a3b..be458cd 100644 --- a/policy.xml +++ b/policy.xml @@ -837,11 +837,33 @@ <title>Priorities</title> <para> - Each package should have a <emphasis>priority</emphasis> value, - which is included in the package's <emphasis>control - record</emphasis> (see <xref linkend="s-f-Priority"/>). This - information is used by the Debian package management tools to - separate high-priority packages from less-important packages. + Each package must have a <emphasis>priority</emphasis> value, + which is set in the metadata for the Debian archive and is also + included in the package's control files (see <xref + linkend="s-f-Priority"/>). This information is used to control + which packages are included in standard or minimal Debian + installations. + </para> + <para> + Most Debian packages will have a priority of + <literal>optional</literal>. Priority levels other than + <literal>optional</literal> are only used for packages that should + be included by default in a standard installation of Debian. + </para> + <para> + The priority of a package is determined solely by the + functionality it provides directly to the user. The priority of a + package should not be increased merely because another + higher-priority package depends on it; instead, the tools used to + construct Debian installations will correctly handle package + dependencies. In particular, this means that C-like libraries + will almost never have a priority above + <literal>optional</literal>, since they do not provide + functionality directly to users. However, as an exception, the + maintainers of Debian installers may request an increase of the + priority of a package to resolve installation issues and ensure + that the correct set of packages is included in a standard or + minimal install. </para> <para> The following <emphasis>priority levels</emphasis> are recognized @@ -896,19 +922,22 @@ installed by default if the user doesn't select anything else. It doesn't include many large applications. </para> + <para> + No two packages that both have a priority of + <literal>standard</literal> or higher may conflict with each + other. + </para> </listitem> </varlistentry> <varlistentry> <term><literal>optional</literal></term> <listitem> <para> - (In a sense everything that isn't required is optional, but - that's not what is meant here.) This is all the software - that you might reasonably want to install if you didn't know - what it was and don't have specialized requirements. This - is a much larger system and includes the X Window System, a - full TeX distribution, and many applications. Note that - optional packages should not conflict with each other. + This is the default priority for the majority of the + archive. Unless a package should be installed by default on + standard Debian systems, it should have a priority of + <literal>optional</literal>. Packages with a priority of + <literal>optional</literal> may conflict with each other. </para> </listitem> </varlistentry> @@ -916,22 +945,21 @@ <term><literal>extra</literal></term> <listitem> <para> - This contains all packages that conflict with others with - required, important, standard or optional priorities, or are - only likely to be useful if you already know what they are - or have specialized requirements (such as packages - containing only detached debugging symbols). + <emphasis>This priority is deprecated.</emphasis> Use the + <literal>optional</literal> priority instead. + </para> + <para> + The <literal>extra</literal> priority was previously used + for packages that conflicted with other packages and + packages that were only likely to be useful to people with + specialized requirements. However, this distinction was + somewhat arbitrary, not consistently followed, and not + useful enough to warrant the maintenance effort. </para> </listitem> </varlistentry> </variablelist> - <para> - Packages must not depend on packages with lower priority values - (excluding build-time dependencies). In order to ensure this, the - priorities of one or more packages may need to be adjusted. - </para> </section> - </chapter> <chapter id="ch-binary"> -- Russ Allbery (r...@debian.org) <http://www.eyrie.org/~eagle/>