mirror of
https://git.pvv.ntnu.no/Drift/pvv-nixos-config.git
synced 2025-06-27 17:23:30 +02:00
shell.nix: wrap nixos-rebuild with nix-output-monitor
\#nix-output-monitor-and-chill nom is only used if the output is a tty, and I provide a escape hatch in the form of NIX_NO_NOM=1. This solution sidesteps issues like `sudo nixos-rebuild ... |& nom` capturing the sudo password prompt.
This commit is contained in:
parent
1caa0cc7be
commit
bce1f0e912
2
justfile
2
justfile
@ -26,7 +26,7 @@ run-vm machine=`just _a_machine` *_:
|
||||
| xargs -d'\n' nix flake update "$@"
|
||||
|
||||
@repl $machine=`just _a_machine` *_:
|
||||
set -v; nixos-rebuild --flake .#"$machine" repl "${@:2}"
|
||||
set -v; NIX_NO_NOM=1 nixos-rebuild --flake .#"$machine" repl "${@:2}"
|
||||
|
||||
@eval $machine=`just _a_machine` $attrpath="system.build.toplevel.outPath" *_:
|
||||
set -v; nix eval {{nix_eval_opts}} ".#nixosConfigurations.\"$machine\".config.$attrpath" --show-trace "${@:3}"
|
||||
|
12
shell.nix
12
shell.nix
@ -1,6 +1,18 @@
|
||||
{ pkgs ? import <nixpkgs> {} }:
|
||||
|
||||
let
|
||||
nixos-rebuild-nom = pkgs.writeScriptBin "nixos-rebuild" ''
|
||||
if [[ -t 1 && -z "''${NIX_NO_NOM-}" ]]; then
|
||||
exec ${pkgs.lib.getExe pkgs.nixos-rebuild} -L "$@" |& ${pkgs.lib.getExe pkgs.nix-output-monitor}
|
||||
else
|
||||
exec ${pkgs.lib.getExe pkgs.nixos-rebuild} -L "$@"
|
||||
fi
|
||||
'';
|
||||
in
|
||||
|
||||
pkgs.mkShellNoCC {
|
||||
packages = with pkgs; [
|
||||
nixos-rebuild-nom
|
||||
just
|
||||
jq
|
||||
gum
|
||||
|
Loading…
x
Reference in New Issue
Block a user