{ lib, namespace, pkgs, home-assistant, ... }: let inherit (lib.trivial) importJSON; inherit (lib.${namespace}) selectVariant mkAllSources; versionSpec = importJSON ./version.json; selected = selectVariant versionSpec null null; sources = mkAllSources pkgs selected; version = selected.variables.version; in home-assistant.python.pkgs.buildPythonPackage { pname = "gehomesdk"; inherit version; pyproject = true; src = sources.gehomesdk; build-system = with home-assistant.python.pkgs; [ setuptools ]; dependencies = with home-assistant.python.pkgs; [ aiohttp beautifulsoup4 bidict humanize lxml requests slixmpp websockets ]; # Tests are not shipped and source is not tagged # https://github.com/simbaja/gehome/issues/32 doCheck = false; pythonImportsCheck = [ "gehomesdk" ]; meta = with lib; { description = "Python SDK for GE smart appliances"; homepage = "https://github.com/simbaja/gehome"; changelog = "https://github.com/simbaja/gehome/blob/master/CHANGELOG.md"; license = licenses.mit; maintainers = with maintainers; [ fab ]; mainProgram = "gehome-appliance-data"; }; }