Skip to content

feat: zram por delante del swap de disco - #72

Merged
Xalcker merged 1 commit into
mainfrom
feat/zram
Oct 3, 2026
Merged

Xalcker merged 1 commit into
mainfrom
feat/zram

Conversation

@Xalcker

@Xalcker Xalcker commented Oct 3, 2026

Copy link
Copy Markdown
Owner

Resumen

Agrega zram (swap comprimido en RAM) a las tres rutas con juego, con el swap de disco como respaldo.

  • zram-generator (zstd), tamano = mitad de la RAM con tope ZRAM_MAX_MB (4096 MiB por defecto), prioridad 100.
  • El swap de disco que deja genfstab baja a pri=10, asi solo se usa si zram se llena.
  • vm.swappiness=100 y vm.page-cluster=0 con zram; con ZRAM_ENABLED=false vuelve a vm.swappiness=10.
  • configure_kiosk_zram y validate_kiosk_zram en lib/kiosk_runtime.sh; zram-generator en la instalacion base de lib/cage.sh.
  • Variables ZRAM_ENABLED y ZRAM_MAX_MB documentadas en .env.example, README y CHANGELOG.

El camino Cage/foot (install-cage-kiosk.sh) no cambia: no tiene el paso de rendimiento.

Por que

En equipos de 8 a 16 GB un swap en disco o USB provoca tirones y bloqueos; zram degrada con gracia y no desgasta el disco.

Pruebas

Suite completa en WSL: 377 pruebas, 0 fallos (4 nuevas: validacion, escritura de zram-generator.conf, prioridad del fstab e idempotencia). Pendiente de validar en un kiosko real: zramctl y swapon --show tras el primer arranque.

🤖 Generated with Claude Code

- zram-generator con zstd, tamano de la mitad de la RAM y tope ZRAM_MAX_MB
- el swap de disco baja a prioridad 10 y queda como respaldo
- vm.swappiness=100 y vm.page-cluster=0 con zram (10 si ZRAM_ENABLED=false)
- ZRAM_ENABLED / ZRAM_MAX_MB validados en las tres rutas

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@Xalcker
Xalcker merged commit a997b0e into main Oct 3, 2026
2 checks passed
@Xalcker
Xalcker deleted the feat/zram branch October 3, 2026 19:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant