#!/bin/bash ######################################################## ######################################################## # Wire-G App for simple management a Wireguard TUNNEL ## # Author: Désiré Werner Menrath ## # Email: polunga40@unity-mail.de ## # Translate German to English with LibreTranslate ## # Translatefiles edit with Poedit ## # Use without warranty! ## ######################################################## ######################################################## Encoding=UTF-8 # i18n - Internationalization - Internationalisierung export TEXTDOMAIN=wire-g export TEXTDOMAINDIR="/usr/share/locale" ############################################################################################################ ############################################################################################################ # wg_workdir Arbeitsverzeichnis wg WG_WDIR="/home/$USER/.config/wg_nmcli/" # Pfad wg Icons WG_PIC="/home/$USER/.icons/" IFS=$'\n' WG_START=( $(cat ${WG_WDIR}onstart.txt) ) nmcli connection up "$WG_START" nmcli connection show --active | grep -iPo "(.*)(wireguard)" | sed 's/ .*//' &> ${WG_WDIR}onstart.txt ACTIVE=$(nmcli connection show --active | grep -iPo "(.*)(wireguard)" | sed 's/ .*//') case $LANG in de_DE.UTF-8) OPEN=öffnen ;; *) OPEN=open ;; esac yad --image-on-top --image=${WG_PIC}wg-vpn-info.png \ --undecorated --borders=8 --skip-taskbar \ --text-align=center --no-buttons --auto-close \ --timeout 1 \ --text=$""$ACTIVE" powered" # autoconnect wird hier abgeschalten damit auch neu importierte nach einem Systemneustart nicht aktiv sind IFS=$'\n' lines=( $(cat ${WG_WDIR}tunnel.txt) ) nmcli con mod "$lines" connection.autoconnect no if [ -d /home/$USER/.config/autostart ] # for GNOME, XFCE, KDE, Budgie then if grep 'TRUE TRUE\|TRUE FALSE' ${WG_WDIR}about.txt then mv /home/"$USER"/.config/autostart/.wgonstart.desktop /home/"$USER"/.config/autostart/wgonstart.desktop else mv /home/"$USER"/.config/autostart/wgonstart.desktop /home/"$USER"/.config/autostart/.wgonstart.desktop fi elif [ -d /home/$USER/.config/lxsession/Lubuntu/autostart ] # for LXDE then if grep 'TRUE TRUE\|TRUE FALSE' ${WG_WDIR}about.txt then mv /home/$USER/.config/lxsession/Lubuntu/autostart/.wgonstart.desktop /home/$USER/.config/lxsession/Lubuntu/autostart/wgonstart.desktop else mv /home/$USER/.config/lxsession/Lubuntu/autostart/wgonstart.desktop /home/$USER/.config/lxsession/Lubuntu/autostart/.wgonstart.desktop fi fi yad --notification \ --image="${WG_PIC}wg-vpn.png" \ --icon-size=32 --no-middle \ --text=$"$ACTIVE activ" \ --menu="Wire-G $OPEN!/sbin/wire_g |$ACTIVE stop!/sbin/wg_stop" \ --command="menu" & # Schreib die pid von Notify in pid=$(ps aux | grep yad | grep -v grep | awk '{print $2}') echo $pid > ${WG_WDIR}for-kill_pid.txt IFS=$'\n' lines=( $(cat ${WG_WDIR}for-kill_pid.txt) )