Skip to content

QEMU & Cloud-Init

Run Bazzite AI OS as a QEMU virtual machine with cloud-init configuration.

Quick Start

Download QCOW2 Image

Pre-built QCOW2 images are available from CDN:

# Download stable release (main branch)
curl -LO https://bazziteai.atradev.org/qcow2/bazzite-ai-stable.qcow2

# Download testing branch
curl -LO https://bazziteai.atradev.org/qcow2/bazzite-ai-testing.qcow2

Available branches:

  • stable - Main branch releases (recommended)
  • testing - Testing branch with latest features

Using ujust (On Bazzite AI OS)

# Add and start VM with defaults (uses stable)
ujust vm add

# Download a specific branch
ujust vm download           # Download stable (default)
ujust vm download testing   # Download testing branch

# Or customize resources
ujust vm add bazzite-ai CPUS=8 RAM=16384 DISK_SIZE=200G

# Start existing VM
ujust vm start bazzite-ai

# Connect via SSH or VNC
ujust vm ssh bazzite-ai
ujust vm vnc bazzite-ai

# Show VM status
ujust vm status bazzite-ai

# Stop VM
ujust vm stop bazzite-ai

Manual QEMU

# Create cloud-init seed ISO
mkdir -p seed
cat > seed/user-data << 'EOF'
#cloud-config
users:
  - name: bazzite
    sudo: ALL=(ALL) NOPASSWD:ALL
    shell: /bin/bash
    ssh_authorized_keys:
      - ssh-ed25519 AAAA... your-key
EOF

cat > seed/meta-data << 'EOF'
instance-id: bazzite-ai-vm
local-hostname: bazzite-ai
EOF

genisoimage -output seed.iso -V cidata -r -J seed/user-data seed/meta-data

# Run with QEMU
qemu-system-x86_64 \
  -enable-kvm \
  -machine type=q35,accel=kvm \
  -cpu host \
  -smp 4 \
  -m 8G \
  -drive file=bazzite-ai.qcow2,format=qcow2 \
  -drive file=seed.iso,format=raw \
  -nic user,hostfwd=tcp::2222-:22 \
  -display none \
  -daemonize

Cloud-Init Parameters

When using ujust vm, these parameters can be customized:

Parameter Default Description
USERNAME $USER VM user account name
PASSWORD (none) Optional password for user
AUTOLOGIN true Enable automatic desktop login
SSH_PORT 2222 Host port forwarded to VM SSH
VNC_PORT 5900 Host port for VNC display
CPUS 4 Number of CPU cores
RAM 8192 Memory in MB
DISK_SIZE 100G Virtual disk size

Example with custom parameters:

ujust vm add my-vm USERNAME=devuser CPUS=8 RAM=16384 SSH_PORT=2223

See Also