From e24f1c770f1519b44eeac776be4356ed337c35ed Mon Sep 17 00:00:00 2001 From: punix Date: Sun, 19 Nov 2023 11:15:52 +0100 Subject: [PATCH] about checkbox save select --- installer1.0.5 | 7 +++- wg_on_start | 87 +++++++++++++++++++++++++++++++++++++++++++++ wg_on_start.desktop | 4 +++ wire_g | 65 ++++++++++++++++++++++++++++----- 4 files changed, 154 insertions(+), 9 deletions(-) create mode 100755 wg_on_start create mode 100644 wg_on_start.desktop diff --git a/installer1.0.5 b/installer1.0.5 index 3fbe588..f551684 100755 --- a/installer1.0.5 +++ b/installer1.0.5 @@ -18,19 +18,22 @@ if grep -i 'mint\|debian\|ubuntu\|pop|' /etc/os-release > /dev/null 2>&1 then echo Wire-G wird installiert... - mkdir -p /home/"$USER"/.icons ; cp icons/* /home/"$USER"/.icons/ ; mkdir -p /home/"$USER"/.config/wg_nmcli + mkdir -p /home/"$USER"/.icons ; cp icons/* /home/"$USER"/.icons/ ; mkdir -p /home/"$USER"/.config/wg_nmcli + cp wg_on_start /home/"$USER"/.config/bin/ if ! which yad > /dev/null ; then sudo apt install yad -y > /dev/null 2>&1 ; echo yad wird installiert. Bitte warten... ; fi elif grep -i 'arch\|manjaro\|garuda\|endeavour|' /etc/os-release > /dev/null 2>&1 then echo Wire-G wird installiert... mkdir -p /home/"$USER"/.icons ; cp icons/* /home/"$USER"/.icons/ ; mkdir -p /home/"$USER"/.config/wg_nmcli + cp wg_on_start /home/"$USER"/.config/bin/ if ! which yad > /dev/null ; then sudo pacman -S --noconfirm yad > /dev/null 2>&1 ; echo yad wird installiert. Bitte warten... ; fi elif grep -i 'fedora' /etc/os-release > /dev/null 2>&1 then echo Wire-G wird installiert... mkdir -p /home/"$USER"/.icons ; cp icons/* /home/"$USER"/.icons/ ; mkdir -p /home/"$USER"/.config/wg_nmcli + cp wg_on_start /home/"$USER"/.config/bin/ if ! which yad > /dev/null ; then sudo dnf install yad > /dev/null 2>&1 ; echo yad wird installiert. Bitte warten... ; fi elif grep -i 'suse' /etc/os-release > /dev/null 2>&1 @@ -46,6 +49,8 @@ elif grep -i 'suse' /etc/os-release > /dev/null 2>&1 then echo Wire-G wird installiert... mkdir -p /home/"$USER"/.icons ; cp icons/* /home/"$USER"/.icons/ ; mkdir -p /home/"$USER"/.config/wg_nmcli + cp wg_on_start /home/"$USER"/.config/bin/ + else exit 1 fi diff --git a/wg_on_start b/wg_on_start new file mode 100755 index 0000000..fff650e --- /dev/null +++ b/wg_on_start @@ -0,0 +1,87 @@ +#!/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/" + + 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 AUTOSTART=$(grep 'TRUE TRUE\|TRUE FALSE' ${WG_WDIR}about.txt) +# then +# nmcli con mod "$ACTIVE" connection.autoconnect yes +# if [ -d /etc/xdg/autostart ] +# then +# echo "Autostartordner in /etc/xdg/ gefunden" +# elif [ -d /usr/share/autostart ] +# then +# 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) ) + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/wg_on_start.desktop b/wg_on_start.desktop new file mode 100644 index 0000000..aa12680 --- /dev/null +++ b/wg_on_start.desktop @@ -0,0 +1,4 @@ +[Desktop Entry] +Type=Application +Name=wg_on_start +Exec=/home/"$USER"/.config/bin/wg_on_start diff --git a/wire_g b/wire_g index 67ed616..3554137 100755 --- a/wire_g +++ b/wire_g @@ -184,15 +184,64 @@ up_or_down(){ # function button "about" about(){ + if AUTOSTART=$(grep 'TRUE TRUE' ${WG_WDIR}about.txt) + then + yad --form --fixed \ + --borders=8 --buttons-layout=center --text-align=center \ + --button="OK" --undecorated \ + --field="Autoconnect on PC Start:CHK" TRUE \ + --field="Autoupdate:CHK" TRUE \ + --image-on-top --image=${WG_PIC}wg-vpn-info.png \ + --separator=" " --window-icon=${WG_PIC}wg-vpn.png \ + --text=$"Wire-G Author: Désiré Werner Menrath \n +E-Mail: polunga40@unity-mail.de \n +At all Tunnels, the auto start is disabled. \n +Version: $VERSION \n +Use without warranty. \n +Download Wire-G \n" &> ${WG_WDIR}about.txt - yad --form --fixed \ - --borders=8 --buttons-layout=center --text-align=center \ - --button="OK" --undecorated \ - --field="Autoconnect on PC Start:CHK" FALSE \ - --field="Autoupdate:CHK" TRUE \ - --image-on-top --image=${WG_PIC}wg-vpn-info.png \ - --separator=" " --window-icon=${WG_PIC}wg-vpn.png \ - --text=$"Wire-G Author: Désiré Werner Menrath \n + if AUTOSTART=$(grep 'FALSE TRUE' ${WG_WDIR}about.txt) + then + yad --form --fixed \ + --borders=8 --buttons-layout=center --text-align=center \ + --button="OK" --undecorated \ + --field="Autoconnect on PC Start:CHK" FALSE \ + --field="Autoupdate:CHK" TRUE \ + --image-on-top --image=${WG_PIC}wg-vpn-info.png \ + --separator=" " --window-icon=${WG_PIC}wg-vpn.png \ + --text=$"Wire-G Author: Désiré Werner Menrath \n +E-Mail: polunga40@unity-mail.de \n +At all Tunnels, the auto start is disabled. \n +Version: $VERSION \n +Use without warranty. \n +Download Wire-G \n" &> ${WG_WDIR}about.txt + + if AUTOSTART=$(grep 'FALSE FALSE' ${WG_WDIR}about.txt) + then + yad --form --fixed \ + --borders=8 --buttons-layout=center --text-align=center \ + --button="OK" --undecorated \ + --field="Autoconnect on PC Start:CHK" FALSE \ + --field="Autoupdate:CHK" FALSE \ + --image-on-top --image=${WG_PIC}wg-vpn-info.png \ + --separator=" " --window-icon=${WG_PIC}wg-vpn.png \ + --text=$"Wire-G Author: Désiré Werner Menrath \n +E-Mail: polunga40@unity-mail.de \n +At all Tunnels, the auto start is disabled. \n +Version: $VERSION \n +Use without warranty. \n +Download Wire-G \n" &> ${WG_WDIR}about.txt + + if AUTOSTART=$(grep 'TRUE FALSE' ${WG_WDIR}about.txt) + then + yad --form --fixed \ + --borders=8 --buttons-layout=center --text-align=center \ + --button="OK" --undecorated \ + --field="Autoconnect on PC Start:CHK" TRUE \ + --field="Autoupdate:CHK" FALSE \ + --image-on-top --image=${WG_PIC}wg-vpn-info.png \ + --separator=" " --window-icon=${WG_PIC}wg-vpn.png \ + --text=$"Wire-G Author: Désiré Werner Menrath \n E-Mail: polunga40@unity-mail.de \n At all Tunnels, the auto start is disabled. \n Version: $VERSION \n