nixos-configs/rebuild.sh
2025-02-25 17:17:26 -05:00

37 lines
1.3 KiB
Bash
Executable file

#!/usr/bin/env bash
HOSTNAME=$(hostname | tr '[:upper:]' '[:lower:]')
USERNAME="fabric"
# Check if an argument is provided
if [ $# -eq 0 ]; then
echo "No arguments provided. Usage:"
echo " ./rebuild.sh system # Rebuild NixOS configuration"
echo " ./rebuild.sh home # Rebuild home-manager configuration"
echo " ./rebuild.sh both # Rebuild both configurations"
exit 1
fi
case $1 in
"system")
echo "Rebuilding NixOS configuration for $HOSTNAME..."
sudo nixos-rebuild switch --flake .#$HOSTNAME
;;
"home")
echo "Rebuilding home-manager configuration for $USERNAME@$HOSTNAME..."
home-manager switch --flake .#$USERNAME@$HOSTNAME
;;
"both")
echo "Rebuilding NixOS configuration for $HOSTNAME..."
sudo nixos-rebuild switch --flake .#$HOSTNAME
echo "Rebuilding home-manager configuration for $USERNAME@$HOSTNAME..."
home-manager switch --flake .#$USERNAME@$HOSTNAME
;;
*)
echo "Invalid argument. Usage:"
echo " ./rebuild.sh system # Rebuild NixOS configuration"
echo " ./rebuild.sh home # Rebuild home-manager configuration"
echo " ./rebuild.sh both # Rebuild both configurations"
exit 1
;;
esac