From: Bill Allombert Date: Tue, 9 Feb 2010 23:38:30 +0000 (+0100) Subject: Convert upgrading-checklist.org to debiandoc-sgml. X-Git-Url: https://git.donarmstrong.com/?p=debian%2Fdebian-policy.git;a=commitdiff_plain;h=8b71985394e4525245fc308ab862d3c8cc902f39 Convert upgrading-checklist.org to debiandoc-sgml. --- diff --git a/Makefile b/Makefile index c6d3910..20433d7 100644 --- a/Makefile +++ b/Makefile @@ -56,8 +56,7 @@ pdf: policy.pdf policy: html txt ps pdf leavealone := $(FHS_HTML) $(FHS_FILES) $(FHS_ARCHIVE) \ - libc6-migration.txt \ - upgrading-checklist.html virtual-package-names-list.txt + libc6-migration.txt .PHONY: distclean distclean: diff --git a/debian/rules b/debian/rules index dcf5e91..052193f 100755 --- a/debian/rules +++ b/debian/rules @@ -38,7 +38,7 @@ LIBDIR := $(TMPTOP)/usr/share/doc-base sanitycheck := debian/rules policy.sgml -SGML_FILES := policy menu-policy mime-policy perl-policy +SGML_FILES := policy menu-policy mime-policy perl-policy upgrading-checklist DESC_FILES := debian-policy debian-menu-policy debian-perl-policy \ debian-mime-policy debconf-spec fhs @@ -53,8 +53,8 @@ FHS_NEW_HTML := FHS_NEW_FILES := POLICY_FILES = $(SGML_FILES:=.sgml) $(SGML_FILES:=.txt.gz) \ - virtual-package-names-list.txt upgrading-checklist.html \ - upgrading-checklist.txt libc6-migration.txt version.ent \ + virtual-package-names-list.txt \ + libc6-migration.txt version.ent \ debconf_spec/debconf_specification.html \ debconf_spec/debconf_specification.txt.gz \ policy.ps.gz policy.pdf.gz README.txt README.html \ @@ -83,8 +83,7 @@ make_directory := install -p -d -o root -g root -m 755 all build: stamp-build -stamp-build: version.ent $(sanitycheck) upgrading-checklist.html \ - upgrading-checklist.txt README.txt README.html \ +stamp-build: version.ent $(sanitycheck) README.txt README.html \ Process.txt Process.html $(MAKE) $(SGML_FILES:=.sgml.validate) \ $(SGML_FILES:=.html.tar.gz) \ diff --git a/upgrading-checklist.html b/upgrading-checklist.html deleted file mode 100644 index 755c3f3..0000000 --- a/upgrading-checklist.html +++ /dev/null @@ -1,1811 +0,0 @@ - - - - -Policy checklist for upgrading your packages - - - - - - - - - - - - - - -
-
- UP - | - HOME -
- -

Policy checklist for upgrading your packages

- - -
-

About the checklist

-
- - -

-The checklist below has been created to simplify the upgrading process -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 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. -

-

-Here is how the check list works: Check which policy version your -package was checked against last (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. -

-
- -
- -
-

The checklist

-
- - - -
- -
-

3.8.4.0

-
- - -

-Released Jan 2010. -

-
    -
  • -9.1.1 : An FHS exception has been granted for multiarch libraries. -Permitting files to instead be installed to /lib/triplet and -/usr/lib/triplet directories. -
  • -
  • -10.6 : Explicitly state that packages may not contain named pipes and -should instead create them in postinst and remove them in prerm or postrm. -
  • -
  • -9.1.1 : /sys and /selinux directories are explicitly allowed as an -exception to the FHS. - -
  • -
-
- -
- -
-

3.8.3.0

-
- - -

-Released Aug 2009. -

-
    -
  • -4.9 : Add DEB_*_ARCH_CPU and DEB_*_ARCH_OS variables and -recommend them over GNU-style variables for that information. -
  • -
  • -5.6.8: Source package Architecture fields may contain all in -combination with other architectures. Clarify when all and any -may be used in different versions of the field. -
  • -
  • -5.6.14 : The Debian archive software does not support uploading -to multiple distributions with one *.changes file. -
  • -
  • -5.6.19 : The Binary field may span multiple lines. -
  • -
  • -10.2 : Remove the permission for shared library packages to -install libraries in a non-standard location and modify ld.so.conf. -Packages should either be installed in a standard library directory -or packages using them should be built with RPATH. -
  • -
  • -11.8.7 : Clarify installation directories for X programs and -remove the requirement to pre-depend on x11-common before installing -into /usr/include/X11 and /usr/lib/X11. -
  • -
  • -12.1 : Remove the requirement that all characters in a manual -page be representable in the legacy encoding for that language. -
  • -
  • -12.1 : Localized man pages should either be kept up-to-date with -the original version or warn that they're not up-to-date, either -with warning text or by showing missing or changed portions in the -original language. -
  • -
  • -12.2 : install-info is now handled via triggers so packages no -longer need to invoke it in maintainer scripts. Info documents -should now have directory sections and entries in the document. -Packages containing info documents should add a dependency to -support partial upgrades. -
  • -
  • -perl : The requirement for Perl modules to have a versioned -Depend and Build-Depend on perl >= 5.6.0-16 has been removed. - -
  • -
-
- -
- -
-

3.8.2.0

-
- - -

-Released Jun 2009. -

-
    -
  • -2.4: The list of archive sections has been significantly expanded. See -http://lists.debian.org/debian-devel-announce/2009/03/msg00010.html -for the list of new sections and rules for how to categorize -packages. -
  • -
  • -3.9.1: All packages must use debconf or equivalent for user prompting, -though essential packages or their dependencies may also fall -back on other methods. -
  • -
  • -5.6.1: The requirements for source package names are now explicitly -spelled out. -
  • -
  • -9.1: Legacy XFree86 servers no longer get a special exception from the -FHS permitting /etc/X11/XF86Config-4. -
  • -
  • -9.1.3: Removed obsolete dependency requirements for packages that use -/var/mail. -
  • -
  • -11.8.5: Speedo fonts are now deprecated. The X backend was disabled -starting in lenny. -
  • -
  • -12.5: The GNU Free Documentation License version 1.3 is included in -common-licenses and should be referenced from there. - -
  • -
-
- -
- -
-

3.8.1.0

-
- - -

-Released Mar 2009. -

-
    -
  • -3.8: Care should be taken when adding functionality to essential and -such additions create an obligation to support that functionality -in essential forever unless significant work is done. -
  • -
  • -4.4: Changelog files must be encoded in UTF-8. -
  • -
  • -4.4: Tighten some format requirements for changelog files from a should -to a must. -
  • -
  • -4.4.1: Remove alternative changelog formats. Debian only supports one -changelog format for the Debian Archive. -
  • -
  • -4.9.1: New nocheck option for DEB_BUILD_OPTIONS indicating any build-time -test suite provided by the package should not be run. -
  • -
  • -5.1: All control files must be encoded in UTF-8. -
  • -
  • -5.2: debian/control allows comment lines starting with # with no -preceding whitespace. -
  • -
  • -9.3: Init scripts ending in .sh are not handled specially. They are not -sourced and are not guaranteed to be run by /bin/sh regardless of -the #! line. This brings Policy in line with the long-standing -behavior of the init system in Debian. -
  • -
  • -9.3.2: The start action of an init script must exit successfully and not -start the daemon again if it's already running. -
  • -
  • -9.3.2: /var/run and /var/lock may be mounted as temporary filesystems, -and init scripts must therefore create any necessary subdirectories -dynamically. -
  • -
  • -10.4: /bin/sh scripts may assume that local can take multiple variable -arguments and supports assignment. -
  • -
  • -11.6: User mailboxes may be mode 600 and owned by the user rather than -mode 660, owned by user, and group mail. - -
  • -
-
- -
- -
-

3.8.0.0

-
- - -

-Released Jun 2008. -

-
    -
  • -2.4, 3.7: The base section has been removed. contrib and non-free have been -removed from the section list; they are only categories. The base -system is now defined by priority. -
  • -
  • -4.9: If dpkg-source -x doesn't provide the source that will be compiled, -a debian/rules patch target is recommended and should do whatever -else is necessary. -
  • -
  • -4.9.1, 10.1: Standardized the format of DEB_BUILD_OPTIONS. Specified permitted -characters for tags, required that tags be whitespace-separated, -allowed packages to assume non-conflicting tags, and required -unknown flags be ignored. -
  • -
  • -4.9.1: Added parallel=n to the standardized DEB_BUILD_OPTIONS tags, -indicating that a package should be built using up to n parallel -processes if the package supports it -
  • -
  • -4.13: Debian packages should not use convenience copies of code from other -packages unless the included package is explicitly intended to be -used that way. -
  • -
  • -4.14: If dpkg-source -x doesn't produce source ready for editing and -building with dpkg-buildpackage, packages should include a -debian/README.source file explaining how to generate the patched -source, add a new modification, and remove an existing -modification. This file may also be used to document packaging a -new upstream release and any other complexity of the Debian build -process. -
  • -
  • -5.6.3: The Uploaders field in debian/control may be wrapped. -
  • -
  • -5.6.12: An empty Debian revision is equivalent to a Debian revision of 0 in -a version number. -
  • -
  • -5.6.23: New Homepage field for upstream web sites. -
  • -
  • -6.5, 6.6, 7: The Breaks field declares that this package breaks another and -prevents installation of the breaking package unless the package -named in Breaks is deconfigured first. This field should not be -used until the dpkg in Debian stable supports it. -
  • -
  • -8.1, 8.2: Clarify which files should go into a shared library package, into a -separate package, or into the -dev package. Suggest -tools instead -of -runtime for runtime support programs, since that naming is more -common in Debian. -
  • -
  • -9.5: Files in /etc/cron.{hourly,daily,weekly,monthly} must be -configuration files (upgraded from should). Mention the hourly -directory. -
  • -
  • -11.8.6: Packages providing /etc/X11/Xresources files need not conflict -with xbase (<< 3.3.2.3a-2), which is long-obsolete. -
  • -
  • -12.1: Manual pages in locale-specific directories should use either the -legacy encoding for that directory or UTF-8. Country names should -not be included in locale-specific manual page directories unless -indicating a significant difference in the language. All -characters in the manual page source should be representable in the -legacy encoding for a locale even if the man page is encoded in -UTF-8. -
  • -
  • -12.5: The Apache 2.0 license is now in common-licenses and should be -referenced rather than quoted in debian/copyright. -
  • -
  • -12.5: Packages in contrib and non-free should state in the copyright file -that the package is not part of Debian GNU/Linux and briefly -explain why. -
  • -
  • -debconf: Underscore (_) is allowed in debconf template names. - -
  • -
-
- -
- -
-

3.7.3.0

-
- - -

-Released Dec 2007. -

-
    -
  • -5.6.12: Package version numbers may contain tildes, which sort before -anything, even the end of a part. -
  • -
  • -10.4: Scripts may assume that /bin/sh supports local (at a basic level) -and that its test builtin (if any) supports -a and -o binary -logical operators. -
  • -
  • -8.5: The substitution variable ${binary:Version} should be used in place -of ${Source-Version} for dependencies between packages of the same -library. -
  • -
  • -menu policy: Substantial reorganization and renaming of sections in the Debian -menu structure. Packages with menu entries should be reviewed to -see if the menu section has been renamed or if one of the new -sections would be more appropriate. -
  • -
  • -5.6.1: The Source field in a .changes file may contain a version number -in parentheses. -
  • -
  • -5.6.17: The acceptable values for the Urgency field are low, medium, high, -critical, or emergency. -
  • -
  • -8.6: The shlibs file now allows an optional type field, indicating the -type of package for which the line is valid. The only currently -supported type is udeb, used with packages for the Debian -Installer. -
  • -
  • -3.9.1: Packages following the Debian Configuration management -specification must allow for translation of their messages by using -a gettext-based system such as po-debconf. -
  • -
  • -12.5: GFDL 1.2, GPL 3, and LGPL 3 are now in common-licenses and should -be referenced rather than quoted in debian/copyright. - -
  • -
-
- -
- -
-

3.7.2.2

-
- - -

-Released Oct 2006. -

-
    -
  • -6.1: Maintainer scripts must not be world writeable (up from a -should to a must) - -
  • -
-
- -
- -
-

3.7.2.0

-
- - -

-Released Apr 2006. -

-
    -
  • -11.5: Revert the cgi-lib change. - -
  • -
-
- -
- -
-

3.7.1.0

-
- - -

-Released Apr 2006. -

-
    -
  • -10.2: It is now possible to create shared libraries without -relocatable code (using -fPIC) in certain exceptional cases, -provided some procedures are followed, and for creating static -libraries with relocatable code (again, using -fPIC). -Discussion on debian-devel@lists.debian.org, getting a rough -consensus, and documenting it in README.Debian constitute most -of the process. -
  • -
  • -11.8.7: Packages should install any relevant files into the directories -/usr/include/X11/ and /usr/lib/X11/, but if they do so, they -must pre-depend on x11-common (>= 1:7.0.0) - -
  • -
-
- -
- -
-

3.7.0.0

-
- - -

-Released Apr 2006. -

-
    -
  • -11.5: Packages shipping web server CGI files are expected to install -them in /usr/lib/cgi-lib/ directories. This location change -perhaps should be documented in NEWS -
  • -
  • -11.5: Web server packages should include a standard scriptAlias of -cgi-lib to /usr/lib/cgi-lib. -
  • -
  • -9.1.1: The version of FHS mandated by policy has been upped to -2.3. There should be no changes required for most packages, -though new top level directories /media, /srv, etc may be of -interest. -
  • -
  • -5.1, 5.6.3: All fields, apart from the Uploaders field, in the control file -are supposed to be a single logical line, which may be spread -over multiple physical lines (newline followed by space is -elided). However, any parser for the control file must allow -the Uploaders field to be spread over multiple physical lines -as well, to prepare for future changes. -
  • -
  • -10.4: When scripts are installed into a directory in the system -PATH, the script name should not include an extension that -denotes the scripting language currently used to implement it. - -
  • -
  • -9.3.3.2: packages that invoke initscripts now must use invoke-rc.d to do -so since it also pays attention to run levels and other local -constraints. -
  • -
  • -11.8.5.2, 11.8.7, etc: We no longer use /usr/X11R6, since we have -migrated away to using Xorg paths. This means, for one thing, fonts -live in /usr/share/fonts/X11/ now, and /usr/X11R6 is gone. - - -
  • -
-
- -
- -
-

3.6.2.0

-
- - -

-Released 2005 -

-
    -
  • -Recommend. doc-base, and not menu, for registering package documentation. -
  • -
  • -8.1: Run time support programs should live in subdirectories of -/usr/lib/ or /usr/share, and preferably the shared lib is named -the same as the package name (to avoid name collisions). -
  • -
  • -11.5: It is recommended that HTTP servers provide an alias /images to -allow packages to share image files with the web server - -
  • -
-
- -
- -
-

3.6.1.0

-
- - -

-Released Aug 2003. -

-
    -
  • -3.10.1: Prompting the user should be done using debconf. Non debconf -user prompts are now deprecated. - -
  • -
-
- -
- -
-

3.6.0

-
- - -

-Released 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 behavior of the -deb-building tool-chain. -
  • -
  • -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. -
  • -
  • -menu policy: Added Games/Simulation and Apps/Education to menu -sub-policy -
  • -
  • -C.2.2: Debian changelogs should be UTF-8 encoded. -
  • -
  • -10.2: shared libraries must be linked against all libraries that they -use symbols from in the same way that binaries are. -
  • -
  • -7.6: build-depends-indep need not be satisfied during clean -target. - -
  • -
-
- -
- -
-

3.5.10

-
- - -

-Released May 2003. -

-
    -
  • -11.8.3: packages providing the x-terminal-emulator virtual package -ought to ensure that they interpret the command line exactly -like xterm does. -
  • -
  • -11.8.4: Window managers compliant with the Window Manager Specification -Project may add 40 points for ranking in the alternatives - -
  • -
-
- -
- -
-

3.5.9.0

-
- - -

-Released Mar 2003. -

-
    -
  • -3.4.2: The section describing the Description: package field once again has -full details of the long description format. -
  • -
  • -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). -
  • -
  • -9.3.2: When asked to restart a service that isn't already running, -the init script should start the service. -
  • -
  • -12.6: If the purpose of a package is to provide examples, then the -example files can be installed into /usr/share/doc/package (rather -than /usr/share/doc/package/examples). - -
  • -
-
- -
- -
-

3.5.8.0

-
- - -

-Released Nov 2002. -

-
    -
  • -12.7: 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. -
  • -
  • -7.6: Build-Depends, Build-Conflicts, Build-Depends-Indep, -and Build-Conflicts-Indep must also be satisfied when the clean -target is called. -
  • -
  • -menu policy: A new Apps/Science menu section is available -
  • -
  • -debconf policy: debconf specification cleared up, various changes. -
  • -
  • -12.1: It is no longer recommended to create symlinks from nonexistent -manual pages to undocumented(7). Missing manual pages for programs -are still a bug. - -
  • -
-
- -
- -
-

3.5.7.0

-
- - -

-Released Aug 2002. -

-
    -
  • -Packages no longer have to ask permission to call MAKEDEV in -postinst, merely notifying the user ought to be enough. -
  • -
  • -2.2.4: cryptographic software may now be included in the main -archive. -
  • -
  • -3.9: task packages are no longer permitted; tasks are now created by a -special Tasks: field in the control file. -
  • -
  • -11.8.4: window managers that support netwm can now add 20 points when -they add themselves as an alternative for -/usr/bin/x-window-manager -
  • -
  • -10.1: 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. -
  • -
  • -7.6, 4.8: 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. -
  • -
  • -8: Changed rules on how, and when, to invoke ldconfig in maintainer -scripts. Long rationale. - -

    -Added the last note in 3.5.6 upgrading checklist item regarding build rules, please see below -

    -
  • -
-
- -
- -
-

3.5.6.0

-
- - -

-Released Jul 2001. -

-
    -
  • -2.5: Emacs and TeX are no longer mandated by policy to be priority -standard packages -
  • -
  • -11.5: Programs that access docs need to do so via /usr/share/doc, and -not via /usr/doc/ as was the policy previously -
  • -
  • -12.3: Putting documentation in /usr/doc versus /usr/share/doc is now -a ``serious'' policy violation. -
  • -
  • -11.5: 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. -
  • -
  • -7: There are new rules for build-indep/build-arch targets and -there is a new Build-Depend-Indep semantic. - -
  • -
-
- -
- -
-

3.5.5.0

-
- - -

-Released May 2001. -

-
    -
  • -12.1: Manpages should not rely on header information to have -alternative manpage names available; it should only use -symlinks or .so pages to do this -
  • -
  • -*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! -
  • -
  • -10.2: Plugins are no longer bound by all the rules of shared -libraries -
  • -
  • -X Windows related things: -
      -
    • -11.8.1: Clarification of priority levels of X Window System related -packages -
    • -
    • -11.8.3: Rules for defining x-terminal-emulator improved -
    • -
    • -11.8.5: X Font policy rewritten: you must read this if you provide -fonts for the X Window System -
    • -
    • -11.8.6: Packages must not ship /usr/X11R6/lib/X11/app-defaults/ -
    • -
    • -11.8.7: X-related packages should usually use the regular FHS -locations; imake-using packages are exempted from this -
    • -
    • -11.8.8: OpenMotif linked binaries have the same rules as -OSF/Motif-linked ones - -
    • -
    -
  • -
-
- -
- -
-

3.5.4.0

-
- - -

-Released Apr 2001. -

-
    -
  • -11.6: 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.9; perl-policy: The perl policy is now part of Debian policy -proper. Perl programs and modules should follow the current Perl -policy - - -
  • -
-
- -
- -
-

3.5.3.0

-
- - -

-Apr 2001 -

-
    -
  • -7.1: Build-Depends arch syntax has been changed to be less -ambiguous. This should not affect any current packages -
  • -
  • -10.7.3: 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 - -
  • -
-
- -
- -
-

3.5.2.0

-
- - -

-Released Feb 2001. -

-
    -
  • -11.8.6: X app-defaults directory has moved from -/usr/X11R6/lib/X11/app-defaults to /etc/X11/app-defaults - -
  • -
-
- -
- -
-

3.5.1.0

-
- - -

-Released Feb 2001. -

-
    -
  • -8.1: dpkg-shlibdeps now uses objdump, so shared libraries have to be -run through dpkg-shlibdeps as well as executables - -
  • -
-
- -
- -
-

3.5.0.0

-
- - -

-Released Jan 2001. -

-
    -
  • -11.8.5: Font packages for the X Window System must now declare a -dependency on xutils (>= 4.0.2) - -
  • -
-
- -
- -
-

3.2.1.1

-
- - -

-Released Jan 2001. -

-
    -
  • -9.3.2: Daemon startup scripts in /etc/init.d/ should not contain -modifiable parameters; these should be moved to a file in -/etc/default/ -
  • -
  • -12.3: 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>/ -
  • -
  • -Much of the packaging manual has now been imported into the -policy document - -
  • -
-
- -
- -
-

3.2.1.0

-
- - -

-Released Aug 00. -

-
    -
  • -11.8.1: A package of priority standard or higher may provide two -binaries, one compiled with support for the X Window System, -and the other without - -
  • -
-
- -
- -
-

3.2.0.0

-
- - -

-Released Aug 00. -

-
    -
  • -10.1: 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. Details in -
  • -
  • -12.8: 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 (3.2) -shall probably need sweeping changes in policy -
  • -
  • -Policy for packages providing the following X-based features -has been codified: -
      -
    • -11.8.2: X server (virtual package xserver) -
    • -
    • -11.8.3: X terminal emulator (virtual package x-terminal-emulator) -
    • -
    • -11.8.4: X window manager (virtual package x-window-manager, and -/usr/bin/x-window-manager alternative, with priority -calculation guidelines) -
    • -
    • -12.8.5: X fonts (this section has been written from scratch) -
    • -
    • -11.8.6: X application defaults -
    • -
    -
  • -
  • -11.8.7: Policy for packages using the X Window System and FHS issues -has been clarified -
  • -
  • -11.7.3: No package may contain or make hard links to conffiles -
  • -
  • -8: 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 - -
  • -
-
- -
- -
-

3.1.1.0

-
- - -

-Released Nov 1999. -

-
    -
  • -7.1: Correction to semantics of architecture lists in Build-Depends -etc. Should not affect many packages - -
  • -
-
- -
- -
-

3.1.0.0

-
- - -

-Released Oct 1999. -

-
    -
  • -/usr/doc/<package> has to be a symlink pointing to -/usr/share/doc/<package>, to be maintained by postinst -and prerm scripts. Details are in defunct -
  • -
  • -7.1, 7.6: Introduced source dependencies (Build-Depends, etc.) -
  • -
  • -9.3.4: /etc/rc.boot has been deprecated in favour of /etc/rcS.d. -(Packages should not be touching this directory, but should use -update-rc.d instead) -
  • -
  • -9.3.3: 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.) -
  • -
  • -12.7: 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 -
  • -
  • -9.1.1: Updated FHS to a 2.1 draft; this reverts /var/state to -/var/lib -
  • -
  • -9.7; mime-policy: Added MIME sub-policy document -
  • -
  • -12.4: VISUAL is allowed as a (higher priority) alternative to EDITOR -
  • -
  • -11.6: Modified liblockfile description, which affects -mailbox-accessing programs. Please see the policy document for -details -
  • -
  • -12.7: 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.) -
  • -
  • -3.2.1: Description of how to handle version numbers based on dates -added - -
  • -
-
- -
- -
-

3.0.1.0

-
- - -

-Released Jul 1999. -

-
    -
  • -10.2: 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 - -
  • -
-
- -
- -
-

3.0.0.0

-
- - -

-Released Jun 1999. -

-
    -
  • -9.1: 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. -
  • -
  • -4.1: Only 3 digits of the Standards version need be included in -control files, though all four digits are still permitted. -
  • -
  • -12.6: 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 -
  • -
  • -10.2: Packages that use libtool to create shared libraries must -include the .la files in the -dev packages -
  • -
  • -10.8: Use logrotate to rotate log files -
  • -
  • -11.8: section 5.8 (now 11.8) has been rewritten (Programs for the X Window -System) -
  • -
  • -9.6; menu-policy: There is now an associated menu policy, in a separate document, -that carries the full weight of Debian policy -
  • -
  • -11.3: Programs which need to modify the files /var/run/utmp, -/var/log/wtmp and /var/log/lastlog must be installed setgid utmp - - -

    -Please note that section numbers below this point may not be up to date -

    - -
  • -
-
- -
- -
-

2.5.0.0

-
- - -

-Released Oct 1998. -

-

-Policy Manual: -

    -
  • -Rearranged the manual to create a new Section 4, Files -
      -
    • -Section 3.3 ("Files") was moved to Section 4. The Sections -that were Section 4 and Section 5 were moved down to become -Section 5 and Section 6. -
    • -
    • -What was Section 5.5 ("Log files") is now a subsection of the -new Section 4 ("Files"), becoming section 4.8, placed after -"Configuration files", moving the Section 4.8 ("Permissions -and owners") to Section 4.9. All subsections of the old -Section 5 after 5.5 were moved down to fill in the number -gap. -
    • -
    -
  • -
  • -Modified the section about changelog files to accommodate -upstream changelogs which were formatted as HTML. These -upstream changelog files should now be accessible as -/usr/doc/package/changelog.html.gz -
      -
    • -Symlinks are permissible to link the real, or upstream, -changelog name to the Debian mandated name. -
    • -
    -
  • -
  • -Clarified that HTML documentation should be present in some -package, though not necessarily the main binary package. -
  • -
  • -Corrected all references to the location of the copyright -files. The correct location is /usr/doc/package/copyright -
  • -
  • -Ratified the architecture specification strings to cater to the -HURD. - -
  • -
-
- -
- -
-

2.4.1.0

-
- - -

-Released Apr 1998. -

-
    -
  • Policy Manual:
    -
      -
    • -Updated section 3.3.5 Symbolic links: -
        -
      • -symbolic links within a toplevel directory should be relative, -symbolic links between toplevel directories should be absolute -(cf., Policy Weekly Issue#6, topic 2) - -
      • -
      -
    • -
    • -Updated section 4.9 Games: -
        -
      • -manpages for games should be installed in /usr/man/man6 -(cf., Policy Weekly Issue#6, topic 3) - -
      • -
      -
    • -
    -
  • -
  • Packaging Manual:
    -
      -
    • -Updated prefix of chapter 12, Shared Libraries: -ldconfig must be called in the postinst script if the package -installs shared libraries -(cf., Policy Weekly Issue #6, fixes:bug#20515) - -
    • -
    -
  • -
-
- -
- -
-

2.4.0.0

-
- - -

-Released Jan 1998 -

-
    -
  • -Updated section 3.3.4 Scripts: -
      -
    • -/bin/sh may be any POSIX compatible shell -
    • -
    • -scripts including bashisms have to specify /bin/bash as -interpreter -
    • -
    • -scripts which create files in world-writable directories -(e.g., in /tmp) should use tempfile or mktemp for creating -the directory - -
    • -
    -
  • -
  • -Updated section 3.3.5 Symbolic Links: -
      -
    • -symbolic links referencing compressed files must have the same -file extension as the referenced file - -
    • -
    -
  • -
  • -Updated section 3.3.6 Device files: -
      -
    • -/dev/tty* serial devices should be used instead of /dev/cu* - -
    • -
    -
  • -
  • -Updated section 3.4.2 Writing the scripts in /etc/init.d: -
      -
    • -all /etc/init.d scripts have to provide the following options: -start, stop, restart, force-reload -
    • -
    • -the reload option is optional and must never stop and restart -the service - -
    • -
    -
  • -
  • -Updated section 3.5 Cron jobs: -
      -
    • -cron jobs that need to be executed more often than daily should -be installed into /etc/cron.d - -
    • -
    -
  • -
  • -Updated section 3.7 Menus: -
      -
    • -removed section about how to register HTML docs to `menu' -(the corresponding section in 4.4, Web servers and applications, -has been removed in policy 2.2.0.0 already, so this one was -obsolete) - -
    • -
    -
  • -
  • -New section 3.8 Keyboard configuration: -
      -
    • -details about how the backspace and delete keys should be -handled - -
    • -
    -
  • -
  • -New section 3.9 Environment variables: -
      -
    • -no program must depend on environment variables to get a -reasonable default configuration - -
    • -
    -
  • -
  • -New section 4.6 News system configuration: -
      -
    • -/etc/news/organization and /etc/news/server should be supported -by all news servers and clients - -
    • -
    -
  • -
  • -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 -against lesstif and not against a non-free Motif library - -
    • -
    -
  • -
  • -Updated section 4.9 Games: -
      -
    • -games for X Windows have to be installed in /usr/games, just as -non-X games - -
    • -
    -
  • -
-
- -
- -
-

2.3.0.1, 2.3.0.0

-
- - -

-Released Sep 1997. -

-
    -
  • -new section `4.2 Daemons' including rules for -/etc/services, /etc/protocols, /etc/rpc, and /etc/inetd.conf - -
  • -
  • -updated section about `Configuration files': -packages may not touch other packages' configuration files - -
  • -
  • -MUAs and MTAs have to use liblockfile - -
  • -
-
- -
- -
-

2.2.0.0

-
- - -

-Released July 1997. -

-
    -
  • -added section 4.1 `Architecture specification strings': -use -<arch>-linux -where <arch> is one of the following: -i386, alpha, arm, m68k, powerpc, sparc. - -
  • -
  • -detailed rules for /usr/local - -
  • -
  • -user ID's - -
  • -
  • -editor/pager policy - -
  • -
  • -cron jobs - -
  • -
  • -device files - -
  • -
  • -don't install shared libraries as executable - -
  • -
  • -app-defaults files may not be conffiles - -
  • -
-
- -
- -
-

2.1.3.2, 2.1.3.1, 2.1.3.0

-
- - -

-Released Mar 1997. -

-
    -
  • -two programs with different functionality must not have the -same name - -
  • -
  • -"Webstandard 3.0" - -
  • -
  • -"Standard for Console Messages" - -
  • -
  • -Libraries should be compiled with `-D_REENTRANT' - -
  • -
  • -Libraries should be stripped with "strip –strip-unneeded" - -
  • -
-
- -
- -
-

2.1.2.2, 2.1.2.1, 2.1.2.0

-
- - -

-Released Nov 1996. -

-
    -
  • -Some changes WRT shared libraries - -
  • -
-
- -
- -
-

2.1.1.0

-
- - -

-Released Sep 1996. -

-
    -
  • -No hard links in source packages - -
  • -
  • -Do not use dpkg-divert or update-alternatives without consultation - -
  • -
  • -Shared libraries must be installed stripped - -
  • -
-
- -
- -
-

2.1.0.0

-
- - -

-Released Aug 1996. -

-
    -
  • -Upstream changelog must be installed too -
  • -
-
-
-
-
-

Author: Bill Allombert, Josip Rodin, Julian Gilbey, Russ Allbery, and Manoj Srivastava -<srivasta@debian.org> -

-

Date: 2010-01-26 13:43:10 CET

-

HTML generated by org-mode 6.33f in emacs 23

-
-
- - diff --git a/upgrading-checklist.org b/upgrading-checklist.org deleted file mode 100644 index 884852d..0000000 --- a/upgrading-checklist.org +++ /dev/null @@ -1,972 +0,0 @@ --*- mode: org; fill-column: 78 -*- -#+STARTUP: showall -#+STARTUP: lognotedone lognotestate -#+OPTIONS: H:4 toc:2 -#+TITLE: Policy checklist for upgrading your packages -#+AUTHOR: Bill Allombert, Josip Rodin, Julian Gilbey, Russ Allbery, and Manoj Srivastava -#+EMAIL: srivasta@debian.org -#+OPTIONS: H:3 num:nil toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t TeX:t LaTeX:nil skip:t d:nil tags:not-in-toc -#+LINK_HOME: http://wiki.debian.org/Teams/Policy -#+LINK_UP: http://www.debian.org/ - -\usepackage{landscape} - -\setlength{\oddsidemargin}{0in} % default=0in -\setlength{\textwidth}{9in} % default=9in - -\setlength{\columnsep}{0.5in} % default=10pt -\setlength{\columnseprule}{1pt} % default=0pt (no line) - -\setlength{\textheight}{5.85in} % default=5.15in -\setlength{\topmargin}{-0.15in} % default=0.20in -\setlength{\headsep}{0.25in} % default=0.35in - -\setlength{\parskip}{1.2ex} -\setlength{\parindent}{0mm} -\pagestyle{empty} - -\setlength{\headheight}{0pt} -\setlength{\headsep}{0pt} -\setlength{\footskip}{5pt} -\setlength{\textheight}{9.0in} -\setlength{\textwidth}{6.5in} - -** About the checklist - -The checklist below has been created to simplify the upgrading process -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 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. - -Here is how the check list works: Check which policy version your -package was checked against last (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. - -** The checklist - -*** 3.8.4.0 -:PROPERTIES: -:CUSTOM_ID: v3.8.4.0 -:END: -#<> - -Released Jan 2010. - -+ *9.1.1* : An FHS exception has been granted for multiarch libraries. - Permitting files to instead be installed to ~/lib/triplet~ and - ~/usr/lib/triplet~ directories. -+ *10.6* : Explicitly state that packages may not contain named pipes and - should instead create them in postinst and remove them in prerm or postrm. -+ *9.1.1* : ~/sys~ and ~/selinux~ directories are explicitly allowed as an - exception to the FHS. - -*** 3.8.3.0 -:PROPERTIES: -:CUSTOM_ID: v3.8.3.0 -:END: -#<> - -Released Aug 2009. - -+ *4.9* : Add DEB\_*\_ARCH\_CPU and DEB\_*\_ARCH\_OS variables and - recommend them over GNU-style variables for that information. -+ *5.6.8*: Source package Architecture fields may contain /all/ in - combination with other architectures. Clarify when /all/ and /any/ - may be used in different versions of the field. -+ *5.6.14* : The Debian archive software does not support uploading - to multiple distributions with one ~*.changes~ file. -+ *5.6.19* : The Binary field may span multiple lines. -+ *10.2* : Remove the permission for shared library packages to - install libraries in a non-standard location and modify ld.so.conf. - Packages should either be installed in a standard library directory - or packages using them should be built with RPATH. -+ *11.8.7* : Clarify installation directories for X programs and - remove the requirement to pre-depend on x11-common before installing - into ~/usr/include/X11~ and ~/usr/lib/X11~. -+ *12.1* : Remove the requirement that all characters in a manual - page be representable in the legacy encoding for that language. -+ *12.1* : Localized man pages should either be kept up-to-date with - the original version or warn that they're not up-to-date, either - with warning text or by showing missing or changed portions in the - original language. -+ *12.2* : install-info is now handled via triggers so packages no - longer need to invoke it in maintainer scripts. Info documents - should now have directory sections and entries in the document. - Packages containing info documents should add a dependency to - support partial upgrades. -+ *perl* : The requirement for Perl modules to have a versioned - Depend and Build-Depend on perl >= 5.6.0-16 has been removed. - -*** 3.8.2.0 -:PROPERTIES: -:CUSTOM_ID: v3.8.2.0 -:END: -#<> - -Released Jun 2009. - -+ *2.4*: The list of archive sections has been significantly expanded. See - [[http://lists.debian.org/debian-devel-announce/2009/03/msg00010.html]] - for the list of new sections and rules for how to categorize - packages. -+ *3.9.1*: All packages must use debconf or equivalent for user prompting, - though essential packages or their dependencies may also fall - back on other methods. -+ *5.6.1*: The requirements for source package names are now explicitly - spelled out. -+ *9.1*: Legacy XFree86 servers no longer get a special exception from the - FHS permitting ~/etc/X11/XF86Config-4~. -+ *9.1.3*: Removed obsolete dependency requirements for packages that use - ~/var/mail~. -+ *11.8.5*: Speedo fonts are now deprecated. The X backend was disabled - starting in lenny. -+ *12.5*: The GNU Free Documentation License version 1.3 is included in - common-licenses and should be referenced from there. - -*** 3.8.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.8.1.0 -:END: -#<> - -Released Mar 2009. - -+ *3.8*: Care should be taken when adding functionality to essential and - such additions create an obligation to support that functionality - in essential forever unless significant work is done. -+ *4.4*: Changelog files must be encoded in UTF-8. -+ *4.4*: Tighten some format requirements for changelog files from a should - to a must. -+ *4.4.1*: Remove alternative changelog formats. Debian only supports one - changelog format for the Debian Archive. -+ *4.9.1*: New nocheck option for DEB\_BUILD\_OPTIONS indicating any build-time - test suite provided by the package should not be run. -+ *5.1*: All control files must be encoded in UTF-8. -+ *5.2*: ~debian/control~ allows comment lines starting with # with no - preceding whitespace. -+ *9.3*: Init scripts ending in .sh are not handled specially. They are not - sourced and are not guaranteed to be run by ~/bin/sh~ regardless of - the #! line. This brings Policy in line with the long-standing - behavior of the init system in Debian. -+ *9.3.2*: The start action of an init script must exit successfully and not - start the daemon again if it's already running. -+ *9.3.2*: ~/var/run~ and ~/var/lock~ may be mounted as temporary filesystems, - and init scripts must therefore create any necessary subdirectories - dynamically. -+ *10.4*: ~/bin/sh~ scripts may assume that local can take multiple variable - arguments and supports assignment. -+ *11.6*: User mailboxes may be mode 600 and owned by the user rather than - mode 660, owned by user, and group mail. - -*** 3.8.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.8.0.0 -:END: -#<> - -Released Jun 2008. - -+ *2.4, 3.7*: The base section has been removed. contrib and non-free have been - removed from the section list; they are only categories. The base - system is now defined by priority. -+ *4.9*: If dpkg-source -x doesn't provide the source that will be compiled, - a debian/rules patch target is recommended and should do whatever - else is necessary. -+ *4.9.1, 10.1*: Standardized the format of DEB\_BUILD\_OPTIONS. Specified permitted - characters for tags, required that tags be whitespace-separated, - allowed packages to assume non-conflicting tags, and required - unknown flags be ignored. -+ *4.9.1*: Added parallel=n to the standardized DEB\_BUILD\_OPTIONS tags, - indicating that a package should be built using up to n parallel - processes if the package supports it -+ *4.13*: Debian packages should not use convenience copies of code from other - packages unless the included package is explicitly intended to be - used that way. -+ *4.14*: If dpkg-source -x doesn't produce source ready for editing and - building with dpkg-buildpackage, packages should include a - ~debian/README.source~ file explaining how to generate the patched - source, add a new modification, and remove an existing - modification. This file may also be used to document packaging a - new upstream release and any other complexity of the Debian build - process. -+ *5.6.3*: The Uploaders field in ~debian/control~ may be wrapped. -+ *5.6.12*: An empty Debian revision is equivalent to a Debian revision of 0 in - a version number. -+ *5.6.23*: New Homepage field for upstream web sites. -+ *6.5, 6.6, 7*: The Breaks field declares that this package breaks another and - prevents installation of the breaking package unless the package - named in Breaks is deconfigured first. This field should not be - used until the dpkg in Debian stable supports it. -+ *8.1, 8.2*: Clarify which files should go into a shared library package, into a - separate package, or into the -dev package. Suggest -tools instead - of -runtime for runtime support programs, since that naming is more - common in Debian. -+ *9.5*: Files in ~/etc/cron.{hourly,daily,weekly,monthly}~ must be - configuration files (upgraded from should). Mention the hourly - directory. -+ *11.8.6*: Packages providing ~/etc/X11/Xresources~ files need not conflict - with xbase (<< 3.3.2.3a-2), which is long-obsolete. -+ *12.1*: Manual pages in locale-specific directories should use either the - legacy encoding for that directory or UTF-8. Country names should - not be included in locale-specific manual page directories unless - indicating a significant difference in the language. All - characters in the manual page source should be representable in the - legacy encoding for a locale even if the man page is encoded in - UTF-8. -+ *12.5*: The Apache 2.0 license is now in common-licenses and should be - referenced rather than quoted in ~debian/copyright~. -+ *12.5*: Packages in contrib and non-free should state in the copyright file - that the package is not part of Debian GNU/Linux and briefly - explain why. -+ *debconf*: Underscore (_) is allowed in debconf template names. - -*** 3.7.3.0 -:PROPERTIES: -:CUSTOM_ID: v3.7.3.0 -:END: -#<> - -Released Dec 2007. - -+ *5.6.12*: Package version numbers may contain tildes, which sort before - anything, even the end of a part. -+ *10.4*: Scripts may assume that ~/bin/sh~ supports local (at a basic level) - and that its test builtin (if any) supports -a and -o binary - logical operators. -+ *8.5*: The substitution variable ${binary:Version} should be used in place - of ${Source-Version} for dependencies between packages of the same - library. -+ *menu policy*: Substantial reorganization and renaming of sections in the Debian - menu structure. Packages with menu entries should be reviewed to - see if the menu section has been renamed or if one of the new - sections would be more appropriate. -+ *5.6.1*: The Source field in a .changes file may contain a version number - in parentheses. -+ *5.6.17*: The acceptable values for the Urgency field are low, medium, high, - critical, or emergency. -+ *8.6*: The shlibs file now allows an optional type field, indicating the - type of package for which the line is valid. The only currently - supported type is udeb, used with packages for the Debian - Installer. -+ *3.9.1*: Packages following the Debian Configuration management - specification must allow for translation of their messages by using - a gettext-based system such as po-debconf. -+ *12.5*: GFDL 1.2, GPL 3, and LGPL 3 are now in common-licenses and should - be referenced rather than quoted in ~debian/copyright~. - -*** 3.7.2.2 -:PROPERTIES: -:CUSTOM_ID: v3.7.2.2 -:END: -#<> - -Released Oct 2006. - -+ *6.1*: Maintainer scripts must not be world writeable (up from a - should to a must) - -*** 3.7.2.0 -:PROPERTIES: -:CUSTOM_ID: v3.7.2.0 -:END: -#<> - -Released Apr 2006. - -+ *11.5*: Revert the cgi-lib change. - -*** 3.7.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.7.1.0 -:END: -#<> - -Released Apr 2006. - -+ *10.2*: It is now possible to create shared libraries without - relocatable code (using -fPIC) in certain exceptional cases, - provided some procedures are followed, and for creating static - libraries with relocatable code (again, using -fPIC). - Discussion on debian-devel@lists.debian.org, getting a rough - consensus, and documenting it in README.Debian constitute most - of the process. -+ *11.8.7*: Packages should install any relevant files into the directories - ~/usr/include/X11/~ and ~/usr/lib/X11/~, but if they do so, they - must pre-depend on x11-common (>= 1:7.0.0) - -*** 3.7.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.7.0.0. -:END: -#<> - -Released Apr 2006. - -+ *11.5*: Packages shipping web server CGI files are expected to install - them in ~/usr/lib/cgi-lib/~ directories. This location change - perhaps should be documented in NEWS -+ *11.5*: Web server packages should include a standard scriptAlias of - cgi-lib to ~/usr/lib/cgi-lib~. -+ *9.1.1*: The version of FHS mandated by policy has been upped to - 2.3. There should be no changes required for most packages, - though new top level directories ~/media~, ~/srv~, etc may be of - interest. -+ *5.1, 5.6.3*: All fields, apart from the Uploaders field, in the control file - are supposed to be a single logical line, which may be spread - over multiple physical lines (newline followed by space is - elided). However, any parser for the control file must allow - the Uploaders field to be spread over multiple physical lines - as well, to prepare for future changes. -+ *10.4*: When scripts are installed into a directory in the system - PATH, the script name should not include an extension that - denotes the scripting language currently used to implement it. - -+ *9.3.3.2*: packages that invoke initscripts now must use invoke-rc.d to do - so since it also pays attention to run levels and other local - constraints. -+ *11.8.5.2, 11.8.7, etc*: We no longer use ~/usr/X11R6~, since we have - migrated away to using Xorg paths. This means, for one thing, fonts - live in ~/usr/share/fonts/X11/~ now, and ~/usr/X11R6~ is gone. - - -*** 3.6.2.0 -:PROPERTIES: -:CUSTOM_ID: v3.6.2.0 -:END: -#<> - -Released 2005 - -+ Recommend. doc-base, and not menu, for registering package documentation. -+ *8.1*: Run time support programs should live in subdirectories of - ~/usr/lib/~ or ~/usr/share~, and preferably the shared lib is named - the same as the package name (to avoid name collisions). -+ *11.5*: It is recommended that HTTP servers provide an alias ~/images~ to - allow packages to share image files with the web server - -*** 3.6.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.6.1.0 -:END: -#<> - -Released Aug 2003. - -+ *3.10.1*: Prompting the user should be done using debconf. Non debconf - user prompts are now deprecated. - -*** 3.6.0 -:PROPERTIES: -:CUSTOM_ID: v3.6.0.0 -:END: -#<> - -Released 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 behavior of the - deb-building tool-chain. -+ 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. -+ *menu policy*: Added Games/Simulation and Apps/Education to menu - sub-policy -+ *C.2.2*: Debian changelogs should be UTF-8 encoded. -+ *10.2*: shared libraries must be linked against all libraries that they - use symbols from in the same way that binaries are. -+ *7.6*: build-depends-indep need not be satisfied during clean - target. - -*** 3.5.10 -:PROPERTIES: -:CUSTOM_ID: v3.5.10.0 -:END: -#<> - -Released May 2003. - -+ *11.8.3*: packages providing the x-terminal-emulator virtual package - ought to ensure that they interpret the command line exactly - like xterm does. -+ *11.8.4*: Window managers compliant with the Window Manager Specification - Project may add 40 points for ranking in the alternatives - -*** 3.5.9.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.9.0 -:END: -#<> - -Released Mar 2003. - -+ *3.4.2*: The section describing the Description: package field once again has - full details of the long description format. -+ *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). -+ *9.3.2*: When asked to restart a service that isn't already running, - the init script should start the service. -+ *12.6*: If the purpose of a package is to provide examples, then the - example files can be installed into ~/usr/share/doc/package~ (rather - than ~/usr/share/doc/package/examples~). - -*** 3.5.8.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.8.0 -:END: -#<> - -Released Nov 2002. - -+ *12.7*: 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. -+ *7.6*: =Build-Depends=, =Build-Conflicts=, =Build-Depends-Indep=, - and =Build-Conflicts-Indep= must also be satisfied when the clean - target is called. -+ *menu policy*: A new Apps/Science menu section is available -+ *debconf policy*: debconf specification cleared up, various changes. -+ *12.1*: It is no longer recommended to create symlinks from nonexistent - manual pages to undocumented(7). Missing manual pages for programs - are still a bug. - -*** 3.5.7.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.7.0 -:END: -#<> - -Released Aug 2002. - -+ Packages no longer have to ask permission to call MAKEDEV in - postinst, merely notifying the user ought to be enough. -+ *2.2.4*: cryptographic software may now be included in the main - archive. -+ *3.9*: task packages are no longer permitted; tasks are now created by a - special Tasks: field in the control file. -+ *11.8.4*: window managers that support netwm can now add 20 points when - they add themselves as an alternative for - ~/usr/bin/x-window-manager~ -+ *10.1*: 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. -+ *7.6, 4.8*: 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. -+ *8*: Changed rules on how, and when, to invoke ldconfig in maintainer - scripts. Long rationale. - - *Added the last note in 3.5.6 upgrading checklist item regarding build rules, please see below* - -*** 3.5.6.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.6.0 -:END: -#<> - -Released Jul 2001. - -+ *2.5*: Emacs and TeX are no longer mandated by policy to be priority - standard packages -+ *11.5*: Programs that access docs need to do so via ~/usr/share/doc~, and - not via ~/usr/doc/~ as was the policy previously -+ *12.3*: Putting documentation in ~/usr/doc~ versus ~/usr/share/doc~ is now - a ``serious'' policy violation. -+ *11.5*: 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. -+ *7*: There are new rules for build-indep/build-arch targets and - there is a new Build-Depend-Indep semantic. - -*** 3.5.5.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.5.0 -:END: -#<> - -Released May 2001. - -+ *12.1*: Manpages should not rely on header information to have - alternative manpage names available; it should only use - symlinks or .so pages to do this -+ *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! -+ *10.2*: Plugins are no longer bound by all the rules of shared - libraries -+ X Windows related things: - * *11.8.1*: Clarification of priority levels of X Window System related - packages - * *11.8.3*: Rules for defining x-terminal-emulator improved - * *11.8.5*: X Font policy rewritten: you must read this if you provide - fonts for the X Window System - * *11.8.6*: Packages must not ship ~/usr/X11R6/lib/X11/app-defaults/~ - * *11.8.7*: X-related packages should usually use the regular FHS - locations; imake-using packages are exempted from this - * *11.8.8*: OpenMotif linked binaries have the same rules as - OSF/Motif-linked ones - -*** 3.5.4.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.4.0 -:END: -#<> - -Released Apr 2001. - -+ *11.6*: 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.9; perl-policy*: The perl policy is now part of Debian policy - proper. Perl programs and modules should follow the current Perl - policy - - -*** 3.5.3.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.3.0 -:END: -#<> - - Apr 2001 - -+ *7.1*: Build-Depends arch syntax has been changed to be less - ambiguous. This should not affect any current packages -+ *10.7.3*: Examples and templates files for use by scripts should now live - in ~/usr/share/~ or ~/usr/lib/~, with - symbolic links from ~/usr/share/doc//examples~ as - needed - -*** 3.5.2.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.2.0 -:END: -#<> - -Released Feb 2001. - -+ *11.8.6*: X app-defaults directory has moved from - ~/usr/X11R6/lib/X11/app-defaults~ to ~/etc/X11/app-defaults~ - -*** 3.5.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.1.0 -:END: -#<> - -Released Feb 2001. - -+ *8.1*: dpkg-shlibdeps now uses objdump, so shared libraries have to be - run through dpkg-shlibdeps as well as executables - -*** 3.5.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.5.0.0 -:END: -#<> - -Released Jan 2001. - -+ *11.8.5*: Font packages for the X Window System must now declare a - dependency on xutils (>= 4.0.2) - -*** 3.2.1.1 -:PROPERTIES: -:CUSTOM_ID: v3.2.1.1 -:END: -#<> - -Released Jan 2001. - -+ *9.3.2*: Daemon startup scripts in ~/etc/init.d/~ should not contain - modifiable parameters; these should be moved to a file in - ~/etc/default/~ -+ *12.3*: Files in ~/usr/share/doc~ must not be referenced by any - program. If such files are needed, they must be placed in - ~/usr/share//~, and symbolic links created as required - in ~/usr/share/doc//~ -+ Much of the packaging manual has now been imported into the - policy document - -*** 3.2.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.2.1.0 -:END: -#<> - -Released Aug 00. - -+ *11.8.1*: A package of priority standard or higher may provide two - binaries, one compiled with support for the X Window System, - and the other without - -*** 3.2.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.2.0.0 -:END: -#<> - -Released Aug 00. - -+ *10.1*: 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. Details in -+ *12.8*: 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 (3.2) - shall probably need sweeping changes in policy -+ Policy for packages providing the following X-based features - has been codified: - - *11.8.2*: X server (virtual package xserver) - - *11.8.3*: X terminal emulator (virtual package x-terminal-emulator) - - *11.8.4*: X window manager (virtual package x-window-manager, and - ~/usr/bin/x-window-manager~ alternative, with priority - calculation guidelines) - - *12.8.5*: X fonts (this section has been written from scratch) - - *11.8.6*: X application defaults -+ *11.8.7*: Policy for packages using the X Window System and FHS issues - has been clarified -+ *11.7.3*: No package may contain or make hard links to conffiles -+ *8*: 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 - -*** 3.1.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.1.1.0 -:END: -#<> - -Released Nov 1999. - -+ *7.1*: Correction to semantics of architecture lists in Build-Depends - etc. Should not affect many packages - -*** 3.1.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.1.0.0 -:END: -#<> - -Released Oct 1999. - -+ ~/usr/doc/~ has to be a symlink pointing to - ~/usr/share/doc/~, to be maintained by postinst - and prerm scripts. Details are in *defunct* -+ *7.1, 7.6*: Introduced source dependencies (Build-Depends, etc.) -+ *9.3.4*: ~/etc/rc.boot~ has been deprecated in favour of ~/etc/rcS.d~. - (Packages should not be touching this directory, but should use - update-rc.d instead) -+ *9.3.3*: 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.) -+ *12.7*: Architecture-specific examples go in ~/usr/lib//examples~ - with symlinks from ~/usr/share/doc//examples/*~ or from - ~/usr/share/doc//examples~ itself -+ *9.1.1*: Updated FHS to a 2.1 draft; this reverts ~/var/state~ to - ~/var/lib~ -+ *9.7; mime-policy*: Added MIME sub-policy document -+ *12.4*: VISUAL is allowed as a (higher priority) alternative to EDITOR -+ *11.6*: Modified liblockfile description, which affects - mailbox-accessing programs. Please see the policy document for - details -+ *12.7*: 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.) -+ *3.2.1*: Description of how to handle version numbers based on dates - added - -*** 3.0.1.0 -:PROPERTIES: -:CUSTOM_ID: v3.0.1.0 -:END: -#<> - -Released Jul 1999. - -+ *10.2*: 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 - -*** 3.0.0.0 -:PROPERTIES: -:CUSTOM_ID: v3.0.0.0 -:END: -#<> - -Released Jun 1999. - -+ *9.1*: 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. -+ *4.1*: Only 3 digits of the Standards version need be included in - control files, though all four digits are still permitted. -+ *12.6*: 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 -+ *10.2*: Packages that use libtool to create shared libraries must - include the .la files in the -dev packages -+ *10.8*: Use logrotate to rotate log files -+ *11.8*: section 5.8 (now 11.8) has been rewritten (Programs for the X Window - System) -+ *9.6; menu-policy*: There is now an associated menu policy, in a separate document, - that carries the full weight of Debian policy -+ *11.3*: Programs which need to modify the files ~/var/run/utmp~, - ~/var/log/wtmp~ and ~/var/log/lastlog~ must be installed setgid utmp - - - *Please note that section numbers below this point may not be up to date* - - -*** 2.5.0.0 -:PROPERTIES: -:CUSTOM_ID: v2.5.0.0 -:END: -#<> - -Released Oct 1998. - -Policy Manual: -+ Rearranged the manual to create a new Section 4, Files - + Section 3.3 ("Files") was moved to Section 4. The Sections - that were Section 4 and Section 5 were moved down to become - Section 5 and Section 6. - + What was Section 5.5 ("Log files") is now a subsection of the - new Section 4 ("Files"), becoming section 4.8, placed after - "Configuration files", moving the Section 4.8 ("Permissions - and owners") to Section 4.9. All subsections of the old - Section 5 after 5.5 were moved down to fill in the number - gap. -+ Modified the section about changelog files to accommodate - upstream changelogs which were formatted as HTML. These - upstream changelog files should now be accessible as - ~/usr/doc/package/changelog.html.gz~ - + Symlinks are permissible to link the real, or upstream, - changelog name to the Debian mandated name. -+ Clarified that HTML documentation should be present in some - package, though not necessarily the main binary package. -+ Corrected all references to the location of the copyright - files. The correct location is ~/usr/doc/package/copyright~ -+ Ratified the architecture specification strings to cater to the - HURD. - -*** 2.4.1.0 -:PROPERTIES: -:CUSTOM_ID: v2.4.1.0 -:END: -#<> - -Released Apr 1998. - -**** Policy Manual: -+ Updated section 3.3.5 Symbolic links: - + symbolic links within a toplevel directory should be relative, - symbolic links between toplevel directories should be absolute - (cf., Policy Weekly Issue#6, topic 2) - -+ Updated section 4.9 Games: - + manpages for games should be installed in ~/usr/man/man6~ - (cf., Policy Weekly Issue#6, topic 3) - -**** Packaging Manual: -+ Updated prefix of chapter 12, Shared Libraries: - ldconfig must be called in the postinst script if the package - installs shared libraries - (cf., Policy Weekly Issue #6, fixes:bug#20515) - -*** 2.4.0.0 -:PROPERTIES: -:CUSTOM_ID: v2.4.0.0 -:END: -#<> - -Released Jan 1998 - -+ Updated section 3.3.4 Scripts: - + ~/bin/sh~ may be any POSIX compatible shell - + scripts including bashisms have to specify ~/bin/bash~ as - interpreter - + scripts which create files in world-writable directories - (e.g., in ~/tmp~) should use tempfile or mktemp for creating - the directory - -+ Updated section 3.3.5 Symbolic Links: - + symbolic links referencing compressed files must have the same - file extension as the referenced file - -+ Updated section 3.3.6 Device files: - + ~/dev/tty*~ serial devices should be used instead of ~/dev/cu*~ - -+ Updated section 3.4.2 Writing the scripts in ~/etc/init.d~: - + all ~/etc/init.d~ scripts have to provide the following options: - start, stop, restart, force-reload - + the reload option is optional and must never stop and restart - the service - -+ Updated section 3.5 Cron jobs: - + cron jobs that need to be executed more often than daily should - be installed into ~/etc/cron.d~ - -+ Updated section 3.7 Menus: - + removed section about how to register HTML docs to `menu' - (the corresponding section in 4.4, Web servers and applications, - has been removed in policy 2.2.0.0 already, so this one was - obsolete) - -+ New section 3.8 Keyboard configuration: - + details about how the backspace and delete keys should be - handled - -+ New section 3.9 Environment variables: - + no program must depend on environment variables to get a - reasonable default configuration - -+ New section 4.6 News system configuration: - + ~/etc/news/organization~ and ~/etc/news/server~ should be supported - by all news servers and clients - -+ 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 - against lesstif and not against a non-free Motif library - -+ Updated section 4.9 Games: - + games for X Windows have to be installed in ~/usr/games~, just as - non-X games - -*** 2.3.0.1, 2.3.0.0 -:PROPERTIES: -:CUSTOM_ID: v2.3.0.0 -:END: -#<> - -Released Sep 1997. - -+ new section `4.2 Daemons' including rules for - ~/etc/services~, ~/etc/protocols~, ~/etc/rpc~, and ~/etc/inetd.conf~ - -+ updated section about `Configuration files': - packages may not touch other packages' configuration files - -+ MUAs and MTAs have to use liblockfile - -*** 2.2.0.0 -:PROPERTIES: -:CUSTOM_ID: v2.2.0.0 -:END: -#<> - -Released July 1997. - -+ added section 4.1 `Architecture specification strings': - use - -linux - where is one of the following: - i386, alpha, arm, m68k, powerpc, sparc. - -+ detailed rules for ~/usr/local~ - -+ user ID's - -+ editor/pager policy - -+ cron jobs - -+ device files - -+ don't install shared libraries as executable - -+ app-defaults files may not be conffiles - -*** 2.1.3.2, 2.1.3.1, 2.1.3.0 -:PROPERTIES: -:CUSTOM_ID: v2.1.3.0 -:END: -#<> - -Released Mar 1997. - -+ two programs with different functionality must not have the - same name - -+ "Webstandard 3.0" - -+ "Standard for Console Messages" - -+ Libraries should be compiled with `-D\_REENTRANT' - -+ Libraries should be stripped with "strip --strip-unneeded" - -*** 2.1.2.2, 2.1.2.1, 2.1.2.0 -:PROPERTIES: -:CUSTOM_ID: v2.1.2 -:END: -#<> - -Released Nov 1996. - -+ Some changes WRT shared libraries - -*** 2.1.1.0 -:PROPERTIES: -:CUSTOM_ID: v2.1.1.0 -:END: -#<> - -Released Sep 1996. - -+ No hard links in source packages - -+ Do not use dpkg-divert or update-alternatives without consultation - -+ Shared libraries must be installed stripped - -*** 2.1.0.0 -:PROPERTIES: -:CUSTOM_ID: v2.1.0.0 -:END: -#<> - -Released Aug 1996. - -+ Upstream changelog must be installed too diff --git a/upgrading-checklist.sgml b/upgrading-checklist.sgml new file mode 100644 index 0000000..5425cfc --- /dev/null +++ b/upgrading-checklist.sgml @@ -0,0 +1,1174 @@ + + + + + Policy checklist for upgrading your packages + Bill Allombert + Josip Rodin + Julian Gilbey + Russ Allbery + Manoj Srivastava About the checklist +

+The checklist below has been created to simplify the upgrading process +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 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. +

+Here is how the check list works: Check which policy version your +package was checked against last (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. + + The checklist + + Version 3.8.4.0 +

+ +Release Jan 2010. + +

+9.1.1 + An FHS exception has been granted for multiarch libraries. + Permitting files to instead be installed to /lib/triplet and + /usr/lib/triplet directories. + +10.6 + Explicitly state that packages may not contain named pipes and + should instead create them in postinst and remove them in prerm or postrm. + +9.1.1 + /sys and /selinux directories are explicitly + allowed as an exception to the FHS. + +

+ + Version 3.8.3.0 +

+Released Aug 2009. + +

+4.9 + Add DEB_*_ARCH_CPU and DEB_*_ARCH_OS variables and + recommend them over GNU-style variables for that information. + +5.6.8 + Source package Architecture fields may contain +5.6.14 + The Debian archive software does not support uploading + to multiple distributions with one *.changes file. + +5.6.19 + The Binary field may span multiple lines. + +10.2 + Remove the permission for shared library packages to + install libraries in a non-standard location and modify +11.8.7 + Clarify installation directories for X programs and + remove the requirement to pre-depend on x11-common before installing + into /usr/include/X11 and /usr/lib/X11. + +12.1 + Remove the requirement that all characters in a manual + page be representable in the legacy encoding for that language. + +12.1 + Localized man pages should either be kept up-to-date with + the original version or warn that they're not up-to-date, either + with warning text or by showing missing or changed portions in the + original language. + +12.2 + install-info is now handled via triggers so packages no + longer need to invoke it in maintainer scripts. Info documents + should now have directory sections and entries in the document. + Packages containing info documents should add a dependency to + support partial upgrades. + +perl + The requirement for Perl modules to have a versioned + Depend and Build-Depend on perl >= 5.6.0-16 has been removed. + +

+ + Version 3.8.2.0 +

+ +Released Jun 2009. + +

+2.4 + The list of archive sections has been significantly expanded. See + + for the list of new sections and rules for how to categorize + packages. + +3.9.1 + All packages must use debconf or equivalent for user prompting, + though essential packages or their dependencies may also fall + back on other methods. + +5.6.1 + The requirements for source package names are now explicitly + spelled out. + +9.1 + Legacy XFree86 servers no longer get a special exception from the + FHS permitting /etc/X11/XF86Config-4. + +9.1.3 + Removed obsolete dependency requirements for packages that use + /var/mail. + +11.8.5 + Speedo fonts are now deprecated. The X backend was disabled + starting in lenny. + +12.5 + The GNU Free Documentation License version 1.3 is included in + common-licenses and should be referenced from there. + +

+ + Version 3.8.1.0 +

+ +Released Mar 2009. + +

+3.8 + Care should be taken when adding functionality to essential and + such additions create an obligation to support that functionality + in essential forever unless significant work is done. + +4.4 + Changelog files must be encoded in UTF-8. + +4.4 + Tighten some format requirements for changelog files from a should + to a must. + +4.4.1 + Remove alternative changelog formats. Debian only supports one + changelog format for the Debian Archive. + +4.9.1 + New nocheck option for DEB_BUILD_OPTIONS indicating any build-time + test suite provided by the package should not be run. + +5.1 + All control files must be encoded in UTF-8. + +5.2 + debian/control allows comment lines starting with # with no + preceding whitespace. + +9.3 + Init scripts ending in .sh are not handled specially. They are not + sourced and are not guaranteed to be run by /bin/sh regardless + of the #! line. This brings Policy in line with the long-standing + behavior of the init system in Debian. + +9.3.2 + The start action of an init script must exit successfully and not + start the daemon again if it's already running. + +9.3.2 + /var/run and /var/lock may be mounted as + temporary filesystems, and init scripts must therefore create any necessary + subdirectories dynamically. + +10.4 + /bin/sh scripts may assume that local can take multiple + variable arguments and supports assignment. + +11.6 + User mailboxes may be mode 600 and owned by the user rather than + mode 660, owned by user, and group mail. + +

+ + Version 3.8.0.0 +

+ +Released Jun 2008. + +

+2.4, 3.7 +The base section has been removed. contrib and non-free have been + removed from the section list; they are only categories. The base + system is now defined by priority. +4.9 +If dpkg-source -x doesn't provide the source that will be + compiled, a debian/rules patch target is recommended and should do whatever + else is necessary. +4.9.1, 10.1 +Standardized the format of DEB_BUILD_OPTIONS. Specified permitted + characters for tags, required that tags be whitespace-separated, + allowed packages to assume non-conflicting tags, and required + unknown flags be ignored. +4.9.1 +Added parallel=n to the standardized DEB_BUILD_OPTIONS tags, + indicating that a package should be built using up to n parallel + processes if the package supports it +4.13 +Debian packages should not use convenience copies of code from other + packages unless the included package is explicitly intended to be + used that way. +4.14 +If dpkg-source -x doesn't produce source ready for editing and + building with dpkg-buildpackage, packages should include a + debian/README.source file explaining how to generate + the patched source, add a new modification, and remove an existing + modification. This file may also be used to document packaging a + new upstream release and any other complexity of the Debian build + process. +5.6.3 +The Uploaders field in debian/control may be wrapped. +5.6.12 +An empty Debian revision is equivalent to a Debian revision of 0 in + a version number. +5.6.23 +New Homepage field for upstream web sites. +6.5, 6.6, 7 +The Breaks field declares that this package breaks another and + prevents installation of the breaking package unless the package + named in Breaks is deconfigured first. This field should not be + used until the dpkg in Debian stable supports it. +8.1, 8.2 +Clarify which files should go into a shared library package, into a + separate package, or into the -dev package. Suggest -tools instead + of -runtime for runtime support programs, since that naming is more + common in Debian. +9.5 +Files in /etc/cron.{hourly,daily,weekly,monthly} must be + configuration files (upgraded from should). Mention the hourly + directory. +11.8.6 +Packages providing /etc/X11/Xresources files need not + conflict with xbase (<< 3.3.2.3a-2), which is + long-obsolete. +12.1 +Manual pages in locale-specific directories should use either the + legacy encoding for that directory or UTF-8. Country names should + not be included in locale-specific manual page directories unless + indicating a significant difference in the language. All + characters in the manual page source should be representable in the + legacy encoding for a locale even if the man page is encoded in + UTF-8. +12.5 +The Apache 2.0 license is now in common-licenses and should be + referenced rather than quoted in debian/copyright. +12.5 +Packages in contrib and non-free should state in the copyright file + that the package is not part of Debian GNU/Linux and briefly + explain why. +debconf +Underscore (_) is allowed in debconf template names. +

+ + Version 3.7.3.0 +

+ +Released Dec 2007. + +

+5.6.12 +Package version numbers may contain tildes, which sort before + anything, even the end of a part. +10.4 +Scripts may assume that /bin/sh supports local (at a basic + level) and that its test builtin (if any) supports -a and -o binary + logical operators. +8.5 +The substitution variable ${binary:Version} should be used in place + of ${Source-Version} for dependencies between packages of the same + library. +menu policy +Substantial reorganization and renaming of sections in the Debian + menu structure. Packages with menu entries should be reviewed to + see if the menu section has been renamed or if one of the new + sections would be more appropriate. +5.6.1 +The Source field in a .changes file may contain a version number + in parentheses. +5.6.17 +The acceptable values for the Urgency field are low, medium, high, + critical, or emergency. +8.6 +The shlibs file now allows an optional type field, indicating the + type of package for which the line is valid. The only currently + supported type is udeb, used with packages for the Debian + Installer. +3.9.1 +Packages following the Debian Configuration management + specification must allow for translation of their messages by using + a gettext-based system such as po-debconf. +12.5 +GFDL 1.2, GPL 3, and LGPL 3 are now in common-licenses and should + be referenced rather than quoted in debian/copyright. +

+ + Version 3.7.2.2 +

+ +Released Oct 2006. + +

+6.1 Maintainer scripts must not be world writeable (up from a + should to a must) +

+ + Version 3.7.2.0 +

+ +Released Apr 2006. + +

+11.5 Revert the cgi-lib change. +

+ + Version 3.7.1.0 +

+ +Released Apr 2006. + +

+10.2 +It is now possible to create shared libraries without + relocatable code (using -fPIC) in certain exceptional cases, + provided some procedures are followed, and for creating static + libraries with relocatable code (again, using -fPIC). + Discussion on debian-devel@lists.debian.org, getting a rough + consensus, and documenting it in README.Debian constitute most + of the process. +11.8.7 +Packages should install any relevant files into the directories + /usr/include/X11/ and /usr/lib/X11/, but if + they do so, they must pre-depend on x11-common (>= 1:7.0.0) +

+ + Version 3.7.0.0 +

+ +Released Apr 2006. + +

+11.5 +Packages shipping web server CGI files are expected to install + them in /usr/lib/cgi-lib/ directories. This location change + perhaps should be documented in NEWS +11.5 +Web server packages should include a standard scriptAlias of + cgi-lib to /usr/lib/cgi-lib. +9.1.1 +The version of FHS mandated by policy has been upped to + 2.3. There should be no changes required for most packages, + though new top level directories /media, /srv, + etc. may be of interest. +5.1, 5.6.3 +All fields, apart from the Uploaders field, in the control file + are supposed to be a single logical line, which may be spread + over multiple physical lines (newline followed by space is + elided). However, any parser for the control file must allow + the Uploaders field to be spread over multiple physical lines + as well, to prepare for future changes. +10.4 +When scripts are installed into a directory in the system + PATH, the script name should not include an extension that + denotes the scripting language currently used to implement it. + +9.3.3.2 +packages that invoke initscripts now must use invoke-rc.d to do + so since it also pays attention to run levels and other local + constraints. +11.8.5.2, 11.8.7, etc +We no longer use /usr/X11R6, since we have + migrated away to using Xorg paths. This means, for one thing, fonts + live in /usr/share/fonts/X11/ now, and /usr/X11R6 + is gone. +

+ + Version 3.6.2.0 +

+ +Released 2005 + +

+ +Recommend. doc-base, and not menu, for registering package documentation. + +8.1 +Run time support programs should live in subdirectories of + /usr/lib/ or /usr/share, and preferably the shared + lib is named the same as the package name (to avoid name collisions). + +11.5 +It is recommended that HTTP servers provide an alias /images to + allow packages to share image files with the web server + +

+ + Version 3.6.1.0 +

+ +Released Aug 2003. + +

+3.10.1 +Prompting the user should be done using debconf. Non debconf + user prompts are now deprecated. +

+ + Version 3.6.0 +

+ +Released 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 behavior of the + deb-building tool-chain. + +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 sects 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. +menu policy +Added Games/Simulation and Apps/Education to menu + sub-policy +C.2.2 +Debian changelogs should be UTF-8 encoded. +10.2 +shared libraries must be linked against all libraries that they + use symbols from in the same way that binaries are. +7.6 +build-depends-indep need not be satisfied during clean + target. +

+ + Version 3.5.10 +

+ +Released May 2003. + +

+11.8.3 +packages providing the x-terminal-emulator virtual package + ought to ensure that they interpret the command line exactly + like xterm does. +11.8.4 +Window managers compliant with the Window Manager Specification + Project may add 40 points for ranking in the alternatives +

+ + Version 3.5.9.0 +

+ +Released Mar 2003. + +

+3.4.2 +The section describing the Description: package field once again has + full details of the long description format. +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). +9.3.2 +When asked to restart a service that isn't already running, + the init script should start the service. +12.6 +If the purpose of a package is to provide examples, then the + example files can be installed into /usr/share/doc/package + (rather than /usr/share/doc/package/examples). +

+ + Version 3.5.8.0 +

+ +Released Nov 2002. + +

+12.7 +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. +7.6 +menu policy +A new Apps/Science menu section is available +debconf policy +debconf specification cleared up, various changes. +12.1 +It is no longer recommended to create symlinks from nonexistent + manual pages to undocumented(7). Missing manual pages for programs + are still a bug. +

+ + Version 3.5.7.0 +

+ +Released Aug 2002. + +

+ +Packages no longer have to ask permission to call MAKEDEV in + postinst, merely notifying the user ought to be enough. +2.2.4 +cryptographic software may now be included in the main + archive. +3.9 +task packages are no longer permitted; tasks are now created by a + special Tasks: field in the control file. +11.8.4 +window managers that support netwm can now add 20 points when + they add themselves as an alternative for + /usr/bin/x-window-manager +10.1 +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. +7.6, 4.8 +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. +8 +Changed rules on how, and when, to invoke ldconfig in maintainer + scripts. Long rationale. +

+ +

+Added the last note in 3.5.6 upgrading checklist item regarding build +rules, please see below +

+ + Version 3.5.6.0 +

+ +Released Jul 2001. + +

+2.5 +Emacs and TeX are no longer mandated by policy to be priority + standard packages +11.5 +Programs that access docs need to do so via /usr/share/doc, + and not via /usr/doc/ as was the policy previously +12.3 +Putting documentation in /usr/doc versus + /usr/share/doc is now a ``serious'' policy violation. +11.5 +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. +7 +There are new rules for build-indep/build-arch targets and + there is a new Build-Depend-Indep semantic. +

+ + Version 3.5.5.0 +

+ +Released May 2001. + +

+12.1 +Manpages should not rely on header information to have + alternative manpage names available; it should only use + symlinks or .so pages to do this + + + 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! + +10.2 +Plugins are no longer bound by all the rules of shared + libraries + +X Windows related things: + + 11.8.1 + Clarification of priority levels of X Window System related + packages + + 11.8.3 + Rules for defining x-terminal-emulator improved + 11.8.5 + X Font policy rewritten: you must read this if you provide + fonts for the X Window System + + 11.8.6 + Packages must not ship /usr/X11R6/lib/X11/app-defaults/ + + 11.8.7 + X-related packages should usually use the regular FHS + locations; imake-using packages are exempted from this + + 11.8.8 + OpenMotif linked binaries have the same rules as + OSF/Motif-linked ones + + +

+ + Version 3.5.4.0 +

Released Apr 2001. + +

+11.6 +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.9; perl-policy +The perl policy is now part of Debian policy + proper. Perl programs and modules should follow the current Perl + policy + +

+ + Version 3.5.3.0 +

Released Apr 2001 + +

+7.1 +Build-Depends arch syntax has been changed to be less + ambiguous. This should not affect any current packages + +10.7.3 +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 + +

+ + Version 3.5.2.0 + +

Released Feb 2001. + +

+11.8.6 +X app-defaults directory has moved from + /usr/X11R6/lib/X11/app-defaults to + /etc/X11/app-defaults + +

+ + Version 3.5.1.0 + +

Released Feb 2001. + +

+8.1 +dpkg-shlibdeps now uses objdump, so shared libraries have to be + run through dpkg-shlibdeps as well as executables + +

+ + Version 3.5.0.0 + +

Released Jan 2001. + +

+11.8.5 +Font packages for the X Window System must now declare a + dependency on xutils (>= 4.0.2) + +

+ + Version 3.2.1.1 + +

Released Jan 2001. + +

+9.3.2 +Daemon startup scripts in /etc/init.d/ should not contain + modifiable parameters; these should be moved to a file in + /etc/default/ + +12.3 +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>/ + + +Much of the packaging manual has now been imported into the + policy document + +

+ + Version 3.2.1.0 + +

Released Aug 00. + +

+11.8.1 +A package of priority standard or higher may provide two + binaries, one compiled with support for the X Window System, + and the other without + +

+ + Version 3.2.0.0 + +

Released Aug 00. + +

+10.1 +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. Details in + +12.8 +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 (3.2) + shall probably need sweeping changes in policy + + +Policy for packages providing the following X-based features + has been codified: + + 11.8.2 + X server (virtual package xserver) + 11.8.3 + X terminal emulator (virtual package x-terminal-emulator) + 11.8.4 + X window manager (virtual package x-window-manager, and + /usr/bin/x-window-manager alternative, with priority + calculation guidelines) + + 12.8.5 + X fonts (this section has been written from scratch) + 11.8.6 + X application defaults + + +11.8.7 +Policy for packages using the X Window System and FHS issues + has been clarified; + +11.7.3 +No package may contain or make hard links to conffiles +8 +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 + +

+ + Version 3.1.1.0 + +

Released Nov 1999. + +

+7.1 +Correction to semantics of architecture lists in Build-Depends + etc. Should not affect many packages + +

+ + Version 3.1.0.0 + +

Released Oct 1999. + +

+defunct +/usr/doc/<package> has to be a symlink pointing to + /usr/share/doc/<package>, to be maintained by postinst + and prerm scripts. + +7.1, 7.6 +Introduced source dependencies (Build-Depends, etc.) +9.3.4 +/etc/rc.boot has been deprecated in favour of + /etc/rcS.d. (Packages should not be touching this directory, + but should use update-rc.d instead) + +9.3.3 +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.) + +12.7 +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 + +9.1.1 +Updated FHS to a 2.1 draft; this reverts /var/state to + /var/lib + +9.7; mime-policy +Added MIME sub-policy document +12.4 +VISUAL is allowed as a (higher priority) alternative to EDITOR + +11.6 +Modified liblockfile description, which affects + mailbox-accessing programs. Please see the policy document for + details + +12.7 +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.) + +3.2.1 +Description of how to handle version numbers based on dates + added + +

+ + Version 3.0.1.0 + +

Released Jul 1999. + +

+10.2 +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 + +

+ + Version 3.0.0.0 + +

Released Jun 1999. + +

+9.1 +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. + +4.1 +Only 3 digits of the Standards version need be included in + control files, though all four digits are still permitted. + +12.6 +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 + +10.2 +Packages that use libtool to create shared libraries must + include the .la files in the -dev packages + +10.8 +Use logrotate to rotate log files + +now 11.8 +section 5.8 has been rewritten (Programs for the X Window + System) + +9.6; menu-policy +There is now an associated menu policy, in a separate document, + that carries the full weight of Debian policy + +11.3 +Programs which need to modify the files /var/run/utmp, + /var/log/wtmp and /var/log/lastlog must be + installed setgid utmp + +

+

+ Please note that section numbers below this point may not be up to date +

+ + Version 2.5.0.0 + +

Released Oct 1998. + +Policy Manual: +

+Rearranged the manual to create a new Section 4, Files + + Section 3.3 ("Files") was moved to Section 4. The Sections + that were Section 4 and Section 5 were moved down to become + Section 5 and Section 6. + + What was Section 5.5 ("Log files") is now a subsection of the + new Section 4 ("Files"), becoming section 4.8, placed after + "Configuration files", moving the Section 4.8 ("Permissions + and owners") to Section 4.9. All subsections of the old + Section 5 after 5.5 were moved down to fill in the number + gap. + + +Modified the section about changelog files to accommodate + upstream changelogs which were formatted as HTML. These + upstream changelog files should now be accessible as + /usr/doc/package/changelog.html.gz + +Symlinks are permissible to link the real, or upstream, + changelog name to the Debian mandated name. + +Clarified that HTML documentation should be present in some + package, though not necessarily the main binary package. + +Corrected all references to the location of the copyright + files. The correct location is /usr/doc/package/copyright + +Ratified the architecture specification strings to cater to the + HURD. + +

+ + Version 2.4.1.0 + +

Released Apr 1998. +

+ Policy Manual: +

+Updated section 3.3.5 Symbolic links: + symbolic links within a toplevel directory should be relative, + symbolic links between toplevel directories should be absolute + (cf., Policy Weekly Issue#6, topic 2) + + +Updated section 4.9 Games: + manpages for games should be installed in /usr/man/man6 + (cf., Policy Weekly Issue#6, topic 3) + +

+ + Packaging Manual: +

+Updated prefix of chapter 12, Shared Libraries: + ldconfig must be called in the postinst script if the package + installs shared libraries + (cf., Policy Weekly Issue #6, fixes:bug#20515) + +

+ + Version 2.4.0.0 + +

Released Jan 1998 + +

+Updated section 3.3.4 Scripts: + + /bin/sh may be any POSIX compatible shell + scripts including bashisms have to specify /bin/bash + as interpreter + scripts which create files in world-writable directories + (e.g., in /tmp) should use tempfile or mktemp for creating + the directory + + +Updated section 3.3.5 Symbolic Links: + symbolic links referencing compressed files must have the same + file extension as the referenced file + + +Updated section 3.3.6 Device files: + /dev/tty* serial devices should be used instead of + /dev/cu* + + +Updated section 3.4.2 Writing the scripts in /etc/init.d: + + all /etc/init.d scripts have to provide the following + options: start, stop, restart, force-reload + the reload option is optional and must never stop and restart + the service + + +Updated section 3.5 Cron jobs: + cron jobs that need to be executed more often than daily should + be installed into /etc/cron.d + + +Updated section 3.7 Menus: + removed section about how to register HTML docs to `menu' + (the corresponding section in 4.4, Web servers and applications, + has been removed in policy 2.2.0.0 already, so this one was + obsolete) + + +New section 3.8 Keyboard configuration: + details about how the backspace and delete keys should be + handled + + +New section 3.9 Environment variables: + no program must depend on environment variables to get a + reasonable default configuration + + +New section 4.6 News system configuration: + /etc/news/organization and /etc/news/server + should be supported by all news servers and clients + + +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 + against lesstif and not against a non-free Motif library + + + +Updated section 4.9 Games: + games for X Windows have to be installed in /usr/games, + just as non-X games + +

+ + Version 2.3.0.1, 2.3.0.0 + +

Released Sep 1997. + +

+new section `4.2 Daemons' including rules for + /etc/services, /etc/protocols, + /etc/rpc, and /etc/inetd.conf + + +updated section about `Configuration files': + packages may not touch other packages' configuration files + + +MUAs and MTAs have to use liblockfile +

+ + Version 2.2.0.0 + +

Released July 1997. + +

+added section 4.1 `Architecture specification strings': + use + <arch>-linux + where <arch> is one of the following: + i386, alpha, arm, m68k, powerpc, sparc. + + +detailed rules for /usr/local + +user ID's + +editor/pager policy + +cron jobs + +device files + +don't install shared libraries as executable + +app-defaults files may not be conffiles +

+ + Version 2.1.3.2, 2.1.3.1, 2.1.3.0 + +

Released Mar 1997. + +

+two programs with different functionality must not have the + same name + +"Webstandard 3.0" + +"Standard for Console Messages" + +Libraries should be compiled with `-D_REENTRANT' + +Libraries should be stripped with strip --strip-unneeded + +

+ + Version 2.1.2.2, 2.1.2.1, 2.1.2.0 + +

Released Nov 1996. + +

+Some changes WRT shared libraries +

+ + Version 2.1.1.0 + +

Released Sep 1996. + +

+No hard links in source packages + +Do not use dpkg-divert or update-alternatives +without consultation + +Shared libraries must be installed stripped +

+ + Version 2.1.0.0 + +

Released Aug 1996. + +

+ Upstream changelog must be installed too +

+
+
diff --git a/upgrading-checklist.txt b/upgrading-checklist.txt deleted file mode 100644 index 6a586fc..0000000 --- a/upgrading-checklist.txt +++ /dev/null @@ -1,829 +0,0 @@ - Policy checklist for upgrading your packages - ============================================ - -Author: Bill Allombert, Josip Rodin, Julian Gilbey, Russ Allbery, and Manoj Srivastava -Date: 2010-01-26 13:43:11 CET - - -About the checklist -==================== - -The checklist below has been created to simplify the upgrading process -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 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. - -Here is how the check list works: Check which policy version your -package was checked against last (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. - -The checklist -============== - -3.8.4.0 --------- - -Released Jan 2010. - -+ *9.1.1* : An FHS exception has been granted for multiarch libraries. - Permitting files to instead be installed to `/lib/triplet' and - `/usr/lib/triplet' directories. -+ *10.6* : Explicitly state that packages may not contain named pipes and - should instead create them in postinst and remove them in prerm or postrm. -+ *9.1.1* : `/sys' and `/selinux' directories are explicitly allowed as an - exception to the FHS. - -3.8.3.0 --------- - -Released Aug 2009. - -+ *4.9* : Add DEB\_*\_ARCH\_CPU and DEB\_*\_ARCH\_OS variables and - recommend them over GNU-style variables for that information. -+ *5.6.8*: Source package Architecture fields may contain /all/ in - combination with other architectures. Clarify when /all/ and /any/ - may be used in different versions of the field. -+ *5.6.14* : The Debian archive software does not support uploading - to multiple distributions with one `*.changes' file. -+ *5.6.19* : The Binary field may span multiple lines. -+ *10.2* : Remove the permission for shared library packages to - install libraries in a non-standard location and modify ld.so.conf. - Packages should either be installed in a standard library directory - or packages using them should be built with RPATH. -+ *11.8.7* : Clarify installation directories for X programs and - remove the requirement to pre-depend on x11-common before installing - into `/usr/include/X11' and `/usr/lib/X11'. -+ *12.1* : Remove the requirement that all characters in a manual - page be representable in the legacy encoding for that language. -+ *12.1* : Localized man pages should either be kept up-to-date with - the original version or warn that they're not up-to-date, either - with warning text or by showing missing or changed portions in the - original language. -+ *12.2* : install-info is now handled via triggers so packages no - longer need to invoke it in maintainer scripts. Info documents - should now have directory sections and entries in the document. - Packages containing info documents should add a dependency to - support partial upgrades. -+ *perl* : The requirement for Perl modules to have a versioned - Depend and Build-Depend on perl >= 5.6.0-16 has been removed. - -3.8.2.0 --------- - -Released Jun 2009. - -+ *2.4*: The list of archive sections has been significantly expanded. See - [http://lists.debian.org/debian-devel-announce/2009/03/msg00010.html] - for the list of new sections and rules for how to categorize - packages. -+ *3.9.1*: All packages must use debconf or equivalent for user prompting, - though essential packages or their dependencies may also fall - back on other methods. -+ *5.6.1*: The requirements for source package names are now explicitly - spelled out. -+ *9.1*: Legacy XFree86 servers no longer get a special exception from the - FHS permitting `/etc/X11/XF86Config-4'. -+ *9.1.3*: Removed obsolete dependency requirements for packages that use - `/var/mail'. -+ *11.8.5*: Speedo fonts are now deprecated. The X backend was disabled - starting in lenny. -+ *12.5*: The GNU Free Documentation License version 1.3 is included in - common-licenses and should be referenced from there. - -3.8.1.0 --------- - -Released Mar 2009. - -+ *3.8*: Care should be taken when adding functionality to essential and - such additions create an obligation to support that functionality - in essential forever unless significant work is done. -+ *4.4*: Changelog files must be encoded in UTF-8. -+ *4.4*: Tighten some format requirements for changelog files from a should - to a must. -+ *4.4.1*: Remove alternative changelog formats. Debian only supports one - changelog format for the Debian Archive. -+ *4.9.1*: New nocheck option for DEB\_BUILD\_OPTIONS indicating any build-time - test suite provided by the package should not be run. -+ *5.1*: All control files must be encoded in UTF-8. -+ *5.2*: `debian/control' allows comment lines starting with # with no - preceding whitespace. -+ *9.3*: Init scripts ending in .sh are not handled specially. They are not - sourced and are not guaranteed to be run by `/bin/sh' regardless of - the #! line. This brings Policy in line with the long-standing - behavior of the init system in Debian. -+ *9.3.2*: The start action of an init script must exit successfully and not - start the daemon again if it's already running. -+ *9.3.2*: `/var/run' and `/var/lock' may be mounted as temporary filesystems, - and init scripts must therefore create any necessary subdirectories - dynamically. -+ *10.4*: `/bin/sh' scripts may assume that local can take multiple variable - arguments and supports assignment. -+ *11.6*: User mailboxes may be mode 600 and owned by the user rather than - mode 660, owned by user, and group mail. - -3.8.0.0 --------- - -Released Jun 2008. - -+ *2.4, 3.7*: The base section has been removed. contrib and non-free have been - removed from the section list; they are only categories. The base - system is now defined by priority. -+ *4.9*: If dpkg-source -x doesn't provide the source that will be compiled, - a debian/rules patch target is recommended and should do whatever - else is necessary. -+ *4.9.1, 10.1*: Standardized the format of DEB\_BUILD\_OPTIONS. Specified permitted - characters for tags, required that tags be whitespace-separated, - allowed packages to assume non-conflicting tags, and required - unknown flags be ignored. -+ *4.9.1*: Added parallel=n to the standardized DEB\_BUILD\_OPTIONS tags, - indicating that a package should be built using up to n parallel - processes if the package supports it -+ *4.13*: Debian packages should not use convenience copies of code from other - packages unless the included package is explicitly intended to be - used that way. -+ *4.14*: If dpkg-source -x doesn't produce source ready for editing and - building with dpkg-buildpackage, packages should include a - `debian/README.source' file explaining how to generate the patched - source, add a new modification, and remove an existing - modification. This file may also be used to document packaging a - new upstream release and any other complexity of the Debian build - process. -+ *5.6.3*: The Uploaders field in `debian/control' may be wrapped. -+ *5.6.12*: An empty Debian revision is equivalent to a Debian revision of 0 in - a version number. -+ *5.6.23*: New Homepage field for upstream web sites. -+ *6.5, 6.6, 7*: The Breaks field declares that this package breaks another and - prevents installation of the breaking package unless the package - named in Breaks is deconfigured first. This field should not be - used until the dpkg in Debian stable supports it. -+ *8.1, 8.2*: Clarify which files should go into a shared library package, into a - separate package, or into the -dev package. Suggest -tools instead - of -runtime for runtime support programs, since that naming is more - common in Debian. -+ *9.5*: Files in `/etc/cron.{hourly,daily,weekly,monthly}' must be - configuration files (upgraded from should). Mention the hourly - directory. -+ *11.8.6*: Packages providing `/etc/X11/Xresources' files need not conflict - with xbase (<< 3.3.2.3a-2), which is long-obsolete. -+ *12.1*: Manual pages in locale-specific directories should use either the - legacy encoding for that directory or UTF-8. Country names should - not be included in locale-specific manual page directories unless - indicating a significant difference in the language. All - characters in the manual page source should be representable in the - legacy encoding for a locale even if the man page is encoded in - UTF-8. -+ *12.5*: The Apache 2.0 license is now in common-licenses and should be - referenced rather than quoted in `debian/copyright'. -+ *12.5*: Packages in contrib and non-free should state in the copyright file - that the package is not part of Debian GNU/Linux and briefly - explain why. -+ *debconf*: Underscore (_) is allowed in debconf template names. - -3.7.3.0 --------- - -Released Dec 2007. - -+ *5.6.12*: Package version numbers may contain tildes, which sort before - anything, even the end of a part. -+ *10.4*: Scripts may assume that `/bin/sh' supports local (at a basic level) - and that its test builtin (if any) supports -a and -o binary - logical operators. -+ *8.5*: The substitution variable ${binary:Version} should be used in place - of ${Source-Version} for dependencies between packages of the same - library. -+ *menu policy*: Substantial reorganization and renaming of sections in the Debian - menu structure. Packages with menu entries should be reviewed to - see if the menu section has been renamed or if one of the new - sections would be more appropriate. -+ *5.6.1*: The Source field in a .changes file may contain a version number - in parentheses. -+ *5.6.17*: The acceptable values for the Urgency field are low, medium, high, - critical, or emergency. -+ *8.6*: The shlibs file now allows an optional type field, indicating the - type of package for which the line is valid. The only currently - supported type is udeb, used with packages for the Debian - Installer. -+ *3.9.1*: Packages following the Debian Configuration management - specification must allow for translation of their messages by using - a gettext-based system such as po-debconf. -+ *12.5*: GFDL 1.2, GPL 3, and LGPL 3 are now in common-licenses and should - be referenced rather than quoted in `debian/copyright'. - -3.7.2.2 --------- - -Released Oct 2006. - -+ *6.1*: Maintainer scripts must not be world writeable (up from a - should to a must) - -3.7.2.0 --------- - -Released Apr 2006. - -+ *11.5*: Revert the cgi-lib change. - -3.7.1.0 --------- - -Released Apr 2006. - -+ *10.2*: It is now possible to create shared libraries without - relocatable code (using -fPIC) in certain exceptional cases, - provided some procedures are followed, and for creating static - libraries with relocatable code (again, using -fPIC). - Discussion on debian-devel@lists.debian.org, getting a rough - consensus, and documenting it in README.Debian constitute most - of the process. -+ *11.8.7*: Packages should install any relevant files into the directories - `/usr/include/X11/' and `/usr/lib/X11/', but if they do so, they - must pre-depend on x11-common (>= 1:7.0.0) - -3.7.0.0 --------- - -Released Apr 2006. - -+ *11.5*: Packages shipping web server CGI files are expected to install - them in `/usr/lib/cgi-lib/' directories. This location change - perhaps should be documented in NEWS -+ *11.5*: Web server packages should include a standard scriptAlias of - cgi-lib to `/usr/lib/cgi-lib'. -+ *9.1.1*: The version of FHS mandated by policy has been upped to - 2.3. There should be no changes required for most packages, - though new top level directories `/media', `/srv', etc may be of - interest. -+ *5.1, 5.6.3*: All fields, apart from the Uploaders field, in the control file - are supposed to be a single logical line, which may be spread - over multiple physical lines (newline followed by space is - elided). However, any parser for the control file must allow - the Uploaders field to be spread over multiple physical lines - as well, to prepare for future changes. -+ *10.4*: When scripts are installed into a directory in the system - PATH, the script name should not include an extension that - denotes the scripting language currently used to implement it. - -+ *9.3.3.2*: packages that invoke initscripts now must use invoke-rc.d to do - so since it also pays attention to run levels and other local - constraints. -+ *11.8.5.2, 11.8.7, etc*: We no longer use `/usr/X11R6', since we have - migrated away to using Xorg paths. This means, for one thing, fonts - live in `/usr/share/fonts/X11/' now, and `/usr/X11R6' is gone. - - -3.6.2.0 --------- - -Released 2005 - -+ Recommend. doc-base, and not menu, for registering package documentation. -+ *8.1*: Run time support programs should live in subdirectories of - `/usr/lib/' or `/usr/share', and preferably the shared lib is named - the same as the package name (to avoid name collisions). -+ *11.5*: It is recommended that HTTP servers provide an alias `/images' to - allow packages to share image files with the web server - -3.6.1.0 --------- - -Released Aug 2003. - -+ *3.10.1*: Prompting the user should be done using debconf. Non debconf - user prompts are now deprecated. - -3.6.0 ------- - -Released 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 behavior of the - deb-building tool-chain. -+ 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. -+ *menu policy*: Added Games/Simulation and Apps/Education to menu - sub-policy -+ *C.2.2*: Debian changelogs should be UTF-8 encoded. -+ *10.2*: shared libraries must be linked against all libraries that they - use symbols from in the same way that binaries are. -+ *7.6*: build-depends-indep need not be satisfied during clean - target. - -3.5.10 -------- - -Released May 2003. - -+ *11.8.3*: packages providing the x-terminal-emulator virtual package - ought to ensure that they interpret the command line exactly - like xterm does. -+ *11.8.4*: Window managers compliant with the Window Manager Specification - Project may add 40 points for ranking in the alternatives - -3.5.9.0 --------- - -Released Mar 2003. - -+ *3.4.2*: The section describing the Description: package field once again has - full details of the long description format. -+ *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). -+ *9.3.2*: When asked to restart a service that isn't already running, - the init script should start the service. -+ *12.6*: If the purpose of a package is to provide examples, then the - example files can be installed into `/usr/share/doc/package' (rather - than `/usr/share/doc/package/examples'). - -3.5.8.0 --------- - -Released Nov 2002. - -+ *12.7*: 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. -+ *7.6*: `Build-Depends', `Build-Conflicts', `Build-Depends-Indep', - and `Build-Conflicts-Indep' must also be satisfied when the clean - target is called. -+ *menu policy*: A new Apps/Science menu section is available -+ *debconf policy*: debconf specification cleared up, various changes. -+ *12.1*: It is no longer recommended to create symlinks from nonexistent - manual pages to undocumented(7). Missing manual pages for programs - are still a bug. - -3.5.7.0 --------- - -Released Aug 2002. - -+ Packages no longer have to ask permission to call MAKEDEV in - postinst, merely notifying the user ought to be enough. -+ *2.2.4*: cryptographic software may now be included in the main - archive. -+ *3.9*: task packages are no longer permitted; tasks are now created by a - special Tasks: field in the control file. -+ *11.8.4*: window managers that support netwm can now add 20 points when - they add themselves as an alternative for - `/usr/bin/x-window-manager' -+ *10.1*: 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. -+ *7.6, 4.8*: 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. -+ *8*: Changed rules on how, and when, to invoke ldconfig in maintainer - scripts. Long rationale. - - *Added the last note in 3.5.6 upgrading checklist item regarding build rules, please see below* - -3.5.6.0 --------- - -Released Jul 2001. - -+ *2.5*: Emacs and TeX are no longer mandated by policy to be priority - standard packages -+ *11.5*: Programs that access docs need to do so via `/usr/share/doc', and - not via `/usr/doc/' as was the policy previously -+ *12.3*: Putting documentation in `/usr/doc' versus `/usr/share/doc' is now - a ``serious'' policy violation. -+ *11.5*: 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. -+ *7*: There are new rules for build-indep/build-arch targets and - there is a new Build-Depend-Indep semantic. - -3.5.5.0 --------- - -Released May 2001. - -+ *12.1*: Manpages should not rely on header information to have - alternative manpage names available; it should only use - symlinks or .so pages to do this -+ *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! -+ *10.2*: Plugins are no longer bound by all the rules of shared - libraries -+ X Windows related things: - * *11.8.1*: Clarification of priority levels of X Window System related - packages - * *11.8.3*: Rules for defining x-terminal-emulator improved - * *11.8.5*: X Font policy rewritten: you must read this if you provide - fonts for the X Window System - * *11.8.6*: Packages must not ship `/usr/X11R6/lib/X11/app-defaults/' - * *11.8.7*: X-related packages should usually use the regular FHS - locations; imake-using packages are exempted from this - * *11.8.8*: OpenMotif linked binaries have the same rules as - OSF/Motif-linked ones - -3.5.4.0 --------- - -Released Apr 2001. - -+ *11.6*: 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.9; perl-policy*: The perl policy is now part of Debian policy - proper. Perl programs and modules should follow the current Perl - policy - - -3.5.3.0 --------- - - Apr 2001 - -+ *7.1*: Build-Depends arch syntax has been changed to be less - ambiguous. This should not affect any current packages -+ *10.7.3*: Examples and templates files for use by scripts should now live - in `/usr/share/' or `/usr/lib/', with - symbolic links from `/usr/share/doc//examples' as - needed - -3.5.2.0 --------- - -Released Feb 2001. - -+ *11.8.6*: X app-defaults directory has moved from - `/usr/X11R6/lib/X11/app-defaults' to `/etc/X11/app-defaults' - -3.5.1.0 --------- - -Released Feb 2001. - -+ *8.1*: dpkg-shlibdeps now uses objdump, so shared libraries have to be - run through dpkg-shlibdeps as well as executables - -3.5.0.0 --------- - -Released Jan 2001. - -+ *11.8.5*: Font packages for the X Window System must now declare a - dependency on xutils (>= 4.0.2) - -3.2.1.1 --------- - -Released Jan 2001. - -+ *9.3.2*: Daemon startup scripts in `/etc/init.d/' should not contain - modifiable parameters; these should be moved to a file in - `/etc/default/' -+ *12.3*: Files in `/usr/share/doc' must not be referenced by any - program. If such files are needed, they must be placed in - `/usr/share//', and symbolic links created as required - in `/usr/share/doc//' -+ Much of the packaging manual has now been imported into the - policy document - -3.2.1.0 --------- - -Released Aug 00. - -+ *11.8.1*: A package of priority standard or higher may provide two - binaries, one compiled with support for the X Window System, - and the other without - -3.2.0.0 --------- - -Released Aug 00. - -+ *10.1*: 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. Details in -+ *12.8*: 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 (3.2) - shall probably need sweeping changes in policy -+ Policy for packages providing the following X-based features - has been codified: - - *11.8.2*: X server (virtual package xserver) - - *11.8.3*: X terminal emulator (virtual package x-terminal-emulator) - - *11.8.4*: X window manager (virtual package x-window-manager, and - `/usr/bin/x-window-manager' alternative, with priority - calculation guidelines) - - *12.8.5*: X fonts (this section has been written from scratch) - - *11.8.6*: X application defaults -+ *11.8.7*: Policy for packages using the X Window System and FHS issues - has been clarified -+ *11.7.3*: No package may contain or make hard links to conffiles -+ *8*: 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 - -3.1.1.0 --------- - -Released Nov 1999. - -+ *7.1*: Correction to semantics of architecture lists in Build-Depends - etc. Should not affect many packages - -3.1.0.0 --------- - -Released Oct 1999. - -+ `/usr/doc/' has to be a symlink pointing to - `/usr/share/doc/', to be maintained by postinst - and prerm scripts. Details are in *defunct* -+ *7.1, 7.6*: Introduced source dependencies (Build-Depends, etc.) -+ *9.3.4*: `/etc/rc.boot' has been deprecated in favour of `/etc/rcS.d'. - (Packages should not be touching this directory, but should use - update-rc.d instead) -+ *9.3.3*: 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.) -+ *12.7*: Architecture-specific examples go in `/usr/lib//examples' - with symlinks from `/usr/share/doc//examples/*' or from - `/usr/share/doc//examples' itself -+ *9.1.1*: Updated FHS to a 2.1 draft; this reverts `/var/state' to - `/var/lib' -+ *9.7; mime-policy*: Added MIME sub-policy document -+ *12.4*: VISUAL is allowed as a (higher priority) alternative to EDITOR -+ *11.6*: Modified liblockfile description, which affects - mailbox-accessing programs. Please see the policy document for - details -+ *12.7*: 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.) -+ *3.2.1*: Description of how to handle version numbers based on dates - added - -3.0.1.0 --------- - -Released Jul 1999. - -+ *10.2*: 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 - -3.0.0.0 --------- - -Released Jun 1999. - -+ *9.1*: 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. -+ *4.1*: Only 3 digits of the Standards version need be included in - control files, though all four digits are still permitted. -+ *12.6*: 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 -+ *10.2*: Packages that use libtool to create shared libraries must - include the .la files in the -dev packages -+ *10.8*: Use logrotate to rotate log files -+ *11.8*: section 5.8 (now 11.8) has been rewritten (Programs for the X Window - System) -+ *9.6; menu-policy*: There is now an associated menu policy, in a separate document, - that carries the full weight of Debian policy -+ *11.3*: Programs which need to modify the files `/var/run/utmp', - `/var/log/wtmp' and `/var/log/lastlog' must be installed setgid utmp - - - *Please note that section numbers below this point may not be up to date* - - -2.5.0.0 --------- - -Released Oct 1998. - -Policy Manual: -+ Rearranged the manual to create a new Section 4, Files - + Section 3.3 ("Files") was moved to Section 4. The Sections - that were Section 4 and Section 5 were moved down to become - Section 5 and Section 6. - + What was Section 5.5 ("Log files") is now a subsection of the - new Section 4 ("Files"), becoming section 4.8, placed after - "Configuration files", moving the Section 4.8 ("Permissions - and owners") to Section 4.9. All subsections of the old - Section 5 after 5.5 were moved down to fill in the number - gap. -+ Modified the section about changelog files to accommodate - upstream changelogs which were formatted as HTML. These - upstream changelog files should now be accessible as - `/usr/doc/package/changelog.html.gz' - + Symlinks are permissible to link the real, or upstream, - changelog name to the Debian mandated name. -+ Clarified that HTML documentation should be present in some - package, though not necessarily the main binary package. -+ Corrected all references to the location of the copyright - files. The correct location is `/usr/doc/package/copyright' -+ Ratified the architecture specification strings to cater to the - HURD. - -2.4.1.0 --------- - -Released Apr 1998. - -* Policy Manual: - + Updated section 3.3.5 Symbolic links: - + symbolic links within a toplevel directory should be relative, - symbolic links between toplevel directories should be absolute - (cf., Policy Weekly Issue#6, topic 2) - - + Updated section 4.9 Games: - + manpages for games should be installed in `/usr/man/man6' - (cf., Policy Weekly Issue#6, topic 3) - -* Packaging Manual: - + Updated prefix of chapter 12, Shared Libraries: - ldconfig must be called in the postinst script if the package - installs shared libraries - (cf., Policy Weekly Issue #6, fixes:bug#20515) - - -2.4.0.0 --------- - -Released Jan 1998 - -+ Updated section 3.3.4 Scripts: - + `/bin/sh' may be any POSIX compatible shell - + scripts including bashisms have to specify `/bin/bash' as - interpreter - + scripts which create files in world-writable directories - (e.g., in `/tmp') should use tempfile or mktemp for creating - the directory - -+ Updated section 3.3.5 Symbolic Links: - + symbolic links referencing compressed files must have the same - file extension as the referenced file - -+ Updated section 3.3.6 Device files: - + `/dev/tty*' serial devices should be used instead of `/dev/cu*' - -+ Updated section 3.4.2 Writing the scripts in `/etc/init.d': - + all `/etc/init.d' scripts have to provide the following options: - start, stop, restart, force-reload - + the reload option is optional and must never stop and restart - the service - -+ Updated section 3.5 Cron jobs: - + cron jobs that need to be executed more often than daily should - be installed into `/etc/cron.d' - -+ Updated section 3.7 Menus: - + removed section about how to register HTML docs to `menu' - (the corresponding section in 4.4, Web servers and applications, - has been removed in policy 2.2.0.0 already, so this one was - obsolete) - -+ New section 3.8 Keyboard configuration: - + details about how the backspace and delete keys should be - handled - -+ New section 3.9 Environment variables: - + no program must depend on environment variables to get a - reasonable default configuration - -+ New section 4.6 News system configuration: - + `/etc/news/organization' and `/etc/news/server' should be supported - by all news servers and clients - -+ 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 - against lesstif and not against a non-free Motif library - -+ Updated section 4.9 Games: - + games for X Windows have to be installed in `/usr/games', just as - non-X games - -2.3.0.1, 2.3.0.0 ------------------ - -Released Sep 1997. - -+ new section `4.2 Daemons' including rules for - `/etc/services', `/etc/protocols', `/etc/rpc', and `/etc/inetd.conf' - -+ updated section about `Configuration files': - packages may not touch other packages' configuration files - -+ MUAs and MTAs have to use liblockfile - -2.2.0.0 --------- - -Released July 1997. - -+ added section 4.1 `Architecture specification strings': - use - -linux - where is one of the following: - i386, alpha, arm, m68k, powerpc, sparc. - -+ detailed rules for `/usr/local' - -+ user ID's - -+ editor/pager policy - -+ cron jobs - -+ device files - -+ don't install shared libraries as executable - -+ app-defaults files may not be conffiles - -2.1.3.2, 2.1.3.1, 2.1.3.0 --------------------------- - -Released Mar 1997. - -+ two programs with different functionality must not have the - same name - -+ "Webstandard 3.0" - -+ "Standard for Console Messages" - -+ Libraries should be compiled with `-D\_REENTRANT' - -+ Libraries should be stripped with "strip --strip-unneeded" - -2.1.2.2, 2.1.2.1, 2.1.2.0 --------------------------- - -Released Nov 1996. - -+ Some changes WRT shared libraries - -2.1.1.0 --------- - -Released Sep 1996. - -+ No hard links in source packages - -+ Do not use dpkg-divert or update-alternatives without consultation - -+ Shared libraries must be installed stripped - -2.1.0.0 --------- - -Released Aug 1996. - -+ Upstream changelog must be installed too