1{
2 lib,
3 bleak-retry-connector,
4 bleak,
5 buildPythonPackage,
6 fetchFromGitHub,
7 pythonOlder,
8 setuptools,
9}:
10
11buildPythonPackage rec {
12 pname = "py-improv-ble-client";
13 version = "1.0.4";
14 pyproject = true;
15
16 disabled = pythonOlder "3.11";
17
18 src = fetchFromGitHub {
19 owner = "home-assistant-libs";
20 repo = "py-improv-ble-client";
21 tag = version;
22 hash = "sha256-leYSDB5/jFqlvX78OYzlFkkVxIkJ7iOUoLHBuVj7tAo=";
23 };
24
25 postPatch = ''
26 substituteInPlace pyproject.toml \
27 --replace-fail "setuptools~=65.6" "setuptools" \
28 --replace-fail "wheel~=0.37.1" "wheel"
29 '';
30
31 build-system = [ setuptools ];
32
33 dependencies = [
34 bleak
35 bleak-retry-connector
36 ];
37
38 # Module has no tests
39 doCheck = false;
40
41 pythonImportsCheck = [ "improv_ble_client" ];
42
43 meta = {
44 description = "Module to provision devices which implement Improv via BLE";
45 homepage = "https://github.com/home-assistant-libs/py-improv-ble-client";
46 changelog = "https://github.com/home-assistant-libs/py-improv-ble-client/releases/tag/${version}";
47 license = lib.licenses.mit;
48 maintainers = with lib.maintainers; [ fab ];
49 };
50}