Bug#1127834: debhelper: dh_installsystemd does not re-create WantedBy symlinks on upgrade

Michael Biebl biebl at debian.org
Wed Mar 25 15:55:44 GMT 2026


Duplicate of https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=797108
and https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=985787

So far, my recommendation has been, that packages handle such upgrades 
manually.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=985787#10

It's a tricky problem.
Doing such upgrades automatically within i-s-h, requires that we keep 
additional state: Once you unpack the package and the new .service file 
is installed on disk, you no longer have the information what the old 
.service file contained.

We do kinda have this state in /var/lib/systemd/deb-systemd-*.
As one of the original authors of i-s-h (well, the coding was actually 
done by Michael Stapelberg): we never really liked the additional 
bookkeeping we were doing in deb-systemd-helper and wanted to get rid of 
that at some point and those deb-systemd-* tools would just become very 
thin wrappers around systemctl.

This was one of the reasons why I was reluctant to further pursue this 
in #985787.

Nowadays I'm not really active anymore in systemd/i-s-h but I thought I 
can give you some context.




Michael



On Fri, 13 Feb 2026 18:49:41 +0100 Alessandro Astone 
<alessandro.astone at canonical.com> wrote:
> Package: debhelper
> Version: 13.24.2ubuntu1
> Severity: normal
> 
> Dear Maintainer,
> 
> When enabling a service that specifies [Install] WantedBy=foo.target, a 
> symlink to this service is created at /etc/systemd/system/foo.target.wants/
> On package upgrade, if the service file was changed to [Install] 
> WantedBy=bar.target, the symlink at 
> /etc/systemd/system/foo.target.wants/ is not removed and a new symlink 
> at /etc/systemd/system/bar.target.wants/ is not created
> 
> This may have serious consequences depending on the rest of the contents 
> of the unit file (e.g. it may trigger activation of other dependencies 
> when unwanted), or in the general case users will never see the effects 
> of the update.
> 
> 
> 
> -- System Information:
> Debian Release: forky/sid
> APT prefers questing-updates
> APT policy: (1001, 'questing-updates'), (1001, 'questing-security'), 
> (1001, 'questing'), (500, 'questing-proposed'), (100, 
> 'questing-proposed'), (100, 'questing-backports')
> Architecture: amd64 (x86_64)
> Foreign Architectures: i386
> 
> Kernel: Linux 6.17.0-12-generic (SMP w/16 CPU threads; PREEMPT)
> Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_WARN, TAINT_OOT_MODULE
> Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), 
> LANGUAGE=en_US:en
> Shell: /bin/sh linked to /usr/bin/dash
> Init: systemd (via /run/systemd/system)
> LSM: AppArmor: enabled
> 
> Versions of packages debhelper depends on:
> ii autotools-dev 20240727.1
> ii debugedit 1:5.2-3
> ii dh-autoreconf 21
> ii dh-strip-nondeterminism 1.14.2-1
> ii dpkg 1.22.21ubuntu3.1
> ii dpkg-dev 1.22.21ubuntu3.1
> ii dwz 0.16-2
> ii file 1:5.46-5build1
> ii libdebhelper-perl 13.24.2ubuntu1
> ii libdpkg-perl 1.22.21ubuntu3.1
> ii man-db 2.13.1-1
> ii mawk 1.3.4.20250131-1
> ii perl 5.40.1-6build1
> ii po-debconf 1.0.21+nmu1
> 
> debhelper recommends no packages.
> 
> Versions of packages debhelper suggests:
> ii dh-make 2.202503
> 
> -- no debconf information
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature.asc
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20260325/f01d6c84/attachment.sig>


More information about the Pkg-systemd-maintainers mailing list