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
|
# Programmversion
|
||||||
PROGNAME=`basename $0`
|
PROGNAME=`basename $0`
|
||||||
VERSION="0.14"
|
VERSION="0.14.99.1"
|
||||||
|
|
||||||
##### Variablen deklaration #####
|
##### Variablen deklaration #####
|
||||||
# Downloadseite der Linuxinstallation
|
# Downloadseite der Linuxinstallation
|
||||||
@ -84,7 +84,38 @@ ETC=$UPDATER_INSTALL_LOCATION/etc/
|
|||||||
BIN=$UPDATER_INSTALL_LOCATION/bin/
|
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
|
if test ! -d $CALIBRE_INSTALL_LOCATION/calibre ; then
|
||||||
echo -e "\n\033[31mKeine Calibre Installation unter $CALIBRE_INSTALL_LOCATION gefunden.\033[1;34m"
|
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_term_output
|
||||||
func_change_install_dir
|
func_change_install_dir
|
||||||
func_check_dir
|
func_check_calibre_install
|
||||||
|
|
||||||
if [ -w "$BIN" ]; then
|
if [ -w "$BIN" ]; then
|
||||||
func_install_noroot
|
func_install_noroot
|
||||||
|
@ -71,7 +71,14 @@
|
|||||||
# Die Funktion Installation des Updaters wurde aufgeteilt in root_install und noroot_install
|
# 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
|
# Uninstall Funktion für den calibre-autoupdater mit gleichzeitiger nachfrage und eventueller
|
||||||
# deinstallation vom Calibre Programm
|
# 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
|
# TODO Auslesen der Download URL von der Download Seite
|
||||||
# kontrolle ob alle benötigten programme für das skript vorhanden sind
|
# kontrolle ob alle benötigten programme für das skript vorhanden sind
|
||||||
@ -125,7 +132,6 @@ CHECK_STATE_RESULT="$?"
|
|||||||
case "$CHECK_STATE_RESULT" in
|
case "$CHECK_STATE_RESULT" in
|
||||||
1)
|
1)
|
||||||
func_check_version
|
func_check_version
|
||||||
func_vercomp $CURRENT_VERSION $LATEST_VERSION # Funktion Versionvergleich
|
|
||||||
CHECK_VERCOMP_RESULT="$?"
|
CHECK_VERCOMP_RESULT="$?"
|
||||||
|
|
||||||
case $CHECK_VERCOMP_RESULT in
|
case $CHECK_VERCOMP_RESULT in
|
||||||
|
@ -40,37 +40,6 @@ else
|
|||||||
fi
|
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 () {
|
func_check_run_calibre () {
|
||||||
CALIBRE_PID=`ps ax | grep /opt/calibre/bin/calibre | grep -v grep | awk '{printf $1}'`
|
CALIBRE_PID=`ps ax | grep /opt/calibre/bin/calibre | grep -v grep | awk '{printf $1}'`
|
||||||
|
|
||||||
@ -95,10 +64,37 @@ 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/'`
|
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.
|
#Ermitteln der aktuell installierten Version.
|
||||||
CURRENT_VERSION=`calibre --version | sed 's/[^0-9.]*\([0-9.]*\).*/\1/'`
|
CURRENT_VERSION=`calibre --version | sed 's/[^0-9.]*\([0-9.]*\).*/\1/'`
|
||||||
|
|
||||||
|
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
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
func_check_prog () {
|
func_check_prog () {
|
||||||
func_term_output
|
func_term_output
|
||||||
if test ! -f $CURL ; then
|
if test ! -f $CURL ; then
|
||||||
|
Loading…
Reference in New Issue
Block a user