Comment puis-je changer Firefox `about: config` à partir d'un script shell?

20

L'une des premières choses que je fais lors de la première utilisation d'un nouveau profil Firefox, est de définir browser.urlbar.trimURLssur false(qui devrait vraiment être modifiable par le biais de `` Préférences '' ou aurait dû rester par défaut), et de changer les valeurs par défaut de recherche et de page d'accueil en DuckDuckGo . Actuellement, je vais manuellement, je about:configclique sur le message d'avertissement en colère et je recherche les clés (qui, contrairement à DConf Editor, ne sont même pas organisées).

Je voudrais donc savoir comment lire et écrire ces clés à partir de la ligne de commande afin de pouvoir ajouter ces réglages à mon script de personnalisation.

James Haigh
la source
1
Certaines réponses ci-dessous reposent sur la modification d'un fichier dans le dossier de l'utilisateur profile.default. Voici comment vous le trouvez à partir d'un script shell: Obtenez le répertoire de profil Firefox par défaut à partir de bash
aexl
unix.stackexchange.com/questions/38591/… | session unique: superuser.com/questions/699136/… | windows: superuser.com/questions/39800/…
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件

Réponses:

12

[ Cela ne fournit pas ce que vous avez demandé, mais c'est une manière différente d'obtenir le même résultat. ]

Tout d'abord, à propos de l'avertissement ... Vous pouvez vous assurer de ne plus jamais le voir (par profil) comme indiqué ci-dessous:

entrez la description de l'image ici

Maintenant, en ce qui concerne les préférences que vous désirez. En général, vous pouvez créer un simple fichier texte appelé user.js. Ce fichier doit être placé dans le dossier de profil approprié tel que /home/username/.mozilla/firefox/random.default(où randomest quelque chose d'unique pour chaque utilisateur).

La structure et la syntaxe de user.jsest décrite dans le fichier User.js par exemple.

Donc dans votre cas, vous auriez une ligne telle que:

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

ou, pour utiliser votre autre exemple ( mais voir ci-dessous ):

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

Cependant, je vous suggère de vous assurer d'abord que les préférences que vous définissez sont valides pour la version du navigateur que vous utilisez. Je dis cela parce que je ne vois pas browser.search.defaulturldu tout dans mon about:config. J'utilise Firefox 22 beta. Au lieu de cela, je vois:

browser.search.defaultenginename;Google

Moteur

Donc, en prenant l'exemple d'utiliser Bing au lieu de Google, l'autre ligne de votre user.jssi vous utilisez Firefox 22, serait:

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

Comme l'indique l'image, vous pouvez rechercher des moteurs supplémentaires.

Donc, en bref, vous pouvez mettre vos préférences user.jset supprimer l'écran de bourrage en décochant la première image.

En outre, comme indiqué dans la ressource à laquelle j'ai lié, vous devez redémarrer le navigateur pour que le code entre en user.jsvigueur.


la source
6

Voici un script shell possible. Vous devez accéder cdà votre répertoire de profil avant de l'utiliser (là où se user.jstrouve). Supposons que le script s'appelle, ff_setvous pouvez l'appeler comme:

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

Voici le code:

#!/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
étudiant
la source