Como eu mudo o 'about: config' do Firefox a partir de um shell script?

16

Uma das primeiras coisas que faço quando uso pela primeira vez um novo perfil do Firefox, é definir browser.urlbar.trimURLs para false (que deve ser alterado por 'Preferências' ou deveria ter permanecido padrão), e para altere os padrões da pesquisa e da página inicial para DuckDuckGo . Atualmente, eu vou manualmente para about:config , clico na mensagem de aviso irritada e procuro as chaves (que, ao contrário do DConf Editor, nem são organizadas).

Então, eu gostaria de saber como ler e escrever essas chaves a partir da linha de comando para que eu possa adicionar esses ajustes ao meu script de personalizações.

    
por James Haigh 27.06.2013 / 19:46

2 respostas

9

[ Isso não fornece o que você pediu, mas é uma maneira diferente de alcançar o mesmo resultado. ]

Primeiro, sobre o aviso ... Você pode garantir que nunca mais o veja (por perfil), conforme mostrado abaixo:

Agora, no que diz respeito às preferências que você deseja. Em geral, você pode criar um arquivo de texto simples chamado user.js . Esse arquivo deve ser colocado na pasta do perfil relevante, como /home/username/.mozilla/firefox/random.default (onde random é algo exclusivo para cada usuário).

A estrutura e a sintaxe de user.js estão descritas no arquivo User.js , por exemplo.

Então, no seu caso, você teria uma linha como:

user_pref("set browser.urlbar.trimURLs","false");  

ou, para usar seu outro exemplo ( mas veja abaixo ):

user_pref("browser.search.defaulturl","https://duckduckgo.com/");

No entanto, sugiro que você primeiro verifique se as preferências definidas são válidas para a versão do navegador que você está usando. Digo isso porque não vejo browser.search.defaulturl no meu about:config . Estou usando o Firefox 22 beta. Em vez disso, vejo:

browser.search.defaultenginename;Google

Então, tomando o exemplo de usar o Bing em vez do Google, a outra linha no seu user.js , se você estiver usando o Firefox 22, seria:

user_pref ("browser.search.defaultenginename", "Bing");

Como a imagem indica, você pode procurar mecanismos adicionais.

Então, em suma, você pode colocar suas preferências em user.js e pode remover a tela de propaganda ao desmarcar a primeira imagem.

Além disso, conforme indicado no recurso ao qual me vinculei, você deve reiniciar o navegador para que o código em user.js tenha efeito.

    
por user25656 28.06.2013 / 05:45
5

Aqui está um possível script de shell. Você tem que cd para o seu diretório de perfil antes de usá-lo (onde o user.js é). Digamos que o script se chame ff_set e você pode chamá-lo assim:

ff_set browser.search.defaulturl '"https://duckduckgo.com/"'

Aqui está o código:

#!/bin/bash

sed -i 's/user_pref("''",.*);/user_pref("''",'');/' user.js
grep -q  user.js || echo "user_pref(\"\",);" >> user.js
    
por student 31.12.2015 / 18:10