mirror of https://framagit.org/kyodev/kyopages.git
2.7.0
This commit is contained in:
parent
e8c30c71c8
commit
5eb3e9b984
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=2.6.7
|
||||
date="27/07/2017"
|
||||
version=2.7.0
|
||||
date="28/07/2017"
|
||||
projet="simpledebian"
|
||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues"
|
||||
script="getFlashPlayer"
|
||||
|
@ -56,20 +56,33 @@ f__user(){
|
|||
fi
|
||||
}
|
||||
|
||||
# log spécifique, fichier log limité à 10000octets, $1 message à loguer
|
||||
f__log(){
|
||||
if [ -w "/var/log/sdeb_getFlash.log" ]; then
|
||||
if [ "$(stat -c %s /var/log/sdeb_getFlash.log)" -ge "10000" ]; then
|
||||
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null > "/var/log/sdeb_getFlash.log"
|
||||
else
|
||||
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null >> "/var/log/sdeb_getFlash.log"
|
||||
fi
|
||||
else
|
||||
f__info "pour bénéficier de la nouvelle version des logs, vous devriez réinstaller manuellement $script" \
|
||||
"voir https://kyodev.frama.io/kyopages/scripts/getFlashPlayer/#installation-rapide-du-script"
|
||||
fi
|
||||
}
|
||||
|
||||
# affichage $1 en rouge, $1++ optionnels en bleu, sortie script sur erreur, log $1 si upgrade($opType)
|
||||
f__error() {
|
||||
echo -e "\n$RED Erreur critique: $1 $COLOR"
|
||||
for (( i=2 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
||||
echo "$COLOR"
|
||||
if [ "$opType" == "upgrade" ]; then logger --id -p user.err "$script $version: <erreur> $1"; fi
|
||||
if [ "$opType" == "upgrade" ]; then f__log "$script $version: $1"; fi
|
||||
exit 1
|
||||
}
|
||||
|
||||
# affichage des paramètres en bleu, ligne vide à la fin, syslog $1 si upgrade
|
||||
# affichage des paramètres en bleu, ligne vide à la fin
|
||||
f__info() {
|
||||
for (( i=1 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
||||
echo "$COLOR"
|
||||
if [ "$opType" == "upgrade" ]; then logger --id -p user.info "$1"; fi
|
||||
}
|
||||
|
||||
#test dépendances (commandes disponibles), $1 liste commandes
|
||||
|
@ -116,8 +129,13 @@ fscript_install(){
|
|||
chown "$user_": "/opt/bin/$script"
|
||||
# cron/anacron install
|
||||
fscript_cronAnacron install
|
||||
# création fichier log
|
||||
touch "/var/log/sdeb_getFlash.log"
|
||||
chmod a+rwx "/var/log/sdeb_getFlash.log"
|
||||
chown "$user_": "/var/log/sdeb_getFlash.log"
|
||||
[ -f "$script"_changelog.md ] || rm "$(basename $0)" &>/dev/null ## on efface pas si changelog (dev)
|
||||
f__info "$GREEN$script installé dans le système." "maintenant, appel du script par:$GREEN $script$BLUE (sans ./)"
|
||||
f__log "$script $version installé dans le système"
|
||||
exit 0
|
||||
}
|
||||
|
||||
|
@ -126,10 +144,12 @@ fscript_remove(){
|
|||
f__root || f__error "vous devez être ROOT pour supprimer ce script dans le système"
|
||||
# suppression de /opt
|
||||
rm /opt/bin/"$script" &>/dev/null
|
||||
unlink /usr/bin/"$script" &>/dev/null || unlink /usr/local/bin/"$script" &>/dev/null
|
||||
unlink /usr/bin/"$script" &>/dev/null
|
||||
unlink /usr/local/bin/"$script" &>/dev/null # ancienne localisation
|
||||
# cron/anacron remove
|
||||
fscript_cronAnacron remove
|
||||
f__info "$GREEN$script supprimé du système."
|
||||
f__log "$script $version supprimé du système"
|
||||
}
|
||||
|
||||
# version script en ligne, assigne $versionScript, $script_aJour=ok|ko,
|
||||
|
@ -152,7 +172,8 @@ fscript_dl(){
|
|||
chown "$user_": "$dirTemp$script"
|
||||
cp -d "$dirTemp$script" /opt/bin/"$script"
|
||||
rm -rf "$dirTemp"
|
||||
echo ""; f__info "$script mis à jour en version $versionScript"
|
||||
f__info "\n $script mis à jour en version $versionScript"
|
||||
f__log "$script mis à jour en version $versionScript"
|
||||
$0 upgrade #script mis à jour, on relance le script en upgrade pour le plugin
|
||||
exit 0
|
||||
}
|
||||
|
@ -182,7 +203,7 @@ rm "$dirInstall/libflashplayer.anacrontab"
|
|||
esac
|
||||
}
|
||||
|
||||
# version Flash en ligne & installée, $verFlash=x.y|na, $plugin_aJour=ok|ko
|
||||
# version Flash en ligne & installée, si $1="quiet" pas d'affichage, $verFlash=x.y|na, $plugin_aJour=ok|ko
|
||||
fflash_get_version(){
|
||||
local verInstall="$(cat /home/"$user_"/.mozilla/plugins/libflashplayer.version 2>/dev/null)"
|
||||
plugin_aJour="ok"
|
||||
|
@ -190,14 +211,14 @@ fflash_get_version(){
|
|||
sed -nr 's/^.*AUTO_ID.*Version[[:blank:]]+([0-9].*[0-9]).*$/\1/p')" || verFlash="na"
|
||||
if [ "$?" != "0" ]; then f__wget_test "$urlOnline"; fi # sortie script si erreur wget
|
||||
if [ $verFlash == "na" ]; then f__error "version FlashPlayer non accessible";
|
||||
else f__info "version FlashPlayer en ligne: $verFlash"; fi
|
||||
else [ "$1" == "quiet" ] || f__info "version FlashPlayer en ligne: $verFlash"; fi
|
||||
if [ -z "$verInstall" ]; then
|
||||
f__info "FlashPlayer non installé"
|
||||
elif [ "$verInstall" == "$verFlash" ]; then
|
||||
f__info "FlashPlayer à jour"
|
||||
[ "$1" == "quiet" ] || f__info "FlashPlayer à jour"
|
||||
else
|
||||
plugin_aJour="ko"
|
||||
f__info "version FlashPlayer installée: $verInstall, mise à jour possible"
|
||||
[ "$1" == "quiet" ] || f__info "version FlashPlayer installée: $verInstall, mise à jour possible"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -268,12 +289,11 @@ fflash_install(){
|
|||
local file="$(basename $2)"
|
||||
mkdir -p "$dirTemp"
|
||||
else
|
||||
f__info "installation FlashPlayer, version $verFlash"
|
||||
local file="flash_player_npapi_linux.$(getconf LONG_BIT).tar.gz"
|
||||
local dirTemp="/tmp/$script-$RANDOM/"
|
||||
if [ $verFlash == "na" ]; then fflash_get_version "quiet"; fi
|
||||
f__info "installation FlashPlayer, version $verFlash"
|
||||
mkdir -p "$dirTemp"
|
||||
# calcul $file, affichage version pendant l'install
|
||||
if [ $verFlash == "na" ]; then fflash_get_version; fi
|
||||
|
||||
# détection/chargement/test archive plugin flashplayer
|
||||
fflash_recup_url_v1
|
||||
|
@ -281,7 +301,6 @@ fflash_install(){
|
|||
if [ "$?" != "0" ]; then f__wget_test "$recup_url"; fi
|
||||
f__archive_test "$dirTemp$file" || f__error " Le fichier $dirTemp$file n'est pas une archive tar.gz valide"
|
||||
fi
|
||||
|
||||
# décompression archive téléchargée dans dossier de travail
|
||||
if [ -e "$file" ]; then tar -xaf "$file" -C "$dirTemp"; else tar -xaf "$dirTemp$file" -C "$dirTemp"; fi
|
||||
if [ "$1" == "manuel" ]; then verFlash="$(strings $dirTemp/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"; fi
|
||||
|
@ -290,15 +309,13 @@ fflash_install(){
|
|||
mkdir -p "$dirInstall"
|
||||
cp -f "$dirTemp"libflashplayer.so "$dirInstall/"
|
||||
rm -Rf "$dirTemp"
|
||||
|
||||
# marqueur version et maj dans plugins/ user mozilla
|
||||
# marqueur version
|
||||
echo "$verFlash" > "$dirInstall/libflashplayer.version"
|
||||
touch "$dirInstall/libflashplayer.maj"
|
||||
|
||||
# droits user si jamais installation par root
|
||||
chown -R "$user_": "$dirInstall"
|
||||
|
||||
echo ""; f__info "FlashPlayer $verFlash installé ou mis à jour pour $user_" "\tPour tester: http://get.adobe.com/flashplayer/about/"
|
||||
f__info "\n FlashPlayer $verFlash installé pour $user_" "\tPour tester: http://get.adobe.com/flashplayer/about/"
|
||||
f__log "FlashPlayer $verFlash installé pour $user_"
|
||||
}
|
||||
|
||||
# test et mise à jour plugin si plugin outdated
|
||||
|
@ -310,17 +327,18 @@ fflash_upgrade(){
|
|||
fflash_remove(){
|
||||
[ -e /home/kyodev/.mozilla/plugins/libflashplayer.so ] || f__error "FlashPlayer inexistant pour $user_\n"
|
||||
local verFlashRemove="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"
|
||||
rm -f "$dirInstall/libflashplayer.maj"
|
||||
rm -f "$dirInstall/libflashplayer.maj" &>/dev/null # ancien fichier éventuel
|
||||
rm -f "$dirInstall/libflashplayer.so"
|
||||
rm -f "$dirInstall/libflashplayer.version"
|
||||
f__info "$GREEN FlashPlayer $verFlashRemove désinstallé pour $user_"
|
||||
f__log "FlashPlayer $verFlashRemove désinstallé pour $user_"
|
||||
}
|
||||
|
||||
#initialisation
|
||||
f__affichage
|
||||
f__user
|
||||
verFlash="na"
|
||||
f__requis "wget logger file tar"
|
||||
f__requis "wget file tar"
|
||||
dirInstall="/home/$user_/.mozilla/plugins"
|
||||
urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer
|
||||
[ -e "$dirInstall/libflashplayer.so" ] && flash_installed="ok" || flash_installed="ko"
|
||||
|
@ -343,13 +361,14 @@ case "$1" in
|
|||
fscript_remove ;; # désinstallation du script
|
||||
"upgrade" )
|
||||
opType="upgrade"
|
||||
f__log="tests mise à jour"
|
||||
fscript_get_version
|
||||
fscript_dl
|
||||
[ "$flash_installed" == "ko" ] && exit 0
|
||||
fflash_get_version
|
||||
fflash_upgrade ;; # upgrade script et plugin si installé
|
||||
"manuel" )
|
||||
fflash_install_manuel "$2" ;; # install manuelle d'un chargement
|
||||
fflash_install_manuel "$2" ;; # installation manuelle d'un chargement
|
||||
* )
|
||||
fflash_help
|
||||
fflash_avertissement ;; # affichage help par défaut
|
||||
|
|
|
@ -2,6 +2,12 @@
|
|||
|
||||
## todo
|
||||
|
||||
## 2.7.0 27/07/2017
|
||||
|
||||
* mieux: fichier log spécifique mais nécessite réinstallation en root (pas de mise à jour)
|
||||
* mieux: logs d'évènements majeurs
|
||||
* fix: suppression ancienne localisation /usr/local/bin/
|
||||
* avertissement maj manuelle à faire pour nouveaux logs
|
||||
|
||||
## 2.6.7 27/07/2017
|
||||
|
||||
|
|
Loading…
Reference in New Issue