Skip to content

Commit 5742527

Browse files
committed
wip: refactor to snowfall
1 parent 906bd25 commit 5742527

File tree

28 files changed

+703
-367
lines changed

28 files changed

+703
-367
lines changed

flake.nix

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
inputs = {
33
flake-parts.url = "github:hercules-ci/flake-parts";
44

5-
# nixpkgs.url = "github:nixos/nixpkgs/7fa1a3c6b3d22f5e53bb765518a749847a25bb65";
65
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
7-
# nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-unstable";
86

97
snowfall-lib = {
108
url = "github:snowfallorg/lib";
@@ -44,7 +42,6 @@
4442
stylix.inputs.nixpkgs.follows = "nixpkgs";
4543

4644
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
47-
# chaotic.url = "github:chaotic-cx/nyx/b1ecb501161bae54fbc9fd27200bd34d40c4a47a";
4845
chaotic.inputs.nixpkgs.follows = "nixpkgs";
4946

5047
nur.url = "github:nix-community/NUR";
@@ -54,12 +51,13 @@
5451
xremap.url = "github:xremap/nix-flake";
5552
xremap.inputs.nixpkgs.follows = "nixpkgs";
5653

57-
# nixvim.url = "github:nix-community/nixvim";
58-
# nixvim.inputs.nixpkgs.follows = "nixpkgs";
59-
60-
nixvim.url = "github:kid/nixvim";
61-
nixvim.inputs.nixpkgs.follows = "nixpkgs";
62-
nixvim.inputs.flake-parts.follows = "flake-parts";
54+
nixvim = {
55+
url = "github:kid/nixvim";
56+
inputs = {
57+
nixpkgs.follows = "nixpkgs";
58+
flake-parts.follows = "flake-parts";
59+
};
60+
};
6361

6462
plasma-manager = {
6563
url = "github:pjones/plasma-manager/trunk";

hosts/nixos.nix

Lines changed: 107 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -104,11 +104,6 @@ in
104104
};
105105
};
106106

107-
services.scx = {
108-
enable = true;
109-
scheduler = "scx_lavd";
110-
};
111-
112107
powerManagement = {
113108
enable = true;
114109
cpuFreqGovernor = "schedutil";
@@ -121,54 +116,56 @@ in
121116
};
122117
# mesa-git.enable = true;
123118
};
119+
fileSystems = {
120+
121+
# services.xserver.xrandrHeads = [
122+
# {
123+
# output = "HDMI-1";
124+
# monitorConfig = ''Option "Enable" "false"'';
125+
# }
126+
# {
127+
# output = "DP-3";
128+
# primary = true;
129+
# }
130+
# ];
131+
#
132+
# programs.steam.gamescopeSession.args = [ "-O" "DP-3" "-r" "138" ];
133+
134+
"/" = {
135+
device = "rpool/SYSTEM/root";
136+
fsType = "zfs";
137+
options = [ "zfsutil" ];
138+
neededForBoot = true;
139+
};
124140

125-
# services.xserver.xrandrHeads = [
126-
# {
127-
# output = "HDMI-1";
128-
# monitorConfig = ''Option "Enable" "false"'';
129-
# }
130-
# {
131-
# output = "DP-3";
132-
# primary = true;
133-
# }
134-
# ];
135-
#
136-
# programs.steam.gamescopeSession.args = [ "-O" "DP-3" "-r" "138" ];
137-
138-
fileSystems."/" = {
139-
device = "rpool/SYSTEM/root";
140-
fsType = "zfs";
141-
options = [ "zfsutil" ];
142-
neededForBoot = true;
143-
};
144-
145-
fileSystems."/var" = {
146-
device = "rpool/SYSTEM/var";
147-
fsType = "zfs";
148-
options = [ "zfsutil" ];
149-
neededForBoot = true;
150-
};
141+
"/var" = {
142+
device = "rpool/SYSTEM/var";
143+
fsType = "zfs";
144+
options = [ "zfsutil" ];
145+
neededForBoot = true;
146+
};
151147

152-
fileSystems."/nix" = {
153-
device = "rpool/LOCAL/nix";
154-
fsType = "zfs";
155-
options = [ "zfsutil" ];
156-
};
148+
"/nix" = {
149+
device = "rpool/LOCAL/nix";
150+
fsType = "zfs";
151+
options = [ "zfsutil" ];
152+
};
157153

158-
fileSystems."/home" = {
159-
device = "rpool/USER/home";
160-
fsType = "zfs";
161-
options = [ "zfsutil" ];
162-
};
154+
"/home" = {
155+
device = "rpool/USER/home";
156+
fsType = "zfs";
157+
options = [ "zfsutil" ];
158+
};
163159

164-
fileSystems."/boot" = {
165-
device = "/dev/disk/by-label/EFI";
166-
fsType = "vfat";
167-
};
160+
"/boot" = {
161+
device = "/dev/disk/by-label/EFI";
162+
fsType = "vfat";
163+
};
168164

169-
fileSystems."/var/lib/docker" = {
170-
device = "/dev/zvol/rpool/docker";
171-
fsType = "ext4";
165+
"/var/lib/docker" = {
166+
device = "/dev/zvol/rpool/docker";
167+
fsType = "ext4";
168+
};
172169
};
173170

174171
swapDevices = [ { device = "/dev/disk/by-label/swap"; } ];
@@ -191,17 +188,19 @@ in
191188
interface = "enp16s0";
192189
};
193190
};
194-
interfaces.enp16s0.useDHCP = true;
195-
interfaces.adm.useDHCP = true;
196-
interfaces.lab.useDHCP = true;
197-
interfaces.labadm = {
198-
useDHCP = false;
199-
ipv4.addresses = [
200-
{
201-
address = "10.1.99.10";
202-
prefixLength = 24;
203-
}
204-
];
191+
interfaces = {
192+
enp16s0.useDHCP = true;
193+
adm.useDHCP = true;
194+
lab.useDHCP = true;
195+
labadm = {
196+
useDHCP = false;
197+
ipv4.addresses = [
198+
{
199+
address = "10.1.99.10";
200+
prefixLength = 24;
201+
}
202+
];
203+
};
205204
};
206205
firewall.enable = false;
207206
};
@@ -215,65 +214,72 @@ in
215214
# };
216215

217216
systemd.network = {
218-
networks."40-adm" = {
219-
name = "adm";
220-
dhcpV4Config = {
221-
RouteMetric = 2048;
217+
networks = {
218+
"40-adm" = {
219+
name = "adm";
220+
dhcpV4Config = {
221+
RouteMetric = 2048;
222+
};
222223
};
223-
};
224-
networks."40-lab" = {
225-
name = "lab";
226-
dhcpV4Config = {
227-
RouteMetric = 4096;
224+
"40-lab" = {
225+
name = "lab";
226+
dhcpV4Config = {
227+
RouteMetric = 4096;
228+
};
229+
linkConfig.RequiredForOnline = "no";
228230
};
229-
linkConfig.RequiredForOnline = "no";
230-
};
231-
networks."40-labadm" = {
232-
name = "labadm";
233-
dhcpV4Config = {
234-
RouteMetric = 4096;
231+
"40-labadm" = {
232+
name = "labadm";
233+
dhcpV4Config = {
234+
RouteMetric = 4096;
235+
};
236+
linkConfig.RequiredForOnline = "no";
235237
};
236-
linkConfig.RequiredForOnline = "no";
237238
};
238239
};
239240

240-
services.resolved = {
241-
enable = true;
242-
dnssec = "false";
243-
extraConfig = ''
244-
DNSStubListener=no
245-
'';
246-
};
247-
248-
# services.xserver.videoDrivers = ["amdgpu"];
249-
services.xserver.videoDrivers = [
250-
"modesetting"
251-
"amdgpu"
252-
];
253-
254-
hardware.graphics = {
255-
enable = true;
256-
extraPackages = with pkgs; [ amdvlk ];
241+
services = {
242+
resolved = {
243+
enable = true;
244+
dnssec = "false";
245+
extraConfig = ''
246+
DNSStubListener=no
247+
'';
248+
};
257249

258-
enable32Bit = true;
259-
extraPackages32 = with pkgs; [ driversi686Linux.amdvlk ];
260-
};
250+
# Custom schedulers for gaming
251+
scx = {
252+
enable = true;
253+
scheduler = "scx_lavd";
254+
};
261255

262-
environment.variables.AMD_VULKAN_ICD = "RADV";
256+
xserver.videoDrivers = [
257+
"modesetting"
258+
"amdgpu"
259+
];
263260

264-
services.hardware.openrgb.enable = true;
261+
hardware.openrgb.enable = true;
265262

266-
services = {
267263
fwupd.enable = true;
268264
smartd.enable = true;
269265
thermald.enable = true;
266+
267+
avahi = {
268+
enable = true;
269+
nssmdns4 = true;
270+
openFirewall = true;
271+
};
270272
};
271273

272-
services.avahi = {
274+
hardware.graphics = {
273275
enable = true;
274-
nssmdns4 = true;
275-
openFirewall = true;
276+
extraPackages = with pkgs; [ amdvlk ];
277+
278+
enable32Bit = true;
279+
extraPackages32 = with pkgs; [ driversi686Linux.amdvlk ];
276280
};
277281

282+
environment.variables.AMD_VULKAN_ICD = "RADV";
283+
278284
boot.binfmt.emulatedSystems = [ "aarch64-linux" ];
279285
}

nix/checks/pre-commit-hooks/default.nix

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,33 +9,28 @@ in
99
git-hooks-nix.lib.${pkgs.system}.run {
1010
src = ./.;
1111
hooks = {
12-
nixfmt = {
13-
enable = true;
14-
};
12+
# nixfmt-rfc-style = {
13+
# enable = true;
14+
# };
1515

1616
deadnix = {
1717
enable = true;
18-
settings = {
19-
edit = true;
20-
};
18+
# settings = {
19+
# edit = true;
20+
# };
2121
};
2222

23-
git-cliff = {
24-
enable = false;
25-
};
23+
# git-cliff = {
24+
# enable = false;
25+
# };
2626

2727
shfmt.enable = true;
2828

2929
statix.enable = true;
3030

31-
# pre-commit-hook-ensure-sops-enable = true;
3231
treefmt = {
3332
enable = false;
34-
# settings.fail-on-change = true;
35-
# programs = {
36-
# nixfmt.enable = true;
37-
# nixfmt.package = pkgs.nixfmt-rfc-style;
38-
# };
33+
packageOverrides.treefmt = inputs.treefmt-nix.lib.mkWrapper pkgs ../../../treefmt.nix;
3934
};
4035
};
4136
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
home.stateVersion = "25.05";
3+
}
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
home.stateVersion = "25.05";
3+
}

nix/lib/module/default.nix

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ rec {
2727

2828
# Helper to create a module with an enable option
2929
mkModule =
30-
path: config: extraOptions: extraConfig:
30+
path: enabled: config: extraOptions: extraConfig:
3131
let
3232
# relPath = [
3333
# namespace
@@ -48,7 +48,7 @@ rec {
4848
{
4949
options = setAttrByPath relPath (
5050
{
51-
enable = mkBoolOpt false "Whether to enable the ${name} module";
51+
enable = mkBoolOpt enabled "Whether to enable the ${name} module";
5252
}
5353
// extraOptions
5454
);

0 commit comments

Comments
 (0)