Optionsschalter für check externer Programme, zusätzlich check externer Programme nach Programmaufruf, Installation je nach dem ob Schreibrechte im installort
This commit is contained in:
parent
0720809d02
commit
b02a06b83a
@ -47,6 +47,10 @@
|
|||||||
# V0.7 Der Updateprozes wurde in eine Prozedure geschrieben und die main Prozedure gibt,
|
# V0.7 Der Updateprozes wurde in eine Prozedure geschrieben und die main Prozedure gibt,
|
||||||
# nur noch Hilfe und Verion aus oder startet sofort die Update Prozedure
|
# nur noch Hilfe und Verion aus oder startet sofort die Update Prozedure
|
||||||
#
|
#
|
||||||
|
# V0.8 Optionsschalter hinzugefügt, Kontrolle ob benötigte Programme vorhanden sind.
|
||||||
|
# Unterschiedliche Installationsart und -dialog je nach dem ob man Schreibrechte
|
||||||
|
# auf im Calibre Installationspath hat oder nicht.
|
||||||
|
#
|
||||||
# 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
|
||||||
#
|
#
|
||||||
@ -73,10 +77,15 @@ DOWNLOAD_URL=https://github.com/kovidgoyal/calibre/raw/master/setup/linux-instal
|
|||||||
CHECK_CALIBRE_DOWNLOAD_PAGE=http://calibre-ebook.com
|
CHECK_CALIBRE_DOWNLOAD_PAGE=http://calibre-ebook.com
|
||||||
CHECK_DOWNLOAD_URL=https://github.com
|
CHECK_DOWNLOAD_URL=https://github.com
|
||||||
|
|
||||||
|
# externe Programme welche benötigt werden
|
||||||
|
CURL=/usr/bin/curl
|
||||||
|
NOTIFY=/usr/bin/notify-send
|
||||||
|
AWK=/usr/bin/awk
|
||||||
|
|
||||||
# Programmversion
|
# Programmversion
|
||||||
progname=`basename $0`
|
PROGNAME=`basename $0`
|
||||||
version="0.7"
|
VERSION="0.7.991"
|
||||||
quiet=0
|
QUIET=0
|
||||||
|
|
||||||
|
|
||||||
#################################
|
#################################
|
||||||
@ -84,26 +93,28 @@ quiet=0
|
|||||||
|
|
||||||
func_usage ()
|
func_usage ()
|
||||||
{
|
{
|
||||||
echo "Usage: $progname [OPTION...]"
|
echo "Usage: $PROGNAME [OPTION...]"
|
||||||
echo "Try '$progname --help' or '$progname -h' for more information."
|
echo "Try '$PROGNAME --help' or '$PROGNAME -h' for more information."
|
||||||
}
|
}
|
||||||
|
|
||||||
func_help ()
|
func_help ()
|
||||||
{
|
{
|
||||||
echo "Usage: $progname [OPTION...]"
|
func_term_output
|
||||||
echo "$progname -- the Calibre! Linux Edition calibre-autoupdater"
|
echo "Usage: $PROGNAME [OPTION...]"
|
||||||
|
echo "$PROGNAME -- the Calibre! Linux Edition calibre-autoupdater"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Options:"
|
echo "Options:"
|
||||||
echo " -q, --quiet Disable output"
|
echo " -q, --quiet ohne Konsolenausgabe"
|
||||||
echo " -h, --help Give this help list"
|
echo " -h, --help zeigt die Hilfe an"
|
||||||
echo " -V, --version Print program version"
|
echo " -V, --version gibt die Programmversion aus"
|
||||||
|
echo " -c, --check checkt ob benötigte Programme vorhanden sind"
|
||||||
echo ""
|
echo ""
|
||||||
echo "Report bugs to <leongaultier@gmail.com>."
|
echo -e "Report bugs to <leongaultier@gmail.com>.\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
func_version ()
|
func_version ()
|
||||||
{
|
{
|
||||||
echo "$progname: the Calibre! autoupdater v$version"
|
echo "$PROGNAME: the Calibre! autoupdater v$VERSION"
|
||||||
echo "Copyright (C) Leon Gaultier 2013-2014. This program is distributed"
|
echo "Copyright (C) Leon Gaultier 2013-2014. This program is distributed"
|
||||||
echo "in the hope that it will be useful, but WITHOUT ANY WARRANTY"
|
echo "in the hope that it will be useful, but WITHOUT ANY WARRANTY"
|
||||||
|
|
||||||
@ -199,7 +210,7 @@ func_http_status_code () {
|
|||||||
func_term_output () {
|
func_term_output () {
|
||||||
## Beginne mit der Ausgbe ##
|
## Beginne mit der Ausgbe ##
|
||||||
tty -s && clear
|
tty -s && clear
|
||||||
echo -e "\033[44m \033[0m\033[1m $progname Version $version\033[0m\n\033[44m \033[0m 2013-2014 by Leon Gaultier\n";
|
echo -e "\033[44m \033[0m\033[1m $PROGNAME Version $VERSION\033[0m\n\033[44m \033[0m 2013-2014 by Leon Gaultier\n";
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -212,11 +223,26 @@ func_check_version () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#func_check_progs () {
|
func_check_prog () {
|
||||||
|
func_term_output
|
||||||
|
if test ! -f $CURL ; then
|
||||||
|
echo -e "\033[31mDu hast Curl nich installiert, es wird aber für die Updatefunktion benötigt\n"; >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test ! -f $NOTIFY ; then
|
||||||
|
echo -e "\033[31mDu hast Notify-Send nich installiert, es wird aber für die Updatefunktion benötigt\n"; >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test ! -f $AWK ; then
|
||||||
|
echo -e "\033[31mDu hast AWK nich installiert, es wird aber für die Updatefunktion benötigt\n"; >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
#}
|
echo -e "\033[32mAlle benötigten Programme sind installiert. Starte $PROGNAME ohne Optionen und"
|
||||||
|
echo -e "es wird nach einer aktuellen Calibre Version geschaut und Upgedatet\n";
|
||||||
|
}
|
||||||
#######################################################
|
#######################################################
|
||||||
#######################################################
|
#######################################################
|
||||||
## main vom Script --- Start des Updater Skripts
|
## main vom Script --- Start des Updater Skripts
|
||||||
@ -245,10 +271,16 @@ case $? in
|
|||||||
$NOTIFY "Ein Calibre Update ist verfügbar. (Installiert: \"$CURRENT_VERSION\", letzte Verfügbare: \"$LATEST_VERSION\")"
|
$NOTIFY "Ein Calibre Update ist verfügbar. (Installiert: \"$CURRENT_VERSION\", letzte Verfügbare: \"$LATEST_VERSION\")"
|
||||||
# Installiert die aktuellste verfügbare Version von der Calibre Homepage
|
# Installiert die aktuellste verfügbare Version von der Calibre Homepage
|
||||||
func_check_run_calibre # Aufruf der Funktion ob Calibre gestartet ist
|
func_check_run_calibre # Aufruf der Funktion ob Calibre gestartet ist
|
||||||
|
|
||||||
|
if [ -w "$CALIBRE_INSTALL_LOCATION" ]; then
|
||||||
|
$NOTIFY "Du hast Schreibrechte auf \"$CALIBRE_INSTALL_LOCATION\" Das Update wird nun installiert..."
|
||||||
|
echo -e "\033[1;34m"
|
||||||
|
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
|
||||||
$NOTIFY "Das Update wird nun installiert. Bitte gib hierzu Dein Userpasswort im Terminalfenster ein..."
|
$NOTIFY "Das Update wird nun installiert. Bitte gib hierzu Dein Userpasswort im Terminalfenster ein..."
|
||||||
echo -e "\033[1;34m"
|
echo -e "\033[1;34m"
|
||||||
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
|
||||||
$NOTIFY "Calibre wurde upgedatet."
|
$NOTIFY "Calibre wurde upgedatet."
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@ -278,14 +310,17 @@ do
|
|||||||
|
|
||||||
case "$arg" in
|
case "$arg" in
|
||||||
--quiet | -q )
|
--quiet | -q )
|
||||||
quiet=1 ;;
|
QUIET=1 ;;
|
||||||
--help | -h )
|
--help | -h )
|
||||||
func_help; exit 0 ;;
|
func_help; exit 0 ;;
|
||||||
--version | -V | -v )
|
--version | -V | -v )
|
||||||
func_version; exit 0 ;;
|
func_version; exit 0 ;;
|
||||||
|
--check | -C | -c )
|
||||||
|
func_check_prog; exit 0 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
done
|
done
|
||||||
|
func_check_prog
|
||||||
func_update
|
func_update
|
||||||
|
|
||||||
exit 0
|
exit 0
|
Loading…
Reference in New Issue
Block a user