1{ lib
2, bluetooth-sensor-state-data
3, buildPythonPackage
4, fetchFromGitHub
5, poetry-core
6, pycryptodomex
7, pytestCheckHook
8, pythonOlder
9, sensor-state-data
10}:
11
12buildPythonPackage rec {
13 pname = "atc-ble";
14 version = "0.1.0";
15 format = "pyproject";
16
17 disabled = pythonOlder "3.9";
18
19 src = fetchFromGitHub {
20 owner = "Bluetooth-Devices";
21 repo = pname;
22 rev = "refs/tags/v${version}";
23 hash = "sha256-rwOFKxUlbbNIDJRdCmZpHstXwxcTnvlExgcVDdGbIVY=";
24 };
25
26 postPatch = ''
27 substituteInPlace pyproject.toml \
28 --replace " --cov=atc_ble --cov-report=term-missing:skip-covered" ""
29 '';
30
31 nativeBuildInputs = [
32 poetry-core
33 ];
34
35 propagatedBuildInputs = [
36 bluetooth-sensor-state-data
37 pycryptodomex
38 sensor-state-data
39 ];
40
41 nativeCheckInputs = [
42 pytestCheckHook
43 ];
44
45 pythonImportsCheck = [
46 "atc_ble"
47 ];
48
49 meta = with lib; {
50 description = "Library for ATC devices with custom firmware";
51 homepage = "https://github.com/Bluetooth-Devices/atc-ble";
52 changelog = "https://github.com/Bluetooth-Devices/atc-ble/releases/tag/v${version}";
53 license = with licenses; [ mit ];
54 maintainers = with maintainers; [ fab ];
55 };
56}