From c3418082f3bbd92163a9792121109e0deedc64fd Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 18 Jan 2026 07:49:47 -0600 Subject: Fix ZFS boot failure and update ISO naming format Bug fixes: - Fix depmod using wrong kernel version during initramfs generation The script now explicitly specifies the installed kernel version instead of relying on uname -r (which returns the live ISO kernel) - Add kernel module verification before mkinitcpio - Add hostid 0x prefix to spl.spl_hostid kernel parameter ISO naming: - Changed format to: archzfs-vmlinuz-{version}-lts-{date}-{arch}.iso - Example: archzfs-vmlinuz-6.12.65-lts-2026-01-18-x86_64.iso test-vm.sh: - Add QEMU monitor socket for automation support --- scripts/test-vm.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'scripts/test-vm.sh') diff --git a/scripts/test-vm.sh b/scripts/test-vm.sh index c5ff5e8..4c56570 100755 --- a/scripts/test-vm.sh +++ b/scripts/test-vm.sh @@ -29,6 +29,9 @@ OVMF_CODE="/usr/share/edk2/x64/OVMF_CODE.4m.fd" OVMF_VARS_ORIG="/usr/share/edk2/x64/OVMF_VARS.4m.fd" OVMF_VARS="$VM_DIR/OVMF_VARS.fd" +# QEMU monitor socket for automation +MONITOR_SOCKET="$VM_DIR/qemu-monitor.sock" + # Colors RED='\033[0;31m' GREEN='\033[0;32m' @@ -138,8 +141,12 @@ boot_iso() { echo " - Serial console output appears in this terminal" echo " - SSH: ssh -p 2222 root@localhost (password: archzfs)" echo " - Run 'install-archzfs' to start installation" + echo " - Monitor socket: $MONITOR_SOCKET" echo "" + # Remove stale monitor socket + rm -f "$MONITOR_SOCKET" + # Build disk arguments local disk_args=(-drive "file=$VM_DISK,format=qcow2,if=virtio") if [[ "$MULTI_DISK" == true ]]; then @@ -165,6 +172,7 @@ boot_iso() { -device virtio-vga-gl \ -display gtk,gl=on \ -serial mon:stdio \ + -monitor unix:"$MONITOR_SOCKET",server,nowait \ -audiodev pipewire,id=audio0 \ -device ich9-intel-hda \ -device hda-duplex,audiodev=audio0 \ @@ -194,8 +202,12 @@ boot_disk() { echo "" echo "SSH access: ssh -p 2222 root@localhost" echo "Serial console output appears in this terminal" + echo "Monitor socket: $MONITOR_SOCKET" echo "" + # Remove stale monitor socket + rm -f "$MONITOR_SOCKET" + # Build disk arguments local disk_args=(-drive "file=$VM_DISK,format=qcow2,if=virtio") if [[ "$MULTI_DISK" == true ]]; then @@ -220,6 +232,7 @@ boot_disk() { -device virtio-vga-gl \ -display gtk,gl=on \ -serial mon:stdio \ + -monitor unix:"$MONITOR_SOCKET",server,nowait \ -audiodev pipewire,id=audio0 \ -device ich9-intel-hda \ -device hda-duplex,audiodev=audio0 \ -- cgit v1.2.3