1{
2 lib,
3 pycryptodome,
4 buildPythonPackage,
5 fetchFromGitHub,
6 pythonOlder,
7 pytestCheckHook,
8}:
9
10buildPythonPackage rec {
11 pname = "cart";
12 version = "1.2.3";
13 format = "setuptools";
14
15 disabled = pythonOlder "3.8";
16
17 src = fetchFromGitHub {
18 owner = "CybercentreCanada";
19 repo = "cart";
20 tag = "v${version}";
21 hash = "sha256-oeWeay1Pr9T4oR3XSrwv9hRr/sLTel1Bt6BG6jHXxIA=";
22 };
23
24 propagatedBuildInputs = [ pycryptodome ];
25
26 nativeCheckInputs = [ pytestCheckHook ];
27
28 enabledTestPaths = [ "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/${src.tag}";
37 license = with licenses; [ mit ];
38 maintainers = with maintainers; [ fab ];
39 };
40}