Created On : Thu Oct 29 20:54:48 1998
Created On Node : tiamat.datasync.com
Last Modified By : Manoj Srivastava
- Last Modified On : Fri Jan 19 14:01:36 2001
- Last Machine Used: glaurung.green-gryphon.com
- Update Count : 15
+ Last Modified On : Mon Aug 23 14:19:01 2004
+ Last Machine Used: glaurung.internal.golden-gryphon.com
+ Update Count : 49
Status : Unknown, Use with caution!
HISTORY :
Description :
<p>
The checklist below has been created to simplify the upgrading process
-of old packages. Note, that this list is not `official.' If you have
+of old packages. Note that this list is not `official'; it simply
+gives an indication of what has changed and whether you are likely to
+need to make changes to your package in light of this. If you have
doubts about a certain topic, if you need more details, or if you
think some other package does not comply with policy, please refer to
-the Policy Manual.
+the Policy Manual itself. All of the changes from version 3.0.0
+onwards indicate which section of the Policy Manual discusses the
+issue: [3.4] means section 3.4. The section numbering changed when
+the packaging manual was incorporated into policy; the section numbers
+used below refer to the current version.
</p>
<p>
-Here is how the check list works: Check out which policy version your
-packages complies with currently. Than move upwards until the top and
-check which of the items on the list might concern your package. If an
-item does not give you enough details, please check out the Policy
-Manual.
+Here is how the check list works: Check which policy version your
+package complies with currently (indicated in the "Standards-Version"
+field of the source package). Then move upwards until the top and
+check which of the items on the list might concern your package. Note
+which sections of policy discuss this, and then check out the Policy
+Manual for details. If you are upgrading from Policy version < 2.5.0,
+it may be easier to check through the whole of policy instead of
+picking your way through this list.
</p>
<h2>The checklist</h2>
<pre>
-3.5.3.0 Apr 01
- Policy Manual:
+3.6.2.0 2004
+ * Recommend doc-base, and not menu, for registering package documentation.
+
+
+3.6.1.0 Aug 2003
+ + Prompting the user should be done using debconf. Non debconf
+ user prompts are now deprecated. [3.10.1]
+
+3.6.0 Jul 2003
+
+ - Restructuring causing shifts in section numbers and bumping of
+ the minor version number:
+ + Many packaging manual appendices that were integrated into policy
+ sections are now empty, and replaced with links to the Policy.
+ In particular, the appendices that included the list of control
+ fields were updated (new fields like Closes, Changed-By were added)
+ and the list of fields for each of control, .changes and .dsc files
+ is now in Policy, and they're marked mandatory, recommended or
+ optional based on the current practice and the behaviour of the
+ deb-building toolchain.
+ + Elimination of needlessly deep section levels, primarily in the
+ chapter Debian Archive, from which two new chapters were split out,
+ Binary packages and Source packages. What remained was reordered
+ properly, that is, some sect1s became sects etc.
+ + Several sections that were redundant, crufty or simply not designed
+ with any sort of vision, were rearranged according to the formula that
+ everything should be either in the same place or properly interlinked.
+ Some things remained split up between different chapters when they
+ talked about different aspects of files: their content, their syntax,
+ and their placement in the file system. In particular, see the new
+ sections about changelog files.
+ - Added Games/Simulation and Apps/Education to menu subpolicy
+ [menu policy]
+ - Debian changelogs should be UTF-8 encoded. [C.2.2]
+ - shared libraries must be linked against all libraries that they
+ use symbols from in the same way that binaries are. [10.2]
+ - build-depends-indep need not be satisfied during clean
+ target. [7.6]
+
+3.5.10 May 2003
+
+ - packages providing the x-terminal-emulator virtual package
+ ought to ensure that they interpret the command line exactly
+ like xterm does. [11.8.3]
+ - Window managers compliant with the Window Manager Specification
+ Project may add 40 points for ranking in the alternatives [11.8.4]
+
+
+3.5.9.0 Mar 2003
+
+ - The section describing the Description: package field once again has
+ full details of the long description format. [3.4.2]
+ - Clarified that if a package has non-build-essential
+ build-dependencies, it should have them listed in the Build-Depends
+ and related fields (i.e. it's not merely optional). [4.2]
+ - When asked to restart a service that isn't already running,
+ the init script should start the service. [9.3.2]
+ - If the purpose of a package is to provide examples, then the
+ example files can be installed into <tt>/usr/share/doc/package</tt>
+ (rather than <tt>/usr/share/doc/package/examples</tt>). [12.6]
+
+
+3.5.8.0 Nov 2002
+
+ - It is no longer necessary to keep a log of changes to the upstream
+ sources in the copyright file. Instead, all such changes should be
+ documented in the changelog file. [12.7]
+ - <tt>Build-Depends</tt>, <tt>Build-Conflicts</tt>,
+ <tt>Build-Depends-Indep</tt>, and
+ <tt>Build-Conflicts-Indep</tt> must also be satisfied when the
+ clean target is called. [7.6]
+ - A new Apps/Science menu section is available [menu policy]
+ - debconf specification cleared up, various changes. [debconf
+ policy]
+ - It is no longer recommended to create symlinks from nonexistent
+ manual pages to undocumented(7). Missing manual pages for programs
+ are still a bug. [12.1]
+
+3.5.7.0 Aug 2002
+
+ - Packages no longer have to ask permission to call MAKEDEV in
+ postinst, merely notifying the user ought to be enough. [10.6]
+ - cryptographic software may now be included in the main
+ archive. [2.2.4]
+ - task packages are no longer permitted; tasks are now created by a
+ special Tasks: field in the control file. [3.9]
+ - window managers that support netwm can now add 20 points when
+ they add themselves as an alternative for
+ /usr/bin/x-window-manager [11.8.4]
+ - The default compilation options have now changed, one should
+ provide debugging symbols in all cases, and optionally step
+ back optimization to -O0, depending on the DEB_BUILD_OPTIONS
+ environment variable. [10.1]
+ - Added mention of build-arch, build-indep, etc, in describing
+ the relationships with `Build-Depends', `Build-Conflicts',
+ `Build-Depends-Indep', and `Build-Conflicts-Indep'. May need to
+ review the new rules. [7.6, 4.8]
+ - Changed rules on how, and when, to invoke ldconfig in maintainer
+ scripts. Long rationale. [8]
+ - [Added the last note in 3.5.6 upgrading checklist item regarding
+ build rules, please see below]
+
+3.5.6.0 Jul 2001
+
+ - Emacs and TeX are no longer mandated by policy to be priority
+ standard packages [2.5]
+ - Programs that access docs need to do so via /usr/share/doc, and
+ not via /usr/doc/ as was the policy previously [11.5]
+ - Putting documentation in /usr/doc versus /usr/share/doc is now
+ a ``serious'' policy violation. [12.3]
+ - For web servers, one should not provide non-local access to the
+ /usr/share/doc hierarchy. If one can't provide access controls for
+ the http://localhost/doc/ directory, then it is preferred that one
+ ask permission to expose that information during the install. [11.5]
+ - There are new rules for build-indep/build-arch targets and
+ there is a new Build-Depend-Indep semantic. [7]
+
+
+3.5.5.0 May 2001
+
+ - Manpages should not rely on header information to have
+ alternative manpage names available; it should only use
+ symlinks or .so pages to do this [12.1]
+ - [Clarified note in 3.5.3.0 upgrading checklist regarding
+ examples and templates: this refers only to those examples used
+ by scripts; see section 10.7.3 for the whole story]
+ - Included a new section 10.9.1 describing the use of
+ dpkg-statoverride; this does not have the weight of policy
+ - Clarify Standards-Version: you don't need to rebuild your
+ packages just to change the Standards-Version!
+ - Plugins are no longer bound by all the rules of shared
+ libraries [10.2]
+ - X Windows related things:
+ * Clarification of priority levels of X Window System related
+ packages [11.8.1]
+ * Rules for defining x-terminal-emulator improved [11.8.3]
+ * X Font policy rewritten: you must read this if you provide
+ fonts for the X Window System [11.8.5]
+ * Packages must not ship /usr/X11R6/lib/X11/app-defaults/ [11.8.6]
+ * X-related packages should usually use the regular FHS
+ locations; imake-using packages are exempted from this [11.8.7]
+ * OpenMotif linked binaries have the same rules as
+ OSF/Motif-linked ones [11.8.8]
+
+
+3.5.4.0 Apr 2001
+
+ - The system-wide mail directory is now /var/mail, no longer
+ /var/spool/mail. Any packages accessing the mail spool should
+ access it via /var/mail and include a suitable Depends field;
+ details in [11.6]
+ - The perl policy is now part of Debian policy proper. Perl
+ programs and modules should follow the current Perl policy
+ [11.9; perl-policy]
+
+
+3.5.3.0 Apr 2001
+
- Build-Depends arch syntax has been changed to be less
- ambiguous. This should not affect any current packages
- - Examples and templates should now live in
- /usr/share/<package> or /usr/lib/<package>, with
- symbolic links from /usr/share/doc//<package>/examples as
- needed.
-
-3.5.2.0 Feb 01
- Policy Manual:
+ ambiguous. This should not affect any current packages [7.1]
+ - Examples and templates files for use by scripts should now live
+ in /usr/share/<package> or /usr/lib/<package>, with
+ symbolic links from /usr/share/doc/<package>/examples as
+ needed [10.7.3]
+
+
+3.5.2.0 Feb 2001
+
- X app-defaults directory has moved from
- /usr/X11R6/lib/X11/app-defaults to /etc/X11/app-defaults.
+ /usr/X11R6/lib/X11/app-defaults to /etc/X11/app-defaults [11.8.6]
+
+
+3.5.1.0 Feb 2001
-3.5.1.0 Feb 01
- Policy Manual:
- dpkg-shlibdeps now uses objdump, so shared libraries have to be
- run through dpkg-shlibdeps as well as executables
+ run through dpkg-shlibdeps as well as executables [8.1]
+
+
+3.5.0.0 Jan 2001
-3.5.0.0 Jan 01
- Policy Manual:
- - If your package had fonts for the X Window System, and you
- converted BDF to PCF formats, the <tt>bdftopcf</tt> utility has
- moved to the xutils package.
- Font packages for the X Window System must now declare a
- dependency on xutils >= 4.0.2
+ dependency on xutils (>= 4.0.2) [11.8.5]
-3.2.1.1 Jan 01
- Policy Manual:
- - If your package has a daemon startup script in /etc/init.d/,
- and that script has parameters a system administrator may need,
- you need to modify the script to read values from a conffile
- placed in /etc/default/ directory. This conffile maybe sourced
- by the init.d script to determine the sonfigurable values (and
- the conffile may contain only variable settings and comments).
- - Files in /usr/share/doc may not be referenced by any
- program. If such files are needed, they must be placed in
- /usr/share/package-name/, and symbolic links created as required
- in /usr/share/doc/package-name/
+3.2.1.1 Jan 2001
+
+ - Daemon startup scripts in /etc/init.d/ should not contain
+ modifiable parameters; these should be moved to a file in
+ /etc/default/; see [9.3.2] for details
+ - Files in /usr/share/doc must not be referenced by any
+ program. If such files are needed, they must be placed in
+ /usr/share/<package>/, and symbolic links created as required
+ in /usr/share/doc/<package>/ [12.3]
- Much of the packaging manual has now been imported into the
policy document
+
3.2.1.0 Aug 00
- Policy Manual:
- A package of priority standard or higher may provide two
binaries, one compiled with support for the X Window System,
- and the other without.
+ and the other without [11.8.1]
+
3.2.0.0 Aug 00
- Policy Manual:
- By default executables should not be built with the debugging
option -g. Instead, it is recommended to support building the
- package with debugging information optionally. Please look at the
- examples using DEB_BUILD_OPTIONS in the policy manual.
- - Policy for packages where the upstream uses html changelog
- files has been expanded. In short, a plain text changelog file
- should always be generated for the upstream changes.
- - Please note that the new release of the X window system (4.x)
- shall probably need sweeping changes in policy.
- - Policy for packages providing an X server has been codified
- (formalizes existing practice - use virtual package xserver)
- - Policy for packages providing an X terminal emulator has been
- codified (use virtual package x-terminal-emulator)
- - Policy for packages providing an X window manager has been
- codified (use virtual package x-window-manager, and also as an
- alternative for /usr/bin/x-window-manager. The policy has
- guidelines on how to calculate priority)
- - Policy for packages providing an X fonts has been
- codified. Please look into the manual for details; this section
- has been written from scratch.
+ package with debugging information optionally. Details in [10.1]
+ - Policy for packages where the upstream uses HTML changelog
+ files has been expanded. In short, a plain text changelog file
+ should always be generated for the upstream changes [12.8]
+ - Please note that the new release of the X window system (3.2)
+ shall probably need sweeping changes in policy
+ - Policy for packages providing the following X-based features
+ has been codified:
+ - X server (virtual package xserver) [11.8.2]
+ - X terminal emulator (virtual package x-terminal-emulator) [11.8.3]
+ - X window manager (virtual package x-window-manager, and
+ /usr/bin/x-window-manager alternative, with priority
+ calculation guidelines) [11.8.4]
+ - X fonts (this section has been written from scratch) [12.8.5]
+ - X application defaults [11.8.6]
- Policy for packages using the X Window System and FHS issues
- has been clarified. Please read the manual for details.
- - Policy for packages providing an X application default has been
- clarified.
- - No package may contain or make hard links to conffiles.
-
- Packaging Manual:
+ has been clarified; see [11.8.7]
+ - No package may contain or make hard links to conffiles [11.7.3]
- Noted that newer dpkg versions do not require extreme care in
always creating the shared lib before the symlink, so the unpack
- order be correct.
+ order be correct [8]
-3.1.1.0 Nov 99
- Packaging Manual:
+3.1.1.0 Nov 1999
+
- Correction to semantics of architecture lists in Build-Depends
- etc. Should not affect many packages.
+ etc. Should not affect many packages [7.1]
-3.1.0.0 Oct 99
- Policy Manual:
+3.1.0.0 Oct 1999
+
- /usr/doc/<package> has to be a symlink pointing to
- /usr/share/doc/<package>. This symlink has to be
- maintained by postinst and prerm, because dpkg will cause
- problems otherwise. Create/remote the symlinks using debhelper
- or see section "6.4. Accessing the documentation" for more
- information.
- - Introduced source dependencies (Build-Depends, etc.). (Whereas
- this ought to demand a major policy number rise, we've only
- just had one of them, so I'm going to use a minor number
- instead.)
+ /usr/share/doc/<package>, to be maintained by postinst
+ and prerm scripts. Details are in [defunct]
+ - Introduced source dependencies (Build-Depends, etc.) [7.1, 7.6]
- /etc/rc.boot has been deprecated in favour of /etc/rcS.d.
- Packages should not be touching this directory, anyway, but
- should use update-rc.d instead.
+ (Packages should not be touching this directory, but should use
+ update-rc.d instead) [9.3.4]
- update-rc.d is now the *only* allowable way of accessing the
/etc/rc?.d/[SK]??* links. Any scripts which manipulate them
directly must be changed to use update-rc.d instead. (This is
because the file-rc package handles this information in an
- incompatible way.)
- - Compiled examples go in /usr/lib/<package>/examples with
- symlinks from /usr/share/doc/<package>/examples/* or from
- /usr/share/doc/<package>/examples itself.
+ incompatible way.) [9.3.3]
+ - Architecture-specific examples go in /usr/lib/<package>/examples
+ with symlinks from /usr/share/doc/<package>/examples/* or from
+ /usr/share/doc/<package>/examples itself [12.7]
- Updated FHS to a 2.1 draft; this reverts /var/state to
- /var/lib.
- - Added MIME sub-policy document.
- - VISUAL is allowed as a (higher priority) alternative to EDITOR.
+ /var/lib [9.1.1]
+ - Added MIME sub-policy document [9.7; mime-policy]
+ - VISUAL is allowed as a (higher priority) alternative to EDITOR [12.4]
- Modified liblockfile description, which affects
mailbox-accessing programs. Please see the policy document for
- details.
+ details [11.6]
- If a package provides a changelog in HTML format, a text-only
- version should also be included. Such a version may be prepared
- using lynx -dump -nolist.)
-
- Packaging Manual:
+ version should also be included. (Such a version may be prepared
+ using lynx -dump -nolist.) [12.7]
- Description of how to handle version numbers based on dates
- added: see section 5.1.
+ added [3.2.1]
-3.0.1.0 Jul 99
+3.0.1.0 Jul 1999
- Policy Manual:
- Added the clarification that the .la files are essential for the
packages using libtool's libltdl library, in which case the
- .la files must go in the run-time library package.
+ .la files must go in the run-time library package [10.2]
-3.0.0.0 Jun 99
+3.0.0.0 Jun 1999
- Policy Manual:
- Debian formally moves from the FSSTND to the FHS. This is a
major change, and the implications of this move are probably
- not all known.
+ not all known. [9.1]
- Only 3 digits of the Standards version need be included in
- control files, though all four digits are still permitted.
+ control files, though all four digits are still permitted. [4.1]
- The location of the GPL has changed to
/usr/share/common-licenses. This may require changing the
copyright files to point to the correct location of the GPL and
- other major licenses
+ other major licenses [12.6]
- Packages that use libtool to create shared libraries must
- include the .la files in the -dev packages.
- - Use logrotate to rotate log files
+ include the .la files in the -dev packages [10.2]
+ - Use logrotate to rotate log files [10.8]
- section 5.8 has been rewritten (Programs for the X Window
- System)
- - There is now anassociated menu policy, in a separate document,
- that carries the full weight of Debian policy.
- - The files `/var/run/utmp', `/var/log/wtmp' and
- `/var/log/lastlog' must be installed writeable by group
- utmp. Programs who need to modify those files must be installed
- install setgid utmp.
+ System) [now 11.8]
+ - There is now an associated menu policy, in a separate document,
+ that carries the full weight of Debian policy [9.6; menu-policy]
+ - Programs which need to modify the files /var/run/utmp,
+ /var/log/wtmp and /var/log/lastlog must be installed setgid utmp [11.3]
+
+
+** Please note that section numbers below this point may not be up to date **
-2.5.0.0 Oct 98
+2.5.0.0 Oct 1998
Policy Manual:
- Rearranged the manual to create a new Section 4, Files
- Ratified the architecture specification strings to cater to the
HURD.
-2.4.1.0 Apr 98
+2.4.1.0 Apr 1998
Policy Manual:
- Updated section 3.3.5 Symbolic links:
installs shared libraries
(cf., Policy Weekly Issue #6, fixes:bug#20515)
-2.4.0.0 Jan 98
+2.4.0.0 Jan 1998
- Updated section 3.3.4 Scripts:
+ /bin/sh may be any POSIX compatible shell
+ /etc/news/organization and /etc/news/server should be supported
by all news servers and clients
- - Updated section 4.7 Programs for the X Windows system:
+ - Updated section 4.7 Programs for the X Window System:
+ programs requiring a non-free Motif library should be provided
as foo-smotif and foo-dmotif package
+ if lesstif works reliably for such program, it should be linked
+ games for X Windows have to be installed in /usr/games, just as
non-X games
-2.3.0.1, 2.3.0.0 Sep 97
+2.3.0.1, 2.3.0.0 Sep 1997
* new section `4.2 Daemons' including rules for
/etc/services, /etc/protocols, /etc/rpc, and /etc/inetd.conf
* MUAs and MTAs have to use liblockfile
-2.2.0.0 Jul 97
+2.2.0.0 Jul 1997
* added section 4.1 `Architecture specification strings':
use
* app-defaults files may not be conffiles
-2.1.3.2, 2.1.3.1, 2.1.3.0 Mar 97
+2.1.3.2, 2.1.3.1, 2.1.3.0 Mar 1997
* two programs with different functionality must not have the
same name
* Libraries should be stripped with "strip --strip-unneeded"
-2.1.2.2, 2.1.2.1, 2.1.2.0 Nov 96
+2.1.2.2, 2.1.2.1, 2.1.2.0 Nov 1996
* Some changes WRT shared libraries
-2.1.1.0 Sep 96
+2.1.1.0 Sep 1996
* No hard links in source packages
* Shared libraries must be installed stripped
-2.1.0.0 Aug 96
+2.1.0.0 Aug 1996
* Upstream changelog must be installed too
</pre>