Vic's *Nix config.
1{ vic, ... }:
2{
3 vic.everywhere.includes = [ vic.git ];
4 vic.git.homeManager =
5 { pkgs, ... }:
6 {
7 home.packages = [ pkgs.difftastic ];
8 programs.git = {
9 enable = true;
10 signing.format = "ssh";
11 settings = {
12 user.name = "Victor Borja";
13 user.email = "vborja@apache.org";
14 init.defaultBranch = "main";
15 pull.rebase = true;
16 pager.difftool = true;
17 diff.tool = "difftastic";
18 difftool.prompt = false;
19 difftool.difftastic.cmd = "${pkgs.difftastic}/bin/difft $LOCAL $REMOTE";
20 github.user = "vic";
21 gitlab.user = "vic";
22 core.editor = "vim";
23 alias = {
24 "dff" = "difftool";
25 "fap" = "fetch --all -p";
26 "rm-merged" =
27 "for-each-ref --format '%(refname:short)' refs/heads | grep -v master | xargs git branch -D";
28 "recents" =
29 "for-each-ref --sort=committerdate refs/heads/ --format='%(HEAD) %(color:yellow)%(refname:short)%(color:reset) - %(color:red)%(objectname:short)%(color:reset) - %(contents:subject) - %(authorname) (%(color:green)%(committerdate:relative)%(color:reset))'";
30 };
31 };
32 ignores = [
33 ".DS_Store"
34 "*.swp"
35 ".direnv"
36 ".envrc"
37 ".envrc.local"
38 ".env"
39 ".env.local"
40 ".jj"
41 "devshell.toml"
42 ".tool-versions"
43 "/.github/chatmodes"
44 "/.github/instructions"
45 "/vic"
46 "*.key"
47 "target"
48 "result"
49 "out"
50 "old"
51 "*~"
52 ".aider*"
53 ".crush*"
54 "CRUSH.md"
55 "GEMINI.md"
56 "CLAUDE.md"
57 ];
58 includes = [ ];
59 lfs.enable = true;
60 };
61
62 programs.delta.enable = true;
63 programs.delta.options = {
64 line-numbers = true;
65 side-by-side = false;
66 };
67 };
68}