From 077d33c5035a51c50fa256330bbc82cde106855e Mon Sep 17 00:00:00 2001
From: Javier Martinez Canillas <javierm@redhat.com>
Date: Thu, 18 Jun 2020 11:19:00 +0200
Subject: [PATCH 217/220] Only mark GRUB as BLS supported in OSTree systems
 with a boot partition

The script grub2-switch-to-blscfg updates the grub2 EFI binary in OSTree
systems and marks that has BLS support, to indicate that's not necessary
to add menuentry commands since the BLS snippets can be used to populate
the GRUB boot menu.

But OSTree doesn't support installations that don't have a boot partition,
the BLS snippets assume that there will be one so this has to be checked
and only mark the bootloader as supporting BLS in OSTree installations
that have /boot as a mountpoint.

Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
---
 util/grub-switch-to-blscfg.in | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/util/grub-switch-to-blscfg.in b/util/grub-switch-to-blscfg.in
index cb22912..a851424 100644
--- a/util/grub-switch-to-blscfg.in
+++ b/util/grub-switch-to-blscfg.in
@@ -261,7 +261,8 @@ copy_bls() {
 # but only do this if the blsdir is not set, to make sure that the BLS
 # parsing module will search for the BLS snippets in the default path.
 if test -f /run/ostree-booted && test -d /sys/firmware/efi/efivars && \
-   ! ${grub_editenv} - list | grep -q blsdir; then
+   ! ${grub_editenv} - list | grep -q blsdir && \
+   mountpoint -q /boot; then
     grub_binary="$(find /usr/lib/ostree-boot/efi/EFI/${EFIDIR}/ -name grub*.efi)"
     install -m 700 ${grub_binary} ${grubdir} || exit 1
     # Create a hidden file to indicate that grub2 now has BLS support.
-- 
1.8.3.1

