nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 buildPythonPackage,
4 defusedxml,
5 fetchFromGitHub,
6 filetype,
7 flit-core,
8 opencv4,
9 pillow-heif,
10 pillow,
11 pytestCheckHook,
12 wand,
13}:
14
15buildPythonPackage rec {
16 pname = "willow";
17 version = "1.12.0";
18 pyproject = true;
19
20 src = fetchFromGitHub {
21 owner = "wagtail";
22 repo = "Willow";
23 tag = "v${version}";
24 hash = "sha256-vboQwOEDRdbwmLT2EW1iF98ZuyzEzlrP2k2ZcvVKjFE=";
25 };
26
27 build-system = [ flit-core ];
28
29 dependencies = [
30 filetype
31 defusedxml
32 ];
33
34 optional-dependencies = {
35 wand = [ wand ];
36 pillow = [ pillow ];
37 heif = [ pillow-heif ];
38 };
39
40 nativeCheckInputs = [
41 opencv4
42 pytestCheckHook
43 ]
44 ++ lib.concatAttrValues optional-dependencies;
45
46 meta = {
47 description = "Python image library that sits on top of Pillow, Wand and OpenCV";
48 homepage = "https://github.com/torchbox/Willow/";
49 changelog = "https://github.com/wagtail/Willow/releases/tag/v${version}";
50 license = lib.licenses.bsd2;
51 maintainers = with lib.maintainers; [
52 kuflierl
53 ];
54 };
55}