nixpkgs/pkgs/development/python-modules/xiaomi-ble/default.nix

68 lines
1.4 KiB
Nix

{ lib
, bleak
, bleak-retry-connector
, bluetooth-data-tools
, bluetooth-sensor-state-data
, buildPythonPackage
, cryptography
, fetchFromGitHub
, home-assistant-bluetooth
, poetry-core
, pycryptodomex
, pytestCheckHook
, pythonOlder
, sensor-state-data
}:
buildPythonPackage rec {
pname = "xiaomi-ble";
version = "0.21.1";
format = "pyproject";
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "Bluetooth-Devices";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-5AzqsCWDgGhJ1EgJrbA8QHjP/Y14cIdSA0GKwZMrxX0=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace " --cov=xiaomi_ble --cov-report=term-missing:skip-covered" "" \
--replace 'pycryptodomex = ">=3.18.0"' 'pycryptodomex = ">=3.17.0"'
'';
nativeBuildInputs = [
poetry-core
];
propagatedBuildInputs = [
bleak
bleak-retry-connector
bluetooth-data-tools
bluetooth-sensor-state-data
cryptography
home-assistant-bluetooth
pycryptodomex
sensor-state-data
];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [
"xiaomi_ble"
];
meta = with lib; {
description = "Library for Xiaomi BLE devices";
homepage = "https://github.com/Bluetooth-Devices/xiaomi-ble";
changelog = "https://github.com/Bluetooth-Devices/xiaomi-ble/releases/tag/v${version}";
license = with licenses; [ mit ];
maintainers = with maintainers; [ fab ];
};
}