toes-image-builder/scripts/setup-mount.sh
2026-05-18 06:46:40 +00:00

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