firefox: 89.0.2 -> 90.0

make gtk3Support non-optional, because it hasn't been for a long time
also make gtk2 conditional on firefox older than 90, because we can get
rid of it with firefox 90, but it's still needed by the current ESR
release

ajs124 b332794a d8f8f31a

+17 -21
+9 -10
pkgs/applications/networking/browsers/firefox/common.nix
··· 12 12 , autoconf213, which, gnused, rustPackages, rustPackages_1_45 13 13 , rust-cbindgen, nodejs, nasm, fetchpatch 14 14 , gnum4 15 + , gtk2, gtk3, wrapGAppsHook 15 16 , debugBuild ? false 16 17 17 18 ### optionals ··· 21 22 , alsaSupport ? stdenv.isLinux, alsa-lib 22 23 , pulseaudioSupport ? stdenv.isLinux, libpulseaudio 23 24 , ffmpegSupport ? true 24 - , gtk3Support ? true, gtk2, gtk3, wrapGAppsHook 25 25 , waylandSupport ? true, libxkbcommon, libdrm 26 26 , ltoSupport ? (stdenv.isLinux && stdenv.is64bit), overrideCC, buildPackages 27 27 , gssSupport ? true, libkrb5 ··· 79 79 flag = tf: x: [(if tf then "--enable-${x}" else "--disable-${x}")]; 80 80 81 81 default-toolkit = if stdenv.isDarwin then "cairo-cocoa" 82 - else "cairo-gtk${if gtk3Support then "3${lib.optionalString waylandSupport "-wayland"}" else "2"}"; 82 + else "cairo-gtk3${lib.optionalString waylandSupport "-wayland"}"; 83 83 84 84 binaryName = "firefox"; 85 85 binaryNameCapitalized = lib.toUpper (lib.substring 0 1 binaryName) + lib.substring 1 (-1) binaryName; ··· 139 139 lib.optional (lib.versionOlder ffversion "86") ./env_var_for_system_dir-ff85.patch ++ 140 140 lib.optional (lib.versionAtLeast ffversion "86") ./env_var_for_system_dir-ff86.patch ++ 141 141 lib.optional (lib.versionOlder ffversion "83") ./no-buildconfig-ffx76.patch ++ 142 - lib.optional (lib.versionAtLeast ffversion "84") ./no-buildconfig-ffx84.patch ++ 142 + lib.optional (lib.versionAtLeast ffversion "90") ./no-buildconfig-ffx90.patch ++ 143 143 lib.optional (ltoSupport && lib.versionOlder ffversion "84") ./lto-dependentlibs-generation-ffx83.patch ++ 144 144 lib.optional (ltoSupport && lib.versionAtLeast ffversion "84" && lib.versionOlder ffversion "86") 145 145 (fetchpatch { ··· 164 164 patchFlags = [ "-p1" "-l" ]; 165 165 166 166 buildInputs = [ 167 - gtk2 perl zip libjpeg zlib bzip2 167 + gtk3 perl zip libjpeg zlib bzip2 168 168 dbus dbus-glib pango freetype fontconfig xorg.libXi xorg.libXcursor 169 169 xorg.libX11 xorg.libXrender xorg.libXft xorg.libXt file 170 170 xorg.pixman yasm libGLU libGL ··· 182 182 ] 183 183 ++ lib.optional alsaSupport alsa-lib 184 184 ++ lib.optional pulseaudioSupport libpulseaudio # only headers are needed 185 - ++ lib.optional gtk3Support gtk3 186 185 ++ lib.optional gssSupport libkrb5 187 186 ++ lib.optionals waylandSupport [ libxkbcommon libdrm ] 188 187 ++ lib.optional pipewireSupport pipewire 189 188 ++ lib.optional (lib.versionAtLeast ffversion "82") gnum4 190 189 ++ lib.optionals buildStdenv.isDarwin [ CoreMedia ExceptionHandling Kerberos 191 190 AVFoundation MediaToolbox CoreLocation 192 - Foundation libobjc AddressBook cups ]; 191 + Foundation libobjc AddressBook cups ] 192 + ++ lib.optional (lib.versionOlder ffversion "90") gtk2; 193 193 194 194 NIX_LDFLAGS = lib.optionalString ltoSupport '' 195 195 -rpath ${llvmPackages.libunwind.out}/lib ··· 232 232 rustc 233 233 which 234 234 unzip 235 + wrapGAppsHook 235 236 ] 236 - ++ lib.optional gtk3Support wrapGAppsHook 237 237 ++ lib.optionals buildStdenv.isDarwin [ xcbuild rsync ] 238 238 ++ extraNativeBuildInputs; 239 239 ··· 362 362 passthru = { 363 363 inherit updateScript; 364 364 version = ffversion; 365 - isFirefox3Like = true; 366 - gtk = gtk2; 367 365 inherit alsaSupport; 368 366 inherit pipewireSupport; 369 367 inherit nspr; ··· 372 370 inherit execdir; 373 371 inherit browserName; 374 372 inherit tests; 375 - } // lib.optionalAttrs gtk3Support { inherit gtk3; }; 373 + inherit gtk3; 374 + }; 376 375 377 376 hardeningDisable = [ "format" ]; # -Werror=format-security 378 377
+6 -9
pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx84.patch pkgs/applications/networking/browsers/firefox/no-buildconfig-ffx90.patch
··· 1 - diff --git a/docshell/base/nsAboutRedirector.cpp b/docshell/base/nsAboutRedirector.cpp 2 - index 10ac77b..0125d9b 100644 3 1 --- a/docshell/base/nsAboutRedirector.cpp 4 2 +++ b/docshell/base/nsAboutRedirector.cpp 5 - @@ -63,8 +63,6 @@ static const RedirEntry kRedirMap[] = { 3 + @@ -66,8 +66,6 @@ static const RedirEntry kRedirMap[] = { 6 4 {"about", "chrome://global/content/aboutAbout.html", 0}, 7 - {"addons", "chrome://mozapps/content/extensions/extensions.xhtml", 5 + {"addons", "chrome://mozapps/content/extensions/aboutaddons.html", 8 6 nsIAboutModule::ALLOW_SCRIPT}, 9 7 - {"buildconfig", "chrome://global/content/buildconfig.html", 10 8 - nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT}, 11 9 {"checkerboard", "chrome://global/content/aboutCheckerboard.html", 12 10 nsIAboutModule::URI_SAFE_FOR_UNTRUSTED_CONTENT | 13 11 nsIAboutModule::ALLOW_SCRIPT}, 14 - diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn 15 - index c83b3e2..d543140 100644 16 12 --- a/toolkit/content/jar.mn 17 13 +++ b/toolkit/content/jar.mn 18 - @@ -40,7 +40,6 @@ toolkit.jar: 14 + @@ -39,8 +39,6 @@ toolkit.jar: 15 + content/global/plugins.html 19 16 content/global/plugins.css 20 17 content/global/plugins.js 21 - content/global/browser-child.js 22 18 -* content/global/buildconfig.html 23 - content/global/buildconfig.css 19 + - content/global/buildconfig.css 24 20 content/global/contentAreaUtils.js 25 21 content/global/datepicker.xhtml 22 + #ifndef MOZ_FENNEC
+2 -2
pkgs/applications/networking/browsers/firefox/packages.nix
··· 7 7 rec { 8 8 firefox = common rec { 9 9 pname = "firefox"; 10 - ffversion = "89.0.2"; 10 + ffversion = "90.0"; 11 11 src = fetchurl { 12 12 url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; 13 - sha512 = "ffd98ab0887611c5b4aba68346c49a7a31a58150fd8bbae610a4d941c4cff0acef0daaebfbb577787a759b4c1ef3c1199f02681148612f4f5b709983e07e0ccb"; 13 + sha512 = "233ad59e4ab2f08d2253b49235b51b26fa32fb7c285928110573ccbe67c79965d9401a6c58a3af2ad22b8a58ca5d9b3154e3e8c9d29b153acd16152d9b75442c"; 14 14 }; 15 15 16 16 meta = {