diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix index cae5bdd73e1..562fbbbb306 100644 --- a/pkgs/applications/networking/browsers/chromium/common.nix +++ b/pkgs/applications/networking/browsers/chromium/common.nix @@ -250,14 +250,20 @@ let fi done - # Required for patchShebangs (unsupported interpreter directive, basename: invalid option -- '*', etc.): - substituteInPlace native_client/SConstruct --replace "#! -*- python -*-" "" + if [[ -e native_client/SConstruct ]]; then + # Required for patchShebangs (unsupported interpreter directive, basename: invalid option -- '*', etc.): + substituteInPlace native_client/SConstruct --replace "#! -*- python -*-" "" + fi if [ -e third_party/harfbuzz-ng/src/src/update-unicode-tables.make ]; then substituteInPlace third_party/harfbuzz-ng/src/src/update-unicode-tables.make \ --replace "/usr/bin/env -S make -f" "/usr/bin/make -f" fi - chmod -x third_party/webgpu-cts/src/tools/run_deno - chmod -x third_party/dawn/third_party/webgpu-cts/tools/run_deno + if [ -e third_party/webgpu-cts/src/tools/run_deno ]; then + chmod -x third_party/webgpu-cts/src/tools/run_deno + fi + if [ -e third_party/dawn/third_party/webgpu-cts/tools/run_deno ]; then + chmod -x third_party/dawn/third_party/webgpu-cts/tools/run_deno + fi # We want to be able to specify where the sandbox is via CHROME_DEVEL_SANDBOX substituteInPlace sandbox/linux/suid/client/setuid_sandbox_host.cc \ diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix index 6419fa6a14f..5677bc37e84 100644 --- a/pkgs/applications/networking/browsers/chromium/default.nix +++ b/pkgs/applications/networking/browsers/chromium/default.nix @@ -6,10 +6,12 @@ , libva, pipewire, wayland , gcc, nspr, nss, runCommand , lib, libkrb5 +, electron-source # for warnObsoleteVersionConditional # package customization # Note: enable* flags should not require full rebuilds (i.e. only affect the wrapper) , channel ? "stable" +, upstream-info ? (import ./upstream-info.nix).${channel} , proprietaryCodecs ? true , enableWideVine ? false , ungoogled ? false # Whether to build chromium or ungoogled-chromium @@ -28,14 +30,12 @@ let llvmPackages_attrName = "llvmPackages_16"; stdenv = pkgs.${llvmPackages_attrName}.stdenv; - upstream-info = (import ./upstream-info.nix).${channel}; - # Helper functions for changes that depend on specific versions: warnObsoleteVersionConditional = min-version: result: - let ungoogled-version = (import ./upstream-info.nix).ungoogled-chromium.version; + let min-supported-version = (lib.head (lib.attrValues electron-source)).unwrapped.info.chromium.version; in lib.warnIf - (lib.versionAtLeast ungoogled-version min-version) - "chromium: ungoogled version ${ungoogled-version} is newer than a conditional bounded at ${min-version}. You can safely delete it." + (lib.versionAtLeast min-supported-version min-version) + "chromium: min-supported-version ${min-supported-version} is newer than a conditional bounded at ${min-version}. You can safely delete it." result; chromiumVersionAtLeast = min-version: let result = lib.versionAtLeast upstream-info.version min-version;