1{
2 stdenv,
3 lib,
4 callPackage,
5 fetchurl,
6 nixosTests,
7 buildMozillaMach,
8}:
9
10buildMozillaMach rec {
11 pname = "firefox";
12 version = "141.0";
13 src = fetchurl {
14 url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
15 sha512 = "bd6998bce927c5b5c186537bd41475fc9e3809829ceadb2277bb382d02d3780d2a5e5749487567a75b7c9e3726f97662c4ec28924bc491c5a3f21e2ec4828d63";
16 };
17
18 meta = {
19 changelog = "https://www.mozilla.org/en-US/firefox/${version}/releasenotes/";
20 description = "Web browser built from Firefox source tree";
21 homepage = "http://www.mozilla.com/en-US/firefox/";
22 maintainers = with lib.maintainers; [ hexa ];
23 platforms = lib.platforms.unix;
24 broken = stdenv.buildPlatform.is32bit;
25 # since Firefox 60, build on 32-bit platforms fails with "out of memory".
26 # not in `badPlatforms` because cross-compilation on 64-bit machine might work.
27 maxSilent = 14400; # 4h, double the default of 7200s (c.f. #129212, #129115)
28 license = lib.licenses.mpl20;
29 mainProgram = "firefox";
30 };
31 tests = {
32 inherit (nixosTests) firefox;
33 };
34 updateScript = callPackage ../update.nix {
35 attrPath = "firefox-unwrapped";
36 };
37}