This commit is contained in:
Bryan Ramos 2026-04-30 22:58:18 -04:00
parent 0125273b57
commit 9feb01d2d6
2 changed files with 27 additions and 7 deletions

View file

@ -13,12 +13,14 @@ in
vimAlias = true; vimAlias = true;
vimdiffAlias = true; vimdiffAlias = true;
extraPackages = with pkgs; [ extraPackages = with pkgs; [
lazygit gcc
cargo cargo
rustc rustc
gcc
fzf fzf
fd
ripgrep ripgrep
bat
]; ];
}; };

View file

@ -18,21 +18,39 @@ in
home.sessionPath = [ "${npmGlobal}/bin" ]; home.sessionPath = [ "${npmGlobal}/bin" ];
home.file.".pi/agent" = {
source = ./agent;
recursive = true;
};
programs.bash.initExtra = '' programs.bash.initExtra = ''
export LLAMACPP_API_KEY=$(cat /run/secrets/LLAMA_API_KEY) export LLAMACPP_API_KEY=$(cat /run/secrets/LLAMA_API_KEY)
''; '';
home.activation.installPiCodingAgent = lib.hm.dag.entryAfter [ "writeBoundary" ] '' home.activation.installPiCodingAgent = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
PATH="${pkgs.nodejs_20}/bin:$PATH" PATH="${pkgs.nodejs_20}/bin:$PATH"
agentDir="${config.home.homeDirectory}/.pi/agent"
run mkdir -p ${npmGlobal} run mkdir -p ${npmGlobal}
run mkdir -p "${config.home.homeDirectory}/.pi"
run mkdir -p "$agentDir"
if [ -e "$agentDir" ]; then
run chmod -R u+w "$agentDir"
run find "$agentDir" -mindepth 1 -maxdepth 1 -exec rm -rf {} +
fi
run cp -R ${./agent}/. "$agentDir"/
run chmod -R u+w "$agentDir"
if ! run ${pkgs.nodejs_20}/bin/npm install -g --prefix ${npmGlobal} @mariozechner/pi-coding-agent@${piVersion}; then if ! run ${pkgs.nodejs_20}/bin/npm install -g --prefix ${npmGlobal} @mariozechner/pi-coding-agent@${piVersion}; then
warnEcho "pi-coding-agent install failed (offline or registry error)" warnEcho "pi-coding-agent install failed (offline or registry error)"
fi fi
for ext in "$agentDir"/extensions/*; do
if [ -f "$ext/package.json" ]; then
if [ -f "$ext/package-lock.json" ]; then
if ! run ${pkgs.nodejs_20}/bin/npm ci --prefix "$ext"; then
warnEcho "pi extension dependency install failed for $ext"
fi
else
if ! run ${pkgs.nodejs_20}/bin/npm install --prefix "$ext"; then
warnEcho "pi extension dependency install failed for $ext"
fi
fi
fi
done
''; '';
}; };
} }