Gnome Boxes and UEFI?


I would like to know how to use Gnome Boxes in order to install VM in UEFI mode ?
Indeed, whatever iso i use to create a virtual machine : arch, manjaro, endeavous os, solus etc…

They all start with Seabios, thus in BIOS (MBR) mode. There are a lot of similar issues on forums/reddit, but i cannot find any solution.
Some say i have to install edk2-ovmf, but it’s already installed.

According to this issue reported on Gnome gitlab, it should be possible out of the box :frowning:

Thanks for your help

Forgive my ignorance - why is it EFI is required?

It’s not required per se, i could create a VM in any mode, BIOS or UEFI.

But i want to play/learn with manual partitioning, partition table, boot loader etc…

The problem is i can’t do this if my VM is created in BIOS mode, because i will have no other choice to use MBR and no GPT style partitions.

Does it make sense to you ?

Yes and no :slight_smile:

A BIOS boot can use GPT - you just need a tiny partition 1M with the partition type 0xEF02 (bios boot) to hold the loading mechanism.

I see but look, below is what i did within Calamares:

Then, at the bottom of the last screenshot, where should i install the bootloader ? In the system partition ? I do not have any GPT option.

I don’t know why you expect a GPT option - GPT is the partition table structure - just continue with the default for the loader - it is what the unformatted partition is used for.

Gnome Boxes is an extremely limited solution that is built to be a “single click” solution. It is super easy to use but offers almost no flexibility.

One trick that people sometimes use is to use virt-manager to modify the VMs that are created by gnome boxes. This works because both solutions are just different front-ends for libvirtd.

I do not know either to be honest, just because i have choosen the GPT partition table (on the first screenshot) and not MBR, i thought i would see it on the last screenshot to install the bootloader on.
Seeing MBR instead is confusing to me.

Yes but it should work with Tianocore, as seen in the gitlab issue