From fda5a9ce1a999080964bd6a99e275f1ddc60530a Mon Sep 17 00:00:00 2001 From: Cody Cutrer Date: Wed, 27 Aug 2025 01:19:48 -0600 Subject: [PATCH] [mqtt.homeassistant] Fix python packages path on Windows (#19249) So explicitly add the *nix-style path to the syspath, so that even on Windows the installed packages can be found. Signed-off-by: Cody Cutrer --- .../homeassistant/internal/HomeAssistantPythonBridge.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/bundles/org.openhab.binding.mqtt.homeassistant/src/main/java/org/openhab/binding/mqtt/homeassistant/internal/HomeAssistantPythonBridge.java b/bundles/org.openhab.binding.mqtt.homeassistant/src/main/java/org/openhab/binding/mqtt/homeassistant/internal/HomeAssistantPythonBridge.java index b1e30788e6..056631560d 100644 --- a/bundles/org.openhab.binding.mqtt.homeassistant/src/main/java/org/openhab/binding/mqtt/homeassistant/internal/HomeAssistantPythonBridge.java +++ b/bundles/org.openhab.binding.mqtt.homeassistant/src/main/java/org/openhab/binding/mqtt/homeassistant/internal/HomeAssistantPythonBridge.java @@ -60,6 +60,14 @@ public class HomeAssistantPythonBridge { context.eval(PYTHON, """ + # we need to set up the path just like it would have been set up on Linux, even if we're + # on Windows + import os + import sys + + if os.sep != '/': + sys.path.append(os.path.join(sys.prefix, "lib", "python%d.%d" % sys.version_info[:2], "site-packages")) + from homeassistant.helpers.template import Template from homeassistant.components.mqtt.models import MqttCommandTemplate, MqttValueTemplate from homeassistant.components.mqtt.discovery import process_discovery_config