Skip to main content

An unofficial GUI for ProtonVPN on Linux.

Project description

ProtonVPN-CLI-GUI

ProtonVPN

Build Status Downloads Downloads per Week

Master Branch Build Status Testing Branch Build Status

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:

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

  1. Clone this repository:

    git clone https://github.com/jcemerson/protonvpn-cli-gui

  2. Navigate to the directory:

    cd {/path/to/directory/}protonvpn-cli-gui

  3. 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:

  1. Create a new file in .local/share/applications/ named protonvpn-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

protonvpn-cli-gui-0.1.8.tar.gz (2.0 MB view hashes)

Uploaded Source

Built Distribution

protonvpn_cli_gui-0.1.8-py3-none-any.whl (2.2 MB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page