Contents

x0ne OS / Handbook / Run x0ne OS

Run the VM image

Works today (measured 2026-10-09). The qcow2 boots to the login prompt in 5.9 s with KVM (median of 20 boots, p95 6.4 s), twice identically.

A UEFI qcow2 for QEMU/KVM and libvirt: minbase, systemd, Debian kernel, systemd-boot, serial console.

Prerequisites

  • QEMU and OVMF (UEFI firmware for VMs).
  • KVM for full speed.
  • The image. Today: make qcow2, then make run boots it with the command below; see Building x0ne OS from source.
install QEMU and OVMF on Debian
$ sudo apt install qemu-system-x86 ovmf

Steps

Copy the UEFI variables store, then boot. This is the boot test command, with the console on your terminal.

run the VM image
$ cp /usr/share/OVMF/OVMF_VARS_4M.fd vars.fd
$ qemu-system-x86_64 -machine q35,accel=kvm -m 1024 -smp 2 -snapshot -nographic \
    -drive if=pflash,format=raw,readonly=on,file=/usr/share/OVMF/OVMF_CODE_4M.fd \
    -drive if=pflash,format=raw,file=vars.fd \
    -drive file=x0ne-os-amd64.qcow2,if=virtio,format=qcow2

Without OVMF, QEMU stops at Booting from Hard Disk. Without KVM, use accel=tcg: it works, slowly.

Expected output

serial console
x0ne-boot-report: listening tcp=0 udp=0

Debian GNU/Linux 13 x0ne ttyS0

x0ne login:

No default account: the first boot asks for yours before this prompt, or takes it from credentials. Root is locked. See First boot and your account.

How to verify

  • qemu-img check x0ne-os-amd64.qcow2 prints No errors were found on the image.
  • Measured 2026-10-12: 300 MiB file, 826 MiB virtual disk. Nothing listens on the network.

Boot splash

The image shows the x0ne logo, a hexagon grid and a progress bar while it boots: the x0ne-splash Plymouth theme, default in the qcow2 initramfs (tested 2026-10-12). It needs a display, not -nographic. Press Esc to see the boot log. works today

No Secure Boot yet

The current image boots with systemd-boot, without Secure Boot. Released images use Debian's signed chain.

How to undo

Quit QEMU with Ctrl+A then X. -snapshot discards every write. Delete vars.fd.

See also