1{
2 lib,
3 bleak,
4 bleak-retry-connector,
5 bluetooth-data-tools,
6 bluetooth-sensor-state-data,
7 buildPythonPackage,
8 fetchFromGitHub,
9 miauth,
10 pythonOlder,
11 setuptools,
12 wheel,
13}:
14
15buildPythonPackage rec {
16 pname = "ninebot-ble";
17 version = "0.0.6";
18 pyproject = true;
19
20 disabled = pythonOlder "3.10";
21
22 src = fetchFromGitHub {
23 owner = "ownbee";
24 repo = "ninebot-ble";
25 tag = version;
26 hash = "sha256-gA3VTs45vVpO0Iy8MbvvDf9j99vsFzrkADaJEslx6y0=";
27 };
28
29 nativeBuildInputs = [
30 setuptools
31 wheel
32 ];
33
34 propagatedBuildInputs = [
35 bleak
36 bleak-retry-connector
37 bluetooth-data-tools
38 bluetooth-sensor-state-data
39 miauth
40 ];
41
42 # Module has no test
43 doCheck = false;
44
45 pythonImportsCheck = [ "ninebot_ble" ];
46
47 meta = with lib; {
48 description = "Ninebot scooter BLE client";
49 mainProgram = "ninebot-ble";
50 homepage = "https://github.com/ownbee/ninebot-ble";
51 license = licenses.mit;
52 maintainers = with maintainers; [ fab ];
53 };
54}