moar progress
This commit is contained in:
parent
fdd9ec1568
commit
99605585e1
5 changed files with 50 additions and 10 deletions
46
install.sh
46
install.sh
|
@ -72,19 +72,59 @@ args() {
|
|||
args_ensure_is_set "--host" "$DOTNIX_HOSTNAME"
|
||||
}
|
||||
|
||||
sed_safe () {
|
||||
# I got this off of some random StackOverflow answer. Don't put too much trust in this.
|
||||
printf "%s" "$1" | sed -r 's/([\$\.\*\/\[\\^])/\\\1/g' | sed 's/[]]/\[]]/g'
|
||||
}
|
||||
|
||||
partition_num_for_device() {
|
||||
parent_dir="$(basename "$(dirname "$1")")"
|
||||
if [ "$parent_dir" = "disk" ]; then
|
||||
>&2 echo "Don't use persistent device names. They will automatically be set later on."
|
||||
exit 1
|
||||
elif [ "$parent_dir" = "mapper" ]; then
|
||||
>&2 echo "lvm volumes are not supported."
|
||||
exit 1
|
||||
elif [ "$parent_dir" != "dev" ]; then
|
||||
>&2 echo "Block device directory not recognized: $parent_dir"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case "$(basename "$1")" in
|
||||
"nvme"* | "mmcblk"*)
|
||||
printf "%s" "${1}p${2}"
|
||||
;;
|
||||
"sda"* | "vda"* | "hda"*)
|
||||
printf "%s" "${1}${2}"
|
||||
;;
|
||||
*)
|
||||
>&2 echo "Invalid block device type '$(basename "$1")'"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
update_managed_values() {
|
||||
echo "piss"
|
||||
sed -i 's/\( *device = \)".*"\(; #.*\)/\1"'"$(sed_safe "$DOTNIX_INSTALL_DEVICE")"'"\2/' "./hosts/$DOTNIX_HOSTNAME/default.nix"
|
||||
sed -i 's/\( *device = \)".*"\(; #.*\)/\1"'"$(sed_safe "$DOTNIX_INSTALL_DEVICE")"'"\2/' "./hosts/$DOTNIX_HOSTNAME/disko.nix"
|
||||
sed -i 's/\( *MNT_PART=\)".*"\( #.*\)/\1"'"$(sed_safe \
|
||||
"$(partition_num_for_device "$DOTNIX_INSTALL_DEVICE" "2")")"'"\2/' "./hosts/$DOTNIX_HOSTNAME/disko.nix"
|
||||
}
|
||||
|
||||
main () {
|
||||
args "$@"
|
||||
|
||||
update_managed_values
|
||||
|
||||
if [ "$(id -u)" != "0" ]; then
|
||||
>&2 echo "The installation script must be run as root to work."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ ! -d /sys/firmware/efi ]; then
|
||||
>&2 echo "Legacy BIOS is unsupported"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
update_managed_values
|
||||
}
|
||||
|
||||
set -e
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue