From 74b38179ac0820af3ea4a240ff12668fb2b8c72e Mon Sep 17 00:00:00 2001 From: Ben Brown Date: Wed, 1 Jul 2026 20:00:45 +0100 Subject: [PATCH] kanshi: Reload on config change --- modules/services/kanshi.nix | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/services/kanshi.nix b/modules/services/kanshi.nix index c9cf6ca5e..dd5714de8 100644 --- a/modules/services/kanshi.nix +++ b/modules/services/kanshi.nix @@ -16,6 +16,8 @@ let cfg = config.services.kanshi; + configPath = "kanshi/config"; + directivesTag = types.attrTag { profile = mkOption { type = profileModule; @@ -346,7 +348,7 @@ in { home.packages = [ cfg.package ]; - xdg.configFile."kanshi/config" = + xdg.configFile.${configPath} = let generatedConfigStr = if cfg.profiles == { } && cfg.extraConfig == "" then directivesStr else oldDirectivesStr; @@ -361,11 +363,15 @@ in PartOf = cfg.systemdTarget; Requires = cfg.systemdTarget; After = cfg.systemdTarget; + X-Reload-Triggers = lib.mkIf (cfg.settings != { }) [ + "${config.xdg.configFile.${configPath}.source}" + ]; }; Service = { Type = "simple"; ExecStart = "${cfg.package}/bin/kanshi"; + ExecReload = "${lib.getExe' cfg.package "kanshictl"} reload"; Restart = "always"; };