anyone can help debugging hidden EFI HVM boot option on Qubes?

12 views
Skip to first unread message

Guerlan

unread,
Apr 13, 2020, 2:29:42 AM4/13/20
to qubes-users

I'm on a quest to make macOS run under Qubes. This repo: https://github.com/foxlet/macOS-Simple-KVM does this for KVM with minimal effort, using a python tool that downloads a macOS base image through python directly from apple servers. This base image is responsible for downloading and installing the rest of the macOS. Anyone can do it!

This post is the only one I found that teaches how to install macOS on Qubes, but it's for Qubes 3, requires too much effort, and we have to trust someone's else macOS image. The main problems he addresses to install Qubes are:

  • Qubes 3 didn't have support for EFI boot (macOS only boots through EFI now), so he does a hack that allows him to boot through USB in legacy mode.

  • Xen had some bugs while running macOS, 2 patches were added

  • There are some incompatibility problems with qemu-xen and qemu upstream had to be used on some parts

  • Some kexts are needed

Well, turns out Qubes now has support for EFI boot on HVM mode, as a developer told me here: https://github.com/QubesOS/qubes-issues/issues/5767#issuecomment-612551107

I enabled it and tried to boot Windows 10 and Ubuntu 18.

Windows 10 kinda boots: the Windows logo appears, but then the CPU gets high (like 90%) all the time and nothing more hapens.

Ubuntu 18 also kinda boots: I can select the "try ubuntu without installation", but after that, the VM halts.

I think that if we can solve this EFI boot problem, we can easily put the qcow2 image generated from the macOS-Simple-KVM repository to run under Qubes. They already have the kexts needed for Qemu, and we can try to make those 2 macOS xen patches land on Qubes Xen tree, or check if they didn't already land.

I'm learning about OVMF in order to debug what happens when we try to boot into HVM EFI mode. Anyone have knowledge about this? If it boots but hangs or halts, then could it be that OVMF is working but something in Xen is broken?

I'm also reading Qemu source code. I can pass what I learned so far, and we can try to understand it better.


Please fell free to call me on github or comment things here about OVMF, Xen, Qemu, etc.

I have a macOS running under KVM rigth now on my other computer but I really wanted it to run Qubes. So why not try and learn a lot in the process?

Reply all
Reply to author
Forward
0 new messages