mirror of
https://gitlab.archlinux.org/tpowa/archboot.git
synced 2024-09-20 03:50:37 +02:00
functionalize wifi and cleanup
This commit is contained in:
parent
da3634cb5c
commit
beb862a063
1 changed files with 67 additions and 63 deletions
|
@ -18,36 +18,7 @@ essid_scan() {
|
|||
done
|
||||
}
|
||||
|
||||
# donetwork()
|
||||
# Hand-hold through setting up networking
|
||||
#
|
||||
# args: none
|
||||
# returns: 1 on failure
|
||||
donetwork() {
|
||||
S_NET=0
|
||||
NETPARAMETERS=""
|
||||
while [[ "${NETPARAMETERS}" = "" ]]; do
|
||||
# select network interface
|
||||
INTERFACE=
|
||||
ifaces=$(net_interfaces)
|
||||
while [[ "${INTERFACE}" = "" ]]; do
|
||||
#shellcheck disable=SC2086
|
||||
DIALOG --ok-label "Select" --menu "Select a network interface:" 14 55 7 ${ifaces} 2>"${ANSWER}"
|
||||
case $? in
|
||||
1) return 1 ;;
|
||||
0) INTERFACE=$(cat "${ANSWER}") ;;
|
||||
esac
|
||||
done
|
||||
if echo "${INTERFACE}" | grep -q wlan >/dev/null; then
|
||||
CONNECTION="wireless"
|
||||
else
|
||||
CONNECTION="ethernet"
|
||||
fi
|
||||
# profile name
|
||||
NETWORK_PROFILE=""
|
||||
DIALOG --inputbox "Enter your network profile name:" 7 40 "${INTERFACE}-${CONNECTION}" 2>"${ANSWER}" || return 1
|
||||
NETWORK_PROFILE=/etc/systemd/network/$(cat "${ANSWER}").network
|
||||
# wireless switch
|
||||
do_wireless() {
|
||||
WLAN_HIDDEN=""
|
||||
WLAN_ESSID=""
|
||||
WLAN_SECURITY=""
|
||||
|
@ -86,22 +57,22 @@ donetwork() {
|
|||
[[ -z "${WLAN_KEY}" ]] || echo "psk=\"${WLAN_KEY}\"" >> "${WPA_PROFILE}"
|
||||
echo "}" >> "${WPA_PROFILE}"
|
||||
echo "wpa_supplicant config saved to ${WPA_PROFILE}." > "${LOG}"
|
||||
echo "Starting wpa_supplicant@${INTERFACE}.service ..." > "${LOG}"
|
||||
echo "Starting wpa_supplicant@${INTERFACE} ..." > "${LOG}"
|
||||
#shellcheck disable=2086
|
||||
systemctl restart wpa_supplicant@${INTERFACE}.service
|
||||
AUTH_COUNT="0"
|
||||
DIALOG --infobox "Waiting 30 seconds for authentification ..." 3 60
|
||||
#shellcheck disable=2086
|
||||
while ! systemctl status wpa_supplicant@${INTERFACE}.service | grep -qw CTRL-EVENT-CONNECTED > /dev/null 2>&1; do
|
||||
while ! systemctl status wpa_supplicant@${INTERFACE} | grep -qw "CTRL-EVENT-CONNECTED"; do
|
||||
sleep 1
|
||||
AUTH_COUNT="$((AUTH_COUNT+1))"
|
||||
systemctl status wpa_supplicant@${INTERFACE}.service | grep -qw CTRL-EVENT-DISCONNECTED > /dev/null 2&>1 && break
|
||||
systemctl status wpa_supplicant@${INTERFACE} | grep -qw "CTRL-EVENT-DISCONNECTED" && break
|
||||
[[ "${AUTH_COUNT}" == "30" ]] && break
|
||||
done
|
||||
#shellcheck disable=2086
|
||||
if systemctl status wpa_supplicant@${INTERFACE}.service | grep -qw CTRL-EVENT-CONNECTED ; then
|
||||
if systemctl status wpa_supplicant@${INTERFACE} | grep -qw "CTRL-EVENT-CONNECTED"; then
|
||||
WPA_AUTH="1"
|
||||
echo "wpa_supplicant@${INTERFACE}.service" > /tmp/.wpa_supplicant
|
||||
echo "wpa_supplicant@${INTERFACE}" > /tmp/.wpa_supplicant
|
||||
DIALOG --infobox "Authentification successfull. Continuing in 3 seconds ..." 3 70
|
||||
sleep 3
|
||||
else
|
||||
|
@ -110,6 +81,39 @@ donetwork() {
|
|||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
# donetwork()
|
||||
# Hand-hold through setting up networking
|
||||
#
|
||||
# args: none
|
||||
# returns: 1 on failure
|
||||
donetwork() {
|
||||
S_NET=0
|
||||
NETPARAMETERS=""
|
||||
while [[ "${NETPARAMETERS}" = "" ]]; do
|
||||
# select network interface
|
||||
INTERFACE=
|
||||
ifaces=$(net_interfaces)
|
||||
while [[ "${INTERFACE}" = "" ]]; do
|
||||
#shellcheck disable=SC2086
|
||||
DIALOG --ok-label "Select" --menu "Select a network interface:" 14 55 7 ${ifaces} 2>"${ANSWER}"
|
||||
case $? in
|
||||
1) return 1 ;;
|
||||
0) INTERFACE=$(cat "${ANSWER}") ;;
|
||||
esac
|
||||
done
|
||||
if echo "${INTERFACE}" | grep -q wlan >/dev/null; then
|
||||
CONNECTION="wireless"
|
||||
else
|
||||
CONNECTION="ethernet"
|
||||
fi
|
||||
# profile name
|
||||
NETWORK_PROFILE=""
|
||||
DIALOG --inputbox "Enter your network profile name:" 7 40 "${INTERFACE}-${CONNECTION}" 2>"${ANSWER}" || return 1
|
||||
NETWORK_PROFILE=/etc/systemd/network/$(cat "${ANSWER}").network
|
||||
# wifi setup first
|
||||
do_wireless
|
||||
# dhcp switch
|
||||
IP=""
|
||||
DIALOG --yesno "Do you want to use DHCP?" 5 40
|
||||
|
|
Loading…
Reference in a new issue