#!/usr/bin/env bash init() { # Vars CURRENT_USERNAME='frostphoenix' # Colors NORMAL=$(tput sgr0) WHITE=$(tput setaf 7) BLACK=$(tput setaf 0) RED=$(tput setaf 1) GREEN=$(tput setaf 2) YELLOW=$(tput setaf 3) BLUE=$(tput setaf 4) MAGENTA=$(tput setaf 5) CYAN=$(tput setaf 6) BRIGHT=$(tput bold) UNDERLINE=$(tput smul) } comfirm() { echo -en "[${GREEN}y${NORMAL}/${RED}n${NORMAL}]: " read -n 1 -r echo if [[ $REPLY =~ ^[Nn]$ ]] then exit 0 fi } print_header() { echo -E "$CYAN _____ _ ____ _ _ | ___| __ ___ ___| |_| _ \| |__ ___ ___ _ __ (_)_ __ | |_ | '__/ _ \/ __| __| |_) | '_ \ / _ \ / _ \ '_ \| \ \/ / | _|| | | (_) \__ \ |_| __/| | | | (_) | __/ | | | |> < |_| |_| \___/|___/\__|_| |_| |_|\___/ \___|_| |_|_/_/\_\ _ _ _ ___ ___ _ _ _ | \ | (_)_ __/ _ \ ___ |_ _|_ __ ___| |_ __ _| | | ___ _ __ | \| | \ \/ / | | / __| | || '_ \/ __| __/ _' | | |/ _ \ '__| | |\ | |> <| |_| \__ \ | || | | \__ \ || (_| | | | __/ | |_| \_|_/_/\_\\\\___/|___/ |___|_| |_|___/\__\__,_|_|_|\___|_| $BLUE https://github.com/Frost-Phoenix $RED ! TO MAKE SURE EVERYTHING RUNS CORRECTLY RUN AS ROOT ! $GREEN -> '"sudo bash install.sh"' $NORMAL " } get_username() { echo -en "Enter your$GREEN username$NORMAL : $YELLOW" read username echo -en "$NORMAL" echo -en "Use$YELLOW "$username"$NORMAL as ${GREEN}username${NORMAL} ? " comfirm } set_username() { sed -i -e "s/${CURRENT_USERNAME}/${username}/g" ./flake.nix sed -i -e "s/${CURRENT_USERNAME}/${username}/g" ./modules/home/audacious/config } install() { echo -e "\n${RED}START INSTALL PHASE${NORMAL}\n" sleep 0.2 # Create basic directories echo -e "Creating folders:" echo -e " - ${MAGENTA}~/Music${NORMAL}" echo -e " - ${MAGENTA}~/Documents${NORMAL}" echo -e " - ${MAGENTA}~/Pictures/wallpapers/others${NORMAL}" mkdir -p ~/Music mkdir -p ~/Documents mkdir -p ~/Pictures/wallpapers/others sleep 0.2 # Copy the wallpapers echo -e "Copying all ${MAGENTA}wallpapers${NORMAL}" cp wallpapers/wallpaper.png ~/Pictures/wallpapers cp wallpapers/otherWallpaper/* ~/Pictures/wallpapers/others/ sleep 0.2 # Get the hardware configuration echo -e "Copying ${MAGENTA}/etc/nixos/hardware-configuration.nix${NORMAL} to ${MAGENTA}./hosts/nixos/${NORMAL}\n" cp /etc/nixos/hardware-configuration.nix hosts/nixos/hardware-configuration.nix sleep 0.2 # Last Confirmation echo -en "You are about to start the system build, do you want to process ? " comfirm # Build the systhem (flakes + home manager) echo -e "\nBuilding the system...\n" sudo nixos-rebuild switch --flake .#nixos } main() { init print_header get_username set_username install } main && exit 0