summary refs log tree commit diff
path: root/pkgs/development/python-modules/openant/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/openant/default.nix')
-rw-r--r--pkgs/development/python-modules/openant/default.nix44
1 files changed, 33 insertions, 11 deletions
diff --git a/pkgs/development/python-modules/openant/default.nix b/pkgs/development/python-modules/openant/default.nix
index 71f699e0552..ed142826160 100644
--- a/pkgs/development/python-modules/openant/default.nix
+++ b/pkgs/development/python-modules/openant/default.nix
@@ -1,38 +1,60 @@
 { lib
 , buildPythonPackage
 , fetchFromGitHub
+, pythonOlder
+, setuptools
 , pyusb
+, influxdb-client
+, pyserial
+, pytestCheckHook
 }:
 
-buildPythonPackage {
+buildPythonPackage rec {
   pname = "openant-unstable";
-  version = "2017-02-11";
+  version = "1.2.1";
+  pyproject = true;
+
+  disabled = pythonOlder "3.7";
 
   src = fetchFromGitHub {
     owner = "Tigge";
     repo = "openant";
-    rev = "ed89281e37f65d768641e87356cef38877952397";
-    sha256 = "1g81l9arqdy09ijswn3sp4d6i3z18d44lzyb78bwnvdb14q22k19";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-Ook9dwcyWvpaGylVDjBxQ2bnXRUBPYQHo6Wub+ISpwE=";
   };
 
-  # Removes some setup.py hacks intended to install udev rules.
-  # We do the job ourselves in postInstall below.
-  postPatch = ''
-    sed -i -e '/cmdclass=.*/d' setup.py
-  '';
+  nativeBuildInputs = [
+    setuptools
+  ];
 
   postInstall = ''
     install -dm755 "$out/etc/udev/rules.d"
-    install -m644 resources/ant-usb-sticks.rules "$out/etc/udev/rules.d/99-ant-usb-sticks.rules"
+    install -m644 resources/42-ant-usb-sticks.rules "$out/etc/udev/rules.d/99-ant-usb-sticks.rules"
   '';
 
   propagatedBuildInputs = [ pyusb ];
 
+  passthru.optional-dependencies = {
+    serial = [
+      pyserial
+    ];
+    influx = [
+      influxdb-client
+    ];
+  };
+
+  nativeCheckInputs = [
+    pytestCheckHook
+  ];
+
+  pythonImportsCheck = [
+    "openant"
+  ];
+
   meta = with lib; {
     homepage = "https://github.com/Tigge/openant";
     description = "ANT and ANT-FS Python Library";
     license = licenses.mit;
-    platforms = platforms.unix;
   };
 
 }