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