Page MenuHomeFreeBSD

bsdinstall: create /EFI/BOOT directory in ESP
ClosedPublic

Authored by mhorne on Jan 15 2021, 4:18 PM.
Tags
None
Referenced Files
Unknown Object (File)
Wed, Nov 13, 10:44 PM
Unknown Object (File)
Tue, Nov 12, 8:23 AM
Unknown Object (File)
Oct 8 2024, 1:59 PM
Unknown Object (File)
Sep 28 2024, 5:35 AM
Unknown Object (File)
Sep 24 2024, 6:34 PM
Unknown Object (File)
Sep 15 2024, 10:06 PM
Unknown Object (File)
Sep 6 2024, 2:59 AM
Unknown Object (File)
Sep 5 2024, 12:26 PM
Subscribers
None

Details

Summary

If the installer is creating a new ESP, then this directory will not
exist and the subsequent cp will fail silently. This is usually of no
consequence if /EFI/freebsd/loader.efi is set up correctly.

Test Plan

bsdinstall to a blank disk, verify that /EFI/BOOT/BOOT${arch}.EFI is present on the ESP.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

mhorne created this revision.

Ping. Any objection to this patch?

The dirname got me thinking and that lead to these larger suggestions, as well as moving it earlier.

usr.sbin/bsdinstall/scripts/bootconfig
134–137

BOOTDIR="/efi/boot"
BOOTNAME="${BOOTDIR}/boot${ARCHBOOTNAME}.efi
FREEBSD_BOOTDIR="/efi/freebsd"

153–154

mkdir -p "${mntpt}/${FREEBSD_BOOTDIR}" "${mntpt}/${BOOTDIR}"

154–155

"${mntpt}/${FREEBSD_BOOTDIR}/loader.efi

169

This is too late. I'd suggest above.

usr.sbin/bsdinstall/scripts/bootconfig
169

Yep, that is much better. Will update shortly.

Incorporate imp's suggestions.

One further simplification, use $FREEBSD_BOOTNAME instead of $FREEBSD_BOOTDIR/loader.efi.

This revision is now accepted and ready to land.Jan 27 2021, 10:41 PM