5 votes

Installer une extension Firefox via le terminal ?

Est-ce possible? Idéalement, j'essaie de créer un script qui prendra des fichiers (mes fichiers de sauvegarde d'extension) et les remplacera ou les installera sur l'ordinateur d'un autre utilisateur, avec tous les paramètres enregistrés. Est-ce possible? C'est même correct si je dois remplacer tout le répertoire de Mozilla Firefox, mais ce serait mieux d'installer uniquement l'extension avec tous les paramètres enregistrés. Je ne peux pas utiliser d'interface graphique, donc je recherche uniquement le terminal. Par exemple, un script bash et quelques fichiers que je peux donner aux clients et qu'ils pourraient facilement installer. Est-ce possible? Les extensions que j'essaie d'installer de cette manière sur l'ordinateur des gens sont user agent overrider.

5voto

André Points 79

Télécharger l'extension

$ wget http://www.addons...../nom-de-l-extension
$ firefox nom-de-l-extension

exemple sur le Menu Ubuntu-it :

$ wget https://addons.cdn.mozilla.net/storage/public-staging/4684/ubuntu_it_menu-1.1.0-fx.xpi
$ firefox ubuntu_it_menu-1.1.0-fx.xpi

info : 'https://addons.mozilla.org/en-US/firefox/addon/ubuntu-it-menu/?src=search
'

1voto

dmd Points 481

Cela m'a pris un certain temps mais voici une solution pour les scripteurs là-bas. Essentiellement, vous devez placer chaque .xpi en tant que .xpi dans le dossier des extensions que vous souhaitez.

EXTENSIONS_SYSTEM='/usr/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/'
EXTENSIONS_USER=`echo ~/.mozilla/firefox/*.default/extensions/`

get_addon_id_from_xpi () { #chemin vers le fichier .xpi
    addon_id_line=`unzip -p $1 install.rdf | egrep '' -m 1`
    addon_id=`echo $addon_id_line | sed "s/.*>\(.*\)<.*/\1/"`
    echo "$addon_id"
}

get_addon_name_from_xpi () { #chemin vers le fichier .xpi
    addon_name_line=`unzip -p $1 install.rdf | egrep '' -m 1`
    addon_name=`echo $addon_name_line | sed "s/.*>\(.*\)<.*/\1/"`
    echo "$addon_name"
}

# Installe le .xpi donné par le chemin relatif
# au chemin d'extensions donné
install_zipped () {
    xpi="${PWD}/${1}"
    extensions_path=$2
    new_filename=`get_addon_id_from_xpi $xpi`.xpi
    new_filepath="${extensions_path}${new_filename}"
    addon_name=`get_addon_name_from_xpi $xpi`
    if [ -f "$new_filepath" ]; then
        echo "Le fichier existe déjà : $new_filepath"
        echo "Installation de l'addon $addon_name ignorée."
    else
        cp "$xpi" "$new_filepath"
    fi
}

Et maintenant pour installer Adblock..

wget https://addons.mozilla.org/firefox/downloads/latest/1865/addon-1865-latest.xpi
install_for_user addon-1865-latest.xpi $EXTENSIONS_USER

Maintenant, si vous lancez Firefox, vous serez accueilli par une question pour installer Adblock.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X