blob: 05beb65a21e67d5a0fdc7a33de0bee3dd431b155 (
plain)
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
inputs:
{
pkgs,
...
}:
let
inherit (pkgs.unstable)
clang
clang-tools
;
in
{
imports = [
(import ./development/adb.nix inputs)
(import ./development/latex.nix inputs)
(import ./development/nixvim-dev.nix inputs)
];
users.extraUsers.minijackson.packages =
[
pkgs.git-branchless
]
++ (with pkgs.unstable; [
bintools
clang
clang-tools
delta
diffoscopeMinimal
difftastic
elixir
gcc
gdb
graphviz
hyperfine
man-pages
nix-output-monitor
rr
watchexec
xh
gh
git-absorb
gitoxide
shfmt
taplo
# Rust dev
bacon
rustup
lldb
# Python
python3Packages.ipython
ruff
uv
neovide
typst
# Nix
deadnix
nil
nix-init
nixpkgs-fmt
nixpkgs-hammering
nurl
statix
superhtml
# TODO: add global vale config
vale
# dependencies for vale on RST
docutils
python3
]);
programs.zsh.interactiveShellInit = ''
(( $+commands[rustc] )) && fpath+="$(rustc --print sysroot)/share/zsh/site-functions"
source ${../../dotfiles/git-branchless.zsh}
'';
programs.liboping.enable = true;
documentation.dev.enable = true;
boot.kernel.sysctl = {
# For RR
"kernel.perf_event_paranoid" = 1;
};
home-manager.users.minijackson =
{ config, ... }:
{
home.shellAliases.git = "git-branchless wrap --";
home.file.".clang-format".source = (pkgs.formats.yaml { }).generate "clang-format.yml" {
BasedOnStyle = "Mozilla";
ColumnLimit = 100;
TabWidth = 4;
IndentWidth = 4;
UseTab = "ForIndentation";
AlignAfterOpenBracket = "AlwaysBreak";
AccessModifierOffset = -4;
AlwaysBreakAfterDefinitionReturnType = "None";
AlwaysBreakAfterReturnType = "None";
AlwaysBreakTemplateDeclarations = true;
BinPackArguments = false;
BinPackParameters = false;
BreakConstructorInitializers = "BeforeComma";
Cpp11BracedListStyle = true;
DerivePointerAlignment = false;
NamespaceIndentation = "Inner";
PenaltyBreakBeforeFirstCallParameter = 2;
PointerAlignment = "Left";
Standard = "Latest";
};
programs.direnv = {
enable = true;
enableBashIntegration = true;
enableZshIntegration = true;
nix-direnv.enable = true;
};
home.sessionVariables = {
MIX_XDG = "1";
RUSTUP_HOME = "${config.xdg.dataHome}/rustup";
CARGO_HOME = "${config.xdg.dataHome}/cargo";
RUFF_CACHE_DIR = "${config.xdg.cacheHome}/ruff";
PYTHONPYCACHEPREFIX = "${config.xdg.cacheHome}/python";
PYTHONUSERBASE = "${config.xdg.dataHome}/python";
_JAVA_OPTIONS = "-Djava.util.prefs.userRoot=${config.xdg.configHome}/java";
};
};
nixpkgs.overlays = [
(self: super: {
inherit (self.unstable) nix-direnv direnv;
})
];
}
|