Compare commits

...

3 Commits

Author SHA1 Message Date
a558c558f0 Ok finally 2026-02-16 16:08:23 -07:00
ba6d171055 Update librewolf.nix 2026-02-16 15:57:13 -07:00
7b87de4700 Update librewolf.nix 2026-02-16 15:53:48 -07:00

View File

@@ -1,12 +1,14 @@
{ pkgs, ... }:
let
policiesJson = builtins.toJSON {
policies = {
policies = {
DisableTelemetry = true;
DisableFirefoxStudies = true;
DisablePocket = true;
DisableFirefoxAccounts = true;
OfferToSaveLogins = false;
DisableSafeBrowsing = true;
FirefoxHome = {
Search = true;
@@ -39,71 +41,34 @@ let
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
installation_mode = "force_installed";
};
"{15cb5e64-94bd-41aa-91cf-751bb1a84972}" = {
install_url = "https://addons.mozilla.org/firefox/downloads/latest/catppuccin-macchiato-lavender2/latest.xpi";
installation_mode = "force_installed";
};
};
Preferences = {
"browser.startup.homepage" = {
Value = "about:home";
Status = "locked";
};
"extensions.autoDisableScopes" = {
Value = 0;
Status = "locked";
};
"browser.toolbars.bookmarks.visibility" = {
Value = "always";
Status = "locked";
};
"network.cookie.cookieBehavior" = {
Value = 1;
Status = "locked";
};
"privacy.clearOnShutdown.cookies" = {
Value = false;
Status = "locked";
};
"privacy.clearOnShutdown.history" = {
Value = false;
Status = "locked";
};
"sidebar.revamp" = {
Value = true;
Status = "locked";
};
"sidebar.verticalTabs" = {
Value = true;
Status = "locked";
};
"sidebar.main.tools" = {
Value = "bookmarks,history,tabs";
Status = "locked";
};
"sidebar.visibility" = {
Value = "always";
Status = "locked";
};
"extensions.activeThemeID" = {
Value = "{1d573fb2-437c-4440-9b7b-b72a3eaec105}";
Status = "locked";
};
"browser.startup.homepage" = "about:home";
"extensions.autoDisableScopes" = 0;
"browser.toolbars.bookmarks.visibility" = "always";
"network.cookie.cookieBehavior" = 1;
"extensions.activeThemeID" = "firefox-alpenglow@mozilla.org";
"privacy.resistFingerprinting" = true;
"browser.ml.chat.enabled" = false;
"browser.ml.chat.sidebar" = false;
"browser.tabs.groups.smart.userEnabled" = false;
};
};
};
policiesFile = pkgs.writeText "librewolf-policies.json" policiesJson;
policiesFile = pkgs.writeText "librewolf-policies.json" (builtins.toJSON policies);
in
{
system.activationScripts.postActivation.text = ''
DIST_DIR="/Applications/LibreWolf.app/Contents/Resources/distribution"
if [ -d "/Applications/LibreWolf.app" ]; then
mkdir -p "$DIST_DIR"
cp ${policiesFile} "$DIST_DIR/policies.json"
chmod 644 "$DIST_DIR/policies.json"
echo "LibreWolf policies applied."
fi
for APP_DIR in "/Applications/LibreWolf.app" "$HOME/Applications/LibreWolf.app"; do
if [ -d "$APP_DIR" ]; then
DIST_DIR="$APP_DIR/Contents/Resources/distribution"
mkdir -p "$DIST_DIR"
cp -f ${policiesFile} "$DIST_DIR/policies.json"
chmod 644 "$DIST_DIR/policies.json"
echo "Applied LibreWolf policies to $APP_DIR"
fi
done
'';
}