Dotfiles using Home Manager.
1{ ... }:
2{
3 programs.git = {
4 enable = true;
5 # lfs.enable = true;
6 settings = {
7 user = {
8 name = "Lemuel DLS";
9 email = "noreply@git.lemueldls.dev";
10 };
11 commit.gpgSign = true;
12 safe.directory = "/opt/flutter";
13 gpg.format = "ssh";
14 merge.ff = true;
15 init.defaultBranch = "main";
16 core = {
17 editor = "helix";
18 compression = 9;
19 whitespace = "error";
20 preloadindex = true;
21 };
22 advice = {
23 addEmptyPathspec = false;
24 pushNonFastForward = false;
25 statusHints = false;
26 };
27 status = {
28 branch = true;
29 showStash = true;
30 showUntrackedFiles = "all";
31 };
32 diff = {
33 context = 3;
34 renames = "copies";
35 interHunkContext = 10;
36 };
37 interactive = {
38 singlekey = true;
39 };
40 push = {
41 autoSetupRemote = true;
42 default = "current";
43 followTags = true;
44 };
45 pull = {
46 default = "current";
47 rebase = false;
48 };
49 rebase = {
50 autoStash = true;
51 missingCommitsCheck = "warn";
52 };
53 log = {
54 abbrevCommit = true;
55 graphColors = "blue,yellow,cyan,magenta,green,red";
56 };
57 "color \"decorate\"" = {
58 HEAD = "red";
59 branch = "blue";
60 tag = "green";
61 remoteBranch = "magenta";
62 };
63 "color \"branch\"" = {
64 current = "magenta";
65 local = "default";
66 remote = "yellow";
67 upstream = "green";
68 plain = "blue";
69 };
70 # branch.sort = "-commiterdate";
71 tag = {
72 gpgsign = true;
73 # sort = "-taggerdate";
74 };
75 pager = {
76 branch = false;
77 tag = false;
78 };
79 };
80 };
81}