1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 charls, 6 cython, 7 numpy, 8 pillow, 9 setuptools, 10 pytestCheckHook, 11}: 12 13buildPythonPackage rec { 14 pname = "pyjpegls"; 15 version = "1.5.1"; 16 pyproject = true; 17 18 src = fetchFromGitHub { 19 owner = "pydicom"; 20 repo = "pyjpegls"; 21 tag = "v${version}"; 22 hash = "sha256-ha/nYvfzgoZDpVolMKMG9ZXqojy6x/2oPcvbWDvdKk4="; 23 }; 24 25 # replace vendored 'charls' submodule with Nixpkgs's: 26 postPatch = '' 27 rmdir lib/charls 28 cp -ar ${charls.src} lib/charls 29 ''; 30 31 pythonRelaxDeps = [ "numpy" ]; 32 33 build-system = [ 34 cython 35 numpy 36 setuptools 37 ]; 38 39 dependencies = [ 40 numpy 41 pillow 42 ]; 43 44 pythonImportsCheck = [ "jpeg_ls" ]; 45 46 nativeCheckInputs = [ pytestCheckHook ]; 47 48 meta = { 49 description = "JPEG-LS for Python via CharLS C++ Library"; 50 homepage = "https://github.com/pydicom/pyjpegls"; 51 changelog = "https://github.com/pydicom/pyjpegls/releases/tag/v${src.tag}"; 52 license = lib.licenses.mit; 53 maintainers = with lib.maintainers; [ bcdarwin ]; 54 }; 55}