feat(fwupd): Update fwupd to v2.0.20 and promote to SPECS#17817
Draft
corvus-callidus wants to merge 2 commits into
Draft
feat(fwupd): Update fwupd to v2.0.20 and promote to SPECS#17817corvus-callidus wants to merge 2 commits into
corvus-callidus wants to merge 2 commits into
Conversation
Promote fwupd and its dependencies from SPECS-EXTENDED to SPECS:
- libjcat (hard dep for fwupd metadata verification)
- libxmlb (hard dep for fwupd AppStream XML handling)
- libstemmer (dep of libxmlb)
Meson options removed (no longer exist in 2.0.20):
- plugin_uefi_capsule, plugin_uefi_pk, plugin_tpm (auto-detected)
- plugin_gpio, plugin_msr (auto-detected)
- plugin_powerd (ChromeOS plugin dropped upstream)
- launchd (macOS support, auto-detected)
Meson options removed (upstream default is already correct):
- efi_binary (default is false; we don't build fwupd-efi from within fwupd)
Meson options added:
- cbor=disabled (coSWID/uSWID firmware supply-chain metadata not needed
for UEFI capsule updates; avoids promoting libcbor)
Meson options changed to disabled:
- plugin_flashrom (SPI flash programming, not needed for UEFI capsule
updates; avoids promoting flashrom, libftdi, libjaylink)
- passim (optional P2P firmware caching daemon, not needed for direct
capsule delivery; avoids promoting passim)
- plugin_modem_manager (cellular modem firmware updates, not relevant for
our server/cloud use case; avoids promoting ModemManager)
Other spec changes:
- Source changed to GitHub archive tarball
- Added BuildRequires: libmnl-devel
- Replaced %%{valgrind_arches} macro with explicit x86_64 aarch64
(macro is provided by valgrind-devel and creates a chicken-and-egg
dependency during initial builds)
- Backport upstream 964aa10: reprocess device metadata after coldplug to ensure <requires><firmware> tags resolve against the full device tree - Backport upstream aadaf0b: defer ensure_device_supported until post-coldplug to avoid redundant metadata processing during startup - Restructure test conditionals: use with_check for %check execution, enable_tests for -tests subpackage (disabled by default)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Ship fwupd 2.0.20 on Azure Linux 3.0 to provide a user-friendly mechanism for updating the UEFI DB and KEK to include the 2023 CA and associated KEK.
Changes
fwupd 2.0.20 update (
SPECS/fwupd/fwupd.spec)Promoted
fwupdto SPECS and updated the version to 2.0.20, matching the Azure Linux 4 version and providing the UEFI key update functionality we need.The package has been minimized to avoid promoting unnecessary packages from SPECS-EXTENDED.
fwupd-efiis not required for DB or KEK updates and has not been included.Meson option changes
Removed (options no longer exist in 2.0.20):
-Dplugin_uefi_capsule=enabled-Dplugin_uefi_pk=enabled-Dplugin_tpm=enabled-Dplugin_gpio=enabled-Dplugin_msr=enabled-Dplugin_powerd=disabled-Dlaunchd=disabledRemoved (default is already correct):
-Defi_binary=falsefalseis the upstream default; omitting it has no effectAdded:
-Dcbor=disabledChanged from enabled to disabled:
-Dplugin_flashrom=disabled-Dplugin_modem_manager=disabled-Dpassim=disabledDependency promotions (SPECS-EXTENDED → SPECS)
Only the minimum set of dependencies was promoted:
Backported bug fixes
Backported two upstream commits to fix a bug found by @jejb (James Bottomley) affecting UEFI KEK enumeration:
964aa10— reprocess device metadata after coldplug to ensure<requires><firmware>tags resolve against the full device treeaadaf0b— deferensure_device_supporteduntil post-coldplug to avoid redundant metadata processing during startupAlso restructured test conditionals:
with_checkcontrols%checkexecution,enable_testscontrols the-testssubpackage (disabled by default).Testing