Skip to content

Commit 6455697

Browse files
andirMic92
andcommitted
systemd: 247.6 -> 249.4
This updates systemd to version v249.4 from version v247.6. Besides the many new features that can be found in the upstream repository they also introduced a bunch of cleanup which ended up requiring a few more patches on our side. a) 0022-core-Handle-lookup-paths-being-symlinks.patch: The way symlinked units were handled was changed in such that the last name of a unit file within one of the unit directories (/run/systemd/system, /etc/systemd/system, ...) is used as the name for the unit. Unfortunately that code didn't take into account that the unit directories themselves could already be symlinks and thus caused all our units to be recognized slightly different. There is an upstream PR for this new patch: systemd/systemd#20479 b) The way the APIVFS is setup has been changed in such a way that we now always have /run. This required a few changes to the confinement tests which did assert that they didn't exist. Instead of adding another patch we can just adopt the upstream behavior. An empty /run doesn't seem harmful. As part of this work I refactored the confinement test just a little bit to allow better debugging of test failures. Previously it would just fail at some point and it wasn't obvious which of the many commands failed or what the unexpected string was. This should now be more obvious. c) Again related to the confinement tests the way a file was tested for being accessible was optimized. Previously systemd would in some situations open a file twice during that check. This was reduced to one operation but required the procfs to be mounted in a units namespace. An upstream bug was filed and fixed. We are now carrying the essential patch to fix that issue until it is backported to a new release (likely only version 250). The good part about this story is that upstream systemd now has a test case that looks very similar to one of our confinement tests. Hopefully that will lead to less friction in the long run. systemd/systemd#20514 systemd/systemd#20515 d) Previously we could grep for dlopen( somewhat reliably but now upstream started using a wrapper around dlopen that is most of the time used with linebreaks. This makes using grep not ergonomic anymore. With this bump we are grepping for anything that looks like a dynamic library name (in contrast to a dlopen(3) call) and replace those instead. That seems more robust. Time will tell if this holds. I tried using coccinelle to patch all those call sites using its tooling but unfornately it does stumble upon the _cleanup_ annotations that are very common in the systemd code. e) We now have some machinery for libbpf support in our systemd build. That being said it doesn't actually work as generating some skeletons doesn't work just yet. It fails with the below error message and is disabled by default (in both minimal and the regular build). > FAILED: src/core/bpf/socket_bind/socket-bind.skel.h > /build/source/tools/build-bpf-skel.py --clang_exec /nix/store/x1bi2mkapk1m0zq2g02nr018qyjkdn7a-clang-wrapper-12.0.1/bin/clang --llvm_strip_exec /nix/store/zm0kqan9qc77x219yihmmisi9g3sg8ns-llvm-12.0.1/bin/llvm-strip --bpftool_exec /nix/store/l6dg8jlbh8qnqa58mshh3d8r6999dk0p-bpftools-5.13.11/bin/bpftool --arch x86_64 ../src/core/bpf/socket_bind/socket-bind.bpf.c src/core/bpf/socket_bind/socket-bind.skel.h > libbpf: elf: socket_bind_bpf is not a valid eBPF object file > Error: failed to open BPF object file: BPF object format invalid > Traceback (most recent call last): > File "/build/source/tools/build-bpf-skel.py", line 128, in <module> > bpf_build(args) > File "/build/source/tools/build-bpf-skel.py", line 92, in bpf_build > gen_bpf_skeleton(bpftool_exec=args.bpftool_exec, > File "/build/source/tools/build-bpf-skel.py", line 63, in gen_bpf_skeleton > skel = subprocess.check_output(bpftool_args, universal_newlines=True) > File "/nix/store/81lwy2hfqj4c1943b1x8a0qsivjhdhw9-python3-3.9.6/lib/python3.9/subprocess.py", line 424, in check_output > return run(*popenargs, stdout=PIPE, timeout=timeout, check=True, > File "/nix/store/81lwy2hfqj4c1943b1x8a0qsivjhdhw9-python3-3.9.6/lib/python3.9/subprocess.py", line 528, in run > raise CalledProcessError(retcode, process.args, > subprocess.CalledProcessError: Command '['/nix/store/l6dg8jlbh8qnqa58mshh3d8r6999dk0p-bpftools-5.13.11/bin/bpftool', 'g', 's', '../src/core/bpf/socket_bind/socket-bind.bpf.o']' returned non-zero exit status 255. > [102/1457] Compiling C object src/journal/libjournal-core.a.p/journald-server.c.oapture output)put)ut) > ninja: build stopped: subcommand failed. f) We do now have support for TPM2 based disk encryption in our systemd build. The actual bits and pieces to make use of that are missing but there are various ongoing efforts in that direction. There is also the story about systemd in our initrd to enable this being used for root volumes. None of this will yet work out of the box but we can start improving on that front. g) FIDO2 support was added systemd and consequently we can now use that. Just with TPM2 there hasn't been any integration work with NixOS and instead this just adds that capability to work on that. Co-Authored-By: Jörg Thalheim <joerg@thalheim.io>
1 parent a485b49 commit 6455697

30 files changed

Lines changed: 539 additions & 277 deletions

File tree

nixos/doc/manual/from_md/release-notes/rl-2111.section.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,11 @@
5353
bash now defaults to major version 5.
5454
</para>
5555
</listitem>
56+
<listitem>
57+
<para>
58+
Systemd was updated to version 249 (from 247).
59+
</para>
60+
</listitem>
5661
</itemizedlist>
5762
</section>
5863
<section xml:id="sec-release-21.11-new-services">

nixos/doc/manual/release-notes/rl-2111.section.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ In addition to numerous new and upgraded packages, this release has the followin
2020

2121
- bash now defaults to major version 5.
2222

23+
- Systemd was updated to version 249 (from 247).
24+
2325
## New Services {#sec-release-21.11-new-services}
2426

2527
- [btrbk](https://digint.ch/btrbk/index.html), a backup tool for btrfs subvolumes, taking advantage of btrfs specific capabilities to create atomic snapshots and transfer them incrementally to your backup locations. Available as [services.btrbk](options.html#opt-services.brtbk.instances).

nixos/modules/services/ttys/getty.nix

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,14 @@ in
131131
restartIfChanged = false;
132132
};
133133

134+
systemd.services."autovt@" =
135+
{ serviceConfig.ExecStart = [
136+
"" # override upstream default with an empty ExecStart
137+
(gettyCmd "--noclear %I $TERM")
138+
];
139+
restartIfChanged = false;
140+
};
141+
134142
systemd.services."container-getty@" =
135143
{ serviceConfig.ExecStart = [
136144
"" # override upstream default with an empty ExecStart

nixos/tests/systemd-confinement.nix

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -44,38 +44,35 @@ import ./make-test-python.nix {
4444
{ config.confinement.mode = "chroot-only";
4545
testScript = ''
4646
with subtest("chroot-only confinement"):
47-
machine.succeed(
48-
'test "$(chroot-exec ls -1 / | paste -sd,)" = bin,nix',
49-
'test "$(chroot-exec id -u)" = 0',
50-
"chroot-exec chown 65534 /bin",
51-
)
47+
paths = machine.succeed('chroot-exec ls -1 / | paste -sd,').strip()
48+
assert_eq(paths, "bin,nix,run")
49+
uid = machine.succeed('chroot-exec id -u').strip()
50+
assert_eq(uid, "0")
51+
machine.succeed("chroot-exec chown 65534 /bin")
5252
'';
5353
}
5454
{ testScript = ''
5555
with subtest("full confinement with APIVFS"):
56-
machine.fail(
57-
"chroot-exec ls -l /etc",
58-
"chroot-exec ls -l /run",
59-
"chroot-exec chown 65534 /bin",
60-
)
61-
machine.succeed(
62-
'test "$(chroot-exec id -u)" = 0',
63-
"chroot-exec chown 0 /bin",
64-
)
56+
machine.fail("chroot-exec ls -l /etc")
57+
machine.fail("chroot-exec chown 65534 /bin")
58+
assert_eq(machine.succeed('chroot-exec id -u').strip(), "0")
59+
machine.succeed("chroot-exec chown 0 /bin")
6560
'';
6661
}
6762
{ config.serviceConfig.BindReadOnlyPaths = [ "/etc" ];
6863
testScript = ''
6964
with subtest("check existence of bind-mounted /etc"):
70-
machine.succeed('test -n "$(chroot-exec cat /etc/passwd)"')
65+
passwd = machine.succeed('chroot-exec cat /etc/passwd').strip()
66+
assert len(passwd) > 0, "/etc/passwd must not be empty"
7167
'';
7268
}
7369
{ config.serviceConfig.User = "chroot-testuser";
7470
config.serviceConfig.Group = "chroot-testgroup";
7571
testScript = ''
7672
with subtest("check if User/Group really runs as non-root"):
7773
machine.succeed("chroot-exec ls -l /dev")
78-
machine.succeed('test "$(chroot-exec id -u)" != 0')
74+
uid = machine.succeed('chroot-exec id -u').strip()
75+
assert uid != "0", "UID of chroot-testuser shouldn't be 0"
7976
machine.fail("chroot-exec touch /bin/test")
8077
'';
8178
}
@@ -88,10 +85,8 @@ import ./make-test-python.nix {
8885
testScript = ''
8986
with subtest("check if symlinks are properly bind-mounted"):
9087
machine.fail("chroot-exec test -e /etc")
91-
machine.succeed(
92-
"chroot-exec cat ${symlink} >&2",
93-
'test "$(chroot-exec cat ${symlink})" = "got me"',
94-
)
88+
text = machine.succeed('chroot-exec cat ${symlink}').strip()
89+
assert_eq(text, "got me")
9590
'';
9691
})
9792
{ config.serviceConfig.User = "chroot-testuser";
@@ -158,6 +153,9 @@ import ./make-test-python.nix {
158153
};
159154

160155
testScript = { nodes, ... }: ''
156+
def assert_eq(a, b):
157+
assert a == b, f"{a} != {b}"
158+
161159
machine.wait_for_unit("multi-user.target")
162160
'' + nodes.machine.config.__testSteps;
163161
}

pkgs/development/libraries/tpm2-tss/default.nix

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,14 @@
33
, openssl, json_c, curl, libgcrypt
44
, cmocka, uthash, ibm-sw-tpm2, iproute2, procps, which
55
}:
6+
let
7+
# Avoid a circular dependency on Linux systems (systemd depends on tpm2-tss,
8+
# tpm2-tss tests depend on procps, procps depends on systemd by default). This
9+
# needs to be conditional based on isLinux because procps for other systems
10+
# might not support the withSystemd option.
11+
procpsWithoutSystemd = procps.override { withSystemd = false; };
12+
procps_pkg = if stdenv.isLinux then procpsWithoutSystemd else procps;
13+
in
614

715
stdenv.mkDerivation rec {
816
pname = "tpm2-tss";
@@ -20,7 +28,7 @@ stdenv.mkDerivation rec {
2028
];
2129
buildInputs = [ openssl json_c curl libgcrypt ];
2230
checkInputs = [
23-
cmocka uthash ibm-sw-tpm2 iproute2 procps which
31+
cmocka uthash ibm-sw-tpm2 iproute2 procps_pkg which
2432
];
2533

2634
preAutoreconf = "./bootstrap";

pkgs/os-specific/linux/systemd/0001-Start-device-units-for-uninitialised-encrypted-devic.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 2f4a5e9c9ef1cd57662e8bd4c24e1029a00d55b5 Mon Sep 17 00:00:00 2001
1+
From 57e31a2d4a5d5bd7a9e1cd8a0d8bc6a00624ad68 Mon Sep 17 00:00:00 2001
22
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
33
Date: Tue, 8 Jan 2013 15:46:30 +0100
44
Subject: [PATCH 01/19] Start device units for uninitialised encrypted devices
@@ -13,7 +13,7 @@ unit. (However, this ignores the fsck unit, so it's not perfect...)
1313
1 file changed, 4 deletions(-)
1414

1515
diff --git a/rules.d/99-systemd.rules.in b/rules.d/99-systemd.rules.in
16-
index 7c22eefdb7..e3a55e00b5 100644
16+
index 25b8a590a6..d18999ea87 100644
1717
--- a/rules.d/99-systemd.rules.in
1818
+++ b/rules.d/99-systemd.rules.in
1919
@@ -17,10 +17,6 @@ SUBSYSTEM=="ubi", TAG+="systemd"
@@ -28,5 +28,5 @@ index 7c22eefdb7..e3a55e00b5 100644
2828
SUBSYSTEM=="block", ENV{ID_PART_GPT_AUTO_ROOT}=="1", ENV{ID_FS_TYPE}!="crypto_LUKS", SYMLINK+="gpt-auto-root"
2929
SUBSYSTEM=="block", ENV{ID_PART_GPT_AUTO_ROOT}=="1", ENV{ID_FS_TYPE}=="crypto_LUKS", SYMLINK+="gpt-auto-root-luks"
3030
--
31-
2.30.1
31+
2.32.0
3232

pkgs/os-specific/linux/systemd/0002-Don-t-try-to-unmount-nix-or-nix-store.patch

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 4e96b2e074c4a4f4ce900409872ce2f86704ee5b Mon Sep 17 00:00:00 2001
1+
From 43465a392b47238a32f8719f603ed9e2c9bb0363 Mon Sep 17 00:00:00 2001
22
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
33
Date: Fri, 12 Apr 2013 13:16:57 +0200
44
Subject: [PATCH 02/19] Don't try to unmount /nix or /nix/store
@@ -12,7 +12,7 @@ https://github.com/NixOS/nixos/issues/126
1212
2 files changed, 4 insertions(+)
1313

1414
diff --git a/src/shared/fstab-util.c b/src/shared/fstab-util.c
15-
index 292b97cd69..791b8e6b7e 100644
15+
index f683f05981..5a04c2c2a6 100644
1616
--- a/src/shared/fstab-util.c
1717
+++ b/src/shared/fstab-util.c
1818
@@ -40,6 +40,8 @@ bool fstab_is_extrinsic(const char *mount, const char *opts) {
@@ -25,10 +25,10 @@ index 292b97cd69..791b8e6b7e 100644
2525
"/etc"))
2626
return true;
2727
diff --git a/src/shutdown/umount.c b/src/shutdown/umount.c
28-
index 3a72a13e1a..541320dc9d 100644
28+
index c2a26242c0..9936398f32 100644
2929
--- a/src/shutdown/umount.c
3030
+++ b/src/shutdown/umount.c
31-
@@ -500,6 +500,8 @@ static int delete_md(MountPoint *m) {
31+
@@ -496,6 +496,8 @@ static int delete_md(MountPoint *m) {
3232

3333
static bool nonunmountable_path(const char *path) {
3434
return path_equal(path, "/")
@@ -38,5 +38,5 @@ index 3a72a13e1a..541320dc9d 100644
3838
|| path_equal(path, "/usr")
3939
#endif
4040
--
41-
2.30.1
41+
2.32.0
4242

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 3d1b2e56a6ed6cc86a64f6f89765a2900e576402 Mon Sep 17 00:00:00 2001
1+
From a99666d3d7012c2162fdacf84a57fc0b848fd957 Mon Sep 17 00:00:00 2001
22
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
33
Date: Wed, 16 Apr 2014 10:59:28 +0200
44
Subject: [PATCH 03/19] Fix NixOS containers
@@ -10,18 +10,18 @@ container, so checking early whether it exists will fail.
1010
1 file changed, 2 insertions(+)
1111

1212
diff --git a/src/nspawn/nspawn.c b/src/nspawn/nspawn.c
13-
index 7515380fcd..14f8a82eb8 100644
13+
index 04685fecba..0e5ece5f91 100644
1414
--- a/src/nspawn/nspawn.c
1515
+++ b/src/nspawn/nspawn.c
16-
@@ -5323,6 +5323,7 @@ static int run(int argc, char *argv[]) {
16+
@@ -5590,6 +5590,7 @@ static int run(int argc, char *argv[]) {
1717
goto finish;
1818
}
1919
} else {
2020
+#if 0
2121
const char *p, *q;
2222

2323
if (arg_pivot_root_new)
24-
@@ -5337,6 +5338,7 @@ static int run(int argc, char *argv[]) {
24+
@@ -5604,6 +5605,7 @@ static int run(int argc, char *argv[]) {
2525
r = -EINVAL;
2626
goto finish;
2727
}
@@ -30,5 +30,5 @@ index 7515380fcd..14f8a82eb8 100644
3030

3131
} else {
3232
--
33-
2.30.1
33+
2.32.0
3434

pkgs/os-specific/linux/systemd/0004-Look-for-fsck-in-the-right-place.patch

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 3a721cf70e952e933ef5374006bbb11a3a0ad36a Mon Sep 17 00:00:00 2001
1+
From 3f0780b25bdbe4156a2f761c90083bbba5f4d473 Mon Sep 17 00:00:00 2001
22
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
33
Date: Thu, 1 May 2014 14:10:10 +0200
44
Subject: [PATCH 04/19] Look for fsck in the right place
@@ -8,7 +8,7 @@ Subject: [PATCH 04/19] Look for fsck in the right place
88
1 file changed, 1 insertion(+), 1 deletion(-)
99

1010
diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c
11-
index 510689f3b7..25cab5acae 100644
11+
index cd7adfaeb9..68cebdd158 100644
1212
--- a/src/fsck/fsck.c
1313
+++ b/src/fsck/fsck.c
1414
@@ -368,7 +368,7 @@ static int run(int argc, char *argv[]) {
@@ -21,5 +21,5 @@ index 510689f3b7..25cab5acae 100644
2121
cmdline[i++] = "-T";
2222

2323
--
24-
2.30.1
24+
2.32.0
2525

pkgs/os-specific/linux/systemd/0005-Add-some-NixOS-specific-unit-directories.patch

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
From 8b7f881cf22e98e907506f4c403b9e304e332bf9 Mon Sep 17 00:00:00 2001
1+
From 82698c6a5142e710c302f9c38367ed00d8ec94ba Mon Sep 17 00:00:00 2001
22
From: Eelco Dolstra <eelco.dolstra@logicblox.com>
33
Date: Fri, 19 Dec 2014 14:46:17 +0100
44
Subject: [PATCH 05/19] Add some NixOS-specific unit directories
@@ -10,14 +10,14 @@ units provided by packages installed into the default profile via
1010
Also, remove /usr and /lib as these don't exist on NixOS.
1111
---
1212
src/basic/path-lookup.c | 17 ++---------------
13-
src/core/systemd.pc.in | 5 +++--
14-
2 files changed, 5 insertions(+), 17 deletions(-)
13+
src/core/systemd.pc.in | 8 ++++----
14+
2 files changed, 6 insertions(+), 19 deletions(-)
1515

1616
diff --git a/src/basic/path-lookup.c b/src/basic/path-lookup.c
17-
index 96b82170d0..bf66bd6b77 100644
17+
index 05eb17d66c..1cd141d012 100644
1818
--- a/src/basic/path-lookup.c
1919
+++ b/src/basic/path-lookup.c
20-
@@ -94,11 +94,7 @@ int xdg_user_data_dir(char **ret, const char *suffix) {
20+
@@ -91,11 +91,7 @@ int xdg_user_data_dir(char **ret, const char *suffix) {
2121
}
2222

2323
static const char* const user_data_unit_paths[] = {
@@ -29,7 +29,7 @@ index 96b82170d0..bf66bd6b77 100644
2929
NULL
3030
};
3131

32-
@@ -616,15 +612,13 @@ int lookup_paths_init(
32+
@@ -613,15 +609,13 @@ int lookup_paths_init(
3333
persistent_config,
3434
SYSTEM_CONFIG_UNIT_DIR,
3535
"/etc/systemd/system",
@@ -40,13 +40,13 @@ index 96b82170d0..bf66bd6b77 100644
4040
STRV_IFNOTNULL(runtime_attached),
4141
STRV_IFNOTNULL(generator),
4242
- "/usr/local/lib/systemd/system",
43-
SYSTEM_DATA_UNIT_PATH,
43+
SYSTEM_DATA_UNIT_DIR,
4444
- "/usr/lib/systemd/system",
4545
- STRV_IFNOTNULL(flags & LOOKUP_PATHS_SPLIT_USR ? "/lib/systemd/system" : NULL),
4646
STRV_IFNOTNULL(generator_late));
4747
break;
4848

49-
@@ -640,14 +634,11 @@ int lookup_paths_init(
49+
@@ -637,14 +631,11 @@ int lookup_paths_init(
5050
persistent_config,
5151
USER_CONFIG_UNIT_DIR,
5252
"/etc/systemd/user",
@@ -62,23 +62,23 @@ index 96b82170d0..bf66bd6b77 100644
6262
STRV_IFNOTNULL(generator_late));
6363
break;
6464

65-
@@ -797,7 +788,6 @@ char **generator_binary_paths(UnitFileScope scope) {
65+
@@ -794,7 +785,6 @@ char **generator_binary_paths(UnitFileScope scope) {
6666
case UNIT_FILE_SYSTEM:
6767
add = strv_new("/run/systemd/system-generators",
6868
"/etc/systemd/system-generators",
6969
- "/usr/local/lib/systemd/system-generators",
7070
SYSTEM_GENERATOR_DIR);
7171
break;
7272

73-
@@ -805,7 +795,6 @@ char **generator_binary_paths(UnitFileScope scope) {
73+
@@ -802,7 +792,6 @@ char **generator_binary_paths(UnitFileScope scope) {
7474
case UNIT_FILE_USER:
7575
add = strv_new("/run/systemd/user-generators",
7676
"/etc/systemd/user-generators",
7777
- "/usr/local/lib/systemd/user-generators",
7878
USER_GENERATOR_DIR);
7979
break;
8080

81-
@@ -844,12 +833,10 @@ char **env_generator_binary_paths(bool is_system) {
81+
@@ -841,12 +830,10 @@ char **env_generator_binary_paths(bool is_system) {
8282
if (is_system)
8383
add = strv_new("/run/systemd/system-environment-generators",
8484
"/etc/systemd/system-environment-generators",
@@ -92,10 +92,10 @@ index 96b82170d0..bf66bd6b77 100644
9292

9393
if (!add)
9494
diff --git a/src/core/systemd.pc.in b/src/core/systemd.pc.in
95-
index b5cc8f94a5..a701cd05f8 100644
95+
index fc0f8c34fa..ded74ce50a 100644
9696
--- a/src/core/systemd.pc.in
9797
+++ b/src/core/systemd.pc.in
98-
@@ -38,10 +38,11 @@ systemdsystemconfdir=${systemd_system_conf_dir}
98+
@@ -38,10 +38,10 @@ systemdsystemconfdir=${systemd_system_conf_dir}
9999
systemd_user_conf_dir=${sysconfdir}/systemd/user
100100
systemduserconfdir=${systemd_user_conf_dir}
101101

@@ -105,10 +105,22 @@ index b5cc8f94a5..a701cd05f8 100644
105105

106106
-systemd_user_unit_path=${systemd_user_conf_dir}:/etc/systemd/user:/run/systemd/user:/usr/local/lib/systemd/user:/usr/local/share/systemd/user:${systemd_user_unit_dir}:/usr/lib/systemd/user:/usr/share/systemd/user
107107
+systemd_user_unit_path=${systemd_user_conf_dir}:/etc/systemd/user:/nix/var/nix/profiles/default/lib/systemd/user:/run/systemd/user:${systemduserunitdir}
108-
+
109108
systemduserunitpath=${systemd_user_unit_path}
110109

111110
systemd_system_generator_dir=${root_prefix}/lib/systemd/system-generators
111+
@@ -50,10 +50,10 @@ systemdsystemgeneratordir=${systemd_system_generator_dir}
112+
systemd_user_generator_dir=${prefix}/lib/systemd/user-generators
113+
systemdusergeneratordir=${systemd_user_generator_dir}
114+
115+
-systemd_system_generator_path=/run/systemd/system-generators:/etc/systemd/system-generators:/usr/local/lib/systemd/system-generators:${systemd_system_generator_dir}
116+
+systemd_system_generator_path=/run/systemd/system-generators:/etc/systemd/system-generators:${systemd_system_generator_dir}
117+
systemdsystemgeneratorpath=${systemd_system_generator_path}
118+
119+
-systemd_user_generator_path=/run/systemd/user-generators:/etc/systemd/user-generators:/usr/local/lib/systemd/user-generators:${systemd_user_generator_dir}
120+
+systemd_user_generator_path=/run/systemd/user-generators:/etc/systemd/user-generators:${systemd_user_generator_dir}
121+
systemdusergeneratorpath=${systemd_user_generator_path}
122+
123+
systemd_sleep_dir=${root_prefix}/lib/systemd/system-sleep
112124
--
113-
2.30.1
125+
2.32.0
114126

0 commit comments

Comments
 (0)