pantheon/modules/programs/scripts/rebuild.sh
2025-04-08 09:50:09 +08:00

41 lines
685 B
Bash
Executable file

#!/bin/bash
rebuild_remote() {
hostname=$1
builder=localhost
nixos-rebuild switch --flake .#"${hostname}" --target-host "$(whoami)"@"${hostname}" --build-host "${builder}" --use-remote-sudo
}
main() {
if [[ $# -gt 1 ]]; then
echo "Only one argument is allowed. Pass in a hostname or all."
exit 1
elif [[ $# -lt 1 ]]; then
nh os switch .
exit 0
fi
git add .
case "$1" in
nemesis)
if [[ $HOSTNAME == "nemesis" ]]; then
nh os switch .
else
rebuild_remote nemesis
fi
exit 0
;;
all)
nh os switch . &&
rebuild_remote apollo
exit 0
;;
*)
rebuild_remote "$1"
exit 0
;;
esac
}
main "$@"