This commit introduces a comprehensive overhaul of memory management across all
supported ROCKNIX devices. It deprecates legacy swap scripts in favor
of a new, robust rocknix-memory-manager service.
Key Changes:
1. New Memory Manager (rocknix-memory-manager):
- Implements a Tiered Memory Architecture to replace legacy mount-swap.
- Smart "zstd" Interpretation: If ZRAM_ALGO is set to "zstd", the manager
automatically configures a hybrid pipeline:
- Primary: LZO-RLE (Low latency) for immediate writes.
- Secondary: ZSTD (High compression) for background recompression
of idle pages using multi-comp support.
- Tuning: Applies dynamic sysctl optimizations including vm.swappiness=100
and vm.page-cluster=0 for ZRAM-backed targets.
2. Kernel Configuration Standardization:
- Modular ZRAM/ZSMALLOC: Converted to =m to allow runtime algorithm switching
and hybrid tiering.
- Pressure Monitoring: Enabled CONFIG_PSI=y for real-time memory pressure
metrics.
- Deduplication: Enabled CONFIG_KSM=y to allow the manager to trigger page
merging based on hardware performance tiers.
- Stability: Enabled CONFIG_CGROUP_FREEZER=y for consistent suspend/resume
handling across all targets.
- Performance: Standardized THP to madvise to reduce compaction-induced
UI stutter.
3. Platform Specifics:
- SM8650 Hardware Alignment: Preserved target-specific in-place settings for
CONFIG_DRM_PANEL_AR14=y and CONFIG_PCI_PWRCTRL_UPD720201=m.
- SDM845: Enabled architecture-specific FREEZER and PSI options.
4. 'Auto' ZRAM Sizing Logic:
The memory-manager calculates ZRAM size based on total system RAM:
| RAM Tier | System Memory | Calculated ZRAM Size (Auto) |
| :------- | :------------ | :-------------------------- |
| Low RAM | < 2GB | 75% of Total RAM |
| Mid RAM | 2GB - 8GB | 50% of Total RAM |
| High RAM | > 8GB | Fixed at 6144 MB |
5. Defaults and Overrides:
- High-Performance Targets (RK3588, S922X, SM8x50): Default to "Auto" ZRAM
sizing and "zstd" profile.
- Low-Power Targets (RK3326, RK3566, H700): Default to ZRAM disabled ("0")
to conserve system resources.
- Users can override by copying /etc/swap.conf to /storage/.config/swap.conf.
- rocknix-memory-manager now can manipulate overides via arugments and live
```--reload``` functionality making it easier to integrate into ES
6. System Services:
- Added rocknix-memory-manager.service (oneshot).
- Updated util-linux to enable fallocate for instant swap generation.
ROCKNIX is an immutable Linux distribution for handheld gaming devices developed by a small community of enthusiasts. Our goal is to produce an operating system that has the features and capabilities that we need, and to have fun as we develop it.
Features
- ROCKNIX has a very active community of developers and users.
- Integrated cross-device local and remote network play.
- In-game touch support on supported devices.
- Fine grain control for battery life or performance.
- Includes support for playing Music and Video.
- Bluetooth audio and controller support.
- Support for HDMI audio and video out, and USB audio.
- Device to device and device to cloud sync with Syncthing and rclone.
- VPN support with Wireguard, Tailscale, and ZeroTier.
- Includes built-in support for scraping and retroachievements.
Screenshots
![]() |
![]() |
![]() |
![]() |
Community
The ROCKNIX community utilizes Discord for discussion, if you would like to join us please use this link: https://discord.gg/seTxckZjJy
Licenses
ROCKNIX is a fork of JELOS, all licenses apply and credit to the JELOS team.
You are free to:
- Share: copy and redistribute the material in any medium or format
- Adapt: remix, transform, and build upon the material
Under the following terms:
- Attribution: You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- NonCommercial: You may not use the material for commercial purposes.
- ShareAlike: If you remix, transform, or build upon the material, you must distribute your contributions under the same license as the original.
ROCKNIX Software
Copyright (C) 2024-present ROCKNIX
Original software and scripts developed by the ROCKNIX are licensed under the terms of the GNU GPL Version 2. The full license can be found in this project's licenses folder.
Bundled Works
All other software is provided under each component's respective license. These licenses can be found in the software sources or in this project's licenses folder. Modifications to bundled software and scripts by the JELOS team are licensed under the terms of the software being modified.
Credits
Like any Linux distribution, this project is not the work of one person. It is the work of many persons all over the world who have developed the open source bits without which this project could not exist. Special thanks to CoreELEC, LibreELEC, JELOS, and to developers and contributors across the open source community.




