From 59b1cdba311f8563bc954d9b8b164d4a54e8456a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 22 Apr 2019 23:35:37 +0200 Subject: [PATCH] python3.pkgs.aioesphomeapi: 1.8.0 -> 2.0.1 Pin the protobuf version used by Home Assistant to the version required by aioesphomeapi and some components. --- .../python-modules/aioesphomeapi/default.nix | 12 +++++++++--- pkgs/servers/home-assistant/default.nix | 9 ++++++++- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/aioesphomeapi/default.nix b/pkgs/development/python-modules/aioesphomeapi/default.nix index 80c85a2614ca..0afb1c432d6b 100644 --- a/pkgs/development/python-modules/aioesphomeapi/default.nix +++ b/pkgs/development/python-modules/aioesphomeapi/default.nix @@ -1,12 +1,14 @@ -{ lib, buildPythonPackage, fetchPypi, attrs, protobuf, zeroconf }: +{ lib, buildPythonPackage, fetchPypi, isPy3k, attrs, protobuf, zeroconf }: buildPythonPackage rec { pname = "aioesphomeapi"; - version = "1.8.0"; + version = "2.0.1"; + + disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "16ywa7yggmsx8m2r9azdq7w9fxjh736g1vd1aibgh24g7srhwwhj"; + sha256 = "db09e34dfc148279f303481c7da94b84c9b1442a41794f039c31253e81a58ffb"; }; propagatedBuildInputs = [ attrs protobuf zeroconf ]; @@ -19,5 +21,9 @@ buildPythonPackage rec { homepage = https://github.com/esphome/aioesphomeapi; license = licenses.mit; maintainers = with maintainers; [ dotlambda ]; + + # Home Assistant should pin protobuf to the correct version. Can be tested using + # nix-build -E "with import ./. {}; home-assistant.override { extraPackages = ps: [ ps.aioesphomeapi ]; }" + broken = !lib.hasPrefix "3.6.1" protobuf.version; }; } diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 112c1f57a91a..d2eb536a11e5 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, fetchpatch, python3 +{ lib, fetchFromGitHub, fetchpatch, python3, protobuf3_6 # Look up dependencies of specified components in component-packages.nix , extraComponents ? [] @@ -78,6 +78,13 @@ let }); }) + # required by aioesphomeapi + (self: super: { + protobuf = super.protobuf.override { + protobuf = protobuf3_6; + }; + }) + # hass-frontend does not exist in python3.pkgs (self: super: { hass-frontend = self.callPackage ./frontend.nix { };