mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-30 09:33:41 +00:00
6c8f82937f
this allows sideloading unsigned browser extensions (via the `nixExtensions` option in the [firefox-wrapper]). i believe librewolf is meant to allow unsigned sideloading, based on upstream discussions and this bit that already exists in ./librewolf.nix: ```nix extraConfigureFlags = [ "--with-unsigned-addon-scopes=app,system" "--allow-addon-sideload" ]; ``` but Mozilla changed some defaults over the years. this `MOZ_REQUIRE_SIGNING` option is mentioned [upstream] and we can see that the arch [[pkgbuild]] clears it in a similar manner. [upstream]: https://gitlab.com/librewolf-community/browser/arch/-/issues/49 [pkgbuild]: https://gitlab.com/librewolf-community/browser/arch/-/blob/master/PKGBUILD#L95 [firefox-wrapper]: pkgs/applications/networking/browsers/firefox/wrapper.nix
36 lines
1.3 KiB
Nix
36 lines
1.3 KiB
Nix
{ stdenv, lib, callPackage, buildMozillaMach, nixosTests }:
|
|
|
|
let
|
|
librewolf-src = callPackage ./librewolf.nix { };
|
|
in
|
|
((buildMozillaMach rec {
|
|
pname = "librewolf";
|
|
applicationName = "LibreWolf";
|
|
binaryName = "librewolf";
|
|
version = librewolf-src.packageVersion;
|
|
src = librewolf-src.firefox;
|
|
inherit (librewolf-src) extraConfigureFlags extraPatches extraPostPatch extraPassthru;
|
|
|
|
meta = {
|
|
description = "A fork of Firefox, focused on privacy, security and freedom";
|
|
homepage = "https://librewolf.net/";
|
|
maintainers = with lib.maintainers; [ squalus ];
|
|
platforms = lib.platforms.unix;
|
|
badPlatforms = lib.platforms.darwin;
|
|
broken = stdenv.buildPlatform.is32bit; # since Firefox 60, build on 32-bit platforms fails with "out of memory".
|
|
# not in `badPlatforms` because cross-compilation on 64-bit machine might work.
|
|
maxSilent = 14400; # 4h, double the default of 7200s (c.f. #129212, #129115)
|
|
license = lib.licenses.mpl20;
|
|
};
|
|
tests = [ nixosTests.librewolf ];
|
|
updateScript = callPackage ./update.nix {
|
|
attrPath = "librewolf-unwrapped";
|
|
};
|
|
}).override {
|
|
crashreporterSupport = false;
|
|
enableOfficialBranding = false;
|
|
pgoSupport = false; # Profiling gets stuck and doesn't terminate.
|
|
}).overrideAttrs (prev: {
|
|
MOZ_REQUIRE_SIGNING = "";
|
|
})
|