1{ lib
2, stdenv
3, buildPythonPackage
4, pythonOlder
5, fetchFromGitHub
6, pillow
7, toml
8, numpy
9, python
10, pytestCheckHook
11}:
12
13buildPythonPackage rec {
14 pname = "clickgen";
15 version = "2.1.3";
16 format = "setuptools";
17
18 disabled = pythonOlder "3.8";
19
20 src = fetchFromGitHub {
21 owner = "ful1e5";
22 repo = "clickgen";
23 rev = "refs/tags/v${version}";
24 hash = "sha256-qDaSfIeKCbyl3C2iKz9DYQc1oNwTe5xDlGg/yYhakSw=";
25 };
26
27 propagatedBuildInputs = [ pillow toml numpy ];
28
29 nativeCheckInputs = [ pytestCheckHook ];
30
31 postInstall = ''
32 # Copying scripts directory needed by clickgen script at $out/bin/
33 cp -R src/clickgen/scripts $out/${python.sitePackages}/clickgen/scripts
34 '';
35
36 pythonImportsCheck = [ "clickgen" ];
37
38 meta = with lib; {
39 homepage = "https://github.com/ful1e5/clickgen";
40 description = "The hassle-free cursor building toolbox";
41 longDescription = ''
42 clickgen is API for building X11 and Windows Cursors from
43 .png files. clickgen is using anicursorgen and xcursorgen under the hood.
44 '';
45 license = licenses.mit;
46 maintainers = with maintainers; [ AdsonCicilioti ];
47 # fails with:
48 # ld: unknown option: -zdefs
49 broken = stdenv.isDarwin;
50 };
51}