Added wifi click behavior.
This commit is contained in:
parent
f0fd387fbf
commit
aee151dbb9
|
@ -1,77 +1,86 @@
|
|||
{
|
||||
"layer": "top",
|
||||
"height": 35,
|
||||
"modules-left": ["sway/workspaces", "sway/mode", "custom/media"],
|
||||
"modules-center": ["sway/window"],
|
||||
"modules-right": ["pulseaudio", "custom/network","backlight", "battery", "clock", "tray", "idle_inhibitor"],
|
||||
"sway/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true
|
||||
},
|
||||
"sway/mode": {
|
||||
"format": "<span style=\"italic\">{}</span>"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"tooltip-format": "{:%Y-%m-%d | %H:%M}",
|
||||
"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"backlight": {
|
||||
"format": "{icon} {percent}% ",
|
||||
"format-icons": ["", "", "", ""]
|
||||
},
|
||||
"battery": {
|
||||
"interval": 1,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": " {capacity}%",
|
||||
"format-discharging": "{icon} {capacity}%",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"format-bluetooth": "{volume}% {icon}",
|
||||
"format-muted": "",
|
||||
"format-icons": {
|
||||
"headphones": "",
|
||||
"handsfree": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", ""]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{icon} {}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"on-click": "playerctl play-pause",
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/custom_modules/mediaplayer.py 2> /dev/null"
|
||||
},
|
||||
"custom/network": {
|
||||
"escape" :true,
|
||||
"exec": "$HOME/.config/waybar/custom_modules/wifi.sh 2> /dev/null",
|
||||
"on-click": "rofi-wifi-menu",
|
||||
"restart-interval": 1,
|
||||
"return-type": "json"
|
||||
"layer": "top",
|
||||
"height": 35,
|
||||
"modules-left": ["sway/workspaces", "sway/mode", "custom/media"],
|
||||
"modules-center": ["sway/window"],
|
||||
"modules-right": [
|
||||
"pulseaudio",
|
||||
"custom/network",
|
||||
"backlight",
|
||||
"battery",
|
||||
"clock",
|
||||
"tray",
|
||||
"idle_inhibitor"
|
||||
],
|
||||
"sway/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true
|
||||
},
|
||||
"sway/mode": {
|
||||
"format": "<span style=\"italic\">{}</span>"
|
||||
},
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": "",
|
||||
"deactivated": ""
|
||||
}
|
||||
},
|
||||
"tray": {
|
||||
"spacing": 10
|
||||
},
|
||||
"clock": {
|
||||
"tooltip-format": "{:%Y-%m-%d | %H:%M}",
|
||||
"format-alt": "{:%Y-%m-%d}"
|
||||
},
|
||||
"backlight": {
|
||||
"format": "{icon} {percent}% ",
|
||||
"format-icons": ["", "", "", ""]
|
||||
},
|
||||
"battery": {
|
||||
"interval": 1,
|
||||
"states": {
|
||||
"good": 95,
|
||||
"warning": 30,
|
||||
"critical": 15
|
||||
},
|
||||
"format": " {capacity}%",
|
||||
"format-discharging": "{icon} {capacity}%",
|
||||
"format-icons": ["", "", "", "", ""]
|
||||
},
|
||||
"pulseaudio": {
|
||||
"format": "{icon} {volume}%",
|
||||
"format-bluetooth": "{volume}% {icon}",
|
||||
"format-muted": "",
|
||||
"format-icons": {
|
||||
"headphones": "",
|
||||
"handsfree": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", ""]
|
||||
},
|
||||
"on-click": "pavucontrol"
|
||||
},
|
||||
"custom/media": {
|
||||
"format": "{icon} {}",
|
||||
"return-type": "json",
|
||||
"max-length": 40,
|
||||
"format-icons": {
|
||||
"spotify": "",
|
||||
"default": "🎜"
|
||||
},
|
||||
"on-click": "playerctl play-pause",
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/custom_modules/mediaplayer.py 2> /dev/null"
|
||||
},
|
||||
"custom/network": {
|
||||
"escape": true,
|
||||
"exec": "$HOME/.config/waybar/custom_modules/wifi.sh status 2> /dev/null",
|
||||
"on-click": "rofi-wifi-menu",
|
||||
"on-click-right": "swaymsg exec \"~/.config/sway/scripts/tty-popup tunnel ~/.config/waybar/custom_modules/wifi.sh onclick\"",
|
||||
"restart-interval": 1,
|
||||
"return-type": "json"
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,21 +1,31 @@
|
|||
#! /usr/bin/env bash
|
||||
|
||||
main(){
|
||||
connected_val="$(iwgetid 1> /dev/null ; echo $?)"
|
||||
if [ $connected_val -eq 255 ]; then
|
||||
echo '{"text": "⚠ Disconnected", "class":"disconnected"}'
|
||||
return
|
||||
status(){
|
||||
connected_val="$(iwgetid 1> /dev/null ; echo $?)"
|
||||
if [ "$connected_val" -eq 255 ]; then
|
||||
echo '{"text": "⚠ Disconnected", "class":"disconnected"}'
|
||||
return
|
||||
else
|
||||
wg_val="$(wg 2> /dev/null ; echo $?)"
|
||||
if [ "$wg_val" -eq 0 ]; then
|
||||
echo "{\"text\": \" $(iwgetid -r)\", \"class\":\"connected\"}"
|
||||
else
|
||||
wg_val="$(wg 2> /dev/null ; echo $?)"
|
||||
if [ $wg_val -eq 0 ]; then
|
||||
echo "{\"text\": \" $(iwgetid -r)\", \"class\":\"connected\"}"
|
||||
else
|
||||
echo "{\"text\": \"聯 $(iwgetid -r)\", \"class\":\"secured\"}"
|
||||
fi
|
||||
echo "{\"text\": \"聯 $(iwgetid -r)\", \"class\":\"secured\"}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
while true; do
|
||||
main
|
||||
sleep 1
|
||||
done
|
||||
onclick(){
|
||||
wg_val="$(wg 2> /dev/null ; echo $?)"
|
||||
if [ "$wg_val" -eq 0 ]; then
|
||||
echo "Securing Connection"
|
||||
wg-quick up mullvad-us18
|
||||
else
|
||||
echo "Disconnecting tunnel"
|
||||
wg-quick down mullvad-us18
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
onclick|status) $1 ;;
|
||||
esac
|
||||
|
|
Loading…
Reference in New Issue
Block a user