1{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder }:
2
3 buildPythonPackage rec {
4 pname = "pydsdl";
5 version = "1.12.1";
6 disabled = pythonOlder "3.5"; # only python>=3.5 is supported
7
8 src = fetchFromGitHub {
9 owner = "UAVCAN";
10 repo = pname;
11 rev = version;
12 sha256 = "sha256-5AwwqduIvLSZk6WcI59frwRKwjniQXfNWWVsy6V6I1E=";
13 };
14
15 # allow for writable directory for darwin
16 preBuild = ''
17 export HOME=$TMPDIR
18 '';
19
20 # repo doesn't contain tests
21 doCheck = false;
22
23 pythonImportsCheck = [
24 "pydsdl"
25 ];
26
27 meta = with lib; {
28 description = "A UAVCAN DSDL compiler frontend implemented in Python";
29 longDescription = ''
30 It supports all DSDL features defined in the UAVCAN specification.
31 '';
32 homepage = "https://uavcan.org";
33 maintainers = with maintainers; [ wucke13 ];
34 license = licenses.mit;
35 };
36}