[Debconf-devel] Bug#989567: debconf.postinst is completely unnecessary unless upgrading from pre-etch

Helmut Grohne helmut at subdivi.de
Mon Jun 7 19:23:17 BST 2021


Package: debconf
Version: 1.5.76
Severity: minor
Tags: patch

$reasons got me looking into debconf.postinst. I read it and figured
that it would only do non-trivial things when upgrading from a release
that predates etch (i.e. old-old-old-old-old-old-stable). Nothing in
there is useful for current upgrades. Can we drop it entirely?

Helmut
-------------- next part --------------
diff --minimal -Nru debconf-1.5.76/debian/changelog debconf-1.5.76+nmu1/debian/changelog
--- debconf-1.5.76/debian/changelog	2021-03-20 14:14:50.000000000 +0100
+++ debconf-1.5.76+nmu1/debian/changelog	2021-06-07 20:02:34.000000000 +0200
@@ -1,3 +1,11 @@
+debconf (1.5.76+nmu1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Delete debconf postinst script as it only handles upgrades from pre-etch.
+    (Closes: #-1)
+
+ -- Helmut Grohne <helmut at subdivi.de>  Mon, 07 Jun 2021 20:02:34 +0200
+
 debconf (1.5.76) unstable; urgency=medium
 
   [ Colin Watson ]
diff --minimal -Nru debconf-1.5.76/debian/postinst debconf-1.5.76+nmu1/debian/postinst
--- debconf-1.5.76/debian/postinst	2021-03-20 14:14:50.000000000 +0100
+++ debconf-1.5.76+nmu1/debian/postinst	1970-01-01 01:00:00.000000000 +0100
@@ -1,72 +0,0 @@
-#!/bin/sh
-set -e
-
-if [ -z "$DEBIAN_HAS_FRONTEND" ] && [ "$1" = configure ] && [ -n "$2" ] && \
-   dpkg --compare-versions "$2" lt 1.1.0; then
-	# Transition from old database format before debconf starts up.
-	if dpkg --compare-versions "$2" lt 0.9.00; then
-		if [ -e /var/lib/debconf/config.db -o -e /var/lib/debconf/templates.db ]; then
-			/usr/share/debconf/transition_db.pl
-		fi
-		# This package used to add itself to apt.conf. That could result in
-		# a zero-byte file, since it no longer does. Detect that and remove
-		# the file.
-		if [ ! -s /etc/apt/apt.conf ]; then
-			rm -f /etc/apt/apt.conf
-		fi
-	fi
-	
-	# Fix up broken db's before debconf starts up.
-	if dpkg --compare-versions "$2" lt 1.0.25; then
-		/usr/share/debconf/fix_db.pl
-	fi
-	
-	# configdb splits into passworded and non-passworded parts, before debconf
-	# starts up. Do so only if the debconf.conf has the new databases in it.
-	if dpkg --compare-versions "$2" lt 1.1.0 &&
-	   perl -e 'use Debconf::Db; Debconf::Db->load; for (@ARGV) { exit 1 unless
-	            Debconf::DbDriver->driver($_) }' config passwords; then
-	   	# copies in only the passwords, of course
-	   	debconf-copydb config passwords
-		# makes a new config with only non-passwords in it
-		debconf-copydb config newconfig \
-			-c Name:newconfig \
-			-c Driver:File \
-			-c Reject-Type:password \
-			-c Filename:/var/cache/debconf/newconfig.dat \
-			-c Mode:644
-		mv -f /var/cache/debconf/newconfig.dat /var/cache/debconf/config.dat
-	fi
-fi
-
-. /usr/share/debconf/confmodule
-
-if [ "$1" = configure ] && [ -n "$2" ] && dpkg --compare-versions "$2" lt 1.3.11; then
-	# Remove old debconf database, and associated cruft in /var/lib/debconf.
-	# In fact, the whole directory can go! Earlier versions of debconf in the
-	# 0.9.x series kept it just in case, so make sure to delete it on upgrade
-	# from any of those versions, or even older versions.
-	if dpkg --compare-versions "$2" lt 0.9.50; then
-		rm -rf /var/lib/debconf
-	fi
-
-	# Kill db cruft.
-	if dpkg --compare-versions "$2" lt 0.9.73; then
-		# It may not be present, if upgrading from long ago.
-		db_unregister foo/bar || true
-		db_unregister debconf/switch-to-slang || true
-	fi
-	if dpkg --compare-versions "$2" lt 1.3.11; then
-		db_unregister debconf/showold || true
-	fi
-
-	# The Text frontend became the Readline frontend.
-	if dpkg --compare-versions "$2" lt 1.0.10; then
-		db_get debconf/frontend || true
-		if [ "$RET" = Text ]; then
-			db_set debconf/frontend Readline || true
-		fi
-	fi
-fi
-
-#DEBHELPER#


More information about the Debconf-devel mailing list