liminix/pkgs/min-copy-closure/liminix-rebuild.sh

27 lines
593 B
Bash
Raw Normal View History

2023-05-17 16:03:45 +02:00
#!/usr/bin/env bash
ssh_command=${SSH_COMMAND-ssh}
2023-12-27 18:47:42 +01:00
if [ "$1" = "--no-reboot" ] ; then
reboot="true"
shift
else
reboot="reboot"
fi
2023-05-17 16:03:45 +02:00
target_host=$1
shift
if [ -z "$target_host" ] ; then
2023-12-27 18:47:42 +01:00
echo Usage: liminix-rebuild [--no-reboot] target-host params
2023-05-17 16:03:45 +02:00
exit 1
fi
if toplevel=$(nix-build "$@" -A outputs.systemConfiguration --no-out-link); then
echo systemConfiguration $toplevel
min-copy-closure $target_host $toplevel
$ssh_command $target_host $toplevel/bin/install
$ssh_command $target_host "sync; source /etc/profile; reboot"
else
echo Rebuild failed
fi