1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 setuptools,
6 pythonOlder,
7 numpy,
8 imageio,
9 cairosvg,
10 imageio-ffmpeg,
11 pwkit,
12}:
13
14buildPythonPackage rec {
15 pname = "drawsvg";
16 version = "2.4.0";
17 pyproject = true;
18
19 disabled = pythonOlder "3.9";
20
21 src = fetchFromGitHub {
22 owner = "cduck";
23 repo = "drawsvg";
24 tag = version;
25 hash = "sha256-JC7u6bEB7RCJVLeYnNqACmddLI5F5PyaaBxaAZ+N/5s=";
26 };
27
28 build-system = [ setuptools ];
29
30 optional-dependencies = {
31 all = [
32 numpy
33 imageio
34 cairosvg
35 imageio-ffmpeg
36 pwkit
37 ];
38 raster = [
39 numpy
40 imageio
41 cairosvg
42 imageio-ffmpeg
43 ];
44 color = [
45 pwkit
46 numpy
47 ];
48 };
49
50 # Module has no tests
51 doCheck = false;
52
53 pythonImportsCheck = [ "drawsvg" ];
54
55 meta = with lib; {
56 description = "Programmatically generate SVG (vector) images, animations, and interactive Jupyter widgets";
57 homepage = "https://github.com/cduck/drawsvg";
58 license = licenses.mit;
59 maintainers = with maintainers; [ fab ];
60 };
61}