Instalando uma extensão do firefox via terminal?

5

Isso é possível? Idealmente, estou tentando criar um script que leve arquivos (meus arquivos de backup de extensão) e os substitua ou instale no computador de outro usuário, com todas as configurações salvas. Isso é possível. Tudo bem, mesmo se eu tiver que substituir o diretório inteiro do Mozilla Firefox, mas seria melhor instalar apenas a extensão com todas as configurações salvas. Eu não posso usar gui, então estou procurando apenas terminal. Por exemplo, um script bash e alguns arquivos que eu posso dar aos clientes e eles seriam fáceis de instalar. Isso é possível? As extensões que estou tentando instalar dessa maneira no computador das pessoas são overrider do agente do usuário .

    
por Dusan Milosevic 06.07.2014 / 11:25

2 respostas

5

faça o download da extensão

$ wget http://www.addons...../extension-name
$ firefox extension-name

exemplo no Ubuntu-it Menu:

$ 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: ' link
'

    
por hwez 06.07.2014 / 11:44
1

Isso me levou algum tempo, mas aqui está uma solução para os criadores de scripts por aí. Essencialmente você tem que colocar cada .xpi como <addon id>.xpi na pasta de extensões que você deseja.

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

get_addon_id_from_xpi () { #path to .xpi file
    addon_id_line='unzip -p  install.rdf | egrep '<em:id>' -m 1'
    addon_id='echo $addon_id_line | sed "s/.*>\(.*\)<.*//"'
    echo "$addon_id"
}

get_addon_name_from_xpi () { #path to .xpi file
    addon_name_line='unzip -p  install.rdf | egrep '<em:name>' -m 1'
    addon_name='echo $addon_name_line | sed "s/.*>\(.*\)<.*//"'
    echo "$addon_name"
}

# Installs .xpi given by relative path
# to the extensions path given
install_zipped () {
    xpi="${PWD}/"
    extensions_path=
    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 "File already exists: $new_filepath"
        echo "Skipping installation for addon $addon_name."
    else
        cp "$xpi" "$new_filepath"
    fi
}

E agora, para instalar o Adblock ...

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

Agora, se você iniciar o seu Firefox, será recebido com uma pergunta para instalar o Adblock.

    
por Pithikos 23.12.2015 / 14:07