4 ms·
What about 'standalone' dbus, without systemd? Is it even possible anymore to build dbus without systemd as a dependency?
by Xeamek 2y ago
What about 'standalone' dbus, without systemd?
Is it even possible anymore to build dbus without systemd as a dependency?
- mort96 2y agoOne of the ideas behind dbus (and one of the ideas behind systemd! They're sorta linked in this way) is that services should be able to activate on request, like httpd but for local IPC. You could make a stand-alone dbus, but you'd have to either give up on socket activation, or re-implement half of the systemd service manager to make the dbus server responsible for spawning socket activated daemons. Both of those are totally possible and would probably be interesting for non-Linux systems.
- Xeamek 2y agoIt's also the case that there exist non-systemd based linuxes. I mean sure, the self-start is important feature, but I'd rather have a dbus with which I need to start services manually, then have no dbus at all :( Also, why the fuck can't systemd run in chroot.
- nxobject 2y agoBecause of that deep integration with systemd-boot, of course. /s (Yes, I know systemd at this point is just an umbrella brand; I'm no systemd hater.)
- mariusor 2y agoProbably because chroot does not expose some sort of low-level knob that systemd relies on to work. They had to make their own implementation of that in systemd-nspawn, have a look at that.
- Xeamek 2y agoYes, but to use systemd-nspawn, your host must be running systemd to begin with.
- nazarewk 2y agoThere is an alternative implementation called dbus-broker. Even found an issue on running it without systemd https://github.com/bus1/dbus-broker/issues/183 https://github.com/bus1/dbus-broker/issues/183
- Foxboron 2y agoA lot of Linux distributions has moved away from the dbus implementation that was merged into systemd to the `dbus-broker` project which has an optional dependency on systemd. So the answer is "yes", alternative projects exists.
- yjftsjthsd-h 2y agoI use dbus on Alpine Linux which doesn't have systemd, so empirically yes it's possible to do that.