On Mon, Apr 03, 2006 at 12:38:12AM +0300, Lars Wirzenius wrote: > Current policy states in section 9.3.3.2 ("Running initscripts") the > following: "The use of invoke-rc.d to invoke the /etc/init.d/* > initscripts is strongly recommended[51], instead of calling them > directly." > Footnote 51 further says: "In the future, the use of invoke-rc.d to > invoke initscripts shall be made mandatory. Maintainers are advised to > switch to invoke-rc.d as soon as possible." > I propose that the future has arrived. > I ran the attached script on all binary packages in sid/main/i386, and > it reported 134 packages that I then analyzed manually. There were only > two false positives (both mentioned how to run their init.d script in a > message to the user, but didn't run it themselves). All other reported > packages were true positives. I have attached the list as well. > Almost all of the packages in the list are either dict-* packages > (seemingly from the same template), have code from an old debhelper > version (so a rebuild might suffice), or are otherwise pretty easy to > fix. Even though the number of packages are fairly large, it is my > opinion that it should be possible to keep the transition period quite > short, weeks at most, and I'm willing to put some time into it. > See also bug #353659 against lintian to add a check for this. > I would like to see this policy change happen in time for all packages > to be updated in etch. This would mean that sysadmins can, finally, rely > on policy-rc.d working reliably. Also it means that it would be easier > to build chroots, and not have to worry about services and daemons being > started inside them unnecessarily. > I realize that my script doesn't find all problematic packages. It is > meant as a quick estimate. For proper testing, I have recently > implemented changes into piuparts that should make it possible to find > all problematic packages: in my development version /proc now gets > mounted (ergo, start-stop-daemon works), and after packages have been > installed, lsof checks that no processes run inside the chroot. This > will, I hope, catch packages that don't use invoke-rc.d when they > should. > Are there any objections to this proposed change? (If there are none > within a few days, I'll file the appropriate bug against debian-policy.) No objections, I think this is a good idea. Cheers, -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. vorlon@debian.org http://www.debian.org/
Attachment:
signature.asc
Description: Digital signature