chromiumDev: Fix the configuration phase (#120464)

The Python 3 support still isn't ready...

Changed files
+16 -4
pkgs
applications
networking
browsers
chromium
+16 -4
pkgs/applications/networking/browsers/chromium/common.nix
···
, 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
···
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.
···
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 ++ [
···
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