nixos/roles/home/git.nix
Giulio De Pasquale 4ecc45a4bd feat(git.nix): add ais alias for staged diffs
- Introduced `ais` alias to generate commit messages from staged diffs using `aichat`
- The alias runs `git diff --staged HEAD` and pipes the output to `aichat` with the specified model and request type
2024-12-06 12:02:35 +00:00

23 lines
705 B
Nix

{ pkgs, ... }: {
programs.git = {
enable = true;
userName = "Giulio De Pasquale";
userEmail = "git@depasquale.giugl.io";
extraConfig = {
filter."lfs" = {
process = "git-lfs filter-process";
required = true;
clean = "git-lfs clean -- %f";
smudge = "git-lfs smudge -- %f";
};
};
delta.enable = true;
lfs.enable = true;
aliases = {
ai = ''! cd -- "''${GIT_PREFIX:-.}" && git diff HEAD -- "$@" | aichat -m ollama:pino-coder -r commitmessage #'';
ais = ''! cd -- "''${GIT_PREFIX:-.}" && git diff --staged HEAD -- "$@" | aichat -m ollama:pino-coder -r commitmessage #'';
};
};
home.packages = [ pkgs.git-lfs ];
}