Converting Legacy Boot to UEFI Windows 10 template

If you happen to have a DaDesktop machine you'd like to use a GPU or other pass-through on, you'll need to convert it to UEFI boot first.

We still recommend using win10-template-v53 or above, but if you reckon it's more beneficial to upgrade it yourself, here are the steps:

  1. Enable defrag service
  2. Create boot files on C drive
  3. Set C disk as Active
  4. Convert the system to UEFI
  5. Modify kvm config to support UEFI
  6. Fix DaDesktop BIOS boot option
  7. Upgrade virtio-win drivers
  8. Disable defrag service
  9. Optional: move partition in front of system partition to support automatic disk resizing
     

1. Enable Defrag service

  1. Run Command Prompt as Administrator
  2. Run:
    sc config defragsvc start= demand

2. Make C: disk bootable

  1. In a command prompt as admin, run:

    bcdboot.exe c:\windows /s c:

3. Set C: disk as Active

  1. Run Disk Management
  2. Right click on C: partition
  3. Set Active
     

4. Convert the system to UEFI

  1. In a command prompt as admin, run:
   mbr2gpt.exe /concver /allowFullOS

 

5. Modify kvm config to support UEFI

  1. Log in using SSH to ddnode
  2. Ensure you run the command as root
  3. Copy OVMF_VARS.fd and qemu.conf from a template that supports UEFI boot, e.g.:

    cp /var/lib/kvm/win10-template-v51/OVMF_VARS.fd /var/lib/kvm/yourimagename/
    cp /var/lib/kvm/win10-template-v51/qemu.conf /var/lib/kvm/yourimagename/

6. Fix DaDesktop BIOS boot option

  1. Stop and start the machine via the dd4t.dadesktop.com GUI or API
  2. The system will boot into the UEFI Shell
  3. Type: "exit"
  4. Goto BootManagement TODO: FINISH IT
  5. Press F10 to save
  6. Exit BIOS
     

7. Upgrade Virt-io drivers

Some templates may have an outdated VGA driver, which can cause issues like being unable to change resolution. To fix this:

  1. On your desktop, download the latest version of the drivers: https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.240-1/virtio-win-0.1.240.iso
  2. Install: TODO exact file name
  3. Reboot
     

8. Disable DEFRAG Service

  1. Run Command Prompt as Administrator
  2. Run:
    sc config defragsvc start= disabled

 

9. Optional: move partition in front of system partition to support automatic disk resizing

 

  1. Boot the system into Rescue mode
  2. Use GParted to move the partition in front of the system partition
  3. Reboot

10. Install Idd drivers

  1. https://github.com/ge9/IddSampleDriver
  2. Download it from here: https://github.com/ge9/IddSampleDriver/releases
  3. Extract to C:\ (otherwise it won't work)
  4. Install certificate (as root)
  5. Install the driver (right-click on .inf file and install)