-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathminimal.nix
65 lines (63 loc) · 1.28 KB
/
minimal.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
{ pkgs, ... }:
{
imports = [
./home-manager.nix
];
home.packages = with pkgs; [
nixpkgs-fmt
# standard unix tools
coreutils
diffutils
ed
findutils
gawk
indent
gnused
gnutar
which
gnutls
gnugrep
gzip
gnupatch
less
file
perl
rsync
unzip
];
programs.git = {
enable = true;
includes = [
{ path = "~/.gitlocalconfig"; }
];
delta.enable = true;
ignores = [
"*.sw[op]"
];
aliases = {
co = "checkout";
cob = "checkout -b";
ap = "add -p";
cm = "commit";
cmm = "commit -m";
cma = "commit --amend";
cmane = "commit --amend --no-edit";
d = "diff";
ds = "diff --staged";
puo = "!git push -u origin $(git branch --show-current)";
pf = "push --force-with-lease";
ri = "rebase --interactive --autosquash";
lp = "log -p";
lg = "log --oneline --graph";
lga = "log --oneline --graph --all";
rp = "restore -p";
rsp = "restore --staged -p";
};
extraConfig = {
pull.ff = "only";
diff = { tool = "nvimdiff"; };
merge = { tool = "nvimdiff"; conflictstyle = "diff3"; };
credential = if pkgs.stdenv.isDarwin then { helper = "osxkeychain"; } else { };
};
};
}