On 2025-02-17 00:12, Bruno Haible wrote:
Paul Eggert wrote:
    $ ./who-no-systemd # Configured normally.
    eggert   seat0        2025-02-15 10:11 (login screen)
    eggert   tty2         2025-02-15 10:11 (tty2)
    $ ./who-with-systemd # Configured with --enable-systemd.
    eggert   seat0        2025-02-15 10:11
    eggert   tty2         2025-02-15 10:11

Apparently for coreutils, /var/run/utmp (the traditional interface) has
more info than libsystemd's API.

Both outputs are equivalent; the second one is less redundant.

In that case, should we fix Gnulib and/or Coreutils so that the first output is changed to match the second one?


    $ ./who-no-systemd
    eggert   pts/3        2025-02-16 22:56 (47.147.225.25)
    $ ./who-with-systemd
    gdm      seat0        2025-02-13 18:04
    gdm      tty1         2025-02-13 18:04
    eggert   sshd pts/3   2025-02-16 22:56 (47.147.225.25)

Here, though I'm logged in only via ssh, the libsystemd-using 'who'
incorrectly reports that a user named "gdm" is logged in in person.

'who' merely reports the info it got from systemd-logind, and systemd-logind
most probably got a notification from gdm.

I agree with you that this _looks_like_ as if a user named 'gdm' was logged
in, and thus is misleading. But I don't think this should be fixed in
coreutils. Rather, this is something to work out between systemd-logind
and gdm.

OK, but until that's worked out it appears to be better to not use --enable-systemd on Fedora when configuring Coreutils. Likewise for Ubuntu which has the same issue, and I assume Debian is like Ubuntu.



Reply via email to