1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
4 <!-- -*- Mode: Sgml -*-
5 upgrading-checklist.html
6 Author : Manoj Srivastava ( srivasta@tiamat.datasync.com )
7 Created On : Thu Oct 29 20:54:48 1998
8 Created On Node : tiamat.datasync.com
9 Last Modified By : Manoj Srivastava
10 Last Modified On : Wed Jun 30 12:35:32 1999
11 Last Machine Used: glaurung.green-gryphon.com
13 Status : Unknown, Use with caution!
20 <title>Policy checklist for upgrading your packages</title>
24 <h1>Policy checklist for upgrading your packages</h1>
26 <h2>About the checklist</h2>
29 The checklist below has been created to simplify the upgrading process
30 of old packages. Note, that this list is not `official.' If you have
31 doubts about a certain topic, if you need more details, or if you
32 think some other package does not comply with policy, please refer to
37 Here is how the check list works: Check out which policy version your
38 packages complies with currently. Than move upwards until the top and
39 check which of the items on the list might concern your package. If an
40 item does not give you enough details, please check out the Policy
44 <h2>The checklist</h2>
50 - Debian formally moves from the FSSTND to the FHS. This is a
51 major change, and the implications of this move are probably
53 - Only 3 digits of the Standards version need be included in
54 control files, though all four digits are still permitted.
55 - The location of the GPL has changed to
56 /usr/share/common-licenses. This may require changing the
57 copyright files to point to the correct location of the GPL and
59 - Packages that use libtool to create shared libraries must
60 include the .la files in the -dev packages.
61 - Use logrotate to rotate log files
62 - section 5.8 has been rewritten (Programs for the X Window
64 - There is now anassi=ociated menu policy, in a separate document,
65 that carries the full weight of Debian policy.
66 - The files `/var/run/utmp', `/var/log/wtmp' and
67 `/var/log/lastlog' must be installed writeable by group
68 utmp. Programs who need to modify those files must be installed
75 - Rearranged the manual to create a new Section 4, Files
76 + Section 3.3 ("Files") was moved to Section 4. The Sections
77 that were Section 4 and Section 5 were moved down to become
78 Section 5 and Section 6.
79 + What was Section 5.5 ("Log files") is now a subsection of the
80 new Section 4 ("Files"), becoming section 4.8, placed after
81 "Configuration files", moving the Section 4.8 ("Permissions
82 and owners") to Section 4.9. All subsections of the old
83 Section 5 after 5.5 were moved down to fill in the number
85 - Modified the section about changelog files to accomodate
86 upstream changelogs which were formatted as HTML/ These
87 upstream chagelog files should now be accessible as
88 /usr/doc/package/changelog.html.gz
89 + Symlinks are permissible to link the real, or upstream,
90 changelog name to the Debian mandated name.
91 - Clarified that HTML documentation should be present in some
92 package, though not necessarily the main binary package.
93 - Corrected all references to the location of the copyright
94 files. The correct location is /usr/doc/package/copyright
95 - Ratified the architecture specification strings to cater to the
101 - Updated section 3.3.5 Symbolic links:
102 + symbolic links within a toplevel directory should be relative,
103 symbolic links between toplevel directories should be absolute
104 (cf., Policy Weekly Issue#6, topic 2)
106 - Updated section 4.9 Games:
107 + manpages for games should be installed in /usr/man/man6
108 (cf., Policy Weekly Issue#6, topic 3)
111 - Updated prefix of chapter 12, Shared Libraries:
112 ldconfig must be called in the postinst script if the package
113 installs shared libraries
114 (cf., Policy Weekly Issue #6, fixes:bug#20515)
118 - Updated section 3.3.4 Scripts:
119 + /bin/sh may be any POSIX compatible shell
120 + scripts including bashisms have to specify /bin/bash as
122 + scripts which create files in world-writable directories
123 (e.g., in /tmp) should use tempfile or mktemp for creating
126 - Updated section 3.3.5 Symbolic Links:
127 + symbolic links referencing compressed files must have the same
128 file extension as the referenced file
130 - Updated section 3.3.6 Device files:
131 + /dev/tty* serial devices should be used instead of /dev/cu*
133 - Updated section 3.4.2 Writing the scripts [in /etc/init.d]:
134 + all /etc/init.d scripts have to provide the following options:
135 start, stop, restart, force-reload
136 + the reload option is optional and must never stop and restart
139 - Updated section 3.5 Cron jobs:
140 + cron jobs that need to be executed more often than daily should
141 be installed into /etc/cron.d
143 - Updated section 3.7 Menus:
144 + removed section about how to register HTML docs to `menu'
145 (the corresponding section in 4.4, Web servers and applications,
146 has been removed in policy 2.2.0.0 already, so this one was
149 - New section 3.8 Keyboard configuration:
150 + details about how the backspace and delete keys should be
153 - New section 3.9 Environment variables:
154 + no program must depend on environment variables to get a
155 reasonable default configuration
157 - New section 4.6 News system configuration:
158 + /etc/news/organization and /etc/news/server should be supported
159 by all news servers and clients
161 - Updated section 4.7 Programs for the X Windows system:
162 + programs requiring a non-free Motif library should be provided
163 as foo-smotif and foo-dmotif package
164 + if lesstif works reliably for such program, it should be linked
165 against lesstif and not against a non-free Motif library
167 - Updated section 4.9 Games:
168 + games for X Windows have to be installed in /usr/games, just as
171 2.3.0.1, 2.3.0.0 Sep 97
173 * new section `4.2 Daemons' including rules for
174 /etc/services, /etc/protocols, /etc/rpc, and /etc/inetd.conf
176 * updated section about `Configuration files':
177 packages may not touch other packages' configuration files
179 * MUAs and MTAs have to use liblockfile
183 * added section 4.1 `Architecture specification strings':
186 where <arch> is one of the following:
187 i386, alpha, arm, m68k, powerpc, sparc.
189 * detailed rules for /usr/local
193 * editor/pager policy
199 * don't install shared libraries as executable
201 * app-defaults files may not be conffiles
203 2.1.3.2, 2.1.3.1, 2.1.3.0 Mar 97
205 * two programs with different functionality must not have the
210 * "Standard for Console Messages"
212 * Libraries should be compiled with `-D_REENTRANT'
214 * Libraries should be stripped with "strip --strip-unneeded"
216 2.1.2.2, 2.1.2.1, 2.1.2.0 Nov 96
218 * Some changes WRT shared libraries
222 * No hard links in source packages
224 * Do not use dpkg-divert or update-alternatives without consultation
226 * Shared libraries must be installed stripped
230 * Upstream changelog must be installed too
247 <!-- Keep this comment at the end of the file
251 sgml-live-element-indicator: t