X-Git-Url: http://git.scottworley.com/auto-upgrade-with-pinch/blobdiff_plain/15d7ea954e9c4ca687f2175630724cf60346f758..91b2b7c6c4873633718078d1ff5a775e21bf06f3:/modules/auto-upgrade.nix diff --git a/modules/auto-upgrade.nix b/modules/auto-upgrade.nix index e41716b..46e3e7f 100644 --- a/modules/auto-upgrade.nix +++ b/modules/auto-upgrade.nix @@ -65,6 +65,8 @@ let ''; auto-upgrade-script = pkgs.writeShellScript "auto-upgrade" '' + ${pkgs.coreutils}/bin/nice -n 17 \ + ${pkgs.util-linux}/bin/ionice -c 3 \ ${pkgs.util-linux}/bin/flock /run/auto-upgrade-with-pinch ${ pkgs.writeShellScript "auto-upgrade-with-lock-held" '' set -eo pipefail @@ -181,12 +183,16 @@ let # Build in_tmpdir hydrate ${config.system.build.nixos-rebuild}/bin/nixos-rebuild build while read user;do + 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 []' ) + sync # Install hydrate ${config.system.build.nixos-rebuild}/bin/nixos-rebuild switch + sync while read user;do remove_arg=-r if [[ "$(userenv_query "$user" .otherPackagesAction)" == keep ]];then @@ -194,6 +200,7 @@ let fi hydrate /run/wrappers/bin/sudo -u "$user" \ ${pkgs.nix}/bin/nix-env -f '' $remove_arg -iA "$(userenv_query "$user" .package)" + sync done < <( config_query '.userEnvironments | keys []' ) '' }