Package: release.debian.org Severity: normal User: [email protected] Usertags: pu
Hi, the change I suggested for sysvinit (#694252) and got applied in sysvinit/2.88dsf-41+deb7u1 does not fix the bootchart upgrade path lenny->squeeze->wheezy, but instead renders bootchart uninstallable in stable (and sid as well): #717495. I'm attaching a suggested patch to fix this upgrade path along with the uninstallability. This will work by renaming /etc/init.d/bootchart to /etc/init.d/stop-bootchart. As a side effect, the buggy initscript will have been renamed to bootchart.dpkg-remove so that it is not considered by sysv-rc even if the new one is not yet installed. Or is there another possibility to force the new bootchart being configured before sysv-rc (without adding a Pre-Depends)? The fix has not been applied in sid, yet. If the release team considers this rename as a possible solution for wheezy, I'll first get this applied in sid. I can confirm that this patch fixes the lenny->squeeze->wheezy upgrade path if it gets applied to wheezy. The bootchart versioning is bumped in a way that requires no further changes to sysvinit to restore installability. Andreas
diff -u bootchart-0.10~svn407/debian/control bootchart-0.10~svn407/debian/control --- bootchart-0.10~svn407/debian/control +++ bootchart-0.10~svn407/debian/control @@ -12,6 +12,7 @@ Package: bootchart Architecture: all +Pre-Depends: dpkg (>= 1.15.7.2) Depends: psmisc, lsb-base (>= 3.0-6) Recommends: bootchart-view, acct Description: Boot process performance analyser diff -u bootchart-0.10~svn407/debian/rules bootchart-0.10~svn407/debian/rules --- bootchart-0.10~svn407/debian/rules +++ bootchart-0.10~svn407/debian/rules @@ -50,6 +50,7 @@ dh_installexamples dh_installman dh_installinit --no-restart-on-upgrade --no-start \ + --init-script=stop-bootchart \ --update-rcd-params="start 99 1 2 3 4 5 ." dh_link dh_compress diff -u bootchart-0.10~svn407/debian/changelog bootchart-0.10~svn407/debian/changelog --- bootchart-0.10~svn407/debian/changelog +++ bootchart-0.10~svn407/debian/changelog @@ -1,3 +1,29 @@ +bootchart (0.10~svn407-4.1~deb7u1) wheezy; urgency=low + + * Build for wheezy. + + -- Andreas Beckmann <[email protected]> Sat, 20 Jul 2013 20:21:17 +0200 + +bootchart (0.10~svn407-4.1) unstable; urgency=low + + * Non-maintainer upload. + * Fix the upgrade path lenny (bootchart 0.10~svn407-3) => squeeze (bootchart + 0.10~svn407-3 from lenny because bootchart was not included in squeeze) => + wheezy. The initscript from 0.10~svn407-3 prevents migration to dependency + based boot sequencing causing a sysv-rc upgrade failure. Since it is not + possible to express a dependency/conflict like "either bootchart is purged + or fully configured", it is possible for an updated bootchart being + unpacked but unconfigured, leaving the broken initscript still in place at + the time sysv-rc tries to switch to dependency-based sequencing. + Therefore rename the initscript from "bootchart" to "stop-bootchart" which + will move the buggy script out of the way early enough to make sysv-rc + succeed. Use Pre-Depends: dpkg (>= 1.15.7.2) and dpkg-maintscript-helper + for the renaming. (Closes: #717495) + * Bump Debian revision to -4.1 to restore installability after recent + initscripts having Breaks: bootchart (<< 0.10~svn407-4). + + -- Andreas Beckmann <[email protected]> Sat, 20 Jul 2013 20:21:12 +0200 + bootchart (0.10~svn407-3.3) unstable; urgency=low * Non-maintainer upload. diff -u bootchart-0.10~svn407/debian/bootchart.init bootchart-0.10~svn407/debian/bootchart.init --- bootchart-0.10~svn407/debian/bootchart.init +++ bootchart-0.10~svn407/debian/bootchart.init @@ -17,7 +17,7 @@ PATH=/sbin:/usr/sbin:/bin:/usr/bin NAME=bootchartd DAEMON=/sbin/$NAME -SCRIPTNAME=/etc/init.d/bootchart +SCRIPTNAME=/etc/init.d/stop-bootchart # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 diff -u bootchart-0.10~svn407/debian/bootchart.postrm bootchart-0.10~svn407/debian/bootchart.postrm --- bootchart-0.10~svn407/debian/bootchart.postrm +++ bootchart-0.10~svn407/debian/bootchart.postrm @@ -5,6 +5,8 @@ set -e +dpkg-maintscript-helper mv_conffile /etc/init.d/bootchart /etc/init.d/stop-bootchart 0.10~svn407-4~ bootchart -- "$@" + case "$1" in purge) rm -f /var/log/bootchart.tgz only in patch2: unchanged: --- bootchart-0.10~svn407.orig/debian/bootchart.preinst +++ bootchart-0.10~svn407/debian/bootchart.preinst @@ -0,0 +1,6 @@ +#!/bin/sh +set -e + +dpkg-maintscript-helper mv_conffile /etc/init.d/bootchart /etc/init.d/stop-bootchart 0.10~svn407-4~ bootchart -- "$@" + +#DEBHELPER# only in patch2: unchanged: --- bootchart-0.10~svn407.orig/debian/bootchart.postinst +++ bootchart-0.10~svn407/debian/bootchart.postinst @@ -0,0 +1,6 @@ +#!/bin/sh +set -e + +dpkg-maintscript-helper mv_conffile /etc/init.d/bootchart /etc/init.d/stop-bootchart 0.10~svn407-4~ bootchart -- "$@" + +#DEBHELPER#

