summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--_sources/generated.json37
-rw-r--r--_sources/generated.nix27
-rw-r--r--flake.lock48
-rw-r--r--hosts/sif/default.nix20
-rw-r--r--hosts/surtr/default.nix11
-rw-r--r--installer/default.nix2
-rw-r--r--nvfetcher.toml4
-rw-r--r--overlays/freerdp.nix6
-rw-r--r--system-profiles/bcachefs.nix10
-rw-r--r--system-profiles/core/default.nix5
-rw-r--r--system-profiles/zfs.nix4
-rw-r--r--system-profiles/zswap.nix25
12 files changed, 75 insertions, 124 deletions
diff --git a/_sources/generated.json b/_sources/generated.json
index 9faec86d..70f6e0e5 100644
--- a/_sources/generated.json
+++ b/_sources/generated.json
@@ -83,27 +83,6 @@
83 }, 83 },
84 "version": "v2.7" 84 "version": "v2.7"
85 }, 85 },
86 "freerdp": {
87 "cargoLock": null,
88 "date": null,
89 "extract": null,
90 "name": "freerdp",
91 "passthru": null,
92 "pinned": false,
93 "src": {
94 "deepClone": false,
95 "fetchSubmodules": false,
96 "leaveDotGit": false,
97 "name": null,
98 "owner": "FreeRDP",
99 "repo": "FreeRDP",
100 "rev": "3.19.1",
101 "sha256": "sha256-DncfKh0r8k5XC3XdkgEWKxpb7ncgauJFyrfA11A4xW4=",
102 "sparseCheckout": [],
103 "type": "github"
104 },
105 "version": "3.19.1"
106 },
107 "ldif2json": { 86 "ldif2json": {
108 "cargoLock": null, 87 "cargoLock": null,
109 "date": "2025-03-29", 88 "date": "2025-03-29",
@@ -314,7 +293,7 @@
314 }, 293 },
315 "nix-output-monitor": { 294 "nix-output-monitor": {
316 "cargoLock": null, 295 "cargoLock": null,
317 "date": "2025-12-02", 296 "date": "2025-12-17",
318 "extract": null, 297 "extract": null,
319 "name": "nix-output-monitor", 298 "name": "nix-output-monitor",
320 "passthru": null, 299 "passthru": null,
@@ -324,13 +303,13 @@
324 "fetchSubmodules": false, 303 "fetchSubmodules": false,
325 "leaveDotGit": false, 304 "leaveDotGit": false,
326 "name": null, 305 "name": null,
327 "rev": "20ad9727e49bf686bea1c5e6769241234a56804b", 306 "rev": "9a32f32f807a4f7bc97d95606465243f293650fe",
328 "sha256": "sha256-Llmi7oE0ayOupM7Cc1lnYv7O0mPKvRtFPI4M+eYaMew=", 307 "sha256": "sha256-04ME0a3MUH/Y306dFWgOOCghzwcadTDpqJFkhLonIrw=",
329 "sparseCheckout": [], 308 "sparseCheckout": [],
330 "type": "git", 309 "type": "git",
331 "url": "https://code.maralorn.de/maralorn/nix-output-monitor.git" 310 "url": "https://code.maralorn.de/maralorn/nix-output-monitor.git"
332 }, 311 },
333 "version": "20ad9727e49bf686bea1c5e6769241234a56804b" 312 "version": "9a32f32f807a4f7bc97d95606465243f293650fe"
334 }, 313 },
335 "postfix-mta-sts-resolver": { 314 "postfix-mta-sts-resolver": {
336 "cargoLock": null, 315 "cargoLock": null,
@@ -396,7 +375,7 @@
396 }, 375 },
397 "quickshell": { 376 "quickshell": {
398 "cargoLock": null, 377 "cargoLock": null,
399 "date": "2025-12-02", 378 "date": "2025-12-21",
400 "extract": null, 379 "extract": null,
401 "name": "quickshell", 380 "name": "quickshell",
402 "passthru": null, 381 "passthru": null,
@@ -406,13 +385,13 @@
406 "fetchSubmodules": false, 385 "fetchSubmodules": false,
407 "leaveDotGit": false, 386 "leaveDotGit": false,
408 "name": null, 387 "name": null,
409 "rev": "26531fc46ef17e9365b03770edd3fb9206fcb460", 388 "rev": "3918290c1bcd93ed81291844d9f1ed146672dbfc",
410 "sha256": "sha256-sHqLmm0wAt3PC4vczJeBozI1/f4rv9yp3IjkClHDXDs=", 389 "sha256": "sha256-1uql4y229Rh+/2da99OVNe6DfsjObukXkf60TYRCvhI=",
411 "sparseCheckout": [], 390 "sparseCheckout": [],
412 "type": "git", 391 "type": "git",
413 "url": "https://git.outfoxxed.me/quickshell/quickshell.git" 392 "url": "https://git.outfoxxed.me/quickshell/quickshell.git"
414 }, 393 },
415 "version": "26531fc46ef17e9365b03770edd3fb9206fcb460" 394 "version": "3918290c1bcd93ed81291844d9f1ed146672dbfc"
416 }, 395 },
417 "scutiger": { 396 "scutiger": {
418 "cargoLock": null, 397 "cargoLock": null,
diff --git a/_sources/generated.nix b/_sources/generated.nix
index e07ecf22..d2422444 100644
--- a/_sources/generated.nix
+++ b/_sources/generated.nix
@@ -56,17 +56,6 @@
56 sha256 = "sha256-bUFh0Q7xcnKTBgVBUJU8BH6zzq1Y3krLfJJAgx5TqKs="; 56 sha256 = "sha256-bUFh0Q7xcnKTBgVBUJU8BH6zzq1Y3krLfJJAgx5TqKs=";
57 }; 57 };
58 }; 58 };
59 freerdp = {
60 pname = "freerdp";
61 version = "3.19.1";
62 src = fetchFromGitHub {
63 owner = "FreeRDP";
64 repo = "FreeRDP";
65 rev = "3.19.1";
66 fetchSubmodules = false;
67 sha256 = "sha256-DncfKh0r8k5XC3XdkgEWKxpb7ncgauJFyrfA11A4xW4=";
68 };
69 };
70 ldif2json = { 59 ldif2json = {
71 pname = "ldif2json"; 60 pname = "ldif2json";
72 version = "238c239985c688e879493a30a04f7195acb5120f"; 61 version = "238c239985c688e879493a30a04f7195acb5120f";
@@ -196,17 +185,17 @@
196 }; 185 };
197 nix-output-monitor = { 186 nix-output-monitor = {
198 pname = "nix-output-monitor"; 187 pname = "nix-output-monitor";
199 version = "20ad9727e49bf686bea1c5e6769241234a56804b"; 188 version = "9a32f32f807a4f7bc97d95606465243f293650fe";
200 src = fetchgit { 189 src = fetchgit {
201 url = "https://code.maralorn.de/maralorn/nix-output-monitor.git"; 190 url = "https://code.maralorn.de/maralorn/nix-output-monitor.git";
202 rev = "20ad9727e49bf686bea1c5e6769241234a56804b"; 191 rev = "9a32f32f807a4f7bc97d95606465243f293650fe";
203 fetchSubmodules = false; 192 fetchSubmodules = false;
204 deepClone = false; 193 deepClone = false;
205 leaveDotGit = false; 194 leaveDotGit = false;
206 sparseCheckout = [ ]; 195 sparseCheckout = [ ];
207 sha256 = "sha256-Llmi7oE0ayOupM7Cc1lnYv7O0mPKvRtFPI4M+eYaMew="; 196 sha256 = "sha256-04ME0a3MUH/Y306dFWgOOCghzwcadTDpqJFkhLonIrw=";
208 }; 197 };
209 date = "2025-12-02"; 198 date = "2025-12-17";
210 }; 199 };
211 postfix-mta-sts-resolver = { 200 postfix-mta-sts-resolver = {
212 pname = "postfix-mta-sts-resolver"; 201 pname = "postfix-mta-sts-resolver";
@@ -248,17 +237,17 @@
248 }; 237 };
249 quickshell = { 238 quickshell = {
250 pname = "quickshell"; 239 pname = "quickshell";
251 version = "26531fc46ef17e9365b03770edd3fb9206fcb460"; 240 version = "3918290c1bcd93ed81291844d9f1ed146672dbfc";
252 src = fetchgit { 241 src = fetchgit {
253 url = "https://git.outfoxxed.me/quickshell/quickshell.git"; 242 url = "https://git.outfoxxed.me/quickshell/quickshell.git";
254 rev = "26531fc46ef17e9365b03770edd3fb9206fcb460"; 243 rev = "3918290c1bcd93ed81291844d9f1ed146672dbfc";
255 fetchSubmodules = false; 244 fetchSubmodules = false;
256 deepClone = false; 245 deepClone = false;
257 leaveDotGit = false; 246 leaveDotGit = false;
258 sparseCheckout = [ ]; 247 sparseCheckout = [ ];
259 sha256 = "sha256-sHqLmm0wAt3PC4vczJeBozI1/f4rv9yp3IjkClHDXDs="; 248 sha256 = "sha256-1uql4y229Rh+/2da99OVNe6DfsjObukXkf60TYRCvhI=";
260 }; 249 };
261 date = "2025-12-02"; 250 date = "2025-12-21";
262 }; 251 };
263 scutiger = { 252 scutiger = {
264 pname = "scutiger"; 253 pname = "scutiger";
diff --git a/flake.lock b/flake.lock
index cfd51277..593cda36 100644
--- a/flake.lock
+++ b/flake.lock
@@ -91,11 +91,11 @@
91 ] 91 ]
92 }, 92 },
93 "locked": { 93 "locked": {
94 "lastModified": 1762286984, 94 "lastModified": 1766051518,
95 "narHash": "sha256-9I2H9x5We6Pl+DBYHjR1s3UT8wgwcpAH03kn9CqtdQc=", 95 "narHash": "sha256-znKOwPXQnt3o7lDb3hdf19oDo0BLP4MfBOYiWkEHoik=",
96 "owner": "serokell", 96 "owner": "serokell",
97 "repo": "deploy-rs", 97 "repo": "deploy-rs",
98 "rev": "9c870f63e28ec1e83305f7f6cb73c941e699f74f", 98 "rev": "d5eff7f948535b9c723d60cd8239f8f11ddc90fa",
99 "type": "github" 99 "type": "github"
100 }, 100 },
101 "original": { 101 "original": {
@@ -507,11 +507,11 @@
507 "xwayland-satellite-unstable": "xwayland-satellite-unstable" 507 "xwayland-satellite-unstable": "xwayland-satellite-unstable"
508 }, 508 },
509 "locked": { 509 "locked": {
510 "lastModified": 1765386897, 510 "lastModified": 1766409779,
511 "narHash": "sha256-wmHtBM2Iuthw9DsTD9RUkkZqrmsSJYGgflSaskE+Rrc=", 511 "narHash": "sha256-mDmnH0RFOeWJUNdC3V3fX82ZOIugmFKrZGRJHkkgcFI=",
512 "owner": "sodiboo", 512 "owner": "sodiboo",
513 "repo": "niri-flake", 513 "repo": "niri-flake",
514 "rev": "be7806f4fe2ead48eaf22e125f535d70a5ff2e3b", 514 "rev": "05f6806e04bda8d33d6015f8b303130feec8c28e",
515 "type": "github" 515 "type": "github"
516 }, 516 },
517 "original": { 517 "original": {
@@ -765,11 +765,11 @@
765 }, 765 },
766 "nixpkgs-stable_2": { 766 "nixpkgs-stable_2": {
767 "locked": { 767 "locked": {
768 "lastModified": 1765311797, 768 "lastModified": 1766201043,
769 "narHash": "sha256-mSD5Ob7a+T2RNjvPvOA1dkJHGVrNVl8ZOrAwBjKBDQo=", 769 "narHash": "sha256-eplAP+rorKKd0gNjV3rA6+0WMzb1X1i16F5m5pASnjA=",
770 "owner": "NixOS", 770 "owner": "NixOS",
771 "repo": "nixpkgs", 771 "repo": "nixpkgs",
772 "rev": "09eb77e94fa25202af8f3e81ddc7353d9970ac1b", 772 "rev": "b3aad468604d3e488d627c0b43984eb60e75e782",
773 "type": "github" 773 "type": "github"
774 }, 774 },
775 "original": { 775 "original": {
@@ -813,11 +813,11 @@
813 }, 813 },
814 "nixpkgs_2": { 814 "nixpkgs_2": {
815 "locked": { 815 "locked": {
816 "lastModified": 1765472234, 816 "lastModified": 1766309749,
817 "narHash": "sha256-9VvC20PJPsleGMewwcWYKGzDIyjckEz8uWmT0vCDYK0=", 817 "narHash": "sha256-3xY8CZ4rSnQ0NqGhMKAy5vgC+2IVK0NoVEzDoOh4DA4=",
818 "owner": "NixOS", 818 "owner": "NixOS",
819 "repo": "nixpkgs", 819 "repo": "nixpkgs",
820 "rev": "2fbfb1d73d239d2402a8fe03963e37aab15abe8b", 820 "rev": "a6531044f6d0bef691ea18d4d4ce44d0daa6e816",
821 "type": "github" 821 "type": "github"
822 }, 822 },
823 "original": { 823 "original": {
@@ -856,11 +856,11 @@
856 ] 856 ]
857 }, 857 },
858 "locked": { 858 "locked": {
859 "lastModified": 1760948256, 859 "lastModified": 1765698311,
860 "narHash": "sha256-nIsrxp6n1nQ63n1JTDaO/18RjvYbW9GVkanTP4G6Y18=", 860 "narHash": "sha256-78sPqekEDJiol2YD3Hx2zHu5E4AtrbNrUKi0032HMHo=",
861 "owner": "berberman", 861 "owner": "berberman",
862 "repo": "nvfetcher", 862 "repo": "nvfetcher",
863 "rev": "cb958b35b647c8a79fbd9d79764accc5e5a9a430", 863 "rev": "dbae9626c46b93d9fd6b85c8b292939ae569c4fc",
864 "type": "github" 864 "type": "github"
865 }, 865 },
866 "original": { 866 "original": {
@@ -1148,11 +1148,11 @@
1148 ] 1148 ]
1149 }, 1149 },
1150 "locked": { 1150 "locked": {
1151 "lastModified": 1765231718, 1151 "lastModified": 1766289575,
1152 "narHash": "sha256-qdBzo6puTgG4G2RHG0PkADg22ZnQo1JmSVFRxrD4QM4=", 1152 "narHash": "sha256-BOKCwOQQIP4p9z8DasT5r+qjri3x7sPCOq+FTjY8Z+o=",
1153 "owner": "Mic92", 1153 "owner": "Mic92",
1154 "repo": "sops-nix", 1154 "repo": "sops-nix",
1155 "rev": "7fd1416aba1865eddcdec5bb11339b7222c2363e", 1155 "rev": "9836912e37aef546029e48c8749834735a6b9dad",
1156 "type": "github" 1156 "type": "github"
1157 }, 1157 },
1158 "original": { 1158 "original": {
@@ -1223,11 +1223,11 @@
1223 ] 1223 ]
1224 }, 1224 },
1225 "locked": { 1225 "locked": {
1226 "lastModified": 1764992234, 1226 "lastModified": 1766021660,
1227 "narHash": "sha256-qBbyM1Gnvs/ncbnWfbBboMyevelz+owIdSN5Sg89wzw=", 1227 "narHash": "sha256-UUfz7qWB1Rb2KjGVCimt//Jncv3TgJwffPqbzqpkmgY=",
1228 "owner": "pyproject-nix", 1228 "owner": "pyproject-nix",
1229 "repo": "uv2nix", 1229 "repo": "uv2nix",
1230 "rev": "1610e554e579c3d47b47c8a32d47042116d0e153", 1230 "rev": "19fa99be3409f55ec05e823c66c9769df7a8dd17",
1231 "type": "github" 1231 "type": "github"
1232 }, 1232 },
1233 "original": { 1233 "original": {
@@ -1256,11 +1256,11 @@
1256 "xwayland-satellite-unstable": { 1256 "xwayland-satellite-unstable": {
1257 "flake": false, 1257 "flake": false,
1258 "locked": { 1258 "locked": {
1259 "lastModified": 1765343581, 1259 "lastModified": 1766363450,
1260 "narHash": "sha256-HtTPbV6z6AJPg2d0bHaJKFrnNha+SEbHvbJafKAQ614=", 1260 "narHash": "sha256-buO37E9GTM4Qh1tvBjpSB/JGWN72EYKMUB/Lt8LrW7w=",
1261 "owner": "Supreeeme", 1261 "owner": "Supreeeme",
1262 "repo": "xwayland-satellite", 1262 "repo": "xwayland-satellite",
1263 "rev": "f0ad674b7009a6afd80cea59d4fbf975dd68ee95", 1263 "rev": "bf738fffbb26669d0ba9d7a3ecdba3b47afa8a85",
1264 "type": "github" 1264 "type": "github"
1265 }, 1265 },
1266 "original": { 1266 "original": {
diff --git a/hosts/sif/default.nix b/hosts/sif/default.nix
index 258a83f7..2dcf5459 100644
--- a/hosts/sif/default.nix
+++ b/hosts/sif/default.nix
@@ -13,7 +13,7 @@ in {
13 imports = with flake.nixosModules.systemProfiles; [ 13 imports = with flake.nixosModules.systemProfiles; [
14 ./hw.nix 14 ./hw.nix
15 ./email ./libvirt ./greetd 15 ./email ./libvirt ./greetd
16 tmpfs-root bcachefs initrd-all-crypto-modules default-locale openssh rebuild-machines niri-unstable networkmanager lanzaboote 16 tmpfs-root bcachefs initrd-all-crypto-modules default-locale openssh rebuild-machines niri-unstable networkmanager lanzaboote zswap
17 flakeInputs.nixos-hardware.nixosModules.lenovo-thinkpad-p1 17 flakeInputs.nixos-hardware.nixosModules.lenovo-thinkpad-p1
18 flakeInputs.nixVirt.nixosModules.default 18 flakeInputs.nixVirt.nixosModules.default
19 ]; 19 ];
@@ -58,23 +58,7 @@ in {
58 58
59 plymouth.enable = true; 59 plymouth.enable = true;
60 60
61 kernelPackages = pkgs.linuxPackages_latest; 61 kernelPackages = pkgs.linuxPackages_6_18;
62 kernelPatches = [
63 { name = "edac-config";
64 patch = null;
65 structuredExtraConfig = with lib.kernel; {
66 EDAC = yes;
67 EDAC_IE31200 = yes;
68 };
69 }
70 { name = "zswap-default";
71 patch = null;
72 structuredExtraConfig = with lib.kernel; {
73 ZSWAP_DEFAULT_ON = yes;
74 ZSWAP_SHRINKER_DEFAULT_ON = yes;
75 };
76 }
77 ];
78 consoleLogLevel = 3; 62 consoleLogLevel = 3;
79 kernelParams = [ 63 kernelParams = [
80 "quiet" 64 "quiet"
diff --git a/hosts/surtr/default.nix b/hosts/surtr/default.nix
index 4a9bd6fe..815cf41a 100644
--- a/hosts/surtr/default.nix
+++ b/hosts/surtr/default.nix
@@ -4,7 +4,7 @@ with lib;
4 4
5{ 5{
6 imports = with flake.nixosModules.systemProfiles; [ 6 imports = with flake.nixosModules.systemProfiles; [
7 tmpfs-root qemu-guest openssh rebuild-machines zfs 7 tmpfs-root qemu-guest openssh rebuild-machines zfs zswap
8 ./zfs.nix ./dns ./tls ./http ./bifrost ./matrix ./postgresql 8 ./zfs.nix ./dns ./tls ./http ./bifrost ./matrix ./postgresql
9 ./prometheus ./email ./vpn ./borg.nix ./etebase ./immich.nix 9 ./prometheus ./email ./vpn ./borg.nix ./etebase ./immich.nix
10 ./paperless.nix ./hledger.nix ./audiobookshelf.nix ./kimai.nix 10 ./paperless.nix ./hledger.nix ./audiobookshelf.nix ./kimai.nix
@@ -28,15 +28,6 @@ with lib;
28 zfs.devNodes = "/dev"; # /dev/vda2 does not show up in /dev/disk/by-id 28 zfs.devNodes = "/dev"; # /dev/vda2 does not show up in /dev/disk/by-id
29 29
30 kernelModules = ["ptp_kvm"]; 30 kernelModules = ["ptp_kvm"];
31 kernelPatches = [
32 { name = "zswap-default";
33 patch = null;
34 structuredExtraConfig = with lib.kernel; {
35 ZSWAP_DEFAULT_ON = yes;
36 ZSWAP_SHRINKER_DEFAULT_ON = yes;
37 };
38 }
39 ];
40 }; 31 };
41 32
42 fileSystems = { 33 fileSystems = {
diff --git a/installer/default.nix b/installer/default.nix
index 8c0082fa..69bc5efa 100644
--- a/installer/default.nix
+++ b/installer/default.nix
@@ -10,7 +10,7 @@ with lib;
10 config = { 10 config = {
11 boot = { 11 boot = {
12 initrd.kernelModules = [ "e1000e" "virtio_net" ]; 12 initrd.kernelModules = [ "e1000e" "virtio_net" ];
13 kernelPackages = pkgs.linuxPackages_6_17; 13 kernelPackages = pkgs.linuxPackages_6_18;
14 zfs.package = pkgs.zfs_unstable; 14 zfs.package = pkgs.zfs_unstable;
15 }; 15 };
16 16
diff --git a/nvfetcher.toml b/nvfetcher.toml
index 94c29db7..23f4c5dd 100644
--- a/nvfetcher.toml
+++ b/nvfetcher.toml
@@ -131,7 +131,3 @@ fetch.git = "https://code.maralorn.de/maralorn/nix-output-monitor.git"
131[ldif2json] 131[ldif2json]
132src.git = "https://codeberg.org/joatca/ldif2json.git" 132src.git = "https://codeberg.org/joatca/ldif2json.git"
133fetch.git = "https://codeberg.org/joatca/ldif2json.git" 133fetch.git = "https://codeberg.org/joatca/ldif2json.git"
134
135[freerdp]
136src.github = "FreeRDP/FreeRDP"
137fetch.github = "FreeRDP/FreeRDP"
diff --git a/overlays/freerdp.nix b/overlays/freerdp.nix
index fafd0765..49acf14a 100644
--- a/overlays/freerdp.nix
+++ b/overlays/freerdp.nix
@@ -1,6 +1,6 @@
1{ final, prev, sources, ... }: 1{ prev, ... }:
2{ 2{
3 freerdp = prev.freerdp.overrideAttrs (oldAttrs: { 3 freerdp = prev.freerdp.override (prev.lib.optionalAttrs (prev.lib.versionAtLeast prev.freerdp.version "3.20") {
4 inherit (sources.freerdp) pname version src; 4 withWaylandSupport = true;
5 }); 5 });
6} 6}
diff --git a/system-profiles/bcachefs.nix b/system-profiles/bcachefs.nix
index be12bf20..6090c56d 100644
--- a/system-profiles/bcachefs.nix
+++ b/system-profiles/bcachefs.nix
@@ -2,15 +2,5 @@
2 config = { 2 config = {
3 boot.supportedFilesystems.bcachefs = true; 3 boot.supportedFilesystems.bcachefs = true;
4 environment.systemPackages = with pkgs; [ bcachefs-tools ]; 4 environment.systemPackages = with pkgs; [ bcachefs-tools ];
5
6 boot.kernelPatches = [
7 {
8 name = "bcachefs-casefold-fix";
9 patch = null;
10 structuredExtraConfig = with lib.kernel; {
11 UNICODE = lib.mkOverride 90 no;
12 };
13 }
14 ];
15 }; 5 };
16} 6}
diff --git a/system-profiles/core/default.nix b/system-profiles/core/default.nix
index e5f9dc16..258dd32d 100644
--- a/system-profiles/core/default.nix
+++ b/system-profiles/core/default.nix
@@ -180,10 +180,7 @@ in {
180 }; 180 };
181 environment.systemPackages = with pkgs; [ git-annex scutiger ]; 181 environment.systemPackages = with pkgs; [ git-annex scutiger ];
182 } 182 }
183 ] ++ (optional (options ? system.rebuild.enableNg) { 183 ] ++ (optional (options ? services.userborn) {
184 system.rebuild.enableNg = lib.mkDefault true;
185 })
186 ++ (optional (options ? services.userborn) {
187 services.userborn = { 184 services.userborn = {
188 enable = lib.mkDefault true; 185 enable = lib.mkDefault true;
189 passwordFilesLocation = lib.mkDefault "/var/lib/nixos"; 186 passwordFilesLocation = lib.mkDefault "/var/lib/nixos";
diff --git a/system-profiles/zfs.nix b/system-profiles/zfs.nix
index d4a2175f..c20acb9a 100644
--- a/system-profiles/zfs.nix
+++ b/system-profiles/zfs.nix
@@ -1,8 +1,8 @@
1{ config, pkgs, lib, ... } : { 1{ config, pkgs, lib, ... } : {
2 config = { 2 config = {
3 boot = { 3 boot = {
4 kernelPackages = lib.mkDefault pkgs.linuxPackages_6_12; 4 kernelPackages = lib.mkDefault pkgs.linuxPackages_6_18;
5 zfs.package = lib.mkDefault pkgs.zfs_2_3; 5 zfs.package = lib.mkDefault pkgs.zfs_2_4;
6 6
7 supportedFilesystems.zfs = true; 7 supportedFilesystems.zfs = true;
8 }; 8 };
diff --git a/system-profiles/zswap.nix b/system-profiles/zswap.nix
new file mode 100644
index 00000000..ac141f55
--- /dev/null
+++ b/system-profiles/zswap.nix
@@ -0,0 +1,25 @@
1{ ... }:
2
3{
4 config = {
5 boot.kernelParams = [
6 "zswap.enabled=1"
7 "zswap.compressor=zstd"
8 "zswap.zpool=zsmalloc"
9 "zswap.max_pool_percent=25"
10 "zswap.accept_threshold_percent=90"
11 "zswap.shrinker_enabled=1"
12 ];
13
14 boot.initrd.kernelModules = [ "zstd" "zsmalloc" ];
15
16 boot.kernel.sysfs.module.zswap.parameters = {
17 enabled = true;
18 compressor = "zstd";
19 zpool = "zsmalloc";
20 max_pool_percent = 25;
21 accept_threshold_percent = 90;
22 shrinker_enabled = true;
23 };
24 };
25}