diff options
Diffstat (limited to 'modules/development/pi-coding-agent')
| -rw-r--r-- | modules/development/pi-coding-agent/assertions.nix | 17 | ||||
| -rw-r--r-- | modules/development/pi-coding-agent/default.nix | 14 |
2 files changed, 28 insertions, 3 deletions
diff --git a/modules/development/pi-coding-agent/assertions.nix b/modules/development/pi-coding-agent/assertions.nix new file mode 100644 index 0000000..aa2e5ba --- /dev/null +++ b/modules/development/pi-coding-agent/assertions.nix @@ -0,0 +1,17 @@ +# Validates pi-coding-agent dependencies +{ config, ... }: +let + cfg = config.development.pi-coding-agent; +in +{ + assertions = [ + { + assertion = !cfg.enable || config.terminal.kitty.enable; + message = '' + development.pi-coding-agent.enable creates a desktop entry using kitty, + but terminal.kitty.enable is not set. + Enable terminal.kitty or disable the desktop entry. + ''; + } + ]; +} diff --git a/modules/development/pi-coding-agent/default.nix b/modules/development/pi-coding-agent/default.nix index e560a98..d3b01fd 100644 --- a/modules/development/pi-coding-agent/default.nix +++ b/modules/development/pi-coding-agent/default.nix @@ -9,6 +9,8 @@ let configDir = "${config.xdg.configHome}/pi"; in { + imports = [ ./assertions.nix ]; + options.development.pi-coding-agent = { enable = lib.mkEnableOption "Pi Coding Agent"; @@ -22,9 +24,15 @@ in config = lib.mkIf cfg.enable { home.file = { - "${configDir}/skills".source = ./skills; - "${configDir}/prompts".source = ./prompts; - "${configDir}/config/pi-subagent".source = ./roles; + "${configDir}/skills" = { + source = ./skills; + }; + "${configDir}/prompts" = { + source = ./prompts; + }; + "${configDir}/config/pi-subagent" = { + source = ./roles; + }; }; programs.pi-coding-agent = { |
