diff --git a/overlays/cascade-installer.nix b/overlays/cascade-installer.nix deleted file mode 100644 index 6f2597a..0000000 --- a/overlays/cascade-installer.nix +++ /dev/null @@ -1,63 +0,0 @@ -final: prev: { -cascade-installer = prev.writeShellApplication { - name="cascade-installer"; - runtimeInputs = with final; [ bash git parted util-linux jq ]; - text='' - usage() { - 1>&2 echo "usage: cascade-installer HOSTNAME BLOCKDEVTONUKE PROFILE" - } - if [ -z "$1" ] || [ -z "$2" ] || [ -z "$3" ];then - usage - exit 1 - fi - - HOSTNAME="$1" - BLOCKDEVTONUKE="$2" - PROFILE="$3" - - if ! [ -d /usr/src/cascade/profiles/"$PROFILE" ];then - 1>&2 echo "profile $PROFILE does not exist. possible options:" - (cd /usr/src/cascade/profiles/ && 1>&2 printf " %s\n" [a-zA-Z0-9]*) - exit 1 - fi - - mkdir -p /mnt - - # if the block device has children... - if lsblk -J "$BLOCKDEVTONUKE" | jq -e '.blockdevices[]|.children' > /dev/null ; then - 1>&2 echo "$BLOCKDEVTONUKE still has partitions. please clear the block device before installing" - exit 3 - fi - - parted "$BLOCKDEVTONUKE" -- mklabel gpt - parted "$BLOCKDEVTONUKE" -- mkpart primary 512MiB -2GiB - parted "$BLOCKDEVTONUKE" -- mkpart primary linux-swap -2GiB 100% - parted "$BLOCKDEVTONUKE" -- mkpart ESP fat32 1MiB 512MiB - parted "$BLOCKDEVTONUKE" -- set 3 esp on - parted "$BLOCKDEVTONUKE" -- name 1 nixos - parted "$BLOCKDEVTONUKE" -- name 2 nixos-swap - parted "$BLOCKDEVTONUKE" -- name 3 ESP - - sync - sleep 3 - - BLK_NIXOS="$(lsblk -OJ "$BLOCKDEVTONUKE" | jq -r '.blockdevices[].children[]|select(.partlabel == "nixos")|.name')" - BLK_SWAP="$(lsblk -OJ "$BLOCKDEVTONUKE" | jq -r '.blockdevices[].children[]|select(.partlabel == "nixos-swap")|.name')" - BLK_ESP="$(lsblk -OJ "$BLOCKDEVTONUKE" | jq -r '.blockdevices[].children[]|select(.partlabel == "ESP")|.name')" - mkfs.xfs -L nixos "$BLK_NIXOS" - mkswap -L nixos-swap "$BLK_SWAP" - mkfs.fat -F 32 -n BOOT "$BLK_ESP" - - mount "$BLK_NIXOS" /mnt - mkdir -p /mnt/boot /mnt/etc/nixos - sed -e ' - s#[(] *toString ../profiles/.*[)]#(toString /usr/src/cascade/profiles/'"$PROFILE"')# - s#networking.hostName = "nixos";#networking.hostName = "'"$HOSTNAME"'";# - ' < /usr/src/cascade/hosts/_basic.nix > /etc/nixos/configuration.nix - - swapon "$BLK_SWAP" - nixos-install - ''; - }; -} -