Linux
Install, configure, and update the Pangolin client for Linux
Install
- Pangolin for Linux - This is the official page to download the latest packages for Linux.
- All Versions - The releases section of this repository contains release notes and download artifacts for the latest version and all older versions.
Pangolin for Linux runs on Ubuntu 22.04 or later, Debian 12 or later, and current Fedora, openSUSE, and Arch Linux. Packages are available for x86_64 (amd64) and ARM64 (arm64). RHEL 9 and its rebuilds do not ship WebKitGTK 4.1, so they cannot install the package.
Installation Steps
-
Download and install the Pangolin client
Download the package for your distribution and architecture from the download page above, then install it with your package manager. Replace
<arch>and<version>with the values in the file name.sudo apt install ./pangolin-client-<arch>-<version>.debThe package installs the
pangolin-clientapp, thepangolin-clientsystemd service, an app menu entry, and the GNOME Shell extension. The service is enabled and started during installation. -
Launch Pangolin
Open Pangolin from your desktop's app menu, or run
pangolin-clientin a terminal. -
Log in with your Pangolin account
Log in on your Pangolin Cloud account or your self-hosted Pangolin instance.
- Click the Pangolin icon in the system tray (or the GNOME top bar) and select Log in.
System Tray
Pangolin lives in the system tray. Click the tray icon to open the Pangolin menu.
Most desktops, including KDE Plasma, Cinnamon, XFCE, and Budgie, show the tray icon without any extra setup.
GNOME
GNOME has no system tray of its own. Pangolin ships a GNOME Shell extension that adds a Pangolin button to the top bar. Click it to open the Pangolin menu. Right-click it to quit Pangolin.
The extension is installed with the package but is not turned on automatically. To turn it on:
- Log out and log back in, so GNOME Shell finds the new extension.
- Enable it in the Extensions app, or run:
gnome-extensions enable pangolin@pangolin.netIf you use the AppIndicator extension instead, Pangolin's icon appears there too, but it opens the menu only on a double-click. While the Pangolin extension is on, Pangolin hides its AppIndicator icon so only one icon shows.
If Pangolin cannot find a system tray or the GNOME extension, it opens the Preferences window when it starts so you can still use it.
Background Service
The pangolin-client systemd service runs as root and manages the tunnel, routes, and DNS. It also keeps your sign-in. The Pangolin app runs as your user and connects to the service.
If the service is not running, Pangolin shows a warning when it opens and cannot connect. Start it with:
sudo systemctl enable --now pangolin-clientLogs are written to:
- Service and tunnel logs:
/var/log/pangolin-client/, also available withjournalctl -u pangolin-client - App logs:
~/.local/state/pangolin-client/logs/(or$XDG_STATE_HOME/pangolin-client/logs/)
Companion Mode
Companion mode lets Pangolin CLI use this app's login and tunnel. Sign in and connect here, then run CLI commands as that same account. You do not run pangolin login again.
On Linux, companion mode is on by default once both the desktop app and the CLI are installed. On machines without the desktop app, the CLI keeps its own login.
- Log in with the Linux client and connect.
- Install Pangolin CLI if it is not already installed. From the Pangolin menu, choose More > Install Pangolin CLI…, or follow the CLI install steps. The app installs the CLI to
/usr/local/bin/pangolin. Members of thesudo,wheel, oradmingroup can install it directly; other users are asked for an administrator's password. - Run CLI commands in a terminal. For example, open SSH to a private SSH resource:
pangolin ssh username@aliasThe CLI follows the account, organization, and exit node selected in the desktop app. Change those in the app. While companion mode is on, pangolin login, pangolin logout, and pangolin select for account, organization, or exit node are blocked.
The desktop app has to be open and logged in. If it is not, the CLI asks you to start Pangolin and log in.
Commands to check status or turn companion mode off are on the CLI companion mode section.
Configure
DNS, MTU, and other preferences shared across clients are on Platforms.
Start at Login
When enabled, Pangolin starts when you sign in to your desktop session. This uses the XDG autostart entry the package installs at /etc/xdg/autostart/pangolin-client-autostart.desktop; the entry does nothing unless this preference is on.
Connect at Start
When enabled, the tunnel connects whenever Pangolin starts. This also opens Pangolin at sign-in.
Config File
On Linux, the Pangolin GUI reads configuration from two pangolin.json files:
- User config:
~/.config/pangolin-client/pangolin.json(or$XDG_CONFIG_HOME/pangolin-client/pangolin.json) - Global config:
/etc/pangolin-client/pangolin.json
These are separate from Pangolin CLI's files in ~/.config/pangolin.
Most keys in the Config object below can be set in either file. If the same key exists in both places, the user config value overrides the global value. This lets administrators define global defaults while still allowing per-user overrides when needed. Keys marked Global only must be set in /etc/pangolin-client/pangolin.json; after changing them, run sudo systemctl restart pangolin-client and reopen Pangolin.
ConfigobjectJSON configuration for the Linux Pangolin client stored in pangolin.json.
As a system administrator, you can script placing pangolin.json in /etc/pangolin-client/ to set global defaults, and/or in each user's ~/.config/pangolin-client/ folder for per-user overrides and targeted rollout behavior.
Update
Automatic Updates
The Linux client checks for updates automatically in the background. When a new version is available, Pangolin adds Pangolin Update Available… to the system tray menu. Open that menu item to see a dialog asking whether to install the update now.
Install Update downloads the new package, checks it against Pangolin's signed update manifest, and installs it with your system package manager (apt-get, dnf, zypper, rpm, or pacman). The background service restarts during the install, so the tunnel disconnects briefly. Pangolin reopens when the update finishes. Later closes the dialog and leaves the current version in place.
Installing updates from the app requires an administrator: root, or a member of the sudo, wheel, or admin group. Other users can update with the manual steps below.
If Pangolin was not installed from a .deb, .rpm, or .pkg.tar.zst package, the dialog shows a download link instead of installing the update.
You can also check from the system tray: More > Check for Updates….
Manual Updates
Find the latest version in the GitHub releases, or on https://pangolin.net/downloads/linux.
Download the new package and install it with the same command you used to install Pangolin. The package manager upgrades the existing installation and restarts the background service.
Uninstall
- Quit Pangolin from the system tray if it is running.
- Remove the package with your package manager:
sudo apt remove pangolin-clientTo also remove the saved sign-in, service state, logs, and global config, use sudo apt purge pangolin-client instead.
Removing the package stops and disables the background service and removes the app, the GNOME extension, and the app menu and autostart entries. It does not always delete user or global config. To clear those as well:
rm -rf ~/.config/pangolin-client ~/.local/state/pangolin-client
sudo rm -rf /etc/pangolin-client /var/lib/pangolin-client /var/log/pangolin-clientIf you also installed Pangolin CLI, uninstall it separately. See Uninstall Pangolin CLI.
Was this page helpful?

