From: Manoj Srivastava Date: Thu, 16 Jun 2005 05:10:49 +0000 (+0000) Subject: * Get the version.ent non-compression thingy right this time! X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=08b1c84ca37b403db5ef339fea1b3552b52f3503;p=debian%2Fdebian-policy.git * Get the version.ent non-compression thingy right this time! Author: jdg Date: 2001/04/11 21:40:23 * Get the version.ent non-compression thingy right this time! * Also install FHS stuff byhand (as requested by webmasters) * Corrected GPL name and location closes: Bug#88788, #93047 * Correct bug severities closes: Bug#91276 Also lots of miscellaneous wording etc. improvements: start -> section 2.2, as discussed recently on -policy. git-archimport-id: srivasta@debian.org--etch/debian-policy--devel--3.0--patch-90 --- diff --git a/debian/changelog b/debian/changelog index 8a8f288..71830ee 100644 --- a/debian/changelog +++ b/debian/changelog @@ -4,6 +4,10 @@ debian-policy (3.5.2.1) unstable; urgency=low * Also now Conflicts and Replaces packaging-manual * Remove FSSTND from binary package, although retain it in the source package for the time being + * Get the version.ent non-compression thingy right this time! + * Also install FHS stuff byhand (as requested by webmasters) + * Corrected GPL name and location closes: Bug#88788, #93047 + * Correct bug severities closes: Bug#91276 -- diff --git a/debian/rules b/debian/rules index 91fa056..b57e5c0 100755 --- a/debian/rules +++ b/debian/rules @@ -68,6 +68,7 @@ LIBDIR := $(TMPTOP)/usr/share/doc-base FHS_ARCHIVE =fhs-2.1-source.tar.gz FHS_HTML =fhs-2.1.html.tar.gz FHS_FILES =fhs/fhs.ps fhs/fhs.txt fhs/fhs.pdf +FHS_BYHAND =fhs-2.1.html.tar.gz fhs/fhs.txt # FSSTND_FILES =FSSTND-FAQ fsstnd-1.2.dvi.gz fsstnd-1.2.ps.gz fsstnd-1.2.txt.gz POLICY_FILES =policy.text.gz policy.sgml virtual-package-names-list.text \ upgrading-checklist.text libc6-migration.text version.ent \ @@ -80,7 +81,8 @@ BYHAND_FILES =policy.text.gz libc6-migration.text \ virtual-package-names-list.text menu-policy.text.gz \ mime-policy.text.gz policy.ps.gz policy.pdf.gz \ policy.html.tar.gz \ - debconf_spec/debconf_specification.txt.gz + debconf_spec/debconf_specification.txt.gz \ + $(FHS_BYHAND) install_file = /usr/bin/install -p -o root -g root -m 644 @@ -166,6 +168,7 @@ stamp-policy: build $(install_file) $(FHS_FILES) $(DOCDIR)/fhs/ $(install_file) debian/changelog $(DOCDIR)/ -gzip -fqr9 $(DOCDIR) + -gunzip $(DOCDIR)/version.ent $(install_file) debian/copyright $(DOCDIR)/ $(install_file) debian-policy.desc $(LIBDIR)/debian-policy (tar cf - policy.html) | (cd $(DOCDIR); tar xf -) @@ -180,17 +183,16 @@ stamp-policy: build chown -R root.root debian/tmp chmod -R go=rX debian/tmp dpkg --build debian/tmp .. - debiandoc2latexps policy.sgml - gzip -9qvf policy.ps - debiandoc2latexpdf policy.sgml - gzip -9qfv policy.pdf - GZIP=-9v tar zcf policy.html.tar.gz policy.html - $(install_file) version.ent $(DOCDIR)/ + debiandoc2latexps policy.sgml + gzip -9qvf policy.ps + debiandoc2latexpdf policy.sgml + gzip -9qfv policy.pdf + GZIP=-9v tar zcf policy.html.tar.gz policy.html for i in $(BYHAND_FILES); do \ $(install_file) $$i .. ; \ dpkg-distaddfile -fdebian/files `basename $$i` byhand - ; \ done - touch stamp-policy + touch stamp-policy define checkdir diff --git a/policy.sgml b/policy.sgml index 470d55e..8585882 100644 --- a/policy.sgml +++ b/policy.sgml @@ -44,7 +44,7 @@ This manual describes the policy requirements for the Debian GNU/Linux distribution. This includes the structure and - contents of the Debian archive, several design issues of the + contents of the Debian archive and several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution. The policy package itself is maintained by a group of maintainers @@ -58,7 +58,7 @@

Philip Hands phil@hands.com

-

Julian Gilbey J.D.Gilbey@qmw.ac.uk

+

Julian Gilbey jdg@debian.org

Manoj Srivastava srivasta@debian.org

@@ -89,10 +89,10 @@

A copy of the GNU General Public License is available as - /usr/share/common-licences/GPL in the Debian GNU/Linux + /usr/share/common-licenses/GPL in the Debian GNU/Linux distribution or on the World Wide Web at . You can also obtain it by writing to the + name="The GNU General Public Licence">. You can also obtain it by writing to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

@@ -108,7 +108,7 @@

This manual describes the policy requirements for the Debian GNU/Linux distribution. This includes the structure and - contents of the Debian archive, several design issues of the + contents of the Debian archive and several design issues of the operating system, as well as technical requirements that each package must satisfy to be included in the distribution. @@ -133,12 +133,13 @@ The material presented represents an interface to the packaging system that is mandated for use, and is used by, a significant number of packages, and - should not be changed without peer review. Package - maintainers can then rely on this interfaces not - changing, and the package management software - authors need to ensure compatibility with these - interface definitions. (control file and and - changelog file formats are one example) + therefore should not be changed without peer + review. Package maintainers can then rely on this + interfaces not changing, and the package + management software authors need to ensure + compatibility with these interface + definitions. (Control file and and changelog file + formats are examples.)

Chosen Convention @@ -159,7 +160,7 @@

- Please note that the footnotes present in this manual are + The footnotes present in this manual are merely informative, and are not part of Debian policy itself.

@@ -181,47 +182,56 @@

These classifications are roughly equivalent to the bug - severities important (for must or - required directive violations), normal + severities serious (for must or + required directive violations), minor, + normal or important (for should or recommended directive violations) and wishlist (for optional items). -

Also see RFC 2119.

+

Compare RFC 2119. Note, however, that these words are + used in a different way in this document.

Much of the information presented in this manual will be useful even when building a package which is to be - distributed in some other way or is for local use. + distributed in some other way or is intended for local use + only.

New versions of this document

The current version of this document is always accessible from the - Debian FTP server ftp.debian.org at + Debian FTP server ftp.debian.org as /debian/doc/package-developer/debian-policy.html.tar.gz - or from the Debian WWW server at + or from the .

+ name="Debian Policy Manual"> webpage.

In addition, this manual is distributed via the Debian package debian-policy.

+ +

+ The debian-policy package also includes the file + upgrading-checklist.txt which indicates policy + changes between versions of this document. +

Feedback

As the Debian GNU/Linux system is continuously evolving this - manual is changed from time to time. + manual does so too.

- While the authors of this document tried hard not to include - any typos or other errors these still occur. If you discover - an error in this manual or if you want to tell us any - comments, suggestions, or critics please send an email to + While the authors of this document have tried hard to avoid + typos and other errors, these do still occur. If you discover + an error in this manual or if you want to give any + comments, suggestions, or criticisms please send an email to the Debian Policy List, debian-policy@lists.debian.org, or submit a bug report against the debian-policy package. @@ -232,28 +242,31 @@ The Debian Archive

The Debian GNU/Linux system is maintained and distributed as a - collection of packages. Since there are so many of them (over - 5000) they are split into sections and priorities to - simplify handling of them. + collection of packages. Since there are so many of + them (currently well over 6000), they are split into + sections and given priorities to simplify + the handling of them.

The effort of the Debian project is to build a free operating system, but not every package we want to make accessible is - free in our sense (see Debian Free Software + free in our sense (see the Debian Free Software Guidelines, below), or may be imported/exported without restrictions. Thus, the archive is split into the sections main, non-free, contrib, non-US/main, non-US/non-free, and - non-US/contrib.

+ non-US/contrib. The sections are explained in detail + below. +

- The main and the non-US/main sections form - the Debian GNU/Linux distribution. + The main and the non-US/main sections + together form the Debian GNU/Linux distribution.

- Packages in the other sections are not considered as part of - the Debian distribution, though we support their use, and we + Packages in the other sections are not considered to be part + of the Debian distribution, although we support their use and provide infrastructure for them (such as our bug-tracking system and mailing lists). This Debian Policy Manual applies to these packages as well.

@@ -261,18 +274,19 @@ Package copyright and sections

- The aims of this policy are: + The aims of this section are: -

We want to make as much software available as we - can.

+

to allow us to make as much software available as we + can,

-

We want to encourage everyone to write free software.

+

to allow us to encourage everyone to write free + software, and

-

We want to make it easy for people to produce +

to allow us to make it easy for people to produce CD-ROMs of our system without violating any licenses, import/export restrictions, or any other laws.

@@ -281,8 +295,8 @@ The Debian Free Software Guidelines

- The Debian Free Software Guidelines (DFSG) is our - definition of `free' software. + The Debian Free Software Guidelines (DFSG) form our + definition of `free software'. These are: Free Redistribution @@ -326,7 +340,7 @@ source code. The license may require derived works to carry a different name or version number from the original software. (This is a compromise. The Debian - group encourages all authors to not restrict any + Project encourages all authors to not restrict any files, source or binary, from being modified.)

@@ -398,23 +412,26 @@ The main section

- Every package in "main" and "non-US/main" must comply with - the DFSG (Debian Free Software Guidelines).

+ Every package in main and non-US/main + must comply with the DFSG (Debian Free Software + Guidelines).

- In addition, the packages in "main" + In addition, the packages in main

- must not require a package outside of "main" for - compilation or execution (thus, the package must not - declare a "Depends", "Recommends", or - "Build-Depends" relationship on a non-main package), + must not require a package outside of main + for compilation or execution (thus, the package must + not declare a "Depends", "Recommends", or + "Build-Depends" relationship on a non-main + package),

must not be so buggy that we refuse to support them, + and

@@ -426,12 +443,13 @@

- Similarly, the packages in "non-US/main" + Similarly, the packages in non-US/main

- must not require a package outside of "main" or - "non-US/main" for compilation or execution, + must not require a package outside of main + or non-US/main for compilation or + execution,

@@ -451,63 +469,121 @@ The contrib section

- Every package in "contrib" and "non-US/contrib" must - comply with the DFSG. + Every package in contrib and + non-US/contrib must comply with the DFSG. +

+ +

+ In addition, the packages in contrib and + non-US/contrib + + +

+ must not be so buggy that we refuse to support them, + and +

+
+ +

+ must meet all policy requirements presented in this + manual. +

+
+ +

+ +

+ Furthermore, packages in contrib must not require + a package in a non-US section for compilation or + execution.

- Examples of packages which would be included in "contrib" - or "non-US/contrib" are + Examples of packages which would be included in + contrib or non-US/contrib are:

- free packages which require "contrib", "non-free" - packages or packages which are not in our - archive at all for compilation or execution, + free packages which require contrib, + non-free packages or packages which are not + in our archive at all for compilation or execution, + and

wrapper packages or other sorts of free accessories for - non-free programs, + non-free programs.

- The non-free section and non-US/non-free + The non-free section +

+ Packages must be placed in non-free or + non-US/non-free if they are not compliant with + the DFSG or are encumbered by patents or other legal + issues that make their distribution problematic. +

- Packages must be placed in "non-free" or "non-US/non-free" - if they are not compliant with the DFSG or are encumbered - by patents or other legal issues that make their - distribution problematic. + In addition, the packages in non-free and + non-US/non-free + + +

+ must not be so buggy that we refuse to support them, + and +

+ + +

+ must meet all policy requirements presented in this + manual that it is possible for them to meet. + +

+ It is possible that there are policy + requirements which the package is unable to + meet, for example, if the source is + unavailable. These situations will need to be + handled on a case-by-case basis. +

+ +

+
+

+ The non-US sections

- Some programs with cryptographic program code need to be stored - on the "non-US" server because of export restrictions of the - U.S. Such programs must be distributed in the appropriate - non-US section, either non-US/main, non-US/contrib or - non-US/non-free.

+ Some programs with cryptographic program code need to be + stored on the non-US server because of United + States export restrictions. Such programs must be + distributed in the appropriate non-US section, + either non-US/main, non-US/contrib or + non-US/non-free. +

This applies only to packages which contain cryptographic - code. A package containing a program with an interface to a - cryptographic program or a program that's dynamically linked - against a cryptographic library should not be distributed - via the non-us server if it is capable of running without the - cryptography library or program. + code. A package containing a program with an interface to + a cryptographic program or a program that's dynamically + linked against a cryptographic library should not be + distributed via the non-US server if it is + capable of running without the cryptographic library or + program.

Further copyright considerations

- Every package must be accompanied by a verbatim copy of its - copyright and distribution license in the file - /usr/share/doc/<package-name>/copyright (see - for details).

+ Every package must be accompanied by a verbatim copy of + its copyright and distribution license in the file + /usr/share/doc/<package-name>/copyright + (see for further details). +

We reserve the right to restrict files from being included anywhere in our archives if @@ -538,91 +614,130 @@

- Programs whose authors encourage the user to make donations - are fine for the main distribution, provided that the - authors do not claim that not donating is immoral, - unethical, illegal or something similar; otherwise they must - go in non-free.

+ Programs whose authors encourage the user to make + donations are fine for the main distribution, provided + that the authors do not claim that not donating is + immoral, unethical, illegal or something similar; in such + a case they must go in non-free.

Packages whose copyright permission notices (or patent - problems) do not allow redistribution even of only binaries, - and where no special permission has been obtained, must not be - placed on the Debian FTP site and its mirrors at all.

+ problems) do not even allow redistribution of binaries + only, and where no special permission has been obtained, + must not be placed on the Debian FTP site and its mirrors + at all.

- Note, that under international copyright law (this applies - in the United States, too) no distribution or - modification of a work is allowed without an explicit notice - saying so. Therefore a program without a copyright notice - is copyrighted and you may not do anything to it - without risking being sued! Likewise if a program has a - copyright notice but no statement saying what is permitted - then nothing is permitted.

+ Note that under international copyright law (this applies + in the United States, too), no distribution or + modification of a work is allowed without an explicit + notice saying so. Therefore a program without a copyright + notice is copyrighted and you may not do anything + to it without risking being sued! Likewise if a program + has a copyright notice but no statement saying what is + permitted then nothing is permitted.

Many authors are unaware of the problems that restrictive - copyrights (or lack of copyright notices) can cause for the - users of their supposedly-free software. It is often + copyrights (or lack of copyright notices) can cause for + the users of their supposedly-free software. It is often worthwhile contacting such authors diplomatically to ask - them to modify their license terms. However, this is a + them to modify their license terms. However, this can be a politically difficult thing to do and you should ask for - advice on debian-legal first.

+ advice on the debian-legal mailing list first, as + explained below. +

- When in doubt, send mail to + When in doubt about a copyright, send mail to debian-legal@lists.debian.org. Be prepared to provide us with the copyright statement. Software covered by the GPL, public domain software and BSD-like - copyrights are safe; be wary of the phrases `commercial use - prohibited' and `distribution restricted'.

+ copyrights are safe; be wary of the phrases `commercial + use prohibited' and `distribution restricted'. +

Subsections

- The packages in all the sections (main, - contrib, non-US/main, non-free, - non-US/contrib, and non-US/non-free) are - grouped further into subsections to simplify - handling.

+ The packages in the sections main, + contrib and non-free are grouped further + into subsections to simplify handling. +

- The section for each package should be specified in the - package's control record. However, the maintainer of - the Debian archive may override this selection to assure the - consistency of the Debian distribution.

+ The section and subsection for each package should be + specified in the package's Section control + record. However, the maintainer of the Debian archive + may override this selection to ensure the consistency of + the Debian distribution. The Section field + should be of the form: + + +

+ subsection if the package is in the + main section, +

+
+ +

+ section/subsection if the package is in + the contrib or non-free section, + and +

+
+ +

+ non-US, non-US/contrib or + non-US/non-free if the package is in + non-US/main, non-US/contrib or + non-US/non-free respectively. +

+
+
+

- Please check the current Debian distribution to see which - sections are available.

+ The Debian archive maintainers provide the authoritative + list of subsections. At present, they are: + admin, base, comm, + contrib, devel, doc, + editors, electronics, games, + graphics, hamradio, + interpreters, libs, mail, + math, misc, net, news, + non-US, non-free, oldlibs, + otherosfs, science, shells, + sound, tex, text, + utils, web, x11. +

Priorities

- Each package should have a priority value, - which is included in the package's control - record. This information is used in the Debian package - management tool to separate high-priority packages from - less-important packages.

+ Each package should have a priority value, which is + included in the package's control record. This + information is used by the Debian package management tools + to separate high-priority packages from less-important + packages.

- The following priority levels are supported by the - Debian package management system, dpkg. + The following priority levels are recognised by the + Debian package management tools. required

- required packages are necessary for the - proper functioning of the system. You must not remove - these packages or your system may become totally - broken and you may not even be able to use - dpkg to put things back. Systems with - only the required packages are probably - unusable, but they do have enough functionality to - allow the sysadmin to boot and install more - software.

+ Packages which are necessary for the proper + functioning of the system. You must not remove these + packages or your system may become totally broken and + you may not even be able to use dpkg to + put things back. Systems with only the + required packages are probably unusable, but + they do have enough functionality to allow the + sysadmin to boot and install more software.

important @@ -630,16 +745,23 @@ Important programs, including those which one would expect to find on any Unix-like system. If the expectation is that an experienced Unix person who - found it missing would say `What the F*!@<+ is - going on, where is foo', it must be in - important. This is an important criterion - because we are trying to produce, amongst other - things, a free Unix. Other packages without which the - system will not run well or be usable must also be - here. This does not include Emacs, the X - Window System, TeX or any other large applications. - The important packages are just a bare - minimum of commonly-expected and necessary tools.

+ found it missing would say `What on earth is going on, + where is foo?', it must be an + important package. + +

+ This is an important criterion because we are + trying to produce, amongst other things, a free + Unix. +

+
+ Other packages without which the system will not run + well or be usable must also have priority + important. This does + not include Emacs, the X Window System, TeX + or any other large applications. The + important packages are just a bare minimum of + commonly-expected and necessary tools.

standard @@ -650,20 +772,19 @@ else. It doesn't include many large applications, but it does include Emacs (this is more of a piece of infrastructure than an application) and a reasonable - subset of TeX and LaTeX (if this is possible without - X).

+ subset of TeX and LaTeX.

optional

- (In a sense everything is optional that isn't - required, but that's not what is meant here.) This is + (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 or don't have + 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. + and includes the X Window System, a full TeX + distribution, and many applications. Note that + optional packages should not conflict with each other.

extra @@ -681,8 +802,8 @@

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 must - be adjusted. + ensure this, the priorities of one or more packages may need + to be adjusted.