mirror of https://framagit.org/kyodev/kyopages.git
2.8.0
This commit is contained in:
parent
2162c3c189
commit
e8be9f78e3
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=2.7.0
|
||||
date="28/07/2017"
|
||||
version=2.8.0
|
||||
date="30/07/2017"
|
||||
projet="simpledebian"
|
||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues"
|
||||
script="getFlashPlayer"
|
||||
|
@ -58,15 +58,12 @@ f__user(){
|
|||
|
||||
# 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"
|
||||
if [ -w "$fileLogs" ]; then
|
||||
if [ "$(stat -c %s $fileLogs)" -ge "10000" ]; then
|
||||
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null > "$fileLogs"
|
||||
else
|
||||
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null >> "/var/log/sdeb_getFlash.log"
|
||||
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null >> "$fileLogs"
|
||||
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
|
||||
}
|
||||
|
||||
|
@ -89,7 +86,7 @@ f__info() {
|
|||
f__requis(){
|
||||
for i in $@; do
|
||||
if [ ! "$(which $i)" ]; then
|
||||
testDepends="ko"
|
||||
local testDepends="ko"
|
||||
f__info "$RED vous devez avoir la commande $i pour exploiter ce script"
|
||||
fi
|
||||
done
|
||||
|
@ -130,9 +127,9 @@ fscript_install(){
|
|||
# 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"
|
||||
touch "$fileLogs"
|
||||
chmod a+rwx "$fileLogs"
|
||||
chown "$user_": "$fileLogs"
|
||||
[ -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"
|
||||
|
@ -181,31 +178,33 @@ fscript_dl(){
|
|||
# inscription dans tache upgrade en anacron hebdomadaire, via cron horaire
|
||||
fscript_cronAnacron(){
|
||||
case "$1" in
|
||||
"install" )
|
||||
# création répertoire plugin/
|
||||
mkdir -p "$dirInstall"
|
||||
chown "$user_": "$dirInstall"
|
||||
# table anacron
|
||||
echo "7 15 getFP nice /opt/bin/$script upgrade &>/dev/null" > "$dirInstall/libflashplayer.anacrontab"
|
||||
## test: anacron journalier: echo "1 05 getFPtest nice /opt/bin/$script upgrade &>/dev/null" >> "$dirInstall/libflashplayer.anacrontab"
|
||||
chown "$user_": "$dirInstall/libflashplayer.anacrontab"
|
||||
# création spool anacron utilisateur
|
||||
mkdir -p "/home/$user_/.config/anacron/spool"
|
||||
chown "$user_": "/home/$user_/.config/anacron/spool"
|
||||
# cron tab pour activation horaire anacron
|
||||
echo "@hourly $user_ /usr/sbin/anacron -t $dirInstall/libflashplayer.anacrontab -S /home/$user_/.config/anacron/spool" >> /etc/crontab
|
||||
install )
|
||||
if [ ! -e "$fileAnacron" ]; then
|
||||
# création répertoire plugin/
|
||||
mkdir -p "$dirInstall"
|
||||
chown "$user_": "$dirInstall"
|
||||
# table anacron
|
||||
echo "7 15 getFP nice /opt/bin/$script upgrade &>/dev/null" > "$fileAnacron"
|
||||
## test: anacron journalier: echo "1 05 getFPtest nice /opt/bin/$script upgrade &>/dev/null" >> "$fileAnacron"
|
||||
chown "$user_": "$fileAnacron"
|
||||
# création spool anacron utilisateur
|
||||
mkdir -p "/home/$user_/.config/anacron/spool"
|
||||
chown "$user_": "/home/$user_/.config/anacron/spool"
|
||||
# cron tab pour activation horaire anacron
|
||||
echo "@hourly $user_ /usr/sbin/anacron -t $fileAnacron -S /home/$user_/.config/anacron/spool" >> /etc/crontab
|
||||
fi
|
||||
;;
|
||||
"remove" )
|
||||
[ -e "/home/$user_/.config/anacron/spool/getFP" ] && rm "/home/$user_/.config/anacron/spool/getFP"
|
||||
sed -i "/^\@hourly.*libflashplayer.anacrontab.*$/d" /etc/crontab
|
||||
rm "$dirInstall/libflashplayer.anacrontab"
|
||||
remove )
|
||||
rm "/home/$user_/.config/anacron/spool/getFP"* &>/dev/null
|
||||
sed -i "/^\@hourly.*libflashplayer.anacrontab.*$/d" /etc/crontab
|
||||
rm "$fileAnacron"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# 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)"
|
||||
local verInstall="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"
|
||||
plugin_aJour="ok"
|
||||
verFlash="$(wget -q --tries=2 --timeout=15 --user-agent="$user_agent" -O - "$urlOnline" | \
|
||||
sed -nr 's/^.*AUTO_ID.*Version[[:blank:]]+([0-9].*[0-9]).*$/\1/p')" || verFlash="na"
|
||||
|
@ -309,8 +308,6 @@ fflash_install(){
|
|||
mkdir -p "$dirInstall"
|
||||
cp -f "$dirTemp"libflashplayer.so "$dirInstall/"
|
||||
rm -Rf "$dirTemp"
|
||||
# marqueur version
|
||||
echo "$verFlash" > "$dirInstall/libflashplayer.version"
|
||||
# droits user si jamais installation par root
|
||||
chown -R "$user_": "$dirInstall"
|
||||
|
||||
|
@ -326,12 +323,12 @@ fflash_upgrade(){
|
|||
# suppression du plugin
|
||||
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" &>/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_"
|
||||
local verInstall="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"
|
||||
rm "$dirInstall/libflashplayer.so"
|
||||
rm "$dirInstall/libflashplayer.maj" &>/dev/null # ancien fichier éventuel
|
||||
rm "$dirInstall/libflashplayer.version" &>/dev/null # ancien fichier éventuel
|
||||
f__info "$GREEN FlashPlayer $verInstall désinstallé pour $user_"
|
||||
f__log "FlashPlayer $verInstall désinstallé pour $user_"
|
||||
}
|
||||
|
||||
#initialisation
|
||||
|
@ -339,7 +336,10 @@ f__affichage
|
|||
f__user
|
||||
verFlash="na"
|
||||
f__requis "wget file tar"
|
||||
fileLogs="/var/log/sdeb_getFlash.log"
|
||||
dirInstall="/home/$user_/.mozilla/plugins"
|
||||
fileAnacron="$dirInstall/libflashplayer.anacrontab"
|
||||
|
||||
urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer
|
||||
[ -e "$dirInstall/libflashplayer.so" ] && flash_installed="ok" || flash_installed="ko"
|
||||
|
||||
|
@ -348,6 +348,9 @@ dirname "$0" | grep -q 'bin' || fscript_install
|
|||
# détection droits inappropriés sur le script, cas de figure sur version de dev
|
||||
[ "$1" != "sysremove" ] && [ -e "/opt/bin/$script" ] && ls -l "/opt/bin/$script" | grep -q 'root' && f__error "bug sécu 01" \
|
||||
"veuillez désinstaller le script et le réinstaller" "voir: $urlNotice#supprimer-le-script"
|
||||
# détection ancien système de logs via syslog
|
||||
[ -w "$fileLogs" ] || 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/getFirefox/#installation-rapide-du-script"
|
||||
|
||||
case "$1" in
|
||||
"install" )
|
||||
|
|
|
@ -1,8 +1,12 @@
|
|||
# changelog getFlashPlayer
|
||||
|
||||
## todo
|
||||
## 2.8.0 30/07/2017
|
||||
|
||||
## 2.7.0 27/07/2017
|
||||
* lifting
|
||||
* fix bug mineur: pas d'inscription superflue dans crontab si plusieurs installations scripts successives
|
||||
* renommage anacrontab
|
||||
|
||||
## 2.7.0 28/07/2017
|
||||
|
||||
* mieux: fichier log spécifique mais nécessite réinstallation en root (pas de mise à jour)
|
||||
* mieux: logs d'évènements majeurs
|
||||
|
|
Loading…
Reference in New Issue