neue fertige Version für den Stable Zweig

This commit is contained in:
Leon Gaultier 2014-04-08 12:22:46 +02:00
parent e87cdccaaa
commit 1ae1cd638f
4 changed files with 53 additions and 53 deletions

View File

@ -18,7 +18,7 @@
# Programmversion # Programmversion
PROGNAME=`basename $0` PROGNAME=`basename $0`
VERSION="0.13.98" VERSION="0.14"
##### Variablen deklaration ##### ##### Variablen deklaration #####
# Downloadseite der Linuxinstallation # Downloadseite der Linuxinstallation
@ -62,7 +62,7 @@ func_version () # Versionsauskunft des Installers
func_term_output func_term_output
echo "$PROGNAME: Der Calibre-Autoupdate-Installer (CAUI) v$VERSION" echo "$PROGNAME: Der Calibre-Autoupdate-Installer (CAUI) v$VERSION"
echo "Leon Gaultier 2013-2014. Das Programm darf verteilt werden," echo "Leon Gaultier 2013-2014. Das Programm darf verteilt werden,"
echo "in der Hoffnung das es hilfreich ist, aber OHNR IRGENDEINE GARANTIE" echo -e "in der Hoffnung das es hilfreich ist, aber OHNR IRGENDEINE GARANTIE\n"
} }
@ -156,7 +156,7 @@ func_install_noroot()
# Die sed Befehle ersetzen in den Programmdateien Platzhalter für den Installationsort. # Die sed Befehle ersetzen in den Programmdateien Platzhalter für den Installationsort.
# Grund hierfür sind die includes der Header unf Configfiles die den kompletten Fad benörigen # Grund hierfür sind die includes der Header unf Configfiles die den kompletten Fad benörigen
echo -e "\n\033[1;34mDer Calibre-Autoupdater wird nun unter $UPDATER_INSTALL_LOCATION installiert...\e[m"; echo -e "\n\033[1;34mDer Calibre-Autoupdater wird nun unter $UPDATER_INSTALL_LOCATION installiert...\e[m";
echo -e "\033[1;32mProgrammdatei wird nach $BIN kopiert\e[m" echo -e "\033[1;32mProgramm-Dateien wird nach $BIN kopiert\e[m"
cp calibre-autoupdate $BIN cp calibre-autoupdate $BIN
sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate" sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate"
sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate" sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate"
@ -166,7 +166,7 @@ func_install_noroot()
cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC
chmod 644 $INC/calibre-autoupdate.h $INC/calibre-autoupdate_checks.h chmod 644 $INC/calibre-autoupdate.h $INC/calibre-autoupdate_checks.h
func_progressbar func_progressbar
echo -e "\n\033[1;32mDie Konfigurationsdatei wird nach $ETC kopiert\e[m" echo -e "\n\033[1;32mDie Konfigurations-Dateien wird nach $ETC kopiert\e[m"
cp calibre-autoupdate.conf $ETC cp calibre-autoupdate.conf $ETC
sed -i "s/_-INC-_/${INC//\//\/}/g" $ETC"calibre-autoupdate.conf" sed -i "s/_-INC-_/${INC//\//\/}/g" $ETC"calibre-autoupdate.conf"
sed -i "s/_-BIN-_/${BIN//\//\/}/g" $ETC"calibre-autoupdate.conf" sed -i "s/_-BIN-_/${BIN//\//\/}/g" $ETC"calibre-autoupdate.conf"
@ -180,7 +180,7 @@ func_install_root()
# Die sed Befehle ersetzen in den Programmdateien Platzhalter für den Installationsort. # Die sed Befehle ersetzen in den Programmdateien Platzhalter für den Installationsort.
# Grund hierfür sind die includes der Header unf Configfiles die den kompletten Fad benörigen # Grund hierfür sind die includes der Header unf Configfiles die den kompletten Fad benörigen
echo -e "\n\033[1;34mDu hast kein Schreibrecht auf $UPDATER_INSTALL_LOCATION, daher wird SUDO versucht zu verwenden...\e[m"; echo -e "\n\033[1;34mDu hast kein Schreibrecht auf $UPDATER_INSTALL_LOCATION, daher wird SUDO versucht zu verwenden...\e[m";
sudo echo -e "\033[1;36mProgrammdatei wird nach $BIN kopiert\e[m\e[m" sudo echo -e "\033[1;36mProgramm-Dateien wird nach $BIN kopiert\e[m\e[m"
sudo cp calibre-autoupdate $BIN sudo cp calibre-autoupdate $BIN
sudo sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate" sudo sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate"
sudo sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate" sudo sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate"
@ -190,7 +190,7 @@ func_install_root()
sudo cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC sudo cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC
sudo chmod 644 $INC"calibre-autoupdate.h" $INC"calibre-autoupdate_checks.h" sudo chmod 644 $INC"calibre-autoupdate.h" $INC"calibre-autoupdate_checks.h"
func_progressbar func_progressbar
echo -e "\n\033[1;36mDie Konfigurationsdatei wird nach $ETC kopiert\e[m" echo -e "\n\033[1;36mDie Konfigurations-Dateien wird nach $ETC kopiert\e[m"
sudo cp calibre-autoupdate.conf $ETC sudo cp calibre-autoupdate.conf $ETC
sudo sed -i "s/_-INC-_/${INC//\//\/}/g" $ETC"calibre-autoupdate.conf" sudo sed -i "s/_-INC-_/${INC//\//\/}/g" $ETC"calibre-autoupdate.conf"
sudo sed -i "s/_-BIN-_/${BIN//\//\/}/g" $ETC"calibre-autoupdate.conf" sudo sed -i "s/_-BIN-_/${BIN//\//\/}/g" $ETC"calibre-autoupdate.conf"
@ -227,7 +227,7 @@ func_install_calibre()
echo -e "\033[1;32mCalibre wird nun installiert...\n\e[m" echo -e "\033[1;32mCalibre wird nun installiert...\n\e[m"
wget -nv -O- $DOWNLOAD_URL | python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')" wget -nv -O- $DOWNLOAD_URL | python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')"
else else
echo -e "\033[1;34mDu hast kein Schreibrecht auf $CALIBRE_INSTALL_LOCATION. Calibre wird mit SUDO installiert. Bitte gib hierzu Dein Userpasswort ein...\n\033[1;32m" echo -e "\033[1;34mDu hast kein Schreibrecht auf $CALIBRE_INSTALL_LOCATION. Calibre wird mit SUDO installiert. Bitte gib hierzu Dein Userpasswort ein...\n\e[m"
sudo -v && wget -nv -O- $DOWNLOAD_URL | sudo python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')" sudo -v && wget -nv -O- $DOWNLOAD_URL | sudo python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')"
fi fi
echo -e "\n\n\033[1;36mHerzlichen Glückwunsch. Calibre wurde installiert und kann nun mit "calibre" verwendet werden.\n\033[0m" echo -e "\n\n\033[1;36mHerzlichen Glückwunsch. Calibre wurde installiert und kann nun mit "calibre" verwendet werden.\n\033[0m"

View File

@ -62,8 +62,8 @@
# !!! Das ist die erste Version welche eine reibungslose Installation und einen reibungslosen # !!! Das ist die erste Version welche eine reibungslose Installation und einen reibungslosen
# betrieb unter allen Linuxvarianten ermöglicht !!! # betrieb unter allen Linuxvarianten ermöglicht !!!
# #
# v0.13 Es wurden diverse Fehler bei eigentlichen Updateprozess bereinigt. Desweiteren wurden größere # v0.13 Es wurden diverse Fehler beim eigentlichen Updateprozess bereinigt. Desweiteren wurden größere
# in kleine geteilt. # Prozesse in kleine aufgeteilt.
# #
# v0.14 Uninstallfunktion für Calibre hinzugefügt. Hiermit kann Calibre von der Festplatte deinstalliert werden. # v0.14 Uninstallfunktion für Calibre hinzugefügt. Hiermit kann Calibre von der Festplatte deinstalliert werden.
# Bei einer nicht vorhandenen Calibreinstallation wird vom Installsript des Updaters gefragt, ob Calibre # Bei einer nicht vorhandenen Calibreinstallation wird vom Installsript des Updaters gefragt, ob Calibre
@ -71,6 +71,7 @@
# 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
# #
# 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
@ -119,15 +120,15 @@ NOTIFY="echo"
func_term_output # ruft die Funktion für Konsolenausgabe auf func_term_output # ruft die Funktion für Konsolenausgabe auf
func_check_stat # ruft die Funktion "check Status Netzwerk und Downloadadressen" auf func_check_stat # ruft die Funktion "check Status Netzwerk und Downloadadressen" auf
CHECK_STATE_RESULT="$?"
case "$?" in case "$CHECK_STATE_RESULT" in
1) 1)
func_check_version func_check_version
CHECK_STATE_RESULT="$1" func_vercomp $CURRENT_VERSION $LATEST_VERSION # Funktion Versionvergleich
echo $CHECK_STATE_RESULT CHECK_VERCOMP_RESULT="$?"
sleep 1000
func_vercomp $CURRENT_VERSION $LATEST_VERSION # Funktion Versionvergleich case $CHECK_VERCOMP_RESULT in
case $CHECK_STATE_RESULT in
0) 0)
$NOTIFY "Deine Calibre Version ist auf dem aktuellsten Stand ($CURRENT_VERSION).";; $NOTIFY "Deine Calibre Version ist auf dem aktuellsten Stand ($CURRENT_VERSION).";;
1) 1)
@ -139,11 +140,11 @@ sleep 1000
if [ -w "$CALIBRE_INSTALL_LOCATION" ]; then if [ -w "$CALIBRE_INSTALL_LOCATION" ]; then
$NOTIFY "Das Update wird nun installiert..." $NOTIFY "Das Update wird nun installiert..."
echo -e "\033[34m" echo -e "\e[m"
wget -nv -O- $DOWNLOAD_URL | python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')" wget -nv -O- $DOWNLOAD_URL | python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')"
else else
$NOTIFY "Du hast kein Schreibrecht auf $CALIBRE_INSTALL_LOCATION. Das Update wird mit SUDO installiert. Bitte gib hierzu Dein Userpasswort im Terminalfenster ein..." $NOTIFY "Du hast kein Schreibrecht auf $CALIBRE_INSTALL_LOCATION. Das Update wird mit SUDO installiert. Bitte gib hierzu Dein Userpasswort im Terminalfenster ein..."
echo -e "\033[34m" echo -e "\e[m"
sudo -v && wget -nv -O- $DOWNLOAD_URL | sudo python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')" sudo -v && wget -nv -O- $DOWNLOAD_URL | sudo python -c "import sys; main=lambda x:sys.stderr.write('Download failed\n'); exec(sys.stdin.read()); main('$CALIBRE_INSTALL_LOCATION')"
fi fi
$NOTIFY "Calibre wurde auf die neuste Version aktuallisiert." $NOTIFY "Calibre wurde auf die neuste Version aktuallisiert."

View File

@ -15,7 +15,6 @@ func_help ()
echo "$PROGNAME -- Der Calibre! Linux Edition calibre-autoupdater (CAU)" echo "$PROGNAME -- Der Calibre! Linux Edition calibre-autoupdater (CAU)"
echo "" echo ""
echo "Options:" echo "Options:"
echo " -q, --quiet ohne Konsolenausgabe"
echo " -h, --help zeigt die Hilfe an" echo " -h, --help zeigt die Hilfe an"
echo " -V, --version gibt die Programmversion aus" echo " -V, --version gibt die Programmversion aus"
echo " -c, --check kontrolliert ob benötigte Programme vorhanden sind" echo " -c, --check kontrolliert ob benötigte Programme vorhanden sind"
@ -30,41 +29,10 @@ func_version ()
func_term_output func_term_output
echo "$PROGNAME: Der Calibre! autoupdater v$VERSION" echo "$PROGNAME: Der Calibre! autoupdater v$VERSION"
echo "Leon Gaultier 2013-2014. Das Programm darf verteilt werden," echo "Leon Gaultier 2013-2014. Das Programm darf verteilt werden,"
echo "in der Hoffnung das es hilfreich ist, aber OHNR IRGENDEINE GARANTIE" echo -e "in der Hoffnung das es hilfreich ist, aber OHNR IRGENDEINE GARANTIE\n"
} }
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_term_output () { func_term_output () {
## Beginne mit der Ausgbe ## ## Beginne mit der Ausgbe ##
tty -s && clear tty -s && clear
@ -154,6 +122,6 @@ func_uninstall_calibre()
else else
sudo calibre-uninstall sudo calibre-uninstall
fi fi
echo -e "\n\n\033[1;32mCalibre würde DeInstalliert! Schade es ist ein tolles Programm zur eBookverwaltung :-)\e[m" echo -e "\n\033[1;32mCalibre würde DeInstalliert! Schade es ist ein tolles Programm zur eBookverwaltung :-)\n\e[m"
return 0 return 0
} }

View File

@ -40,6 +40,37 @@ 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}'`