Unverified Commit 62c7f3de authored by Martin Weinelt's avatar Martin Weinelt Committed by GitHub
Browse files

esphome: 2026.3.3 -> 2026.4.3 (#513695)

parents 0eabfcf8 5ba0c7ac
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -13,14 +13,14 @@

buildPythonPackage (finalAttrs: {
  pname = "esphome-dashboard";
  version = "20260210.0";
  version = "20260408.1";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "esphome";
    repo = "dashboard";
    tag = finalAttrs.version;
    hash = "sha256-Edd2ZOSBAZSrGVjbncyPhhjFjE0CxBHz16ZHXyzx9LI=";
    hash = "sha256-OY7s/b0rWmjI9QfmEwj3VxbTFrj99fyf9x1tPl24RbI=";
  };

  npmDeps = fetchNpmDeps {
+14 −8
Original line number Diff line number Diff line
@@ -31,16 +31,16 @@ let
    };
  };
in
python.pkgs.buildPythonApplication rec {
python.pkgs.buildPythonApplication (finalAttrs: {
  pname = "esphome";
  version = "2026.3.3";
  version = "2026.4.3";
  pyproject = true;

  src = fetchFromGitHub {
    owner = "esphome";
    repo = "esphome";
    tag = version;
    hash = "sha256-yMPHz6IZIGM4oJw1wspEL3lIIiPv4WZALUJ7J1UWukY=";
    tag = finalAttrs.version;
    hash = "sha256-+esSczOBIT4dJEyzqmEv6YMU4wGkN4lFGmuZKRp5/bo=";
  };

  patches = [
@@ -49,6 +49,10 @@ python.pkgs.buildPythonApplication rec {
    # own python environment through `python -m esptool` and then fails to find
    # the esptool library.
    ./esp32-post-build-esptool-reference.patch
    # Call the platformio binary directly instead of `python -m
    # esphome.platformio_runner`, which tries to import platformio as a Python
    # module.
    ./platformio-binary-reference.patch
  ];

  build-system = with python.pkgs; [
@@ -119,7 +123,7 @@ python.pkgs.buildPythonApplication rec {
    }"
    # The dashboard requires esphome to be importable
    # dependencies are added to show better error messages
    "--prefix PYTHONPATH : $out/${python.sitePackages}:${python.pkgs.makePythonPath dependencies}"
    "--prefix PYTHONPATH : $out/${python.sitePackages}:${python.pkgs.makePythonPath finalAttrs.passthru.dependencies}"
    "--prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ stdenv.cc.cc ]}"
    "--set ESPHOME_USE_SUBPROCESS ''"
    # https://github.com/NixOS/nixpkgs/issues/362193
@@ -173,9 +177,10 @@ python.pkgs.buildPythonApplication rec {
    "test_clean_all"
    "test_clean_all_partial_exists"
    # tries to use esptool, which is wrapped in an fhsenv
    "test_upload_using_esptool_passes_crystal_callback"
    "test_upload_using_esptool_path_conversion"
    "test_upload_using_esptool_skips_missing_extra_flash_images"
    "test_upload_using_esptool_with_file_path"
    "test_upload_using_esptool_passes_crystal_callback"
    # AssertionError: Expected 'run_external_command' to have been called once. Called 0 times.
    "test_run_platformio_cli_sets_environment_variables"
    # Expects a full git clone
@@ -190,7 +195,7 @@ python.pkgs.buildPythonApplication rec {
  };

  meta = {
    changelog = "https://github.com/esphome/esphome/releases/tag/${version}";
    changelog = "https://github.com/esphome/esphome/releases/tag/${finalAttrs.src.tag}";
    description = "Make creating custom firmwares for ESP32/ESP8266 super easy";
    homepage = "https://esphome.io/";
    license = with lib.licenses; [
@@ -201,7 +206,8 @@ python.pkgs.buildPythonApplication rec {
      hexa
      picnoir
      thanegill
      karlbeecken
    ];
    mainProgram = "esphome";
  };
}
})
+13 −0
Original line number Diff line number Diff line
diff --git a/esphome/platformio_api.py b/esphome/platformio_api.py
index fc21977f..e5059f1d 100644
--- a/esphome/platformio_api.py
+++ b/esphome/platformio_api.py
@@ -63,7 +63,7 @@ def run_platformio_cli(*args, **kwargs) -> str | int:
     os.environ.setdefault("PYTHONWARNINGS", "ignore::SyntaxWarning")
     # Increase uv retry count to handle transient network errors (default is 3)
     os.environ.setdefault("UV_HTTP_RETRIES", "10")
-    cmd = [sys.executable, "-m", "esphome.platformio_runner"] + list(args)
+    cmd = ["platformio"] + list(args)

     return run_external_process(*cmd, **kwargs)