Stem UKI-stub
Stem is a UKI compatible implementation of the linux efi-stub. It’s an alternative to systemd-stub as the second UKI compatible efistub.
It aims to be fully compatible with anything that uses systemd-stub. So far it has been tested as verified with ukify UKIs and ZFSBootMenu.
While Stem aims to be compatible with systemd-stub, it does not implement every feature. So far Stem supports the following features:
Device tree loading (required for ARM or RISC-V)
TPM Measurment (both PCR 11 and PCR 12)
Random seed
Splash
Sbat
Variable exporting
Ucode embedding
Multi profile UKIs
Sbat
Stem contains it’s own sbat identifier following the specification:
sbat,1,SBAT Version,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md
stem,1,Rose,stem,1,https://git.pinkro.se/Rose/gardenhouse/stem.git/about/
TPM Measurment
Stem measures hashes into the TPM2 if available following the UAPI TPM specification.
PCR 11 contains measurments for the sections .linux,
.initrd, .ucode, .dtb and
.osrel.
PCR 12 contains measurments for the section
.cmdline.
PCR 13 is unused by Stem as it does not support initrd system extension images.
Further references
Stem Repository: git.pinkro.se codeberg
UAPI UKI spec: https://uapi-group.org/specifications/specs/unified_kernel_image/