Bug#1014115: uninstall does not properly remove enablement symlinks

Michael Biebl biebl at debian.org
Thu Jun 30 13:26:09 BST 2022


Package: systemd-homed
Version: 251.2-7
Severity: important

(might be even RC, not properly cleaning up state on remove)

# find systemd -name *home* -o -name *userdbd*

# apt install systemd-homed
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  systemd-userdbd
The following NEW packages will be installed:
  systemd-homed systemd-userdbd
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 621 kB of archives.
After this operation, 1433 kB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://ftp.debian.org/debian sid/main amd64 systemd-userdbd amd64 251.2-7 [150 kB]
Get:2 http://ftp.debian.org/debian sid/main amd64 systemd-homed amd64 251.2-7 [471 kB]
Fetched 621 kB in 0s (32.4 MB/s)
Retrieving bug reports... Done
Parsing Found/Fixed information... Done
Selecting previously unselected package systemd-userdbd.
(Reading database ... 498739 files and directories currently installed.)
Preparing to unpack .../systemd-userdbd_251.2-7_amd64.deb ...
Unpacking systemd-userdbd (251.2-7) ...
Selecting previously unselected package systemd-homed.
Preparing to unpack .../systemd-homed_251.2-7_amd64.deb ...
Unpacking systemd-homed (251.2-7) ...
Setting up systemd-userdbd (251.2-7) ...
Created symlink /etc/systemd/system/sockets.target.wants/systemd-userdbd.socket -> /lib/systemd/system/systemd-userdbd.socket.
Setting up systemd-homed (251.2-7) ...
Created symlink /etc/systemd/system/systemd-homed.service.wants/systemd-homed-activate.service -> /lib/systemd/system/systemd-homed-activate.service.
Created symlink /etc/systemd/system/dbus-org.freedesktop.home1.service -> /lib/systemd/system/systemd-homed.service.
Created symlink /etc/systemd/system/multi-user.target.wants/systemd-homed.service -> /lib/systemd/system/systemd-
homed.service.
Deep recursion on subroutine "main::get_link_closure" at /usr/bin/deb-systemd-helper line 253, <$fh> line 23.
/usr/bin/deb-systemd-helper: error: unable to read /lib/systemd/system/systemd-homed.service
Deep recursion on subroutine "main::get_link_closure" at /usr/bin/deb-systemd-helper line 253, <$fh> line 41.
/usr/bin/deb-systemd-helper: error: unable to read /lib/systemd/system/systemd-homed-activate.service
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for dbus (1.14.0-1) ...
[master 8d9b0a5] committing changes in /etc made by "apt install systemd-homed"
 Author: Michael Biebl <biebl at debian.org>
 11 files changed, 33 insertions(+), 3 deletions(-)
 create mode 100644 systemd/homed.conf
 create mode 120000 systemd/system/dbus-org.freedesktop.home1.service
 create mode 120000 systemd/system/multi-user.target.wants/systemd-homed.service
 create mode 120000 systemd/system/sockets.target.wants/systemd-userdbd.socket
 create mode 120000 systemd/system/systemd-homed.service.wants/systemd-homed-activate.service


→ Issue number one: Deep recursion on subroutine "main::get_link_closure" at /usr/bin/deb-systemd-helper line 253, <$fh> line 23.


Now purging the package again:

# apt purge systemd-homed
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be REMOVED:
  systemd-homed*
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 1172 kB disk space will be freed.
Do you want to continue? [Y/n]
(Reading database ... 498771 files and directories currently installed.)
Removing systemd-homed (251.2-7) ...
Processing triggers for dbus (1.14.0-1) ...
Processing triggers for man-db (2.10.2-1) ...
(Reading database ... 498749 files and directories currently installed.)
Purging configuration files for systemd-homed (251.2-7) ...
[master 9e93901] committing changes in /etc made by "apt purge systemd-homed"
 Author: Michael Biebl <biebl at debian.org>
 7 files changed, 3 insertions(+), 28 deletions(-)
 delete mode 100644 systemd/homed.conf

# find systemd -name *home*
systemd/system/dbus-org.freedesktop.home1.service
systemd/system/multi-user.target.wants/systemd-homed.service
systemd/system/systemd-homed.service.wants
systemd/system/systemd-homed.service.wants/systemd-homed-activate.service


→ Issue number two: Looks like none of the enablement symlinks has been removed.


This might be a bug in i-s-h, but filing against systemd-homed for
now.

systemd-homed.service:
[Install]
WantedBy=multi-user.target
Alias=dbus-org.freedesktop.home1.service
Also=systemd-homed-activate.service systemd-userdbd.service

systemd-homed-activate.service:
[Install]
WantedBy=systemd-homed.service
Also=systemd-homed.service

→ we have a circular dependency here, maybe deb-systemd-helper get's
confused by that


systemd-userdbd.service:
[Install]
Also=systemd-userdbd.socket

systemd-userdbd.socket:
[Install]
WantedBy=sockets.target

→ Another indirection



@bluca, @fsateler: Any ideas?





-- System Information:
Debian Release: bookworm/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (200, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

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

Versions of packages systemd-homed depends on:
ii  libblkid1          2.38-4
ii  libc6              2.33-7
ii  libcap2            1:2.44-1
ii  libfdisk1          2.38-4
ii  libpam-runtime     1.4.0-13
ii  libpam0g           1.4.0-13
ii  libssl3            3.0.4-2
ii  libsystemd-shared  251.2-7
ii  systemd            251.2-7
pn  systemd-userdbd    <none>

systemd-homed recommends no packages.

systemd-homed suggests no packages.


More information about the Pkg-systemd-maintainers mailing list