Clockwork uConsole · Volume 5

Operating Systems

OS decision matrix, install paths, first-30-minutes checklists, and migration

Contents

SectionTopic
1About this Volume
2The OS Decision Matrix
· 2.1The full comparison table
· 2.2Mapping OS choice to loadout archetype
· 2.3The decision tree
3Raspberry Pi OS (Bookworm, Trixie)
· 3.1Why it’s the default
· 3.2Rex’s Bookworm 6.6.y images
· 3.3Rex’s Trixie 6.12.y images
· 3.4Install path
· 3.5Clockwork-specific tweaks
4Kali Linux ARM
· 4.1Two paths: full image vs metapackages
· 4.2Path A — Kali ARM image
· 4.3Path B — Pi OS plus Kali metapackages
· 4.4Pen-test first-30-minutes setup
5Pen-test Alternatives — ParrotOS, BlackArch
· 5.1ParrotOS
· 5.2BlackArch ARM
· 5.3Comparison: Kali vs Parrot vs BlackArch
6Dragon OS — SDR-Focused Ubuntu Remix
· 6.1What’s pre-installed
· 6.2Install path (Dragon OS)
· 6.3SDR first-30-minutes setup
7General-Purpose Linux Distros
· 7.1Ubuntu Server / Desktop
· 7.2Debian (vanilla)
· 7.3Arch Linux ARM
· 7.4NixOS
· 7.5Manjaro ARM
8Armbian — the Radxa CM5 Path
· 8.1Why this is the Rockchip path
· 8.2Image source and flash
· 8.3First-30-minutes setup (Armbian)
9Gaming and Emulator-Focused Images
· 9.1RetroPie
· 9.2Batocera
· 9.3Lakka
· 9.4Comparison and gaming first-30-minutes
10Multi-OS Strategies
· 10.1One OS per microSD
· 10.2BerryBoot
· 10.3PINN
· 10.4Manual BOOT_ORDER switching
· 10.5GPT + multi-rootfs
11The First-30-Minutes-After-Flash Master Checklist
· 11.1Universal steps (any OS)
· 11.2OS-specific quirks
· 11.3Recommended packages for the uConsole
12OS Migration Without Losing /home
· 12.1Backup approach
· 12.2Restore approach
· 12.3Dotfiles, SSH keys, GPG keys, browser profiles
13Vol 12 Cheatsheet Updates
14Resources
15Footnotes
16Index

1. About this Volume

This is the OS-choice volume. The Linux ecosystem has dozens of distributions; about a dozen are credible choices for the uConsole; three or four cover 90% of users. This volume tells you which is which.

The reader of this volume has read Volumes 2 and 3 (so they know what hardware they have), Volume 4 (so they know what booting from each storage type entails), and Volume 6 (so they know which kernel comes with which image). What’s left is which user-space distribution runs on top.

A small philosophical point before we start: distribution choice matters less than people think for the uConsole. Every OS in this chapter runs the same kernel (with the Clockwork patches), reads the same config.txt, drives the same panel and keyboard, and exposes the same /dev/input/event* to user-space. What changes between distributions is:

  • Which package manager is in front of you (apt / pacman / nix / etc.).
  • What’s pre-installed.
  • Which desktop environment (or none) is the default.
  • The release-cadence philosophy (rolling vs LTS vs frozen).
  • The community + documentation surrounding the distribution.

If you already have a Linux distribution you know and love, the uConsole will probably run it (with some manual kernel-patch work for non-Pi-OS-derived distros). If you don’t, this volume picks the answer for you.

2. The OS Decision Matrix

2.1 The full comparison table

The credible options as of mid-2026:

OSBaseDefault DEPackage mgrPkg countKernel baseClockwork patchesFirst-class on uConsole?
Pi OS (Bookworm)Debian 12LXDE/Wayfireapt~50 K6.6 LTS✅ (via Rex)
Pi OS (Trixie)Debian 13LXDE/Wayfireapt~55 K6.12+✅ (via Rex)
Kali Linux ARMDebian-derivedXfceapt~600+ tools6.x mainline⚠️ partial; manual⚠️ workable
ParrotOS ARMDebian-derivedMATE / Xfceapt~700+ tools6.x mainline⚠️ manual⚠️ workable
BlackArch ARMArch Linux ARMi3 / Openboxpacman~3000 tools6.x mainline⚠️ manual⚠️ workable
Ubuntu ServerDebiannone (server)apt~70 K6.x LTS⚠️ manual⚠️ workable
Ubuntu DesktopDebianGNOMEapt~70 K6.x LTS⚠️ manual⚠️ workable
Debian (vanilla)upstreamchoiceapt~60 K6.x stable⚠️ manual⚠️ workable
Arch Linux ARMArch Linuxchoicepacman~13 K + AUR6.x latest⚠️ manual⚠️ workable
NixOSupstream Nixpkgschoicenix~80 K6.x latest⚠️ manual⚠️ workable
Manjaro ARMArch-derivedKDE / Xfce / GNOMEpacman~13 K + AUR6.x⚠️ manual⚠️ workable
ArmbianDebian/Ubuntu basechoiceapt~50 K6.x mainline✅ (Radxa CM5 only)✅ (CM5 only)
Dragon OSUbuntu 22.04 LTSLXDEapt~50 K + SDR6.x⚠️ manual⚠️ workable
RetroPiePi OS-derivedEmulationStationapt~50 K + emu6.6✅ (via Rex base)✅ (gaming)
BatoceraBuildrootEmulationStationmanualminimal6.x⚠️ manual⚠️ workable (gaming)
LakkaLibreELEC-derivedRetroArchminimalminimal6.x⚠️ manual⚠️ workable (gaming)

“First-class” means: pre-built images exist that handle the JD9365DA-H3 panel, the GD32 keyboard, and the OCP8178 audio chain out of the box. “Workable” means: you flash a generic image and apply the Clockwork patches yourself. “First-class” requires either Rex (for the Pi-CM4/CM5 path) or the Armbian Radxa-CM5 maintainers; “workable” is everyone else.

2.2 Mapping OS choice to loadout archetype

Volume 1 §6 enumerated the loadout archetypes tjscientist and the community use the uConsole for. Mapping each archetype to its right OS:

ArchetypeRecommended OSWhy
Pocket dev workstationPi OS Trixie (Rex)Fully supported, modern toolchain, smooth daily-driver experience
Field RF/SDR rigDragon OSSDR++ / GQRX / GNU Radio / dump1090 pre-installed
Kali in the pocketPi OS + Kali metapackagesBest of both: panel/keyboard work AND Kali tools available
Mini PCIe LTE base-stationUbuntu ServerService-focused; minimal DE; good ModemManager support
Ham digital-modes shackPi OS Trixie (Rex)WSJT-X / fldigi / pat all in apt; Clockwork patches present
Music-production cyberdeckPi OS Trixie + PipeWireLMMS / SunVox / Cardinal in apt; PipeWire native
AI-butler portable terminalPi OS Trixie + custom chat clientStandard environment; bring your own AI tooling
Bench-side embedded consolePi OS Lite (no DE)UART, serial console, screen, tmux — minimal overhead
Sysadmin / SSH terminalPi OS Bookworm LiteSame logic, conservative LTS base
Retro gamingRetroPie or BatoceraPre-configured emulator + library
TUI-only retro aestheticArch Linux ARM + cool-retro-termRolling-release, customisable, Cool-Retro-Term + tmux + neovim
Multi-Linux experimentationNixOSDeclarative config; rebuild without losing state
Linux-on-Rockchip experimentArmbian (Radxa CM5)The only first-class image for Radxa-CM5 hardware
Offline reference (Kiwix/Calibre)Pi OS BookwormStable; good Calibre packaging

These are starting points, not commandments — substitute as you prefer.

2.3 The decision tree

                    ┌──────────────────────────────┐
                    │ What's the primary use case? │
                    └──────┬──────────────────────┘

              ┌────────────┼────────────┐
              │            │            │
              ▼            ▼            ▼
        ┌─────────┐  ┌─────────┐  ┌──────────┐
        │ pen-test│  │ SDR     │  │ general- │
        │         │  │         │  │ purpose  │
        └────┬────┘  └────┬────┘  └─────┬────┘
             │            │             │
             ▼            ▼             ▼
        ┌─────────┐  ┌─────────┐  ┌─────────┐
        │ Pi OS + │  │ Dragon  │  │ Pi OS   │
        │ Kali    │  │ OS      │  │ Trixie  │
        │ meta    │  │         │  │ (Rex)   │
        └─────────┘  └─────────┘  └─────────┘

       (specialty paths split off:)
        retro gaming → RetroPie / Batocera
        Rockchip CM5 → Armbian
        declarative   → NixOS
        rolling-release → Arch ARM
        ham/digital   → Pi OS Trixie + WSJT-X stack

3. Raspberry Pi OS (Bookworm, Trixie)

The default. The reference. The image you should flash unless you have a specific reason not to.

3.1 Why it’s the default

Five compounding reasons:

  1. First-class kernel patches. Every Clockwork kernel-side patch (panel driver, AXP228 quirks, HID quirk) is upstreamed into Rex’s images on top of the Pi-Foundation kernel. You flash, you boot, the screen works.
  2. First-class user-space. raspi-config exists; vcgencmd exists; the Pi-specific pi-bluetooth / pigpio / wiringpi stacks all just work.
  3. Bookworm is current LTS, Trixie is current rolling. The combination covers stability-vs-newness preferences without requiring a fork.
  4. Documentation density. Pi-Foundation docs cover almost every question, plus the Clockwork forum has uConsole-specific addenda.
  5. Hardware ecosystem fit. Every Pi-tested USB device (cameras, HATs, accessories) and every Mini-PCIe card with Pi-OS drivers also works on the uConsole.

It is the right answer for ~70% of users. The other 30% have specific reasons (pen-test workflow, SDR primary, Rockchip module, retro gaming) covered in later sections.

3.2 Rex’s Bookworm 6.6.y images

Maintained at the ClockworkPi forum thread.1 Rebased every few months when Pi-Foundation ships new EEPROM and kernel patches.

What you get:

  • Debian 12 Bookworm base.
  • Pi 6.6.y LTS kernel with Clockwork patches.
  • LXDE desktop (lightweight, fast, comfortable on the 5″ screen).
  • Wayfire compositor optionally available; X11 default.
  • apt package manager with the Pi repos pre-configured.
  • Clockwork-specific tools (uconsole-kbd-bl, the panel + keyboard udev rules, the config.txt + cmdline.txt baseline).

Image size: ~3 GB compressed; decompresses to ~7 GB on the SD/eMMC.

When to choose Bookworm over Trixie:

  • You want LTS stability — security updates only, no kernel-version churn.
  • You’re running pen-test or RF tools that haven’t been updated for the Trixie kernel.
  • You’re new to Linux and want the most-documented baseline.

3.3 Rex’s Trixie 6.12.y images

Same maintainer, more recent kernel.2

What you get:

  • Debian 13 Trixie base (testing as of 2026; expected to become stable late 2026).
  • Pi 6.12.y kernel with Clockwork patches.
  • Wayfire (Wayland) as the default compositor.
  • PipeWire as the audio server (PulseAudio still available via compatibility shim).
  • Newer userland — newer GCC, newer Python (3.12), newer everything.

When to choose Trixie:

  • You want current-generation kernel features (improved scheduler, better thermal management).
  • You’re a developer needing modern toolchains.
  • Your tooling explicitly targets recent Wayland or PipeWire APIs.
  • You want PipeWire native (rather than the PulseAudio-on-Bookworm pattern).

3.4 Install path

For a fresh CM4 with Lite + microSD:

# On a host (Linux/macOS):
# Download Rex's image (link in §3.2 / §3.3).
# The image is named like `2026-04-20-uconsole-bookworm-arm64-lite.img.xz`.

# Decompress:
unxz 2026-04-20-uconsole-bookworm-arm64-lite.img.xz

# Flash to microSD (verify /dev/sdX is the SD card!):
sudo dd if=2026-04-20-uconsole-bookworm-arm64-lite.img \
    of=/dev/sdX bs=4M status=progress conv=fsync
sudo sync

# Or use rpi-imager (Pi's official GUI flasher) which handles everything:
sudo apt install rpi-imager
rpi-imager
# (select "Use custom" → point at the .img.xz; rpi-imager decompresses + flashes)

For a CM4/CM5 with eMMC, follow the rpiboot path in Vol 4 §8.2 — the flow is the same except the target is the on-module eMMC seen via USB MSD.

First boot:

  1. Insert the SD into the uConsole (or close the case after eMMC flash).
  2. Power on. First boot expands the rootfs partition (~30 seconds), reboots, and then comes up to the Pi-OS first-run wizard.
  3. The wizard. Set country, locale, time zone, default username + password (deprecate the legacy pi/raspberry login — set your own), WiFi network. The wizard offers an apt update/upgrade at the end; run it (5-10 minutes on a fresh install).
  4. Reboot.

You’re at a working Pi OS desktop on the uConsole.

3.5 Clockwork-specific tweaks

After first boot, a few Clockwork-specific configurations that aren’t always pre-set:

Power button behaviour (Vol 2 §14): set POWER_OFF_ON_HALT=1 in the EEPROM:

sudo rpi-eeprom-config --edit
# Add or modify the line:
POWER_OFF_ON_HALT=1
# Save and exit. Reboot to apply.
sudo reboot

Keyboard backlight (Vol 6 §6.6): if not already configured:

sudo apt install clockwork-uconsole-tools  # may already be installed
echo 128 | sudo tee /sys/class/leds/clockwork-uconsole-kbd::brightness/brightness

Audio (Vol 6 §8.1): verify the speakers work:

speaker-test -t wav -c 2 -l 1
# Should hear "Front center" / "Front left" / "Front right" through the speakers.

Recommended baseline packages for the uConsole:

sudo apt install -y \
    vim tmux git curl wget htop \
    brightnessctl \
    pavucontrol \
    network-manager \
    chrony \
    rsync \
    fzf ripgrep bat

4. Kali Linux ARM

If your primary use case is penetration testing, Kali is the canonical answer. There are two ways to get to it on the uConsole.

4.1 Two paths: full image vs metapackages

PathWhat you flashProsCons
Full Kali ARM imageKali’s official Pi 4/CM4 ARM64 imageAll ~600+ tools pre-installed; Kali kernel; Kali user-spaceNo Clockwork patches; you must port them or accept broken display
Pi OS + Kali repoRex’s Pi OS image + kali-linux-arm aptClockwork patches present; full uConsole experience; Kali toolsDisk space (~5 GB extra); overlapping packages

For most users, Path B is the right answer. Path A makes sense only if you’re already using Kali on a Pi 4/CM4 in a non-uConsole context and want consistency.

4.2 Path A — Kali ARM image

Path A install:

# On a host:
# Download from https://www.kali.org/get-kali/#kali-arm
# Look for "Raspberry Pi 4/400/4 (64-bit)" — currently named like:
#   kali-linux-2025.W18-rpi64.img.xz

unxz kali-linux-2025.W18-rpi64.img.xz
sudo dd if=kali-linux-2025.W18-rpi64.img of=/dev/sdX bs=4M status=progress conv=fsync
sync

Insert SD; first boot. Kali boots — but the screen will likely be blank or wrong because the Kali kernel doesn’t have Clockwork patches. You have to either:

  1. Manual kernel rebuild. Take Kali’s kernel source, apply Clockwork patches (Vol 6 §2.3), rebuild, install. Tedious but works.
  2. Replace the kernel with Rex’s. Untar Rex’s image’s /lib/modules/ and copy to Kali; copy Rex’s /boot/firmware/* over Kali’s. Risky — userland and kernel may diverge in subtle ways.
  3. Use Kali via SSH only. Boot Kali blind, SSH in from another machine, run Kali tools remotely. Wastes the uConsole’s screen but works.

Default Kali credentials: kali / kali. Change immediately.

4.3 Path B — Pi OS plus Kali metapackages

Path B install:

# Start from Rex's Pi OS Bookworm image (per §3.4).

# Add the Kali repository:
sudo apt install -y kali-archive-keyring   # (if available, otherwise download key manually)
echo 'deb [signed-by=/usr/share/keyrings/kali-archive-keyring.gpg] https://http.kali.org/kali kali-rolling main contrib non-free' | \
    sudo tee /etc/apt/sources.list.d/kali.list

sudo apt update

# Pin Kali packages to lower priority (so apt doesn't replace Pi-OS-base packages):
sudo tee /etc/apt/preferences.d/kali-pin.pref <<'EOF'
Package: *
Pin: release a=kali-rolling
Pin-Priority: 50
EOF

# Now install Kali metapackages by name:
sudo apt install -y kali-linux-arm  # or smaller subsets — see below

Available Kali metapackages (subset relevant for the uConsole):3

MetapackageSizeWhat’s in it
kali-linux-core~50 MBTiny baseline
kali-linux-headless~500 MBHeadless install — server-style
kali-linux-default~1.8 GBDefault desktop install (heavy)
kali-tools-information-gathering~150 MBnmap, masscan, theHarvester, recon-ng
kali-tools-vulnerability~300 MBnikto, sqlmap, sslscan, OpenVAS
kali-tools-web~400 MBburp, zap, wfuzz, gobuster
kali-tools-passwords~200 MBjohn, hashcat, hydra, cewl
kali-tools-wireless~250 MBaircrack-ng, kismet, reaver, wifite
kali-tools-reverse-engineering~600 MBradare2, ghidra, gdb-peda, binwalk
kali-tools-exploitation~150 MBmetasploit-framework, sqlmap, beef-xss
kali-tools-sniffing-spoofing~80 MBwireshark, tcpdump, ettercap, dsniff
kali-tools-post-exploitation~100 MBempire, mimikatz, weevely
kali-tools-forensics~700 MBautopsy, volatility, sleuthkit, chkrootkit

For a 32 GB SD or eMMC, install only the metapackages relevant to your loadout. For an 8 GB Pi-OS-on-Lite + microSD, even one large metapackage may be tight.

4.4 Pen-test first-30-minutes setup

After flashing Pi OS + adding Kali tools:

# Update package list:
sudo apt update && sudo apt full-upgrade -y

# Install your Kali metapackage subset (example — wireless audit + web):
sudo apt install -y \
    kali-tools-wireless \
    kali-tools-information-gathering \
    kali-tools-web \
    kali-tools-passwords

# Install supporting infra:
sudo apt install -y \
    macchanger \
    aircrack-ng \
    nmap \
    metasploit-framework

# Disable WiFi power-save (avoid losing monitor mode mid-capture):
echo 'wifi.powersave = 2' | sudo tee /etc/NetworkManager/conf.d/wifi-powersave.conf
sudo systemctl restart NetworkManager

# Set up a working directory:
mkdir -p ~/projects/pentest/{captures,reports,scripts}

# Enable monitor mode capability (Vol 8 will cover this in detail):
sudo airmon-ng check kill   # kills NetworkManager + wpa_supplicant — careful
sudo airmon-ng start wlan0
# wlan0mon now exists for monitor-mode work

Vol 8 picks up here with the actual penetration-testing workflows. Vol 5’s job is just to get you to a Kali-tooled prompt.

5. Pen-test Alternatives — ParrotOS, BlackArch

Kali is the dominant pen-test distribution but not the only one. Two alternatives worth knowing about.

5.1 ParrotOS

ParrotOS is a Debian-based security distribution with a slightly different philosophy:

  • MATE or Xfce default desktop — lighter than Kali’s GNOME default.
  • Privacy emphasis — built-in AnonSurf for traffic anonymisation.
  • Forensics tools alongside offensive tools — Parrot ships forensics-mode that prevents auto-mounting of disks.
  • Smaller package set than Kali but more curated.
  • Lighter on resources — works better on the uConsole’s 2-4 GB CM4 setups.

ARM image: https://parrotsec.org/download/ — look for “Parrot Security ARM64”.

Install path (similar to Kali Path A):

unxz parrotsec-security-amd64.img.xz   # for x86; for arm:
# Look for the ARM64 filename
sudo dd if=parrotsec-security-arm64.img of=/dev/sdX bs=4M status=progress conv=fsync

Same caveat as Kali: no Clockwork patches. Either rebuild kernel or use Path-B-style addition to Pi OS.

The Pi OS + Parrot equivalent of kali-linux-arm doesn’t exist as cleanly — Parrot doesn’t ship metapackages in the apt repository the way Kali does. You install individual tools as needed.

For users who specifically want Parrot’s privacy-first defaults: install Parrot’s image. For users who want pen-test tools without the Kali ecosystem: install Pi OS and add tools individually.

5.2 BlackArch ARM

BlackArch Linux is an Arch-based security distribution with the largest tool count (~3000 tools) of any pen-test distro. It’s available as either a full image or as a repository overlay on top of Arch Linux ARM.

For the uConsole, the path is:

  1. Install Arch Linux ARM (§7.3 below).
  2. Add the BlackArch repository:
# Bootstrap the BlackArch keys:
curl -O https://blackarch.org/strap.sh
chmod +x strap.sh
sudo ./strap.sh

# Update:
sudo pacman -Syyu

# Install groups:
sudo pacman -S blackarch

This is the most-tools-on-a-uConsole path. It is also the most-fragile — Arch’s rolling-release model means breakage is on you. Recommended only for experienced Arch users.

5.3 Comparison: Kali vs Parrot vs BlackArch

CriterionKaliParrotOSBlackArch
Base distroDebian-derivedDebian-derivedArch
Tool count~600~700~3000
Default DEGNOME (heavy)MATE / Xfce (lighter)i3 / Openbox (TUI-friendly)
StabilityRolling but curatedRolling but curatedBleeding edge
Clockwork-patch pathPi OS + apt (best)Pi OS + manualManual on Arch ARM
Suitable for…most usersprivacy / forensics emphasistool-completionists
RAM hungrinessmediummediumlow (TUI)
Documentationexcellentgoodsparse (Arch wiki helps)

Vol 8’s Kali playbook is tooling-agnostic — most workflows work on any of the three. But the metapackage-on-Pi-OS path is the recommended starting point unless you have a specific reason to choose Parrot or BlackArch.

6. Dragon OS — SDR-Focused Ubuntu Remix

Dragon OS4 is an Ubuntu 22.04 LTS remix maintained by cemaxecuter. It pre-installs every major SDR application — at the cost of ~2 GB of disk space — saving you the work of installing them yourself. For an SDR-primary loadout, it’s a meaningful time-saver.

6.1 What’s pre-installed

ToolPurpose
SDR++Modern SDR GUI; works with RTL-SDR + HackRF + others
GQRXOlder SDR GUI; familiar to ham operators
GNU RadioSignal processing flowgraph framework
GNU Radio CompanionGUI flowgraph editor
dump1090ADS-B aircraft tracking
gpredictSatellite tracking + scheduling
multimon-ngDecoder for various analog/digital modes
WSJT-XWeak-signal ham digital modes (FT8, FT4, JT65)
fldigiMulti-mode digital ham radio
JS8CallDigital messaging on HF
patWinlink email over HF
hamlibRadio control library (rigctl, rotctl)
direwolfSoftware TNC for AFSK/APRS
dsd-fmeDigital Speech Decoder (DMR / NXDN / ProVoice)
op25P25 trunked radio decoder

For a uConsole user whose primary loadout is SDR or ham-radio, this is ~10 hours of “install and configure” handed to you. The tradeoff: Dragon OS doesn’t have first-class Clockwork patches, so you do the kernel-side work yourself.

6.2 Install path (Dragon OS)

# Download from cemaxecuter.com (look for "Pi 4 / Pi 5 / CM4" image).
# Image filename example: dragonos-focal-pi4-arm64-2026-04-15.img.xz

unxz dragonos-focal-pi4-arm64-2026-04-15.img.xz
sudo dd if=dragonos-focal-pi4-arm64-2026-04-15.img of=/dev/sdX bs=4M status=progress conv=fsync

# Boot. Same caveat as Kali Path A — no Clockwork patches yet.
# Either rebuild kernel with patches, or copy patches over from Rex's image.

The kernel-replacement approach (the lower-effort path):

# After Dragon OS first boot, with Rex's Bookworm image also flashed to a USB drive:

# Mount Rex's image:
sudo mount /dev/sdX1 /mnt/rex-boot
sudo mount /dev/sdX2 /mnt/rex-rootfs

# Copy Rex's kernel + DTBs to Dragon OS's boot partition:
sudo cp /mnt/rex-boot/kernel8.img /boot/firmware/
sudo cp /mnt/rex-boot/*.dtb /boot/firmware/
sudo cp -r /mnt/rex-boot/overlays/ /boot/firmware/

# Copy Rex's modules:
sudo rsync -av /mnt/rex-rootfs/lib/modules/ /lib/modules/

# Update /etc/fstab if needed.

# Reboot.

After this, Dragon OS boots with Clockwork patches and the screen / keyboard work. Some Dragon OS userland may not match the kernel — minor breakage possible. Test before committing.

6.3 SDR first-30-minutes setup

After boot:

# Update:
sudo apt update && sudo apt full-upgrade -y

# Verify SDR++ launches (GUI from menu).

# Plug in your RTL-SDR or HackRF.

# Test detection:
rtl_test  # for RTL-SDR
hackrf_info  # for HackRF

# Add yourself to the plugdev group for non-root SDR access:
sudo usermod -aG plugdev $USER

# Reboot.

# Test reception with SDR++:
SDR++ &
# Pick the device, tune to a known FM station (e.g., 89.5 MHz NPR), confirm audio.

Vol 9 picks up here with actual SDR workflows.

7. General-Purpose Linux Distros

For users who want Linux without Pi-specific or pen-test-specific bias.

7.1 Ubuntu Server / Desktop

Ubuntu is the “obvious” choice for users coming from x86. Canonical-maintained, well-supported, broad package availability.

Pi-specific Ubuntu image: https://ubuntu.com/download/raspberry-pi.

For the uConsole:

  • Ubuntu Server is the right choice for a service / appliance loadout. No DE; minimal RAM use; great for ModemManager-driven LTE base-station, Wireguard endpoint, headless RF capture.
  • Ubuntu Desktop is heavier (~2 GB RAM at idle with GNOME) — not recommended on the 2 GB CM4. On 4 GB+, fine.

Same kernel-side caveat as Dragon OS — no Clockwork patches. Replace kernel with Rex’s, or rebuild from Ubuntu’s source + patches.

7.2 Debian (vanilla)

Debian is Ubuntu’s parent. More conservative; longer-supported; smaller user base.

Pi-specific Debian images aren’t always current; the standard recommendation is to use the Pi OS images (which are Debian, with Pi-specific tweaks). If you want unmodified Debian, install via debootstrap from Pi OS, or use the unofficial Debian Pi images at https://wiki.debian.org/RaspberryPi.

7.3 Arch Linux ARM

Arch Linux ARM is the rolling-release ARM port of Arch.

Install path:

# On a host (Linux):
# Format SD with bootloader-friendly partitions (one FAT32 boot, one ext4 root).

# Download Arch Linux ARM rootfs:
wget http://os.archlinuxarm.org/os/ArchLinuxARM-rpi-aarch64-latest.tar.gz

# Extract to root partition:
sudo bsdtar -xpf ArchLinuxARM-rpi-aarch64-latest.tar.gz -C /mnt/sd-root

# Move boot files to boot partition:
sudo mv /mnt/sd-root/boot/* /mnt/sd-boot/

sync
sudo umount /mnt/sd-{boot,root}

Insert SD, power on. First-time setup:

# SSH in (default user alarm/alarm; root:root):
ssh alarm@uconsole.local

# Initialise pacman keys:
sudo pacman-key --init
sudo pacman-key --populate archlinuxarm

# Update:
sudo pacman -Syyu

# Install your DE / WM of choice:
sudo pacman -S xfce4 lightdm  # for example
# Or i3, sway, plasma, gnome — your call.

Same Clockwork-patch caveat — kernel rebuild or kernel replacement required.

7.4 NixOS

NixOS is a distinctive distribution: the entire system configuration is declarative, in a single configuration.nix file. Reproducible, atomic upgrades, easy rollback. Distinctive learning curve.

For the uConsole:

# Download NixOS Pi 4 SD image:
# https://hydra.nixos.org/job/nixos/release-24.05/nixos.sd_image.aarch64-linux

unxz nixos-sd-image-24.05-aarch64-linux-installer.img.zstd
sudo dd if=nixos-sd-image-24.05-aarch64-linux-installer.img of=/dev/sdX bs=4M status=progress conv=fsync

Boot. The system comes up with a base NixOS install. Edit /etc/nixos/configuration.nix:

{ config, pkgs, ... }:

{
  imports = [ ./hardware-configuration.nix ];

  boot.loader.raspberryPi.enable = true;
  boot.loader.raspberryPi.version = 4;

  hardware.enableRedistributableFirmware = true;
  hardware.deviceTree.overlays = [
    {
      name = "uconsole-lcd";
      dtsFile = ./uconsole-lcd-overlay.dts;  # you provide
    }
  ];

  environment.systemPackages = with pkgs; [
    vim git tmux
    brightnessctl
    gnu-radio
    sdrpp
  ];

  services.openssh.enable = true;
  users.users.jeff = {
    isNormalUser = true;
    extraGroups = [ "wheel" "audio" "plugdev" ];
  };
}

Apply:

sudo nixos-rebuild switch

NixOS is a deep learning curve (Nix the language is a paradigm shift). For users who already know it, it’s a great fit for a hand-tuned uConsole config that survives reflashing. For everyone else, start elsewhere.

7.5 Manjaro ARM

Manjaro ARM is Arch with hand-holding — pre-configured DE, GUI installer, less command-line bootstrapping. Best for users who want Arch’s rolling-release but don’t want to set it up themselves.

Install path: download the Pi-specific image (Manjaro-ARM-XFCE-rpi4-22.06.img.xz or similar), dd to SD, boot. The first-run wizard handles user setup, locale, and DE selection.

Same Clockwork-patch caveat. Manjaro tends to lag the upstream Arch kernel by a few releases, so the patch backport may be slightly easier than vanilla Arch.

8. Armbian — the Radxa CM5 Path

If you’ve installed a Radxa CM5 (Vol 3 §5), you’re not on the Pi family any more — and Pi OS doesn’t run on Rockchip. The path is Armbian.

8.1 Why this is the Rockchip path

Armbian is a Debian/Ubuntu-base distribution targeting ARM single-board computers. It supports the RK3588S2 (Radxa CM5’s SoC) as a first-class platform. Critically:

  • Full Rockchip kernel with proper RK3588S2 support.
  • Active community of maintainers and forum support.
  • apt-based, so the Pi-OS muscle memory transfers.
  • Pre-built images for both Bullseye, Bookworm, and Jammy bases.

The Armbian-specific support for the uConsole + Radxa CM5 is community-maintained; the Radxa CM5 page lists the canonical image source.

8.2 Image source and flash

Two paths:

  1. Armbian’s Radxa CM5 page: https://www.armbian.com/radxa-cm5/. Provides Bookworm, Jammy, and Trixie images for Radxa CM5. Requires manual application of uConsole DTS patches if not already integrated.

  2. CrossPlatformDev’s CI: https://github.com/crossplatformdev/uConsole-Image-Builder/releases — auto-builds for Pi CM3/CM4/CM5 and Radxa CM5 with uConsole DTS pre-applied.

For most users, the CrossPlatformDev path is easier. Flash:

unxz uconsole-radxa-cm5-bookworm-arm64.img.xz
sudo dd if=uconsole-radxa-cm5-bookworm-arm64.img of=/dev/sdX bs=4M status=progress conv=fsync

For eMMC, you use rkdeveloptool from a host (Vol 4 §8.3):

sudo rkdeveloptool db rk3588_loader_v1.13.bin
sudo rkdeveloptool wl 0 uconsole-radxa-cm5-bookworm-arm64.img
sudo rkdeveloptool rd

8.3 First-30-minutes setup (Armbian)

After first boot:

# First-run wizard handles user / locale / network — follow prompts.

# After login:
sudo apt update && sudo apt full-upgrade -y

# Install Clockwork-uConsole-aware tools (if community packages available):
sudo apt install clockwork-uconsole-tools

# Verify display / keyboard / audio works:
brightnessctl get
xinput list  # should show keyboard + trackball
speaker-test -t wav -c 2 -l 1

# Install your tool stack — same packages as on Pi OS:
sudo apt install -y vim tmux git brightnessctl pavucontrol fzf ripgrep

# Set up fan curve if you have a fan mod (Vol 11):
sudo armbian-config
# Navigate: System → Fan curve

9. Gaming and Emulator-Focused Images

For the retro-gaming loadout, three pre-configured emulator distros are credible.

9.1 RetroPie

RetroPie is a Pi OS-based image with EmulationStation as the launcher and dozens of emulators (libretro-based) pre-installed. Long history; very polished; first-class Pi support.

For the uConsole, RetroPie inherits Rex’s-image kernel patches (since both are Pi-OS-derived). The keyboard’s gamepad-style layout actually fits well with RetroPie’s controller configuration.

Install:

# Download RetroPie 4.8.x ARM image:
wget https://github.com/RetroPie/RetroPie-Setup/releases/...

unxz retropie-buster-4.8-rpi4_400.img.xz
sudo dd if=retropie-buster-4.8-rpi4_400.img of=/dev/sdX bs=4M status=progress conv=fsync

Boot; first-run is EmulationStation’s gamepad-config (use the keyboard’s directional keys + buttons). After config, you’re at the main menu.

9.2 Batocera

Batocera is a Buildroot-based gaming distro. More minimal than RetroPie (smaller ROMs/saves than 8-16 GB systems can handle). Updated more frequently; better controller support out-of-the-box.

For the uConsole: Pi 4 image works on CM4; needs manual kernel patching for full panel support. Most users find the lightweight image and the breadth of supported systems compelling.

9.3 Lakka

Lakka is a LibreELEC-based distribution (the same KODI heritage). Minimal; focused; the lightest of the three. RetroArch is the only frontend.

For the uConsole, the Pi 4 image works. Kernel-patching same caveat. Best for users who want a single pure-RetroArch experience.

9.4 Comparison and gaming first-30-minutes

DistroFrontendImage sizeSetup complexityBest for
RetroPieEmulationStation~7 GBmediummost users; broad Pi-ecosystem
BatoceraEmulationStation~3 GBlowquick set-up; broad system support
LakkaRetroArch only~1 GBlowminimalist RetroArch fans

First-30-minutes for any of them:

  1. Flash + boot.
  2. Configure controller (keyboard’s gamepad-style buttons). RetroPie/Batocera have a guided controller-config; Lakka has it under Settings → Input.
  3. Add ROMs. Either via SD-card-mount on a host (/mnt/sd/ROMS/<system>/...) or over network (Samba is enabled by default in RetroPie/Batocera).
  4. Configure shaders / scanlines / aspect-ratio if you want CRT aesthetics.
  5. Save state and test from the keyboard.

For PICO-8 specifically (a popular retro-style fantasy-console workload, see PicoCalc Vol 13 cross-ref), install separately:

# After RetroPie/Pi OS boot:
# Download PICO-8 (paid, $15) or use the SPLORE network demo on the free version.

# Add to RetroPie's main menu:
# RetroPie-Setup → Manage packages → Manage optional packages → pico-8

10. Multi-OS Strategies

Volume 4 §7.4 introduced these. This section is the OS-selection complement.

10.1 One OS per microSD

The simplest. Buy 4-8 microSD cards (A2 class), label each, and swap the SD slot. The uConsole’s SD slot is accessible without case-opening.

Recommended labelling:

  • Daily — Pi OS Trixie, your main loadout.
  • Pentest — Pi OS + Kali metapackages.
  • SDR — Dragon OS (or Pi OS + manual SDR install).
  • Ham — Pi OS + WSJT-X / fldigi / pat / hamlib stack.
  • Gaming — RetroPie or Batocera.
  • Recovery — Pi OS Lite for emergency.
  • Experimental — whatever you’re learning this week (NixOS / Arch / Armbian).

Cost: ~$15-30 per A2 64-128 GB card. For 7 cards, $100-200.

10.2 BerryBoot

BerryBoot is a multi-boot manager for Pi systems. Installs a small bootloader on the boot partition, then a list of OS images on the rest of the card. At boot, presents a menu and chains into the chosen OS.

Pros: one card; quick switching; consolidated SD.

Cons: some images don’t work cleanly (CM5 less well-supported than CM4); maintenance lags.

10.3 PINN

PINN (PINN Is Not NOOBS) is the maintained fork of NOOBS, the original Pi multi-boot installer. Same idea as BerryBoot with a slightly different UX.

Same pros/cons as BerryBoot.

10.4 Manual BOOT_ORDER switching

For two-OS setups: install one OS to eMMC, one to SD. Edit BOOT_ORDER to prefer SD. Hot-swap to switch.

# To boot from SD when present:
sudo rpi-eeprom-config --edit
# Set BOOT_ORDER=0xf41 (SD-first, then USB, then loop)

This is the simplest setup. Useful for “main OS lives on eMMC; rotating SD card for special-purpose loadouts.”

10.5 GPT + multi-rootfs

Advanced. One large card with a single boot partition and multiple rootfs partitions. The boot kernel-cmdline picks the rootfs. Switch via cmdline.txt edit (or via a tiny menu kernel like Buildroot’s genimage).

For a power-user with 5+ loadouts and a 1 TB SD card: this is more elegant than a card-shuffle. For everyone else, multiple cards is simpler.

11. The First-30-Minutes-After-Flash Master Checklist

Whatever OS you flash, these steps make it usable on the uConsole.

11.1 Universal steps (any OS)

# 1. Update + upgrade.
sudo apt update && sudo apt full-upgrade -y     # Pi OS / Debian / Ubuntu / Kali / Parrot / Dragon
sudo pacman -Syyu                                # Arch / Manjaro / BlackArch
sudo nix-channel --update && sudo nixos-rebuild switch  # NixOS
sudo armbian-update                              # Armbian

# 2. Set hostname:
sudo hostnamectl set-hostname uconsole-jeff

# 3. Set timezone:
sudo timedatectl set-timezone America/New_York   # adjust

# 4. Enable SSH (if not already):
sudo systemctl enable --now ssh
# Or: sudo systemctl enable --now sshd

# 5. Configure WiFi via NetworkManager:
sudo nmcli device wifi connect "SSID" password "passphrase"
# Or: sudo raspi-config (Pi OS)

# 6. Install minimum recommended packages:
sudo apt install -y \
    vim tmux git curl wget htop \
    brightnessctl \
    pavucontrol \
    rsync \
    fzf ripgrep bat

# 7. Set up baseline shell:
echo 'alias ll="ls -lah"' >> ~/.bashrc
echo 'export EDITOR=vim' >> ~/.bashrc

# 8. Disable WiFi power-save (if loadout needs sustained connections):
echo 'wifi.powersave = 2' | sudo tee /etc/NetworkManager/conf.d/wifi-powersave.conf

# 9. Set keyboard layout (if not already):
sudo localectl set-x11-keymap us pc105
# Or for Wayland: edit your compositor's config

# 10. Verify hardware:
brightnessctl get             # screen
xinput list                   # keyboard + trackball
speaker-test -t wav -c 2 -l 1 # speakers

11.2 OS-specific quirks

A few uConsole-specific gotchas per OS:

OSQuirkFix
Pi OS BookwormWayfire’s default menu is fussy on small screensUse lxpanel instead of Wayfire’s bar, or switch to LXDE classic
Pi OS TrixieAudio default sink may pick HDMI when HDMI cable pluggedpactl set-default-sink alsa_output.platform-bcm2835...
Kali (Path A)Display may not work without kernel rebuildEither rebuild or use Path B
Kali (Path B)Kali repo packages may conflict with Pi OS; pin to priority 50See /etc/apt/preferences.d/kali-pin.pref example in §4.3
ParrotOSAnonSurf may interfere with normal networkingDisable AnonSurf for non-pen-test loadouts
Dragon OSOlder Ubuntu base; modern packages (PipeWire) may need PPAAdd ppa:pipewire-debian/pipewire-upstream
Ubuntu Serversnapd ships by default; uses RAMsudo systemctl disable snapd.service if you don’t want snaps
Arch Linux ARMpacman -Syu after fresh install may have keyring sync issuesRe-run sudo pacman-key --refresh-keys
NixOSConfiguration is in /etc/nixos/configuration.nix not the usual placesRead NixOS manual before editing
Manjaro ARMFirst-boot wizard may fail on the small screenSSH in headless and run manjaro-arm-postinstall from terminal
Armbianarmbian-config is the central config toolUse it instead of editing config files directly
RetroPieDefault user is pi with empty password — changepasswd immediately

Beyond the universal baseline, packages worth installing on most uConsoles:

# Productivity:
sudo apt install -y zsh-autosuggestions zsh-syntax-highlighting starship

# Hardware monitoring:
sudo apt install -y lm-sensors  # CPU temp / voltage
sudo apt install -y powertop    # battery analysis

# Useful CLI:
sudo apt install -y jq yq xclip wl-clipboard ranger neofetch
sudo apt install -y python3-pip python3-venv

# Dev:
sudo apt install -y build-essential cmake gcc g++ gdb
sudo apt install -y golang rust  # or via rustup

# Networking:
sudo apt install -y mosh openvpn wireguard nfs-common cifs-utils

# Audio (for music-production loadout):
sudo apt install -y pipewire-audio-client-libraries qjackctl

# RF (basic — Vol 9 has the full stack):
sudo apt install -y rtl-sdr soapy-sdr-tools

12. OS Migration Without Losing /home

When you switch OSes (Bookworm → Trixie, Pi OS → NixOS), you usually want to keep your home directory, dotfiles, SSH keys, and so on. The general approach.

12.1 Backup approach

Before re-flashing:

# Connect a USB drive or mount a network share for backup.

# Backup /home + system config:
sudo rsync -aHAXv \
    --exclude='/home/*/.cache' \
    --exclude='/home/*/Downloads' \
    --exclude='/home/*/.local/share/Trash' \
    --exclude='/home/*/.npm' \
    --exclude='/home/*/.cargo/registry' \
    /home/ /mnt/backup/home/

# Backup /etc selectively (just the bits you customised):
sudo tar -czf /mnt/backup/etc-config.tar.gz \
    /etc/hostname /etc/hosts /etc/fstab /etc/wpa_supplicant \
    /etc/systemd/system /etc/NetworkManager \
    /etc/ssh /etc/sudoers.d

# Backup installed package list (for re-install on new OS):
dpkg --get-selections > /mnt/backup/packages.txt   # Debian/Ubuntu
pacman -Qe > /mnt/backup/packages.txt              # Arch

# Note your hostname, network config, custom services:
hostname > /mnt/backup/hostname.txt
nmcli connection show > /mnt/backup/nm-connections.txt

12.2 Restore approach

After flashing the new OS:

# Set hostname:
sudo hostnamectl set-hostname $(cat /mnt/backup/hostname.txt)

# Restore /home:
sudo rsync -aHAXv /mnt/backup/home/ /home/
# Adjust ownership if usernames differ:
sudo chown -R $USER:$USER /home/$USER

# Restore /etc selectively (review before applying):
sudo tar -tzf /mnt/backup/etc-config.tar.gz | head -30
# Cherry-pick what you want; don't blindly extract — incompatible config can break new OS.

# Reinstall packages (for matching OS):
sudo apt install -y $(cat /mnt/backup/packages.txt | awk '$2~/^install/ {print $1}')

# For mismatched OSes, hand-pick essentials.

12.3 Dotfiles, SSH keys, GPG keys, browser profiles

The “stable across OS migrations” payload:

ItemLocationNotes
.bashrc, .zshrc~/.bashrc, ~/.zshrcYour shell config
.vimrc, vim plugins~/.vimrc, ~/.vim/Editor config
Tmux config~/.tmux.confTmux behaviour
Starship config~/.config/starship.tomlModern shell prompt
SSH keys~/.ssh/Critical — back up ~/.ssh/id_ed25519, id_rsa, known_hosts, config
GPG keys~/.gnupg/Critical — gpg --export-secret-keys to back up; gpg --import to restore
Git config~/.gitconfigUser name + email + aliases
Firefox profile~/.mozilla/firefox/Bookmarks, history, extensions, passwords (encrypted)
Chromium profile~/.config/chromium/Same
Wireguard configs/etc/wireguard/*.confVPN endpoints
NetworkManager/etc/NetworkManager/system-connections/WiFi credentials
Kali captures~/projects/pentest/captures/Loadout-specific

A useful pattern: keep a dotfiles git repo with everything except keys; symlink from ~/.bashrc etc. to the repo. After re-flash:

# Restore dotfiles repo:
git clone git@github.com:jeff/dotfiles.git ~/.dotfiles
cd ~/.dotfiles && ./install.sh  # symlinks everything

# Restore keys from backup (keys aren't in the dotfiles repo):
cp -r /mnt/backup/.ssh ~/.ssh
chmod 600 ~/.ssh/id_ed25519
gpg --import /mnt/backup/.gnupg/secring.gpg

Tools that automate this: GNU Stow for dotfile symlinks, chezmoi for advanced dotfile management with template support, yadm for git-based dotfiles.

13. Vol 12 Cheatsheet Updates

The following one-pagers go into Vol 12:

  • §4 (OS install one-liners): dd flash, rpi-imager GUI, the install paths from §3.4 / §6.2 / §7.3.
  • §10 (Common apt / pacman / nix one-liners): update, upgrade, install, search, remove for each package manager.
  • §11 (First-30-minutes checklist): the universal steps from §11.1 + the recommended packages from §11.3.
  • §15 (Error → fix matrix): the OS-specific quirks table from §11.2.
  • §22 (Resources): the OS download URLs from §14.

14. Resources

SourceURL
Pi OS (download)https://www.raspberrypi.com/software/operating-systems/
Pi OS Bookworm forum (Rex)https://forum.clockworkpi.com/t/bookworm-6-6-y-for-the-uconsole-and-devterm/13235
Pi OS Trixie forum (Rex)https://forum.clockworkpi.com/t/trixie-6-12-y-for-the-uconsole-and-devterm/19457
CrossPlatformDev image builderhttps://github.com/crossplatformdev/uConsole-Image-Builder/releases
Kali Linux ARMhttps://www.kali.org/get-kali/#kali-arm
Kali metapackages referencehttps://www.kali.org/docs/general-use/metapackages/
ParrotOShttps://parrotsec.org/
BlackArchhttps://www.blackarch.org/
Dragon OShttps://cemaxecuter.com/
Ubuntu (Pi 4)https://ubuntu.com/download/raspberry-pi
Debian Pi pagehttps://wiki.debian.org/RaspberryPi
Arch Linux ARMhttps://archlinuxarm.org/
NixOShttps://nixos.org/download.html
Manjaro ARMhttps://manjaro.org/download/
Armbian (Radxa CM5)https://www.armbian.com/radxa-cm5/
RetroPiehttps://retropie.org.uk/
Batocerahttps://batocera.org/
Lakkahttps://www.lakka.tv/
GNU Stow (dotfile mgmt)https://www.gnu.org/software/stow/
chezmoihttps://www.chezmoi.io/
yadmhttps://yadm.io/
NixOS manualhttps://nixos.org/manual/nixos/stable/
Arch Wiki (general Linux reference)https://wiki.archlinux.org/

15. Footnotes

(Footnotes are listed inline above; this section is a placeholder anchor for the index.)

16. Index

A — apt — §3.4, §11.1. AnonSurf — §5.1. Arch Linux ARM — §7.3. Armbian — §8 (full chapter).

B — Backup (rsync) — §12.1. Batocera — §9.2. BerryBoot — §10.2. BlackArch — §5.2. BOOT_ORDER — §10.4 (cross-ref Vol 4).

C — chezmoi — §12.3. Comparison (pen-test) — §5.3. Comparison (gaming) — §9.4. CrossPlatformDev — §3.2, §8.2. Cross-references (Vol 4 §7.4) — §10.

D — Debian — §7.2. Decision matrix — §2.1. Decision tree — §2.3. dd flash — §3.4. Dotfiles — §12.3. Dragon OS — §6 (full chapter).

E — eMMC install — §3.4 (cross-ref Vol 4).

F — fldigi — §6.1. First-30-minutes checklist — §11 (full chapter).

G — Gaming — §9 (full chapter). Geekbench (cross-ref Vol 3) — §11. GNU Radio — §6.1. GNU Stow — §12.3. GPG keys — §12.3. GPT (multi-rootfs) — §10.5. GQRX — §6.1.

H — Hostname — §11.1.

I — i3 — §5.2. Image (download URL) — §14.

J — JS8Call — §6.1.

K — Kali metapackages — §4.3. Kali Linux ARM — §4 (full chapter).

L — Lakka — §9.3. LXDE — §3.2.

M — macchanger — §4.4. Manjaro ARM — §7.5. MATE — §5.1. Migration — §12 (full chapter). Multi-OS — §10 (full chapter).

N — nix-channel — §11.1. NixOS — §7.4.

O — Offline reference (Kiwix/Calibre) — §2.2. OS-specific quirks — §11.2.

P — pacman — §11.1. ParrotOS — §5.1. Pen-test — §4, §5. PINN — §10.3. PipeWire — §3.3 (cross-ref Vol 6 §8.4). Pi OS Bookworm — §3.2. Pi OS Trixie — §3.3. PXE (cross-ref Vol 4 §11) — N/A.

Q — qjackctl — §11.3.

R — Radxa CM5 (Armbian path) — §8. Recommended packages — §11.3. RetroPie — §9.1. Rex’s images — §3.2, §3.3. rkdeveloptool — §8.2 (cross-ref Vol 4 §8.3). rpi-imager — §3.4. rsync (migration) — §12.

S — Samba — §9.4. SDR++ — §6.1. SDR loadout — §6 (full chapter). SSH keys — §12.3.

T — Tmux — §11.3.

U — Ubuntu — §7.1. Update commands — §11.1.

V — vim — §11.3.

W — Wayfire — §3.3 (cross-ref Vol 6 §4.4). WSJT-X — §6.1.

X — xinput list — §11.1. Xfce — §5.1.

Y, Z — None.

Footnotes

  1. https://forum.clockworkpi.com/t/bookworm-6-6-y-for-the-uconsole-and-devterm/13235. The maintainer (forum handle “Rex”) has been the canonical CM4/CM5 image source since 2024. Build provenance is documented in the thread.

  2. https://forum.clockworkpi.com/t/trixie-6-12-y-for-the-uconsole-and-devterm/19457. Kernel 6.12.y as of mid-2026; Trixie userland.

  3. Kali metapackages reference: https://www.kali.org/docs/general-use/metapackages/. The full list is much larger; the subset below is the practically useful one for the uConsole’s RAM and storage envelope.

  4. https://cemaxecuter.com/. Maintainer “cemaxecuter” is a long-time RF-tools contributor; Dragon OS has been the de-facto SDR-focused Ubuntu remix since 2018. Pi/ARM images are released alongside x86 images.