Como altero o `about: config` do Firefox a partir de um shell script?

20

Uma das primeiras coisas que faço ao usar um novo perfil do Firefox é definir browser.urlbar.trimURLscomo false(o que realmente deve ser alterável por 'Preferências' ou deveria ter permanecido como padrão) e alterar os padrões de pesquisa e página inicial para DuckDuckGo . Atualmente, eu vou manualmente about:config, clico na mensagem de aviso irritado e procuro as chaves (que, diferente do DConf Editor, nem estão organizadas).

Então, eu gostaria de saber como ler e escrever essas chaves na linha de comando, para poder adicionar esses ajustes ao meu script de personalização.

James Haigh
fonte
1
Algumas respostas abaixo dependem da edição de um arquivo na profile.defaultpasta do usuário . Veja como você encontrá-lo de dentro de um shell script: Obter o diretório de perfil Firefox padrão do bash
aexl

Respostas:

12

[ Isso não fornece o que você solicitou, mas é uma maneira diferente de obter o mesmo resultado. ]

Primeiro, sobre o aviso ... Você pode nunca mais vê-lo (de acordo com o perfil), como mostrado abaixo:

insira a descrição da imagem aqui

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 de perfil relevante, como /home/username/.mozilla/firefox/random.default(onde randomé algo exclusivo para cada usuário).

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

Portanto, no seu caso, você teria uma linha como:

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

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

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

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

browser.search.defaultenginename;Google

Motor

Portanto, tomando o exemplo do uso do Bing em vez do Google, a outra linha no seu, user.jsse você estiver usando o Firefox 22, seria:

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

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

Então, resumindo, você pode colocar suas preferências user.jse remover a tela do nag desmarcando a primeira imagem.

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


fonte
6

Aqui está um possível script de shell. Você precisa cdacessar o diretório do seu perfil antes de usá-lo (onde user.jsestá). Digamos que o script seja chamado, ff_setvocê poderia chamá-lo como:

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

Aqui está o código:

#!/bin/bash

sed -i 's/user_pref("'$1'",.*);/user_pref("'$1'",'$2');/' user.js
grep -q $1 user.js || echo "user_pref(\"$1\",$2);" >> user.js
aluna
fonte