diff options
author | Soispha <soispha@vhack.eu> | 2024-02-20 16:35:15 +0100 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2024-02-20 16:35:15 +0100 |
commit | cc09b607330385d6d81b9c47cf64a2442432e93f (patch) | |
tree | dc7e4503a3341b8936576c6339a70df4adaa2512 /bootstrap/99_ensure_config_variables | |
parent | refactor(hm/conf/zsh/config): Rework old config scripts (diff) | |
download | nixos-config-cc09b607330385d6d81b9c47cf64a2442432e93f.zip |
refactor(treewide): Add a `.sh` extension to shell scripts
Diffstat (limited to 'bootstrap/99_ensure_config_variables')
-rwxr-xr-x | bootstrap/99_ensure_config_variables | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/bootstrap/99_ensure_config_variables b/bootstrap/99_ensure_config_variables deleted file mode 100755 index ce8ffa0f..00000000 --- a/bootstrap/99_ensure_config_variables +++ /dev/null @@ -1,122 +0,0 @@ -#! /usr/bin/env dash - -# shellcheck source=/dev/null -SHELL_LIBRARY_VERSION="2.0.13" . %SHELL_LIBRARY_PATH - -if ! [ "$NIX_ENVIRONMENT_VARIABLES_SET" ]; then - if ! [ "$NIX_HOST" ]; then - msg "Select a host:" - _hosts=$(mktmp) - curl https://codeberg.org/soispha/nixos-config/raw/branch/prime/flake/nixosConfigurations/default.nix 2> /dev/null | awk -F '"' '/hosts = /{for (i=2;i<NF;i+=2) {print $i}}' > "$_hosts" - - while ! grep "$host" "$_hosts" > /dev/null || [ "$(printf "%s" "$host" | wc -c)" -eq 0 ]; do - i=1 - while read -r host_read; do - printf "%4s) %s \n" "$i" "$host_read" - i=$((i + 1)) - done < "$_hosts" - printf "%4s) Exit\n" "q" - readp "Enter a option: " host - - [ "$host" = "q" ] && exit 1 - host=$(awk -v i="$host" '{if (NR==i) {print $0}}' "$_hosts") - if ! grep "$host" "$_hosts" > /dev/null || [ "$(printf "%s" "$host" | wc -c)" -eq 0 ]; then - warning "No host selected. Select a host to continue.\n" - fi - done - - export NIX_HOST="$host" - fi - if ! [ "$NIX_DISK" ] && [ "$INSTALL" ]; then - available_disks="$(mktmp)" - lsblk -J | jq '.[] | map(.name) | [foreach .[] as $item ({item: null, index: -1}; {$item, index: (.index + 1)})]' > "$available_disks" - - [ "$(jq '.[]' "$available_disks" | wc -l)" -eq 0 ] && die "No disks found" - msg "Select a disk to format:" - - i=9999 # nobody will have so many disks attached - - while ! jq -e --argjson i "$i" '.[$i]' "$available_disks" > /dev/null 2>&1; do - for _disk in $(jq -c '.[]' "$available_disks"); do - printf "%4s) %s \n" "$(echo "$_disk" | jq '.index')" "$(echo "$_disk" | jq '.item' | tr -d "\"")" - done - printf "%4s) Exit\n" "q" - readp "Enter a option: " _disk - - if [ "$_disk" = "q" ]; then - exit 1 - else - i="$_disk" - fi - if jq -e --argjson i "$i" 'nth($i)' "$available_disks" > /dev/null 2>&1; then - _disk=$(mktmp) - jq -e --argjson i "$i" 'nth($i)' "$available_disks" > "$_disk" - else - warning "No disk selected. Select a disk to continue.\n" - fi - done - - warn "All data on disk $(jq '.item' "$_disk") will be deleted." - readp "Continue with this disk? [N/y]: " result - case "$result" in - [Yy]) - msg "Great, continuing..." - _disk="$(jq '.item' "$_disk" | tr -d "\"")" - _disk_serial="$(udevadm info --query=all --name="$_disk" | grep ID_SERIAL= | awk 'BEGIN{FS="="}{print $2}')" - case "$_disk" in - "nvme"*) - _nix_disk="nvme-$_disk_serial" - ;; - "sd"*) - _nix_disk="ata-$_disk_serial" - ;; - *) - die "Disk with name '$_disk' and serial '$_disk_serial' not yet supported!" - ;; - esac - export NIX_DISK="$_nix_disk" - ;; - *) - msg "Sure, keep your data" - exit 1 - ;; - esac - fi - - if ! [ "$ACTIVATE_TO_SETUP" ] && ! [ "$INSTALL" ]; then - readp "Do you want to continue with nixos-install after activation? [N/y]: " result - case $result in - [Yy]) - export ACTIVATE_TO_SETUP=yes - ;; - *) - export ACTIVATE_TO_SETUP=no - ;; - esac - fi - if ! [ "$INSTALL_TO_SETUP" ] && [ "$INSTALL" ]; then - readp "Do you want to continue with nixos-install after disk formatting? [N/y]: " result - case $result in - [Yy]) - export INSTALL_TO_SETUP=yes - ;; - *) - export INSTALL_TO_SETUP=no - ;; - esac - fi - if ! [ "$SETUP_TO_CONFIG_SETUP" ]; then - readp "Do you want to continue with the user configuration setup after setup? [N/y]: " result - case $result in - [Yy]) - export SETUP_TO_CONFIG_SETUP=yes - ;; - *) - export SETUP_TO_CONFIG_SETUP=no - ;; - esac - fi - export NIX_ENVIRONMENT_VARIABLES_SET="set"; -fi - -# vim: ft=sh |