- display tailscale VPN connection status in polybar
- enable/disable tailscale from rofi
- automatically shows one option per available exit node
- Put
info-tailscale.shsomewhere on your system, for example to~/.config/polybar/info-tailscale.sh. - In your polybar config, add:
Also add
[module/info-tailscale] type = custom/script exec = ~/.config/polybar/info-tailscale.sh interval = 10info-tailscaletomodules-left,modules-center, ormodules-right.
(The demo GIF uses interval = 3 for added effect.)
- Put
choose_vpn_config.shsomewhere on your system, for example~/.config/scripts/choose_vpn_config.sh. - Add a keybinding in your window manager that triggers the script. Example config snippet for i3wm:
bindsym $mod+Shift+v exec --no-startup-id $HOME/.config/scripts/choose_vpn_config.sh - Run
sudo tailscale up --operator $(whoami)once. This gives your username permission totailscale upwithout sudo in the future (i.e. when using the rofi switcher).
Support for the --operator option wasn't unanimous when it was introduced.
In case it is removed again in the future, polkit can be used as an alternative for rights elevation:
- Install polkit and a polkit authentication agent.
- for example
sudo apt install lxpolkiton Debian-based OS
- for example
- Run the agent on session startup.
- for example
exec --no-startup-id lxpolkitwhen using i3wm
- for example
- Remove the
--operatoroptions in choose_vpn_config.sh, and usepkexecfor thetailscaleinvocation.
For the door icons, I use fontawesome.
- tailscale widget for my desktop bar - tiling window manager: https://forum.tailscale.com/t/widget-for-my-desktop-bar-tiling-window-manager/623
- Thanks to sidepodmatt and within for the efficient and succinct way of obtaining the tailscale status with curl (instead of calling
tailscale status).
- Thanks to sidepodmatt and within for the efficient and succinct way of obtaining the tailscale status with curl (instead of calling
- Linux port of tailscale system tray menu: https://github.com/mattn/tailscale-systray/
- Rofi-based interface to enable VPN connections with NetworkManager: https://gitlab.com/DamienCassou/rofi-vpn
- Custom rofi menu that allows for activating and deactivating VPN connections: https://github.com/marcje/rofi-vpn
- Polybar module for Mullvad VPN control: https://github.com/shervinsahba/polybar-vpn-controller
