diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index 4695667ee6cc..08bf466797ae 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -7,7 +7,7 @@ , xdg-utils, yasm, nasm, minizip, libwebp , libusb1, pciutils, nss, re2 -, python2Packages, perl, pkg-config +, python2Packages, python3Packages, perl, pkg-config , nspr, systemd, libkrb5 , util-linux, alsaLib , bison, gperf @@ -42,6 +42,16 @@ with lib; let jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 + # TODO: Python 3 support is incomplete and "python3 ../../build/util/python2_action.py" + # currently doesn't work due to mixed Python 2/3 dependencies: + pythonPackages = if chromiumVersionAtLeast "93" + then python3Packages + else python2Packages; + forcePython3Patch = (githubPatch + # Reland #8 of "Force Python 3 to be used in build."": + "a2d3c362802d9e6b62f895fcda75a3695b77b1b8" + "1r9spr2wmjk9x9l3m1gzn6692mlvbxdz0r5hlr5rfwiwr900rxi2" + ); # The additional attributes for creating derivations based on the chromium # source tree. @@ -127,9 +137,9 @@ let nativeBuildInputs = [ llvmPackages.lldClang.bintools - ninja which python2Packages.python perl pkg-config - python2Packages.ply python2Packages.jinja2 nodejs - gnutar python2Packages.setuptools + ninja which pythonPackages.python perl pkg-config + pythonPackages.ply pythonPackages.jinja2 nodejs + gnutar pythonPackages.setuptools ]; buildInputs = defaultDependencies ++ [ @@ -168,6 +178,8 @@ let postPatch = lib.optionalString (chromiumVersionAtLeast "91") '' # Required for patchShebangs (unsupported): chmod -x third_party/webgpu-cts/src/tools/deno + '' + optionalString (chromiumVersionAtLeast "92") '' + patch -p1 --reverse < ${forcePython3Patch} '' + '' # remove unused third-party for lib in ${toString gnSystemLibraries}; do