@@ -5,16 +5,43 @@ export LC_ALL=en_US.UTF-8
55current_dir=" $( cd " $( dirname " ${BASH_SOURCE[0]} " ) " && pwd) "
66source $current_dir /utils.sh
77
8+
9+
810vpn_function () {
911 case $( uname -s) in
1012 Linux)
13+
14+ verbose=$( get_tmux_option " @dracula-network-vpn-verbose" false)
15+
1116 # Show IP of tun0 if connected
1217 vpn=$( ip -o -4 addr show dev tun0 | awk ' {print $4}' | cut -d/ -f1)
1318
19+ which -s tailscale > /dev/null
20+ tailscale_installed=$?
21+
1422 if [[ $vpn =~ ^([0-9]{1,3}\. ){3}[0-9]{1,3}$ ]]; then
1523 echo $vpn
24+ elif [ $tailscale_installed ]; then
25+ # if tailscale is installed
26+ #
27+ # https://www.reddit.com/r/Tailscale/comments/18dirro/is_there_a_way_i_can_tell_which_exit_node_i_am/
28+ node=$( tailscale status --peers --json | jq ' .ExitNodeStatus' )
29+ if [[ -z $node ]] || [[ " $node " == ' null' ]]; then
30+ # no tailscale exit node, no output, since trafic isnt actually rerouted
31+ echo " "
32+ else
33+ exitnode=$( tailscale status | grep " ; exit node" | awk ' {print $2}' )
34+
35+ if $verbose ; then
36+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " " )
37+ echo " $vpn_label$exitnode "
38+ else
39+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " Tailscale" )
40+ echo " $vpn_label "
41+ fi
42+ fi
1643 else
17- echo " NO VPN "
44+ echo " "
1845 fi
1946 ;;
2047
@@ -45,18 +72,22 @@ vpn_function() {
4572 exitnode=$( tailscale status | grep " ; exit node" | cut -w -f 2)
4673
4774 if $verbose ; then
48- echo " $exitnode "
75+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " " )
76+ echo " $vpn_label$exitnode "
4977 else
50- echo " Tailscale"
78+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " Tailscale" )
79+ echo " $vpn_label "
5180 fi
5281 fi
5382
5483 else
5584 if $verbose ; then
5685 vpn_name=$( echo $is_not_tailscale | sed " s/.*\" \(.*\)\" .*/\1/g" )
57- echo " $vpn_name "
86+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " " )
87+ echo " $vpn_label$vpn_name "
5888 else
59- echo " VPN"
89+ vpn_label=$( get_tmux_option " @dracula-network-vpn-label" " VPN" )
90+ echo " $vpn_label "
6091 fi
6192 fi
6293 ;;
0 commit comments