Bug#836317: dh_systemd_start should stop the sevice on remove even if --no-start has been passed

Laurent Bigonville bigon at debian.org
Thu Sep 1 16:03:42 BST 2016

Package: debhelper
Version: 9.20160814
Severity: important
File: /usr/bin/dh_systemd_start


ATM, if --no-start is passed to dh_systemd_start, the service is never
stopped even if the package is removed/purged.

IMHO, is should be stopped in that case, I would do something like:

-        if ($dh{R_FLAG} || $dh{RESTART_AFTER_UPGRADE}) {
+        if ($dh{R_FLAG} || $dh{RESTART_AFTER_UPGRADE} || $dh{NO_START}) {
                # stop service only on remove
                $sd_autoscript->("prerm", "prerm-systemd-restart");
-        } elsif (!$dh{NO_START}) {
+        } else {
                # always stop service
                $sd_autoscript->("prerm", "prerm-systemd");

What do you think?


Laurent Bigonville

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

Kernel: Linux 4.7.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=fr_BE.UTF-8, LC_CTYPE=fr_BE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages debhelper depends on:
ii  autotools-dev            20160430.1
ii  binutils                 2.27-8
ii  dh-autoreconf            12
ii  dh-strip-nondeterminism  0.023-2
ii  dpkg                     1.18.10
ii  dpkg-dev                 1.18.10
ii  file                     1:5.28-4
ii  libdpkg-perl             1.18.10
ii  man-db                   2.7.5-1
ii  perl                     5.22.2-3
ii  po-debconf               1.0.19

debhelper recommends no packages.

Versions of packages debhelper suggests:
ii  dh-make  2.201606

-- no debconf information

More information about the Pkg-systemd-maintainers mailing list