Architecture restrictions are supported for binary packages
Document architecture restrictions for binary relationship fields
as well as build relationships, with their limitation that they're
only valid in source package control files and are used to generate
the fields in the binary package.
Introduce control information files, which refer to the members of
the control.tar.gz part of the .deb, and change terminology to be
consistent about that term, control files, and control fields.
Breaks/Conflicts should not be used unless necessary
State explicitly that Breaks and Conflicts should only be used where
needed, and should not be used if two packages merely provide similar
functionality.
Remove the instructions for how to create shlibs.local files and the
encouragement to do so if one runs into errors with dpkg-shlibdeps, since
the archive coverage for shlibs is now complete and writing a shlibs.local
file is unlikely to be an appropriate solution to one's problem.
* Revise the footnote discussing shlibs creation to not talk about the
switch to objdump as if it were a new innovation and to explicitly
mention the NEEDED attribute as the source of dependency information.
Also fix markup, formatting, indentation, and phrasing in multiple
places.
Russ Allbery [Wed, 30 Jun 2010 18:02:54 +0000 (11:02 -0700)]
Rewrite requirements around libtool .la file handling
State that .la files should normally not be included in Debian
packages, with special exceptions for libraries loaded by libltdl and
for .la files on which other .la files may depend. State that
dependency_libs should be emptied if the .la files have to be
retained. Exclude non-public libraries and loadable modules from
these requirements.
Russ Allbery [Tue, 29 Jun 2010 17:43:06 +0000 (10:43 -0700)]
Clarify the banned dependencies between main and non-main
* Add Pre-Depends and Build-Depends-Indep to the relationships not
allowed from main to contrib or non-free and mention that such
relationships are okay if the non-free package is only an
alternative. Thanks, Raphael Geissert. (Closes: #587279)
Russ Allbery [Sat, 26 Jun 2010 22:32:01 +0000 (15:32 -0700)]
Further minor updates around the Format field description
Be clear which control files consist of a single paragraph and use
consistent terminology. Be more consistent about <file> markup. Use
an SGML entity for the .changes file version to avoid repeating it.
Russ Allbery [Tue, 22 Jun 2010 17:07:18 +0000 (10:07 -0700)]
Further revisions to the Format update
Drop historical information about the version changes in .changes
files. It doesn't seem useful at this point. Specify the format
of Format for source packages separately since referring to the
version format with exceptions and additions is more confusing and
it's not really a version in the same sense. Add the full list of
supported source package formats in a footnote. Add a bit more
explanation for how the source package format is used.
Charles Plessy [Sat, 29 May 2010 03:49:34 +0000 (12:49 +0900)]
Clarification of the Format field in control files -- patch for #547272.
The Format field has a different meaning for Debian source control files and
Debian changes files. This patch :
- documents the use and syntax of the Format field for these two types
of control files.
- Specifies the format 1.8 of Debian changes files, adds descriptions for
the Checksums-Sha1 and Checksums-Sha256 files, and provides some history
for the Closes, Changed-By and Maintainer fields.
Russ Allbery [Mon, 21 Jun 2010 16:29:32 +0000 (09:29 -0700)]
Document debconf SETTITLE command
Document the SETTITLE command in the debconf policy. Inclusion of this
command should not pose any problems as it has been supported since 2003
(debconf version 1.3.22).
Russ Allbery [Wed, 16 Jun 2010 18:00:04 +0000 (11:00 -0700)]
Significantly rework the discussion of Breaks and Conflicts
Recommend Breaks over Conflicts for most purposes. List the places
Breaks should be used and the places Conflicts should be used. Add
Breaks to the example in Replaces, and add a footnote explaining
why Breaks is normally required along with Replaces when files are
moving between packages. Add additional discussion of conflicting
with a virtual package.
Russ Allbery [Sun, 13 Jun 2010 20:14:43 +0000 (13:14 -0700)]
Tighten requirements for maintainer-like fields
The syntax of Maintainer is a must, not a should. The comma
separator in Uploaders is a must, not a should. Now allow people
to use multi-line Uploaders fields freely. Be explicit that the
Changed-By field has the same syntax as Maintainer and be clearer
about what identity goes here.
Russ Allbery [Sat, 12 Jun 2010 20:26:28 +0000 (13:26 -0700)]
Document Checksums-Sha1 and Checksums-Sha256
Add documentation for the Checksums-Sha1 and Checksums-Sha256 fields
and mark them as recommended for both source and changes files. Also
reorder the field listing in source and changes files to match the
order in which dpkg-dev writes the fields.
Russ Allbery [Sat, 12 Jun 2010 19:57:40 +0000 (12:57 -0700)]
Relax requirement that library development files be in one package
Say instead that installing the library development package must
result in installation of all the required files, which allows for
further splits with appropriate Depends.
Russ Allbery [Sat, 12 Jun 2010 19:25:02 +0000 (12:25 -0700)]
Clarify the wording about which build dependencies must be satisfied
* Clarify the wording around which build dependencies must be satisfied
for different debian/rules targets and add a footnote to the
description of the build-arch and build-indep targets explaining why
this split does not currently work as desired. (Closes: #328951)
Russ Allbery [Thu, 10 Jun 2010 20:10:26 +0000 (13:10 -0700)]
Do not tell packagers to reference /usr/share/common-licenses/BSD
Remove the University of California BSD license from the list of
licenses that should be represented by references to
/usr/share/common-licenses and explain in the footnote why packages
should copy the license text instead.
Russ Allbery [Wed, 9 Jun 2010 18:34:41 +0000 (11:34 -0700)]
Some additional fixes to the license classification script
Add counts for any version of the GFDL, GPL, or LGPL. Clarify which
version of the LaTeX PPL this is checking. Add a total package count
to the bottom.
Russ Allbery [Wed, 9 Jun 2010 18:25:25 +0000 (11:25 -0700)]
Add a script to count license usage in Debian
Add tools/license-count, which takes the path to a Lintian lab and
counts license usage in Debian using regular expression matches
against the text of the debian/copyright file.
Charles Plessy [Tue, 1 Jun 2010 01:27:39 +0000 (10:27 +0900)]
Specification of date format -- bug #569174.
RFC 822 dates use only two digits for the years, but Debian changelogs
described by this paragraph (§4.4 in Policy 3.8.4) use four digits.
This patch replaces the reference to the RFC 822 by a specification that is
compatible with its successors, RFC 2822 and RFC 5322, but does not use their
full range of options.
Russ Allbery [Fri, 4 Jun 2010 16:43:00 +0000 (09:43 -0700)]
Reletter Process and update HTML style for *.org files
Reletter the process steps to not skip State C and use more
traditional foreground and background colors for Process.html and
README.html. (Closes: #584521)
Russ Allbery [Fri, 4 Jun 2010 16:24:20 +0000 (09:24 -0700)]
Perl: Recommend DESTDIR instead of PREFIX with Makefile.PL
Packages using Makefile.PL should use DESTDIR rather than PREFIX
to install into the package staging area. PREFIX only worked due
to a Debian-local patch.
Russ Allbery [Fri, 4 Jun 2010 05:44:14 +0000 (22:44 -0700)]
Remove footnote listing all known architectures
Remove the footnote listing every architecture known to dpkg. This
list can be trivially produced by dpkg-architecture -L (already
noted), is very long, and quickly becomes out-of-date.
Russ Allbery [Fri, 4 Jun 2010 05:20:44 +0000 (22:20 -0700)]
Move Architecture Wildcards to a subsection
Make Architecture Wildcards a subsection of Architecture specification
strings so that we don't renumber all the subsequent sections (and
because it seems to make slightly more sense).
Russ Allbery [Thu, 3 Jun 2010 17:04:11 +0000 (10:04 -0700)]
Perl Policy: Change perlapi provides to use an ABI version
Perl now provides perlapi-<abiversion> where <abiversion> may be
more than just the version of Perl. Packages must update their
dependencies accordingly, using $Config{debian_abi} to form the
package dependency if set and falling back on $Config{version}
otherwise.
Reorganize and rephrase the description of architecture wildcards
to combine related paragraphs and to ensure consistency of wording
between the source control section and the *.dsc section.
Russ Allbery [Wed, 2 Jun 2010 17:02:43 +0000 (10:02 -0700)]
Document debian-installer section and link to section list
Document the special debian-installer section in the list of current
sections and add a link to the list of sections in unstable, which
contains longer descriptions. (Closes: #577666)
Russ Allbery [Wed, 2 Jun 2010 16:37:39 +0000 (09:37 -0700)]
Remove documentation of alternative changelog formats
Remove documentation of alternative changelog formats. This feature
is not allowed in the Debian archive and will be documented in the
dpkg-dev documentation instead. The documentation that was in Policy
was also somewhat outdated. (Closes: #555009, see #584141)