diff --git a/pkgs/applications/networking/browsers/firefox/common.nix b/pkgs/applications/networking/browsers/firefox/common.nix index 29b12c9fec09..f464972a9df2 100644 --- a/pkgs/applications/networking/browsers/firefox/common.nix +++ b/pkgs/applications/networking/browsers/firefox/common.nix @@ -4,7 +4,7 @@ , isIceCatLike ? false, icversion ? null , isTorBrowserLike ? false, tbversion ? null }: -{ lib, stdenv, pkgconfig, pango, perl, python2, zip, libIDL +{ lib, stdenv, pkgconfig, pango, perl, python2, python3, zip, libIDL , libjpeg, zlib, dbus, dbus-glib, bzip2, xorg , freetype, fontconfig, file, nspr, nss, libnotify , yasm, libGLU_combined, sqlite, unzip, makeWrapper @@ -164,12 +164,15 @@ stdenv.mkDerivation rec { postPatch = lib.optionalString (lib.versionAtLeast ffversion "63.0" && !isTorBrowserLike) '' substituteInPlace third_party/prio/prio/rand.c --replace 'nspr/prinit.h' 'prinit.h' + '' + lib.optionalString (lib.versionAtLeast ffversion "68") '' + rm -rf obj-x86_64-pc-linux-gnu ''; nativeBuildInputs = [ autoconf213 which gnused pkgconfig perl python2 cargo rustc ] ++ lib.optional gtk3Support wrapGAppsHook ++ lib.optionals stdenv.isDarwin [ xcbuild rsync ] + ++ lib.optional (lib.versionAtLeast ffversion "61.0") [ python3 ] ++ lib.optionals (lib.versionAtLeast ffversion "63.0") [ rust-cbindgen nodejs ] ++ lib.optionals (lib.versionAtLeast ffversion "67.0") [ llvmPackages.llvm ] # llvm-objdump is required in version >=67.0 ++ extraNativeBuildInputs; diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix index 93449288075b..93b6843e5f20 100644 --- a/pkgs/applications/networking/browsers/firefox/packages.nix +++ b/pkgs/applications/networking/browsers/firefox/packages.nix @@ -1,4 +1,4 @@ -{ lib, callPackage, fetchurl, fetchFromGitHub, python3, overrideCC, gccStdenv, gcc6 }: +{ lib, callPackage, fetchurl, fetchFromGitHub, overrideCC, gccStdenv, gcc6 }: let @@ -17,18 +17,16 @@ rec { firefox = common rec { pname = "firefox"; - ffversion = "67.0.4"; + ffversion = "68.0"; src = fetchurl { url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; - sha512 = "3krwkc90m320a74vjyzlrxs4jc63cykbmpgisac9kv8m9n0bis5i1yf0dl9n14d9p4p541wvzhqygx7byj6mnvkhbk5b2l0nlvwias2"; + sha512 = "0pg8ww2ldlvdlri0zrzv20x69x00gxshr4afq62pnz7rgrnppkdd0pw5snflisgvpxq1syxcrg5750wz1k4bfjwnyq47jk9h3fzddpw"; }; patches = [ ./no-buildconfig-ffx65.patch ]; - extraNativeBuildInputs = [ python3 ]; - meta = { description = "A web browser built from Firefox source tree"; homepage = http://www.mozilla.com/en-US/firefox/; @@ -72,10 +70,11 @@ rec { firefox-esr-60 = common rec { pname = "firefox-esr"; - ffversion = "60.7.2esr"; + ffversion = "60.8.0esr"; + src = fetchurl { url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; - sha512 = "0mw5dgrxd5vj6cngd9v3dy6hzdsg82s0cs9fabhrzrl1dy3pqdkccqqnj9r0hxwmcrdgca3s35i5lwwmlljagq6nyb5q6qv4fzv0n0j"; + sha512 = "0332b6049b97e488e55a3b9540baad3bd159e297084e9a625b8492497c73f86eb3e144219dabc5e9f2c2e4a27630d83d243c919cd4f86b7f59f47133ed3afc54"; }; patches = [ @@ -98,6 +97,28 @@ rec { }; }; + firefox-esr-68 = common rec { + pname = "firefox-esr"; + ffversion = "68.0esr"; + src = fetchurl { + url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz"; + sha512 = "29iqxxwkz2zgk2ppgq05w0bhs8c0938gina5s8brmwn6zn15nv379pa82a9djpzjryl6c5ff0hk0z7gx6n3xvf7w7ky9010h9il0kbg"; + }; + + patches = [ + ./no-buildconfig-ffx65.patch + ]; + + meta = firefox.meta // { + description = "A web browser built from Firefox Extended Support Release source tree"; + }; + updateScript = callPackage ./update.nix { + attrPath = "firefox-esr-68-unwrapped"; + versionSuffix = "esr"; + versionKey = "ffversion"; + }; + }; + } // (let iccommon = args: common (args // { diff --git a/pkgs/development/tools/rust/cbindgen/default.nix b/pkgs/development/tools/rust/cbindgen/default.nix index bce1e273cc41..ca4b6825a38f 100644 --- a/pkgs/development/tools/rust/cbindgen/default.nix +++ b/pkgs/development/tools/rust/cbindgen/default.nix @@ -2,19 +2,22 @@ rustPlatform.buildRustPackage rec { name = "rust-cbindgen-${version}"; - version = "0.8.3"; + version = "0.8.7"; src = fetchFromGitHub { owner = "eqrion"; repo = "cbindgen"; rev = "v${version}"; - sha256 = "08zlnk1k1nddjciccfdcplxqngsnz6ml3zxm57mijabzybry8zz1"; + sha256 = "040rivayr0dgmrhlly5827c850xbr0j5ngiy6rvwyba5j9iv2x0y"; }; cargoSha256 = "1nig4891p7ii4z4f4j4d4pxx39f501g7yrsygqbpkr1nrgjip547"; buildInputs = stdenv.lib.optional stdenv.isDarwin Security; + # https://github.com/eqrion/cbindgen/issues/338 + RUSTC_BOOTSTRAP = 1; + meta = with stdenv.lib; { description = "A project for generating C bindings from Rust code"; homepage = https://github.com/eqrion/cbindgen; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 4f14969424e1..3b9bea4dec39 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18056,6 +18056,7 @@ in firefox-unwrapped = firefoxPackages.firefox; firefox-esr-52-unwrapped = firefoxPackages.firefox-esr-52; firefox-esr-60-unwrapped = firefoxPackages.firefox-esr-60; + firefox-esr-68-unwrapped = firefoxPackages.firefox-esr-68; tor-browser-unwrapped = firefoxPackages.tor-browser; icecat-unwrapped = firefoxPackages.icecat; @@ -18063,7 +18064,8 @@ in firefox-wayland = wrapFirefox firefox-unwrapped { gdkWayland = true; }; firefox-esr-52 = wrapFirefox firefox-esr-52-unwrapped { }; firefox-esr-60 = wrapFirefox firefox-esr-60-unwrapped { }; - firefox-esr = firefox-esr-60; + firefox-esr-68 = wrapFirefox firefox-esr-68-unwrapped { }; + firefox-esr = firefox-esr-68; icecat = wrapFirefox icecat-unwrapped { }; firefox-bin-unwrapped = callPackage ../applications/networking/browsers/firefox-bin {