logind: emit PropertiesChanged when lingering is enabled/disabled
Cockpit's podman plugin needs to know the lingering status so the UI can
advertise enabling `podman-restart` (which depends on lingering to
work). Currently it relies on watching `/var/lib/systemd/linger/${user}`
but that isn't a public API.
Related: #22244
This commit is contained in:
committed by
Lennart Poettering
parent
03936a55a1
commit
c6ebb98e3c
@@ -590,7 +590,10 @@ testcase_list_users_sessions_seats() {
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $3 }')" no
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $4 }')" active
|
||||
|
||||
loginctl enable-linger logind-test-user
|
||||
systemd-run --quiet --service-type=notify --unit=test-linger-signal-wait --pty \
|
||||
-p Environment=SYSTEMD_LOG_LEVEL=debug \
|
||||
-p ExecStartPost="loginctl enable-linger logind-test-user" \
|
||||
busctl --timeout=30 wait "/org/freedesktop/login1/user/_$(id -ru logind-test-user)" org.freedesktop.DBus.Properties PropertiesChanged | grep -qF '"Linger" b true'
|
||||
assert_eq "$(loginctl list-users --no-legend | awk '$2 == "logind-test-user" { print $3 }')" yes
|
||||
|
||||
for s in $(loginctl list-sessions --no-legend | grep tty | awk '$3 == "logind-test-user" { print $1 }'); do
|
||||
|
||||
Reference in New Issue
Block a user