0522a75d35
Replace `systemd.user.extraConfig` with a freeform `systemd.user.settings.Manager` submodule, rendered via `utils.systemdUtils.lib.settingsToSections`. `extraConfig` is removed via `mkRemovedOptionModule`. Mirrors the existing `systemd.settings.Manager` migration of the system-side manager. Updates the two in-tree consumers (`nixos/modules/testing/test-instrumentation.nix` and `nixos/tests/systemd.nix`) to the new option. Adds `nixos/tests/systemd-user-settings` to assert the rendered `user.conf` contents.
25 lines
633 B
Nix
25 lines
633 B
Nix
{
|
|
name = "systemd-user-settings";
|
|
meta = {
|
|
maintainers = [ ];
|
|
};
|
|
|
|
nodes.machine =
|
|
{ lib, ... }:
|
|
{
|
|
systemd.user.settings.Manager = {
|
|
DefaultTimeoutStartSec = lib.mkForce "60";
|
|
DefaultEnvironment = "FOO=bar";
|
|
};
|
|
};
|
|
|
|
testScript = ''
|
|
machine.wait_for_unit("multi-user.target")
|
|
|
|
with subtest("settings.Manager renders user.conf"):
|
|
machine.succeed("grep -F '[Manager]' /etc/systemd/user.conf")
|
|
machine.succeed("grep -F 'DefaultTimeoutStartSec=60' /etc/systemd/user.conf")
|
|
machine.succeed("grep -F 'DefaultEnvironment=FOO=bar' /etc/systemd/user.conf")
|
|
'';
|
|
}
|