update iw listing

This commit is contained in:
Tobias Powalowski 2024-06-27 15:00:46 +02:00
parent 3ca01c85dc
commit 1b264412e4

View file

@ -36,12 +36,21 @@ _essid_scan() {
done done
} }
_essid_list() {
# only show lines with signal '*'
# kill spaces from the end and replace spaces with + between
# '+' character is one of 6 forbidden characters in SSID standard
for dev in $(iwctl station "${_INTERFACE}" get-networks | rg -o ' {6}(.{34}).*\*' -r '$1' | sd ' *$' ''); do
echo "\"${dev}\""
[[ "${1}" ]] && echo "${1}"
done
}
_wireless() { _wireless() {
_WLAN_HIDDEN="" _WLAN_HIDDEN=""
_WLAN_SSID="" _WLAN_SSID=""
_WLAN_KEY="" _WLAN_KEY=""
_WLAN_AUTH="" _WLAN_AUTH=""
# unblock all interfaces! # unblock all interfaces!
rfkill unblock all rfkill unblock all
# disconnect the interface first! # disconnect the interface first!
@ -54,9 +63,7 @@ _wireless() {
_essid_scan | _dialog --title " Network Configuration " --no-mouse --gauge "Scanning 5 second(s) for SSIDs with interface ${_INTERFACE}..." 6 60 _essid_scan | _dialog --title " Network Configuration " --no-mouse --gauge "Scanning 5 second(s) for SSIDs with interface ${_INTERFACE}..." 6 60
#shellcheck disable=SC2086,SC2046 #shellcheck disable=SC2086,SC2046
if _dialog --cancel-label "${_LABEL}" --title " SSID Scan Result " --menu "Empty spaces in your SSID are replaced by '+' char" 13 60 6 \ if _dialog --cancel-label "${_LABEL}" --title " SSID Scan Result " --menu "Empty spaces in your SSID are replaced by '+' char" 13 60 6 \
"RESCAN" "SSIDs" "HIDDEN" "SSID" \ "RESCAN" "SSIDs" "HIDDEN" "SSID" $(_essid_list _) 2>"${_ANSWER}"; then
$(iwctl station "${_INTERFACE}" get-networks |\
rg -o ' {6}(.{34}).*\*' -r '"$1' | sd ' *$' '" _\n') 2>"${_ANSWER}"; then
_WLAN_SSID=$(cat "${_ANSWER}") _WLAN_SSID=$(cat "${_ANSWER}")
_CONTINUE=1 _CONTINUE=1
if rg -q 'RESCAN' "${_ANSWER}"; then if rg -q 'RESCAN' "${_ANSWER}"; then