#!/bin/bash FIREFOX_EXEC=`which firefox` repeat() { i=0 while [ $i -ne $1 ] ; do echo -n "$2" (( i++ )) done } printTitle() { ajust='' ligne=`repeat $(( ${#1} + 2 )) '?'` marge_str=`repeat $(( (${#ligne}-${#1}) / 2 )) ' '` if (( (${#ligne}-${#1}) % 2 )) ; then ajust=' ' fi echo "?$ligne?" echo "?$marge_str$1$marge_str$ajust?" echo "?$ligne?" } fileBasedInstall() { case $1 in *xpi ) echo -n "Installation de l'extention " INSTALL_PARAM="-install-global-extension";; *jar ) echo -n "Installation du thème " INSTALL_PARAM="-install-global-theme";; esac echo -n "`basename "$1"` " # echo -n "$1" # pour débuguer $FIREFOX_EXEC $INSTALL_PARAM "$1" &> /dev/null & # ps -A|grep -i "$!" # pour déboguer toujours_actif=1 until [[ $toujours_actif -eq 0 ]] do echo -n . toujours_actif=`ps -A|grep -ic "$!"` done echo " terminé!" } folderBasedInstall(){ for file in "$1"/{*jar,*xpi} do fileBasedInstall "$file" done } ##################### Fin des déclarations des functions echo printTitle " Installation globale de thèmes et d'extentions pour Firefox " echo if [[ $# -eq 0 ]] then echo -e "\nNombre d'argument insuffisant" echo -e "\nCe script permet d'installer des thmes et des extentions pour\nqu'ils soient disponibles pour tout les utilisateurs (tout les profiles).\n\n" echo -e "Utilisation : install-global-theme-xpi.sh emplacement1 [emplacement2...]\n" echo -e "emplacement : Le nom d'un rpertoire ou d'un fichier thme (.jar) ou d'extention (.xpi)\n" echo -e "Exemple :\n\ninstall-global-theme-xpi.sh \"/tmp/thme et extentions/\" /tmp/untheme.jar /tmp/uneextentions.xpi\n\n" exit 1 fi until [ -z "$1" ] # Jusqu'à ce que tout les paramètres aient été passés. do if [ "${1:0:1}" == "/" ] then full_path="${1%%/}" else full_path="`pwd`/${1%%/}" fi if [ -d "$full_path" ] then folderBasedInstall "$full_path" else fileBasedInstall "$full_path" fi shift done echo