{ pkgs, ... }: let python-nanokvm = pkgs.python3Packages.buildPythonPackage rec { pname = "python-nanokvm"; version = "v0.0.3"; format = "pyproject"; src = pkgs.fetchFromGitHub { owner = "puddly"; repo = pname; rev = version; sha256 = "sha256-jBBd+O3S/4AlxAhrF9j9Bi5vMKZNk0M17ok9JzcI8F8="; }; buildInputs = with pkgs.python3Packages; [ setuptools setuptools-git-versioning ]; nativeBuildInputs = with pkgs.python3Packages; [ aiohttp cryptography yarl pillow pydantic ]; doCheck = false; }; ha-nanokvm = pkgs.buildHomeAssistantComponent rec { owner = "Wouter0100"; domain = "nanokvm"; version = "v0.0.1"; src = pkgs.fetchFromGitHub { owner = owner; repo = "homeassistant-nanokvm"; rev = "663f9710dfea109f0bb0417df5828b8d639e70c4"; hash = "sha256-6rTEOshNCe0x4iEHljqY/6p2TK1HasgNycRHkmo2Hhw="; }; propagatedBuildInputs = [ python-nanokvm ]; meta = { changelog = "https://github.com/Wouter0100/homeassistant-nanokvm/releases/tag/${version}"; description = "This integration allows you to control and monitor your Sipeed NanoKVM device from Home Assistant."; homepage = "https://github.com/Wouter0100/homeassistant-nanokvm"; maintainers = [ ]; }; }; in { services.home-assistant.customComponents = [ ha-nanokvm ]; }