Merge pull request #269983 from nikstur/stc-tmpfiles

nixos/switch-to-configuration: remove explicit tmpfiles invocation
This commit is contained in:
Bernardo Meurer 2023-11-28 18:26:44 -03:00 committed by GitHub
commit ad1d3762bb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 6 additions and 5 deletions

View File

@ -37,7 +37,6 @@ of actions is always the same:
- Forget about the failed state of units (`systemctl reset-failed`)
- Reload systemd (`systemctl daemon-reload`)
- Reload systemd user instances (`systemctl --user daemon-reload`)
- Set up tmpfiles (`systemd-tmpfiles --create`)
- Reload units (`systemctl reload`)
- Restart units (`systemctl restart`)
- Start units (`systemctl start`)

View File

@ -889,10 +889,6 @@ while (my $f = <$list_active_users>) {
close($list_active_users) || die("Unable to close the file handle to loginctl");
# Set the new tmpfiles
print STDERR "setting up tmpfiles\n";
system("$new_systemd/bin/systemd-tmpfiles", "--create", "--remove", "--exclude-prefix=/dev") == 0 or $res = 3;
# Before reloading we need to ensure that the units are still active. They may have been
# deactivated because one of their requirements got stopped. If they are inactive
# but should have been reloaded, the user probably expects them to be started.

View File

@ -150,6 +150,12 @@ in
"systemd-tmpfiles-setup.service"
];
# Allow systemd-tmpfiles to be restarted by switch-to-configuration.
systemd.services."systemd-tmpfiles-setup" = {
unitConfig.RefuseManualStop = "no";
restartTriggers = [ "${config.environment.etc."tmpfiles.d".source}" ];
};
environment.etc = {
"tmpfiles.d".source = (pkgs.symlinkJoin {
name = "tmpfiles.d";