@@ -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" ) 
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