Something went wrong. Try again.
Nix Packages collection & NixOS github.com/NixOS/nixpkgs
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105{ lib, aiohttp, aiomqtt, buildPythonPackage, cachetools, cryptography, defusedxml, docker, fetchFromGitHub, orjson, pkg-config, pycountry, pyprojectVersionPatchHook, pytest-asyncio, pytest-codspeed, pytestCheckHook, pythonOlder, rustPlatform, syrupy, testfixtures, xz,}:
buildPythonPackage (finalAttrs: { pname = "deebot-client"; version = "18.7.0"; pyproject = true;
disabled = pythonOlder "3.14";
src = fetchFromGitHub { owner = "DeebotUniverse"; repo = "client.py"; tag = finalAttrs.version; hash = "sha256-Eqq/4YruOxtgIeoHX0XedUCk1gf+KLN1uEhgAsGzSQk="; };
cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) pname version src; hash = "sha256-zbwQgI+fXn2xVwbunt5cq5vykBgE0cUR/7tpBPyfJ/I="; };
nativeBuildInputs = [ pkg-config pyprojectVersionPatchHook rustPlatform.cargoSetupHook rustPlatform.maturinBuildHook ];
buildInputs = [ xz ];
pythonRelaxDeps = [ "cryptography" ];
dependencies = [ aiohttp aiomqtt cachetools cryptography defusedxml orjson ];
nativeCheckInputs = [ docker pycountry pytest-asyncio pytest-codspeed pytestCheckHook syrupy testfixtures ];
preCheck = '' rm -rf deebot_client '';
pythonImportsCheck = [ "deebot_client" ];
disabledTests = [ # Tests require running container "test_last_message_received_at" "test_client_bot_subscription" "test_client_reconnect_manual" "test_p2p_success" "test_p2p_not_supported" "test_p2p_data_type_not_supported" "test_p2p_to_late" "test_p2p_parse_error" "test_mqtt_task_exceptions" "test_mqtt_task_exceptions" "test_client_reconnect_on_broker_error" ];
meta = { description = "Deebot client library"; homepage = "https://github.com/DeebotUniverse/client.py"; changelog = "https://github.com/DeebotUniverse/client.py/releases/tag/${finalAttrs.src.tag}"; license = lib.licenses.gpl3Only; maintainers = with lib.maintainers; [ fab ]; };})