1import ./make-test-python.nix (
2 { lib, ... }:
3 {
4 name = "systemd-user-tmpfiles-rules";
5
6 meta = with lib.maintainers; {
7 maintainers = [ schnusch ];
8 };
9
10 nodes.machine =
11 { ... }:
12 {
13 users.users = {
14 alice.isNormalUser = true;
15 bob.isNormalUser = true;
16 };
17
18 systemd.user.tmpfiles = {
19 rules = [
20 "d %h/user_tmpfiles_created"
21 ];
22 users.alice.rules = [
23 "d %h/only_alice"
24 ];
25 };
26 };
27
28 testScript =
29 { ... }:
30 ''
31 machine.succeed("loginctl enable-linger alice bob")
32
33 machine.wait_until_succeeds("systemctl --user --machine=alice@ is-active systemd-tmpfiles-setup.service")
34 machine.succeed("[ -d ~alice/user_tmpfiles_created ]")
35 machine.succeed("[ -d ~alice/only_alice ]")
36
37 machine.wait_until_succeeds("systemctl --user --machine=bob@ is-active systemd-tmpfiles-setup.service")
38 machine.succeed("[ -d ~bob/user_tmpfiles_created ]")
39 machine.succeed("[ ! -e ~bob/only_alice ]")
40 '';
41 }
42)