Moderniseret wifi vælger
This commit is contained in:
@@ -1,32 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Et avanceret script til at vælge og forbinde til Wi-Fi via wofi
|
||||
# Et simpelt script til at vælge Wi-Fi og lade nm-applet håndtere passwords.
|
||||
|
||||
# Viser en renset liste af Wi-Fi SSID'er i vores special-placerede wofi-menu
|
||||
# Bruger `sed` til at fjerne stjernen '*' fra det aktive netværk for et renere look
|
||||
CHOSEN_SSID=$(nmcli --terse --fields=SSID,IN-USE device wifi list --rescan yes | sed '/\*/d' | sed 's/\\:/-/g' | sort -u | wofi \
|
||||
# Viser listen af netværk i vores stylede wofi-menu
|
||||
SSID=$(nmcli -t -f SSID,IN-USE device wifi list --rescan yes | sed '/\*/d' | sed 's/\\:/-/g' | sort -u | wofi \
|
||||
--show dmenu \
|
||||
--style "$HOME/.config/wofi/style.css" \
|
||||
--conf "$HOME/.config/wofi/config-network" \
|
||||
-p "Vælg Wi-Fi Netværk")
|
||||
|
||||
# Afslut hvis intet blev valgt (brugeren trykkede Esc)
|
||||
if [ -z "$CHOSEN_SSID" ]; then
|
||||
# Afslut hvis intet blev valgt
|
||||
if [ -z "$SSID" ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Tjek om der allerede findes en gemt forbindelse med dette navn
|
||||
# Vi bruger `grep -w` for at sikre et præcist match
|
||||
if nmcli connection show | grep -wq "^${CHOSEN_SSID}"; then
|
||||
# Hvis ja, bare aktiver den. NetworkManager bruger den gemte adgangskode.
|
||||
nmcli connection up "$CHOSEN_SSID"
|
||||
else
|
||||
# Hvis nej, er det et nyt netværk. Spørg efter adgangskode i et nyt wofi-vindue.
|
||||
# Dette vindue bruger standard wofi-konfigurationen og vises i midten.
|
||||
CHOSEN_PASSWORD=$(wofi --show dmenu --password -p "Adgangskode til: $CHOSEN_SSID")
|
||||
|
||||
# Kun fortsæt hvis en adgangskode blev indtastet
|
||||
if [ -n "$CHOSEN_PASSWORD" ]; then
|
||||
nmcli device wifi connect "$CHOSEN_SSID" password "$CHOSEN_PASSWORD"
|
||||
fi
|
||||
fi
|
||||
# Prøv at forbinde.
|
||||
# Hvis netværket kræver et password, og det ikke er gemt, vil den kørende
|
||||
# nm-applet agent nu automatisk åbne en pæn grafisk dialogboks.
|
||||
nmcli device wifi connect "$SSID"
|
||||
|
||||
Reference in New Issue
Block a user