5

I'm currently working on a tripple-boot system with Ubuntu 18.04, macOS and Windows. The standard bootloader that the firmware (ASUS Impact VII, APTIO-based EFI) is supposed to launch is Clover. Clover then runs GRUB 2, Apple's EFI bootloader or the Windows bootloader.

The problem is that when I update the grub-efi package on my Ubuntu 18.04 system via apt/dpkg, the EFI firmware will proceed to boot GRUB instead of Clover on the next reboot.

I understand that this happens because the GRUB setup changes the EFI variables to make itself the default bootloader. More specifically it does not pass --no-nvram to grub-install.

How can I make the GRUB EFI packages not modify the EFI boot variables via grub-install, so that Clover remains the default bootloader?

2 Answers 2

6

To answer my own question: The postinst script of grub-efi-amd64 has the feature I asked for. It will pass --no-nvram to the grub-install binary when the debconf variable grub2/update_nvram is false.

Run dpkg-reconfigure grub-efi-amd64 and answer "No" when prompted whether to maintain the nvram entries automatically.

1
1

There's a bug in grub-efi-amd64-signed https://bugs.launchpad.net/ubuntu/+source/grub2-signed/+bug/1969845 so it's impossible to prevent this behavior without changing grub-efi-amd64-signed's postinst script manually.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .