diff options
Diffstat (limited to 'dot_config/waybar')
| -rw-r--r-- | dot_config/waybar/executable_vpn-status.sh | 9 | ||||
| -rw-r--r-- | dot_config/waybar/style.css | 1 |
2 files changed, 6 insertions, 4 deletions
diff --git a/dot_config/waybar/executable_vpn-status.sh b/dot_config/waybar/executable_vpn-status.sh index 37fea84..3e6faba 100644 --- a/dot_config/waybar/executable_vpn-status.sh +++ b/dot_config/waybar/executable_vpn-status.sh @@ -1,12 +1,13 @@ #!/bin/sh # Waybar custom/vpn module: report whether the wireguard interface -# (managed by systemd-networkd) is admin-up. Output is a single line of -# JSON so waybar can style it via the .up / .down classes. +# (managed by systemd-networkd) is admin-up. Pango markup makes the +# state visually unambiguous (green shield up, red strikethrough down) +# even before CSS classes are taken into account. iface=hodor if ip link show "$iface" 2>/dev/null | grep -qE '<[^>]*\<UP\>'; then - printf '{"text":"VPN","class":"up","tooltip":"%s up"}\n' "$iface" + printf '{"text":"<span color=\\"#b8bb26\\"> VPN</span>","class":"up","tooltip":"%s up — click to disconnect"}\n' "$iface" else - printf '{"text":"VPN","class":"down","tooltip":"%s down"}\n' "$iface" + printf '{"text":"<span color=\\"#928374\\"><s> VPN</s></span>","class":"down","tooltip":"%s down — click to connect"}\n' "$iface" fi diff --git a/dot_config/waybar/style.css b/dot_config/waybar/style.css index 86e546a..4866f11 100644 --- a/dot_config/waybar/style.css +++ b/dot_config/waybar/style.css @@ -34,6 +34,7 @@ window#waybar { #custom-vpn.down { color: #928374; + background-color: rgba(251, 73, 52, 0.15); } #mode { |
