mirror of https://framagit.org/kyodev/kyopages.git
2.6.0
This commit is contained in:
parent
4eab422c8a
commit
b350252b6f
|
@ -1,14 +1,13 @@
|
|||
#!/bin/bash
|
||||
|
||||
version=2.5.0
|
||||
date="25/08/2017"
|
||||
version=2.6.0
|
||||
date="27/08/2017"
|
||||
projet="simpledeb"
|
||||
contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues/"
|
||||
script="getFirefox"
|
||||
urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/getFirefox/"
|
||||
urlNotice="https://kyodev.frama.io/kyopages/scripts/getFirefox/"
|
||||
user_agent="Mozilla/5.0 Firefox"
|
||||
lognameDev="kyodev"
|
||||
|
||||
##### license LPRAB/WTFPL
|
||||
# auteur: simpledeb
|
||||
|
@ -270,7 +269,7 @@ echo -e " plus d'infos:$GREEN https://framagit.org/kyodev/kyopages/raw/master/s
|
|||
}
|
||||
|
||||
# installation Firefox, $1 produit, $2 manuel, $3 archive
|
||||
ffx_install(){ #v25/08/2017
|
||||
ffx_install(){ #v27/08/2017
|
||||
[ $EUID -eq 0 ] || f__error "vous devez être ROOT pour installer Firefox"
|
||||
if [ "$2" == "manuel" ]; then
|
||||
local versionArchive="$(sed -E 's/firefox-(.*)\.linux.*/\1/' <<< $(stat -c %n $3))"
|
||||
|
@ -315,16 +314,16 @@ ffx_install(){ #v25/08/2017
|
|||
ffx_usr_bin
|
||||
# traitement user
|
||||
ffx_profil_user
|
||||
f__info "log" "Firefox-$produit installé $2 $versionArchive"
|
||||
f__info "log" "Firefox-$produit installé $versionArchive"
|
||||
ffx_godzilla
|
||||
}
|
||||
|
||||
# installation d'un FF chargé manuellement, $1 produit, $2 fichier archive
|
||||
ffx_install_manuel(){ #v25/08/2017
|
||||
ffx_install_manuel(){ #v27/08/2017
|
||||
[ -e "$2" ] || f__error "fichier $1 introuvable"
|
||||
f__archive_test "$2" || f__error "Le fichier $2 n'est pas une archive valide"
|
||||
ffx_install "$1" "manuel" "$2"
|
||||
[ "$user_" != "$lognameDev" ] && rm "$2" &>/dev/null # si user pas dev, effacement archive
|
||||
[ -e "$fileDev" ] || rm "$2" &>/dev/null ## on efface pas si fileDev (dev)
|
||||
}
|
||||
|
||||
# création lanceur.desktop
|
||||
|
@ -528,7 +527,7 @@ ffx_usr_bin(){
|
|||
}
|
||||
|
||||
# inscription dans tache upgrade en anacron hebdomadaire, via cron horaire
|
||||
fscript_cronAnacron(){ # v23/08/2017
|
||||
fscript_cronAnacron(){ # v27/08/2017
|
||||
[ "$(type -t fscript_cronAnacron_special)" ] && fscript_cronAnacron_special # test, si fonction spécifique, appel
|
||||
local dirAnacron="/home/$user_/.config/anacron"
|
||||
local dirSpool="$dirAnacron/spool"
|
||||
|
@ -540,8 +539,8 @@ fscript_cronAnacron(){ # v23/08/2017
|
|||
# table anacron
|
||||
echo "7 10 $script nice /opt/bin/$script --upgrade 1>/dev/null" > "$fileAnacron" # juste erreurs en syslog
|
||||
## anacron journalier pour dev logname
|
||||
if [ "$user_" == "$lognameDev" ]; then
|
||||
echo "1 00 $script""Dev nice /opt/bin/$script --upgrade 1>/dev/null" >> "$fileAnacron" # juste erreurs en syslog
|
||||
if [ -e "$fileDev" ]; then
|
||||
echo "1 00 $script""Dev nice /opt/bin/$script --upgrade 1>/dev/null" >> "$fileAnacron"
|
||||
fi
|
||||
# création spool anacron utilisateur
|
||||
mkdir -p "$dirSpool"
|
||||
|
@ -568,7 +567,7 @@ fscript_cronAnacron_special(){ # v19/08/2017
|
|||
}
|
||||
|
||||
# version script en ligne, assigne $versionScript, $script_aJour=ok|ko
|
||||
fscript_get_version(){ # v25/08/2017
|
||||
fscript_get_version(){ # v27/08/2017
|
||||
f__requis "wget"
|
||||
f__info "raw" "$GREEN""version script en cours: $version"
|
||||
versionScript="$(wget -q --tries=2 --timeout=15 -O - "$urlScript" | grep '^version=' | cut -d '=' -f 2)"
|
||||
|
@ -584,10 +583,10 @@ fscript_get_version(){ # v25/08/2017
|
|||
}
|
||||
|
||||
# installation du script dans le système
|
||||
fscript_install(){ # v25/08/2017
|
||||
fscript_install(){ # v27/08/2017
|
||||
[ "$(type -t fscript_install_special)" ] && fscript_install_special # test, si fonction spécifique, appel
|
||||
if dirname "$0" | grep -q 'bin' ; then
|
||||
f__info "\n $script $version est déjà installé"
|
||||
f__info "$RED""$script $version est déjà installé"
|
||||
return 1
|
||||
fi
|
||||
[ $EUID -eq 0 ] || f__error "vous devez être ROOT pour installer ce script dans le système"
|
||||
|
@ -603,7 +602,7 @@ fscript_install(){ # v25/08/2017
|
|||
touch "$fileLogs"
|
||||
chmod 644 "$fileLogs"
|
||||
chown "$user_": "$fileLogs" "/opt/bin/$script"
|
||||
[ -e "$script"_changelog.md ] || rm "$(basename $0)" &>/dev/null ## on efface pas si changelog (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 ./)"
|
||||
}
|
||||
|
||||
|
@ -618,7 +617,7 @@ fscript_install_special(){ # v25/08/2017
|
|||
}
|
||||
|
||||
# suppression du script dans le système
|
||||
fscript_remove(){ # v21/08/2017
|
||||
fscript_remove(){ # v27/08/2017
|
||||
[ $EUID -eq 0 ] || f__error "vous devez être ROOT pour supprimer ce script dans le système"
|
||||
# suppression de /opt
|
||||
rm /opt/bin/"$script" &>/dev/null
|
||||
|
@ -629,7 +628,7 @@ fscript_remove(){ # v21/08/2017
|
|||
}
|
||||
|
||||
# mise à jour script si dispo
|
||||
fscript_update(){ # v25/08/2017-2
|
||||
fscript_update(){ # v26/08/2017
|
||||
fscript_get_version
|
||||
if [ "$script_aJour" == "ok" ]; then
|
||||
f__info "log" "pas de mise à jour disponible pour $script"
|
||||
|
@ -656,6 +655,7 @@ f__user || f__error "échec détection user"
|
|||
f__requis "file tar killall>psmisc" # requis pour fonctionnement programme
|
||||
|
||||
fileLogs="/var/log/sdeb_$script.log"
|
||||
fileDev="fileDev"
|
||||
dirInstall="/opt/usr/share/firefox-"
|
||||
dirProfil="/home/$user_/.mozilla/firefox"
|
||||
fileProfileIni="$dirProfil/profiles.ini"
|
||||
|
@ -669,7 +669,7 @@ ls -d /opt/firefox-* &>/dev/null && problemOldInstall="detected" # ancienne loc
|
|||
|
||||
[ -e "/opt/bin/$script" ] && [ "$(stat -c %G /opt/bin/$script)" == "root" ] && problemDetected+="-1" # droits inappropriés sur le script, version de dev
|
||||
options=$@
|
||||
if [ "$(dirname $0)" == "." ]; then unset options # induira script install
|
||||
if [ "$(dirname $0)" == "." ]; then options="-i" # script install
|
||||
else
|
||||
if [ ! -w "$fileLogs" ] && ls -d "$dirInstall"* &>/dev/null ; then problemDetected+="-2"; fi # ancien système de logs via syslog
|
||||
fi
|
||||
|
@ -677,47 +677,48 @@ fi
|
|||
"veuillez réinstaller le script manuellement" "$GREEN""voir $urlNotice""#installation-rapide-du-script"
|
||||
|
||||
for i in $options; do
|
||||
[ -z "$i" ] && echo 'i zero'
|
||||
case $i in
|
||||
i-latest | i-esr | i-dev | i-beta | i-nightly | i-all | +latest | +esr | +dev | +beta | +nightly | +all )
|
||||
produit="$(sed 's/i-//; s/+//' <<< "$1")"
|
||||
if [ "$produit" == "all" ]; then produit="$produitAll"; fi
|
||||
for i in $produit; do ffx_install "$i"; done
|
||||
break ;; # install: installation canal Firefox $1 produit, (gestion ancien répertoire éventuel)
|
||||
exit ;; # install: installation canal Firefox $1 produit, (gestion ancien répertoire éventuel)
|
||||
m-latest | m-esr | m-dev | m-beta | m-nightly )
|
||||
produit="$(sed 's/m-//' <<< "$1")"
|
||||
ffx_install_manuel "$produit" "$2"
|
||||
break ;; # installation manuelle d'un chargement, $2 fichier archive
|
||||
exit ;; # installation manuelle d'un chargement, $2 fichier archive
|
||||
p-latest | p-esr | p-dev | p-beta | p-nightly | p-all )
|
||||
produit="$(sed 's/p-//' <<< "$1")"
|
||||
if [ "$produit" == "all" ]; then produit="$produitAll"; fi
|
||||
for i in $produit; do ffx_pers_install "$i"; done
|
||||
break ;; # mise en place personnalisation
|
||||
exit ;; # mise en place personnalisation
|
||||
pu )
|
||||
ffx_pers_upgrade
|
||||
break ;; # mise à jour personnalisations
|
||||
exit ;; # mise à jour personnalisations
|
||||
r-latest | r-esr | r-dev | r-beta | r-nightly | -latest | -esr | -dev | -beta | -nightly )
|
||||
produit="$(sed 's/r-//; s/-//' <<< "$1")"
|
||||
ffx_remove
|
||||
break ;; # remove: désinstallation Firefox (y compris ancien répertoire éventuel)
|
||||
exit ;; # remove: désinstallation Firefox (y compris ancien répertoire éventuel)
|
||||
u-latest | u-esr | u-dev | u-beta | u-nightly )
|
||||
produit="$(sed 's/u-//' <<< "$1")"
|
||||
[ "$problemOldInstall" ] && f__error "vous devez réinstaller firefox auparavant"
|
||||
ffx_profil_user "user"
|
||||
break ;; # configurer un profil firefox pour un user
|
||||
exit ;; # configurer un profil firefox pour un user
|
||||
version | versions )
|
||||
ffx_get_versionsFF
|
||||
fscript_get_version
|
||||
ffx_pers_get_version
|
||||
ffx_godzilla
|
||||
break ;; # affiche versions Firefox en ligne & installées, script et personnalisation
|
||||
"" )
|
||||
exit ;; # affiche versions Firefox en ligne & installées, script et personnalisation
|
||||
-i )
|
||||
if ! dirname "$0" | grep -q 'bin' ; then
|
||||
fscript_install
|
||||
else ffx_help; fi
|
||||
break ;; # installation du script dans le système
|
||||
exit ;; # installation du script dans le système
|
||||
-r | --remove | sysremove )
|
||||
fscript_remove
|
||||
break ;; # désinstallation du script
|
||||
exit ;; # désinstallation du script
|
||||
-u | --upgrade | upgrade )
|
||||
opType="upgrade"
|
||||
fscript_update
|
||||
|
@ -725,10 +726,10 @@ for i in $options; do
|
|||
exit ;; # upgrade script
|
||||
-v | --version )
|
||||
fscript_get_version
|
||||
break ;; # version du script, en ligne et exécuté
|
||||
exit ;; # version du script, en ligne et exécuté
|
||||
-h | --help | * )
|
||||
ffx_help
|
||||
break ;; # affichage help
|
||||
exit ;; # affichage help
|
||||
esac
|
||||
done
|
||||
|
||||
|
|
|
@ -5,6 +5,12 @@
|
|||
* install: copie du profil du canal inférieur?
|
||||
|
||||
|
||||
## 2.6.0 27/08/2017
|
||||
|
||||
* fix bug install
|
||||
* fscript_cronAnacron, fscript_install : changement lognameDev ->fileDev
|
||||
* révision présentation fscript_get_version, fscript_install, fscript_remove
|
||||
|
||||
## 2.5.0 26/08/2017
|
||||
|
||||
* renommage fscript_dl en fscript_update
|
||||
|
|
Loading…
Reference in New Issue