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 |
Installing ProtonVPN-CLI
sudo pip3 install protonvpn-cli
Once you've installed protonvpn-cli-ng, install ProtonVPN-CLI-GUI.
Note: This has only been tested on Linux Mint 19.3 Cinnamon.
Installing ProtonVPN-CLI-GUI
Kivy Dependencies
Prior to installing the GUI, run the following command to ensure the necessary Kivy dependencies are in place.
sudo apt install -y build-essential git python3-dev ffmpeg libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-ttf-dev libportmidi-dev libswscale-dev libavformat-dev libavcodec-dev zlib1g-dev xclip
For installing the 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.desktopwith 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;VPNNote: 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
Metadata
Release files for protonvpn-cli-gui 0.1.10
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| protonvpn-cli-gui-0.1.10.tar.gz | 2.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| protonvpn_cli_gui-0.1.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 5.6 MB
Release files / protonvpn-cli-gui-0.1.10.tar.gz
| Download URL | protonvpn-cli-gui-0.1.10.tar.gz |
|---|---|
| Size | 2.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0d3cee0a3044c0c469b8675106431e6a75ec6c480c1e21fa7bcbae079edf512b
|
|
BLAKE2b-256 checksum How to use checksums |
3747c77866159f5636caaec00ae50f925b305c6496a0f07e556aa9f13cc5123c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.9
|
Release files / protonvpn_cli_gui-0.1.10-py3-none-any.whl
| Download URL | protonvpn_cli_gui-0.1.10-py3-none-any.whl |
|---|---|
| Size | 2.9 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
5cf82e2c7fc81a0708a30713502316a4a2fc0a80cf97849234c0d72ef4cc27cf
|
|
BLAKE2b-256 checksum How to use checksums |
adce263b8363b3e2720ebab5fff6607638451008c46d01bef1d44ddabe49915a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.0.0 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.9
|