diff --git a/de/home/.config/eww/eww.yuck b/de/home/.config/eww/eww.yuck index f2970a1..85d724f 100644 --- a/de/home/.config/eww/eww.yuck +++ b/de/home/.config/eww/eww.yuck @@ -43,7 +43,9 @@ :class {inhibit_active ? "active" : ""} {inhibit_active ? "" : ""})) -(defvar vpn_active false) +(defpoll vpn_active :initial false + :interval "5s" + "scripts/vpn-status") (defwidget vpn [] (button :onclick 'notify-send "test"' :class {vpn_active ? "active" : ""} diff --git a/de/home/.config/eww/scripts/vpn-status b/de/home/.config/eww/scripts/vpn-status new file mode 100755 index 0000000..3f07096 --- /dev/null +++ b/de/home/.config/eww/scripts/vpn-status @@ -0,0 +1,10 @@ +#!/bin/bash + +nm_active=`nmcli con show --active` +vpn_active='false' + +if echo "${nm_active}" | grep -q 'vpn' || echo "${nm_active}" | grep -q 'wireguard';then + vpn_active='true' +fi + +printf '%s' "${vpn_active}"