/bin/busybox --install -s /bin
export PATH=/bin:/sbin:/usr/bin:/usr/sbin
mkdir -p /proc /sys /dev /etc /root /mnt /tmp /var/tmp /var/run /run
mount -t proc proc /proc
mount -t sysfs sysfs /sys
mount -t devtmpfs devtmpfs /dev
mkdir -p /dev/pts /dev/shm
mount -t devpts devpts /dev/pts
mount -t tmpfs tmpfs /dev/shm
printf '%s\n' 'root:x:0:0:root:/root:/bin/sh' > /etc/passwd
printf '%s\n' 'root:x:0:' > /etc/group
printf '%s\n' 'passwd: files' 'group: files' > /etc/nsswitch.conf
printf '%s\n' 'hosts: files dns' >> /etc/nsswitch.conf
mkdir -p /usr/libexec/podman /run/lock /run/containers/networks
printf '%s\n' '#!/bin/busybox sh' 'exit 0' > /usr/libexec/podman/netavark
chmod 755 /usr/libexec/podman/netavark
for tag in context policy registries auth; do
mkdir -p "/mnt/$tag"
mount -t virtiofs "$tag" "/mnt/$tag" 2>/dev/null || true
done
mkdir -p /mnt/.host-root /mnt/root /mnt/runroot
if mount -t virtiofs root /mnt/.host-root 2>/dev/null; then
img=/mnt/.host-root/rob-store.img
if [ ! -s "$img" ]; then
dd if=/dev/zero of="$img" bs=1M seek=8192 count=0
mke2fs -F "$img" >/dev/null
fi
if ! mount -t ext4 "$img" /mnt/root 2>/dev/null; then
mount -t ext2 "$img" /mnt/root
fi
else
mount -t tmpfs tmpfs /mnt/root
fi
mount -t tmpfs tmpfs /mnt/runroot
ip link set lo up 2>/dev/null || true
for iface in /sys/class/net/*; do
name=${iface##*/}
case "$name" in
lo) continue ;;
esac
if [ ! -e "$iface/device" ]; then
continue
fi
ip link set "$name" up 2>/dev/null || true
udhcpc -i "$name" -q -n -t 5 -T 1 -s /udhcpc.script || true
done
/oci-builder --engine-serve
sync
umount /mnt/root 2>/dev/null || true
while true; do
sleep 3600
done