diff --git a/modules/services/xcape.nix b/modules/services/xcape.nix index 6b29d26e..72b8303b 100644 --- a/modules/services/xcape.nix +++ b/modules/services/xcape.nix @@ -59,11 +59,16 @@ in { ]; systemd.user.services.xcape = { - Unit = { - Description = "xcape"; - After = [ "graphical-session-pre.target" ]; - PartOf = [ "graphical-session.target" ]; - }; + Unit = mkMerge [ + { + Description = "xcape"; + After = [ "graphical-session-pre.target" ]; + PartOf = [ "graphical-session.target" ]; + } + (mkIf (config.home.keyboard != null && config.home.keyboard != { }) { + After = [ "graphical-session-pre.target" "setxkbmap.service" ]; + }) + ]; Service = { Type = "forking";