44 lines
1.5 KiB
Nix
44 lines
1.5 KiB
Nix
{
|
|
description = "Overlay for a policy-configurable non-ESR Firefox";
|
|
|
|
inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
|
|
|
outputs = { self, nixpkgs }: let
|
|
pkgs = import nixpkgs { system = "x86_64-linux"; };
|
|
in rec {
|
|
packages.x86_64-linux = rec {
|
|
default = firefox-patched-unwrapped;
|
|
|
|
firefox-patched-unwrapped = (pkgs.firefox-unwrapped.override (prev: { buildMozillaMach = args: ((prev.buildMozillaMach args).override ({
|
|
geolocationSupport = false;
|
|
googleAPISupport = false;
|
|
drmSupport = false;
|
|
|
|
requireSigning = false;
|
|
allowAddonSideload = true;
|
|
})).overrideAttrs (oldAttrs: rec {
|
|
patches = oldAttrs.patches ++ [
|
|
# I want to preconfigure the search engine settings to make
|
|
# DuckDuckGo the default search engine and remove most of the
|
|
# others. For some reason, Mozilla is scared of allowing
|
|
# managed policies to set the default search engine in non-ESR
|
|
# firefox. This is a two-line patch to remove that
|
|
# restriction.
|
|
# https://github.com/mozilla/policy-templates/issues/484
|
|
./allow-searchengines-policy.patch
|
|
|
|
# Firefox disables about:debugging when manual addon
|
|
# installation is disabled by policy, since it can be used
|
|
# to sideload. I want managed addons *and* debugging.
|
|
./allow-debugging.patch
|
|
];
|
|
});
|
|
}));
|
|
};
|
|
|
|
overlay = final: prev: {
|
|
inherit (packages.x86_64-linux) firefox-patched-unwrapped;
|
|
};
|
|
};
|
|
}
|