{ lib, bleak, bleak-retry-connector, boto3, buildPythonPackage, cryptography, fetchFromGitHub, pyopenssl, pythonOlder, pytestCheckHook, requests, setuptools, }: buildPythonPackage rec { pname = "pyswitchbot"; version = "0.47.2"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchFromGitHub { owner = "Danielhiversen"; repo = "pySwitchbot"; rev = "refs/tags/${version}"; hash = "sha256-89bFP/7ovsPj7htFGXrYR4jhm1E/ph47f4qZCKf1hfY="; }; build-system = [ setuptools ]; dependencies = [ bleak bleak-retry-connector boto3 cryptography pyopenssl requests ]; nativeCheckInputs = [ pytestCheckHook ]; disabledTests = [ # mismatch in expected data structure "test_parse_advertisement_data_curtain" ]; pythonImportsCheck = [ "switchbot" ]; meta = with lib; { description = "Python library to control Switchbot IoT devices"; homepage = "https://github.com/Danielhiversen/pySwitchbot"; changelog = "https://github.com/Danielhiversen/pySwitchbot/releases/tag/${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; platforms = platforms.linux; }; }