neue Version, diverse Fehler behoben, Progessbar hinzugefügt

This commit is contained in:
Leon Gaultier 2014-04-05 16:25:59 +02:00
commit fb5b6a59ac
4 changed files with 82 additions and 28 deletions

View File

@ -2,7 +2,7 @@
# Programmversion
PROGNAME=`basename $0`
VERSION="0.11a"
VERSION="0.12"
QUIET=0
func_term_output () {
@ -64,7 +64,7 @@ BIN=$UPDATER_INSTALL_LOCATION/bin/
func_check_dir() # Install oder Update Calibre Updater, Check ob Calibre überhaupt installiert ist
{
if test ! -d $CALIBRE_INSTALL_LOCATION/calibre ; then
echo -e "\n\033[1;31mKeine Calibre Installation unter $CALIBRE_INSTALL_LOCATION gefunden. Installation des Updaters nicht möglich.\e[m\n"; >&2
echo -e "\n\033[31mKeine Calibre Installation unter $CALIBRE_INSTALL_LOCATION gefunden. Installation des Updaters nicht möglich.\e[m\n"; >&2
exit 1
fi
@ -88,6 +88,27 @@ func_check_dir() # Install oder Update Calibre Updater, Check ob Calibre überh
fi
}
func_progressbar()
{
echo -e -n $'\033[34m------------------------------------------------------------------------- 100%\r'
echo -e -n "\033[32m0% "
for ((i=0; i<61; i++)); do
echo -e -n "\033[32m="
case $i in
15)
echo -e -n "25%" ;;
30)
echo -e -n "50%" ;;
45)
echo -e -n "75%" ;;
60)
echo -e -n " 100%" ;;
esac
sleep 0.05
done
echo -e "\e[m"
}
func_install() # Installiert den Calibre Updater
{
func_term_output
@ -99,36 +120,42 @@ func_check_dir
if [ -w "$BIN" ]; then
echo -e "\n\033[1;34mDer Calibre-Autoupdater wird nun unter $UPDATER_INSTALL_LOCATION installiert...\e[m";
echo -e "\n\033[1;32mProgrammdatei wird nach $BIN kopiert\e[m"; sleep 3
cp -v calibre-autoupdate $BIN
cp calibre-autoupdate $BIN
sed -i "s/_-INC-_/${INC//\//\/}/g" $BIN"calibre-autoupdate"
sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate"
sed -i "s/_-BIN-_/${BIN//\//\/}/g" $BIN"calibre-autoupdate"
sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate"
chmod -v 755 $BIN/calibre-autoupdate
chmod 755 $BIN/calibre-autoupdate
func_progressbar
echo -e "\n\033[1;32mDie Header-Dateien werden nach $INC kopiert\e[m"; sleep 3
cp -v calibre-autoupdate.h calibre-autoupdate_checks.h $INC
chmod -v 644 $INC/calibre-autoupdate.h $INC/calibre-autoupdate_checks.h
cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC
chmod 644 $INC/calibre-autoupdate.h $INC/calibre-autoupdate_checks.h
func_progressbar
echo -e "\n\033[1;32mDie Konfigurationsdatei wird nach $ETC kopiert\e[m"; sleep 3
cp -v calibre-autoupdate.conf $ETC
cp calibre-autoupdate.conf $ETC
sed -i "s/_-CALIBRE_INSTALL_LOCATION-_/${CALIBRE_INSTALL_LOCATION//\//\/}/g" $ETC"calibre-autoupdate.conf"
chmod -v 644 $ETC/calibre-autoupdate.conf
chmod 644 $ETC/calibre-autoupdate.conf
func_progressbar
else
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;32mProgrammdatei wird nach $BIN kopiert\e[m\e[m"; sleep 3
sudo echo -e "\n\033[1;36mProgrammdatei wird nach $BIN kopiert\e[m\e[m"
sudo cp calibre-autoupdate $BIN
sudo sed -i "s/_-INC-_/${INC//\//\/}/g" $BIN"calibre-autoupdate"
sudo sed -i "s/_-ETC-_/${ETC//\//\/}/g" $BIN"calibre-autoupdate"
sudo sed -i "s/_-BIN-_/${BIN//\//\/}/g" $BIN"calibre-autoupdate"
sudo sed -i "s/_-VERSION-_/${VERSION//\//\/}/g" $BIN"calibre-autoupdate"
sudo chmod 755 $BIN"calibre-autoupdate";
echo -e "\n\033[1;32mDie Header-Dateien werden nach $INC kopiert\e[m"; sleep 3
sudo chmod 755 $BIN"calibre-autoupdate"
func_progressbar
echo -e "\n\033[1;36mDie Header-Dateien werden nach $INC kopiert\e[m"
sudo cp calibre-autoupdate.h calibre-autoupdate_checks.h $INC
sudo chmod 644 $INC"calibre-autoupdate.h" $INC"calibre-autoupdate_checks.h";
echo -e "\n\033[1;32mDie Konfigurationsdatei wird nach $ETC kopiert\e[m"; sleep 3
sudo chmod 644 $INC"calibre-autoupdate.h" $INC"calibre-autoupdate_checks.h"
func_progressbar
echo -e "\n\033[1;36mDie Konfigurationsdatei wird nach $ETC kopiert\e[m"
sudo cp calibre-autoupdate.conf $ETC
sudo sed -i "s/_-CALIBRE_INSTALL_LOCATION-_/${CALIBRE_INSTALL_LOCATION//\//\/}/g" $ETC"calibre-autoupdate.conf"
sudo chmod 644 $ETC"calibre-autoupdate.conf";
func_progressbar
fi
echo -e "\n\n\n\033[1;36mDer Calibre-Autoupdater wurde erfolgreich installiert und"
echo -e "kann nun mit calibre-update oder $BIN"calibre-update" aufgerufen werden\e[m\n"

View File

@ -95,15 +95,6 @@ source $INC/calibre-autoupdate.h
source $INC/calibre-autoupdate_checks.h
func_http_status_code () {
echo -e "\033[1;34m Hole Status Code von $CHECK_CALIBRE_DOWNLOAD_PAGE. Bitte warten.";
stat_1=$(curl -o /dev/null --silent --head --write-out '%{http_code}' $CHECK_CALIBRE_DOWNLOAD_PAGE)
echo -e "\033[32m Status Codes von $CHECK_CALIBRE_DOWNLOAD_PAGE erhalten";
echo -e "\033[1;34m Hole Status Code von $CHECK_DOWNLOAD_URL. Bitte warten.";
stat_2=$(curl -o /dev/null --silent --head --write-out '%{http_code}' $CHECK_DOWNLOAD_URL)
echo -e "\033[32m Status Codes von $CHECK_DOWNLOAD_URL erhalten";
return 0
}
func_term_output () {
## Beginne mit der Ausgbe ##

View File

@ -61,3 +61,24 @@ func_vercomp () { # Funktion zum Versionsvergleich
done
return 0
}
func_progressbar()
{
echo -e -n $'\033[34m------------------------------------------------------------------------- 100%\r'
echo -e -n "\033[32m0% "
for ((i=0; i<61; i++)); do
echo -e -n "\033[32m="
case $i in
15)
echo -e -n "25%" ;;
30)
echo -e -n "50%" ;;
45)
echo -e -n "75%" ;;
60)
echo -e -n " 100%" ;;
esac
sleep 0.03
done
echo -e "\e[m"
}

View File

@ -2,18 +2,30 @@
# Copyright (C) 2013-2014 Leon Gaultier
#
func_http_status_code () {
echo -e "\033[1;34m Hole Status Code von $CHECK_CALIBRE_DOWNLOAD_PAGE. Bitte warten.";
stat_1=$(curl -o /dev/null --silent --head --write-out '%{http_code}' $CHECK_CALIBRE_DOWNLOAD_PAGE)
func_progressbar
echo -e "\033[32m Status Codes von $CHECK_CALIBRE_DOWNLOAD_PAGE erhalten";
echo -e "\n\033[1;34m Hole Status Code von $CHECK_DOWNLOAD_URL. Bitte warten.";
stat_2=$(curl -o /dev/null --silent --head --write-out '%{http_code}' $CHECK_DOWNLOAD_URL)
func_progressbar
echo -e "\033[32m Status Codes von $CHECK_DOWNLOAD_URL erhalten";
return 0
}
func_check_stat () { # Funktion zum Check Verfügbarkeit der Downloadseiten und der Internetverbindung
# Test for network conection
echo -e "\033[1;34m Ich schau dann mal ob Dein Computer überhaupt ein Netzwerk hat :-)";
echo -e "\n\033[1;34m Ich schau dann mal ob Dein Computer überhaupt ein Netzwerk hat :-)";
for INTERFACE in $(ls /sys/class/net/ | grep -v lo);
do
if [[ $(cat /sys/class/net/$INTERFACE/carrier) = 1 ]]; then
ONLINE=1
fi
done
func_progressbar
if [ $ONLINE ]; then
echo -e "\033[32m Oh Wunder! Habe ein Netzwerk gefunden. Verbinde über Interface $INTERFACE,
echo -e "\n\033[32m Oh Wunder! Habe ein Netzwerk gefunden. Verbinde über Interface $INTERFACE,
was nicht heißt das es geht :-P";
if [[ $stat_1 -eq 200 && $stat_2 -eq 200 ]]; then
return 1
@ -23,7 +35,11 @@ if [ $ONLINE ]; then
return 3
fi
else
<<<<<<< HEAD
echo -e "\033[31m Fehler!!! Sieh Dir die verdammte Desktop Benachrichtigung an!";
=======
echo -e "\n\033[31m Fehler!!! Bitte schau Dir die Desktop Benachrichtigung an!";
>>>>>>> devel
return 4
fi
}
@ -35,12 +51,11 @@ func_check_run_calibre () {
do
$NOTIFY "Um das Update installieren zu können, muss Calibre beendet werden. Calibre wird in einer Minute vom Update Service beendet. !!!Bitte speichere alle wichtigen Daten!!!"
sleep 3
echo ""
for (( i=60; i>0; i-- ));
do
echo -e "\033[31m noch \033[32m>>$i<< \033[31m Sekunden bis zum Calibre Programmende"
echo -e -n "\033[31m noch \033[32m>>$i<< \033[31m Sekunden bis zum Calibre Programmende\r"
sleep 1
clear
func_term_output
done
kill -15 $CALIBRE_PID
return 0