diff options
Diffstat (limited to 'meta/classes-recipe/systemd-boot.bbclass')
-rw-r--r-- | meta/classes-recipe/systemd-boot.bbclass | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/meta/classes-recipe/systemd-boot.bbclass b/meta/classes-recipe/systemd-boot.bbclass new file mode 100644 index 0000000000..5aa32dd997 --- /dev/null +++ b/meta/classes-recipe/systemd-boot.bbclass @@ -0,0 +1,35 @@ +# Copyright (C) 2016 Intel Corporation +# +# SPDX-License-Identifier: MIT + +# systemd-boot.bbclass - The "systemd-boot" is essentially the gummiboot merged into systemd. +# The original standalone gummiboot project is dead without any more +# maintenance. +# +# Set EFI_PROVIDER = "systemd-boot" to use systemd-boot on your live images instead of grub-efi +# (images built by image-live.bbclass) + +do_bootimg[depends] += "${MLPREFIX}systemd-boot:do_deploy" + +require conf/image-uefi.conf +# Need UUID utility code. +inherit fs-uuid + +efi_populate() { + efi_populate_common "$1" systemd + + # systemd-boot requires these paths for configuration files + # they are not customizable so no point in new vars + install -d ${DEST}/loader + install -d ${DEST}/loader/entries + install -m 0644 ${SYSTEMD_BOOT_CFG} ${DEST}/loader/loader.conf + for i in ${SYSTEMD_BOOT_ENTRIES}; do + install -m 0644 ${i} ${DEST}/loader/entries + done +} + +efi_iso_populate:append() { + cp -r $iso_dir/loader ${EFIIMGDIR} +} + +inherit systemd-boot-cfg |