From 4bc87b96423dd84d8ed484e2ae11f8e1ac8f9648 Mon Sep 17 00:00:00 2001
From: Paul S
Date: Wed, 5 May 2021 17:22:57 +0200
Subject: [PATCH] Implemented option "--gui" for graphical installer
---
install.sh | 183 +++++++++++++++++++++++++++--------------------------
1 file changed, 95 insertions(+), 88 deletions(-)
diff --git a/install.sh b/install.sh
index 2852df2..ba8f1da 100755
--- a/install.sh
+++ b/install.sh
@@ -2,99 +2,106 @@
# Variables
mydir=$PWD
-langDE="languages/german.py"
-langEN="languages/english.py"
+langDE="./languages/german.py"
+langEN="./languages/english.py"
-# Intro
-# language
-echo -e "Hello, first of all, which language do you prefer: German [DE] or English [EN]?"
-read language
-if [ $language = "DE" ]; then
- echo -e "Perfekt, nun ist das deutsche Sprachpaket aktiviert. Willkommen! \n"
- . $langDE
+# Check if graphical installer should be executed
+if [ "$1" == "--gui" ]; then
+ python3 -B install.py
+ exit 0
+else
+ # Intro
+ # language
+ echo -e "Hello, first of all, which language do you prefer: German [DE] or English [EN]?"
+ read language
+ if [ $language = "DE" ]; then
+ echo -e "Perfekt, nun ist das deutsche Sprachpaket aktiviert. Willkommen! \n"
+ . $langDE
+ sleep 1
+ fi
+ if [ $language = "EN" ]; then
+ echo -e "Perfect, the English language package is now activated. Welcome!. \n"
+ . $langEN
+ sleep 1
+ fi
+
+ echo -e "\n$intromsg1 \n"
sleep 1
-fi
-if [ $language = "EN" ]; then
- echo -e "Perfect, the English language package is now activated. Welcome!. \n"
- . $langEN
+ echo -e " \n$intromsg2\n"
sleep 1
-fi
+ # Installer
-echo -e "\n$intromsg1 \n"
-sleep 1
-echo -e " \n$intromsg2\n"
-sleep 1
-# Installer
-
-# creates the file 'Backuppy.sh'
-touch Backuppy.sh
-echo "#!/bin/bash" >> Backuppy.sh
-chmod +x Backuppy.sh
-# which Rsync options are available and which one you want to use
-echo -e "$rsyncopt \n"
-sleep 1
-
-# asks if you want to exclude files/directories from backup and creates an exclude file in case of Yes
-echo -e "$excludefile1"
-read exclude
-if [ $exclude = "J" ]; then
- echo -e "$excludefile2 \n"
- touch exclude.txt
+ # creates the file 'Backuppy.sh'
+ touch Backuppy.sh
+ echo "#!/bin/bash" >> Backuppy.sh
+ chmod +x Backuppy.sh
+ # which Rsync options are available and which one you want to use
+ echo -e "$rsyncopt \n"
sleep 1
-elif [ $exclude = "Y" ]; then
- echo -e "$excludefile2 \n"
- touch exclude.txt
+
+ # asks if you want to exclude files/directories from backup and creates an exclude file in case of Yes
+ echo -e "$excludefile1"
+ read exclude
+ if [ $exclude = "J" ]; then
+ echo -e "$excludefile2 \n"
+ touch exclude.txt
+ sleep 1
+ elif [ $exclude = "Y" ]; then
+ echo -e "$excludefile2 \n"
+ touch exclude.txt
+ sleep 1
+ fi
+ if [ $exclude = "N" ]; then
+ echo -e "$excludefile3 \n"
+ sleep 1
+ fi
+
+ # Asks for the source directory which should be saved
+ echo -e "$srcdir1"
sleep 1
-fi
-if [ $exclude = "N" ]; then
- echo -e "$excludefile3 \n"
+ echo -e "$srcdir2"
+ read sourcedir
+ echo -e "$srcdir3_1 $sourcedir $srcdir3_2"
sleep 1
+
+ # asks for the destination directory in which the backup should be saved
+ echo -e "$targetdir1"
+ read targetdir
+ echo -e "$targetdir2_1 $targetdir $targetdir2_2"
+ sleep 1
+
+ # alias entry in .bashrc or .zshrc
+ # .zshrc case 1
+ echo $SHELL
+ if [ $SHELL = "/usr/bin/zsh" ]; then
+ echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.zshrc
+ fi
+ # zshrc case 2
+ echo $SHELL
+ if [ $SHELL = "/bin/zsh" ]; then
+ echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.zshrc
+ fi
+ #bashrc case 1
+ if [ $SHELL = "/usr/bin/bash" ]; then
+ echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.bashrc
+ fi
+ # bashrc case 2
+ if [ $SHELL = "/bin/bash" ]; then
+ echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.bashrc
+ fi
+
+ # collects all the information needed to execute the rsync command and creates it.
+ echo -e "$collect \n"
+ sleep 1
+ echo -e "rsync -aqp --exclude-from=$mydir/exclude.txt $sourcedir $targetdir \n"
+ sleep 1
+
+ # enter the rsync command in Backuppy.sh
+ echo "rsync -aqp --exclude-from=$mydir/exclude.txt $sourcedir $targetdir" >> Backuppy.sh
+
+ # Outro
+ echo -e "$outro1"
+ sleep 2
+ echo "$outro2"
+ exit 0
fi
-
-# Asks for the source directory which should be saved
-echo -e "$srcdir1"
-sleep 1
-echo -e "$srcdir2"
-read sourcedir
-echo -e "$srcdir3_1 $sourcedir $srcdir3_2"
-sleep 1
-
-# asks for the destination directory in which the backup should be saved
-echo -e "$targetdir1"
-read targetdir
-echo -e "$targetdir2_1 $targetdir $targetdir2_2"
-sleep 1
-
-# alias entry in .bashrc or .zshrc
-# .zshrc case 1
-echo $SHELL
-if [ $SHELL = "/usr/bin/zsh" ]; then
- echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.zshrc
-fi
-# zshrc case 2
-echo $SHELL
-if [ $SHELL = "/bin/zsh" ]; then
- echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.zshrc
-fi
-#bashrc case 1
-if [ $SHELL = "/usr/bin/bash" ]; then
- echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.bashrc
-fi
-# bashrc case 2
-if [ $SHELL = "/bin/bash" ]; then
- echo "alias backuppy='sudo $mydir/Backuppy.sh'" >> ~/.bashrc
-fi
-
-# collects all the information needed to execute the rsync command and creates it.
-echo -e "$collect \n"
-sleep 1
-echo -e "rsync -aqp --exclude-from=$mydir/exclude.txt $sourcedir $targetdir \n"
-sleep 1
-
-# enter the rsync command in Backuppy.sh
-echo "rsync -aqp --exclude-from=$mydir/exclude.txt $sourcedir $targetdir" >> Backuppy.sh
-
-# Outro
-echo -e "$outro1"
-sleep 2
-echo "$outro2"