CRUX-ARM : Home

Home :: Documentation :: Download :: Development :: Community :: Packages :: Bugs :: Links :: About :: Donors

Supported Devices


RaspberryPi 5

CPU Information

Processor :
processor :
BogoMIPS :
processor :
BogoMIPS :
Features :
CPU implementer :
CPU architecture:
CPU variant :
CPU part :
CPU revision :
Hardware :
Revision :
Serial :
  1. About this device
  2. Introduction
  3. Needed stuff
  4. Preparation
  5. Installation
  6. Configuration
  7. Additional information
  8. Links

About this device

The Raspberry Pi 5 is the most powerful and advanced single-board computer in the Raspberry Pi family to date. Featuring a Broadcom BCM2712 quad-core Cortex-A76 CPU at 2.4 GHz, up to 16 GB of LPDDR4X RAM, a next-generation VideoCore VII GPU, dual 4Kp60 HDMI outputs, PCIe expansion, and high-speed USB 3.0, it delivers a 2–3× performance boost over the previous generation. With these features, the Raspberry Pi 5 is ideal for desktop computing, demanding embedded applications, media centers, and advanced ARM development.

Introduction

CRUX-ARM supports the Raspberry Pi 5, offering a minimal and flexible Linux environment optimized for ARM64 systems. The installation process is similar to previous models, but takes advantage of the new hardware capabilities and updated boot firmware.

Needed stuff

Installation

1. Prepare the microSD Card
Recommended: Use a microSD card of at least 8GB, Class 10 or better.

Warning : Be very careful to select the correct device path for your microSD card, as using the wrong device could overwrite important data.

Partitioning:

Use the following command, replacing ${card} with the device path of your microSD card (for example, /dev/mmcblkX) to create at least two partitions (an extra partition as swap is recommended or a swap file inside the rootfs partition can be used too):

fdisk ${card}

Follow these steps inside fdisk:

2. Create Filesystems
Format the first partition as FAT32:

mkfs.vfat /dev/${card}1

Format the second partition as ext4:

mkfs.ext4 /dev/${card}2
3. Prepare the micro SD card
Get the needed files from the official repository and setup the first partition (FAT32) of the SD card to boot them:

# Get the needed sources
wget https://github.com/raspberrypi/firmware/archive/refs/tags/1.20250430.tar.gz

# Unpack them somewhere in your host computer
tar xvf 1.20250430.tar.gz

# Prepare the micro SD card mount points
mount ${card}2 /mnt

# Get CRUX-ARM release and deploy it to the micro SD card
wget https://git.crux.nu/system/crux-rootfs/releases/download/3.8/crux-3.8-arm64-raspberrypi5.rootfs.tar.xz
wget https://git.crux.nu/system/crux-rootfs/releases/download/3.8/crux-3.8-arm64-raspberrypi5.rootfs.tar.xz.sha256

# Verify its integrity
sha256 crux-3.8-arm64-raspberrypi4-rootfs.tar.xz

# Extract its contents to the micro SD card
tar pxvf crux-3.8-arm64-raspberrypi4.rootfs.tar.xz -C /mnt

# Mount the boot partition
mount ${card}1 /mnt/boot/

# Copy needed files to the destination directory
cp -r firmware-1.20250430/boot/* /mnt/boot/

# Copy modules to the destination directory
cp -r firmware-1.20250430/modules/6.12.25-v8+ /mnt/lib/modules/

# Unmount mount points
umount /mnt/boot
umount /mn

4. Boot Configuration
Edit /mnt/boot/config.txt (contains many configuration parameters for setting up the Raspberry Pi) to adjust video, overlays, or other hardware options.
Example:

cat /mnt/boot/config.txt
kernel=kernel8.img
gpu_mem=16
arm_64bit=1
enable_uart=1

Edit /mnt/boot/cmdline.txt (the kernel command line passed into the kernel at boot) to specify the correct root partition if necessary.
Example:

cat /mnt/boot/cmdline.txt
dwc_otg.lpm_enable=0 console=tty1 console=serial0,115200 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait net.ifnames=0

Configuration

After deploying the CRUX-ARM root filesystem, it is important to configure several key system files to ensure proper operation and customization of your installation. The following files should be reviewed and edited according to your needs:

Review and adjust these files to match your hardware, network environment, and personal preferences. Proper configuration at this stage will ensure a smooth and stable experience with CRUX-ARM on your Raspberry Pi 5.
This procedure ensures your microSD card is properly prepared for CRUX-ARM on Raspberrypi5, following best practices from both the official Raspberry Pi documentation and community guides

Note: For detailed explanations and examples of these configuration files, please refer to the official CRUX Handbook. The handbook provides comprehensive guidance on system configuration and package management, which can be especially helpful for new users.

Links

https://github.com/raspberrypi
https://github.com/raspberrypi/firmware
https://www.raspberrypi.com/documentation/
https://www.raspberrypi.com/documentation/computers/config_txt.html
https://www.raspberrypi.com/documentation/computers/linux_kernel.html
https://www.raspberrypi.com/documentation/computers/configuration.html#configure-uarts