commit
a35803f331
37
pkgs/development/python-modules/nunavut/default.nix
Normal file
37
pkgs/development/python-modules/nunavut/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib, buildPythonPackage, pythonOlder, fetchPypi, pydsdl }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "nunavut";
|
||||
version = "0.3.0";
|
||||
disabled = pythonOlder "3.5"; # only python>=3.5 is supported
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "1ycnxrw2qgm7kdapsnhz80jsqkghgvb5giqwapn0m30rplwc3s36";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pydsdl
|
||||
];
|
||||
|
||||
# allow for writable directory for darwin
|
||||
preBuild = ''
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
# repo doesn't contain tests, ensure imports aren't broken
|
||||
pythonImportsCheck = [
|
||||
"nunavut"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A UAVCAN DSDL template engine";
|
||||
longDescription = ''
|
||||
It exposes a pydsdl abstract syntax tree to Jinja2 templates allowing
|
||||
authors to generate code, schemas, metadata, documentation, etc.
|
||||
'';
|
||||
homepage = "https://nunavut.readthedocs.io/";
|
||||
maintainers = with maintainers; [ wucke13 ];
|
||||
license = with licenses; [ bsd3 mit ];
|
||||
};
|
||||
}
|
37
pkgs/development/python-modules/pydsdl/default.nix
Normal file
37
pkgs/development/python-modules/pydsdl/default.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder }:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pydsdl";
|
||||
version = "1.4.2";
|
||||
disabled = pythonOlder "3.5"; # only python>=3.5 is supported
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "UAVCAN";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "03kbpzdrjzj5vpgz5rhc110pm1axdn3ynv88b42zq6iyab4k8k1x";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
];
|
||||
|
||||
# allow for writable directory for darwin
|
||||
preBuild = ''
|
||||
export HOME=$TMPDIR
|
||||
'';
|
||||
|
||||
# repo doesn't contain tests, ensure imports aren't broken
|
||||
pythonImportsCheck = [
|
||||
"pydsdl"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A UAVCAN DSDL compiler frontend implemented in Python";
|
||||
longDescription = ''
|
||||
It supports all DSDL features defined in the UAVCAN specification.
|
||||
'';
|
||||
homepage = "https://uavcan.org";
|
||||
maintainers = with maintainers; [ wucke13 ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
50
pkgs/development/python-modules/pyuavcan/default.nix
Normal file
50
pkgs/development/python-modules/pyuavcan/default.nix
Normal file
@ -0,0 +1,50 @@
|
||||
{ lib, buildPythonPackage, fetchFromGitHub, pythonOlder, numpy, nunavut
|
||||
, pyserial , pytest, ruamel_yaml}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "pyuavcan";
|
||||
version = "1.1.0.dev1";
|
||||
disabled = pythonOlder "3.7"; # only python>=3.7 is supported
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "UAVCAN";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
sha256 = "0fmbmdnnh679zkllv5m6pkrasg7m9vjwabqnmz5m7flrgdh6h4qa";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
numpy
|
||||
nunavut
|
||||
pyserial
|
||||
pytest
|
||||
ruamel_yaml
|
||||
];
|
||||
|
||||
# allow for writable directory for darwin
|
||||
preBuild = ''
|
||||
export HOME=$TMPDIR
|
||||
export PYTHONASYNCIODEBUG=1
|
||||
'';
|
||||
|
||||
# tests fail ATM.
|
||||
doCheck = false;
|
||||
|
||||
# check at least that import works, as tests fail
|
||||
pythonImportsCheck = [
|
||||
"pyuavcan"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "A full-featured implementation of the UAVCAN protocol stack";
|
||||
longDescription = ''
|
||||
It is intended for non-embedded, user-facing applications such as GUI
|
||||
software, diagnostic tools, automation scripts, prototypes, and various
|
||||
R&D cases. PyUAVCAN consists of a Python library (package) and a simple
|
||||
CLI tool for basic diagnostics and shell script automation.
|
||||
'';
|
||||
homepage = "https://pyuavcan.readthedocs.io";
|
||||
maintainers = with maintainers; [ wucke13 ];
|
||||
license = licenses.mit;
|
||||
};
|
||||
}
|
@ -1017,6 +1017,8 @@ in {
|
||||
nvchecker = callPackage ../development/python-modules/nvchecker { };
|
||||
|
||||
numericalunits = callPackage ../development/python-modules/numericalunits { };
|
||||
|
||||
nunavut = callPackage ../development/python-modules/nunavut { };
|
||||
|
||||
oath = callPackage ../development/python-modules/oath { };
|
||||
|
||||
@ -1304,6 +1306,8 @@ in {
|
||||
|
||||
pyscreenshot = callPackage ../development/python-modules/pyscreenshot { };
|
||||
|
||||
pydsdl = callPackage ../development/python-modules/pydsdl { };
|
||||
|
||||
pyside = callPackage ../development/python-modules/pyside {
|
||||
inherit (pkgs) mesa;
|
||||
};
|
||||
@ -1643,6 +1647,17 @@ in {
|
||||
inherit (pkgs.darwin.apple_sdk.frameworks) ApplicationServices CoreServices;
|
||||
};
|
||||
|
||||
pyuavcan = callPackage ../development/python-modules/pyuavcan {
|
||||
# this version pinpoint to anold version is necessary due to a regression
|
||||
nunavut = self.nunavut.overridePythonAttrs ( old: rec {
|
||||
version = "0.2.3";
|
||||
src = old.src.override {
|
||||
inherit version;
|
||||
sha256 = "0x8a9h4mc2r2yz49s9arsbs4bn3h25mvmg4zbgksm9hcyi9536x5";
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
pyunifi = callPackage ../development/python-modules/pyunifi { };
|
||||
|
||||
vdf = callPackage ../development/python-modules/vdf { };
|
||||
|
Loading…
x
Reference in New Issue
Block a user