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
|
#!/bin/bash
|
||||||
|
|
||||||
version=2.6.7
|
version=2.7.0
|
||||||
date="27/07/2017"
|
date="28/07/2017"
|
||||||
projet="simpledebian"
|
projet="simpledebian"
|
||||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues"
|
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues"
|
||||||
script="getFlashPlayer"
|
script="getFlashPlayer"
|
||||||
|
@ -56,20 +56,33 @@ f__user(){
|
||||||
fi
|
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)
|
# affichage $1 en rouge, $1++ optionnels en bleu, sortie script sur erreur, log $1 si upgrade($opType)
|
||||||
f__error() {
|
f__error() {
|
||||||
echo -e "\n$RED Erreur critique: $1 $COLOR"
|
echo -e "\n$RED Erreur critique: $1 $COLOR"
|
||||||
for (( i=2 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
for (( i=2 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
||||||
echo "$COLOR"
|
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
|
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() {
|
f__info() {
|
||||||
for (( i=1 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
for (( i=1 ; i<=$# ; i++ )); do echo -e " $BLUE${!i}"; done
|
||||||
echo "$COLOR"
|
echo "$COLOR"
|
||||||
if [ "$opType" == "upgrade" ]; then logger --id -p user.info "$1"; fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#test dépendances (commandes disponibles), $1 liste commandes
|
#test dépendances (commandes disponibles), $1 liste commandes
|
||||||
|
@ -116,8 +129,13 @@ fscript_install(){
|
||||||
chown "$user_": "/opt/bin/$script"
|
chown "$user_": "/opt/bin/$script"
|
||||||
# cron/anacron install
|
# cron/anacron install
|
||||||
fscript_cronAnacron 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 "$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__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
|
exit 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -126,10 +144,12 @@ fscript_remove(){
|
||||||
f__root || f__error "vous devez être ROOT pour supprimer ce script dans le système"
|
f__root || f__error "vous devez être ROOT pour supprimer ce script dans le système"
|
||||||
# suppression de /opt
|
# suppression de /opt
|
||||||
rm /opt/bin/"$script" &>/dev/null
|
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
|
# cron/anacron remove
|
||||||
fscript_cronAnacron remove
|
fscript_cronAnacron remove
|
||||||
f__info "$GREEN$script supprimé du système."
|
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,
|
# version script en ligne, assigne $versionScript, $script_aJour=ok|ko,
|
||||||
|
@ -152,7 +172,8 @@ fscript_dl(){
|
||||||
chown "$user_": "$dirTemp$script"
|
chown "$user_": "$dirTemp$script"
|
||||||
cp -d "$dirTemp$script" /opt/bin/"$script"
|
cp -d "$dirTemp$script" /opt/bin/"$script"
|
||||||
rm -rf "$dirTemp"
|
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
|
$0 upgrade #script mis à jour, on relance le script en upgrade pour le plugin
|
||||||
exit 0
|
exit 0
|
||||||
}
|
}
|
||||||
|
@ -182,7 +203,7 @@ rm "$dirInstall/libflashplayer.anacrontab"
|
||||||
esac
|
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(){
|
fflash_get_version(){
|
||||||
local verInstall="$(cat /home/"$user_"/.mozilla/plugins/libflashplayer.version 2>/dev/null)"
|
local verInstall="$(cat /home/"$user_"/.mozilla/plugins/libflashplayer.version 2>/dev/null)"
|
||||||
plugin_aJour="ok"
|
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"
|
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 [ "$?" != "0" ]; then f__wget_test "$urlOnline"; fi # sortie script si erreur wget
|
||||||
if [ $verFlash == "na" ]; then f__error "version FlashPlayer non accessible";
|
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
|
if [ -z "$verInstall" ]; then
|
||||||
f__info "FlashPlayer non installé"
|
f__info "FlashPlayer non installé"
|
||||||
elif [ "$verInstall" == "$verFlash" ]; then
|
elif [ "$verInstall" == "$verFlash" ]; then
|
||||||
f__info "FlashPlayer à jour"
|
[ "$1" == "quiet" ] || f__info "FlashPlayer à jour"
|
||||||
else
|
else
|
||||||
plugin_aJour="ko"
|
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
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -212,7 +233,7 @@ cat << 'EOF'
|
||||||
Il sera bloqué plus ou moins bloqué à terme pas les navigateurs majeurs,
|
Il sera bloqué plus ou moins bloqué à terme pas les navigateurs majeurs,
|
||||||
c'est à dire Firefox et Chrom(ium). Préparez vous à cela...
|
c'est à dire Firefox et Chrom(ium). Préparez vous à cela...
|
||||||
EOF
|
EOF
|
||||||
echo -e "voir:$GREEN https://developer.mozilla.org/fr/docs/Plugins/Roadmap$COLOR\n"
|
echo -e " voir:$GREEN https://developer.mozilla.org/fr/docs/Plugins/Roadmap$COLOR\n"
|
||||||
}
|
}
|
||||||
|
|
||||||
# affichage help
|
# affichage help
|
||||||
|
@ -268,12 +289,11 @@ fflash_install(){
|
||||||
local file="$(basename $2)"
|
local file="$(basename $2)"
|
||||||
mkdir -p "$dirTemp"
|
mkdir -p "$dirTemp"
|
||||||
else
|
else
|
||||||
f__info "installation FlashPlayer, version $verFlash"
|
|
||||||
local file="flash_player_npapi_linux.$(getconf LONG_BIT).tar.gz"
|
local file="flash_player_npapi_linux.$(getconf LONG_BIT).tar.gz"
|
||||||
local dirTemp="/tmp/$script-$RANDOM/"
|
local dirTemp="/tmp/$script-$RANDOM/"
|
||||||
|
if [ $verFlash == "na" ]; then fflash_get_version "quiet"; fi
|
||||||
|
f__info "installation FlashPlayer, version $verFlash"
|
||||||
mkdir -p "$dirTemp"
|
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
|
# détection/chargement/test archive plugin flashplayer
|
||||||
fflash_recup_url_v1
|
fflash_recup_url_v1
|
||||||
|
@ -281,7 +301,6 @@ fflash_install(){
|
||||||
if [ "$?" != "0" ]; then f__wget_test "$recup_url"; fi
|
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"
|
f__archive_test "$dirTemp$file" || f__error " Le fichier $dirTemp$file n'est pas une archive tar.gz valide"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# décompression archive téléchargée dans dossier de travail
|
# 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 [ -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
|
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"
|
mkdir -p "$dirInstall"
|
||||||
cp -f "$dirTemp"libflashplayer.so "$dirInstall/"
|
cp -f "$dirTemp"libflashplayer.so "$dirInstall/"
|
||||||
rm -Rf "$dirTemp"
|
rm -Rf "$dirTemp"
|
||||||
|
# marqueur version
|
||||||
# marqueur version et maj dans plugins/ user mozilla
|
|
||||||
echo "$verFlash" > "$dirInstall/libflashplayer.version"
|
echo "$verFlash" > "$dirInstall/libflashplayer.version"
|
||||||
touch "$dirInstall/libflashplayer.maj"
|
|
||||||
|
|
||||||
# droits user si jamais installation par root
|
# droits user si jamais installation par root
|
||||||
chown -R "$user_": "$dirInstall"
|
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
|
# test et mise à jour plugin si plugin outdated
|
||||||
|
@ -310,17 +327,18 @@ fflash_upgrade(){
|
||||||
fflash_remove(){
|
fflash_remove(){
|
||||||
[ -e /home/kyodev/.mozilla/plugins/libflashplayer.so ] || f__error "FlashPlayer inexistant pour $user_\n"
|
[ -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')"
|
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.so"
|
||||||
rm -f "$dirInstall/libflashplayer.version"
|
rm -f "$dirInstall/libflashplayer.version"
|
||||||
f__info "$GREEN FlashPlayer $verFlashRemove désinstallé pour $user_"
|
f__info "$GREEN FlashPlayer $verFlashRemove désinstallé pour $user_"
|
||||||
|
f__log "FlashPlayer $verFlashRemove désinstallé pour $user_"
|
||||||
}
|
}
|
||||||
|
|
||||||
#initialisation
|
#initialisation
|
||||||
f__affichage
|
f__affichage
|
||||||
f__user
|
f__user
|
||||||
verFlash="na"
|
verFlash="na"
|
||||||
f__requis "wget logger file tar"
|
f__requis "wget file tar"
|
||||||
dirInstall="/home/$user_/.mozilla/plugins"
|
dirInstall="/home/$user_/.mozilla/plugins"
|
||||||
urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer
|
urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer
|
||||||
[ -e "$dirInstall/libflashplayer.so" ] && flash_installed="ok" || flash_installed="ko"
|
[ -e "$dirInstall/libflashplayer.so" ] && flash_installed="ok" || flash_installed="ko"
|
||||||
|
@ -343,13 +361,14 @@ case "$1" in
|
||||||
fscript_remove ;; # désinstallation du script
|
fscript_remove ;; # désinstallation du script
|
||||||
"upgrade" )
|
"upgrade" )
|
||||||
opType="upgrade"
|
opType="upgrade"
|
||||||
|
f__log="tests mise à jour"
|
||||||
fscript_get_version
|
fscript_get_version
|
||||||
fscript_dl
|
fscript_dl
|
||||||
[ "$flash_installed" == "ko" ] && exit 0
|
[ "$flash_installed" == "ko" ] && exit 0
|
||||||
fflash_get_version
|
fflash_get_version
|
||||||
fflash_upgrade ;; # upgrade script et plugin si installé
|
fflash_upgrade ;; # upgrade script et plugin si installé
|
||||||
"manuel" )
|
"manuel" )
|
||||||
fflash_install_manuel "$2" ;; # install manuelle d'un chargement
|
fflash_install_manuel "$2" ;; # installation manuelle d'un chargement
|
||||||
* )
|
* )
|
||||||
fflash_help
|
fflash_help
|
||||||
fflash_avertissement ;; # affichage help par défaut
|
fflash_avertissement ;; # affichage help par défaut
|
||||||
|
|
|
@ -2,6 +2,12 @@
|
||||||
|
|
||||||
## todo
|
## 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
|
## 2.6.7 27/07/2017
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue