2021-10-12 10:08:10 +02:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
# Created by Tobias Powalowski <tpowa@archlinux.org>
|
|
|
|
|
|
|
|
build ()
|
|
|
|
{
|
2021-10-12 11:55:47 +02:00
|
|
|
# https://wiki.archlinux.org/title/Unified_Extensible_Firmware_Interface/Secure_Boot
|
2022-01-31 08:28:53 +01:00
|
|
|
_RUNNING_ARCH="$(uname -m)"
|
2022-02-03 22:05:49 +01:00
|
|
|
apps="openssl cert-to-efi-hash-list efi-readvar efi-updatevar efitool-mkusb flash-var \
|
2021-10-12 12:28:30 +02:00
|
|
|
hash-to-efi-sig-list sig-list-to-certs cert-to-efi-sig-list sign-efi-sig-list sbattach sbkeysync \
|
2021-10-14 21:34:46 +02:00
|
|
|
sbsiglist sbsign sbvarsign sbverify mokutil"
|
2021-10-12 10:08:10 +02:00
|
|
|
add_file "/etc/ssl/openssl.cnf"
|
|
|
|
for i in $apps; do
|
|
|
|
add_binary "$i"
|
|
|
|
done
|
2022-02-03 22:05:49 +01:00
|
|
|
# add mkkeys.sh,
|
|
|
|
# curl -s -L -O https://www.rodsbooks.com/efi-bootloaders/mkkeys.sh
|
|
|
|
# modiiied to use uuidgen instead of python
|
|
|
|
add_file "/usr/bin/archboot-mkkeys.sh" "/usr/bin/mkkeys.sh"
|
2021-10-15 10:16:35 +02:00
|
|
|
# add efitools files
|
2022-02-01 12:23:38 +01:00
|
|
|
[[ "${_RUNNING_ARCH}" == "x86_64" ]] && add_file "/usr/share/efitools/efi/PreLoader.efi"
|
2021-10-12 10:08:10 +02:00
|
|
|
add_file "/usr/share/efitools/efi/HashTool.efi"
|
|
|
|
add_file "/usr/share/efitools/efi/KeyTool.efi"
|
2022-01-31 08:28:53 +01:00
|
|
|
if [[ "${_RUNNING_ARCH}" == "x86_64" ]]; then
|
2022-01-30 16:16:45 +01:00
|
|
|
for i in shimx64.efi mmx64.efi mmia32.efi shimia32.efi; do
|
2022-02-18 15:50:06 +01:00
|
|
|
add_file "/usr/share/archboot/bootloader/${i}"
|
2022-01-30 16:16:45 +01:00
|
|
|
done
|
2022-01-06 18:31:16 +01:00
|
|
|
fi
|
2022-01-31 08:28:53 +01:00
|
|
|
if [[ "${_RUNNING_ARCH}" == "aarch64" ]]; then
|
2022-02-18 15:50:06 +01:00
|
|
|
for i in mmaa64.efi shimaa64.efi; do
|
|
|
|
add_file "/usr/share/archboot/bootloader/${i}"
|
2022-01-30 16:16:45 +01:00
|
|
|
done
|
2022-01-06 18:31:16 +01:00
|
|
|
fi
|
2021-10-14 15:12:56 +02:00
|
|
|
# add generate keys script
|
2021-10-15 11:11:37 +02:00
|
|
|
add_file "/usr/bin/archboot-secureboot-keys.sh" "/usr/bin/secureboot-keys.sh"
|
2021-10-12 10:08:10 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
help ()
|
|
|
|
{
|
|
|
|
cat<<HELPEOF
|
|
|
|
This hook includes secure boot tools on an archboot image.
|
|
|
|
HELPEOF
|
|
|
|
}
|