mirror of https://framagit.org/kyodev/kyopages.git
maj
This commit is contained in:
parent
406f1cdaa9
commit
ff159a2de3
|
@ -1,7 +1,7 @@
|
|||
# getFlashPlayer
|
||||
|
||||
|
||||
![version: 4.11.0](https://img.shields.io/badge/version-4.11.0-blue.svg?longCache=true&style=for-the-badge)
|
||||
![version: 4.12.0](https://img.shields.io/badge/version-4.12.0-blue.svg?longCache=true&style=for-the-badge)
|
||||
![bash langage](https://img.shields.io/badge/bash-4-brightgreen.svg?longCache=true&style=for-the-badge)
|
||||
![license LPRAB / WTFPL](https://img.shields.io/badge/license-LPRAB%20%2F%20WTFPL-blue.svg?longCache=true&style=for-the-badge)
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=4.11.0
|
||||
date="11/06/2018"
|
||||
version=4.12.0
|
||||
date="12/06/2018"
|
||||
script="getFlashPlayer"
|
||||
# contact="IRC ##sdeb@freenode.net ou https://framagit.org/sdeb/getFlashPlayer/issues"
|
||||
|
||||
|
@ -114,7 +114,7 @@ f__log(){ # 05/03/2018
|
|||
|
||||
# recherche commandes/paquets, $1 liste: cmd1|cmd2[>paquet] (séparées par espaces) ex: "gawk|mawk>gawk wget"
|
||||
# si manque, return 1 & affiche commandes manquantes (si debian, ajout proposition paquet à installer)
|
||||
f__requis(){ # 06/06/2018
|
||||
f__requis(){ # 11/06/2018
|
||||
local ENV_DEBIAN c_echo ireq cmds package commands command commandsMissing packagesMissing
|
||||
|
||||
if type -p dpkg &>/dev/null ; then
|
||||
|
@ -128,7 +128,7 @@ f__requis(){ # 06/06/2018
|
|||
for ireq in $1; do
|
||||
IFS='>' read -r cmds package <<< "$ireq" # ex: "awk|gawk>gawk wget file tar killall>psmisc"
|
||||
mapfile -t -d '|' commands <<< "${cmds}"
|
||||
[ -z "$package" ] && package=${commands[0]%$'\n'} # pas de packages dans les options, donc = commands[0
|
||||
[ -z "$package" ] && package=${commands[0]%$'\n'} # pas de packages dans les options, donc = commands[0]
|
||||
for command in "${commands[@]%$'\n'}"; do
|
||||
if type -p "$command" &>/dev/null ; then
|
||||
unset commandsMissing packagesMissing
|
||||
|
@ -157,40 +157,14 @@ f__requis(){ # 06/06/2018
|
|||
[ "$commandsMissing" ] && return 1 || return 0
|
||||
}
|
||||
|
||||
# $@=cmd à lancer en root avec su ou sudo. si $@ contient [':x:'] x=nombre de tentatives, 2 par défaut
|
||||
# si sudo si possible sera utilisé.
|
||||
# si su &2 redirigé sur &1
|
||||
# si bash inexistant, return 2
|
||||
f__sudo(){ # 10/06/2018
|
||||
local nb sudo isudo options nbDefault=2
|
||||
# $@=cmd à lancer en root avec su ou sudo. si sudo possible: prioritairesu su
|
||||
f__sudo(){ # 11/06/2018
|
||||
|
||||
# détermination sudo possible
|
||||
if sudo -v &>/dev/null && [ $EUID -ne 0 ] ; then
|
||||
sudo="sudo su --preserve-environment -c "
|
||||
sudo su --preserve-environment -c "$@"
|
||||
else
|
||||
sudo="su --preserve-environment -c "
|
||||
fi
|
||||
# extraction nb de tentatives éventuel
|
||||
if [[ "$*" =~ :.{1,2}: ]]; then
|
||||
nb="$*"
|
||||
nb=${nb#*:}
|
||||
nb=${nb%:*}
|
||||
options=${*//:$nb:/ }
|
||||
(( nb+1 )) 2>/dev/null || nb="$nbDefault" # test si numérique, sinon,
|
||||
else
|
||||
nb="$nbDefault"
|
||||
options="$*"
|
||||
fi
|
||||
# lancement cmds
|
||||
if [[ "$sudo" =~ ^sudo ]]; then
|
||||
$sudo "$options"
|
||||
else
|
||||
for (( isudo=1 ; isudo<="$nb" ; isudo++ )); do
|
||||
echo -e "[su] Mot de passe root :"
|
||||
$sudo "$options" 2>/dev/null && break
|
||||
[ "$isudo" == "$nb" ] && return 1
|
||||
done
|
||||
echo
|
||||
echo -n "[su] "
|
||||
su --preserve-environment -c "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
|
@ -380,11 +354,15 @@ fflash_get_version(){ # 24/01/2018
|
|||
}
|
||||
|
||||
# install plugin dans config user mozilla, [$1='manuel', $2 archive]
|
||||
fflash_install(){ # 11/06/2018
|
||||
fflash_install(){ # 12/06/2018
|
||||
local versArchive recup_url dirTemp="/tmp/$script"
|
||||
|
||||
[[ "$operation" != "upgrade" && -z "$dl_only" ]] && fflash_avertissement
|
||||
if [ ! -w "dirTemp" ]; then # normalement pas utile...
|
||||
dirtemp+="-$RANDOM"
|
||||
[ ! -w "dirTemp" ] && f__error "droits insuffisants, recommencer avec les droits root"
|
||||
fi
|
||||
mkdir -p "$dirTemp"
|
||||
[[ "$operation" != "upgrade" && -z "$dl_only" ]] && fflash_avertissement
|
||||
if [ "$1" == "manuel" ]; then
|
||||
versArchive=${2%\.tar*} # flashplayer_28.0.0.137_npapi_linux64.tar.gz
|
||||
versArchive=${versArchive%_npapi*}
|
||||
|
@ -407,10 +385,10 @@ fflash_install(){ # 11/06/2018
|
|||
f__archive_test "$fileTemp" || f__error " Le fichier $fileTemp n'est pas une archive tar.gz valide"
|
||||
if [[ "$dl_to_svg" || "$dl_only" ]]; then
|
||||
chown "$fu_user:" "$fileTemp"
|
||||
cp "$fileTemp" ./
|
||||
cp --preserve "$fileTemp" ./
|
||||
fi
|
||||
if [ "$dl_only" ]; then
|
||||
rm "$fileTemp"
|
||||
rm fr "$fileTemp"
|
||||
echo
|
||||
return 0
|
||||
fi
|
||||
|
@ -584,12 +562,11 @@ fscript_remove(){ # 09/06/2018
|
|||
f__info "log" "$script $version supprimé du système."
|
||||
}
|
||||
|
||||
# si upgrade en place, $1 != "", [$1 message info]
|
||||
# shellcheck disable=SC2120
|
||||
# function references arguments, but none are ever passed.
|
||||
fscript_update(){ # 09/06/2018
|
||||
local dirTemp="/tmp/$script-maj" upgradeEnPlace="$1"
|
||||
# $1: update standard $1=std, si update en place $1=message d'info
|
||||
fscript_update(){ # 11/06/2018
|
||||
local dirTemp="/tmp/$script-maj" upgradeEnPlace
|
||||
|
||||
[ "$1" != 'std' ] && upgradeEnPlace="$1"
|
||||
type -t fscript_update_special &>/dev/null && fscript_update_special # test, si fonction spécifique, appel
|
||||
if [ -z "$upgradeEnPlace" ] && ! grep -Eq "$script_install|/usr/bin/$script" <<< "$0"; then
|
||||
f__info "${RED}cette fonction doit être appelée depuis le script installé dans le système $GREEN($script -u)"
|
||||
|
@ -726,7 +703,7 @@ for i in "${!options[@]}"; do # deuxième passe options, actions
|
|||
-u | --upgrade ) # upgrade script et plugin
|
||||
operation="upgrade"
|
||||
# shellcheck disable=SC2119
|
||||
fscript_update
|
||||
fscript_update std # std argument obligatoire pour upgrade normal
|
||||
$0 upgrade # on relance le script en upgrade pour le plugin
|
||||
exit ;;
|
||||
-v | --version ) # version du script, en ligne et en place
|
||||
|
|
Loading…
Reference in New Issue