This patch moves the distribution to a modern network stack using systemd-resolved
integrated with IWD and Connman, alongside a kernel configuration alignment to support
modern routing standards. This resolves historical connectivity issues regarding
DNS search paths, captive portals, blocked DNS scenarios, and IPv6 gateway selection.
Detailed changes:
1. Systemd-Resolved & Configuration Logic:
- Configured IWD to use native systemd-resolved support via DBus.
- Retained standard distribution `resolv.conf` symlink/pointer behavior for
backward compatibility.
- EXPANDED: Added support for persistent user overrides.
* If `/storage/.config/resolv.conf` is populated by the user, it will be
honored and take precedence over automatic discovery.
- Specific handling for domain search paths and captive portal complexity.
2. Connman Improvements:
- Removed hardcoded single fallback DNS entries.
- *Rationale:* These entries were never updated and caused connectivity/resolution
failures when the primary DNS path was blocked or unavailable.
3. System Integration & Permissions (Compatibility Shims):
- Added `dummy` user (UID 100) and `nobody` group (standard overflow UID/GID).
- *Rationale:* Required to satisfy `systemd-resolved` internal sandboxing constraints.
Although Rocknix runs as root, systemd-resolved enforces privilege dropping for
specific internal operations.
- *Standardization:* Aligning these mappings (User 100, nobody/nogroup) with
Linux standards resolves dependencies for multiple services beyond systemd
(e.g., NFS idmapd, Avahi, RPC).
- *Maintainability:* chosen over binary patching to ensure package cleanliness.
4. Avahi / mDNS:
- Integrated with existing Avahi setup to prevent systemd-resolved from
binding to mDNS ports, avoiding conflict.
5. IWD Updates:
- Optimized IPv6 support configuration.
- Enabled Kernel Crypto User API (`AF_ALG`) interaction for WPA3/SAE support.
6. Kernel Configuration Alignment:
- **Performance:** Enforced `TCP_CONG_BBR` and `NET_SCH_FQ_CODEL` as the
kernel defaults. This mitigates bufferbloat and improves throughput in
congested WiFi environments compared to the previous cubic/fifo defaults.
- **IPv6 Compliance:** Enabled `ROUTER_PREF`, `MULTIPLE_TABLES`, `SUBTREES`,
and `MROUTE`.
* *Rationale:* Required for policy routing used by modern network managers
and ensures correct gateway selection in multi-router environments.
- **VPN & VLAN Support:** Enabled `TUN`, `WIREGUARD`, `BRIDGE`, and `VLAN_8021Q`.
* *Rationale:* Provides necessary primitives for Tailscale, WireGuard, and
VLAN-tagged WAN/IoT isolation. Container networking (IPVLAN/MACVLAN)
remains disabled to prevent conflicts with L3 Master Device selection.
- **Netfilter Modernization:** Enabled `NF_TABLES` with `NFT_COMPAT` while
retaining legacy `IP_NF_IPTABLES` support.
* *Rationale:* Allows modern tooling to use efficient NFTables backends
while maintaining backward compatibility for existing user scripts.
- **Hardware Cryptography:** Enabled SoC-specific hardware crypto drivers as
modules (`CRYPTO_DEV_ROCKCHIP`, `CRYPTO_DEV_QCE`, `CRYPTO_DEV_AMLOGIC_GXL`,
`CRYPTO_DEV_SUN8I`) to support hardware-offloaded operations for IWD/SAE
and VPNs where available.
7. Device Specific Cleanups:
- **SDM845 (Kernel 5.18):** Explicitly disabled legacy Android Power Management
flags (`CONFIG_PM_SLEEP`, `CONFIG_SUSPEND`)
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.




