diff --git a/docs/scripts/getFirefox.md b/docs/scripts/getFirefox.md index 7a94577..733daee 100644 --- a/docs/scripts/getFirefox.md +++ b/docs/scripts/getFirefox.md @@ -1,13 +1,15 @@ # getFirefox -> c'est un script bash qui se charge de charger les dernières versions officielles de Mozilla Firefox +> c'est un script bash qui se charge de charger les dernières versions officielles de Mozilla Firefox + des différents canaux possibles **latest** la release officielle, mais aussi **beta**, **nightly**, et + _dev_, _ESR_ -> les mises à jour de Firefox sont gérées par celui-ci, avec des correction mineures permanent, en tâche de +> les mises à jour de Firefox sont gérées par celui-ci, avec des corrections mineures permanentes, en tâche de fond, et une version majeure toutes les 6 semaines -> seul le script se mettra éventuellement à jour, sans intervention sur les canaux Firefox installés +> seul le script se mettra éventuellement à jour, sans influence sur les canaux Firefox installés -> le script installe un Firefox pour l'user en cours, mais toutes les installations/désinstallations doivent +> le script installe un canal Firefox pour l'user en cours, mais toutes les installations/désinstallations doivent être faites avec les privilèges **root** @@ -26,7 +28,7 @@ chmod +x getFirefox && ./getFirefox \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 getFirefox installé dans le système. maintenant, appel du script par: getFirefox (sans ./) @@ -34,9 +36,9 @@ chmod +x getFirefox && ./getFirefox ``` * le script est maintenant dans le système et tout utilisateur peut s'en servir. * si le paquet Debian `firefox-esr` était présent, il a été **désinstallé**. -* si ce paquet devait être ré-installé, il semble préférable de désinstaller ces versions - officielles mozilla auparavant. -* un canal Firefox doit être choisi et installé (`latest`,`beta`,`nightly`,`esr`) +* si ce paquet devait être ré-installé, il semble préférable de désinstaller les canaux Firefox installés + auparavant. +* un canal Firefox doit être choisi et installé (`latest`,`beta`,`nightly`, `dev`, `esr`) ## messages avertissement @@ -88,7 +90,7 @@ lancer le script sans arguments: `getFirefox` ou avec l'option help `getFirefox \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 ---------------------------------------------------------------------- ./getFirefox : installation du script dans le système @@ -102,9 +104,9 @@ lancer le script sans arguments: `getFirefox` ou avec l'option help `getFirefox ---- getFirefox r-canal : désinstallation de Firefox ---- - getFirefox u-canal : initialisation du profil pour l'utilisateur en cours + getFirefox u-canal : ajouter ou configurer un profil pour l'utilisateur en cours ---- - getFirefox version : version en ligne Firefox Release & ESR + getFirefox version : version en ligne des canaux Firefox getFirefox upgrade : mise à jour forcée du script ---- getFirefox sysremove: désinstallation du script du système @@ -120,7 +122,7 @@ plus d'infos: https://framagit.org/kyodev/kyopages/raw/master/scripts/getFirefox ## installation d'un canal Firefox -`getFirefox i-canal` par exemple, pour la version Release officielle, en **root**: +`getFirefox i-canal` par exemple, pour la Release officielle, en **root**: ``` getFirefox i-latest @@ -133,7 +135,7 @@ getFirefox i-latest \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 _.-~-. 7'' Q..\ @@ -167,8 +169,8 @@ vVVv vVVv ': |_| |_| |_|\___/___|_|_|_|\__,_| '' ``` -* la dernière officielle Firefox est installée, en étant directement chargée du site Mozilla. -* un lanceur par canal Firefox doit se trouver dans les menus (comme Applications/Internet) +* la dernière version officielle Firefox est installée, en étant directement chargée sur le site Mozilla. +* un lanceur par canal Firefox installé est placé dans les menus (Applications/Internet) * l'installation sur un canal existant est refaite en **totalité**, mais le profil n'est pas modifié * si un profil _xyz.default_ (d'un paquet _firefox-esr_ par exemple) existe, il sera laissé en place, mais une **copie** sera utilisée pour le profil latest (ou ESR). le passage d'une version paquet Debian à une @@ -179,7 +181,7 @@ vVVv vVVv ': |_| |_| |_|\___/___|_|_|_|\__,_| '' * chaque canal peut être lancé en console: `firefox-latest` `firefox-beta` `firefox-dev` `firefox-nightly` `firefox-esr` * le plus bas canal installé peut lui être lancé avec: `firefox` (_/usr/bin/firefox_) -* si supporté, update-alternatives est configuré pour le plus bas canal installé +* si supporté par la distribution, update-alternatives est configuré pour le plus bas canal installé 4 autres canaux sont possibles: @@ -205,13 +207,13 @@ la version **aurora** est abandonnée et la **developer edition** est basée sur * les correctifs mineurs sont appliqués selon leur disponibilité * mise à jour majeure toutes les 6 à 8 semaines environ, la version beta descend en version Release, la version nightly, figée, descend en beta -* la nightly est mise à jour quotidiennement +* la nightly est mise à jour quotidiennement, voir plus * si Firefox n'est pas utilisé, il ne se met pas à jour ## nouvel utilisateur ou reconfiguration profil -ajouter un profil d'un canal Firefox installé pour un nouvel utilisateur en cours ou reconfigurer un canal pour +ajouter un profil d'un canal Firefox installé pour un nouvel utilisateur en cours ou configurer un canal pour l'utilisateur en cours `getFirefox u-canal` par exemple, pour la version Release officielle, en **root**: @@ -227,20 +229,21 @@ getFirefox u-latest \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 - alternatives installées pour - profil configuré pour kyodev ``` + * il faut que canal Firefox soit déjà installé -* pour éviter de télécharger inutilement une nouvelle fois pour un nouvel utilisateur: +* évite de télécharger inutilement une nouvelle fois pour un nouvel utilisateur: * changer de session en se connectant sous un nouvel utilisateur * utiliser l'option `u-latest` `u-beta` `u-nightly` `u-esr` `u-dev` selon ce qui est installé * le navigateur Firefox sera disponible dans les menus -* un nouveau profil firefox adéquat sera crée si besoin -* update-alternatives restera sur le plus bas canal firefox +* un nouveau profil Firefox adéquat sera crée si besoin +* update-alternatives restera sur le plus bas canal Firefox sans changer de session, on devrait pouvoir utiliser, pour un utilisateur titi et un canal beta, par exemple: ```shell @@ -260,7 +263,7 @@ USER_INSTALL=titi getFirefox u-beta \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0b1 - 24/07/2017 + pour Debian, version 1.O.0 - 24/07/2017 Firefox installé(s): latest: 54.0.1 @@ -273,7 +276,7 @@ USER_INSTALL=titi getFirefox u-beta Nightly : 56.0a1 ESR : 52.2.1 - version script en ligne: 1.0.0, mise à jour possible + version script en ligne: 1.1.0, mise à jour possible _.-~-. 7'' Q..\ @@ -310,7 +313,7 @@ getFirefox r-beta \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 _.-~-. 7'' Q..\ @@ -333,8 +336,8 @@ vVVv vVVv ': |_| |_| |_|\___/___|_|_|_|\__,_| '' ``` * le profil **n'est pas supprimé**, il sera donc utilisable en cas de réinstallation -* si firefox est ouvert il sera fermé -* update-alternatives reste configuré sur le plus bas canal installé +* si Firefox est ouvert il sera fermé +* update-alternatives, si supporté, reste configuré sur le plus bas canal installé * `firefox` est lui aussi configuré pour le plus bas canal installé @@ -360,18 +363,19 @@ en user, lancer en terminal, le profile manager de Firefox: `firefox -P` : \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0b1 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 - version script en ligne: 1.0.0, mise à jour possible + version script en ligne: 1.1.0, mise à jour possible /tmp/getFirefox-15112/getFirefox 100%[======================================>] 21,06K --.-KB/s in 0,05s - getFirefox mis à jour en version 1.0.0 + getFirefox mis à jour en version 1.1.0 ``` * test toutes les **semaines** -* mise à jour du **script** si une nouvelle version est disponible en ligne +* mise à jour du **script** si une nouvelle version est disponible en ligne. cela n'influe pas sur les + canaux Firefox installés * pas de nouvelle version: pas de téléchargement * cette tâche est exécutée périodiquement par cron/anachron et n'a pas vraiment d'utilité à être lancée manuellement @@ -403,14 +407,14 @@ en **root**: \__, |\___|\__|_| |_|_| \___|_| \___/_/\_\ |___/ - pour Debian, version 1.0.0 - 24/07/2017 + pour Debian, version 1.1.0 - 24/07/2017 getFirefox supprimé du système. ``` * effacement du script dans le système (_/opt/bin_) * effacement de l'inscription dans crontab/anacron utilisateur -* cela ne **supprime pas** les éventuels **Firefox** installés +* cela ne **supprime pas** les éventuels canaux **Firefox** installés ## sources diff --git a/scripts/getFirefox b/scripts/getFirefox index 99846a0..c33eb95 100755 --- a/scripts/getFirefox +++ b/scripts/getFirefox @@ -1,8 +1,8 @@ #!/bin/bash -version=1.0.0 +version=1.1.0 date="24/07/2017" -projet="Kyodev" +projet="simpledebian" contact="IRC freenode ##sdeb ou https://framagit.org/kyodev/kyopages/issues" script="getFirefox" urlScript="https://framagit.org/kyodev/kyopages/raw/master/scripts/getFirefox" @@ -10,8 +10,8 @@ urlNotice="https://kyodev.frama.io/kyopages/scripts/getFirefox/" user_agent="Mozilla/5.0 (X11; Linux $(uname -m); rv:54.0) Gecko/20100101 Firefox/54.0" ##### license LPRAB/WTFPL -# auteurs: kyodev -# contibuteurs: - +# auteur: simpledebian +# contributeurs: kyodev ##### PATH='/bin:/usr/bin' ; IFS=' ' @@ -241,7 +241,7 @@ cat << 'EOF' ---- getFirefox r-canal : désinstallation de Firefox ---- - getFirefox u-canal : initialisation du profil pour l'utilisateur en cours + getFirefox u-canal : ajouter ou configurer un profil pour l'utilisateur en cours ---- getFirefox version : version en ligne Firefox Release & ESR getFirefox upgrade : mise à jour forcée du script @@ -329,20 +329,28 @@ ffx_canal_bas(){ for i in nightly dev beta esr latest; do if [ -d "$dirInstall$i/" ]; then firefoxCanalBas="$i"; fi done + [ "$firefoxCanalBas" ] || return 1 + f__info " - plus aucun canal Firefox installé" } # traitement update-alternatives ffx_update_alternatives(){ - which update-alternatives &>/dev/null || return 0 # update-laternatives n'est pas sur cette distrib - ffx_canal_bas - update-alternatives --quiet --install /usr/bin/firefox x-www-browser "/usr/bin/firefox-$firefoxCanalBas" 100 - f__info " - alternatives installées pour <$firefoxCanalBas>" + which update-alternatives &>/dev/null || return 0 # update-alternatives n'est pas sur cette distrib + if ffx_canal_bas ; then + update-alternatives --quiet --install /usr/bin/firefox x-www-browser "/usr/bin/firefox-$firefoxCanalBas" 100 + f__info " - alternatives installées pour <$firefoxCanalBas>" + else # plus aucun canal installé + if update-alternatives --get-selections | grep firefox | grep x-www-browser &>/dev/null; then + update-alternatives --quiet --remove-all x-www-browser + fi + fi } # lien /usr/bin/firefox pour le plus bas canal Firefox installé, utile si update-alternatives pas fonctionnel ffx_usr_bin(){ - ffx_canal_bas - ln -sf "/usr/bin/firefox-$firefoxCanalBas" "/usr/bin/firefox" + if ffx_canal_bas ; then + ln -sf "/usr/bin/firefox-$firefoxCanalBas" "/usr/bin/firefox" + fi } # traitement utilisateur, $1 user, si appel indépendant pour reconfiguration diff --git a/scripts/getFirefox_changelog.md b/scripts/getFirefox_changelog.md index f4d8e7b..a4c6f2c 100644 --- a/scripts/getFirefox_changelog.md +++ b/scripts/getFirefox_changelog.md @@ -3,69 +3,15 @@ ## todo -* install: utilisation copie du plus bas profil existant? +* install: copie du profil du canal inférieur? + + + +## 1.1.0 24/07/2017 + +mieux: remove, cas de figure plus aucun canal installé fixé +fix: correction help ## 1.0.0 24/07/2017 -* relecture -* update-alternatives: firefoxCanalBas pour install/remove - -## 0.7.6 22/07/2017 - -* pas d'update-alternatives si hors debian -* opti mineure -* fix bug: création lanceur usr/bin sans options -* remove: bascule pour la plus basse version restante installée pour usr/bin/firefox et alternatives (fix) - - -## 0.7.2 21/07/17 - -* mieux: alternatives - * installation: alternatives pour canal installé, seulement pour x-www-browser - * remove: alternatives pour canal le plus faible (latest ou esr) si existant -* révision: firefox remove -* mieux, nouvelles options appel install ou remove (plus homogène avec u-): i-canal & r-canal -* fix mineur: protection multi-inscription dans lanceurs usr/bin -* fix mineur: upgrade script - -## 0.6.1 21/07/17 - -* fix bug: copie profile default si profil existant pour latest ou esr - -## 0.6.0 20/07/17 - -* mieux: gestion profile.ini si Firefox jamais installé -* mieux: installation profil autres utilisateurs - -## 0.5.5 20/07/17 - -* fix bug: détection profil existant dans profile.ini -* fix bug: architecture nightly amd64 -* mieux: developer edition. malgré sa gestion autonome du profil, fonctionnement du script non modifié - si jamais changement futur -* mieux version en ligne beta & nightly -* cosmétique - - -## 0.5.0 19/07/17 - -* copie du profil default pour utilisation par latest -* remplacement aurora par beta -* révision install -* changement répertoire installation /opt/usr/share/firefox- au lieu de /opt/firefox- - plus en accord avec fhs -* détection utilisation ancien répertoire -* script remove gère ancien ou nouveau répertoire -* détection et infor mauvais répertoire install - -## 0.4.2 18/07/17 - -* fix bug: version esr en ligne -* révision traitement paramètres -* révision traitement script -* révision remove -* script: maj auto, cron/anacron -* mieux sécu: chown, path, ifs -* mieux: wget test -* mieux: test archive chargée -* test bug secu 01, propriétaire du script +* 1ère publication