<domain type='kvm'>
  <name>alpine-linux-vm</name>
  <memory unit='GiB'>2</memory>
  <currentMemory unit='GiB'>2</currentMemory>
  <vcpu placement='static'>2</vcpu>
  
  <os>
    <type arch='x86_64' machine='q35'>hvm</type>
    <boot dev='cdrom'/>
    <boot dev='hd'/>
  </os>

  <features>
    <acpi/>
    <apic/>
    <pae/>
  </features>

  <cpu mode='host-passthrough' check='none'/>

  <clock offset='utc'>
    <timer name='rtc' tickpolicy='catchup'/>
    <timer name='pit' tickpolicy='delay'/>
    <timer name='hpet' present='no'/>
  </clock>

  <on_poweroff>destroy</on_poweroff>
  <on_reboot>restart</on_reboot>
  <on_crash>destroy</on_crash>

  <devices>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>

    <!-- Main OS Virtual Disk -->
    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2' cache='writeback' discard='unmap'/>
      <source file='/DATA/Downloads/alpine-disk.qcow2'/>
      <target dev='vda' bus='virtio'/>
    </disk>

    <!-- Alpine Installation ISO CD-ROM -->
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <!-- Change 'alpine-standard-3.xx.x-x86_64.iso' to your exact filename -->
      <source file='/DATA/Downloads/alpine-standard-3.24.2-x86.iso'/>
      <target dev='sda' bus='sata'/>
      <readonly/>
    </disk>

    <!-- Network Configuration bridging to ZimaOS default bridge -->
    <interface type='bridge'>
      <source bridge='br0'/>
      <model type='virtio'/>
    </interface>

    <!-- Console and Management Access -->
    <serial type='pty'>
      <target type='isa-serial' port='0'>
        <model name='isa-serial'/>
      </target>
    </serial>
    <console type='pty'>
      <target type='serial' port='0'/>
    </console>

    <!-- Video & Graphics VNC interface for initial setup -->
    <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0'>
      <listen type='address' address='0.0.0.0'/>
    </graphics>
    <video>
      <model type='virtio' vram='65536' heads='1' primary='yes'/>
    </video>

    <!-- Input Devices -->
    <input type='tablet' bus='usb'/>
    <input type='keyboard' bus='ps2'/>

    <!-- Memory Ballooning -->
    <memballoon model='virtio'>
      <stats period='10'/>
    </memballoon>
  </devices>
</domain>

