New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

qvpnstatus

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

qvpnstatus

VPN Status tray icon for monitoring VPN connection

  • 0.1.2
  • PyPI
  • Socket score

Maintainers
1

QVpnStatus

pipeline status coverage report documentation pypi version gitter

VPN Status tray icon for monitoring VPN connections from nmcli. Allows you to specify interval to check and also toggle off sound notifications.

See link here for more information.

It is based on my copier-poetry-fbs skeleton which uses PyQT5 for the GUI elements and fbs for the installer creation.

Installation

###Debian/Ubuntu/Mint Linux Installation

Manual Installer link without automatic updates. https://fbs.sh/qvpnstatus/qvpnstatus/qvpnstatus.deb

###Install from website.

wget https://fbs.sh/qvpnstatus/qvpnstatus/qvpnstatus.deb
sudo dpkg -i qvpnstatus.deb

####To install with automatic updates supported via repo.

sudo apt-get install -y apt-transport-https
wget -qO - https://fbs.sh/qvpnstatus/qvpnstatus/public-key.gpg | sudo apt-key add -
echo 'deb [arch=amd64] https://fbs.sh/qvpnstatus/qvpnstatus/deb stable main' | sudo tee /etc/apt/sources.list.d/qvpnstatus.list
sudo apt-get update; sudo apt-get install -y qvpnstatus

Installation is done into /opt/qvpnstatus/


###Arch Linux Installation

####Manual Installer link without automatic updates. https://fbs.sh/qvpnstatus/qvpnstatus/qvpnstatus.pkg.tar.xz

####To install with automatic updates supported via repo.

curl -O https://fbs.sh/qvpnstatus/qvpnstatus/public-key.gpg && sudo pacman-key --add public-key.gpg && sudo pacman-key --lsign-key 9EF5FD1B7714354D0535303CFF1B29F26A1378E8 && rm public-key.gpg
echo -e '\n[qvpnstatus]\nServer = https://fbs.sh/qvpnstatus/qvpnstatus/arch' | sudo tee -a /etc/pacman.conf
sudo pacman -Syu qvpnstatus

If you already have the app installed, you can force an immediate update via:

sudo pacman -Syu --needed qvpnstatus

Installation via pip:

python3.7 -m pip install qvpnstatus

Installation via pipx:

python3.7 -m pip install --user pipx

pipx install --python python3.7 qvpnstatus

Dev Requirements

QVpnStatus requires Python 3.7 or above.

To install Python 3.7, I recommend using pyenv.
# install pyenv
git clone https://github.com/pyenv/pyenv ~/.pyenv

# setup pyenv (you should also put these three lines in .bashrc or similar)
export PATH="${HOME}/.pyenv/bin:${PATH}"
export PYENV_ROOT="${HOME}/.pyenv"
eval "$(pyenv init -)"

# install Python 3.7
pyenv install 3.7.12

# make it available globally
pyenv global system 3.7.12

Creating a native installer

  • clone the repo locally
    git clone git@gitlab.com:mikeramsey/qvpnstatus.git
  • Install poetry
    curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python3 -
  • Setting the below settings are highly recommended for ensuring the virtual environment poetry makes is located inside the project folder.
    poetry config virtualenvs.create true; poetry config virtualenvs.in-project true;
  • Run poetry install in the path to install all the dependencies
  • Enter the virtual environment that poetry created. This can be found by running poetry env info See also here
  • Run fbs freeze and then fbs installer afterwards if the frozen "compiled" app runs without issues. See here for more on how fbs works. And also here

Credits

Special thanks to below references and resources.

Resources: Python nmcli api package which made this a breeze:
https://github.com/ushiboy/nmcli
https://pypi.org/project/nmcli/

References:
https://www.learnpyqt.com/tutorials/system-tray-mac-menu-bar-applications-pyqt/
https://itectec.com/ubuntu/ubuntu-connect-disconnect-from-vpn-from-the-command-line/
https://www.devdungeon.com/content/python3-qt5-pyqt5-tutorial#toc-9

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc