Commit c04e1db9 authored by Ihar Hrachyshka's avatar Ihar Hrachyshka
Browse files

python312Packages.pypdfium2: pin to git revision



Previously, we were fetching headers from a branch, not a fixed
revision, so a new patch in the branch broke the build because hashes
changed.

Closes #378154

Signed-off-by: default avatarIhar Hrachyshka <ihar.hrachyshka@gmail.com>
parent d8a92f0c
Loading
Loading
Loading
Loading
+11 −7
Original line number Diff line number Diff line
@@ -3,21 +3,25 @@
  pkgs,
  buildPythonPackage,
  fetchFromGitHub,
  fetchurl,
  fetchgit,
  setuptools-scm,
  pdfium-binaries,
  numpy,
  pillow,
  pytestCheckHook,
  python,
}:

let
  pdfiumVersion = "${pdfium-binaries.version}";

  headers = fetchurl {
    url = "https://pdfium.googlesource.com/pdfium/+archive/refs/heads/chromium/${pdfiumVersion}/public.tar.gz";
    hash = "sha256-vKfs4Jd8LEtA3aTI+DcJMS0VOErq1IR1eThnMlxiER0=";
  headers = fetchgit {
    url = "https://pdfium.googlesource.com/pdfium";
    # The latest revision on the chromium/${pdfiumVersion} branch
    rev = "f6da7d235728aeaff6586d2190badfb4290a9979";
    hash = "sha256-xUylu//APbwpI+k6cQ7OrPCwDXp9qw0ZVaCba/d5zVg=";
    sparseCheckout = [
      "public"
    ];
  };

  # They demand their own fork of ctypesgen
@@ -84,8 +88,8 @@ buildPythonPackage rec {
    in
    ''
      # Preseed the headers and version file
      mkdir -p ${headersDir}
      tar -xf ${headers} -C ${headersDir}
      mkdir -p ${bindingsDir}
      cp -r ${headers}/public ${headersDir}
      install -m 644 ${inputVersionFile} ${versionFile}

      # Make generated bindings consider pdfium derivation path when loading dynamic libraries