2025-05-14 18:07:15 +00:00

62 lines
1.1 KiB
Nix

{
lib,
appdirs,
buildPythonPackage,
fetchFromGitHub,
graphviz,
ifaddr,
lxml,
mock,
nix-update-script,
pytestCheckHook,
pythonOlder,
requests,
requests-mock,
setuptools,
xmltodict,
}:
buildPythonPackage rec {
pname = "soco";
version = "0.30.10";
pyproject = true;
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "SoCo";
repo = "SoCo";
tag = "v${version}";
hash = "sha256-BTDKn6JVqXfLiry6jES/OnsO3SGniEMWW2osf9veukU=";
};
build-system = [ setuptools ];
dependencies = [
appdirs
ifaddr
lxml
requests
xmltodict
];
nativeCheckInputs = [
pytestCheckHook
graphviz
mock
requests-mock
];
pythonImportsCheck = [ "soco" ];
passthru.updateScript = nix-update-script { };
meta = with lib; {
description = "CLI and library to control Sonos speakers";
homepage = "http://python-soco.com/";
changelog = "https://github.com/SoCo/SoCo/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ lovesegfault ];
};
}