Files
dot/modules/home/pi.nix
2026-07-30 08:52:36 +02:00

28 lines
824 B
Nix

{ config, lib, ... }:
let
cfg = config.dot.llm.pi;
piPath = "${config.dot.dotfilesPath}/modules/pi/agent";
piWorkMode = config.dot.llm.pi.workMode or false;
in
{
options.dot.llm.pi = {
enableConfig = lib.mkEnableOption "managed pi coding agent configuration" // {
default = true;
};
};
config = lib.mkIf cfg.enableConfig {
home.file = {
".pi/agent/settings.json".source =
config.lib.file.mkOutOfStoreSymlink
"${piPath}/${if piWorkMode then "settings.work" else "settings.home"}.json";
".pi/agent/extensions".source =
config.lib.file.mkOutOfStoreSymlink "${piPath}/extensions-common";
} // lib.optionalAttrs piWorkMode {
".pi/agent/extensions-work".source =
config.lib.file.mkOutOfStoreSymlink "${piPath}/extensions-work";
};
};
}