In this article, we describe how to use the Proton VPN for Linux app on your Fedora 35+ system (Fedora 31 – 34 are no longer officially supported).

1. Get the Proton VPN repository setup RPM package
This package contains the repository configuration and keys that are required to install the Proton VPN app.
Download the Proton VPN RPM package
2. Install the Proton VPN repository
Double-click the downloaded RPM package to install the repository using your default package manager.

3. Update the dnf package list
The following command updates the list of available packages and their versions. Doing this allows you to install the Proton VPN App. Open Terminal and enter:
sudo dnf update
4. Install the Proton VPN Linux app
Then run:
sudo dnf install protonvpn
5. Install required dependencies for the alternative routing feature
Enter:
sudo dnf install python3-pip
Then:
pip3 install --user 'dnspython>=1.16.0'
Linux system tray icon
Our Linux app can show a system tray icon that stays active when you close the main Proton VPN window and allows you to easily Quick Connect or Disconnect.
To install the system tray icon, open Terminal and enter:
sudo dnf install libappindicator-gtk3 gnome-tweaks gnome-shell-extension-appindicator
If you use the default GNOME desktop and the system tray icon does not show, open the GNOME extensions app, go to Appindicator and KStatusNotifieritem, and toggle the switch on.

The GNOME extensions app can be installed using:
sudo dnf install gnome-extensions-app
Restart your system after installing GNOME extensions.
Once installed, simply log in with your Proton account credentials. If you do not yet have an account, you can sign up for a Free Proton VPN plan for Linux.
You are now ready to secure your internet connection and access blocked content with Proton VPN.
Learn how to use the Proton VPN Linux app
Notes
1. Uninstall the official app
To uninstall the official app, run:
sudo dnf remove protonvpn -y; sudo dnf autoremove -y; sudo dnf clean packages
Check if all Proton VPN packages are uninstalled:
dnf/yum list installed | grep proton
Check if any Proton VPN folders remain on your system:
ls -ld /usr/lib/python3.*/site-packages/proton*
If any folders are found then remove them using:
sudo rm -rf /usr/lib/python3.*/site-packages/proton*
Check again that all folders are removed (see last step above).
2. How to disable the kill switch after you have uninstalled the app
Disable the kill switch inside the app settings before you uninstall it or you may not be able to access the internet. If you don’t do this, you can disable the kill switch even after the app has been uninstalled by taking the following steps:
a) Identify Proton VPN connection names by running the command:
nmcli connection show --active
This will display a list of all your system’s active connections.
b) Look for any connections with the pvpn- This usually includes pvpn-killswitch and pvpn-ipv6leak-protection, and may include pvpn-routed-killswitch. Delete all these connections using the following command:
nmcli connection delete [connection name]
For example:
nmcli connection delete pvpn-killswitch
c) Repeat the above steps to ensure all Proton VPN connections are removed.
4. Required dependencies
You’ll need one of the following dependencies installed for the Proton VPN app to work (do not install both as this will cause problems):
- KWallet
- Gnome-keyring
Most Fedora Spins have one of them installed by default, so it’s unlikely you’ll need to take further action. Also required is:
- Systemd
But again, on most Fedora Spins, this is pre-installed.
5. Try out the early release version of this app
Are you an experienced Fedora or Linux user who wants to help us release problem-free software for our community? By using the early access version of this app, you can access pre-release features while also helping us find and address bugs.
If you are interested, download the following repo package instead of the one linked to in step 1 above.
Download the early access version of the Proton VPN RPM package
Note that this is untested pre-release software, so please only use it if your threat model permits.