diff --git a/pkgs/development/python-modules/openant/default.nix b/pkgs/development/python-modules/openant/default.nix index 71f699e0552a..ed142826160b 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; }; }