1{
2 stdenv,
3 lib,
4 callPackage,
5 buildMozillaMach,
6 nixosTests,
7}:
8
9let
10 librewolf-src = callPackage ./librewolf.nix { };
11in
12(buildMozillaMach {
13 pname = "librewolf";
14 applicationName = "LibreWolf";
15 binaryName = "librewolf";
16 version = librewolf-src.packageVersion;
17 src = librewolf-src.firefox;
18 requireSigning = false;
19 allowAddonSideload = true;
20 branding = "browser/branding/librewolf";
21 inherit (librewolf-src)
22 extraConfigureFlags
23 extraPatches
24 extraPostPatch
25 extraPassthru
26 ;
27
28 meta = {
29 description = "Fork of Firefox, focused on privacy, security and freedom";
30 homepage = "https://librewolf.net/";
31 maintainers = with lib.maintainers; [
32 # Also update ci/OWNERS entry when changing maintainers
33 squalus
34 dwrege
35 fpletz
36 grimmauld
37 ];
38 platforms = lib.platforms.unix;
39 broken = stdenv.buildPlatform.is32bit;
40 # since Firefox 60, build on 32-bit platforms fails with "out of memory".
41 # not in `badPlatforms` because cross-compilation on 64-bit machine might work.
42 maxSilent = 14400; # 4h, double the default of 7200s (c.f. #129212, #129115)
43 license = lib.licenses.mpl20;
44 mainProgram = "librewolf";
45 };
46 tests = { inherit (nixosTests) librewolf; };
47 updateScript = callPackage ./update.nix {
48 attrPath = "librewolf-unwrapped";
49 };
50}).override
51 {
52 crashreporterSupport = false;
53 enableOfficialBranding = false;
54 }