Merge pull request #268619 from tweag/lib-descriptions
[NixPkgs.git] / pkgs / development / python-modules / nunavut / default.nix
blob52a6d1c182595aee6277275918163d64b5886ceb
1 { lib
2 , buildPythonPackage
3 , pythonOlder
4 , fetchPypi
5 , importlib-resources
6 , pydsdl
7 , pyyaml
8 }:
10  buildPythonPackage rec {
11   pname = "nunavut";
12   version = "2.3.1";
13   format = "setuptools";
15   disabled = pythonOlder "3.7";
17   src = fetchPypi {
18     inherit pname version;
19     hash = "sha256-23C3biUUs10Po5qzn3EFaq4+HeWCXIC6WzxOKy59VgM=";
20   };
22   postPatch = ''
23     substituteInPlace setup.cfg \
24       --replace "pydsdl ~= 1.16" "pydsdl"
25   '';
27   propagatedBuildInputs = [
28     importlib-resources
29     pydsdl
30     pyyaml
31   ];
33   # allow for writable directory for darwin
34   preBuild = ''
35     export HOME=$TMPDIR
36   '';
38   # No tests in pypy package and no git tags yet for release versions, see
39   # https://github.com/UAVCAN/nunavut/issues/182
40   doCheck = false;
42   pythonImportsCheck = [
43     "nunavut"
44   ];
46   meta = with lib; {
47     description = "A UAVCAN DSDL template engine";
48     longDescription = ''
49       It exposes a pydsdl abstract syntax tree to Jinja2 templates allowing
50       authors to generate code, schemas, metadata, documentation, etc.
51     '';
52     homepage = "https://nunavut.readthedocs.io/";
53     changelog = "https://github.com/OpenCyphal/nunavut/releases/tag/${version}";
54     maintainers = with maintainers; [ wucke13 ];
55     license = with licenses; [ bsd3 mit ];
56   };