1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, pythonOlder
5, setuptools
6, pyusb
7, influxdb-client
8, pyserial
9, pytestCheckHook
10}:
11
12buildPythonPackage rec {
13 pname = "openant-unstable";
14 version = "1.2.1";
15 pyproject = true;
16
17 disabled = pythonOlder "3.7";
18
19 src = fetchFromGitHub {
20 owner = "Tigge";
21 repo = "openant";
22 rev = "refs/tags/v${version}";
23 hash = "sha256-Ook9dwcyWvpaGylVDjBxQ2bnXRUBPYQHo6Wub+ISpwE=";
24 };
25
26 nativeBuildInputs = [
27 setuptools
28 ];
29
30 postInstall = ''
31 install -dm755 "$out/etc/udev/rules.d"
32 install -m644 resources/42-ant-usb-sticks.rules "$out/etc/udev/rules.d/99-ant-usb-sticks.rules"
33 '';
34
35 propagatedBuildInputs = [ pyusb ];
36
37 passthru.optional-dependencies = {
38 serial = [
39 pyserial
40 ];
41 influx = [
42 influxdb-client
43 ];
44 };
45
46 nativeCheckInputs = [
47 pytestCheckHook
48 ];
49
50 pythonImportsCheck = [
51 "openant"
52 ];
53
54 meta = with lib; {
55 homepage = "https://github.com/Tigge/openant";
56 description = "ANT and ANT-FS Python Library";
57 license = licenses.mit;
58 };
59
60}