fikset wifi menu så der også kan vælges wifi netværk med kode
This commit is contained in:
@@ -1,15 +1,32 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Dette script viser en liste af Wi-Fi netværk i en korrekt positioneret Wofi-menu
|
||||
# og forsøger at forbinde til det valgte netværk.
|
||||
# Et avanceret script til at vælge og forbinde til Wi-Fi via wofi
|
||||
|
||||
# 1. Viser en liste af tilgængelige Wi-Fi SSID'er med nmcli
|
||||
# 2. Sender listen til wofi, som bruger vores specielle 'config-network' fil
|
||||
SSID=$(nmcli -t -f SSID device wifi list --rescan yes | sort -u | wofi --show dmenu --conf-file "$HOME/.config/wofi/config-network" --location top_right --x -70 --y 45 --width 200 --style "$HOME/.config/wofi/style.css" -p "Vælg Wi-Fi Netværk")
|
||||
# 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 \
|
||||
--show dmenu \
|
||||
--style "$HOME/.config/wofi/style.css" \
|
||||
--conf "$HOME/.config/wofi/config-network" \
|
||||
-p "Vælg Wi-Fi Netværk")
|
||||
|
||||
# 3. Hvis et netværk blev valgt (brugeren trykkede ikke Esc), så prøv at forbinde
|
||||
if [ -n "$SSID" ]; then
|
||||
# NetworkManager vil selv håndtere at spørge efter adgangskode via en grafisk prompt,
|
||||
# hvis det er en ny forbindelse.
|
||||
nmcli device wifi connect "$SSID"
|
||||
# Afslut hvis intet blev valgt (brugeren trykkede Esc)
|
||||
if [ -z "$CHOSEN_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
|
||||
|
||||
Reference in New Issue
Block a user