aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/.local/bin/barvpnstatus
diff options
context:
space:
mode:
Diffstat (limited to 'dotfiles/.local/bin/barvpnstatus')
-rwxr-xr-xdotfiles/.local/bin/barvpnstatus16
1 files changed, 11 insertions, 5 deletions
diff --git a/dotfiles/.local/bin/barvpnstatus b/dotfiles/.local/bin/barvpnstatus
index 7850d94..cca0201 100755
--- a/dotfiles/.local/bin/barvpnstatus
+++ b/dotfiles/.local/bin/barvpnstatus
@@ -1,9 +1,15 @@
#!/bin/sh
-if [ -f "$HOME/.cache/openvpnpid" ]; then
- printf " vpn"
- exit
-fi
+isup=$(ip a | grep wg0:)
-printf ""
+if [ -n "$isup" ]; then
+ printf " vpn\n"
+else
+ printf ""
+fi
+# For some goddamned weird reason sed crashes with a
+# "couldn't flush stdout: broken pipe" error when running from waybar itself
+# if I don't call sed from its hard location, so I had to call it using
+# /usr/bin/sed
+nmcli monitor | grep -E --line-buffered 'wg0: connected|wg0: disconnected' | /usr/bin/sed --unbuffered 's/wg0: connected/ vpn/g;s/wg0: disconnected//g'