2020-12-31 03:47:54 +01:00
|
|
|
{ stdenv, lib, callPackage, fetchurl, fetchpatch, nixosTests }:
|
2017-03-27 14:33:00 +02:00
|
|
|
|
2018-03-06 23:33:11 +01:00
|
|
|
let
|
2018-10-01 02:00:00 +02:00
|
|
|
common = opts: callPackage (import ./common.nix opts) {};
|
2018-03-06 23:33:11 +01:00
|
|
|
in
|
2017-03-27 14:33:00 +02:00
|
|
|
|
|
|
|
rec {
|
|
|
|
firefox = common rec {
|
|
|
|
pname = "firefox";
|
2021-06-23 08:12:45 +02:00
|
|
|
ffversion = "89.0.2";
|
2018-05-11 02:09:36 +02:00
|
|
|
src = fetchurl {
|
2018-10-01 02:00:00 +02:00
|
|
|
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
2021-06-23 08:12:45 +02:00
|
|
|
sha512 = "ffd98ab0887611c5b4aba68346c49a7a31a58150fd8bbae610a4d941c4cff0acef0daaebfbb577787a759b4c1ef3c1199f02681148612f4f5b709983e07e0ccb";
|
2017-03-27 14:33:00 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "A web browser built from Firefox source tree";
|
2020-04-01 03:11:51 +02:00
|
|
|
homepage = "http://www.mozilla.com/en-US/firefox/";
|
2021-03-22 16:09:57 +01:00
|
|
|
maintainers = with lib.maintainers; [ eelco lovesegfault hexa ];
|
2018-07-11 00:10:04 +02:00
|
|
|
platforms = lib.platforms.unix;
|
2019-09-21 05:20:32 +02:00
|
|
|
badPlatforms = lib.platforms.darwin;
|
2020-03-06 03:36:01 +01:00
|
|
|
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.
|
2018-08-06 16:13:50 +02:00
|
|
|
license = lib.licenses.mpl20;
|
2017-03-27 14:33:00 +02:00
|
|
|
};
|
2020-12-31 03:47:54 +01:00
|
|
|
tests = [ nixosTests.firefox ];
|
2017-03-27 14:33:00 +02:00
|
|
|
updateScript = callPackage ./update.nix {
|
|
|
|
attrPath = "firefox-unwrapped";
|
2018-11-16 15:04:54 +01:00
|
|
|
versionKey = "ffversion";
|
2017-03-27 14:33:00 +02:00
|
|
|
};
|
2018-10-01 02:00:00 +02:00
|
|
|
};
|
2017-03-27 14:33:00 +02:00
|
|
|
|
2020-07-27 14:14:14 +02:00
|
|
|
firefox-esr-78 = common rec {
|
|
|
|
pname = "firefox-esr";
|
2021-06-02 02:07:11 +02:00
|
|
|
ffversion = "78.11.0esr";
|
2020-07-27 14:14:14 +02:00
|
|
|
src = fetchurl {
|
|
|
|
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
|
2021-06-02 02:07:11 +02:00
|
|
|
sha512 = "d02fc2eda587155b1c54ca12a6c5cde220a29f41f154f1c9b71ae8f966d8cc9439201a5b241e03fc0795b74e2479f7aa5d6b69f70b7639432e5382f321f7a6f4";
|
2020-07-27 14:14:14 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "A web browser built from Firefox Extended Support Release source tree";
|
|
|
|
homepage = "http://www.mozilla.com/en-US/firefox/";
|
2021-03-22 16:09:57 +01:00
|
|
|
maintainers = with lib.maintainers; [ eelco hexa ];
|
2020-07-27 14:14:14 +02:00
|
|
|
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.
|
|
|
|
license = lib.licenses.mpl20;
|
|
|
|
};
|
2020-12-31 03:47:54 +01:00
|
|
|
tests = [ nixosTests.firefox-esr ];
|
2020-07-27 14:14:14 +02:00
|
|
|
updateScript = callPackage ./update.nix {
|
|
|
|
attrPath = "firefox-esr-78-unwrapped";
|
2021-05-05 04:08:28 +02:00
|
|
|
versionSuffix = "esr";
|
2020-07-27 14:14:14 +02:00
|
|
|
versionKey = "ffversion";
|
|
|
|
};
|
|
|
|
};
|
2020-02-01 17:37:56 +01:00
|
|
|
}
|