diff options
| author | ryukamish <[email protected]> | 2026-06-08 12:25:29 +0530 |
|---|---|---|
| committer | ryukamish <[email protected]> | 2026-06-08 12:25:29 +0530 |
| commit | fd322ade4d50ff0eab695648d69edc5cb2abd1b2 (patch) | |
| tree | 43bbeff5d3c49bd23b1ed0a862d6e441f0bdd18e /.local/bin/waybar-vpn | |
| parent | fcd1c4bac7bc3c17124331ced6702d5bf72e71fa (diff) | |
add: vpn module for waybar
Diffstat (limited to '.local/bin/waybar-vpn')
| -rwxr-xr-x | .local/bin/waybar-vpn | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/.local/bin/waybar-vpn b/.local/bin/waybar-vpn new file mode 100755 index 0000000..008e743 --- /dev/null +++ b/.local/bin/waybar-vpn @@ -0,0 +1,31 @@ +#!/bin/sh + +# first user argument +cmd="$1" + +case "$cmd" in + connect) + # TODO: handle root permission password input + if [ -n $(type "nmcli") ]; then + nmcli connection show --active \ + rg -i 'wireguard' + fi + ;; + disconnect) + # `wg-quick` requires root permission to disconnect + # don't have the solution right now + ;; + status) + vpn=$(nmcli connection show --active | rg -i 'wireguard' | awk '{print $1}') + if [ -n "$vpn" ]; then + printf "{\"text\": \"$vpn\", \"class\": \"wireguard\", \"alt\": \"disconnected\" }\n" + else + printf "{\"text\": \"DC'D\", \"class\": \"wireguard\", \"alt\": \"disconnected\" }\n" + fi + ;; + *) + # print usage if not used with any of the below three commands + echo -e "Usage: %s {status|connect|disconnect}\n" + exit 1 + ;; +esac |
