On Sat, 1 Feb 2020 21:29:05 +0100 Michael Biebl <[email protected]> wrote:> Am 31.01.20 um 05:40 schrieb Benda Xu: > The seat detection is acquired via libsystemd, not the D-Bus interface > afaics. The virtual package logind only provides guarantees regarding > the D-Bus interface. From > /usr/share/doc/debian-policy/virtual-package-names-list.yaml.gz > > - name: logind > description: an org.freedesktop.login1 D-Bus API implementation > (versioned) > > Can you provide more information if the C-API of logind is fully > implemented in elogind? Should debian-policy be updated then? > > That is my concern number one. > > Second, I don't think the logind virtual package gives any guarantees > regarding the systemd inhibit API. > > How does elogind enforce an inhibition lock? Say udisks currently > executed a destructive operation operation. How does it prevent > (accidental) shutdowns in this case, which would render your system broken?
I was led to this bug when trying to replace systemd with the MATE-DE, which currently has indirect systemd dependencies via policykit-1 and usdisks2. (similar #909192) As far as I can tell, looking at elogind release notes and documentation, elogind does implement inhibition locks and is fully ABI compatible to libsystemd though a few functionalities (not inhibitors) are only provided as dummys or redirected to something else. See: https://github.com/elogind/elogind/releases/tag/v241.1 But by glancing over elogind's docs and elogind/src/login/logind-inhibtit.c it seems as if inhibitors are properly (as in: not just a dummy) implemented. Also udisks 2.6.5 upstream release notes mention it now supports elogind See: https://github.com/storaged-project/udisks/blob/master/NEWS Regards, Nils

