Wiki

A universe of ideas

User Tools

Site Tools


computer:orange_pi_5_plus_32gb

This is an old revision of the document!


Orange Pi Plus (32GB)

Resources:

Install Arch Linux with UEFI

This guide is for the 32GB version of the Orange Pi 5 Plus, but probably applies also to other versions. With some small modifications this schould also apply to other RK3588 boards.

paru rkdeveloptool

## https://github.com/edk2-porting/edk2-rk3588/releases
curl -O https://github.com/edk2-porting/edk2-rk3588/releases/download/v1.0.1/orangepi-5plus_UEFI_Release_v1.0.1.img

## https://dl.radxa.com/rock5/sw/images/loader/
curl -O https://dl.radxa.com/rock5/sw/images/loader/rk3588_spl_loader_v1.15.113.bin
  • Disconnect power
  • Connect front USB-C (marked “TYPEC”) to Linux host (OTG)
  • Hold “MASKROM” button (left of “TYPEC”)
  • Connect power
rkdeveloptool ld
rkdeveloptool db rk3588_spl_loader_v*.bin
rkdeveloptool wl 0 orangepi-5plus_UEFI_Release_v*.img
rkdeveloptool rd
  • Flash Orange PI Arch onto SD card (USB stick does not work)
  • Setup system (e.g. disable auto suspend & add SSH key)

Somewhere in the process we need to change the mirror:

echo 'Server = http://mirror.archlinuxarm.org/$arch/$repo' >/etc/pacman.d/mirrorlist
  • Kickout “opios” from /etc/pacman-pacstrap.conf
mkdir opi5plus
mount --bind opi5plus opi5plus
pacstrap -K -C /etc/pacman-pacstrap.conf opi5plus base linux-aarch64 nano
arch-chroot opi5plus
mkdir -p /efi/EFI/{Linux,BOOT,systemd}

## https://wiki.archlinux.org/title/Systemd-boot#Installing_the_UEFI_boot_manager
cp /usr/lib/systemd/boot/efi/systemd-bootaa64.efi /efi/EFI/systemd/
cp /usr/lib/systemd/boot/efi/systemd-bootaa64.efi /efi/EFI/BOOT/BOOTAA64.efi

mv /etc/mkinitcpio.d/linux-aarch64.preset{,.upstream}
cat >/etc/mkinitcpio.d/linux-aarch64.preset <<EOF
ALL_kver="/boot/Image"

PRESETS=('default' 'fallback')

default_uki="/efi/EFI/Linux/arch-linux.efi"

fallback_uki="/efi/EFI/Linux/arch-linux-fallback.efi"
fallback_options="-S autodetect"
EOF

If during testing umount opi5plus failed because “target is busy” run killall gpg-agent

sgdisk --zap-all /dev/sda
sgdisk -n 1::+512M -c 1:EFI  -t 1:ef00 /dev/sda
sgdisk -n 2::      -c 2:root -t 2:8304 /dev/sda
mkfs.vfat -F32 -n EFI /dev/sda1
mkfs.btrfs -L root /dev/sda2
mount /dev/sda2 /mnt
mkdir -p /mnt/efi
mount /dev/sda1 /mnt/efi
rsync -a opi5plus /mnt
computer/orange_pi_5_plus_32gb.1742773513.txt.gz · Last modified: 2025-03-24 00:45 by skruppy