37 lines
869 B
Bash
37 lines
869 B
Bash
#!/bin/sh
|
|
#wico.sh : choose a wifi signal in range and try to connect to it
|
|
|
|
verb=0
|
|
|
|
if ( nmcli radio wifi | grep disabled > /dev/null ) ; then
|
|
test $verb -gt 0 && echo "Turning wifi on"
|
|
nmcli radio wifi on
|
|
sleep 1
|
|
fi
|
|
|
|
test $verb -gt 0 && echo "Scanning networks in range..."
|
|
nmcli device wifi rescan
|
|
|
|
ssid=$(nmcli -f IN-USE,SSID,BARS d wifi list | dmenu -l 8 | tr -s '*' ' ' | rev | cut -d ' ' -f 3- | rev | cut -d ' ' -f 2-)
|
|
|
|
test $verb -gt 0 && echo ssid: $ssid
|
|
|
|
test -z "$ssid" && echo "No ssid selected" && exit 1
|
|
|
|
if (nmcli d wifi connect "$ssid" | grep Error ) ; then
|
|
|
|
test $verb -gt 0 && echo "Password required"
|
|
|
|
herbe "Wifi "$ssid" : Password required" &
|
|
|
|
psk=$(echo Wifi: "$ssid" | dmenu -p "Please (re)type password")
|
|
|
|
test $verb -gt 0 && echo $psk
|
|
|
|
nmcli d wifi connect "$ssid" password "$psk"
|
|
fi
|
|
|
|
herbe "$(nmcli | grep wlp2s0:)"
|
|
|
|
exit $?
|