Guides
Best Linux Distros for Retro Gaming Handhelds: OnionOS, GarlicOS, ArkOS, and AmberELEC Compared
In-depth comparison of custom Linux distributions for budget retro handhelds. Boot times, sleep mode battery drain, fast-forward stability, and per-chipset recommendations.
- Topic
- Handhelds
- Difficulty
- intermediate
- Spoilers
- None
Choosing the right custom Linux distribution for an ARM-based retro handheld depends on your chipset: SigmaStar chips (Miyoo Mini) require OnionOS for sub-second game switching, while Rockchip RK3566 / Allwinner H700 devices achieve the lowest input latency with ArkOS or muOS. Custom firmware replaces sluggish factory frontends with custom kernel modules, automated save-state suspend routines, and optimized RetroArch core compilation flags that extend battery life by up to 25%.
Distro Comparison Matrix
| Distribution | Target Chipsets & Handhelds | Cold Boot Time | Standby Battery Drain (24h) | Primary Strength |
|---|---|---|---|---|
| OnionOS | SigmaStar SSD202D (Miyoo Mini / Mini Plus) | ~11 seconds | < 1.5% | Instant Game Switcher UI and native PICO-8 Splore support |
| GarlicOS 1.4 | Allwinner V3s / Actions ATM7039 (Original RG35XX) | ~8 seconds | ~2.0% | Minimalist retro UI with automatic save-on-power-off |
| ArkOS | Rockchip RK3326 / RK3566 (RG351, RGB30, R36S) | ~16 seconds | ~4.0% | Comprehensive RetroArch cores, OTA Wi-Fi updates, and PortMaster |
| muOS | Allwinner H700 (RG35XX Plus / H / SP) | ~6 seconds | < 2.0% | Ultra-fast text UI, direct RetroArch boot, and zero background CPU bloat |
| AmberELEC | Rockchip RK3326 (RG351P / RG351M) | ~22 seconds | ~5.0% | Beautiful, scraped EmulationStation themes and pre-tuned shaders |
In-Depth Analysis: The Key Operational Differences
1. Sleep/Suspend Implementation (The Deciding Factor)
Budget retro handhelds lack advanced ACPI suspend states found in x86 laptops. Each distribution handles sleep differently:
- OnionOS (State Freeze): Pressing the power button dumps a real-time RetroArch save-state to the SD card, shuts down the display and Wi-Fi, and drops CPU frequency to 200MHz. Waking the device instantly resumes the game in under 1 second.
- ArkOS (Linux Suspend-to-RAM): Puts the Rockchip SoC into deep RAM sleep. However, if the device remains in sleep for more than 48 hours, battery drain is noticeably higher (~8-10%) compared to OnionOS.
- GarlicOS (Instant Save & Power Down): When pressing power, GarlicOS saves your exact frame and completely powers off the device. Turning it back on boots directly into that save state in 8 seconds flat.
2. PortMaster Support (PC Indie Game Ports)
If you want to play standalone PC indie games like Celeste, Undertale, Spelunky, Shovel Knight, and TMNT: Shredder’s Revenge on a sub-$60 handheld:
- ArkOS has native, first-class PortMaster integration. Installing a game requires simply copying game data files into the
ports/directory and launching via the PortMaster manager. - muOS and AmberELEC also provide robust PortMaster compatibility.
- OnionOS and GarlicOS 1.x cannot run modern PortMaster titles due to their 32-bit ARMv7 architecture and lack of standard glibc dependencies.
3. Audio Latency & Frame Pacing
Factory firmware usually sets RetroArch’s audio_latency to 96ms or 128ms to prevent audio crackling on unoptimized cores, causing a perceptible delay between pressing the jump button and hearing the jump sound.
- ArkOS and muOS configure audio buffers down to 32ms or 48ms out of the box using ALSA without PulseAudio/PipeWire overhead.
- SNES and GBA games achieve exact 60.000 Hz frame delivery without micro-stutter on 60Hz LCD displays.
Final Recommendations: What Should You Flash?
- For Miyoo Mini & Miyoo Mini Plus: Flash OnionOS without hesitation. It is the single most polished software experience in the retro handheld hobby.
- For Anbernic RG35XX Plus / H / SP: Flash muOS if you want fast 6-second boot times and clean simplicity; flash Knulli (Batocera fork) if you want rich cover art and scraped game trailers.
- For Powkiddy RGB30 / R36S / RG351: Flash ArkOS for maximum emulator core flexibility, PortMaster indie ports, and frequent OTA community updates.