feat(memory): enable zram compressed-RAM swap by default (#76 slice)
All checks were successful
Check / eval (push) Successful in 4m1s
All checks were successful
Check / eval (push) Successful in 4m1s
First slice of BACKLOG #76 (hibernation + zram, split): zramSwap on by default in modules/nixos/oom.nix — the memory-pressure layer before earlyoom. zstd @ 50% RAM (nixpkgs defaults, explicit for reproducibility), priority 100 so day-to-day paging fills zram first and any disk swapfile stays reserved for #76's hibernate image (hibernation can't resume from volatile zram). Follows the earlyoom mkDefault precedent — no toggle. Adds checks.zram-swap runNixOSTest importing oom.nix, asserting the device is an active swap, uses [zstd], and carries priority 100. Verified: V2 checks.zram-swap PASS (/dev/zram0 in /proc/swaps, zstd, prio 100); V1 full distro toplevel builds; V0 flake check --no-build green. #76 remainder (disk swapfile default + resume + installer) still open. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -17,6 +17,22 @@ Template:
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-10 — #76 zram slice: compressed-RAM swap default
|
||||
- **Task:** BACKLOG #76 (`[big]`) — split; took the low-risk zram-default slice.
|
||||
- **Did:** `zramSwap` on by default in `modules/nixos/oom.nix` (zstd, 50% RAM,
|
||||
priority 100) as the memory-pressure layer before earlyoom, following the
|
||||
earlyoom mkDefault precedent (no toggle). High priority keeps day-to-day
|
||||
paging in zram so a disk swapfile stays reserved for #76's hibernate image.
|
||||
Added `checks.zram-swap` runNixOSTest (imports oom.nix). Split #76 in
|
||||
BACKLOG → remainder is the hibernation half (swapfile/resume/installer).
|
||||
- **Verified:** **V2** — `nix build .#checks…zram-swap` PASS: /dev/zram0 active
|
||||
in /proc/swaps, `[zstd]` comp_algorithm, priority 100. **V1** full distro
|
||||
toplevel builds. **V0** flake check --no-build green.
|
||||
- **Pending:** hibernation half of #76 still open (needs hibernate→resume VM
|
||||
test + V3 laptop). No V3 for zram (under-load tuning is secondary).
|
||||
- **Next suggestion:** #76 hibernation half — design default swapSize + the
|
||||
resume/installer wiring; it's the boot-critical, V2-hibernate + V3 part.
|
||||
|
||||
## 2026-07-10 — #41 hardware-confirmed: OpenFile portal floats (V3 close)
|
||||
- **Task:** BACKLOG #41 — final on-hardware confirmation (Bernardo reported PASS).
|
||||
- **Did:** #41 already out of NEXT + portal rule shipped
|
||||
|
||||
Reference in New Issue
Block a user