--- Begin Message ---
- To: maintonly@bugs.debian.org
- Subject: busybox: ships sysv-init script without systemd unit
- From: bluca@debian.org
- Date: Sun, 25 Jun 2023 23:20:24 +0100
- Message-id: <befdeaaf70e11a2c845c3674f275b672.luca.boccassi@gmail.com>
Package: busybox
Severity: important
User: bluca@debian.org
Usertags: missing-systemd-service
Dear Maintainer(s),
busybox has been flagged by Lintian as shipping a sysv-init script
without a corresponding systemd unit file. The default init system in
Debian is systemd, and so far this worked because a transitional
sysv-init-to-unit generator was shipped by systemd. This is in the
process of being deprecated and will be removed by the time Trixie
ships, so the remaining packages that ship init scripts without
systemd units will stop working.
There are various advantages to using native units, for example the
legacy generator cannot tell the different between a oneshot service
and a long running daemon. Also, sanboxing and security features
become available for services. For more information, consult the
systemd documentation:
https://www.freedesktop.org/software/systemd/man/systemd.unit.html
You can find the Lintian warning here:
https://lintian.debian.org/sources/busybox
In case this is a false positive, please add a Lintian override to
silence it and then close this bug.
Thanks!
--- End Message ---
--- Begin Message ---
Version: 1:1.36.1-5
17.11.2023 04:54, Michael Biebl:
That should do:
diff --git a/debian/rules b/debian/rules
index 04018718b..54e5cc225 100755
--- a/debian/rules
+++ b/debian/rules
@@ -175,6 +175,4 @@ execute_before_dh_installinit-indep:
override_dh_installsystemd-indep:
# explicitly list all packages with .service files here
dh_installsystemd -pbusybox-syslogd --name=busybox-klogd
- dh_installsystemd -pbusybox-syslogd
-# the following does not work (see #1039142 for details):
-# dh_installsystemd -pudhcpd --no-enable --no-start
+ dh_installsystemd -pudhcpd --no-enable
This is the very first thing I tried. Dunno why it didn't work for me.
Re-tried it again and it worked.
I've also dropped After=syslog.service as syslog is socket activated by default, so this is not necessary.
Heh. busybox-syslogd knows absolutely nothing about systemd.
I just made it socket-activated, see
https://salsa.debian.org/installer-team/busybox/-/commit/5fa354a144a79cea7e2b5d33bcf43a3b35f94faa
for details :)
It is interesting that even socket-activated it needs to be enabled
still, or else it is not activated. And your suggested change above
(which omits dh_installsystemd for busybox-syslogd entirely) is more
wrong, since this way we also omit shipping the service file).
Uploaded, but forgot to close this bug report. Doing this now.
Thank you for the help!
/mjt
--- End Message ---