Your message dated Thu, 18 Jan 2001 14:47:32 -0500 with message-id <[EMAIL PROTECTED]> and subject line Bug#66912: fixed in debian-policy 3.2.1.2 has caused the attached Bug report to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what I am talking about this indicates a serious mail system misconfiguration somewhere. Please contact me immediately.) Darren Benham (administrator, Debian Bugs database) -------------------------------------- Received: (at submit) by bugs.debian.org; 8 Jul 2000 10:03:14 +0000 >From [EMAIL PROTECTED] Sat Jul 08 05:03:13 2000 Return-path: <[EMAIL PROTECTED]> Received: from adsl-63-193-116-241.dsl.snfc21.pacbell.net (kitenet.net) [63.193.116.241] (postfix) by master.debian.org with esmtp (Exim 3.12 2 (Debian)) id 13ArS4-0006Om-00; Sat, 08 Jul 2000 05:03:13 -0500 Received: by kitenet.net (Postfix, from userid 500) id 240FBBC010; Sat, 8 Jul 2000 03:03:10 -0700 (PDT) Date: Sat, 8 Jul 2000 03:03:10 -0700 From: Joey Hess <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Subject: [PROPOSAL] init script configuration variables Message-ID: <[EMAIL PROTECTED]> Mail-Followup-To: [EMAIL PROTECTED] Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii User-Agent: Mutt/1.0.1i Sender: [EMAIL PROTECTED] Delivered-To: [EMAIL PROTECTED] Package: debian-policy Severity: wishlist There has been some discussion lately on debian-deval (and a bit on -policy) about init scripts. One concern that has arisen is that it can be very annoying to have to modify an init script to change a simple value in it, and then be forced to maintain your modified init script each time you upgrade and the package changes it. /etc/default is already in use by 3 packages (2 of them in base; also, see also bug #66574 point #3), this just formalizes it. The thread also brought up the concern that an init script might start using some new parameter, while the admin has modified its /etc/default/ file, and so the parameter does not have a value set, and this causes the script to do something unexpected and/or bad. This proposal addresses that concern as well. It's late and my wording might be buggy -- patches gladly accpeted. I'm also looking for seconds, of course. (I believe this is a simple proposal that is orthagonal to some other things being thrown around in the init.d thread, so I hope discussion of this proposal can be limited to this alone and not drag the rest of that in.) --- policy.text.orig Sat Jul 8 02:21:49 2000 +++ policy.text Sat Jul 8 02:44:34 2000 @@ -1034,20 +1034,37 @@ remain but the package has been removed, as configuration files remain on the system after the package has been removed. Only when `dpkg' is executed with the `--purge' option will configuration files be removed. In particular, the init script itself is usually a configuration file (see Section 3.3.5, `Notes'), and will remain on the system if the package is removed but not purged. Therefore, you should include a `test' statement at the top of the script, like this: test -f <program-executed-later-in-script> || exit 0 + Often there are some values in the `init.d' scripts that a system + administrator will frequently want to change. While the scripts are + frequently conffiles, modifying them requires that the administrator + merge in their changes each time the package is upgraded and the + conffile changes. To ease the burden on the system administrator, + such configurable values should not be placed directly in the script. + Instead, they should be placed in a file in `/etc/default', which + typically will have the same base name as the `init.d' script. This + extra file can be sourced by the script when the script runs. It + must contain only variable settings and comments. + + To ensure that vital configurable values are always available, the + `init.d' script should set default values for each of the shell + variables it uses before sourcing the /etc/default/ file. Also, since + the `/etc/default/' file is often a conffile, the `init.d' script must + behave sensibly without failing if it is deleted. + 3.3.3. Managing the links ------------------------- A program is provided, `update-rc.d', to handle the it easier for package maintainers to arrange for the proper creation and removal of `/etc/rc<n>.d' symbolic links, or their functional equivalent if another method is being used. This may be used by maintainers in their packages' `postinst' and `postrm' scripts. You should use this script to make changes to `/etc/rc<n>.d' and @@ -1113,61 +1130,76 @@ 3.3.6. Example -------------- The `bind' DNS (nameserver) package wants to make sure that the nameserver is running in multiuser runlevels, and is properly shut down with the system. It puts a script in `/etc/init.d', naming the script appropriately `bind'. As you can see, the script interprets the argument `reload' to send the nameserver a `HUP' signal (causing it to reload its configuration); this way the user can say - `/etc/init.d/bind reload' to reload the name server. + `/etc/init.d/bind reload' to reload the name server. The script has + one configurable value, which can be used to pass parameters to + the named program at startup. #!/bin/sh # # Original version by Robert Leslie # <[EMAIL PROTECTED]>, edited by iwj and cs test -x /usr/sbin/named || exit 0 + # Source defaults file. + PARAMS='' + if [ -e /etc/default/bind ]; then + . /etc/default/bind + fi + case "$1" in start) echo -n "Starting domain name service: named" - start-stop-daemon --start --quiet --exec /usr/sbin/named + start-stop-daemon --start --quiet --exec /usr/sbin/named -- $PARAMS echo "." ;; stop) echo -n "Stopping domain name service: named" start-stop-daemon --stop --quiet \ --pidfile /var/run/named.pid --exec /usr/sbin/named echo "." ;; restart) echo -n "Restarting domain name service: named" start-stop-daemon --stop --quiet \ --pidfile /var/run/named.pid --exec /usr/sbin/named - start-stop-daemon --start --verbose --exec /usr/sbin/named + start-stop-daemon --start --verbose --exec /usr/sbin/named -- $PARAMS echo "." ;; force-reload|reload) echo -n "Reloading configuration of domain name service: named" start-stop-daemon --stop --signal 1 --quiet \ --pidfile /var/run/named.pid --exec /usr/sbin/named echo "." ;; *) echo "Usage: /etc/init.d/bind {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0 + + Complementing the above init script is a file '/etc/default/bind', + which contains configurable parameters used by the script. + + # Specified parameters to pass to named. See named(8). + # You may uncomment the following line, and edit to taste. + #PARAMS="-u nobody" Another example on which to base your `/etc/init.d' scripts is in `/etc/init.d/skeleton'. -- see shy jo, who thinks we overuse the term "orthagonal" in Debian --------------------------------------- Received: (at 66912-close) by bugs.debian.org; 18 Jan 2001 21:04:41 +0000 >From [EMAIL PROTECTED] Thu Jan 18 15:04:40 2001 Return-path: <[EMAIL PROTECTED]> Received: from murphy.debian.org [::ffff:216.234.231.6] by master.debian.org with smtp (Exim 3.12 1 (Debian)) id 14JMEZ-0000f6-00; Thu, 18 Jan 2001 15:04:39 -0600 Received: (qmail 665 invoked from network); 18 Jan 2001 19:48:41 -0000 Received: from auric.debian.org ([EMAIL PROTECTED]) by murphy.debian.org with SMTP; 18 Jan 2001 19:48:41 -0000 Received: from troup by auric.debian.org with local (Exim 3.12 1 (Debian)) id 14JL1w-0006t3-00; Thu, 18 Jan 2001 14:47:32 -0500 From: Debian Policy List <debian-policy@lists.debian.org> To: [EMAIL PROTECTED] Subject: Bug#66912: fixed in debian-policy 3.2.1.2 Message-Id: <[EMAIL PROTECTED]> Sender: James Troup <[EMAIL PROTECTED]> Date: Thu, 18 Jan 2001 14:47:32 -0500 Delivered-To: [EMAIL PROTECTED] We believe that the bug you reported is fixed in the latest version of debian-policy, which has been installed in the Debian FTP archive: debian-policy_3.2.1.2.dsc to pool/main/d/debian-policy/debian-policy_3.2.1.2.dsc debian-policy_3.2.1.2_all.deb to pool/main/d/debian-policy/debian-policy_3.2.1.2_all.deb policy.text.gz byhand policy.html.tar.gz byhand menu-policy.text.gz byhand debian-policy_3.2.1.2.tar.gz to pool/main/d/debian-policy/debian-policy_3.2.1.2.tar.gz virtual-package-names-list.text byhand mime-policy.text.gz byhand policy.ps.gz byhand policy.pdf.gz byhand libc6-migration.text byhand A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [EMAIL PROTECTED], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Debian Policy List <debian-policy@lists.debian.org> (supplier of updated debian-policy package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [EMAIL PROTECTED]) -----BEGIN PGP SIGNED MESSAGE----- Format: 1.7 Date: Thu, 18 Jan 2001 01:43:58 -0600 Source: debian-policy Binary: debian-policy Architecture: source all Version: 3.2.1.2 Distribution: unstable Urgency: low Maintainer: Debian Policy List <debian-policy@lists.debian.org> Changed-By: Manoj Srivastava <[EMAIL PROTECTED]> Description: debian-policy - Debian Policy Manual and related documents Closes: 51879 53496 53700 55048 55730 57154 59403 65765 66912 76028 Changes: debian-policy (3.2.1.2) unstable; urgency=low . * The minimal change in version number is so that people can test and root out the bugs in this document before we make everyone change to this version. * Document the Enhances relationship * Removed the restriction that one, and exactly one, person must maintain a package. closes: Bug#51879 * Fixed a typo, and added the nogroup name, in uid/gid section of policy. closes: Bug#53496 * Fixed a misstatement in policy about not needing to depend on packages in the base system (not true -- the Essential tag is significant) closes: Bug#53700 * Clarified update-rc.d stuff closes: Bug#55048 . * We have already included the material for shlibdep changes, and most of this is not relevant to policy anyway. closes: Bug#55730 * makedev--> MAKEDEV closes: Bug#57154 * Added restrictions on the files in /usr/share/doc/ closes: Bug#59403 * Changed location of a paragraph about copyright files into the section that deals with copyright files. closes: Bug#65765 * init script configuration variables closes: Bug#66912 * Clarifed language about packages sharing a conffile need to be marked as conflicting closes: Bug#76028 Files: 7873b3a6ddd5f3fc015ccb2aaae800a8 662 doc optional debian-policy_3.2.1.2.dsc 9cbc8f71b1bb280c441a9e33cc85daa5 486560 doc optional debian-policy_3.2.1.2.tar.gz 04d4f5d13f7ab04c97034c884e6425b4 542540 doc optional debian-policy_3.2.1.2_all.deb 42928cef99fee859b6442277e91eeb22 120715 byhand - policy.ps.gz 9632447891b3a57f956b52c80fd177e7 208362 byhand - policy.pdf.gz 0fbf6fcc843ed1c928f5f92b05949c43 66419 byhand - policy.html.tar.gz 203f852c33bd0d6df7b8a66977728d98 62122 byhand - policy.text.gz 3ed7aa5a489834b24bb28ff377a34aa9 10982 byhand - libc6-migration.text 1e4917c791262f0cd6de796444e51c86 7785 byhand - virtual-package-names-list.text 1b08168ee1c506d3475612bc4d3cdbbf 2180 byhand - menu-policy.text.gz 52f844690780aef153828e7325e90d91 1599 byhand - mime-policy.text.gz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.4 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE6ZqAGIbrau78kQkwRAdekAKDV1PGCUax5rPPt54LgMtGzQA5odACdH0xE RX5CFc75JTHxEfEmaPEfUPk= =+KRS -----END PGP SIGNATURE-----