User Tools

Site Tools


installs:raspi:argon-oneup:os

OS Choice and Setup

The OS choice is supposedly pretty open here. Many vendors provide ROMs and packages and support for ARM-based boards. However at the time, Q1 2026, there is a lack of support for the CM5 board, and especially the 16GB version which needs a bit more love and care than other models.

Considerations

While trying to find an OS for this, I went through many options one by one trying to find the most fitting one, aka something at least stable and supported, and also customizable.

A couple adventures

The first choice I tried was PiOS, not because it's my favorite but mostly because I wanted to make sure the board worked. The installation was pretty straight-forward, and we'll go through it later in this page, and the device is fully supported in that context.

Once the board was tested as a working unit, I wanted to install a more fun distro, thinking about getting Fedora to run on there. After numerous hours of trying to run it, getting through the little quirks that can happen with the OneUp + CM5 16GB combo, it did not work. The device would boot but show up errors on there. The main culprit ? The lack of support from Fedora, which has some issues integrating the new CM5's hardware into the Fedora build.

So I abandoned this way, and tried to install Thumbleweed, from OpenSUSE. This distro supposedly had support for Pi-boards as well as some other amd64 integrated boards. After reviewing many of the installation media from the website (that is a pain to go around) and trying to find a raw file for ARM64, I couldn't find any. It would have been a pretty solid choice, considering it's stable while having new-ish packages officially supported.

I also tried to get Void working but without any knowledge of this specific distro I could not really go through the documentation as swiftly and comfortably as I wanted, so I left that choice on the side.

Final Choice

Considering the fact that other OSs are not yet mature enough for the CM5 16GB, I will chose to use PiOS Lite. In order to get something customizable enough, I will have to modify it a little, and try to have APT and Nix work together to make this build work.

In fine, APT will be used for the system packages, while Nix for userland.

Installation

To install the OS on the Pi's eMMC, you absolutely need another computer. I used my trusted Debian laptop, flipped the switch on the OneUp so the CM5 would be in the right mode, and then I wired the two laptop casings together as shown in the documentation.

Software requirements for installation

In order to flash the OS onto the eMMC (would work for the NVME too), you will first need a little tool so that your installation laptop sees and can mount the storage devices from the Pi.

This software is called usbboot, it's made by raspberry and you'd usually have to build it in order to use it.

It can be found at ubsboot's GitHub repo, with the building instructions. I will however provide the commands I had to use in order to get it to work here :

# Getting the dependencies
sudo apt install git libusb-1.0-0-dev pkg-config build-essential -y
 
# Building
git clone --recurse-submodules --shallow-submodules --depth=1 https://github.com/raspberrypi/usbboot
cd usbboot
make
sudo make install
 
# Launching the software
sudo rpiboot

If the OneUp's switch is on the right position, and the two laptops wired together, and the OneUp has some battery too, you should see those lines once rpiboot launches, telling you it's doing its work:

sudo ./rpiboot 
RPIBOOT: build-date 2026/02/13 pkg-version local 101f2d00
 
Please fit the EMMC_DISABLE / nRPIBOOT jumper before connecting the power and USB cables to the target device.
If the device fails to connect then please see https://rpltd.co/rpiboot for debugging tips.
 
Waiting for BCM2835/6/7/2711/2712...
 
Directory not specified - trying default /usr/share/rpiboot/mass-storage-gadget64/
read_file: Failed to read "2712/bootcode5.bin" from "/usr/share/rpiboot/mass-storage-gadget64/bootfiles.bin" - No such file or directory
Trying local path mass-storage-gadget64/
Sending bootcode.bin
Successful read 4 bytes 
Waiting for BCM2835/6/7/2711/2712...
 
Second stage boot server
File read: mcb.bin
File read: memsys00.bin
File read: memsys01.bin
File read: rp1c0fw1.bin
File read: memsys02.bin
File read: rp1c0fw2.bin
File read: memsys03.bin
File read: bootmain
Loading: mass-storage-gadget64//config.txt
File read: config.txt
Loading: mass-storage-gadget64//boot.img
File read: boot.img
Second stage boot server done

Once you see these, the volumes should be mounted and you should be good to go.

The Installation itself

Now, the tool used for flashing can be `dd` or any other tool. Here I chose to use Raspberry's RPI Manager because it facilitates the setup of PiOS's images greatly, by helping you configure user, wifi, SSH… All before flashing onto the device.

Once the device is mounted, just choose the Pi version (here 5), the OS (here, other PiOS > Pi Lite 64bits), the storage device (eMMC), and then configure the image and then run the installation process form the UI.

Once it's done, you can cut the wire between the two laptops, shutdown the OneUp, switch the CM5 back to normal boot, and boot up.

First Boot

On the first boot, please be careful not to shutdown prematurely. The device should restart automatically after some time (a couple minutes at most), because the installed image will auto-inflate to take up all the available space on the eMMC.

On the second boot, you can now log in with your credentials on the TTY, and start using the device. However, I'd recommend running a little update and upgrade with APT so that you're fully up to date and can start doing shenanigans.

installs/raspi/argon-oneup/os.txt · Last modified: 2026/03/01 15:56 by elraphik