2012-08-08 14:18:26

by Peter Jones

[permalink] [raw]
Subject: [PATCH] Use the UEFI shim to load grub.

For UEFI Secure Boot support, we need to install the shim pre-boot
loader, and use it to load grub2.
---
pyanaconda/bootloader.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/pyanaconda/bootloader.py b/pyanaconda/bootloader.py
index ea4de5e..02d0ea8 100644
--- a/pyanaconda/bootloader.py
+++ b/pyanaconda/bootloader.py
@@ -1749,7 +1749,7 @@ class GRUB2(GRUB):
self.stage2_device.format.sync(root=ROOT_PATH)

class EFIGRUB(GRUB2):
- packages = ["grub2-efi", "efibootmgr"]
+ packages = ["grub2-efi", "efibootmgr", "shim"]
can_dual_boot = False

@property
@@ -1809,7 +1809,7 @@ class EFIGRUB(GRUB2):
rc = self.efibootmgr("-c", "-w", "-L", productName,
"-d", boot_disk.path, "-p", boot_part_num,
"-l",
- self.efi_dir_as_efifs_dir + "\\grubx64.efi",
+ self.efi_dir_as_efifs_dir + "\\shim.efi",
root=ROOT_PATH,
stdout="/dev/tty5", stderr="/dev/tty5")
if rc:
--
1.7.11.2


2012-08-08 14:35:23

by Peter Jones

[permalink] [raw]
Subject: Re: [PATCH] Use the UEFI shim to load grub.

Obviously, this went to the wrong list of addresses. Sorry for all the
noise.

On Wed, 2012-08-08 at 10:18 -0400, Peter Jones wrote:
> For UEFI Secure Boot support, we need to install the shim pre-boot
> loader, and use it to load grub2.
> ---
> pyanaconda/bootloader.py | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/pyanaconda/bootloader.py b/pyanaconda/bootloader.py
> index ea4de5e..02d0ea8 100644
> --- a/pyanaconda/bootloader.py
> +++ b/pyanaconda/bootloader.py
> @@ -1749,7 +1749,7 @@ class GRUB2(GRUB):
> self.stage2_device.format.sync(root=ROOT_PATH)
>
> class EFIGRUB(GRUB2):
> - packages = ["grub2-efi", "efibootmgr"]
> + packages = ["grub2-efi", "efibootmgr", "shim"]
> can_dual_boot = False
>
> @property
> @@ -1809,7 +1809,7 @@ class EFIGRUB(GRUB2):
> rc = self.efibootmgr("-c", "-w", "-L", productName,
> "-d", boot_disk.path, "-p", boot_part_num,
> "-l",
> - self.efi_dir_as_efifs_dir + "\\grubx64.efi",
> + self.efi_dir_as_efifs_dir + "\\shim.efi",
> root=ROOT_PATH,
> stdout="/dev/tty5", stderr="/dev/tty5")
> if rc:

--
Peter