An unofficial GUI for ProtonVPN on Linux.
Project description
ProtonVPN-CLI-GUI
A GUI for ProtonVPN-CLI on Linux *(Unofficial)*, written entirely in Python.
ProtonVPN-CLI-GUI is Kivy-based GUI built on top of protonvpn-cli-ng as the back-end. Wherever possible, the GUI relies on the actual code of the CLI, so ProtonVPN-CLI-GUI will remain up to date with ProtonVPN-CLI.
Installing Dependencies
Dependencies:
- Kivy
- OpenVPN
- pip for Python3 (pip3)
- ProtonVPN-CLI
- Python3.6+
- setuptools for python3 (python3-setuptools)
To install ProtonVPN-CLI, depending on your distribution, run the appropriate following command to install the necessary dependencies. For more detailed information on installing, updating and uninstalling, please view the extensive usage guide:
Distro | Command |
---|---|
Fedora/CentOS/RHEL | sudo dnf install -y openvpn dialog python3-pip python3-setuptools |
Ubuntu/Linux Mint/Debian and derivatives | sudo apt install -y openvpn dialog python3-pip python3-setuptools |
OpenSUSE/SLES | sudo zypper in -y openvpn dialog python3-pip python3-setuptools |
Arch Linux/Manjaro | sudo pacman -S openvpn dialog python-pip python-setuptools |
Note: This has only been tested on Linux Mint 19.3 Cinnamon.
Once you've installed protonvpn-cli-ng, install ProtonVPN-CLI-GUI.
Installing ProtonVPN-CLI-GUI
You can either install via PIP (simple) or by cloning this repository (must manually manage dependencies, etc).
Note: Make sure to run pip with sudo
sudo pip3 install protonvpn-cli-gui
To update to a new version
sudo pip3 install protonvpn-cli-gui --upgrade
Manual Installation
-
Clone this repository:
git clone https://github.com/jcemerson/protonvpn-cli-gui
-
Navigate to the directory:
cd {/path/to/directory/}protonvpn-cli-gui
-
Install:
sudo python3 setup.py install
How to use
sudo protonvpn-cli-gui
Recommendation for Convenience:
For passwordless execution without using a terminal, such as by automated script or .desktop file, update your sudoers file by using sudo visudo
and paste the following at the bottom (last line) of your file:
{your_linux_username} ALL = (root) NOPASSWD: /usr/local/bin/protonvpn-cli-gui
Note: The path to your bin might be different. To find, use which protonvpn-cli-gui
Create .desktop file
To create a desktop application launcher using a .desktop file:
-
Create a new file in
.local/share/applications/
namedprotonvpn-cli-gui.desktop
with the following contents:[Desktop Entry] Name=ProtonVPN-CLI-GUI GenericName=ProtonVPN-CLI-GUI Exec=sudo protonvpn-cli-gui Icon={path/to/icon} Type=Application Terminal=False Categories=Network;VPN
Note: Be sure to update the Icon with your own path to an image file.
This is a pre-release and not all planned features have been implemented.
Some remaining features include:
- Logging (GUI-only. Kivy, OpenVPN, and ProtonVPN-CLI all have logs of their own.)
- Searchable Server List
- Start on Boot
- Connection Profiles (user-configurable connection profiles that can be saved, e.g. "Fastest TOR server with TCP connection", "Fastest P2P server in Iceland", etc.).
- Built-in Connection Speed Test
- System Tray icon with connection status notification
Screenshots
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for protonvpn_cli_gui-0.1.8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1db595c1e107cc80cea85db23458b13d793187eff8a1d30bdf05310bd91ed5a1 |
|
MD5 | dcda647ef8531f2fb0ae91599e77e2d9 |
|
BLAKE2b-256 | 03ed8714992919672e6afb260975617309d8b49236d5d0e4aa5e769eca6db60e |