On Tue, Dec 24, 2024 at 08:19:00PM +0100, Cyril Brulebois wrote:
> With cdebconf udebs reverted to their testing version (changing only that,
> feeding them via localudebs after deb-reversion), the problem goes away.

Oops, very sorry about that!  The test that Gioele added for whether
debconf is installed looked correct, but on closer inspection I found
that cdebconf installs /usr/share/debconf/frontend as a symlink to
/usr/lib/cdebconf/debconf.  (I'd like to remove that as I don't think it
really makes a lot of sense, but there's a reference to it in
installer/build/Makefile right now.)

This patch makes things work again.  I'll upload this, and the
equivalent in debconf.

diff --git a/debian/changelog b/debian/changelog
index df5661a5..ef9d7720 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+cdebconf (0.276) UNRELEASED; urgency=medium
+
+  * Fix detection of whether debconf is installed (closes: #1091366).
+
+ -- Colin Watson <cjwat...@debian.org>  Wed, 25 Dec 2024 23:26:21 +0000
+
 cdebconf (0.275) unstable; urgency=medium
 
   [ Gioele Barabucci ]
diff --git a/src/client/confmodule.in b/src/client/confmodule.in
index 3efc6a5a..26ef5a1a 100644
--- a/src/client/confmodule.in
+++ b/src/client/confmodule.in
@@ -9,8 +9,11 @@ _DEBCONF_IMPL=
 if [ "${DEBCONF_USE_CDEBCONF:-}" ]; then
        # Use cdebconf if explicitly requested.
        _DEBCONF_IMPL=cdebconf
-elif [ -x /usr/share/debconf/frontend ]; then
-       # Fall back to debconf, but only if installed.
+elif [ -x /usr/share/debconf/frontend ] && \
+     [ ! -h /usr/share/debconf/frontend ]; then
+       # Fall back to debconf, but only if installed.  (cdebconf currently
+       # installs /usr/share/debconf/frontend as a symlink to
+       # /usr/lib/cdebconf/debconf.)
        _DEBCONF_IMPL=debconf
 else
        # Last resort: use cdebconf although not explicitly requested.

-- 
Colin Watson (he/him)                              [cjwat...@debian.org]

Reply via email to