From 19df2b0eb2f2bbff61410d0455d7359f85caf712 Mon Sep 17 00:00:00 2001 From: David Wronek Date: Wed, 11 Mar 2026 12:12:21 +0100 Subject: [PATCH] nixos/esphome: use %S specifier to find state directory root Signed-off-by: David Wronek --- nixos/modules/services/home-automation/esphome.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/home-automation/esphome.nix b/nixos/modules/services/home-automation/esphome.nix index b308b2ae4eb6..589c566174b5 100644 --- a/nixos/modules/services/home-automation/esphome.nix +++ b/nixos/modules/services/home-automation/esphome.nix @@ -17,7 +17,7 @@ let cfg = config.services.esphome; - stateDir = "/var/lib/esphome"; + stateDir = "esphome"; esphomeParams = if cfg.enableUnixSocket then @@ -114,17 +114,17 @@ in environment = { # platformio fails to determine the home directory when using DynamicUser - PLATFORMIO_CORE_DIR = "${stateDir}/.platformio"; + PLATFORMIO_CORE_DIR = "%S/${stateDir}/.platformio"; } // lib.optionalAttrs cfg.usePing { ESPHOME_DASHBOARD_USE_PING = "true"; } // cfg.environment; serviceConfig = { - ExecStart = "${cfg.package}/bin/esphome dashboard ${esphomeParams} ${stateDir}"; + ExecStart = "${cfg.package}/bin/esphome dashboard ${esphomeParams} %S/${stateDir}"; DynamicUser = true; User = "esphome"; Group = "esphome"; - WorkingDirectory = stateDir; + WorkingDirectory = "%S/${stateDir}"; StateDirectory = "esphome"; StateDirectoryMode = "0750"; Restart = "on-failure";