[Debian GNUstep maintainers] Bug#1094636: dpkg conffile modified warnings on upgrades

Michael Biebl biebl at debian.org
Wed Jan 29 13:21:30 GMT 2025


Package: gnustep-base-runtime
Version: 1.30.0-11
Severity: important

Hi,

during todays upgrade, I got the following dpkg prompt:

Setting up gnustep-base-runtime (1.30.0-11) ...

Configuration file '/etc/GNUstep/gdomap_probes'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** gdomap_probes (Y/I/N/O/D/Z) [default=N] ?


Afaics this is due to
https://salsa.debian.org/gnustep-team/gnustep-base/-/commit/031d50746014b4699f628cd9c8f15b1e827a003b

This is unfortunate, as this will affect every user on upgrades, whether
they have modified /etc/GNUstep/gdomap_probes or not.

I'm not a aware of a good way to turn a postinst generated configuration
file into a proper conffile, but one thing you could do is store a hash
(or a list of known hashes) of the postinst generated configuration file
and remove /etc/GNUstep/gdomap_probes in *preinst* if it has not been
modified by the user.

# md5sum /etc/GNUstep/gdomap_probes
0350e9dc3fb96577e6cc2d8873f2fde5  /etc/GNUstep/gdomap_probes

This is the hash from a bookworm system.


As was suggested on #debian-devel, if you want to be extra cautious, you
can delay the removal of the old, generated /etc/GNUstep/gdomap_probes
file.
So, preinst would simply rename the file (so it doesn't clash with the
new dpkg tracked conffile) and in postinst you actually remove that file
on a successful upgrade.  If the upgrade has failed (abort-upgrade case
[1]), you restore the old file.

Regards,
Michael

[1] https://wiki.debian.org/MaintainerScripts



-- System Information:
Debian Release: trixie/sid
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.12.11-amd64 (SMP w/16 CPU threads; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE not set
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages gnustep-base-runtime depends on:
ii  gnustep-base-common  1.30.0-11
ii  init-system-helpers  1.68
ii  libc6                2.40-6
ii  libgcc-s1            14.2.0-15
ii  libgnustep-base1.30  1.30.0-11
ii  libobjc4             14.2.0-15

gnustep-base-runtime recommends no packages.

gnustep-base-runtime suggests no packages.

-- Configuration Files:
/etc/GNUstep/gdomap_probes changed [not included]

-- no debconf information



More information about the pkg-GNUstep-maintainers mailing list