1.9 KiB
1.9 KiB
NextDNS Linux Trayicon
This small Python script and .desktop file add a quick toggle to the desktop environment's system tray.
Prerequisites
- NextDNS CLI: The script controls the nextdns service. If you haven't installed it yet:
sh -c 'curl -sL https://nextdns.io/install | sh'
- Python 3 & PyQt6: The interface is built using Python 3 and the Qt6 toolkit. (This is installed by default on (K)ubuntu.)
sudo apt update
sudo apt install python3 python3-pyqt6
- Polkit Agent: The script uses pkexec to handle start/stop commands safely. Most desktop environments (KDE, GNOME, XFCE) come with this pre-installed.
Installation
- Copy the files to your home directory:
# Create directories if they don't exist
mkdir -p ~/.local/bin ~/.local/share/applications ~/.local/share/icons
# Copy the specific files
cp home/.local/bin/nextdns_tray ~/.local/bin/
cp home/.local/share/applications/nextdns-tray.desktop ~/.local/share/applications/
cp home/.local/share/icons/nextdns.png ~/.local/share/icons/
- Make the script executable
chmod +x ~/.local/bin/nextdns_tray
- (Optional) Add to Autostart: If you want the tray to start automatically when you log in:
mkdir -p ~/.config/autostart
cp ~/.local/share/applications/nextdns-tray.desktop ~/.config/autostart/
Installation (one-liner)
sh -c 'curl -sL https://nextdns.io/install | sh'
sudo apt update
sudo apt install python3 python3-pyqt6
mkdir -p ~/.local/bin ~/.local/share/applications ~/.local/share/icons
cp home/.local/bin/nextdns_tray ~/.local/bin/
cp home/.local/share/applications/nextdns-tray.desktop ~/.local/share/applications/
cp home/.local/share/icons/nextdns.png ~/.local/share/icons/
chmod +x ~/.local/bin/nextdns_tray
mkdir -p ~/.config/autostart
cp ~/.local/share/applications/nextdns-tray.desktop ~/.config/autostart/