Desktop app · Linux
Your VPN, in one app.
PublicVPNList selects an available public server and checks internet and Google access through the tunnel. Connect from the app window or the system tray.
Choose one format. Installation guide · Check compatibility
Built for multiple Linux distributions
The generic package does not depend on a particular package manager. It requires x86_64, glibc 2.35 or newer, systemd, a graphical desktop and administrator privileges. The installer checks dependencies before copying files.
Debian / Ubuntu / Mint
Debian 12+, Ubuntu 22.04+ and Mint 21+, provided the requirements are met. Use the DEB package for convenient dependency installation through APT.
Fedora / Arch and others
Use the generic TAR.GZ archive on compatible systems with glibc and systemd. Install the dependencies listed below first.
Testing status
VPN connectivity has been tested on Ubuntu 24.04. The app is built on Ubuntu 22.04. Compatibility with other distributions is preliminary and has not been confirmed by native VPN testing.
This release does not support ARM, 32-bit systems, Alpine/musl, systems without systemd, or immutable systems such as NixOS or Fedora Atomic. A Windows version has not been published.
Installation
If the app is already installed, click Disconnect and quit it through the tray menu before updating. Do not mix DEB and archive installations.
1. Debian, Ubuntu, Linux Mint — DEB package
Download the DEB package using the button above. Open a terminal in the folder containing the downloaded file and run:
sudo apt install ./publicvpnlist-vpn_0.1.8_amd64.deb
publicvpnlist
If APT reports incompatible dependencies, do not force installation. Check your distribution version and the requirements above.
2. Fedora, Arch and others — TAR.GZ archive
Install the dependencies for your distribution first. Your system must already be running systemd and a graphical desktop.
Fedora
sudo dnf install gtk3 libsecret libayatana-appindicator-gtk3 nftables polkit python3 shadow-utils util-linux glibc-utils
Arch Linux
sudo pacman -S --needed gtk3 libsecret libayatana-appindicator nftables polkit python shadow util-linux
Check package names in the Fedora and Arch Linux package catalogs. On other distributions, install the equivalent packages from their official repositories.
Extract and install
Download the generic archive using the button above, then open a terminal in your download folder:
tar -xzf publicvpnlist-vpn-0.1.8-linux-x64.tar.gz
cd publicvpnlist-vpn-0.1.8-linux-x64
python3 -I install.py --check
sudo python3 -I install.py
publicvpnlist
If the compatibility check fails, resolve the reported issue before installing. Run the app as your normal desktop user, without sudo. Keep the extracted folder: its installer can also uninstall the app.
Verify your download
Download SHA256SUMS into the same folder as your package, then run:
sha256sum --ignore-missing -c SHA256SUMS
Your downloaded package should be marked OK. A checksum detects file corruption. The signed checksum list and public key are available under release files. On your first download, trust in the public key relies on the site's HTTPS connection.
Get started in three steps
Complete setup
Open PublicVPNList from your applications menu or run
publicvpnlist. Authorize setup of the included system service with your administrator password.Connect
Click Connect. The app retrieves the server catalog and checks the connection through the selected server. Wait for Connected, a verified exit IP and a successful Google check.
Check and control
Open your browser to check the connection. To disconnect, use the button in the app or Disconnect in the tray menu. Closing the window does not disconnect the VPN.
The service is included in the package. It creates the tunnel and manages network protection with system privileges, while the app window runs as your normal user. Installation does not automatically connect the VPN. Setup authorizes one desktop account per computer.
Troubleshooting
No internet access or connection paused
Click Disconnect. If the service is unavailable, use Restore internet access in the app and confirm the action. You can also start recovery from a terminal:
pkexec /usr/lib/publicvpnlist/recover-networkRecovery turns off VPN protection and restores your direct internet connection. Do not manually change shared firewall rules.
The tray icon is missing
Some GNOME desktops require an extension that supports AppIndicator. Until it is installed, control your connection from the app window. Tray support depends on your desktop environment.
Uninstall the app
Disconnect the VPN and quit the app first. For the DEB package:
sudo apt remove publicvpnlist-vpnFor the generic archive, run this from the extracted folder you kept:
sudo python3 -I install.py --uninstallRemoval is refused while protection is active or the firewall state is unknown. Local settings and the dedicated system account are retained.
About public VPN servers
This is a beta release. Public VPN servers may go offline, slow down your connection or keep logs. A successful availability check does not establish trust in a server operator or guarantee anonymity.
The app contacts the PublicVPNList API to register the device and retrieve servers. Connection checks contact Google and IP/DNS verification services. These services can see technical connection data. Read our Privacy Policy and guide to public VPN risks.
Release files and licenses
Third-party components retain their own licenses. The app uses sing-box and Flutter and is not an official product of their developers.