Neue Funktion im Installer, Check ob Verzeichnisstruktur vorhanden ist. /etc /bin /include, wenn nicht auf Nachfrage anlegen der Verzeichnisse
This commit is contained in:
parent
1ae1cd638f
commit
df14bffdee
@ -18,7 +18,7 @@
|
||||
|
||||
# Programmversion
|
||||
PROGNAME=`basename $0`
|
||||
VERSION="0.14"
|
||||
VERSION="0.14.99.1"
|
||||
|
||||
##### Variablen deklaration #####
|
||||
# Downloadseite der Linuxinstallation
|
||||
@ -84,7 +84,38 @@ ETC=$UPDATER_INSTALL_LOCATION/etc/
|
||||
BIN=$UPDATER_INSTALL_LOCATION/bin/
|
||||
}
|
||||
|
||||
func_check_dir() # Install oder Update Calibre Updater, Check ob Calibre überhaupt installiert ist
|
||||
func_check_dir_structur()
|
||||
{
|
||||
func_selection_query()
|
||||
{
|
||||
while ((!gueltig)); do # beginn der Ja/Nein Abfrage
|
||||
echo -e "\033[1;34m"
|
||||
read -sn1 -t 30 -p "Soll das Verzeichnis angelegt werden? [j/n] " answer
|
||||
echo -e "\e[m"
|
||||
case "$answer" in
|
||||
[JjYy]) result=1; gueltig=1 ;;
|
||||
[Nn]) result=0; gueltig=1 ;;
|
||||
"") result=0; gueltig=1 ;;
|
||||
*) gueltig=0 ;;
|
||||
esac
|
||||
done
|
||||
echo
|
||||
if (( ! result )); then
|
||||
echo -e "\n\033[1;31mBitte Entschuldige, aber die Installation des Calibre-Autoupdaters"
|
||||
echo -e "konnte nicht zu Ende geführt werden.\e[m\n"
|
||||
exit 2
|
||||
fi
|
||||
echo -e "\033[1;34mDas Verzeichnis wird angelegt!\e[m"
|
||||
}
|
||||
|
||||
if [ ! -d $BIN ]
|
||||
echo -e "\033[1;34mEs konnte im Installationsort kein /bin Verzeichnis gefunden werden"
|
||||
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
func_check_calibre_install() # Install oder Update Calibre Updater, Check ob Calibre überhaupt installiert ist
|
||||
{
|
||||
if test ! -d $CALIBRE_INSTALL_LOCATION/calibre ; then
|
||||
echo -e "\n\033[31mKeine Calibre Installation unter $CALIBRE_INSTALL_LOCATION gefunden.\033[1;34m"
|
||||
@ -203,7 +234,7 @@ func_install_process() # Installiert den Calibre Updater
|
||||
{
|
||||
func_term_output
|
||||
func_change_install_dir
|
||||
func_check_dir
|
||||
func_check_calibre_install
|
||||
|
||||
if [ -w "$BIN" ]; then
|
||||
func_install_noroot
|
||||
|
@ -71,7 +71,14 @@
|
||||
# Die Funktion Installation des Updaters wurde aufgeteilt in root_install und noroot_install
|
||||
# Uninstall Funktion für den calibre-autoupdater mit gleichzeitiger nachfrage und eventueller
|
||||
# deinstallation vom Calibre Programm
|
||||
# Der Code wurde überarbeitet, die Dialoge verbessert, Ergebnisse von Funktionsaufrufen in Variablen geschrieben
|
||||
# Der Code wurde überarbeitet, die Dialoge verbessert, Ergebnisse von Funktionsaufrufen in Variablen
|
||||
# geschrieben
|
||||
#
|
||||
# v0.15 die Funktion Versionsvergleich wurde mit der Funktion zum auslesen der Vorhanden Version und der verfügbaren
|
||||
# Version
|
||||
# zusammen gelegt.
|
||||
# der Installer kontrolliert ob am Installationsort des Updaters die Verzeichnisstrucktur /bin /include /etc
|
||||
# vorhanden ist und wenn nicht legt er sie an.
|
||||
#
|
||||
# TODO Auslesen der Download URL von der Download Seite
|
||||
# kontrolle ob alle benötigten programme für das skript vorhanden sind
|
||||
@ -125,7 +132,6 @@ CHECK_STATE_RESULT="$?"
|
||||
case "$CHECK_STATE_RESULT" in
|
||||
1)
|
||||
func_check_version
|
||||
func_vercomp $CURRENT_VERSION $LATEST_VERSION # Funktion Versionvergleich
|
||||
CHECK_VERCOMP_RESULT="$?"
|
||||
|
||||
case $CHECK_VERCOMP_RESULT in
|
||||
|
@ -40,37 +40,6 @@ else
|
||||
fi
|
||||
}
|
||||
|
||||
func_vercomp () { # Funktion zum Versionsvergleich
|
||||
if [[ $1 == $2 ]]
|
||||
then
|
||||
return 0
|
||||
fi
|
||||
local IFS=.
|
||||
local i ver1=($1) ver2=($2)
|
||||
# fill empty fields in ver1 with zeros
|
||||
for ((i=${#ver1[@]}; i<${#ver2[@]}; i++))
|
||||
do
|
||||
ver1[i]=0
|
||||
done
|
||||
for ((i=0; i<${#ver1[@]}; i++))
|
||||
do
|
||||
if [[ -z ${ver2[i]} ]]
|
||||
then
|
||||
# fill empty fields in ver2 with zeros
|
||||
ver2[i]=0
|
||||
fi
|
||||
if ((10#${ver1[i]} > 10#${ver2[i]}))
|
||||
then
|
||||
return 1
|
||||
fi
|
||||
if ((10#${ver1[i]} < 10#${ver2[i]}))
|
||||
then
|
||||
return 2
|
||||
fi
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
func_check_run_calibre () {
|
||||
CALIBRE_PID=`ps ax | grep /opt/calibre/bin/calibre | grep -v grep | awk '{printf $1}'`
|
||||
|
||||
@ -95,9 +64,36 @@ func_check_version () {
|
||||
LATEST_VERSION=`curl -s $CALIBRE_DOWNLOAD_PAGE | grep 'latest release of calibre' | sed 's/[^0-9.]*\([1-9]*[0-9]\.[1-9]*[0-9]\).*/\1/'`
|
||||
#Ermitteln der aktuell installierten Version.
|
||||
CURRENT_VERSION=`calibre --version | sed 's/[^0-9.]*\([0-9.]*\).*/\1/'`
|
||||
return 0
|
||||
}
|
||||
|
||||
if [[ $CURRENT_VERSION == $LATEST_VERSION ]]
|
||||
then
|
||||
return 0
|
||||
fi
|
||||
local IFS=.
|
||||
local i ver1=($CURRENT_VERSION) ver2=($LATEST_VERSION)
|
||||
# fill empty fields in ver1 with zeros
|
||||
for ((i=${#ver1[@]}; i<${#ver2[@]}; i++))
|
||||
do
|
||||
ver1[i]=0
|
||||
done
|
||||
for ((i=0; i<${#ver1[@]}; i++))
|
||||
do
|
||||
if [[ -z ${ver2[i]} ]]
|
||||
then
|
||||
# fill empty fields in ver2 with zeros
|
||||
ver2[i]=0
|
||||
fi
|
||||
if ((10#${ver1[i]} > 10#${ver2[i]}))
|
||||
then
|
||||
return 1
|
||||
fi
|
||||
if ((10#${ver1[i]} < 10#${ver2[i]}))
|
||||
then
|
||||
return 2
|
||||
fi
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
func_check_prog () {
|
||||
func_term_output
|
||||
|
Loading…
Reference in New Issue
Block a user