-
Notifications
You must be signed in to change notification settings - Fork 1
/
dev.nix
89 lines (83 loc) · 1.84 KB
/
dev.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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
# Tangled from README.org
# Please modify by editing README.org and re-tangling to generate this nix file.
{ config, lib, pkgs, options, ... }:
{
# Tangling individual dev tools through nix-devtools noweb reference
programs.git = {
enable = true;
userName = "David Asabina";
userEmail = "[email protected]";
lfs.enable = true;
aliases = {
wdiff = "diff --word-diff --word-diff-regex='\\w+'";
glog = "log --oneline --graph --all --decorate";
};
extraConfig = {
init = {
defaultBranch = "main";
};
core = {
editor = "nvim";
};
gpg = {
program = "gpg2";
};
sendemail = {
annotate = true;
smtpServer = "msmtp";
smtpServerOption = "-a vidbina";
};
color = {
ui = true;
diff = {
meta = "yellow bold";
frag = "magenta bold";
old = "red";
new = "green";
};
grep = {
match = "yellow";
filename = "blue";
linenumber = "brightblack";
};
status = {
added = "yellow";
changed = "green";
untracked = "brightblack";
};
};
};
};
# Set global gitignore
home.file = {
".config/git/ignore".source = config.lib.file.mkOutOfStoreSymlink ./git/ignore;
};
home.packages = [
pkgs.gh
pkgs.xxd
pkgs.hexyl
pkgs.ghidra-bin
pkgs.kakoune
pkgs.shellcheck
pkgs.shfmt
pkgs.asciinema
pkgs.exercism
pkgs.html-tidy
pkgs.httpie
pkgs.httplab
pkgs.gdb
pkgs.checkmake
#pkgs.cmakeCurses
pkgs.gnumake
pkgs.gleam
pkgs.nodePackages.typescript-language-server
pkgs.tree-sitter
pkgs.jq
pkgs.yq
pkgs.sqlite-interactive
pkgs.redis
] ++ (if pkgs.stdenv.isLinux then [
pkgs.glibc
pkgs.evemu
] else [ ]);
}