From: Scott Worley Date: Sat, 21 Dec 2024 04:40:25 +0000 (-0800) Subject: When becoming other users, cd to / with pushd, not sudo -D X-Git-Url: http://git.scottworley.com/auto-upgrade-with-pinch/commitdiff_plain/13226f1c72df5771124e10f5de3648c3db0b587a?ds=sidebyside;hp=98604ba76ee41d5835d3f0d4ef76e7250d9f59c2 When becoming other users, cd to / with pushd, not sudo -D sudo can complain: "sudo: you are not permitted to use the -D option" --- diff --git a/modules/auto-upgrade.nix b/modules/auto-upgrade.nix index f3089bd..0977176 100644 --- a/modules/auto-upgrade.nix +++ b/modules/auto-upgrade.nix @@ -183,8 +183,10 @@ let # Build in_tmpdir hydrate ${config.system.build.nixos-rebuild}/bin/nixos-rebuild build while read user;do - hydrate /run/wrappers/bin/sudo -u "$user" -D / \ + pushd / + hydrate /run/wrappers/bin/sudo -u "$user" \ ${pkgs.nix}/bin/nix-build --no-out-link '' -A "$(userenv_query "$user" .package)" + popd done < <( config_query '.userEnvironments | keys []' ) # Install