anchor.diff: -{ stdenv, lib, llvmPackages, gnChromium, ninja, which, nodejs, fetchpatch, fetchurl
  -
  -# default dependencies
  -, gnutar, bzip2, flac, speex, libopus
  +{ stdenv, lib, fetchurl, fetchpatch
  +# Channel data:
  +, channel, upstream-info
  +
  +# Native build inputs:
  +, ninja, pkg-config
  +, python2, python3, perl
  +, gnutar, which
  +, llvmPackages
  +# postPatch:
  +, pkgsBuildHost
  +# configurePhase:
  +, gnChromium
  +
  +# Build inputs:
  +, libpng
  +, bzip2, flac, speex, libopus
   , libevent, expat, libjpeg, snappy
  -, libpng, libcap
  -, xdg-utils, yasm, nasm, minizip, libwebp
  -, libusb1, pciutils, nss, re2
  -
  -, python2, python3, perl, pkg-config
  -, nspr, systemd, libkrb5
  +, libcap
  +, xdg-utils, minizip, libwebp
  +, libusb1, re2
  +, ffmpeg, libxslt, libxml2
  +, nasm
  +, nspr, nss, systemd
   , util-linux, alsa-lib
  -, bison, gperf
  +, bison, gperf, libkrb5
   , glib, gtk3, dbus-glib
  -, glibc
   , libXScrnSaver, libXcursor, libXtst, libxshmfence, libGLU, libGL
  -, protobuf, speechd, libXdamage, cups
  -, ffmpeg, libxslt, libxml2, at-spi2-core
  -, jre8
  +, mesa
  +, pciutils, protobuf, speechd, libXdamage, at-spi2-core
   , pipewire
   , libva
  -, libdrm, wayland, mesa, libxkbcommon # Ozone
  +, libdrm, wayland, libxkbcommon # Ozone
   , curl
  -
  -# optional dependencies
  -, libgcrypt ? null # gnomeSupport || cupsSupport
  -
  -# package customization
  +# postPatch:
  +, glibc # gconv + locale
  +
  +# Package customization:
   , gnomeSupport ? false, gnome2 ? null
   , gnomeKeyringSupport ? false, libgnome-keyring3 ? null
  +, cupsSupport ? true, cups ? null
   , proprietaryCodecs ? true
  -, cupsSupport ? true
   , pulseSupport ? false, libpulseaudio ? null
   , ungoogled ? false, ungoogled-chromium
  -
  -, channel
  -, upstream-info
  +# Optional dependencies:
  +, libgcrypt ? null # gnomeSupport || cupsSupport
   }:
   
   buildFun:
  
positive.code:       libva
        libdrm wayland mesa.drivers libxkbcommon
        curl
      ] ++ optional gnomeKeyringSupport libgnome-keyring3
        ++ optionals gnomeSupport [ gnome2.GConf libgcrypt ]
        ++ optionals cupsSupport [ libgcrypt cups ]
        ++ optional pulseSupport libpulseaudio;
  
      patches = [
        ./patches/no-build-timestamps.patch # Optional patch to use SOURCE_DATE_EPOCH in compute_build_timestamp.py (should be upstreamed)
        ./patches/widevine-79.patch # For bundling Widevine (DRM), might be replaceable via bundle_widevine_cdm=true in gnFlags
        # Fix the build by adding a missing dependency (s. https://crbug.com/1197837):
        ./patches/fix-missing-atspi2-dependency.patch
      ] ++ lib.optionals (versionRange "91" "94.0.4583.0") [
  
negative.code: 
      nativeBuildInputs = [
        ninja pkg-config
        python2WithPackages python3WithPackages perl
        gnutar which
        llvmPackages.bintools
      ];
  
      buildInputs = [
        (libpng.override { apngSupport = false; }) # https://bugs.chromium.org/p/chromium/issues/detail?id=752403
        bzip2 flac speex opusWithCustomModes
        libevent expat libjpeg snappy
        libcap
        xdg-utils minizip libwebp
        libusb1 re2
        ffmpeg libxslt libxml2
        nasm
        nspr nss systemd
        util-linux alsa-lib
        bison gperf libkrb5
  