/rpi-instsd

Raspberry Pi UEFI SD image creator

Primary LanguageShell

rpi-instsd

Raspberry Pi UEFI SD image creator

This is a simple script that assembles a raw image file you can use to teach your Raspberry Pi normal booting of distributions. With this, you can either directly install a distribution from the network or using a USB stick.

Build requirements

You need the following packages on your host:

  • Cross compilers for ARM and AArch64
  • xz development packages (zypper in xz-devel)
  • dtc (zypper in dtc)
  • kpartx (zypper in kpartx)

For most of them, the script will warn you if the prerequisite is not met.

Building

This command will give you a working sd.raw image which can then be dd'ed onto an SD card to boot from.

$ su -
# export CROSS_COMPILE_ARMV6=...
# export CROSS_COMPILE_ARMV7=...
# export CROSS_COMPILE_AARCH64=...
# ./create_image.sh sd.raw

Boot Flow

Graphical vs Text mode

By default U-Boot will display grub on the graphical output. If you want to use the serial console instead, press "t" there. The console will get switched over automatically to serial and Linux will output itself to serial too then.

Media Boot

By default U-Boot will try to boot using default mechanisms from SD, USB and Network. If any of these devices (in that order) provide a bootable script or UEFI removable media binary, it will boot it.

Fallback installer

If local and network boot failed, the image will fall back to a small built-in grub binary that can boot into distributions installers directly using HTTP.

Currently this method is only implemented for openSUSE on AArch64.