+1
-1
darwin/home.nix
+1
-1
darwin/home.nix
+22
-97
flake.lock
+22
-97
flake.lock
···
37
37
"type": "github"
38
38
}
39
39
},
40
-
"crane_2": {
41
-
"locked": {
42
-
"lastModified": 1742394900,
43
-
"narHash": "sha256-vVOAp9ahvnU+fQoKd4SEXB2JG2wbENkpqcwlkIXgUC0=",
44
-
"owner": "ipetkov",
45
-
"repo": "crane",
46
-
"rev": "70947c1908108c0c551ddfd73d4f750ff2ea67cd",
47
-
"type": "github"
48
-
},
49
-
"original": {
50
-
"owner": "ipetkov",
51
-
"repo": "crane",
52
-
"type": "github"
53
-
}
54
-
},
55
40
"darwin": {
56
41
"inputs": {
57
42
"nixpkgs": [
58
-
"nixpkgs"
43
+
"nixpkgs-stable"
59
44
]
60
45
},
61
46
"locked": {
62
-
"lastModified": 1747494142,
63
-
"narHash": "sha256-7TAUwDVZWq82t/x3+zZ5y+Tjl2hLL2c8+8pv9zCUbTo=",
47
+
"lastModified": 1749744770,
48
+
"narHash": "sha256-MEM9XXHgBF/Cyv1RES1t6gqAX7/tvayBC1r/KPyK1ls=",
64
49
"owner": "lnl7",
65
50
"repo": "nix-darwin",
66
-
"rev": "8e251e45346e9d58e0eece2512e40c183f967e8f",
51
+
"rev": "536f951efb1ccda9b968e3c9dee39fbeb6d3fdeb",
67
52
"type": "github"
68
53
},
69
54
"original": {
70
55
"owner": "lnl7",
71
-
"ref": "master",
56
+
"ref": "nix-darwin-25.05",
72
57
"repo": "nix-darwin",
73
58
"type": "github"
74
59
}
75
60
},
76
-
"flake-compat": {
77
-
"locked": {
78
-
"lastModified": 1733328505,
79
-
"narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=",
80
-
"owner": "edolstra",
81
-
"repo": "flake-compat",
82
-
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
83
-
"type": "github"
84
-
},
85
-
"original": {
86
-
"owner": "edolstra",
87
-
"repo": "flake-compat",
88
-
"type": "github"
89
-
}
90
-
},
91
61
"home-manager": {
92
62
"inputs": {
93
63
"nixpkgs": [
···
95
65
]
96
66
},
97
67
"locked": {
98
-
"lastModified": 1747439237,
99
-
"narHash": "sha256-5rCGrnkglKKj4cav1U3HC+SIUNJh08pqOK4spQv9RjA=",
68
+
"lastModified": 1750654717,
69
+
"narHash": "sha256-YXlhTUGaLAY1rSosaRXO5RSGriEyF9BGdLkpKV+9jyI=",
100
70
"owner": "nix-community",
101
71
"repo": "home-manager",
102
-
"rev": "ae755329092c87369b9e9a1510a8cf1ce2b1c708",
72
+
"rev": "4c9e99e8e8e36bcdfa9cdb102e45e4dc95aa5c5b",
103
73
"type": "github"
104
74
},
105
75
"original": {
···
133
103
},
134
104
"nixos-hardware": {
135
105
"locked": {
136
-
"lastModified": 1747129300,
137
-
"narHash": "sha256-L3clA5YGeYCF47ghsI7Tcex+DnaaN/BbQ4dR2wzoiKg=",
106
+
"lastModified": 1750431636,
107
+
"narHash": "sha256-vnzzBDbCGvInmfn2ijC4HsIY/3W1CWbwS/YQoFgdgPg=",
138
108
"owner": "nixos",
139
109
"repo": "nixos-hardware",
140
-
"rev": "e81fd167b33121269149c57806599045fd33eeed",
110
+
"rev": "1552a9f4513f3f0ceedcf90320e48d3d47165712",
141
111
"type": "github"
142
112
},
143
113
"original": {
···
148
118
},
149
119
"nixpkgs": {
150
120
"locked": {
151
-
"lastModified": 1747327360,
152
-
"narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=",
121
+
"lastModified": 1750506804,
122
+
"narHash": "sha256-VLFNc4egNjovYVxDGyBYTrvVCgDYgENp5bVi9fPTDYc=",
153
123
"owner": "NixOS",
154
124
"repo": "nixpkgs",
155
-
"rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46",
125
+
"rev": "4206c4cb56751df534751b058295ea61357bbbaa",
156
126
"type": "github"
157
127
},
158
128
"original": {
···
164
134
},
165
135
"nixpkgs-master": {
166
136
"locked": {
167
-
"lastModified": 1747517186,
168
-
"narHash": "sha256-ESuD8SaqgysQQ5wW3H49egueDyT4h2jhCM84WcPOCMQ=",
137
+
"lastModified": 1750680047,
138
+
"narHash": "sha256-Wy8PNgpFr6FwdSwmYu5PnnU2ed+TyMN6c37r8pM985k=",
169
139
"owner": "NixOS",
170
140
"repo": "nixpkgs",
171
-
"rev": "9f65f287d309c02a57c7a2b0ce26c6cf46dc3149",
141
+
"rev": "eeab26971f913ba86193d6cba38d9688a4d94ed8",
172
142
"type": "github"
173
143
},
174
144
"original": {
···
180
150
},
181
151
"nixpkgs-stable": {
182
152
"locked": {
183
-
"lastModified": 1747335874,
184
-
"narHash": "sha256-IKKIXTSYJMmUtE+Kav5Rob8SgLPnfnq4Qu8LyT4gdqQ=",
153
+
"lastModified": 1750400657,
154
+
"narHash": "sha256-3vkjFnxCOP6vm5Pm13wC/Zy6/VYgei/I/2DWgW4RFeA=",
185
155
"owner": "NixOS",
186
156
"repo": "nixpkgs",
187
-
"rev": "ba8b70ee098bc5654c459d6a95dfc498b91ff858",
157
+
"rev": "b2485d56967598da068b5a6946dadda8bfcbcd37",
188
158
"type": "github"
189
159
},
190
160
"original": {
191
161
"owner": "NixOS",
192
-
"ref": "nixos-24.11",
162
+
"ref": "nixos-25.05",
193
163
"repo": "nixpkgs",
194
164
"type": "github"
195
165
}
···
224
194
"nixpkgs": "nixpkgs",
225
195
"nixpkgs-master": "nixpkgs-master",
226
196
"nixpkgs-stable": "nixpkgs-stable",
227
-
"prompt": "prompt",
228
-
"zed": "zed"
229
-
}
230
-
},
231
-
"rust-overlay": {
232
-
"inputs": {
233
-
"nixpkgs": [
234
-
"zed",
235
-
"nixpkgs"
236
-
]
237
-
},
238
-
"locked": {
239
-
"lastModified": 1747363019,
240
-
"narHash": "sha256-N4dwkRBmpOosa4gfFkFf/LTD8oOcNkAyvZ07JvRDEf0=",
241
-
"owner": "oxalica",
242
-
"repo": "rust-overlay",
243
-
"rev": "0e624f2b1972a34be1a9b35290ed18ea4b419b6f",
244
-
"type": "github"
245
-
},
246
-
"original": {
247
-
"owner": "oxalica",
248
-
"repo": "rust-overlay",
249
-
"type": "github"
197
+
"prompt": "prompt"
250
198
}
251
199
},
252
200
"systems": {
···
261
209
"original": {
262
210
"owner": "nix-systems",
263
211
"repo": "default",
264
-
"type": "github"
265
-
}
266
-
},
267
-
"zed": {
268
-
"inputs": {
269
-
"crane": "crane_2",
270
-
"flake-compat": "flake-compat",
271
-
"nixpkgs": [
272
-
"nixpkgs"
273
-
],
274
-
"rust-overlay": "rust-overlay"
275
-
},
276
-
"locked": {
277
-
"lastModified": 1747508752,
278
-
"narHash": "sha256-RlZKLttv4fTa4AcwYbcrJjeVUHVV9Up8ek7PL/FGtnI=",
279
-
"owner": "zed-industries",
280
-
"repo": "zed",
281
-
"rev": "230eb12f7220aea21733a259b670201bc79c7020",
282
-
"type": "github"
283
-
},
284
-
"original": {
285
-
"owner": "zed-industries",
286
-
"repo": "zed",
287
212
"type": "github"
288
213
}
289
214
}
+4
-10
flake.nix
+4
-10
flake.nix
···
3
3
4
4
inputs = {
5
5
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6
-
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-24.11";
6
+
nixpkgs-stable.url = "github:NixOS/nixpkgs/nixos-25.05";
7
7
nixpkgs-master.url = "github:NixOS/nixpkgs/master";
8
8
9
9
···
15
15
};
16
16
17
17
darwin = {
18
-
url = "github:lnl7/nix-darwin/master";
19
-
inputs.nixpkgs.follows = "nixpkgs";
18
+
url = "github:lnl7/nix-darwin/nix-darwin-25.05";
19
+
inputs.nixpkgs.follows = "nixpkgs-stable";
20
20
};
21
21
22
22
prompt = {
···
29
29
url = "github:MercuryTechnologies/nix-your-shell";
30
30
inputs.nixpkgs.follows = "nixpkgs";
31
31
};
32
-
33
-
zed = {
34
-
url = "github:zed-industries/zed";
35
-
inputs.nixpkgs.follows = "nixpkgs";
36
-
};
37
32
};
38
33
39
34
outputs =
···
44
39
, nix-your-shell
45
40
, home-manager
46
41
, prompt
47
-
, # zed,
48
-
darwin
42
+
, darwin
49
43
, ...
50
44
}@inputs:
51
45
+5
-7
hosts/kvothe/configuration.nix
+5
-7
hosts/kvothe/configuration.nix
···
9
9
fish.enable = true;
10
10
};
11
11
12
-
services = {
13
-
tailscale = {
14
-
enable = true;
15
-
};
16
-
};
17
-
18
12
environment = {
19
13
variables = {
20
14
EDITOR = "nvim";
···
82
76
cleanup = "uninstall";
83
77
upgrade = true;
84
78
};
79
+
masApps = {
80
+
"Tailscale" = 1475387142;
81
+
};
85
82
casks = [
86
83
"orion"
87
84
"karabiner-elements"
88
85
"halloy"
89
-
"zed"
90
86
"raycast"
91
87
"signal@beta"
92
88
"zen"
89
+
"ghostty"
90
+
"zed"
93
91
];
94
92
};
95
93
}
+1
programs/common.nix
+1
programs/common.nix
-51
programs/ghostty.nix
-51
programs/ghostty.nix
···
1
-
{ config
2
-
, pkgs
3
-
, lib
4
-
, ...
5
-
}:
6
-
7
-
{
8
-
programs.ghostty = {
9
-
enable = true;
10
-
enableFishIntegration = true;
11
-
settings = {
12
-
term = "xterm-256color";
13
-
font-family = "SF Mono";
14
-
font-size = 12.0;
15
-
window-padding-x = 10;
16
-
window-padding-y = 10;
17
-
window-padding-balance = true;
18
-
window-theme = "ghostty";
19
-
theme = "icy";
20
-
adjust-cell-height = 10;
21
-
};
22
-
23
-
themes = {
24
-
icy = {
25
-
background = "f4f4f4";
26
-
foreground = "676767";
27
-
cursor-color = "676767"; # Fallback to foreground
28
-
selection-background = "aaaaaa";
29
-
selection-foreground = "525252";
30
-
palette = [
31
-
"0=f4f4f4" # Black (Normal)
32
-
"1=db7070" # Red (Normal)
33
-
"2=7c9f4b" # Green (Normal)
34
-
"3=d69822" # Yellow (Normal)
35
-
"4=6587bf" # Blue (Normal)
36
-
"5=b870ce" # Magenta (Normal)
37
-
"6=509c93" # Cyan (Normal)
38
-
"7=676767" # White (Normal)
39
-
"8=aaaaaa" # Black (Bright)
40
-
"9=c66666" # Red (Bright)
41
-
"10=6d8b42" # Green (Bright)
42
-
"11=e7e7e7" # Yellow (Bright)
43
-
"12=8a8a8a" # Blue (Bright)
44
-
"13=a262b5" # Magenta (Bright)
45
-
"14=43827b" # Cyan (Bright)
46
-
"15=525252" # White (Bright)
47
-
];
48
-
};
49
-
};
50
-
};
51
-
}
+69
programs/ghostty/config.nix
+69
programs/ghostty/config.nix
···
1
+
{ pkgs, ... }:
2
+
{
3
+
settings = {
4
+
term = "xterm-256color";
5
+
font-family = "SF Mono";
6
+
font-size = 12.0;
7
+
window-padding-x = 10;
8
+
window-padding-y = 10;
9
+
window-padding-balance = true;
10
+
window-theme = "ghostty";
11
+
theme = "light:icy_light,dark:icy_dusk";
12
+
adjust-cell-height = 10;
13
+
macos-option-as-alt = "left";
14
+
};
15
+
16
+
themes = {
17
+
icy_dusk = {
18
+
background = "100f0f";
19
+
foreground = "fff6e3";
20
+
cursor-color = "509c93";
21
+
selection-background = "509c93";
22
+
selection-foreground = "fff6e3";
23
+
palette = [
24
+
"0=2a261f" # Black (Normal)
25
+
"1=db7070" # Red (Normal)
26
+
"2=7c9f4b" # Green (Normal)
27
+
"3=d69822" # Yellow (Normal)
28
+
"4=509c93" # Blue (Normal)
29
+
"5=b870ce" # Magenta (Normal)
30
+
"6=509c93" # Cyan (Normal)
31
+
"7=fff6e3" # White (Normal)
32
+
"8=4a443d" # Black (Bright)
33
+
"9=c66666" # Red (Bright)
34
+
"10=6d8b42" # Green (Bright)
35
+
"11=4a443d" # Yellow (Bright)
36
+
"12=6b635a" # Blue (Bright)
37
+
"13=a262b5" # Magenta (Bright)
38
+
"14=43827b" # Cyan (Bright)
39
+
"15=fff9eb" # White (Bright)
40
+
];
41
+
};
42
+
43
+
icy_light = {
44
+
background = "fffdf5";
45
+
foreground = "4a443d";
46
+
cursor-color = "509c93";
47
+
selection-background = "fceccc";
48
+
selection-foreground = "4a443d";
49
+
palette = [
50
+
"0=4a443d" # Black (Normal)
51
+
"1=db7070" # Red (Normal)
52
+
"2=7c9f4b" # Green (Normal)
53
+
"3=d69822" # Yellow (Normal)
54
+
"4=6587bf" # Blue (Normal)
55
+
"5=b870ce" # Magenta (Normal)
56
+
"6=509c93" # Cyan (Normal)
57
+
"7=fffdf5" # White (Normal)
58
+
"8=776e63" # Black (Bright)
59
+
"9=c66666" # Red (Bright)
60
+
"10=6d8b42" # Green (Bright)
61
+
"11=d8cbbe" # Yellow (Bright)
62
+
"12=6587bf" # Blue (Bright)
63
+
"13=a262b5" # Magenta (Bright)
64
+
"14=43827b" # Cyan (Bright)
65
+
"15=2a261f" # White (Bright)
66
+
];
67
+
};
68
+
};
69
+
}
+33
programs/ghostty/default.nix
+33
programs/ghostty/default.nix
···
1
+
{ config
2
+
, pkgs
3
+
, lib
4
+
, ...
5
+
}:
6
+
7
+
let
8
+
config = import ./config.nix { inherit pkgs; };
9
+
keyValue = pkgs.formats.keyValue {
10
+
listsAsDuplicateKeys = true;
11
+
mkKeyValue = lib.generators.mkKeyValueDefault { } " = ";
12
+
};
13
+
14
+
isLinux = pkgs.stdenv.isLinux;
15
+
isDarwin = pkgs.stdenv.isDarwin;
16
+
in
17
+
{
18
+
programs.ghostty = lib.mkIf isLinux {
19
+
enable = true;
20
+
enableFishIntegration = true;
21
+
settings = config.settings;
22
+
themes = config.themes;
23
+
};
24
+
25
+
home.file = lib.mkIf isDarwin {
26
+
".config/ghostty/config".source =
27
+
keyValue.generate "ghostty-config" config.settings;
28
+
".config/ghostty/themes/icy_light".source =
29
+
keyValue.generate "ghostty-icy_light-theme" config.themes.icy_light;
30
+
".config/ghostty/themes/icy_dusk".source =
31
+
keyValue.generate "ghostty-icy_dusk-theme" config.themes.icy_dusk;
32
+
};
33
+
}
+3
programs/ssh.nix
+3
programs/ssh.nix
+5
-5
programs/tmux.nix
+5
-5
programs/tmux.nix
···
57
57
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "wl-copy"
58
58
bind-key -T copy-mode-vi v send-keys -X begin-selection
59
59
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "wl-copy"
60
-
bind-key -T copy-mode-vi r send-keys -X rectangle-toggle
60
+
bind-key -T copy-mode-vi r send-keys -X rectangle-togglost
61
61
bind P paste-buffer
62
62
63
63
# pop-up pane to open urls
···
79
79
set -g status-justify right
80
80
set -g status-right ""
81
81
set -g status-left ""
82
-
set -g status-style "bg=colour0"
83
-
set -ag status-style "fg=colour7"
82
+
set -g status-style "bg=color7"
83
+
set -ag status-style "fg=color0"
84
84
85
85
set -g window-status-current-format "#[fg=colour15] #W"
86
86
set -g window-status-format "#[fg=colour8] #W"
···
88
88
set -g status-left-length 100
89
89
90
90
# dim inactive pane
91
-
set -g window-style 'fg=color8,bg=default'
92
-
set -g window-active-style 'fg=color7,bg=default'
91
+
# set -g window-style 'fg=color8,bg=default'
92
+
# set -g window-active-style 'fg=color7,bg=default'
93
93
94
94
set -g default-terminal "xterm-256color"
95
95
set -ga terminal-overrides ',xterm-256color:Tc'
+3
-4
programs/zed/settings.nix
+3
-4
programs/zed/settings.nix
···
72
72
notification_panel = {
73
73
button = false;
74
74
};
75
-
assistant = {
75
+
agent = {
76
76
default_model = {
77
-
provider = "zed.dev";
78
-
model = "claude-3-7-sonnet-latest";
77
+
provider = "anthropic";
78
+
model = "claude-4-sonnet";
79
79
};
80
80
version = "2";
81
-
enabled = true;
82
81
button = false;
83
82
};
84
83
scrollbar = {