diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix index fb340ee1ace..732f9fa0872 100644 --- a/pkgs/applications/networking/browsers/firefox/common.nix +++ b/pkgs/applications/networking/browsers/firefox/common.nix @@ -120,8 +120,9 @@ buildStdenv.mkDerivation ({ inherit src unpackPhase meta; patches = [ - ./env_var_for_system_dir.patch ] ++ + lib.optional (lib.versionOlder ffversion "86") ./env_var_for_system_dir-ff85.patch ++ + lib.optional (lib.versionAtLeast ffversion "86") ./env_var_for_system_dir-ff86.patch ++ lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++ lib.optional (lib.versionAtLeast ffversion "84") ./no-buildconfig-ffx84.patch ++ lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++ diff --git a/pkgs/applications/networking/browsers/firefox/env_var_for_system_dir.patch b/pkgs/applications/networking/browsers/firefox/env_var_for_system_dir-ff85.patch similarity index 100% rename from pkgs/applications/networking/browsers/firefox/env_var_for_system_dir.patch rename to pkgs/applications/networking/browsers/firefox/env_var_for_system_dir-ff85.patch diff --git a/pkgs/applications/networking/browsers/firefox/env_var_for_system_dir-ff86.patch b/pkgs/applications/networking/browsers/firefox/env_var_for_system_dir-ff86.patch new file mode 100644 index 00000000000..f7a9cb77345 --- /dev/null +++ b/pkgs/applications/networking/browsers/firefox/env_var_for_system_dir-ff86.patch @@ -0,0 +1,21 @@ +diff -r 22fc47c968f2 toolkit/xre/nsXREDirProvider.cpp +--- a/toolkit/xre/nsXREDirProvider.cpp Mon Dec 14 15:09:17 2020 +0000 ++++ b/toolkit/xre/nsXREDirProvider.cpp Tue Feb 23 23:38:56 2021 +0100 +@@ -11,6 +11,7 @@ + + #include "jsapi.h" + #include "xpcpublic.h" ++#include "prenv.h" + + #include "nsIAppStartup.h" + #include "nsIFile.h" +@@ -305,7 +306,8 @@ + "/usr/lib/mozilla"_ns + # endif + ; +- rv = NS_NewNativeLocalFile(dirname, false, getter_AddRefs(localDir)); ++ const char* pathVar = PR_GetEnv("MOZ_SYSTEM_DIR"); ++ rv = NS_NewNativeLocalFile((pathVar && *pathVar) ? nsDependentCString(pathVar) : reinterpret_cast(dirname), false, getter_AddRefs(localDir)); + # endif + + if (NS_SUCCEEDED(rv)) { diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix index 86d91d21e3c..1bcaecdfbb8 100644 --- a/pkgs/applications/networking/browsers/firefox/packages.nix +++ b/pkgs/applications/networking/browsers/firefox/packages.nix @@ -7,10 +7,10 @@ in rec { firefox = common rec { pname = "firefox"; - ffversion = "85.0.2"; + ffversion = "86.0"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; - sha512 = "2m46li5ni1m4xv42h99rn2hhhv2mqy229wihmzxmgvws1rh2h11yf6x2a07akkjrsp2dmwxmmkhmf9dhakgj9i55z5qqi99azyx07df"; + sha512 = "f5a7b9aa53e2955e972e30cc62ae64ae955127eab951d7a1102d5ac8a73804982e01b917787c00a6e0a0ed03594567d29a24808271283ef61a9383bc4bb39e3f"; }; meta = {