Allow overriding prefs
This commit would allow overriding prefs (locked or otherwise) with a user accessible file even on sandboxed/restricted releases (like AppImage or Flatpak). This works because the last specific pref value that is parsed during startup is the one that gets actually applied; this way an empty / non existing overrides file will not have any effect, and only prefs changed in this file will be changed, while other prefs from the `librewolf.cfg` will still be applied. The difference to a `user.js` is that at this stage / with this file, even locked prefs can still be modified. Should we desire to have some prefs _really_ locked down (which we do not want to be changeable with this override method), we could just place them after the changes from this MR - so they would be parsed after those defined in the overrides file and could override pref changes made there. Somewhat related to #45, #27; should partially fix #8 and basically mitigate the recurring issues of users unable to edit some locked settings when using a more restricted release variant. Should probably be added to the docs, once merged.
This commit is contained in:
parent
247ebd6c87
commit
b33bfb5a03
1 changed files with 8 additions and 0 deletions
|
|
@ -2772,3 +2772,11 @@ defaultPref("devtools.selfxss.count", 0);
|
|||
// enable HTTPS only mode by default
|
||||
defaultPref("dom.security.https_only_mode", true);
|
||||
defaultPref("dom.security.https_only_mode_ever_enabled", true);
|
||||
|
||||
// allow settings to be overriden with a file at `~/.librewolf/librewolf.overrides.cfg`
|
||||
// or `~/.var/app/io.gitlab.librewolf-community/.librewolf/librewolf.overrides.cfg` (Flatpak).
|
||||
// not yet verified to work on Windows and MacOS releases
|
||||
let home_directory = getenv("HOME");
|
||||
if (home_directory) {
|
||||
pref("autoadmin.global_config_url", `file://${home_directory}/.librewolf/librewolf.overrides.cfg`);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue