This commit is contained in:
kyodev 2017-07-13 11:32:01 +02:00
parent 13ca85ee94
commit 9f8e025aa4
3 changed files with 175 additions and 178 deletions

View File

@ -46,7 +46,7 @@ exit
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 2.2.0 - 12/07/2017
pour Firefox sur Debian, version 2.O.0 - 12/07/2017
getFlashPlayer est installé dans le système.
appel du script par getFlashPlayer (sans ./)
@ -124,7 +124,7 @@ lancer le script sans arguments: `getFlashPlayer`
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.0.0 - 18/06/2017
pour Firefox sur Debian, version 2.0.1 - 12/07/2017
FlashPlayer n'est pas libre, c'est un programme propriétaire dont on
ne peut pas connaître le code source, ni l'utiliser sans conditions,
@ -139,15 +139,7 @@ lancer le script sans arguments: `getFlashPlayer`
installation FlashPlayer, version 26.0.0.131
--2017-06-18 15:33:59-- https://fpdownload.adobe.com/get/flashplayer/pdc/26.0.0.131/flashplayer_npapi_linux.i386.tar.gz
Résolution de fpdownload.adobe.com (fpdownload.adobe.com)… 23.206.45.82
Connexion à fpdownload.adobe.com (fpdownload.adobe.com)|23.206.45.82|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 8490534 (8,1M) [application/x-gzip]
Sauvegarde en : « /tmp/getFlashPlayer-13385/flashplayer_npapi_linux.i386.tar.gz »
/tmp/getFlashPlayer-13385/fla 100%[================================================>] 8,10M 4,04MB/s in 2,0s
2017-06-18 15:34:01 (4,04 MB/s) — « /tmp/getFlashPlayer-13385/flashplayer_npapi_linux.i386.tar.gz » sauvegardé [8490534/8490534]
FlashPlayer 26.0.0.131 est installé pour kyodev
@ -166,9 +158,9 @@ Sauvegarde en : « /tmp/getFlashPlayer-13385/flashplayer_npapi_linux.i386.tar.
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.0.0 - 18/06/2017
pour Firefox sur Debian, version 2.0.1 - 12/07/2017
FlashPlayer est désinstallé pour kyodev
FlashPlayer version 26.0.0.131 désinstallé pour kyodev
```
* le plugin est effacé du profil Mozilla de l'utilisateur
@ -188,14 +180,15 @@ Sauvegarde en : « /tmp/getFlashPlayer-13385/flashplayer_npapi_linux.i386.tar.
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.2.0 - 12/07/2017
pour Firefox sur Debian, version 2.0.0 - 12/07/2017
version FlashPlayer en ligne: 26.0.0.137
version FlashPlayer en ligne: 26.0.0.131
version installée: 26.0.0.131, mise à jour possible
version script en ligne: 2.0.0, mise à jour possible
version FlashPlayer installée: 26.0.0.121, mise à jour possible
version script en ligne: 2.0.1, mise à jour possible
```
* affiche la version en ligne de FlashPlayer
* compare, si possible (version **release**) et installée, avec la version installée
@ -217,35 +210,20 @@ Sauvegarde en : « /tmp/getFlashPlayer-13385/flashplayer_npapi_linux.i386.tar.
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.0.0 - 18/06/2017
pour Firefox sur Debian, version 2.0.2 - 12/07/2017
getFlashPlayer 1.0.0: upgrade FlashPlayer
version script en ligne: 2.0.1, mise à jour possible
getFlashPlayer mis à jour en version 2.0.1
version FlashPlayer en ligne: 26.0.0.131
installée: 26.0.0.121, mise à jour possible
version FlashPlayer installée: 26.0.0.121, mise à jour possible
FlashPlayer n'est pas libre, c'est un programme propriétaire dont on
ne peut pas connaître le code source, ni l'utiliser sans conditions,
ni le distribuer librement.
Il souffre de nombreuses vulnérabilités chroniques, depuis des années
sans que l'éditeur fasse beaucoup d'efforts pour corriger cet état
de fait...
Il sera donc bloqué à plus ou moins court terme pas les navigateurs
majeurs, c'est à dire Firefox et Chrom(ium). Préparez vous à cela...
installation FlashPlayer, version 26.0.0.131
--2017-06-18 16:34:32-- https://fpdownload.adobe.com/get/flashplayer/pdc/26.0.0.131/flashplayer_npapi_linux.i386.tar.gz
Résolution de fpdownload.adobe.com (fpdownload.adobe.com)… 23.206.45.82
Connexion à fpdownload.adobe.com (fpdownload.adobe.com)|23.206.45.82|:443… connecté.
requête HTTP transmise, en attente de la réponse… 200 OK
Taille : 8490534 (8,1M) [application/x-gzip]
Sauvegarde en : « /tmp/getFlashPlayer-28058/flashplayer_npapi_linux.i386.tar.gz »
installation FlashPlayer, version 26.0.0.131
/tmp/getFlashPlayer-28058/fla 100%[================================================>] 8,10M 3,93MB/s in 2,1s
2017-06-18 16:34:35 (3,93 MB/s) — « /tmp/getFlashPlayer-28058/flashplayer_npapi_linux.i386.tar.gz » sauvegardé [8490534/8490534]
2017-07-12 10:54:35 (3,93 MB/s) — « /tmp/getFlashPlayer-28058/flashplayer_npapi_linux.i386.tar.gz » sauvegardé [8490534/8490534]
FlashPlayer mis à jour en 26.0.0.131 pour kyodev
```
@ -259,15 +237,13 @@ pas de mise à jour disponible:
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.0.0 - 18/06/2017
getFlashPlayer 1.0.0: upgrade FlashPlayer
pour Firefox sur Debian, version 2.0.1 - 12/07/2017
version FlashPlayer en ligne: 26.0.0.131
version à jour
FlashPlayer à jour
FlashPlayer est à jour pour kyodev
FlashPlayer non mis à jour pour kyodev
```
@ -320,10 +296,11 @@ en **root**: `getFlashPlayer sysremove`
\__, |\___|\__|_| |_|\__,_|___/_| |_|_| |_|\__,_|\__, |\___|_|
|___/ |___/
pour Firefox sur Debian, version 1.0.0 - 18/06/2017
pour Firefox sur Debian, version 2.0.0 - 12/07/2017
getFlashPlayer est supprimé du système.
```
* effacement du script dans le système (_/opt/bin_)
* effacement de l'inscription dans la crontab utilisateur
* cela ne **supprime pas** un éventuel **plugin** installé

View File

@ -1,13 +1,12 @@
#!/bin/bash
version=2.0.1
version=2.0.2
projet="Kyodev"
contact="https://framagit.org/kyodev/kyopages/issues"
date="12/07/2017"
script="getFlashPlayer"
urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/getFlashPlayer"
##### license LPRAB/WTFPL
# auteurs: kyodev
# contibuteur: coyotus
@ -21,7 +20,6 @@ YELLOW=`printf "\033[0;33m"` # ?
COLOR=`printf "\033[0m"` # standard
RED=`printf "\033[0;31m"` # alerte
#### entete ============================================================
clear
echo "$BLUE"
@ -36,7 +34,6 @@ cat << 'EOF'
EOF
echo -e "$YELLOW pour Firefox sur Debian, version $version - $date\n$COLOR"
#### fonctions diverses ================================================
# user ayant initié la session graphique, assigne $user_, testé avec mate, gnome
@ -98,35 +95,53 @@ f__scriptBin(){
if [ "$(echo $0 | grep -Eo '\.\/')" != "./" ]; then return 0; else return 1; fi
}
# test wget, $1 url à tester
f__testWget(){
echo " $1"
wget -Sq --tries=1 --no-check-certificate --user-agent="$user_agent" -O /dev/null "$1"
}
#### fonctions script ==================================================
user_agent="Mozilla/5.0 (X11; Linux $architecture; rv:52.0) Gecko/ Firefox"
# version Flash en ligne & installée, $verFlash=x|na, $verInstall, $uptd_plug=""|ko, $urlOnline,
f_versionFlash(){
urlOnline="https://get.adobe.com/flashplayer/"
if ! f__cnxTest; then f__error "connection impossible ou site adobe injoignable"; fi
verFlash="$(wget --tries=2 --no-check-certificate --timeout=15 --user-agent="$user_agent" -nv -O - "$urlOnline" | \
grep "AUTO_ID_columnleft_p_version" | grep -o '[0-9].*[0-9]')" || verFlash="na"
if [ "$?" != "0" ]; then echo -e " $urlOnline"; wget -Sq -O /dev/null "$urlOnline"; fi
verInstall="$(cat /home/"$user_"/.mozilla/plugins/libflashplayer.version 2>/dev/null)" || verInstall=""
uptd_plug=""
if [ $verFlash == "na" ]; then f__info "version FlashPlayer non accessible";
else f__info "version FlashPlayer en ligne: $verFlash"; fi
if [ "$verInstall" != "" ] && [ "$verInstall" != "flashTest" ]; then
if [ "$verInstall" == "$verFlash" ]; then f__info "version à jour";
else
f__info "version FlashPlayer installée: $verInstall"", mise à jour possible"
uptd_plug="ko"
fi
elif [ "$verInstall" == "" ]; then f__info "FlashPlayer non installé";
elif [ "$verInstall" == "flashTest" ]; then f__info "FlashPlayer, version test, installé"; fi
f_version_script
# install du script dans le système
fscript_install(){
if ! f__root ; then f__error "vous devez être ROOT pour installer ce script dans le système"; fi
# on vire 'flashplugin-nonfree' si installé
if [ "$( dpkg-query -l flashplugin-nonfree &>/dev/null | grep -Eo ^ii)" == "ii" ]; then apt-get purge flashplugin-nonfree; fi
# installation dans /opt
mkdir -p /opt/bin/
cp -d "$script" /opt/bin/
chmod a+wx /opt/bin/"$script"
ln -s /opt/bin/"$script" /usr/local/bin/"$script" &>/dev/null
rm "$script" &>/dev/null
# cron/anacron install
fscript_cronAnacron install
f__info "$GREEN$script est installé dans le système.\n$BLUE appel du script par$GREEN $script$BLUE (sans ./)"
exit 0
}
# version script en ligne, assigne $versionScript, $uptd_script
f_version_script(){
# suppression du script dans le système
fscript_remove(){
if ! f__root ; then f__error "vous devez être ROOT pour supprimer ce script dans le système"; fi
# suppression de /opt
rm /opt/bin/"$script" &>/dev/null
unlink /usr/local/bin/"$script" &>/dev/null
# cron/anacron install
fscript_cronAnacron remove
f__info "$GREEN$script est supprimé du système.\n"
}
# version script en ligne, assigne $versionScript, $uptd_script=""|ko,
fscript_version(){
versionScript="$(wget -q -O - "$urlScript" | grep '^version=' | cut -d '=' -f 2)"
if [ "$version" != "$versionScript" ]; then
f__info "version script en ligne: $versionScript, mise à jour possible"
@ -134,8 +149,65 @@ f_version_script(){
else uptd_script=""; fi
}
# mise à jour script si dispo
fscript_dl(){
if [ "$uptd_script" != "ko" ]; then return 0; fi
dirTemp="/tmp/$script-$RANDOM/"
mkdir -p "$dirTemp"
wget -q -O "$dirTemp""$script" "$urlScript" && chmod +x "$script"
if [ "$?" != "0" ]; then f__testWget "$urlScript"; fi
cp "$dirTemp""$script" /opt/bin/"$script"
rm "$dirTemp""$script"
f__syslogInfo "$script mis à jour en version $versionScript"
}
#inscription dans tache upgrade en cron hebdomadaire
fscript_cronAnacron(){
case "$1" in
"install" )
# création répertoire plugin/
mkdir -p "/home/$user_/.mozilla/plugins"
chown "$user_": "/home/$user_/.mozilla/plugins"
# table anacron
echo "7 15 getFP nice /opt/bin/$script upgrade &>/dev/null" > /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab
## test: anacron journalier echo "1 05 getFPtest nice /opt/bin/$script upgrade &>/dev/null" >> /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab
chown "$user_": /home/"$user_"/.mozilla/plugins/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 anancron
echo "@hourly $user_ /usr/sbin/anacron -t /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab -S /home/"$user_"/.config/anacron/spool" >> /etc/crontab
;;
"remove" )
rm /home/"$user_"/.config/anacron/spool/getFP
sed -i "\;^\@hourly.*libflashplayer.anacrontab.*$;d" /etc/crontab
;; # désinstallation
esac
}
# version Flash en ligne & installée, $verFlash=x|na, $verInstall, $uptd_plug=""|ko, $urlOnline,
f_versionFlash(){
urlOnline="https://get.adobe.com/flashplayer/"
if ! f__cnxTest; then f__error "connection impossible ou site adobe injoignable"; fi
verFlash="$(wget --tries=2 --no-check-certificate --timeout=15 --user-agent="$user_agent" -nv -O - "$urlOnline" | \
grep "AUTO_ID_columnleft_p_version" | grep -o '[0-9].*[0-9]')" || verFlash="na"
if [ "$?" != "0" ]; then f__testWget "$urlOnline"; fi
verInstall="$(cat /home/"$user_"/.mozilla/plugins/libflashplayer.version 2>/dev/null)" || verInstall=""
uptd_plug=""
if [ $verFlash == "na" ]; then f__info "version FlashPlayer non accessible";
else f__info "version FlashPlayer en ligne: $verFlash"; fi
if [ "$verInstall" == "" ]; then f__info "FlashPlayer non installé"; return 0; fi
if [ "$verInstall" == "$verFlash" ]; then f__info "FlashPlayer à jour";
else
f__info "version FlashPlayer installée: $verInstall"", mise à jour possible"
uptd_plug="ko"
fi
}
# pas beau ce soft :(
f_avertissement(){
fflash_avert(){
cat << 'EOF'
FlashPlayer n'est pas libre, c'est un programme propriétaire dont on
ne peut pas connaître le code source, ni l'utiliser sans conditions,
@ -150,7 +222,7 @@ EOF
}
# affichage help
f_help(){
fflash_help(){
printf $BLUE
cat << 'EOF'
-----------------------------------------------------------------------
@ -175,69 +247,9 @@ EOF
printf $COLOR
}
f_cronAnacron(){
case "$1" in
"install" )
# création répertoire plugin/
mkdir -p "/home/$user_/.mozilla/plugins"
chown "$user_": "/home/$user_/.mozilla/plugins"
# table anacron
echo "7 15 getFP nice /opt/bin/$script upgrade &>/dev/null" > /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab
## test: anacron journalier echo "1 05 getFPtest nice /opt/bin/$script upgrade &>/dev/null" >> /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab
chown "$user_": /home/"$user_"/.mozilla/plugins/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 anancron
echo "@hourly $user_ /usr/sbin/anacron -t /home/"$user_"/.mozilla/plugins/libflashplayer.anacrontab -S /home/"$user_"/.config/anacron/spool" >> /etc/crontab
;;
"remove" )
rm /home/"$user_"/.config/anacron/spool/getFP
sed -i "\;^\@hourly.*libflashplayer.anacrontab.*$;d" /etc/crontab
;; # désinstallation
esac
}
# install du script dans le système
f_sysinstall(){
if ! f__root ; then f__error "vous devez être ROOT pour installer ce script dans le système"; fi
# on vire 'flashplugin-nonfree' si installé
if [ "$( dpkg-query -l flashplugin-nonfree &>/dev/null | grep -Eo ^ii)" == "ii" ]; then apt-get purge flashplugin-nonfree; fi
# installation dans /opt
mkdir -p /opt/bin/
cp -d "$script" /opt/bin/
chmod a+wx "$user_": /opt/bin/"$script"
ln -s /opt/bin/"$script" /usr/local/bin/"$script" &>/dev/null
rm "$script" &>/dev/null
# cron/anacron install
f_cronAnacron install
f__info "$GREEN$script est installé dans le système.\n$BLUE appel du script par$GREEN $script$BLUE (sans ./)"
exit 0
}
# suppression du script dans le système
f_sysremove(){
if ! f__root ; then f__error "vous devez être ROOT pour supprimer ce script dans le système"; fi
# suppression de /opt
rm /opt/bin/"$script" &>/dev/null
unlink /usr/local/bin/"$script" &>/dev/null
# cron/anacron install
f_cronAnacron remove
f__info "$GREEN$script est supprimé du système.\n"
}
# install plugin dans config user mozilla
f_install(){
f_avertissement
# architecture -> $architecture (version release)
# install plugin dans config user mozilla, $1 "upgrade" si process maj
fflash_install(){
if [ $1 != "upgrade" ]; then fflash_avert; fi
architecture="$(getconf LONG_BIT)" # 32 | 64
# calcul $file, affichage version pendant l'install, calcul $url
@ -253,16 +265,16 @@ f_install(){
mkdir -p "$dirTemp"
# chargement archive plugin flashplayer
wget -c --show-progress --no-check-certificate --user-agent="$user_agent" --referer="$urlOnline" \
wget -cq --show-progress --no-check-certificate --user-agent="$user_agent" --referer="$urlOnline" \
--tries=1 -O "$dirTemp""$file" "$url2"
if [ "$?" != "0" ]; then
echo -e " $url2"
wget -Sq -O /dev/null "$url2"
f__error "problème au chargement, réessayer et si persistance, contacter $projet $contact\n" \
"en indiquant les erreurs précédentes."
f__testWget "$url2"
f__error "Erreur wget\n" \
" réessayer et si persistance, contacter $projet $contact\n en indiquant les erreurs précédentes."
fi
if [ "$(wc -c < flashplayer_npapi_linux.$architecture.tar.gz)" -lt 5000000 ]; then
f__error "Chargement incomplet, réessayer et si persistance,\n contacter $projet $contact\n"
if [ "$(wc -c < "$dirTemp""$file")" -lt 5000000 ]; then
f__error "Taille du chargement: $(wc -c < "$dirTemp""$file")\n" \
" Chargement incomplet, réessayer et si persistance,\n contacter $projet $contact\n"
fi
# décompression archive téléchargée dans dossier de travail
@ -279,63 +291,59 @@ f_install(){
# droits user si install par root
chown -R "$user_": /home/"$user_"/.mozilla/plugins
if [ "$2" != "upgrade" ]; then f__info "$GREEN""FlashPlayer $verFlash est installé pour $user_\n\t" \
"$BLUE""Pour tester: http://get.adobe.com/flashplayer/about/"; fi
if [ $1 != "upgrade" ]; then
f__info "$GREEN""FlashPlayer $verFlash est installé pour $user_\n" \
"\t$BLUE""Pour tester: http://get.adobe.com/flashplayer/about/"
fi
}
# test et mise à jour plugin si dispo
fflash_upgrade(){
if [ -e /home/"$user_"/.mozilla/plugins/libflashplayer.maj ]; then
touch /home/"$user_"/.mozilla/plugins/libflashplayer.maj
fi
if [ "$uptd_plug" == "ko" ]; then
fflash_install "upgrade"
f__syslogInfo "FlashPlayer mis à jour en $verFlash pour $user_"
else f__syslogInfo "FlashPlayer non mis à jour pour $user_"; fi
}
# suppression du plugin
f_remove(){
fflash_remove(){
# on efface le plugin et le répertoire si vide
rm -f "/home/$user_/.mozilla/plugins/"libflashplayer.*
rm -d "/home/$user_/.mozilla/plugins/" &>/dev/null
f__info "$GREEN""FlashPlayer $version est désinstallé pour $user_\n"
}
f_dl_script(){
dirTemp="/tmp/$script-$RANDOM/"
mkdir -p "$dirTemp"
wget -q -O "$dirTemp""$script" "$urlScript" && chmod +x "$script"
if [ "$?" != "0" ]; then echo -e " $urlScript\n"; wget -Sq -O /dev/null "$urlScript"; fi
cp "$dirTemp""$script" /opt/bin/"$script"
rm "$dirTemp""$script"
f__syslogInfo "$script mis à jour en version $versionScript"
f__info "$GREEN""FlashPlayer $version désinstallé pour $user_\n"
}
### début script =======================================================
# traitements arguments
if [ "$#" -gt 1 ]; then f__info "$RED trop d'arguments"; f_help; exit 1; fi
if [ "$#" -gt 1 ]; then f__info "$RED trop d'arguments"; fflash_help; exit 1; fi
#initialisation
f__user
verFlash="na"
#### installation du script si pas dans le système =====================
if ! f__scriptBin ; then f_sysinstall; fi
if ! f__scriptBin ; then fscript_install; fi
case "$1" in
"install" )
f_install ;; # installation
fflash_install ;; # installation plugin
"remove" )
f_remove ;; # désinstallation
fflash_remove ;; # désinstallation plugin
"version" )
f_versionFlash ;; # version en ligne & installée
"sysremove" )
f_sysremove ;; # désinstallation du script
"upgrade" )
f__syslogInfo "$script $version: upgrade"
f_version_script
if [ "$uptd_script" == "ko" ]; then f_dl_script; fi
if [ -e /home/"$user_"/.mozilla/plugins/libflashplayer.maj ]; then touch /home/"$user_"/.mozilla/plugins/libflashplayer.maj; fi
f_versionFlash
if [ "$uptd_plug" == "ko" ]; then
f_install "release" "upgrade"
f__syslogInfo "FlashPlayer mis à jour en $verFlash pour $user_"
else f__syslogInfo "FlashPlayer non mis à jour pour $user_"; fi
;; # upgrade si MAJs possibles
fscript_version ;; # version plugin en ligne & installée
"sysremove" )
fscript_remove ;; # désinstallation du script
"upgrade" )
fscript_version
fscript_dl
f_versionFlash
fflash_upgrade ;; # upgrade plugin et script si MAJs possibles
* )
f_help
f_avertissement
;; # affichage help par défaut
fflash_help; fflash_avert ;; # affichage help par défaut
esac
exit 0

View File

@ -1,6 +1,18 @@
# changelog getFlashPlayer
## 2.2.0 12/07/2017
## 2.2.2 13/07/2017
* fix mineurs
* renommage fonctions
* fin nettoyage v-test
* fix bug, test sur taille download
## 2.2.1 13/07/2017
* fix mineur
## 2.2.0 13/07/2017
* nouveau
* chargements moins verbeux