[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#717498: pu: package bootchart/0.10~svn407-4.1~deb7u1



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
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 <anbe@debian.org>  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 <anbe@debian.org>  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#

Reply to: