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