#!/bin/bash set -euo pipefail baseDir="$(realpath "$(dirname "${0}")")" option='start' while [[ ! "${option}" == 'Exit' ]]; do printf '\033[?47h\033[2J\033[H' cat << EOF ####################################### ## ## ## $(cat "${baseDir}/title") Script ## ## ## ## Jean ## ## ## ####################################### ################# ## ## ## Main Menu ## ## ## ################# EOF select option in 'List' 'Configure' 'Pre Install' 'Install' 'WiFi Setup' 'Post Install' 'Finalize' 'Exit' do case "${option}" in 'List'|'Configure'|'Pre Install'|'Install'|'WiFi Setup'|'Post Install'|'Finalize'|'Exit') break ;; *) printf 'Invalid option\n' ;; esac done printf '\033[2J\033[H' if [[ "${option}" == 'List' ]]; then "${baseDir}/list.sh" elif [[ "${option}" == 'Configure' ]]; then "${baseDir}/configure.sh" elif [[ "${option}" == 'Pre Install' ]]; then "${baseDir}/pre-inst.sh" elif [[ "${option}" == 'Install' ]]; then "${baseDir}/install.sh" elif [[ "${option}" == 'WiFi Setup' ]]; then "${baseDir}/wifi.sh" elif [[ "${option}" == 'Post Install' ]]; then "${baseDir}/post-inst.sh" elif [[ "${option}" == 'Finalize' ]]; then "${baseDir}/finalize.sh" fi printf '\033[?47h\033[2J\033[H' done printf '\033[?47l'