rebuild app pretty print #21
3 changed files with 34 additions and 12 deletions
|
|
@ -7,6 +7,8 @@
|
||||||
hostname,
|
hostname,
|
||||||
nix,
|
nix,
|
||||||
nixos-rebuild-ng,
|
nixos-rebuild-ng,
|
||||||
|
nix-output-monitor,
|
||||||
|
dix,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
|
@ -26,5 +28,7 @@ writeShellApplication {
|
||||||
hostname
|
hostname
|
||||||
nix
|
nix
|
||||||
nixos-rebuild-ng
|
nixos-rebuild-ng
|
||||||
|
nix-output-monitor
|
||||||
|
dix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -60,15 +60,24 @@ Rebuild_nixos() {
|
||||||
fi
|
fi
|
||||||
[ -n "$TARGET_HOST" ] && CMD+=("--target-host" "$TARGET_HOST")
|
[ -n "$TARGET_HOST" ] && CMD+=("--target-host" "$TARGET_HOST")
|
||||||
|
|
||||||
# Rebuild NixOS configuration
|
# Build config first so we can diff it
|
||||||
|
local BUILD_CMD=("nixos-rebuild" "build" "--flake" "$FLAKE")
|
||||||
|
[ "$SHOW_TRACE" = 1 ] && BUILD_CMD+=("--show-trace")
|
||||||
|
[ -n "$BUILD_HOST" ] && BUILD_CMD+=("--build-host" "$BUILD_HOST")
|
||||||
if [ "$ROLLBACK" = 0 ]; then
|
if [ "$ROLLBACK" = 0 ]; then
|
||||||
echo "Rebuilding NixOS configuration '$FLAKE'..."
|
echo "Building NixOS configuration '$FLAKE'..."
|
||||||
|
echo "Executing command: ${BUILD_CMD[*]}"
|
||||||
|
"${BUILD_CMD[@]}" |&nom || error "NixOS build failed"
|
||||||
|
echo "Package diff:"
|
||||||
|
dix /run/current-system result
|
||||||
|
rm result
|
||||||
else
|
else
|
||||||
echo "Rolling back to last NixOS generation..."
|
echo "Rolling back to last NixOS generation..."
|
||||||
fi
|
fi
|
||||||
|
echo "Switching to new NixOS configuration"
|
||||||
|
sudo -v
|
||||||
echo "Executing command: ${CMD[*]}"
|
echo "Executing command: ${CMD[*]}"
|
||||||
"${CMD[@]}" || error "NixOS rebuild failed"
|
"${CMD[@]}" |& nom || error "NixOS rebuild failed"
|
||||||
echo "NixOS rebuild completed successfully."
|
echo "NixOS rebuild completed successfully."
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -91,15 +100,22 @@ Rebuild_home() {
|
||||||
[ "$SHOW_TRACE" = 1 ] && CMD+=("--show-trace")
|
[ "$SHOW_TRACE" = 1 ] && CMD+=("--show-trace")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Rebuild Home Manager configuration
|
# Build config first so we can diff it
|
||||||
if [ "$ROLLBACK" = 0 ]; then
|
if [ "$ROLLBACK" = 0 ]; then
|
||||||
echo "Rebuilding Home Manager configuration '$FLAKE'..."
|
local BUILD_CMD=("home-manager" "build" "--flake" "$FLAKE")
|
||||||
|
[ "$SHOW_TRACE" = 1 ] && BUILD_CMD+=("--show-trace")
|
||||||
|
echo "Building Home Manager configuration '$FLAKE'..."
|
||||||
|
echo "Executing command: ${BUILD_CMD[*]}"
|
||||||
|
"${BUILD_CMD[@]}" |& nom || error "Home Manager build failed"
|
||||||
|
echo "Package diff:"
|
||||||
|
dix /run/current-system result
|
||||||
|
rm result
|
||||||
else
|
else
|
||||||
echo "Rolling back to last Home Manager generation..."
|
echo "Rolling back to last Home Manager generation..."
|
||||||
fi
|
fi
|
||||||
|
echo "Switching to new Home Manager configuration"
|
||||||
echo "Executing command: ${CMD[*]}"
|
echo "Executing command: ${CMD[*]}"
|
||||||
"${CMD[@]}" || error "Home Manager rebuild failed"
|
"${CMD[@]}" |& nom || error "Home Manager rebuild failed"
|
||||||
echo "Home Manager rebuild completed successfully."
|
echo "Home Manager rebuild completed successfully."
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -227,10 +243,10 @@ fi
|
||||||
[ "$UPDATE" = 1 ] && Update
|
[ "$UPDATE" = 1 ] && Update
|
||||||
|
|
||||||
case "$COMMAND" in
|
case "$COMMAND" in
|
||||||
nixos)
|
nixos|os)
|
||||||
Rebuild_nixos
|
Rebuild_nixos
|
||||||
;;
|
;;
|
||||||
home)
|
home|hm)
|
||||||
Rebuild_home
|
Rebuild_home
|
||||||
;;
|
;;
|
||||||
all)
|
all)
|
||||||
|
|
|
||||||
|
|
@ -32,6 +32,8 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
nix.settings.warn-dirty = mkDefault false;
|
||||||
|
|
||||||
# fallback quickly if substituters are not available.
|
# fallback quickly if substituters are not available.
|
||||||
nix.settings.connect-timeout = mkDefault 5;
|
nix.settings.connect-timeout = mkDefault 5;
|
||||||
nix.settings.fallback = true;
|
nix.settings.fallback = true;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue