29 lines
874 B
Bash
Executable File
29 lines
874 B
Bash
Executable File
#! /bin/bash
|
|
set -ex
|
|
|
|
# unpacks the base image so we can do our stuff to it
|
|
|
|
mkdir -p build
|
|
xz -dkc cache/ubuntu-24.04.4-preinstalled-server-arm64+raspi.img.xz >build/toes-ubuntu-base.img
|
|
|
|
loop_device="$(sudo losetup --find --show --partscan build/toes-ubuntu-base.img)"
|
|
printf '%s\n' "$loop_device" >build/loop-device
|
|
|
|
echo "$loop_device"
|
|
lsblk "$loop_device"
|
|
|
|
mkdir -p mnt/root mnt/boot
|
|
sudo mount "${loop_device}p2" mnt/root
|
|
sudo mkdir -p mnt/root/boot/firmware
|
|
sudo mount "${loop_device}p1" mnt/root/boot/firmware
|
|
sudo mount --bind mnt/root/boot/firmware mnt/boot
|
|
sudo mount --bind /dev mnt/root/dev
|
|
sudo mount -t proc proc mnt/root/proc
|
|
sudo mount -t sysfs sysfs mnt/root/sys
|
|
sudo mount -t tmpfs tmpfs mnt/root/run
|
|
|
|
if [ -d /run/systemd/resolve ]; then
|
|
sudo mkdir -p mnt/root/run/systemd/resolve
|
|
sudo mount --bind /run/systemd/resolve mnt/root/run/systemd/resolve
|
|
fi
|