1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonOlder,
6 pytestCheckHook,
7 cython,
8 poetry-core,
9 setuptools,
10 numpy,
11}:
12
13buildPythonPackage rec {
14 pname = "pylibjpeg-libjpeg";
15 version = "2.02";
16 pyproject = true;
17
18 disabled = pythonOlder "3.7";
19
20 src = fetchFromGitHub {
21 owner = "pydicom";
22 repo = pname;
23 rev = "refs/tags/v${version}";
24 hash = "sha256-mGwku19Xe605fF3UU59712rYp+s/pP79lBRl79fhhTI=";
25 fetchSubmodules = true;
26 };
27
28 nativeBuildInputs = [
29 cython
30 poetry-core
31 setuptools
32 ];
33
34 propagatedBuildInputs = [ numpy ];
35
36 nativeCheckInputs = [ pytestCheckHook ];
37
38 doCheck = false; # tests try to import 'libjpeg.data', which errors
39
40 pythonImportsCheck = [ "libjpeg" ];
41
42 meta = with lib; {
43 description = "A JPEG, JPEG-LS and JPEG XT plugin for pylibjpeg";
44 homepage = "https://github.com/pydicom/pylibjpeg-libjpeg";
45 changelog = "https://github.com/pydicom/pylibjpeg-libjpeg/releases/tag/v${version}";
46 license = licenses.gpl3Only;
47 maintainers = with maintainers; [ bcdarwin ];
48 };
49}