1{
2 lib,
3 pycryptodome,
4 buildPythonPackage,
5 fetchFromGitHub,
6 pythonOlder,
7 pytestCheckHook,
8}:
9
10buildPythonPackage rec {
11 pname = "cart";
12 version = "1.2.2";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.8";
16
17 src = fetchFromGitHub {
18 owner = "CybercentreCanada";
19 repo = pname;
20 rev = "refs/tags/v${version}";
21 hash = "sha256-0dHdXb4v92681xL21FsrIkNgNQ9R5ULV1lnSCITZzP8=";
22 };
23
24 propagatedBuildInputs = [ pycryptodome ];
25
26 nativeCheckInputs = [ pytestCheckHook ];
27
28 pytestFlagsArray = [ "unittests" ];
29
30 pythonImportsCheck = [ "cart" ];
31
32 meta = with lib; {
33 description = "Python module for the CaRT Neutering format";
34 mainProgram = "cart";
35 homepage = "https://github.com/CybercentreCanada/cart";
36 changelog = "https://github.com/CybercentreCanada/cart/releases/tag/v${version}";
37 license = with licenses; [ mit ];
38 maintainers = with maintainers; [ fab ];
39 };
40}