nixos: reload home conf of logged users

This commit is contained in:
paki23 2023-01-27 21:19:38 +01:00
parent b2a6b28840
commit 9bbbe634d2
No known key found for this signature in database
GPG key ID: 13160FFB4CEB03F2

View file

@ -19,6 +19,8 @@ let
} // optionalAttrs cfg.verbose { VERBOSE = "1"; }; } // optionalAttrs cfg.verbose { VERBOSE = "1"; };
serviceConfig = baseService username; serviceConfig = baseService username;
}; };
# we use a service separated from nixos-activation
# to keep the logs separate
hmDropIn = "/share/systemd/user/home-manager.service.d"; hmDropIn = "/share/systemd/user/home-manager.service.d";
in { in {
@ -110,8 +112,6 @@ in {
}) })
(mkIf (cfg.users != { } && cfg.useUserService) { (mkIf (cfg.users != { } && cfg.useUserService) {
systemd.user.services.home-manager = (baseUnit "%u") // { systemd.user.services.home-manager = (baseUnit "%u") // {
wantedBy = [ "default.target" ];
# user units cannot depend on system units # user units cannot depend on system units
# TODO: Insert in the script logic for waiting on the nix socket via dbus # TODO: Insert in the script logic for waiting on the nix socket via dbus
# like https://github.com/mogorman/systemd-lock-handler # like https://github.com/mogorman/systemd-lock-handler
@ -138,6 +138,14 @@ in {
]; ];
}) cfg.users; }) cfg.users;
environment.pathsToLink = [ hmDropIn ]; environment.pathsToLink = [ hmDropIn ];
# Without this will not reload home conf
# of logged user on system activation
# it will also start the unit on startup
system.userActivationScripts.home-manager = {
text = "${pkgs.systemd}/bin/systemctl --user restart home-manager";
deps = [ ];
};
}) })
]; ];
} }