Login
cleave-image
Login

Writes a bootable BeagleY-AI SD card image without root, loop devices, mtools or e2fsprogs.

shards build --release
SOURCE_DATE_EPOCH=$(date +%s) bin/cleave-image -o sd.img \
    --boot boot/ --root bq2-rootfs-0.4.0-arm64.tar.gz [--root overlay.tar]

Layout

Part Start Type Contents
MBR 0 Disk signature from the inputs; CHS for 255 heads/63 sectors
1 1 MiB 0x0e FAT16 "BOOT", active tiboot3.bin, tispl.bin, u-boot.img, Image, dtb/, extlinux/extlinux.conf
2 after boot 0x83 ext2 "root" The --root archives, with ownership, modes, links and devices

The kernel goes on the FAT partition, as Armbian does for this board. U-Boot's bootflow scan (BeagleY-AI's bootcmd) only searches bootable partitions when any partition is marked bootable, and the K3 ROM wants the FAT partition marked. So partition 1 must hold extlinux/extlinux.conf. The running system should mount partition 1 at /boot.

Pieces

Checked

With the BQ2 0.4.0 arm64 seed (43,620 entries, 2 GB) and Armbian's BeagleY-AI boot files:

Not yet tried on hardware.

Secrets

Don't put Wi-Fi passwords or logins into --root archives that are committed or published. First-boot settings will come from a file on the boot partition, written from an uncommitted local copy. local/ is in this repository's ignore list for such files.