nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at r-updates 99 lines 1.6 kB view raw
1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 6 # build-system 7 cython, 8 numpy, 9 setuptools, 10 11 # nativeBuildInputs 12 pkgs, 13 lcms2, 14 openjpeg, 15 16 # buildInputs 17 jxrlib, 18 lerc, 19 libdeflate, 20 libjpeg, 21 libpng, 22 libtiff, 23 libwebp, 24 xz, 25 zlib, 26 27 # tests 28 pytestCheckHook, 29}: 30 31let 32 version = "2026.3.6"; 33in 34buildPythonPackage rec { 35 pname = "imagecodecs"; 36 inherit version; 37 pyproject = true; 38 39 src = fetchFromGitHub { 40 owner = "cgohlke"; 41 repo = "imagecodecs"; 42 tag = "v${version}"; 43 hash = "sha256-UOyhTzejLJ1HnwHtvFe9Mo8nxOkLNANnJL2z/SSRjXs="; 44 }; 45 46 build-system = [ 47 cython 48 numpy 49 setuptools 50 ]; 51 52 nativeBuildInputs = [ 53 pkgs.lz4.dev # lz4 was hidden by python3Packages.lz4 54 lcms2.dev 55 openjpeg.dev 56 ]; 57 58 buildInputs = [ 59 jxrlib 60 lcms2 61 lerc 62 libdeflate 63 libjpeg 64 libpng 65 libtiff 66 libwebp 67 pkgs.lz4 68 openjpeg 69 xz # liblzma 70 zlib 71 pkgs.zstd 72 ]; 73 74 dependencies = [ 75 numpy 76 ]; 77 78 prePatch = '' 79 substituteInPlace setup.py \ 80 --replace-fail "/usr/include/openjpeg" "${openjpeg.dev}/include/openjpeg" \ 81 --replace-fail "/usr/include/jxrlib" "${jxrlib}/include/jxrlib" 82 ''; 83 84 nativeCheckInputs = [ 85 pytestCheckHook 86 ]; 87 88 pythonImportsCheck = [ 89 "imagecodecs" 90 ]; 91 92 meta = { 93 description = "Image transformation, compression, and decompression codecs"; 94 homepage = "https://github.com/cgohlke/imagecodecs"; 95 changelog = "https://github.com/cgohlke/imagecodecs/blob/${src.tag}/CHANGES.rst"; 96 license = lib.licenses.bsd3; 97 maintainers = with lib.maintainers; [ yzx9 ]; 98 }; 99}