[packages/fwupd] Up to 2.1.7 (partially from DEVEL-2 branch)
arekm
arekm at pld-linux.org
Sun Aug 23 11:49:36 CEST 2026
commit 1265a61b3da90d7dc7b25083e800609ca49c3180
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Sun Aug 23 11:49:23 2026 +0200
Up to 2.1.7 (partially from DEVEL-2 branch)
fwupd.spec | 206 +++++++++++++++++++++++--------------------------------------
1 file changed, 78 insertions(+), 128 deletions(-)
---
diff --git a/fwupd.spec b/fwupd.spec
index f8aaff1..8480d23 100644
--- a/fwupd.spec
+++ b/fwupd.spec
@@ -1,80 +1,68 @@
#
# Conditional build:
%bcond_without apidocs
-%bcond_without efi # UEFI (and dell, redfish) support
-%bcond_without flashrom # flashrom plugin
%bcond_without modemmanager # modem_manager plugin
-%bcond_without thunderbolt # Thunderbolt support
%bcond_without static_libs # static libraries
+%bcond_with tests # build without tests
-%ifnarch %{ix86} %{x8664} x32 %{arm} aarch64
-%undefine with_efi
+# no build options for these: UEFI plugins follow allow_uefi, HSI follows host CPU
+%ifarch %{x8664} x32 aarch64 loongarch64 riscv64
+%define with_efi 1
%endif
%ifarch %{ix86} %{x8664} x32
-%define with_intel_spi 1
-%endif
-%ifarch %{ix86} %{x8664} x32
-%define with_msr 1
+%define with_hsi 1
%endif
Summary: System daemon for installing device firmware
Summary(pl.UTF-8): Demon systemowy do instalowania firmware'u urządzeń
Name: fwupd
-# for 2.0.x see DEVEL-2 branch
-Version: 1.9.31
+Version: 2.1.7
Release: 1
License: LGPL v2.1+
Group: Applications/System
#Source0Download: https://github.com/fwupd/fwupd/releases
Source0: https://github.com/fwupd/fwupd/releases/download/%{version}/%{name}-%{version}.tar.xz
-# Source0-md5: a170c8f2dc2e74a2e3de20896e20ce71
+# Source0-md5: c3472f4d47fedaae417a95fc4dc1f22b
URL: https://github.com/fwupd/fwupd
-%{?with_modemmanager:BuildRequires: ModemManager-devel >= 1.18.0}
+%{?with_modemmanager:BuildRequires: ModemManager-devel >= 1.22.0}
BuildRequires: bash-completion-devel >= 1:2.0
-%{?with_cairo:BuildRequires: cairo-devel}
BuildRequires: curl-devel >= 7.62.0
-%{?with_efi:BuildRequires: efivar-devel >= 33}
-# C11
-BuildRequires: gcc >= 6:4.7
+# C17
+BuildRequires: gcc >= 6:8
%ifarch x32
-BuildRequires: gcc-multilib-64 >= 6:4.7
+BuildRequires: gcc-multilib-64 >= 6:8
%endif
BuildRequires: gettext-tools >= 0.19.7
-%{?with_apidocs:BuildRequires: gi-docgen >= 2022.2}
+%{?with_apidocs:BuildRequires: gi-docgen >= 2021.1}
BuildRequires: glib2-devel >= 1:2.68.0
BuildRequires: gnutls-devel >= 3.6.0
BuildRequires: gobject-introspection-devel >= 0.9.8
-BuildRequires: json-glib-devel >= 1.6.0
-BuildRequires: libarchive-devel
-BuildRequires: libcbor-devel >= 0.7.0
+BuildRequires: libblkid-devel
BuildRequires: libdrm-devel >= 2.4.113
-%{?with_flashrom:BuildRequires: libflashrom-devel >= 1.2}
-BuildRequires: libgudev-devel >= 232
-BuildRequires: libgusb-devel >= 0.3.8
-BuildRequires: libjcat-devel >= 0.2.0
-%{?with_modemmanager:BuildRequires: libmbim-devel >= 1.26.0}
-%{?with_modemmanager:BuildRequires: libqmi-devel >= 1.30.0}
-BuildRequires: libuuid-devel
-BuildRequires: libxmlb-devel >= 0.3.18
+%{?with_modemmanager:BuildRequires: libmbim-devel >= 1.28.0}
+%{?with_modemmanager:BuildRequires: libqmi-devel >= 1.32.0}
+BuildRequires: libmnl-devel
+BuildRequires: libusb-devel >= 1.0
+BuildRequires: libxmlb-devel >= 0.3.19
# for <linux/nvme_ioctl.h>
BuildRequires: linux-libc-headers >= 7:4.4
-BuildRequires: meson >= 0.62.0
+BuildRequires: meson >= 0.63.0
BuildRequires: ninja >= 1.6
-BuildRequires: passim-devel >= 0.1.5
+BuildRequires: passim-devel >= 0.1.6
BuildRequires: pkgconfig
-BuildRequires: polkit-devel >= 0.114
-BuildRequires: protobuf-c-devel
+BuildRequires: polkit-devel >= 0.103
BuildRequires: python3 >= 1:3.0
+%{?with_tests:BuildRequires: python3-dbusmock}
BuildRequires: python3-jinja2
%{?with_apidocs:BuildRequires: python3-markdown >= 3.2}
+BuildRequires: readline-devel
BuildRequires: rpm-build >= 4.6
BuildRequires: rpmbuild(macros) >= 2.042
BuildRequires: sqlite3-devel >= 3
-BuildRequires: systemd-devel >= 1:211
-BuildRequires: systemd-units >= 1:211
+BuildRequires: systemd-devel >= 1:249
+BuildRequires: systemd-units >= 1:249
BuildRequires: tar >= 1:1.22
BuildRequires: tpm2-tss-devel >= 2.0
-BuildRequires: udev-devel
-%{?with_thunderbolt:BuildRequires: umockdev-devel}
+%{?with_tests:BuildRequires: umockdev-devel}
BuildRequires: vala
BuildRequires: xz
BuildRequires: xz-devel
@@ -87,12 +75,11 @@ BuildRequires: pango >= 1:1.26.0
BuildRequires: python3-pycairo
BuildRequires: python3-pygobject3
%endif
-%{?with_modemmanager:BuildRequires: ModemManager-libs >= 1.18.0}
+%{?with_modemmanager:BuildRequires: ModemManager-libs >= 1.22.0}
Requires: %{name}-libs = %{version}-%{release}
-%{?with_modemmanager:Requires: libmbim >= 1.26.0}
-%{?with_modemmanager:Requires: libqmi >= 1.30.0}
-Requires: polkit >= 0.114
-Requires: tpm2-tss >= 2.0
+%{?with_modemmanager:Requires: libmbim >= 1.28.0}
+%{?with_modemmanager:Requires: libqmi >= 1.32.0}
+Requires: polkit >= 0.103
%if %{with efi}
Suggests: fwupd-efi
%endif
@@ -145,16 +132,13 @@ Summary: Libraries for fwupd device firmware installing daemon
Summary(pl.UTF-8): Biblioteki dla demona fwupd instalującego aktualizacje firmware'u
Group: Libraries
Requires: curl-libs >= 7.62.0
-Requires: glib2-devel >= 1:2.68.0
+Requires: glib2 >= 1:2.68.0
Requires: gnutls-libs >= 3.6.0
-Requires: json-glib >= 1.6.0
-Requires: libcbor >= 0.7.0
-Requires: libgudev >= 232
-Requires: libgusb >= 0.3.8
-Requires: libjcat >= 0.2.0
-Requires: libxmlb >= 0.3.18
-Requires: passim-libs >= 0.1.5
-Requires: polkit-libs >= 0.114
+Requires: hwdata
+Requires: libxmlb >= 0.3.19
+Requires: passim-libs >= 0.1.6
+Requires: polkit-libs >= 0.103
+Requires: tpm2-tss >= 2.0
%description libs
Libraries for fwupd device firmware installing daemon.
@@ -169,8 +153,6 @@ Group: Development/Libraries
Requires: %{name}-libs = %{version}-%{release}
Requires: curl-devel >= 7.62.0
Requires: glib2-devel >= 1:2.68.0
-Requires: json-glib-devel >= 1.6.0
-Requires: libjcat-devel >= 0.2.0
%description devel
Header files for fwupd libraries.
@@ -217,77 +199,47 @@ API języka Vala do biblioteki fwupd.
%prep
%setup -q
+%{__sed} -i -e '1s,/usr/bin/env python3$,%{__python3},' contrib/firmware_packager/*.py
+
%build
%meson \
%{!?with_static_libs:--default-library=shared} \
+ -Dblkid=enabled \
-Dbluez=enabled \
- -Dcbor=enabled \
- -Dcompat_cli=true \
- -Dconsolekit=enabled \
- -Dcurl=enabled \
-Ddocs=%{__enabled_disabled apidocs} \
-Defi_binary=false \
- -Delogind=disabled \
-Dgnutls=enabled \
- -Dgudev=enabled \
- -Dgusb=enabled \
- -Dhsi=enabled \
+ -Dhsi=%{__enabled_disabled hsi} \
-Dintrospection=enabled \
- -Dlaunchd=disabled \
- -Dlibarchive=enabled \
- -Dlzma=enabled \
+ -Dlibdrm=enabled \
+ -Dlibmnl=enabled \
+ -Dlogind=enabled \
-Dpassim=enabled \
- -Doffline=enabled \
- -Dplugin_acpi_phat=enabled \
- -Dplugin_amdgpu=enabled \
- -Dplugin_android_boot=enabled \
- -Dplugin_bcm57xx=enabled \
- -Dplugin_cfu=enabled \
- -Dplugin_cpu=enabled \
- -Dplugin_emmc=enabled \
- -Dplugin_ep963x=enabled \
- -Dplugin_fastboot=enabled \
- -Dplugin_flashrom=%{__enabled_disabled flashrom} \
- -Dplugin_gpio=enabled \
- -Dplugin_igsc=enabled \
- -Dplugin_intel_me=enabled \
- %{?with_intel_spi:-Dplugin_intel_spi=true} \
- -Dplugin_kinetic_dp=enabled \
- -Dplugin_logitech_bulkcontroller=enabled \
- -Dplugin_logitech_scribe=enabled \
- -Dplugin_logitech_tap=enabled \
- -Dplugin_mediatek_scaler=enabled \
-Dplugin_modem_manager=%{__enabled_disabled modemmanager} \
- -Dplugin_msr=%{__enabled_disabled msr} \
- -Dplugin_mtd=enabled \
- -Dplugin_nitrokey=enabled \
- -Dplugin_nvme=enabled \
- -Dplugin_parade_lspcon=enabled \
- -Dplugin_pixart_rf=enabled \
- -Dplugin_powerd=enabled \
- -Dplugin_realtek_mst=enabled \
- -Dplugin_redfish=%{__enabled_disabled efi} \
- -Dplugin_scsi=enabled \
- -Dplugin_synaptics_mst=enabled \
- -Dplugin_synaptics_rmi=enabled \
- -Dplugin_tpm=enabled \
- -Dplugin_uefi_capsule=%{__enabled_disabled efi} \
- -Dplugin_uefi_pk=%{__enabled_disabled efi} \
- -Dplugin_uf2=enabled \
- -Dplugin_upower=enabled \
-Dpolkit=enabled \
- -Dsqlite=enabled \
+ -Dpython=%{__python3} \
+ -Dreadline=enabled \
-Dsupported_build=disabled \
-Dsystemd=enabled \
- -Dtests=false
+ -Dtests=%{__true_false tests} \
+ -Dumockdev_tests=%{__enabled_disabled tests} \
+ -Dvalgrind=disabled \
+ -Dvendor_ids_dir=/lib/hwdata
%meson_build
+%{?with_tests:%meson_test}
+
%install
rm -rf $RPM_BUILD_ROOT
%meson_install
+%if %{with tests}
+%{__rm} -r $RPM_BUILD_ROOT%{_libexecdir}/installed-tests \
+ $RPM_BUILD_ROOT%{_datadir}/installed-tests
+%endif
+
for pdoc in plugins/*/README.md ; do
pname=$(basename $(dirname $pdoc))
cp -p plugins/${pname}/README.md README-${pname}.md
@@ -298,6 +250,12 @@ install -d $RPM_BUILD_ROOT%{_gidocdir}
%{__mv} $RPM_BUILD_ROOT%{_docdir}/*fwupd* $RPM_BUILD_ROOT%{_gidocdir}
%endif
+%if %{with efi}
+# PLD grub2 patches grub_mkconfig_dir to /lib/grub.d; /etc/grub.d is never read
+install -d $RPM_BUILD_ROOT/lib
+%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/grub.d $RPM_BUILD_ROOT/lib/grub.d
+%endif
+
%find_lang %{name}
%clean
@@ -310,9 +268,6 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc MAINTAINERS README.md README-*.md SECURITY.md
%{?with_efi:%attr(755,root,root) %{_bindir}/dbxtool}
-%attr(755,root,root) %{_bindir}/dfu-tool
-%attr(755,root,root) %{_bindir}/fwupdagent
-%{?with_efi:%attr(755,root,root) %{_bindir}/fwupdate}
%attr(755,root,root) %{_bindir}/fwupdmgr
%attr(755,root,root) %{_bindir}/fwupdtool
%dir %{_libexecdir}/fwupd
@@ -320,40 +275,36 @@ rm -rf $RPM_BUILD_ROOT
%ifarch %{x8664} x32
%attr(755,root,root) %{_libexecdir}/fwupd/fwupd-detect-cet
%endif
-%attr(755,root,root) %{_libexecdir}/fwupd/fwupdoffline
-%if %{with flashrom}
-%attr(755,root,root) %{fwupd_plugins_dir}/libfu_plugin_flashrom.so
-%endif
%if %{with modemmanager}
%attr(755,root,root) %{fwupd_plugins_dir}/libfu_plugin_modem_manager.so
%endif
%dir %{_sysconfdir}/fwupd
%dir %{_sysconfdir}/fwupd/bios-settings.d
%{_sysconfdir}/fwupd/bios-settings.d/README.md
-%config(noreplace) %verify(not md5 mtime size)%{_sysconfdir}/fwupd/fwupd.conf
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/fwupd.conf
%dir %{_sysconfdir}/fwupd/remotes.d
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs.conf
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs-embargo.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf
# used with -Dvendor_metadata=true (see data/remotes.d/README.md)
#%config(noreplace missingok) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor.conf
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf
-#%{_sysconfdir}/grub.d/35_fwupd
%dir %{_sysconfdir}/pki/fwupd
-%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Foundation-Firmware
-%{_sysconfdir}/pki/fwupd/GPG-KEY-Linux-Vendor-Firmware-Service
%{_sysconfdir}/pki/fwupd/LVFS-CA.pem
+%{_sysconfdir}/pki/fwupd/LVFS-CA-2025PQ.pem
%dir %{_sysconfdir}/pki/fwupd-metadata
-%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Foundation-Metadata
-%{_sysconfdir}/pki/fwupd-metadata/GPG-KEY-Linux-Vendor-Firmware-Service
%{_sysconfdir}/pki/fwupd-metadata/LVFS-CA.pem
-%{?with_msr:%{_prefix}/lib/modules-load.d/fwupd-msr.conf}
+%{_sysconfdir}/pki/fwupd-metadata/LVFS-CA-2025PQ.pem
+%{_prefix}/lib/modules-load.d/fwupd-i2c.conf
+%{?with_hsi:%{_prefix}/lib/modules-load.d/fwupd-msr.conf}
+%if %{with efi}
+%dir /lib/grub.d
+%attr(755,root,root) /lib/grub.d/35_fwupd
+%endif
%{systemdunitdir}/fwupd.service
-%{systemdunitdir}/fwupd-offline-update.service
%{systemdunitdir}/fwupd-refresh.service
%{systemdunitdir}/fwupd-refresh.timer
-%{systemdunitdir}/system-update.target.wants/fwupd-offline-update.service
%attr(754,root,root) /lib/systemd/system-shutdown/fwupd.shutdown
-/lib/udev/rules.d/90-fwupd-devices.rules
%{_prefix}/lib/sysusers.d/fwupd.conf
%{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf
%{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service
@@ -363,7 +314,7 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_datadir}/fwupd/install_dell_bios_exe.py
%attr(755,root,root) %{_datadir}/fwupd/simple_client.py
%if %{with efi}
-%{_datadir}/fwupd/uefi-capsule-ux.tar.xz
+%{_datadir}/fwupd/uefi-capsule-ux.zip
%endif
%{_datadir}/fwupd/quirks.d
%dir %{_datadir}/fwupd/remotes.d
@@ -374,11 +325,10 @@ rm -rf $RPM_BUILD_ROOT
%{_datadir}/fwupd/metainfo/org.freedesktop.fwupd.remotes.lvfs.metainfo.xml
%{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy
%{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules
+%{_iconsdir}/hicolor/64x64/apps/org.freedesktop.fwupd.png
+%{_iconsdir}/hicolor/128x128/apps/org.freedesktop.fwupd.png
%{_iconsdir}/hicolor/scalable/apps/org.freedesktop.fwupd.svg
%{?with_efi:%{_mandir}/man1/dbxtool.1*}
-%{_mandir}/man1/dfu-tool.1*
-%{_mandir}/man1/fwupdagent.1*
-%{?with_efi:%{_mandir}/man1/fwupdate.1*}
%{_mandir}/man1/fwupdmgr.1*
%{_mandir}/man1/fwupdtool.1*
%{_mandir}/man5/fwupd-remotes.d.5*
@@ -397,7 +347,7 @@ rm -rf $RPM_BUILD_ROOT
%files libs
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libfwupd.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libfwupd.so.2
+%ghost %{_libdir}/libfwupd.so.3
%{_libdir}/girepository-1.0/Fwupd-2.0.typelib
%dir %{fwupd_plugins_dir}
%attr(755,root,root) %{fwupd_plugins_dir}/libfwupdengine.so
@@ -407,8 +357,8 @@ rm -rf $RPM_BUILD_ROOT
%files devel
%defattr(644,root,root,755)
%doc libfwupd/README.md
-%attr(755,root,root) %{_libdir}/libfwupd.so
-%{_includedir}/fwupd-1
+%{_libdir}/libfwupd.so
+%{_includedir}/fwupd-3
%{_datadir}/gir-1.0/Fwupd-2.0.gir
%{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml
%{_pkgconfigdir}/fwupd.pc
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/fwupd.git/commitdiff/1265a61b3da90d7dc7b25083e800609ca49c3180
More information about the pld-cvs-commit
mailing list