Skip to content

feat(fwupd-efi): add AZL SBAT line, keep upstream provenance - #18227

Merged
christopherco merged 1 commit into
4.0from
lyrydber/fwupd-efi_sbat
Jul 29, 2026
Merged

feat(fwupd-efi): add AZL SBAT line, keep upstream provenance#18227
christopherco merged 1 commit into
4.0from
lyrydber/fwupd-efi_sbat

Conversation

@corvus-callidus

@corvus-callidus corvus-callidus commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

Summary

Adds Azure Linux SBAT identity metadata to the fwupd-efi binaries for proper SBAT-based revocation (AB#20493).

fwupd-efi generates only one downstream SBAT record through its Meson configuration. This change retargets that generated record from Fedora to Azure Linux, then inserts the original Fedora record back into .sbat before %pesign runs.

The Azure Linux record provides the distributor-owned SBAT identity needed for future revocation handling, while the Fedora record retains upstream provenance.

Implementation notes

The Fedora provenance EVR is temporarily pinned to 1.8-1.fc43. Azure Linux 4.0 is still pinned to an azldev version without the upstream-EVR macros from azure-linux-dev-tools#290. Replace this local macro with %fedora_upstream_version / %fedora_upstream_release once that work is available in 4.0.

Validation

  • Local and koji builds
  • Extracted the .sbat section from fwupdx64.efi:
$ objcopy --dump-section .sbat=/dev/stdout     usr/libexec/fwupd/efi/fwupdx64.efi
sbat,1,UEFI shim,sbat,1,https://github.com/rhboot/shim/blob/main/SBAT.md
fwupd-efi,1,Firmware update daemon,fwupd-efi,1.8,https://github.com/fwupd/fwupd-efi
fwupd-efi.fedora,1,The Fedora Project,fwupd-efi,1.8-1.fc43,https://src.fedoraproject.org/rpms/fwupd-efi
fwupd-efi.azurelinux,1,Microsoft,fwupd-efi,1.8-3.azl4,https://github.com/microsoft/azurelinux/issues

Add a fwupd-efi.azurelinux SBAT entry to fwupdx64/fwupdaa64.efi so the binary is identifiable in a Secure Boot revocation, as required for shim-review submission (AB#20493).

fwupd-efi generates its SBAT section at build time via efi/generate_sbat.py, which emits exactly one distro line from the meson -Defi_sbat_distro_* options. Retarget that single slot to azurelinux so the sanctioned generator emits the critical vendor line, then re-inject the upstream Fedora provenance line via objcopy in %install (before %pesign, so the signature covers the final .sbat).
@corvus-callidus
corvus-callidus requested a review from a team as a code owner July 27, 2026 21:42
Copilot AI review requested due to automatic review settings July 27, 2026 21:42

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Azure Linux SBAT identity to fwupd-efi while preserving Fedora provenance before signing.

Changes:

  • Adds SBAT configuration and provenance overlays.
  • Regenerates the spec and refreshes the component lock.
  • Moves the customized component into a dedicated definition.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated 1 comment.

File Description
base/comps/fwupd-efi/fwupd-efi.comp.toml Defines SBAT overlays.
base/comps/components.toml Removes the former inline entry.
specs/f/fwupd-efi/fwupd-efi.spec Contains rendered SBAT and signing changes.
locks/fwupd-efi.lock Refreshes the input fingerprint.

Comment thread base/comps/fwupd-efi/fwupd-efi.comp.toml
@corvus-callidus

Copy link
Copy Markdown
Contributor Author

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
3 pipeline(s) were filtered out due to trigger conditions.

@christopherco
christopherco merged commit 950734a into 4.0 Jul 29, 2026
14 checks passed
@christopherco
christopherco deleted the lyrydber/fwupd-efi_sbat branch July 29, 2026 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants