#!/usr/bin/env bash # Begin: curl https://git.sovransystems.com/Sovran_Systems/Sovran_SystemsOS/raw/branch/main/for_new_sovran_pros/psp.sh -o psp.sh GREEN="\e[32m" LIGHTBLUE="\e[94m" ENDCOLOR="\e[0m" lsblk echo -e "${GREEN}What block for file-tree-root of drive (usually nvme0n1)?${ENDCOLOR}";read commitroot parted /dev/"$commitroot" -- mklabel gpt parted /dev/"$commitroot" -- mkpart primary 512MB -16GB parted /dev/"$commitroot" -- mkpart swap linux-swap -16GB 100% parted /dev/"$commitroot" -- mkpart ESP fat32 1MB 512MB parted /dev/"$commitroot" -- set 3 esp on lsblk echo -e "${GREEN}What partition for Boot-Partition (usually nvme0n1p1)?${ENDCOLOR}";read commitbootpartition echo -e "${GREEN}What partition for Main-Partition (usually nvme0n1p2)?${ENDCOLOR}";read commitmainpartition echo -e "${GREEN}What partition for Swap-Partition (usually nvme0n1p3)?${ENDCOLOR}";read commitswappartition mkfs.ext4 -L nixos /dev/"$commitmainpartition" mkswap -L swap /dev/"$commitswappartition" mkfs.fat -F 32 -n boot /dev/"$commitbootpartition" mount /dev/disk/by-label/nixos /mnt mkdir -p /mnt/boot/efi mount /dev/disk/by-label/boot /mnt/boot/efi nixos-generate-config --root /mnt rm /mnt/etc/nixos/configuration.nix cat <> /mnt/etc/nixos/configuration.nix { config, pkgs, ... }: { imports = [ ./hardware-configuration.nix ]; boot.loader.systemd-boot.enable = true; boot.loader.efi.canTouchEfiVariables = true; boot.loader.efi.efiSysMountPoint = "/boot/efi"; nix.settings.experimental-features = [ "nix-command" "flakes" ]; users.users = { free = { isNormalUser = true; description = "free"; extraGroups = [ "networkmanager" ]; }; }; environment.systemPackages = with pkgs; [ wget git ranger fish pwgen openssl ]; services.openssh = { enable = true; permitRootLogin = "yes"; }; } EOT nixos-install reboot