Add Arch Linux example
CI / build (push) Successful in 10s

This commit is contained in:
2026-08-29 21:04:35 +02:00
parent 41bc570bfb
commit ec05936d2f
2 changed files with 53 additions and 0 deletions
+23
View File
@@ -0,0 +1,23 @@
# FROM archlinux:latest
FROM marvin
USER root
# Update, install kernel, initramfs tools, and utilities
# 'linux' includes mkinitcpio hooks that auto-generate the initramfs
RUN pacman -Syu --noconfirm linux busybox util-linux dhcpcd; \
pacman -Sc --noconfirm
# Copy kernel and initramfs to root for VM extraction
RUN cp /boot/vmlinuz-linux /vmlinuz && \
cp /boot/initramfs-linux.img /initrd.img
# Allow root login without password
RUN passwd -d root
# Set up timezone. Required to bypass archlinux's first-install setup.
RUN ln -s /usr/share/zoneinfo/Europe/Stockholm /etc/localtime
COPY init /init
RUN chmod +x /init
+30
View File
@@ -0,0 +1,30 @@
#!/bin/sh
# Mount special filesystems
mkdir -p /dev /proc /sys
[ -c /dev/console ] || mknod -m 600 /dev/console c 5 1
mount -t proc proc /proc
mount -t sysfs sysfs /sys
mount -t devtmpfs dev /dev
# Networking
echo slim > /proc/sys/kernel/hostname
modprobe virtio_net
ip link set lo up 2>/dev/null
ip link set eth0 up 2>/dev/null
# udhcpc -i eth0 -f -q # Get DHCP lease
echo
echo 'Welcome to slim!'
echo
# Start systemd
exec /sbin/init
# Or, just run a shell
# /bin/sh </dev/console >/dev/console 2>&1
# poweroff -f
# while true; do
# sleep 1
# poweroff -f
# done