depot/third_party/nixpkgs/pkgs/development/python-modules/pyocr/default.nix
Default email c7cb07f092 Project import generated by Copybara.
GitOrigin-RevId: 1536926ef5621b09bba54035ae2bb6d806d72ac8
2024-02-29 21:09:43 +01:00

55 lines
1.5 KiB
Nix

{ lib
, stdenv
, fetchFromGitLab
, buildPythonPackage
, pillow
, tesseract
, cuneiform
, isPy3k
, substituteAll
, pytestCheckHook
, setuptools
, setuptools-scm
, withTesseractSupport ? true
, withCuneiformSupport ? stdenv.hostPlatform.isLinux
}:
buildPythonPackage rec {
pname = "pyocr";
version = "0.8.5";
disabled = !isPy3k;
format = "pyproject";
# Don't fetch from PYPI because it doesn't contain tests.
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
group = "World";
owner = "OpenPaperwork";
repo = "pyocr";
rev = version;
hash = "sha256-gE0+qbHCwpDdxXFY+4rjVU2FbUSfSVrvrVMcWUk+9FU=";
};
patches = [] ++ (lib.optional withTesseractSupport (substituteAll {
src = ./paths-tesseract.patch;
inherit tesseract;
tesseractLibraryLocation = "${tesseract}/lib/libtesseract${stdenv.hostPlatform.extensions.sharedLibrary}";
})) ++ (lib.optional stdenv.hostPlatform.isLinux (substituteAll {
src = ./paths-cuneiform.patch;
inherit cuneiform;
}));
propagatedBuildInputs = [ pillow ];
nativeBuildInputs = [ setuptools setuptools-scm ];
nativeCheckInputs = [ pytestCheckHook ];
meta = with lib; {
inherit (src.meta) homepage;
changelog = "https://gitlab.gnome.org/World/OpenPaperwork/pyocr/-/blob/${version}/ChangeLog";
description = "A Python wrapper for Tesseract and Cuneiform";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ symphorien tomodachi94 ];
};
}