/usr/bin/dh_systemd_start: dh_systemd_start needs to start .socket before .service

Niels Thykier niels at thykier.net
Mon Apr 10 15:07:00 BST 2017


Control: reassign -1 init-system-helpers
Control: retitle -1 deb-systemd-invoke: Run systemctl once with all args

On Thu, 15 Dec 2016 01:38:18 +0100 Matthias Urlichs
<matthias at urlichs.de> wrote:
> Package: debhelper
> Version: 10.2.2
> Severity: normal
> File: /usr/bin/dh_systemd_start
> 
> When I have both a service and a socket unit file, dh_systemd_start runs
> the service first.
> 
> This is bad because the socket will refuse to run when the service has been
> started, while the service's configuration probably depends on the socket.
> 
>         deb-systemd-invoke $_dh_action knxd.service knxd.socket >/dev/null || true
> 
> Please re-order to act on the socket first.
> 
> [...]

Hi,

I was on #d-systemd today and we concluded that:

 * This was better solved in deb-systemd-invoke itself, which should
   call / exec systemd with all the arguments.  This would make systemd
   figure out the ordering itself.

 * The knxd.service should have a require on the knxd.socket if the
   .socket must be started before the .service.  Otherwise it will cause
   issues/confusion if an enduser starts the services manually.

I cannot find a package providing knxd.service (apt-file search was
silent), so I have not cloned this bug for the latter issue.  @Matthias:
I will assume you will handle that.

Thanks,
~Niels



More information about the Pkg-systemd-maintainers mailing list