1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 setuptools, 6 wheel, 7 aiohttp, 8}: 9 10buildPythonPackage rec { 11 pname = "esphome-dashboard-api"; 12 version = "1.2.3"; 13 format = "pyproject"; 14 15 src = fetchFromGitHub { 16 owner = "esphome"; 17 repo = "dashboard-api"; 18 rev = "refs/tags/${version}"; 19 hash = "sha256-RFfS0xzRXoM6ETXmviiMPxffPzspjTqpkvHOlTJXN9g="; 20 }; 21 22 postPatch = '' 23 substituteInPlace pyproject.toml \ 24 --replace "setuptools~=65.6" "setuptools" \ 25 --replace "wheel~=0.37.1" "wheel" 26 ''; 27 28 nativeBuildInputs = [ 29 setuptools 30 wheel 31 ]; 32 33 propagatedBuildInputs = [ aiohttp ]; 34 35 doCheck = false; # no tests 36 37 pythonImportsCheck = [ "esphome_dashboard_api" ]; 38 39 meta = with lib; { 40 description = "API to interact with ESPHome Dashboard"; 41 homepage = "https://github.com/esphome/dashboard-api"; 42 changelog = "https://github.com/esphome/dashboard-api/releases/tag/${version}"; 43 license = licenses.mit; 44 maintainers = with maintainers; [ hexa ]; 45 }; 46}