X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=policy.sgml;h=003675c1f5c5605ee7afb2f5e0dadfbf835eae21;hb=6ee89c2ae3c6a4fb7b07d207a882ac6e20e55a83;hp=2c0c72ad77ed5ebf6b49cded4c26a9ce024b574b;hpb=fd12af4ff32ea9c025a0e9c21127d78cf120051c;p=debian%2Fdebian-policy.git diff --git a/policy.sgml b/policy.sgml index 2c0c72a..003675c 100644 --- a/policy.sgml +++ b/policy.sgml @@ -714,21 +714,62 @@

The Debian archive maintainers provide the authoritative list of sections. At present, they are: - admin, cli-mono, comm, database, - devel, debug, doc, editors, - education, electronics, embedded, - fonts, games, gnome, graphics, - gnu-r, gnustep, hamradio, haskell, - httpd, interpreters, introspection, - java, kde, kernel, libs, - libdevel, lisp, localization, - mail, math, metapackages, misc, - net, news, ocaml, oldlibs, - otherosfs, perl, php, python, - ruby, science, shells, sound, - tex, text, utils, vcs, - video, web, x11, xfce, - zope. The additional section debian-installer +admin, +cli-mono, +comm, +database, +debug, +devel, +doc, +editors, +education, +electronics, +embedded, +fonts, +games, +gnome, +gnu-r, +gnustep, +graphics, +hamradio, +haskell, +httpd, +interpreters, +introspection, +java, +kde, +kernel, +libdevel, +libs, +lisp, +localization, +mail, +math, +metapackages, +misc, +net, +news, +ocaml, +oldlibs, +otherosfs, +perl, +php, +python, +ruby, +science, +shells, +sound, +tasks, +tex, +text, +utils, +vcs, +video, +web, +x11, +xfce, +zope. + The additional section debian-installer contains special packages used by the installer and is not used for normal Debian packages.

@@ -2631,6 +2672,7 @@ Package: libc6 Build-Depends et al Standards-Version (recommended) Homepage + Vcs-Browser, Vcs-Git, et al.

@@ -2646,6 +2688,7 @@ Package: libc6 Depends et al Description (mandatory) Homepage + Built-Using

@@ -2701,6 +2744,7 @@ Package: libc6 Maintainer (mandatory) Description (mandatory) Homepage + Built-Using

@@ -2723,6 +2767,7 @@ Package: libc6 Uploaders DM-Upload-Allowed Homepage + Vcs-Browser, Vcs-Git, et al. Standards-Version (recommended) Build-Depends et al Checksums-Sha1 @@ -3725,16 +3770,65 @@ Checksums-Sha256: DM-Upload-Allowed

- The most recent version of a package uploaded to unstable or - experimental must include the field DM-Upload-Allowed: - yes in the source section of its source control file for - the Debian archive to accept uploads signed with a key in the - Debian Maintainer keyring. See the General + Indicates that Debian Maintainers may upload this package to + the Debian archive. The only valid value is yes. If + the field DM-Upload-Allowed: yes is present in the + source section of the source control file of the most recent + version of a package in unstable or experimental, the Debian + archive will accept uploads of this package signed with a key + in the Debian Maintainer keyring. See the General Resolution for more details.

+ + + Version Control System (VCS) fields + +

+ Debian source packages are increasingly developed using VCSs. The + purpose of the following fields is to indicate a publicly accessible + repository where the Debian source package is developed. + + + Vcs-Browser + +

+ URL of a web interface for browsing the repository. +

+
+ + + Vcs-Arch, Vcs-Bzr (Bazaar), Vcs-Cvs, + Vcs-Darcs, Vcs-Git, Vcs-Hg + (Mercurial), Vcs-Mtn (Monotone), Vcs-Svn + (Subversion) + + +

+ The field name identifies the VCS. The field's value uses the + version control system's conventional syntax for describing + repository locations and should be sufficient to locate the + repository used for packaging. Ideally, it also locates the + branch used for development of new versions of the Debian + package. +

+

+ In the case of Git, the value consists of a URL, optionally + followed by the word -b and the name of a branch in + the indicated repository, following the syntax of the + git clone command. If no branch is specified, the + packaging should be on the default branch. +

+

+ More than one different VCS may be specified for the same + package. +

+
+ +

+ @@ -4605,13 +4699,13 @@ fi

The relations allowed are <<, <=, - =, >= and >> for - strictly earlier, earlier or equal, exactly equal, later or - equal and strictly later, respectively. The deprecated - forms < and > were used to mean - earlier/later or equal, rather than strictly earlier/later, - so they should not appear in new packages (though - dpkg still supports them). + =, >= and >> for strictly + earlier, earlier or equal, exactly equal, later or equal and + strictly later, respectively. The deprecated + forms < and > were confusingly used to + mean earlier/later or equal, rather than strictly earlier/later, + and must not appear in new packages (though dpkg + still supports them with a warning).

@@ -4675,7 +4769,8 @@ Build-Depends: kernel-headers-2.2.10 [!hurd-i386],

- For binary relationship fields, the architecture restriction + For binary relationship fields and the Built-Using + field, the architecture restriction syntax is only supported in the source package control file debian/control. When the corresponding binary package control file is generated, the relationship will either @@ -5399,6 +5494,53 @@ Replaces: mail-transport-agent

+ + + Additional source packages used to build the binary + - Built-Using + + +

+ Some binary packages incorporate parts of other packages when built + but do not have to depend on those packages. Examples include + linking with static libraries or incorporating source code from + another package during the build. In this case, the source packages + of those other packages are a required part of the complete source + (the binary package is not reproducible without them). +

+ +

+ A Built-Using field must list the corresponding source + package for any such binary package incorporated during the build + + Build-Depends in the source package is not adequate since + it (rightfully) does not document the exact version used in the + build. + , + including an "exactly equal" ("=") version relation on the version + that was used to build that binary package + The archive software might reject packages that refer to + non-existent sources. + . +

+ +

+ A package using the source code from the gcc-4.6-source + binary package built from the gcc-4.6 source package would + have this field in its control file: + +Built-Using: gcc-4.6 (= 4.6.0-11) + +

+ +

+ A package including binaries from grub2 and loadlin would + have this field in its control file: + +Built-Using: grub2 (= 1.99-9), loadlin (= 1.6e-1) + +

+
@@ -6279,6 +6421,12 @@ install -m644 debian/shlibs.package debian/package/DEBIAN/ in /run should be stored on a temporary file system.

+

+ Packages must not assume the /run + directory exists or is usable without a dependency + on initscripts (>= 2.88dsf-13.3) until the + stable release of Debian supports /run. +

@@ -7978,9 +8126,10 @@ fname () { as its interpreter. Checking your script with checkbashisms from the devscripts package or running your script - with posh may help uncover violations of the above - requirements. If in doubt whether a script complies with these - requirements, use /bin/bash. + with an alternate shell such as posh may help + uncover violations of the above requirements. If in doubt + whether a script complies with these requirements, + use /bin/bash.

@@ -9933,6 +10082,10 @@ END-INFO-DIR-ENTRY README.Debian or some other appropriate place.

+

+ All copyright files must be encoded in UTF-8. +

+ Machine-readable copyright information @@ -10480,10 +10633,10 @@ END-INFO-DIR-ENTRY the PATH if necessary, and pass its second and subsequent arguments to the command it calls. If no root-command is supplied - then dpkg-buildpackage will take no - special action to gain root privilege, so that for - most packages it will have to be invoked as root to - start with.

+ then dpkg-buildpackage will use + the fakeroot command, which is sufficient + to build most packages without actually requiring root + privileges.

-b, -B