#!/bin/sh # toggle VPN down_not_master () { git -C "$HOME/programs/config_local_arch" branch | awk '!/master/{print ($1=="*")?$2:$1}' | while read -r v; do nmcli connection down "wg_$v" done } # no toggle wg_master, I want wg_master to always on by default if ! [ "$1" ] || [ "$1" = master ]; then down_not_master nmcli connection up wg_master notify-send -u critical 'VPN disabled' exit fi if nmcli -t --fields device,state device | grep -q "^wg_$1:connected$"; then down_not_master nmcli connection up wg_master notify-send -u critical "$1 VPN disabled" else down_not_master nmcli connection down wg_master nmcli connection up "wg_$1" notify-send "$1 VPN enabled" fi