Moderniseret wifi vælger

This commit is contained in:
2025-06-29 14:50:33 +02:00
parent 329c54f5e5
commit 424f7e69b1
2 changed files with 10 additions and 22 deletions

View File

@@ -13,6 +13,7 @@ exec-once = swayidle -w \
resume 'hyprctl dispatch dpms on' \
timeout 600 'systemctl suspend' \
before-sleep '/home/{{ username }}/.local/bin/lock-screen.sh'
exec-once = nm-applet --indicator &
# ---------------------------------------------------

View File

@@ -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"