LibreWolf is a fork of the popular open-source browser Firefox. It includes an adblocker enabled by default, no sponsored advertisements nor telemetry and many privacy and security tweaks.

By default LibreWolf has strict privacy settings by disabling the browser history, persistent cookeis and for example, WebGL support. The browser is already available in the NixOS repository starting with v.22.05. Compared to Firefox, it has currently no module in Home-Manager to configure settings or the user profile.

Configure LibreWolf with Home-Manager

If you want to change the default behavior you could use the about:config settings page or the graphical preferences menu. An other way is to generate the config file librewolf.overrides.cfg to change default settings. For this I created a librewolf module which is currently waiting for approval to be submitted into Home-Manager. Using the module you can change these settings in your system configuration

librewolf = {
  enable = true;
  # Enable WebGL, cookies and history
  overrides = {
    "webgl.disabled" = false;
    "privacy.resistFingerprinting" = false;
    "privacy.clearOnShutdown.history" = false;
    "privacy.clearOnShutdown.cookies" = false;
    "network.cookie.lifetimePolicy" = 0;
  };
};

The exampe above enables WebGL by setting webgl.disabled = false and privacy.resistFingerprinting = false. WebGL is required by web applications like Qwant Maps. Please be aware by the privacy drawbacks of using this technology as described in the LibreWolf docs.

I’m using privacy.clearOnShutdown.history/cookies = false and network.cookie.lifetimePolicy = 0 to have persistent cookies and browsing history between reboots. One could use extensions like Cookie AutoDelete to whitelist specific sites which could use persistent cookies and clearing all other cookies on leaving the site or closing a tab.