Bug#934491: libelogind0: failing to switch from systemd to sysvinit-core/elogind results in libsystemd.so.0 disappearing

Simon McVittie smcv at debian.org
Tue Aug 13 21:10:12 BST 2019


On Tue, 13 Aug 2019 at 19:58:09 +0100, Mark Hindley wrote:
> systemd depends on a specific pacakged version of libsystemd0 (currently 241-7
> in sid) whilst all other packages at most depend on a particular src version
> (eg. >= 213).

Ah, that's a major constraint on finding a correct solution here. systemd
is from the same source package as libsystemd0, so I think it's
reasonable for them to be in lockstep: systemd executables could well be
using private symbols or relying on specific behaviour beyond what the
stable public API guarantees. (dbus-daemon and libdbus have a similar
relationship.)

> I would also add that it surprises me that apt requires symbols from
> libsystemd.so.

libapt-pkg uses sd-bus, systemd's implementation of D-Bus (the same one
provided by libelogind), to tell systemd-logind (or elogind) not to
shut down while an apt frontend is still installing packages.

If apt wants to talk to D-Bus, sd-bus is certainly not a terrible choice:
newer D-Bus implementations like GDBus and sd-bus have had the opportunity
to learn from libdbus' mistakes.

    smcv




More information about the Debian-init-diversity mailing list