31 lines
806 B
Bash
Executable File
31 lines
806 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# ---------------- CONFIG ----------------
|
|
SRC_FOLDER="./nixos" # folder in your repo
|
|
DEST_FOLDER="/etc/nixos" # target folder
|
|
# ----------------------------------------
|
|
|
|
# Check for root
|
|
if [[ $EUID -ne 0 ]]; then
|
|
echo "This script must be run as root (sudo)." 1>&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "Copying files from '$SRC_FOLDER' to '$DEST_FOLDER'..."
|
|
|
|
# Backup existing /etc/nixos (optional)
|
|
BACKUP_DIR="/etc/nixos.bak.$(date +%Y%m%d%H%M%S)"
|
|
echo "Backing up current /etc/nixos to $BACKUP_DIR"
|
|
cp -r "$DEST_FOLDER" "$BACKUP_DIR"
|
|
|
|
# Copy files
|
|
cp -a "$SRC_FOLDER/." "$DEST_FOLDER/"
|
|
|
|
echo "Done! Files from '$SRC_FOLDER' have been copied to '$DEST_FOLDER'."
|
|
# echo "You may now run 'sudo nixos-rebuild switch' if needed."
|
|
|
|
nixos-rebuild switch --fast
|
|
|
|
echo "Done!"
|