Status
0.1-alpha is in preparation and not released yet.
This alpha has been tested on only one console, a PlayStation 3 Slim (CECH-20xx, NOR flash model). Expect rough edges.
What It Is
Walnut Linux is a Linux distribution tailored for the Sony PlayStation 3 hardware architecture:
- Base system: Debian (ppc64, big-endian) pinned to a specific snapshot from debian-ports.
- Kernel: Linux 6.12 LTS with the OtherOS++ patch set for the PS3 (see Credits), upstream fixes, and our own changes such as a swap tier in the GPU's video memory and a write guard for the internal disk.
- Graphics: Hardware 3D acceleration on the RSX GPU via our
ps3rsxkernel DRM driver and Mesa Gallium nv30 (OpenGL 2.1). - Desktop: A lightweight X11 desktop environment (Openbox, tint2, PCManFM, jgmenu) configured to stay within the console memory budget.
- Games: Open-source games tuned for 256 MB of RAM, with automatic game mode. The Cell's SPEs compress textures for Mesa and render MIDI music for fluidsynth.
What Runs
All 13 games in the benchmark suite run at 1920x1080 with hardware acceleration and correct picture:
- 60 fps or higher with little stalling: QuakeSpasm, Yamagi Quake II, X-Moto, Armagetron, Neverball, and OpenArena (opengl1).
- 56 to 60 fps: Extreme Tux Racer and OpenArena (opengl2).
- Other running games in the suite: ClassiCube, dsda-doom (GL), Luanti, BananaBread, SuperTuxKart, and OpenTTD.
Every game we test, with its medal and test results: Walnut Games. The benchmark notes are on GitHub.
What You Need
- A PlayStation 3 console that can run custom firmware and OtherOS++ (all Fat models and early Slim models; late Slim CECH-30xx and SuperSlim CECH-40xx cannot run CFW).
- A verified NOR or NAND flash backup saved safely off the console before modifying partitions or installing OtherOS++.
- webMAN MOD installed in GameOS for FTP file transfers and thermal fan control.
- A standard USB keyboard and mouse for setup and navigation.
- A wired Ethernet connection for the internal disk install.
We host no firmware, keys, or PUP update files.
Read the installation guide on GitHub before beginning.
Installing
Installation is managed from a PC using the walnut-install tool in two ways:
Internal Disk
The walnut-install tool streams a stamped virtual disk image onto /dev_hdd0/linux/walnut.img over FTP from your PC. It resides alongside GameOS with no reformatting or repartitioning required, leaving your existing games and saves intact. Boot files live on the cache partition dev_hdd1, and Linux disk writes are constrained to the image file by a kernel write guard.
External USB Disk
The walnut-install tool writes the installation onto an external USB hard disk or flash drive (8 GB or larger) from your PC. This method leaves the console internal disk completely untouched. You boot the system by selecting the USB entry in the Petitboot bootloader menu.
See the installation guide for step-by-step instructions.
Package Repository
Walnut Linux packages are served from https://walnut.nanobyte.dev/apt/ across four suites:
stable: Approved release packages.testing: Continuous builds from GitHub Actions.stable-debug: Debug symbols (-dbgsym) for stable packages.testing-debug: Debug symbols (-dbgsym) for testing packages.
Signing Keys
-
Stable key: walnut-archive.ascFingerprint: 8FFE 9D3F C1E2 4ADC 4702 50BB 5701 1432 F8A9 8072
-
Testing key (CI): walnut-testing.ascFingerprint: C902 FADF C765 FE6C 1215 6A13 F9C4 DD04 42CB A6F1
Example Sources Line
deb [signed-by=/usr/share/keyrings/walnut-archive.gpg] https://walnut.nanobyte.dev/apt stable main
The system image sets up this configuration automatically. This line is provided for manual inspection.
Downloads
Release disk images, kernels, and installers will be available in /download/ with the release.
Credits
Walnut stands on other people's work:
- PS3 kernel patches: glevand's OtherOS++ patches, with graf_chokolo's work, refreshed for current kernels by Sombat Tragoongoson (psx-place) and carried for Gentoo by Damian Dudycz, whose repository we took them from.
- Mainline PS3 support: Geoff Levand, and his ps3-linux queue on kernel.org.
- Kernel fixes: upstream and linuxppc-dev fixes by their authors, named in each patch.
- Booting: OtherOS++ and Petitboot.
- Graphics: Mesa's nv30 driver from the nouveau project.
- Base system: Debian and its ppc64 port (debian-ports).
Ours: the ps3rsx GPU driver, the kernel changes in packages/patched/kernel/linux/patches/local/ marked as ours, the packaging, installer and tools. Sources and authors are in the patch survey and each patch's header.
Links
- Source code: https://github.com/nanobyte-dev/walnut-linux
- Articles: https://nanobyte.dev/walnut/
- Bug reports: GitHub Issues (run the
walnut-bugreportcommand on the console and attach the generated log)