getFlashPlayer 3.18.0

This commit is contained in:
kyodev 2017-12-05 14:25:16 +01:00
parent 23ff89f4a6
commit b39bfd7878
2 changed files with 287 additions and 205 deletions

View File

@ -1,23 +1,20 @@
#!/bin/bash #!/bin/bash
version=3.17.0 version=3.18.0
date="16/10/2017" date="5/12/2017"
projet="simpledeb" projet="simpledeb"
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"
urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/getFlashPlayer"
urlNotice="https://kyodev.frama.io/kyopages/scripts/getFlashPlayer/"
user_agent="Mozilla/5.0 Firefox"
##### license LPRAB/WTFPL ##### license LPRAB/WTFPL
# auteur: simpledeb # auteur: simpledeb
# contributeurs: kyodev, coyotus, naguam # contributeurs: kyodev, coyotus, naguam
##### #####
f__affichage(){ # 08/10/2017 f_affichage(){ # 5/12/2017
f__color f__color
clear clear
printf "$BLUE" echo -n "$BLUE"
cat << 'EOF' cat << 'EOF'
_ _____ _ _ ____ _ _ _____ _ _ ____ _
__ _ ___| |_| ___| | __ _ ___| |__ | _ \| | __ _ _ _ ___ _ __ __ _ ___| |_| ___| | __ _ ___| |__ | _ \| | __ _ _ _ ___ _ __
@ -32,6 +29,7 @@ echo -e "$YELLOW pour Firefox, version $version - $date$STD\n"
# test validité archive, $1 archive, assigne $archive_detect (gzip|xz|deb|zip), return 1 si inconnue # test validité archive, $1 archive, assigne $archive_detect (gzip|xz|deb|zip), return 1 si inconnue
f__archive_test(){ # 30/08/2017 f__archive_test(){ # 30/08/2017
local filetest="$(file -b $1)" local filetest="$(file -b $1)"
grep -q 'gzip compressed data' <<< "$filetest" && archive_detect="gzip" grep -q 'gzip compressed data' <<< "$filetest" && archive_detect="gzip"
grep -q 'bzip2 compressed data' <<< "$filetest" && archive_detect="bzip2" grep -q 'bzip2 compressed data' <<< "$filetest" && archive_detect="bzip2"
grep -q 'Debian binary package' <<< "$filetest" && archive_detect="deb" grep -q 'Debian binary package' <<< "$filetest" && archive_detect="deb"
@ -54,7 +52,9 @@ f__color(){ # 08/10/2017
} }
# affichage $1 en rouge, $1++ optionnels en bleu, sortie script sur erreur, log $1 si $opType=upgrade # affichage $1 en rouge, $1++ optionnels en bleu, sortie script sur erreur, log $1 si $opType=upgrade
f__error(){ # 15/10/2017 f__error(){ # 4/12/2017
local depart=1 i
echo -e "\n$RED $script $version, erreur critique: $1 $STD" echo -e "\n$RED $script $version, erreur critique: $1 $STD"
for (( i=2 ; i<=$# ; i++ )); do for (( i=2 ; i<=$# ; i++ )); do
echo -e " $BLUE${!i}$STD" echo -e " $BLUE${!i}$STD"
@ -67,6 +67,7 @@ f__error(){ # 15/10/2017
# affichage des paramètres en bleu, si $1=raw pas de ligne vide à la fin, si $1=log alors uniquement $2 logué # affichage des paramètres en bleu, si $1=raw pas de ligne vide à la fin, si $1=log alors uniquement $2 logué
f__info(){ # 15/10/2017 f__info(){ # 15/10/2017
local depart=1 i local depart=1 i
if [ "$1" == "raw" ] || [ "$1" == "log" ]; then depart=2; fi if [ "$1" == "raw" ] || [ "$1" == "log" ]; then depart=2; fi
[ "$1" == "log" ] && f__log "$(sed -E 's/\\t//;s/\\n// ' <<< $2 | xargs )" [ "$1" == "log" ] && f__log "$(sed -E 's/\\t//;s/\\n// ' <<< $2 | xargs )"
for (( i=$depart ; i<=$# ; i++ )); do for (( i=$depart ; i<=$# ; i++ )); do
@ -75,28 +76,66 @@ f__info(){ # 15/10/2017
[ "$1" == raw ] || echo [ "$1" == raw ] || echo
} }
# log spécifique, fichier log limité à 10000octets, $1 message à loguer # log spécifique, fichier log limité à 10000 octets, $1 message à loguer
f__log(){ # 08/09/2017 f__log(){ # 4/12/2017
if [ -w "$fileLogs" ]; then if [ -w "$scriptLogs" ]; then
if [ "$(stat -c %s $fileLogs)" -ge "10000" ]; then if [ "$(stat -c %s $scriptLogs)" -ge "10000" ]; then
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null > "$fileLogs" echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null > "$scriptLogs"
else else
echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null >> "$fileLogs" echo "$(date +%Y%m%d\ %H%M%S) $1" &>/dev/null >> "$scriptLogs"
fi fi
else
f__info "$fileLogs doit être activé" "Réinstaller un script plus récent" \
"voir $GREEN""$urlNotice#installation-rapide-du-script"
fi fi
} }
# $1=cmd si $2: nb de tentatives pour s'identifier, sinon 1 tentative par défaut # test dépendances/paquets, $1 liste commande[>paquet] (ex: killall>psmisc)
f__sudo(){ # 11/10/2017 # si manque, return 1 & info commandes manquantes, si debian proposition paquet à installer
local nb=1 sudo isudo # si $2=debOnly et si paquets manquants: return 1 et $debOnlyAbsent ( $1=liste paquets )
# si $2=debOnly et si paquets présent: return 0 et $debOnlyPresent ( $1=liste paquets )
# attention priorité $debOnlyAbsent sur $debOnlyPresent
f__requis(){ # 4/12/2017
local dependsMissing packagesMissing command package ireq compteur pluriel
unset debOnlyAbsent debOnlyPresent
for ireq in $1; do
command="$(cut -d '>' -f 1 <<< $ireq)"
package="$(cut -d '>' -f 2 <<< $ireq)"
if [ "$2" == "debOnly" ]; then
if type -p "dpkg" &>/dev/null ; then # package only et debian
LC_ALL=C dpkg --get-selections | grep -qE "^$package[[:space:]]+install" \
&& debOnlyPresent+="$package " || debOnlyAbsent+="$package "
fi
elif ! type -p "$command" &>/dev/null ; then
dependsMissing+="$command "
packagesMissing+="$package "
fi
done
[ "$debOnlyAbsent" ] && debOnlyAbsent="$(xargs <<< $debOnlyAbsent)" # trim début & fin
[ "$debOnlyPresent" ] && debOnlyPresent="$(xargs <<< $debOnlyPresent)" # trim début & fin
[ "$debOnlyAbsent" ] && return 1
[ "$debOnlyPresent" ] && return 0
if [ "$dependsMissing" ]; then
compteur="$(wc -w <<< $dependsMissing)"
[ "$compteur" -gt "1" ] && pluriel="s" || unset pluriel
if [ -e /etc/debian_version ]; then
f__info "$RED""erreur critique: $compteur paquet"$pluriel" manquant"$pluriel": $STD$BOLD$dependsMissing" \
"\n vous devriez exécuter:$GREEN apt install $packagesMissing"
else
f__info "$RED""erreur critique: $compteur commande"$pluriel" manquante"$pluriel": $STD$BOLD$dependsMissing"
fi
return 1
fi
}
# $1=cmd si $2: nb de tentatives pour s'identifier, sinon 2 tentatives par défaut, suppose bash existant
f__sudo(){ # 4/12/2017
local nb=2 sudo isudo toBash
[ $( type -p bash 2>/dev/null ) ] && toBash="$( type -p bash )" || return 2
# sudo --shell bash équivalent su ? # sudo --shell bash équivalent su ?
if sudo -v &>/dev/null && [ $EUID -ne 0 ] ; then if sudo -v &>/dev/null && [ $EUID -ne 0 ] ; then
sudo="sudo su --shell $(which bash) --preserve-environment -c " sudo="sudo su --shell $toBash --preserve-environment -c "
else else
sudo="su --shell $(which bash) --preserve-environment -c " sudo="su --shell $toBash --preserve-environment -c "
fi fi
[ "$2" ] && nb="$2" [ "$2" ] && nb="$2"
for (( isudo=1 ; isudo<="$nb" ; isudo++ )); do for (( isudo=1 ; isudo<="$nb" ; isudo++ )); do
@ -106,103 +145,78 @@ f__sudo(){ # 11/10/2017
done done
} }
# test dépendances/paquets, $1 liste commande[>paquet] (ex: killall>psmisc) # user ayant initié la session graphique, assigne $fu_user
# si manque, SORTIE & info commandes manquantes, si debian, SORTIE & proposition paquet à installer
# si $2=debOnly et si paquets manquants: return 1 et $debOnlyPackages ( $1=liste paquets )
# si $2=debOnly et si paquets présent: return 0 et $debOnlyPresents ( $1=liste paquets )
# attention priorité $debOnlyPackages sur $debOnlyPresents
f__requis(){ # 15/10/2017
local dependsMissing packagesMissing command package i
unset debOnlyPackages debOnlyPresents
for i in $1; do
command="$(cut -d '>' -f 1 <<< $i)"
package="$(cut -d '>' -f 2 <<< $i)"
if [ "$2" == "debOnly" ]; then
if [ "$(which dpkg)" ]; then # package only et debian
LC_ALL=C dpkg --get-selections | grep -qE "^$package[[:space:]]+install" \
&& debOnlyPresents+="$package " || debOnlyPackages+="$package "
else f__error "dpkg n'est pas disponible sur ce système"; fi
elif [ -z "$(which $command)" ]; then
dependsMissing+="$command "
packagesMissing+="$package "
fi
done
[ "$debOnlyPackages" ] && debOnlyPackages="$(xargs <<< $debOnlyPackages)" # trim début & fin
[ "$debOnlyPresents" ] && debOnlyPresents="$(xargs <<< $debOnlyPresents)" # trim début & fin
[ "$debOnlyPackages" ] && return 1
[ "$debOnlyPresents" ] && return 0
if [ "$dependsMissing" ]; then
if [ -e /etc/debian_version ]; then f__error "paquet(s) manquant(s): " " $dependsMissing" \
" vous devriez exécuter:$GREEN apt install $packagesMissing"
else f__error "commandes(s) manquante(s): " "$dependsMissing"; fi # -> exit
return 1
fi
}
# user ayant initié la session graphique, assigne $user_
# return 1 sur échec identification user, return 2 sur absence home/ # return 1 sur échec identification user, return 2 sur absence home/
# gestion variable environnement user avec: USER_INSTALL=user script # gestion variable environnement user avec: USER_INSTALL=<user> script
f__user(){ # 06/10/2017 f__user(){ # 3/12/2017
local user_id test root_login local user userid test root_login
root_login="$(grep ':0:' /etc/passwd | cut -d':' -f1)" || root_login="root" root_login="$(grep ':0:' /etc/passwd | cut -d':' -f1)" || root_login="root"
if [ "$USER_INSTALL" ]; then # user_ via variable environnement, moyen d'injecter root if [ "$USER_INSTALL" ]; then # user via variable environnement, moyen d'injecter root si pb
user_="$USER_INSTALL"; fu_user="$USER_INSTALL";
return 0 return 0
elif [[ "$TERM" =~ linux ]]; then #debian 9 recovery ou nomodeset TERM=linux elif [[ "$TERM" =~ linux ]]; then #debian 9 recovery ou nomodeset TERM=linux
if [ "$USER" ]; then if [ "$USER" ]; then
user_="$USER" user="$USER"
elif [ "$EUID" -eq 0 ]; then elif [ "$EUID" -eq 0 ]; then
user_="$root_login" fu_user="$root_login"
return 0 return 0
fi fi
fi fi
if [ "$SUDO_UID" ]; then if [ "$SUDO_UID" ]; then
user_id="$SUDO_UID"; userid="$SUDO_UID";
elif grep -qEo '[0-9]+' <<< "$XDG_RUNTIME_DIR" ; then elif grep -qEo '[0-9]+' <<< "$XDG_RUNTIME_DIR" ; then
user_id="$(grep -Eo '[0-9]+' <<< $XDG_RUNTIME_DIR | cut -d'/' -f4)" userid="$(grep -Eo '[0-9]+' <<< $XDG_RUNTIME_DIR | cut -d'/' -f4)"
elif grep -qEo '[0-9]+' <<< "$XAUTHORITY" ; then elif grep -qEo '[0-9]+' <<< "$XAUTHORITY" ; then
user_id="$(grep -Eo '[0-9]+' <<< $XAUTHORITY | cut -d'/' -f4)" userid="$(grep -Eo '[0-9]+' <<< $XAUTHORITY | cut -d'/' -f4)"
fi fi
[ "$user_id" ] && user_="$(grep $user_id /etc/passwd | cut -d ":" -f 1 )" [ "$userid" ] && user="$(grep $userid /etc/passwd | cut -d ":" -f 1 )"
if [ "$user_" ] && [ "$user_" != "$root_login" ]; then if [ "$user" ] && [ "$user" != "$root_login" ]; then
fu_user="$user"
return 0 return 0
else else
if [ "$SUDO_USER" ] && [ "$SUDO_USER" != "$root_login" ]; then if [ "$SUDO_USER" ] && [ "$SUDO_USER" != "$root_login" ]; then
user_="$SUDO_USER"; user="$SUDO_USER";
elif grep -qv 'root' <<< "$(who)"; then elif grep -qv 'root' <<< "$(who)"; then
user_="$(grep -v 'root' <<< $(who) | head -n1 | cut -d ' ' -f1)"; # grep -v 'root' <<< $(who) | awk 'FNR==1{print $1}' user="$(grep -v 'root' <<< $(who) | head -n1 | cut -d ' ' -f1)"; # grep -v 'root' <<< $(who) | gawk 'FNR==1{print $1}'
elif grep -q 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab; then elif grep -q 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab; then
user_="$(grep 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab | head -n1 | cut -d' ' -f2)"; # grep 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab | awk 'FNR==1{print $2} user="$(grep 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab | head -n1 | cut -d' ' -f2)"; # grep 'hourly.*get[A-Z].*\.anacrontab.*\.config/anacron/spool' /etc/crontab | gawk 'FNR==1{print $2}
fi fi
fi fi
if [ -z "$user_" ]; then return 1; fi fu_user="$user"
if [ ! -d "/home/$user_" ]; then return 2; fi [ "$fu_user" ] || return 1
[ -d "/home/$fu_user" ] || return 2
return 0 return 0
} }
# test wget, $1 url à tester, sortie du script si $1 seul (même si url testée ok) # test wget, $1=url à tester, sortie du script (même si url testée ok) avec affichage erreur ou ok
# si $2=print affiche url testée & entêtes http & location (si présente) et sortie normale fonction # si $2=print affiche url testée & entêtes http & location, return 0
# si $2=loc affiche seulement location et sortie normale fonction # si $2=loc affiche seulement location, return 0
# si $2=test return 0 si ok, return 1 si ko # si $2=test return 0 si ok, return 1 si KO
f__wget_test(){ # 15/10/2017 f__wget_test(){ # 5/12/2017
local file_test_wget retourWget retourHttp location local file_test_wget retourWget retourHttp location
file_test_wget="/tmp/testWget-$$-$RANDOM" file_test_wget="/tmp/testWget-$$-$RANDOM"
wget -Sq --tries=1 --timeout=10 --user-agent="$user_agent" --spider --save-headers "$1" &>"$file_test_wget" wget -Sq --timeout=10 --user-agent="$user_agent" --spider --save-headers "$1" &>"$file_test_wget"
retourWget="$?" retourWget="$?"
[ "$2" == "test" ] && rm "$file_test_wget" [ "$retourWget" == 1 ] && retourWget="1: code erreur générique"
[ "$2" == "test" ] && [ "$retourWget" == "0" ] && return 0 || return 1 [ "$retourWget" == 2 ] && retourWget="2: parse erreur (ligne de commande?)"
[ "$retourWget" == 1 ] && retourWget="code erreur générique" [ "$retourWget" == 3 ] && retourWget="3: erreur Entrée/sortie fichier"
[ "$retourWget" == 2 ] && retourWget="parse erreur (ligne de commande?)" [ "$retourWget" == 4 ] && retourWget="4: défaut réseau"
[ "$retourWget" == 3 ] && retourWget="erreur Entrée/sortie fichier" [ "$retourWget" == 5 ] && retourWget="5: défaut vérification SSL"
[ "$retourWget" == 4 ] && retourWget="défaut réseau" [ "$retourWget" == 6 ] && retourWget="6: défaut authentification"
[ "$retourWget" == 5 ] && retourWget="défaut vérification SSL" [ "$retourWget" == 7 ] && retourWget="7: erreur de protocole"
[ "$retourWget" == 6 ] && retourWget="défaut authentification" [ "$retourWget" == 8 ] && retourWget="8: réponse serveur en erreur"
[ "$retourWget" == 7 ] && retourWget="erreur de protocole" retourHttp="$( grep -i 'HTTP/' "$file_test_wget" | tr -d '\n' | xargs )"
[ "$retourWget" == 8 ] && retourWget="réponse serveur en erreur" location="$( grep -i 'location' $file_test_wget | xargs )"
retourHttp="$(grep -i 'HTTP/' "$file_test_wget" | tr -d '\n' | xargs)" if [ "$2" == "test" ]; then
location="$(grep -i 'location' $file_test_wget | xargs)" rm "$file_test_wget" 2>/dev/null
# spécial maintenance frama.link, pas de redirection sur page status framalink
[ "$( grep -c '303' <<< $retourHttp )" -ne 0 ] && return 1 # 303 See Other
[ "$retourWget" == "0" ] && return 0 || return 1
fi
if [ "$2" == "print" ]; then if [ "$2" == "print" ]; then
if [ "$retourWget" ]; then if [ "$retourWget" != "0" ]; then
echo "erreur wget: $RED$retourWget" echo "erreur wget: $RED$retourWget"
echo -e "$BLUE $1$STD\t$RED $retourHttp" echo -e "$BLUE $1$STD\t$RED $retourHttp"
else else
@ -210,24 +224,26 @@ f__wget_test(){ # 15/10/2017
fi fi
fi fi
if [ "$2" == "print" ] || [ "$2" == "loc" ]; then if [ "$2" == "print" ] || [ "$2" == "loc" ]; then
[ "$location" ] && echo "$YELLOW $location" || echo "$YELLOW no location" [ "$location" ] && echo -n "$YELLOW $location" || echo -n "$YELLOW no location"
echo "$STD" echo "$STD"
rm "$file_test_wget" 2>/dev/null
return 0 return 0
fi fi
if [ "$retourWget" ]; then if [ "$retourWget" != "0" ]; then
rm "$file_test_wget" rm "$file_test_wget" 2>/dev/null
f__error "erreur wget, $retourWget" "$1" "$YELLOW$retourHttp" # f__error "wget, $retourWget" "$1" "$YELLOW$retourHttp" "$location"
echo -e "$RED erreur wget, $retourWget \n $1 \n $YELLOW$retourHttp \n $location"
fi fi
if [ "$(grep -c '200' <<< $retourHttp)" -ne 0 ]; then if [ "$(grep -c '200' <<< $retourHttp)" -ne 0 ]; then
echo -e "$GREEN\ntout est ok, réessayer\n$STD" echo -e "$GREEN\ntout est ok, réessayer\n$STD"
fi fi
rm "$file_test_wget" rm "$file_test_wget" 2>/dev/null
exit 0 exit 0
} }
# affichage help # affichage help
f_help(){ # 08/10/2017 f_help(){ # 5/12/2017
printf "$BLUE" echo -n "$BLUE"
cat << 'EOF' cat << 'EOF'
----------------------------------------------------------------------- -----------------------------------------------------------------------
getFlashPlayer install : téléchargement & installation de FlashPlashplayer getFlashPlayer install : téléchargement & installation de FlashPlashplayer
@ -243,56 +259,61 @@ cat << 'EOF'
getFlashPlayer -u, --upgrade : mise à jour script & plugin, cron hebdomadaire getFlashPlayer -u, --upgrade : mise à jour script & plugin, cron hebdomadaire
getFlashPlayer -v, --version : versions du script getFlashPlayer -v, --version : versions du script
EOF EOF
printf "$STD" echo -n "$STD"
cat << 'EOF' cat << 'EOF'
----------------------------------------------------------------------- -----------------------------------------------------------------------
Ce script doit être exécuté avec les droits root uniquement pour Ce script doit être exécuté avec les droits root uniquement pour
l'installation et la suppression du script dans le système. l'installation et la suppression du script dans le système.
Il désinstallera le paquet flashplugin-nonfree si présent (debian). SEUL le plugin sera installé comme plugin Firefox, par tout utilisateur,
SEUL le plugin sera installé comme plugin Firefox. sans droits root requis.
----------------------------------------------------------------------- -----------------------------------------------------------------------
EOF EOF
echo -e " plus d'infos: $GREEN https://kyodev.frama.io/kyopages/scripts/getFlashPlayer/\n" echo -e " plus d'infos: $GREEN https://kyodev.frama.io/kyopages/scripts/getFlashPlayer/\n$STD"
} }
# pas beau ce soft :( # pas beau ce soft :(
fflash_avertissement(){ # 06/2017 fflash_avertissement(){ # 5/12/2017
echo -n "$BLUE"
cat << 'EOF' cat << 'EOF'
FlashPlayer n'est pas libre, c'est un programme propriétaire dont on 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, ne peut pas connaître le code source, ni l'utiliser sans conditions,
ni le distribuer librement. ni le distribuer librement.
Il souffre de nombreuses vulnérabilités chroniques, depuis des années Il souffre de nombreuses vulnérabilités chroniques, depuis des années...
sans que l'éditeur fasse beaucoup d'efforts pour corriger cela...
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$STD\n" echo -e " voir:$GREEN https://developer.mozilla.org/fr/docs/Plugins/Roadmap$STD\n"
} }
# version Flash en ligne & installée, si $1="quiet" pas d'affichage, $verFlash=x.y, $plugin_aJour=ko # version Flash en ligne & installée, si $1="quiet" pas d'affichage, $verFlash=x.y, $plugin_aJour=ko
fflash_get_version(){ # 06/2017 fflash_get_version(){ # 5/12/2017
local verInstall
# détection version en ligne
verFlash="$(wget -q --tries=2 --timeout=15 --user-agent="$user_agent" -O - "$urlOnline" | \ 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" sed -nr 's/^.*AUTO_ID.*Version[[:blank:]]+([0-9].*[0-9]).*$/\1/p')"
if [ "$?" != "0" ]; then f__wget_test "$urlOnline"; fi # sortie script si erreur wget [ "$verFlash" ] || verFlash="n/a"
if [ $verFlash == "na" ]; then f__error "version FlashPlayer non accessible"; [ "$1" == "quiet" ] || f__info "version FlashPlayer en ligne: $YELLOW$verFlash"
else [ "$1" == "quiet" ] || f__info "version FlashPlayer en ligne: $verFlash"; fi
if [ ! -e "$dirInstall/libflashplayer.so" ]; then if [ ! -e "$dirInstall/libflashplayer.so" ]; then
f__info "FlashPlayer non installé" f__info "FlashPlayer non installé"
return 0 return 0
fi fi
# détection version du plugin installé # détection version du plugin installé
local verInstall="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')" verInstall="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"
if [ "$verInstall" == "$verFlash" ]; then if [ "$verInstall" == "$verFlash" ]; then
[ "$1" == "quiet" ] || f__info "FlashPlayer à jour" [ "$1" == "quiet" ] || f__info "FlashPlayer $GREENà jour"
elif [[ "$verFlash" == "n/a" ]]; then
f__info "version FlashPlayer en place: $GREEN$verInstall"
else else
plugin_aJour="ko" plugin_aJour="ko"
[ "$1" == "quiet" ] || f__info "version FlashPlayer installée: $verInstall, mise à jour possible" [ "$1" == "quiet" ] || f__info "version FlashPlayer en place: $GREEN$verInstall$STD, mise à jour possible"
fi fi
} }
# install plugin dans config user mozilla, $1 manuel (install manuelle), $2 script à installer si install manuelle # install plugin dans config user mozilla, $1 manuel (install manuelle), $2 script à installer si install manuelle
fflash_install(){ # 06/09/2017 fflash_install(){ # 5/12/2017
local dirTemp fileTemp local dirTemp fileTemp
[ "$opType" == "upgrade" ] || fflash_avertissement [ "$opType" == "upgrade" ] || fflash_avertissement
if [ "$1" == "manuel" ]; then if [ "$1" == "manuel" ]; then
f__info "installation manuelle de $2" f__info "installation manuelle de $2"
@ -300,7 +321,7 @@ fflash_install(){ # 06/09/2017
fileTemp="$(basename $2)" fileTemp="$(basename $2)"
mkdir -p "$dirTemp" mkdir -p "$dirTemp"
else else
[ -z $verFlash ] && fflash_get_version "quiet" [ -z $verFlash ] && fflash_get_version "quiet" # pas de test si version=n/a, dès fois que le DL fonctionne
f__info "installation FlashPlayer, version $verFlash" f__info "installation FlashPlayer, version $verFlash"
dirTemp="/tmp/$script-$RANDOM" dirTemp="/tmp/$script-$RANDOM"
fileTemp="$dirTemp/flash_player_npapi_linux.$(getconf LONG_BIT).tar.gz" fileTemp="$dirTemp/flash_player_npapi_linux.$(getconf LONG_BIT).tar.gz"
@ -309,78 +330,90 @@ fflash_install(){ # 06/09/2017
f__info " - téléchargement..." f__info " - téléchargement..."
fflash_recup_url_v1 fflash_recup_url_v1
wget -q --show-progress --tries=2 --timeout=15 --user-agent="$user_agent" --referer="$urlOnline" -O "$fileTemp" "$recup_url" 2>&1 wget -q --show-progress --tries=2 --timeout=15 --user-agent="$user_agent" --referer="$urlOnline" -O "$fileTemp" "$recup_url" 2>&1
if [ "$?" != "0" ]; then f__wget_test "$recup_url"; fi [ "$?" -eq 0 ] || f__wget_test "$recup_url"
f__archive_test "$fileTemp" || f__error " Le fichier $fileTemp n'est pas une archive tar.gz valide" f__archive_test "$fileTemp" || f__error " Le fichier $fileTemp 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
f__info " - décompression..." f__info " - décompression..."
tar -xaf "$fileTemp" -C "$dirTemp/" tar -xaf "$fileTemp" -C "$dirTemp/"
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
# copie de la bibliothèque flash dans plugins/ user mozilla, effacement répertoire temporaire # copie de la bibliothèque flash dans plugins/ user mozilla, effacement répertoire temporaire
mkdir -p "$dirInstall" mkdir -p "$dirInstall"
cp -f "$dirTemp/libflashplayer.so" "$dirInstall/" cp -f "$dirTemp/libflashplayer.so" "$dirInstall/"
rm -Rf "$dirTemp/" rm -Rf "$dirTemp/"
# droits user si jamais installation par root # droits user si jamais installation par root
chown -R "$user_:" "$dirInstall" chown -R "$fu_user:" "$dirInstall"
f__info "log" "FlashPlayer $verFlash installé pour $user_" "\tPour tester$YELLOW: http://get.adobe.com/flashplayer/about/" f__info "log" "FlashPlayer $verFlash installé pour $fu_user" "\tPour tester$YELLOW: http://get.adobe.com/flashplayer/about/"
} }
# installation du plugin chargé manuellement, $1 # installation du plugin chargé manuellement, $1
fflash_install_manuel(){ # 16/08/2017 fflash_install_manuel(){ # 5/12//2017
[ -e "$1" ] || f__error "fichier plugin $1 introuvable" [ -e "$1" ] || f__error "fichier plugin $1 introuvable"
f__archive_test "$1" || f__error "Le fichier $1 n'est pas une archive valide" f__archive_test "$1" || f__error "Le fichier $1 n'est pas une archive valide"
fflash_install "manuel" "$1" fflash_install "manuel" "$1"
[ -e "$fileDev" ] || rm "$1" &>/dev/null ## on efface pas si fileDev (dev)
} }
# calcul url téléchargement plugin, assigne $recup_url, # calcul url téléchargement plugin, assigne $recup_url,
fflash_recup_url_v1(){ # 30/08/2017 fflash_recup_url_v1(){ # 30/08/2017
local recup1 recup2 local recup1 recup2
recup1="https://fpdownload.adobe.com/get/flashplayer/pdc/" recup1="https://fpdownload.adobe.com/get/flashplayer/pdc/"
if [ "$(uname -m)" == "i686" ] || [ "$(uname -m)" == "i386" ]; then recup2='i386'; if [ "$(uname -m)" == "i686" ] || [ "$(uname -m)" == "i386" ]; then
elif [ "$(uname -m)" == "x86_64" ] || [ "$(uname -m)" == "amd64" ]; then recup2='x86_64'; recup2='i386'
else f__error "architecture non reconnue" ; fi elif [ "$(uname -m)" == "x86_64" ] || [ "$(uname -m)" == "amd64" ]; then
recup2='x86_64'
else
f__error "architecture non reconnue"
fi
recup_url="$recup1$verFlash/flash_player_npapi_linux.$recup2.tar.gz" recup_url="$recup1$verFlash/flash_player_npapi_linux.$recup2.tar.gz"
} }
# suppression du plugin # suppression du plugin
fflash_remove(){ # 06/2017 fflash_remove(){ # 5/12/2017
[ -e /home/kyodev/.mozilla/plugins/libflashplayer.so ] || f__error "FlashPlayer inexistant pour $user_\n" local verInstall
local verInstall="$(strings $dirInstall/libflashplayer.so | grep -Eo '[0-9]+_[0-9]+_[0-9]+_[0-9]+' | sed 's/_/./g')"
[ -e "/home/$fu_user/.mozilla/plugins/libflashplayer.so" ] || f__error "FlashPlayer inexistant pour $fu_user\n"
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.so"
rm "$dirInstall/libflashplayer.maj" &>/dev/null # ancien fichier éventuel rm "$dirInstall/libflashplayer.maj" &>/dev/null # ancien fichier éventuel
rm "$dirInstall/libflashplayer.version" &>/dev/null # ancien fichier éventuel rm "$dirInstall/libflashplayer.version" &>/dev/null # ancien fichier éventuel
f__info "log" "FlashPlayer $verInstall désinstallé pour $user_" f__info "log" "FlashPlayer $verInstall désinstallé pour $fu_user"
} }
# test et mise à jour plugin si plugin outdated # test et mise à jour plugin si plugin outdated
fflash_upgrade(){ # 30/08/2017 fflash_upgrade(){ # 5/12/2017
fflash_get_version fflash_get_version
if [ "$plugin_aJour" == "ko" ]; then if [ "$verFlash" == "n/a" ]; then
f__info "log" "version du plugin flash non accessible flash"
elif [ "$plugin_aJour" == "ko" ]; then
fflash_install fflash_install
else f__info "log" "pas de mise à jour disponible pour Flash"; fi else
} f__info "log" "pas de mise à jour disponible pour Flash"
# spécifique script
fscript_cronAnacron_special(){ # 19/08/2017
rm "/home/$user_/.mozilla/plugins/libflashplayer.anacrontab" &>/dev/null # ancienne localisation
rm "/home/$user_/.config/anacron/spool/getFP"* &>/dev/null # ancien job
[ $EUID -eq 0 ] && sed -i "/libflashplayer.anacrontab/d" /etc/crontab # ancienne localisation anacrontab
}
# spécifique script
fscript_install_special(){ # 25/08/2017
[ -e "/var/log/sdeb_getFlash.log" ] && mv "/var/log/sdeb_getFlash.log" "$fileLogs" # changement ancien logs
if f__requis "flashplugin-nonfree" "debOnly" && [ "$debOnlyPresents" ]; then
apt-get purge flashplugin-nonfree
fi fi
} }
# spécifique script
fscript_cronAnacron_special(){ # 5/12/2017
rm "/home/$fu_user/.mozilla/plugins/libflashplayer.anacrontab" &>/dev/null # ancienne localisation
rm "/home/$fu_user/.config/anacron/spool/getFP"* &>/dev/null # ancien job
# ancienne localisation anacrontab, suppression
[ "$EUID" -eq 0 ] && sed -i "/libflashplayer.anacrontab/d" /etc/crontab
}
# spécifique script
fscript_install_special(){ # 5/12/2017
# changement ancien logs
[ -e "/var/log/sdeb_getFlash.log" ] && mv "/var/log/sdeb_getFlash.log" "$scriptLogs"
}
# inscription dans tache upgrade en anacron hebdomadaire, via cron horaire, $1=upgrade|install|remove # inscription dans tache upgrade en anacron hebdomadaire, via cron horaire, $1=upgrade|install|remove
fscript_cronAnacron(){ # 06/09/2017 fscript_cronAnacron(){ # 4/12/2017
local dirAnacron dirSpool fileAnacron local dirAnacron dirSpool fileAnacron
[ "$(type -t fscript_cronAnacron_special)" ] && fscript_cronAnacron_special # test, si fonction spécifique, appel [ "$(type -t fscript_cronAnacron_special)" ] && fscript_cronAnacron_special # test, si fonction spécifique, appel
dirAnacron="/home/$user_/.config/anacron" dirAnacron="/home/$fu_user/.config/anacron"
dirSpool="$dirAnacron/spool" dirSpool="$dirAnacron/spool"
fileAnacron="$dirAnacron/$script.anacrontab" fileAnacron="$dirAnacron/$script.anacrontab"
[ "$EUID" -eq 0 ] && sed -i "/$script.anacrontab/d" /etc/crontab [ "$EUID" -eq 0 ] && sed -i "/$script.anacrontab/d" /etc/crontab
@ -388,20 +421,20 @@ fscript_cronAnacron(){ # 06/09/2017
install | upgrade ) install | upgrade )
mkdir -p "$dirAnacron" mkdir -p "$dirAnacron"
# table anacron # table anacron
echo "7 10 $script nice /opt/bin/$script --upgrade 1>/dev/null" > "$fileAnacron" # juste erreurs en syslog echo "7 10 $script nice $scriptInstall --upgrade 1>/dev/null" > "$fileAnacron" # juste erreurs en syslog
## anacron journalier pour dev logname ## anacron journalier pour dev logname
if [ -e "$fileDev" ]; then if [ -e "$fileDev" ]; then
echo "1 00 $script""Dev nice /opt/bin/$script --upgrade 1>/dev/null" >> "$fileAnacron" echo "1 00 $script""Dev nice $scriptInstall --upgrade 1>/dev/null" >> "$fileAnacron"
fi fi
# création spool anacron utilisateur # création spool anacron utilisateur
mkdir -p "$dirSpool" mkdir -p "$dirSpool"
chown -R "$user_:" "$dirAnacron" "$dirSpool" chown -R "$fu_user:" "$dirAnacron" "$dirSpool"
if [ "$EUID" -eq 0 ]; then if [ "$EUID" -eq 0 ]; then
# crontab pour activation horaire anacron # crontab pour activation horaire anacron
echo "@hourly $user_ /usr/sbin/anacron -t $fileAnacron -S $dirSpool" >> /etc/crontab echo "@hourly $fu_user /usr/sbin/anacron -t $fileAnacron -S $dirSpool" >> /etc/crontab
fi fi
[ "$(grep "$script" /etc/crontab)" ] || echo f__error "inscription crontab" \ [ "$(grep "$script" /etc/crontab)" ] || echo f__error "inscription crontab" \
"certains systèmes semblent poser poser problème, merci de rapporter ce bug à $projet $contact" "certains systèmes semblent poser poser problème, merci de rapporter ce bug à $projet, $contact"
;; ;;
remove ) remove )
rm "$dirSpool/$script"* &>/dev/null rm "$dirSpool/$script"* &>/dev/null
@ -411,23 +444,27 @@ fscript_cronAnacron(){ # 06/09/2017
esac esac
} }
# version script en ligne, assigne $versionScript, $script_aJour=ok|ko # version script en ligne, [$1=update], assigne $versionScript, $script_aJour=ok|ko
fscript_get_version(){ # 08/10/2017 fscript_get_version(){ # 5/12/2017
f__info "raw" "$GREEN""version script en cours: $version" local var_temp
versionScript="$(wget -q --tries=2 --timeout=15 -O - "$urlScript" | grep '^version=' | cut -d '=' -f 2)"
f__info "raw" "version script en cours: $GREEN$version"
versionScript=$(wget -q --timeout=15 -O - "$urlScript" | grep -m1 '^version=' | cut -d'=' -f2)
if [ "$versionScript" ]; then if [ "$versionScript" ]; then
if [ "$version" != "$versionScript" ]; then if [ "$version" != "$versionScript" ]; then
f__info "version script en ligne: $versionScript, mise à jour possible" [ "$1" == "update" ] && var_temp=", mise à jour en cours" || var_temp=", mise à jour possible"
script_aJour="ko" script_aJour="ko"
else else
f__info "version script en ligne: $versionScript"
script_aJour="ok" script_aJour="ok"
fi fi
else f__info "version script en ligne $RED""non accessible"; fi f__info "version script en ligne: $YELLOW$versionScript$BLUE$var_temp"
else
f__info "version script en ligne$RED non accessible"
fi
} }
# installation du script dans le système # installation du script dans le système
fscript_install(){ # 08/10/2017 fscript_install(){ # 4/12/2017
if grep -q 'bin' <<< "$(dirname $0)" ; then if grep -q 'bin' <<< "$(dirname $0)" ; then
f__info "$RED""l'installation dans le système doit se faire depuis un script local $GREEN(./$script -i )" f__info "$RED""l'installation dans le système doit se faire depuis un script local $GREEN(./$script -i )"
return 1 return 1
@ -438,29 +475,29 @@ fscript_install(){ # 08/10/2017
return $? return $?
fi fi
[ "$(type -t fscript_install_special)" ] && fscript_install_special # test, si fonction spécifique, appel [ "$(type -t fscript_install_special)" ] && fscript_install_special # test, si fonction spécifique, appel
f__requis "wget anacron cron" f__requis "wget anacron cron" || exit 1
# install /opt # install /opt
mkdir -p /opt/bin/ mkdir -p /opt/bin/
cp -d "$(basename $0)" "/opt/bin/$script" cp -d "$(basename $0)" "$scriptInstall"
ln -s "/opt/bin/$script" "/usr/bin/$script" &>/dev/null ln -s "$scriptInstall" "/usr/bin/$script" &>/dev/null
chmod 775 "/opt/bin/$script" # rwx rwx r-x, proprio user_ chmod 775 "$scriptInstall" # rwx rwx r-x, proprio fu_user
# cron/anacron install # cron/anacron install
fscript_cronAnacron "install" fscript_cronAnacron "install"
# création fichier log # création fichier log
touch "$fileLogs" touch "$scriptLogs"
chmod 664 "$fileLogs" # rw- rw- r--, proprio user_ chmod 664 "$scriptLogs" # rw- rw- r--, proprio fu_user
chown "$user_:" "$fileLogs" "/opt/bin/$script" chown "$fu_user:" "$scriptLogs" "$scriptInstall"
[ -e "$fileDev" ] || rm "$(basename $0)" &>/dev/null ## on efface pas si fileDev (dev) [ -e "$fileDev" ] || rm "$(basename $0)" &>/dev/null ## on efface pas si fileDev (dev)
f__info "log" "$script $version installé dans le système." "maintenant, appel du script par: $GREEN$script$BLUE (sans ./)" f__info "log" "$script $version installé dans le système." "maintenant, appel du script par: $GREEN$script$BLUE (sans ./)"
} }
# suppression du script dans le système # suppression du script dans le système
fscript_remove(){ # 08/10/2017 fscript_remove(){ # 4/12/2017
if ! grep -q 'bin' <<< "$(dirname $0)" ; then if ! grep -q 'bin' <<< "$(dirname $0)" ; then
f__info "$RED""cette fonction doit être appelée depuis le script installé dans le système $GREEN($script -r)" f__info "$RED""cette fonction doit être appelée depuis le script installé dans le système $GREEN($script -r)"
return 1 return 1
fi fi
if [ ! -x "/opt/bin/$script" ];then if [ ! -x "$scriptInstall" ];then
f__info "$RED$script n'est pas installé" f__info "$RED$script n'est pas installé"
return 1 return 1
fi fi
@ -471,61 +508,100 @@ fscript_remove(){ # 08/10/2017
fi fi
[ "$(type -t fscript_remove_special)" ] && fscript_remove_special # test, si fonction spécifique, appel [ "$(type -t fscript_remove_special)" ] && fscript_remove_special # test, si fonction spécifique, appel
# suppression de /opt # suppression de /opt
rm "/opt/bin/$script" &>/dev/null rm "$scriptInstall" &>/dev/null
unlink "/usr/bin/$script" &>/dev/null unlink "/usr/bin/$script" &>/dev/null
# cron/anacron remove # cron/anacron remove
fscript_cronAnacron "remove" fscript_cronAnacron "remove"
f__info "log" "$script $version supprimé du système." f__info "log" "$script $version supprimé du système."
} }
# mise à jour script si dispo # mise à jour script si dispo, v2, +update spécifique
fscript_update(){ # 08/10/2017 fscript_update(){ # 4/12/2017
if ! grep -q 'bin' <<< "$(dirname $0)" ; then local dirTemp="/tmp/$script-$RANDOM"
[ $(type -t fscript_update_special) ] && fscript_update_special # test, si fonction spécifique, appel
if [ -z "$updateSpecial" ] && ! grep -q 'bin' <<< "$(dirname $0)" ; then
f__info "$RED""cette fonction doit être appelée depuis le script installé dans le système $GREEN($script -u)" f__info "$RED""cette fonction doit être appelée depuis le script installé dans le système $GREEN($script -u)"
return return 1
fi fi
[ "$(type -t fscript_update_special)" ] && fscript_update_special # test, si fonction spécifique, appel fscript_get_version "update"
fscript_get_version
if [ "$script_aJour" == "ok" ]; then if [ "$script_aJour" == "ok" ]; then
f__info "log" "pas de mise à jour disponible pour $script $version" f__info "log" "pas de mise à jour disponible pour $script $version"
return 0 return 0
fi fi
local dirTemp="/tmp/$script-$RANDOM"
mkdir -p "$dirTemp" mkdir -p "$dirTemp"
wget -q --tries=2 --timeout=15 -O "$dirTemp/$script" "$urlScript" wget -q --tries=2 --timeout=15 -O "$dirTemp/$script" "$urlScript"
if [ "$?" != "0" ]; then f__wget_test "$urlScript"; fi if [ "$?" != "0" ]; then f__wget_test "$urlScript"; fi
chmod 775 "/opt/bin/$script" # rwx rwx r-x, proprio user_ if grep -q '#!/bin/bash' "$dirTemp/$script" ; then
chown "$user_:" "$dirTemp/$script" cp -d "$dirTemp/$script" "$scriptInstall"
cp -d "$dirTemp/$script" "/opt/bin/$script" chmod 775 "$scriptInstall" # rwx rwx r-x, proprio fu_user
chown "$fu_user:" "$scriptInstall"
[ -z "$updateSpecial" ] && fscript_cronAnacron "upgrade"
f__info "log" "$script mis à jour en version $versionScript $updateSpecial"
else
rm -rf "$dirTemp/"
f__error "échec update" "mauvais téléchargement, réessayer plus tard"
fi
rm -rf "$dirTemp/" rm -rf "$dirTemp/"
fscript_cronAnacron "upgrade"
f__info "log" "$script mis à jour en version $versionScript"
} }
#initialisation prg_init(){ # 4/12/2017
PATH='/usr/sbin:/usr/bin:/sbin:/bin'; TERM=xterm; IFS=$' \t\n'
export PATH TERM IFS
f__affichage PATH='/usr/sbin:/usr/bin:/sbin:/bin'
TERM=xterm
IFS_INI="$IFS"
IFS=$' \t\n'
export PATH TERM IFS
f__user # test bash v4
retourFUser="$?" [ "$BASH_VERSINFO" == 4 ] || f__error "bash v4 requis" "version installée: $BASH_VERSION"
[ "$retourFUser" -eq 1 ] && f__error "user indéterminé"
[ "$retourFUser" -eq 2 ] && f__error "user détecté, mais pas de home: /home/$user_"
[ "$(grep -o 'version 4' <<< $(bash --version) | sed 's/version //')" -ge "4" ] || f__error "bash version 4" # test SSH
f__requis "file tar" # requis pour fonctionnement programme [[ "$SSH_CLIENT" || "$SSH_CLIENT" || "$SSH_CLIENT" ]] && ENV_SSH="ssh"
# test $DISPLAY
[ -z "$DISPLAY" ] && ENV_DISPLAY="no DISPLAY"
fileLogs="/var/log/sdeb_$script.log" # détermination user derrière root
f__user
retourFUser="$?"
[ "$retourFUser" -eq 1 ] && f__error "user indéterminé" \
"pour contourner, lancer le script avec:\n$GREEN USER_INSTALL=<user> $0 \n"
if [ "$retourFUser" -eq 2 ]; then
[ "$EUID" -eq 0 ] && fu_user="root" || f__error "user détecté, mais pas de home: /home/$fu_user"
f__info "user root"
fi
# requis pour fonctionnement programme
f__requis "file tar" || exit 1
}
######## début script / initialisation
# logo et définition couleurs
f_affichage
# tests au démarrage
prg_init
urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/getFlashPlayer"
urlNotice="https://kyodev.frama.io/kyopages/scripts/getFlashPlayer/"
user_agent="Mozilla/5.0 Firefox"
scriptInstall="/opt/bin/$script"
scriptLogs="/var/log/sdeb_$script.log"
fileDev="/opt/bin/fileDev" fileDev="/opt/bin/fileDev"
dirInstall="/home/$user_/.mozilla/plugins"
dirInstall="/home/$fu_user/.mozilla/plugins"
urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer urlOnline="https://get.adobe.com/fr/flashplayer/" # test version & referer
[ -e "/opt/bin/$script" ] && [ "$(stat -c %G /opt/bin/$script)" == "root" ] && problemDetected+="-1" # droits inappropriés sur le script, version de dev [ -e "$scriptInstall" ] && [ "$(stat -c %G $scriptInstall)" == "root" ] && problemDetected+="-1" # droits inappropriés sur le script, version de dev
options=$@ options=$@
if [ "$(dirname $0)" == "." ] && [ ! -e "$fileDev" ]; then options="-i" # script install if [ "$(dirname $0)" == "." ] && [ ! -e "$fileDev" ]; then
options="-i" # script install
else else
if [ ! -w "$fileLogs" ] && [ -e "$dirInstall/libflashplayer.so" ] ; then problemDetected+="-2"; fi # ancien système de logs via syslog if [ ! -w "$scriptLogs" ] && [ -e "$dirInstall/libflashplayer.so" ]; then # ancien système de logs via syslog
problemDetected+="-2"
fi
fi fi
[ "$problemDetected" ] && f__info "$RED""l'installation du script est obsolète ($problemDetected)" \ [ "$problemDetected" ] && f__info "$RED""l'installation du script est obsolète ($problemDetected)" \
"veuillez réinstaller le script manuellement" "$GREEN""voir $urlNotice#messages-avertissement" "veuillez réinstaller le script manuellement" "$GREEN""voir $urlNotice#messages-avertissement"
@ -569,7 +645,7 @@ for j in $options; do
exit ;; # affichage help exit ;; # affichage help
esac esac
done done
unset j
exit 0 exit 0
wget -O getFlashPlayer https://framagit.org/kyodev/kyopages/raw/master/scripts/getFlashPlayer wget -O getFlashPlayer https://framagit.org/kyodev/kyopages/raw/master/scripts/getFlashPlayer

View File

@ -1,10 +1,16 @@
# changelog getFlashPlayer # changelog getFlashPlayer
## todo ## 3.18.0 5/12/2017
* placé ln dans /usr/local/bin au lieu de /usr/bin ? * révision: démarrage
* flash pour chromium * révision: syncro fonctions communes
* révision: fflash_install, fscript_cronAnacron_special, fflash_remove, renommage user_
* révision: suppression avertissement ou remove flashplugin-nonfree
* révision: fflash_get_version, gestion des retours en cas de n/a
* révision: général, mise en forme
* fix: fflash_remove
* fix: f__wget_test
## 3.17.0 16/10/2017 ## 3.17.0 16/10/2017