generated from ztimson/template
All checks were successful
Code review / review (pull_request) Successful in 33s
46 lines
1.8 KiB
Bash
46 lines
1.8 KiB
Bash
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
SCRIPT_URL="https://git.zakscode.com/ztimson/fallback-ap/raw/branch/master/fallback-ap.sh"
|
|
INSTALL_PATH="/usr/local/bin/fallback-ap"
|
|
|
|
if [ "$EUID" -ne 0 ]; then
|
|
echo "This installer needs to run as root, e.g.:"
|
|
echo " curl -sL https://git.zakscode.com/ztimson/fallback-ap/raw/branch/master/install.sh | sudo bash"
|
|
exit 1
|
|
fi
|
|
|
|
prompt() {
|
|
local __var="$1" __question="$2" __default="$3" __answer=""
|
|
read -r -p "$__question [$__default]: " __answer < /dev/tty || __answer=""
|
|
printf -v "$__var" '%s' "${__answer:-$__default}"
|
|
}
|
|
|
|
EXISTING_CONFIG="/etc/fallback-ap.conf"
|
|
|
|
if [ -f "$EXISTING_CONFIG" ]; then
|
|
# shellcheck disable=SC1090
|
|
source "$EXISTING_CONFIG"
|
|
fi
|
|
|
|
DEFAULT_SSID="${SAVED_SSID:-$(hostname)}"
|
|
DEFAULT_PASSWORD="${SAVED_PASSWORD:-guesswhatitis}"
|
|
DEFAULT_CIDR="${SAVED_CIDR:-10.10.10.1/24}"
|
|
DEFAULT_DHCP_START_OCTET="${SAVED_DHCP_START_OCTET:-100}"
|
|
DEFAULT_DHCP_END_OCTET="${SAVED_DHCP_END_OCTET:-250}"
|
|
|
|
[ -z "${FALLBACK_AP_SSID:-}" ] && prompt FALLBACK_AP_SSID "Access point SSID" "$DEFAULT_SSID"
|
|
[ -z "${FALLBACK_AP_PASSWORD:-}" ] && prompt FALLBACK_AP_PASSWORD "Access point passphrase" "$DEFAULT_PASSWORD"
|
|
[ -z "${FALLBACK_AP_CIDR:-}" ] && prompt FALLBACK_AP_CIDR "Access point subnet (CIDR)" "$DEFAULT_CIDR"
|
|
[ -z "${FALLBACK_AP_DHCP_START_OCTET:-}" ] && prompt FALLBACK_AP_DHCP_START_OCTET "DHCP range start (last octet)" "$DEFAULT_DHCP_START_OCTET"
|
|
[ -z "${FALLBACK_AP_DHCP_END_OCTET:-}" ] && prompt FALLBACK_AP_DHCP_END_OCTET "DHCP range end (last octet)" "$DEFAULT_DHCP_END_OCTET"
|
|
|
|
export FALLBACK_AP_SSID FALLBACK_AP_PASSWORD FALLBACK_AP_CIDR FALLBACK_AP_DHCP_START_OCTET FALLBACK_AP_DHCP_END_OCTET
|
|
|
|
echo "Downloading fallback-ap..."
|
|
curl -fsSL "$SCRIPT_URL" -o "$INSTALL_PATH"
|
|
chmod +x "$INSTALL_PATH"
|
|
echo "Running installer..."
|
|
"$INSTALL_PATH" install
|