Hi Job,
Hi, I am the original reporter Andreas is talking about. I'm
going to admit that I have no idea on how to use dbus activation. I only know how to start
a service at boot via shell scripts.
I understand if you won't support non-systemd init systems like sysvinit. I
haven't maintained daemons, but from the looks of it, maintaining support for multiple
inits is surely hard. However users who don't use systemd as their init, like Devuan
users, Gentoo users, and Debian users who replaced systemd with sysvinit/openrc would
appreciate it if upstream decided to support multiple inits. Gentoo users have a community
which maintains their own iwd init script for openrc. Devuan users however, have to
workaround this problem by converting the iwd systemd service file to a sysvinit script,
and update-rc.d as root. If I haven't known about this, I would still be using
wpa_supplicant by now. iwd actually made my wifi connection more reliable. When I was
using wpa_supplicant, I had to reboot my system everytime the connection drops. With iwd,
I only have to restart iwd and my connection is back. I figured that I should contribute
back to the community by adding sysvinit support.
So whatever decision you guys make, I will respect it. As you said, we can ship a
modified version instead for non-systemd users. I am already preparing a fork of the iwd
package for Devuan users[1]. The patch is ugly, but it works.
so about 16 something years ago (long before systemd), I tried to provide init scripts for
all the distributions. It was a disaster since all of them are a bit different. So I
decided to not do that anymore and the distro package maintainers have to do that job as
downstream. It makes no sense that upstream carries the work of downstream anyway. It is
just the wrong direction.
With systemd unit files there was a unified way across distribution to describe the
daemon/service and so I started to include these. So unit files etc. can stay upstream
because they are common across all distribution. Any init scripts can’t be accepted.
D-Bus activation for system level daemons outside of systemd is something I found always a
bit hackish to begin with and thus it is not something that is worth while supporting. iwd
is designed to be start and it can linger around until WiFi hardware is found since it is
truly hotplug capable.
In summary, if distributions need a sysvinit or openrc integration, then it is the job of
the distro package maintainer to provide that.
Regards
Marcel