From 802653e5d1f654ac67c045ca6eea8c8cfa8fc052 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 30 Mar 2025 16:56:27 +0200 Subject: [PATCH] auto-upgrade: unbreak on unattended, loginctl enable-linger systems (#6719) Fixes https://github.com/nix-community/home-manager/issues/3127 --- .../services/home-manager-auto-upgrade.nix | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/modules/services/home-manager-auto-upgrade.nix b/modules/services/home-manager-auto-upgrade.nix index 659f91181..a1cadeee5 100644 --- a/modules/services/home-manager-auto-upgrade.nix +++ b/modules/services/home-manager-auto-upgrade.nix @@ -8,6 +8,16 @@ let path = config.programs.home-manager.path; }; + autoUpgradeApp = pkgs.writeShellApplication { + name = "home-manager-auto-upgrade"; + text = '' + echo "Update Nix's channels" + nix-channel --update + echo "Upgrade Home Manager" + home-manager switch + ''; + runtimeInputs = with pkgs; [ homeManagerPackage nix ]; + }; in { meta.maintainers = [ lib.hm.maintainers.pinage404 ]; @@ -52,14 +62,7 @@ in { services.home-manager-auto-upgrade = { Unit.Description = "Home Manager upgrade"; - - Service.ExecStart = toString - (pkgs.writeShellScript "home-manager-auto-upgrade" '' - echo "Update Nix's channels" - ${pkgs.nix}/bin/nix-channel --update - echo "Upgrade Home Manager" - ${homeManagerPackage}/bin/home-manager switch - ''); + Service.ExecStart = "${autoUpgradeApp}/bin/home-manager-auto-upgrade"; }; }; };