All right, I am making some progress with EFI installation (all tests done in KVM for now, not real hardware).
Previously, Calamares would fail at the very beginning, unable to create an EFI partition. Turns out it needed dosfstools
to do so, which is installed now on the ISO. So fixed.
Then it failed to install grub-efi-amd64
at module bootloader
. This is because it needs module sources-media
in order to have a working apt sources list to download the package. So it seems we will need this module, which creates a temporary sources.list in the chrooted installed environment, as well as module sources-media-unmount
which removes it at the end.
So now theoretically all works well, Calamares installs grub-efi, doesn’t complain and completes the installation. Problem: it won’t boot unless the Whonix-Host ISO is attached:
There is something broken somewhere, or conflicts with something, although Calamares installation logs don’t show anything alarming. I also did an installation with a vanilla live Debian 10 XFCE system with Calamares to compare between the two. I didn’t notice anything out of the extraordinary, logs seem pretty much the same.
I am kind of stuck at this stage. I can’t figure what’s going wrong. I will research some more, I’m sure it must be something really stupid blocking me.
EDIT: comparison of efibootmgr -v
on plain Debian 10 XFCE and Whonix-Host right after Calamares installation:
Debian 10
BootCurrent: 0004
Timeout: 0 seconds
BootOrder: 0004,0002,0001,0000,0003
Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331)
Boot0001* UEFI QEMU DVD-ROM QM00005 PciRoot(0x0)/Pci(0x6,0x0)/Sata(0,65535,0)N.....YM....R,Y.
Boot0002* UEFI Misc Device PciRoot(0x0)/Pci(0x8,0x0)N.....YM....R,Y.
Boot0003* EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0004* Debian HD(1,GPT,1155be0b-252a-46cb-9cd2-735846abcf0c,0x1000,0x96000)/File(\EFI\Debian\shimx64.efi)
Whonix-Host
BootCurrent: 0001
Timeout: 0 seconds
BootOrder: 0001,0004,0002,0000,0003
Boot0000* UiApp FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(462caa21-7614-4503-836e-8ab6f4662331)
Boot0001* UEFI QEMU DVD-ROM QM00005 PciRoot(0x0)/Pci(0x6,0x0)/Sata(0,65535,0)N.....YM....R,Y.
Boot0002* UEFI Misc Device PciRoot(0x0)/Pci(0x8,0x0)N.....YM....R,Y.
Boot0003* EFI Internal Shell FvVol(7cb8bdc9-f8eb-4f34-aaea-3ee4af6516a1)/FvFile(7c04a583-9e3e-4f1c-ad65-e05268d0b4d1)
Boot0004* Whonix-Host HD(1,GPT,aa03e154-6750-4877-9cc5-9d1fc075184b,0x1000,0x96000)/File(\EFI\Whonix-Host\shimx64.efi)
We see that Whonix-Host bootorder doesn’t default on entry 4. But even after correcting the order manually, it still doesn’t boot…