]> git.ipfire.org Git - thirdparty/systemd.git/commit - meson.build
logind: split %t directory creation to a helper unit
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Sat, 9 Dec 2017 18:30:17 +0000 (19:30 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 25 Apr 2018 14:20:28 +0000 (16:20 +0200)
commita9f0f5e50104fc5cc511aa10007f7f8b8366fed8
tree7f5d44a2ef17494db959f9cef8b6a49b76d73141
parent284149392755f086d0a714071c33aa609e61505e
logind: split %t directory creation to a helper unit

Unfortunately this needs a new binary to do the mount because there's just
too many special steps to outsource this to systemd-mount:
- EPERM needs to be treated specially
- UserRuntimeDir= setting must be obeyed
- SELinux label must be adjusted

This allows user@.service to be started independently of logind.
So 'systemctl start user@nnn' will start the user manager for user nnn.
Logind will start it too when the user logs in, and will stop it (unless
lingering is enabled) when the user logs out.

Fixes #7339.
meson.build
src/login/logind-user.c
src/login/meson.build
src/login/user-runtime-dir.c [new file with mode: 0644]
units/meson.build
units/user-runtime-dir@.service.in [new file with mode: 0644]
units/user@.service.in