Show Tailscale status in the menu bar and send/receive files via Taildrop.
A Tailscale status plugin for Noctalia that shows your Tailscale connection status in the menu bar and lets you send and receive files via Taildrop.

Disclaimer: This is a community-created plugin built on top of the great Tailscale CLI tool. It is not affiliated with, endorsed by, or officially connected to Tailscale Inc.
Taildrop lets you send and receive files between your Tailscale nodes directly from the panel.
tailscale file get normally requires root. The plugin offers two modes, configurable in settings, and a master toggle to disable Taildrop entirely:
| Mode | Setting value | How it works |
|---|---|---|
| Operator (recommended) | operator |
Runs tailscale file get as your own user — no prompt. Requires a one-time setup (see below). |
| pkexec | pkexec |
Runs tailscale file get via pkexec — shows a polkit prompt each time. No setup needed. |
When a receive completes the notification lists each file that appeared in the download directory.
To hide both the Receive button and the Send File option entirely, disable Taildrop in plugin settings.
Run this once to grant your user operator rights:
sudo tailscale set --operator=$USER
After that, tailscale file get works without root and the plugin can receive files without any prompt.
Right-click any online peer in the panel and choose Send File. A file picker will open; select one or more files and they will be sent via tailscale file cp.
| Setting | Default | Description |
|---|---|---|
refreshInterval |
5000 ms |
How often to check Tailscale status (1000–60000 ms) |
compactMode |
false |
Show only the icon in the menu bar |
showIpAddress |
true |
Display your Tailscale IP address |
showPeerCount |
true |
Display the number of connected peers |
hideDisconnected |
false |
Hide disconnected peers from the panel list |
hideMullvadExitNodes |
true |
Hide Mullvad VPN exit nodes from the peer list |
terminalCommand |
"" |
Terminal for SSH/ping (e.g. ghostty, alacritty) |
sshUsername |
"" |
Username for SSH connections (leave empty for system default) |
pingCount |
5 |
Number of pings to send when pinging a peer |
defaultPeerAction |
"copy-ip" |
Action when clicking a peer: copy-ip, ssh, or ping |
taildropEnabled |
true |
Enable Taildrop send/receive. When false, hides the Receive button and Send File option. |
taildropDownloadDir |
"~/Downloads" |
Directory where received files are saved |
taildropReceiveMode |
"operator" |
Taildrop receive mode: operator or pkexec |
You can control the Tailscale plugin via the command line using the Noctalia IPC interface.
qs -c noctalia-shell ipc call plugin:tailscale <command>
| Command | Description | Example |
|---|---|---|
toggle |
Toggle Tailscale connection (connect/disconnect) | qs -c noctalia-shell ipc call plugin:tailscale toggle |
status |
Get current Tailscale status | qs -c noctalia-shell ipc call plugin:tailscale status |
refresh |
Force refresh Tailscale status | qs -c noctalia-shell ipc call plugin:tailscale refresh |
receive |
Fetch any pending Taildrop files | qs -c noctalia-shell ipc call plugin:tailscale receive |
If you see "Tailscale not installed" in the context menu, make sure Tailscale is installed and accessible in your PATH.
If the status doesn't update automatically, try:
Ensure that:
sudo tailscale set --operator=$USER firstpkexec is installed and a polkit agent is running