Fix previous commit: actually add support for Xen

This commit is contained in:
Alexandre CATTEAU 2024-12-31 12:53:48 +01:00
parent a0da1102e7
commit 8bef81726b

View File

@ -15,11 +15,6 @@ if [ -x /usr/bin/ukify ]; then
echo "Building UKI using systemd-ukify..."
$sudo ukify build --linux $path_to_vmlinuz_link/vmlinuz --initrd $path_to_vmlinuz_link/initrd.img \
--cmdline @/etc/kernel/cmdline --output $path_to_uki
if [[ -v xen_hypervisor ]] && [[ $xen_hypervisor = "yes" ]]; then
echo "Building UKI for Xen..."
$sudo ukify build --linux $path_to_vmlinuz_link/vmlinuz --initrd $path_to_vmlinuz_link/initrd.img \
--cmdline @/etc/kernel/cmdline_xen --output $path_to_xen_uki
fi
else
echo "Building UKI using objcopy..."
$sudo objcopy \
@ -28,15 +23,15 @@ else
--add-section .linux="$path_to_vmlinuz_link/vmlinuz" --change-section-vma .linux=0x40000 \
--add-section .initrd="$path_to_vmlinuz_link/initrd.img" --change-section-vma .initrd=0x3000000 \
/usr/lib/systemd/boot/efi/linuxx64.efi.stub $path_to_uki
if [[ -v xen_hypervisor ]] && [[ $xen_hypervisor = "yes" ]]; then
echo "Building UKI for Xen..."
$sudo objcopy \
--add-section .osrel=/etc/os-release --change-section-vma .osrel=0x20000 \
--add-section .cmdline="/etc/kernel/cmdline_xen" --change-section-vma .cmdline=0x30000 \
--add-section .linux="$path_to_vmlinuz_link/vmlinuz" --change-section-vma .linux=0x40000 \
--add-section .initrd="$path_to_vmlinuz_link/initrd.img" --change-section-vma .initrd=0x3000000 \
/usr/lib/systemd/boot/efi/linuxx64.efi.stub $path_to_xen_uki
fi
fi
if [[ -v xen_hypervisor ]] && [[ $xen_hypervisor = "yes" ]]; then
echo "Building UKI for Xen..."
$sudo objcopy \
--add-section .config=/boot/xen.cfg --change-section-vma .config=0xffff82d041000000 \
--add-section .kernel="$path_to_vmlinuz_link/vmlinuz" --change-section-vma .kernel=0xffff82d041100000 \
--add-section .ramdisk="$path_to_vmlinuz_link/initrd.img" --change-section-vma .ramdisk=0xffff82d042000000 \
/boot/xen.efi $path_to_xen_uki
fi
# Sign UKI