Hello, I'm aware it's probably too late, but I feel I need to try. Sorry for the lack of reaction; I'm outstandingly busy lately. :(
On Fri, Apr 05, 2013 at 06:50:24AM +0200, Jordi Mallach wrote: > The rough story is: alsa-base, until +1, was doing Weird Shit™ with its > handling of /etc/default/alsa, which wasn't even a conffile. When I got > rid of all of that in +2, I accidentally got the new conffile renamed to > /e/d/alsa-base due to using debhelper to install it. The script that > sources it wasn't updated to look in the new location, and of course users > were left with the old "conffile" and the new one in the filesystem. > > The updated package tries to fix this for people upgrading from squeeze > and also for current testing users which already have both files. > > Additionally, it marks the package as MA: foreign. SVN also had two old > commits that add a missing pre-dependency on dpkg, and remove redundant > dirs from debian/alsa-base.dirs. If these two old commits are > unacceptable, I'll revert and rebuild, but I've checked that the package > contents are identical. In order to make this easier, I've reverted the MA and debhelper change. The only remaining changes are the Pre-Depends and the conffile dance. I haven't had time to explore mbiebl's suggestion of going the other route. I'm happy to accept a patch which should be fairly easy to write based on what I'm attaching now. Needs to happen rsn though, if at all. -- Jordi Mallach Pérez -- Debian developer http://www.debian.org/ [email protected] [email protected] http://www.sindominio.net/ GnuPG public key information available at http://oskuro.net/
diff -Nru alsa-base-1.0.25+2+nmu2/debian/alsa alsa-base-1.0.25+3/debian/alsa
--- alsa-base-1.0.25+2+nmu2/debian/alsa 2012-05-20 01:20:03.000000000 +0200
+++ alsa-base-1.0.25+3/debian/alsa 2013-04-01 07:05:11.000000000 +0200
@@ -15,10 +15,10 @@
MYNAME=/usr/sbin/alsa
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
-# Default values of variables in /etc/default/alsa
+# Default values of variables in /etc/default/alsa-base
force_unload_modules_before_suspend=""
-[ -f /etc/default/alsa ] && . /etc/default/alsa
+[ -f /etc/default/alsa-base ] && . /etc/default/alsa-base
# $* MESSAGE
warn() { echo "${MYNAME}: Warning: $* " >&2 ; }
diff -Nru alsa-base-1.0.25+2+nmu2/debian/alsa-base.postrm alsa-base-1.0.25+3/debian/alsa-base.postrm
--- alsa-base-1.0.25+2+nmu2/debian/alsa-base.postrm 2012-05-20 14:23:19.000000000 +0200
+++ alsa-base-1.0.25+3/debian/alsa-base.postrm 2013-04-04 06:50:44.000000000 +0200
@@ -5,6 +5,9 @@
if [ "$1" = "purge" ]; then
# Remove run time files
rm -rf /var/run/alsa
+
+ # Remove stray file
+ rm -f /etc/default/alsa
fi
#DEBHELPER#
diff -Nru alsa-base-1.0.25+2+nmu2/debian/alsa-base.preinst alsa-base-1.0.25+3/debian/alsa-base.preinst
--- alsa-base-1.0.25+2+nmu2/debian/alsa-base.preinst 2012-07-08 23:49:56.000000000 +0200
+++ alsa-base-1.0.25+3/debian/alsa-base.preinst 2013-04-19 09:53:15.000000000 +0200
@@ -12,4 +12,28 @@
[ -d /etc/apm ] && rmdir --ignore-fail-on-non-empty /etc/apm
fi
+case "$1" in
+ install|upgrade)
+ # Handle upgrade of /etc/default/alsa → /etc/default/alsa-base
+ if [ -f /etc/default/alsa ]; then
+ OLDMD5SUM="b0f9824c2d4288aa89df3777668f0d99"
+ CURMD5SUM=$(md5sum /etc/default/alsa | sed -e 's/ .*//')
+ # Upgrades prior to the file rename
+ if dpkg --compare-versions "$2" lt "1.0.25+2"; then
+ if [ "$OLDMD5SUM" = "$CURMD5SUM" ]; then
+ rm -f /etc/default/alsa
+ # Don't overwrite the file if it already existed
+ elif [ ! -f /etc/default/alsa-base ]; then
+ mv /etc/default/alsa /etc/default/alsa-base
+ fi
+ # Upgrades from current testing: both files exist
+ # If the old file was modified, just leave it there
+ elif dpkg --compare-versions "$2" lt "1.0.25+3"; then
+ if [ "$OLDMD5SUM" = "$CURMD5SUM" ]; then
+ rm -f /etc/default/alsa
+ fi
+ fi
+ fi
+esac
+
#DEBHELPER#
diff -Nru alsa-base-1.0.25+2+nmu2/debian/changelog alsa-base-1.0.25+3/debian/changelog
--- alsa-base-1.0.25+2+nmu2/debian/changelog 2012-08-26 17:57:22.000000000 +0200
+++ alsa-base-1.0.25+3/debian/changelog 2013-04-19 09:51:08.000000000 +0200
@@ -1,3 +1,20 @@
+alsa-base (1.0.25+3) unstable; urgency=low
+
+ * Add Pre-Depends dpkg (>= 1.15.7.2~), for dpkg-maintscript-helper.
+ * In 1.0.25+2, we started using dh_installinit to install the
+ default file as /etc/default/alsa-base, and make it a proper conffile.
+ However, the alsa script still expected to read defaults from
+ /etc/default/alsa. Update it to use the new path (closes: #680914).
+ Additionally, make sure that if we're upgrading from versions prior to
+ this change, and a /etc/default/alsa file already exists and its
+ md5sum isn't known, it'll get renamed to alsa-base in order to
+ preserve user changes.
+ For testing users, the old file will be removed if it was pristine,
+ and otherwise it'll stay unused in the filesystem.
+ * Try to remove /etc/default/alsa on purge.
+
+ -- Jordi Mallach <[email protected]> Thu, 04 Apr 2013 23:28:24 -0500
+
alsa-base (1.0.25+2+nmu2) unstable; urgency=high
* Non-maintainer upload.
diff -Nru alsa-base-1.0.25+2+nmu2/debian/control alsa-base-1.0.25+3/debian/control
--- alsa-base-1.0.25+2+nmu2/debian/control 2012-05-20 13:50:37.000000000 +0200
+++ alsa-base-1.0.25+3/debian/control 2013-04-19 09:51:20.000000000 +0200
@@ -12,6 +12,7 @@
Package: alsa-base
Architecture: all
Provides: alsa
+Pre-Depends: dpkg (>= 1.15.7.2~)
Depends: ${misc:Depends}, kmod, procps, udev
Recommends: alsa-utils
Suggests: alsa-oss, oss-compat
signature.asc
Description: Digital signature

