1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4
5# build-system
6, cmake
7, nasm
8
9# native dependencies
10, libheif
11, libaom
12, libde265
13, x265
14
15# dependencies
16, pillow
17
18# tests
19, opencv4
20, numpy
21, pympler
22, pytestCheckHook
23}:
24
25buildPythonPackage rec {
26 pname = "pillow-heif";
27 version = "0.13.0";
28 format = "setuptools";
29
30 src = fetchFromGitHub {
31 owner = "bigcat88";
32 repo = "pillow_heif";
33 rev = "refs/tags/v${version}";
34 hash = "sha256-GbOW29rGpLMS7AfShuO6UCzcspdHtFS7hyNKori0otI=";
35 };
36
37 nativeBuildInputs = [
38 cmake
39 nasm
40 ];
41
42 dontUseCmakeConfigure = true;
43
44 buildInputs = [
45 libaom
46 libde265
47 libheif
48 x265
49 ];
50
51 propagatedBuildInputs = [
52 pillow
53 ];
54
55 pythonImportsCheck = [
56 "pillow_heif"
57 ];
58
59 nativeCheckInputs = [
60 opencv4
61 numpy
62 pympler
63 pytestCheckHook
64 ];
65
66 meta = {
67 changelog = "https://github.com/bigcat88/pillow_heif/releases/tag/v${version}";
68 description = "Python library for working with HEIF images and plugin for Pillow";
69 homepage = "https://github.com/bigcat88/pillow_heif";
70 license = with lib.licenses; [ bsd3 lgpl3 ];
71 maintainers = with lib.maintainers; [ dandellion ];
72 };
73}