Package: debconf Version: 1.5.59 Severity: normal The "owner" field for a "Multi-Arch: same" package differs depending on which maintainer script sets it.
As an example, say we have foo_1-1_amd64.deb that is "Multi-Arch: same", with a template "foo/bar". When set by config, "foo/bar" will owned by "foo". However, when set by postinst, "foo/bar" will be owned by "foo:amd64". If set by both, the question will be owned by both "foo" and "foo:amd64". One issue with this is that postrm will generally call db_purge during purge. db_purge will only purge questions owned by "foo:amd64" - any questions owned by "foo" (i.e., those set by config) will remain. An example of a package that is impacted by this in the archive is libhesiod0. I'll illustrate the issue below using this package. ## At start there are no questions owned by libhesiod0 or libhesiod0:amd64: dannf@xps13:~$ sudo debconf-show libhesiod0 dannf@xps13:~$ sudo debconf-show libhesiod0:amd64 ## Install it.. dannf@xps13:~$ sudo apt install libhesiod0 Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: libhesiod0 0 upgraded, 1 newly installed, 0 to remove and 17 not upgraded. Need to get 26.5 kB of archives. After this operation, 98.3 kB of additional disk space will be used. Get:1 http://mirror.keystealth.org/debian sid/main amd64 libhesiod0 amd64 3.2.1-3 [26.5 kB] Fetched 26.5 kB in 0s (28.8 kB/s) ## Here debconf questions are set by config, and will be owned by libhesiod0 Preconfiguring packages ... Selecting previously unselected package libhesiod0:amd64. (Reading database ... 292594 files and directories currently installed.) Preparing to unpack .../libhesiod0_3.2.1-3_amd64.deb ... Unpacking libhesiod0:amd64 (3.2.1-3) ... ## Here debconf questions are set by postinst, owned by libhesiod0:amd64 Setting up libhesiod0:amd64 (3.2.1-3) ... Processing triggers for man-db (2.7.6.1-2) ... ## Notice that these questions are owned by both libhesiod0 & libhesid0:amd64 dannf@xps13:~$ sudo debconf-show libhesiod0 hesiod/classes: IN,HS hesiod/lhs: .ns hesiod/rhs: .buildd dannf@xps13:~$ sudo debconf-show libhesiod0:amd64 hesiod/lhs: .ns hesiod/rhs: .buildd hesiod/classes: IN,HS ## Now purge the package (postrm calls db_purge) dannf@xps13:~$ sudo apt remove --purge libhesiod0 Reading package lists... Done Building dependency tree Reading state information... Done The following packages will be REMOVED: libhesiod0* 0 upgraded, 0 newly installed, 1 to remove and 17 not upgraded. After this operation, 98.3 kB disk space will be freed. Do you want to continue? [Y/n] (Reading database ... 292603 files and directories currently installed.) Removing libhesiod0:amd64 (3.2.1-3) ... Processing triggers for man-db (2.7.6.1-2) ... (Reading database ... 292594 files and directories currently installed.) Purging configuration files for libhesiod0:amd64 (3.2.1-3) ... ## Purge dropped libhesiod0:amd64's ownership of its questions: dannf@xps13:~$ sudo debconf-show libhesiod0:amd64 dannf@xps13:~$ ## ...but libhesiod0 retains ownership, and the questions persist after purge dannf@xps13:~$ sudo debconf-show libhesiod0 hesiod/rhs: .buildd hesiod/classes: IN,HS hesiod/lhs: .ns -- System Information: Debian Release: stretch/sid APT prefers unstable APT policy: (500, 'unstable'), (500, 'testing'), (1, 'experimental') Architecture: amd64 (x86_64) Kernel: Linux 4.9.0-rc7-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages debconf depends on: ii perl-base 5.24.1~rc4-1 Versions of packages debconf recommends: ii apt-utils 1.4~beta2 ii debconf-i18n 1.5.59 Versions of packages debconf suggests: ii debconf-doc 1.5.59 pn debconf-utils <none> ii libgtk2-perl 2:1.2499-1 pn libnet-ldap-perl <none> pn libqtcore4-perl <none> pn libqtgui4-perl <none> pn libterm-readline-gnu-perl <none> ii perl 5.24.1~rc4-1 ii whiptail 0.52.19-1 -- debconf information: debconf/frontend: Dialog debconf-apt-progress/preparing: debconf-apt-progress/title: debconf-apt-progress/info: debconf-apt-progress/media-change: debconf/priority: high