4 ms·
The problem I find with Firefox is that options in about:config are too stateful. You can't use user.js as a regular dotfile such as .emacs, .vimrc or .muttrc.
by nextos 8y ago
The problem I find with Firefox is that options in about:config are too stateful.
You can't use user.js as a regular dotfile such as .emacs, .vimrc or .muttrc. That is, once you set an option you need to manually unset it. I wished they introduced a more sane mechanism.
Besides, there is no way to programmatically declare you want to use some addons.
IMHO, all this makes maintaining relatively complex user configurations very costly.
- zipperhead 8y agoYes, I find the about:config option stickiness behaviour isn't intuitive. I am guessing that a lot of people don't realize that if you set options in user.js they stay set until you manually unset them, even if you remove the user.js file.
- Yoric 8y agoI don't understand, what would you want, exactly? Options that can be set only for the duration of the current session?
- nextos 8y agoYes. In Emacs, if I setq some variable it doesn't stay set forever. In particular, not after I remove the setq statement.
- vngzs 8y agoA hack around this would be to remove things by specifically unsetting them in the user.js file, much as one would do to remove a previously installed package using configuration management software.
- Dylan16807 8y agoYou can't use user.js that way. You can use about:config that way. In about:config, resetting to default is easier than editing.
- dngray 8y agoI use https://yadm.io https://yadm.io to manage my dotfiles. What I did was created a fork, ie https://github.com/dngray/ghacks-user.js/tree/fx-desktop https://github.com/dngray/ghacks-user.js/tree/fx-desktop Then I added it as a submodule, ie "yadm submodule add ..." as they mention here https://stackoverflow.com/a/18797720 https://stackoverflow.com/a/18797720 Yadm allows for a bootstrap[0], so I simply do: ln -sf ~/.config/firefox/chrome/userChrome.css ~/.mozilla/firefox/$FIREFOX_PROFILE.default/chrome/userChrome.css git --git-dir=/home/{{ YADM_USER }}/.config/firefox/ghacks-user.js/.git --work-tree=/home/{{ YADM_USER }}/.config/firefox/ghacks-user.js checkout fx-desktop cp ~/.config/firefox/ghacks-user.js/user.js ~/.mozilla/firefox/$FIREFOX_PROFILE.default/user.js Note the Jinja2[1] syntax there. [0]: https://yadm.io/docs/bootstrap https://yadm.io/docs/bootstrap [1]: https://yadm.io/docs/alternates https://yadm.io/docs/alternates