## START: Set by rpmautospec ## (rpmautospec version 0.8.4) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 6; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %global glib2_version 2.68.0 %global libxmlb_version 0.3.24 %global libusb_version 1.0.9 %global libcurl_version 7.62.0 %global systemd_version 249 # although we ship a few tiny python files these are utilities that 99.99% # of users do not need -- use this to avoid dragging python onto CoreOS %global __requires_exclude ^%{python3}$ # PPC64 is too slow to complete the tests under 3 minutes... %ifnarch ppc64le %global enable_tests 1 %endif %global enable_dummy 1 # fwupd.efi is only available on these arches %ifarch x86_64 aarch64 riscv64 loongarch64 %global have_uefi 1 %endif %ifarch i686 x86_64 %global have_msr 1 %endif # only available recently %if 0%{?fedora} >= 30 %global have_modem_manager 1 %endif %if 0%{?fedora} %global have_passim 1 %endif Summary: Firmware update daemon Name: fwupd Version: 2.1.8 Release: %autorelease -e 1 License: LGPL-2.1-or-later URL: https://github.com/fwupd/fwupd Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz # 0001-0010 intel-gsc: Intel Arc DG2 (A770) GSC/OPROM update fixes. # 0011-0021 genesys: HP Z27k G3 (MStar scaler) support. # Exported from the local combined-2.1.7 branch (tag 2.1.7 + both series). Patch0001: 0001-libfwupdplugin-Save-udev-read-events-with-the-offset.patch Patch0002: 0002-intel-gsc-Treat-an-unsupported-ARB-SVN-query-as-no-S.patch Patch0003: 0003-intel-gsc-Convert-the-GetConfig-SKU-index-with-the-s.patch Patch0004: 0004-intel-gsc-Accept-firmware-that-lists-more-than-one-S.patch Patch0005: 0005-intel-gsc-Only-send-the-selected-part-of-a-combined-.patch Patch0006: 0006-intel-gsc-Do-not-expect-a-reply-from-UpdateEnd-when-.patch Patch0007: 0007-intel-gsc-Wait-for-FWSTS1-to-report-idle-after-Updat.patch Patch0008: 0008-intel-gsc-Do-not-fail-the-update-when-the-reset-was-.patch Patch0009: 0009-intel-gsc-Also-bind-GSC-devices-exposed-by-the-i915-.patch Patch0010: 0010-intel-gsc-Add-enumeration-data-for-the-Intel-Arc-A77.patch Patch0011: 0011-genesys-Use-the-hub-proxy-for-the-outgoing-DDC-CI-co.patch Patch0012: 0012-trivial-Fix-a-unit-comment-and-the-DDC-CI-spelling-i.patch Patch0013: 0013-genesys-Do-not-hide-the-USB-hub-when-the-MStar-scale.patch Patch0014: 0014-genesys-Inhibit-the-scaler-when-GenesysScalerCfiFlas.patch Patch0015: 0015-genesys-Use-a-fixed-authentication-window-when-recor.patch Patch0016: 0016-genesys-Add-a-quirk-flag-for-scalers-that-replug-on-.patch Patch0017: 0017-genesys-Fall-back-to-the-firmware-ID-when-a-scaler-h.patch Patch0018: 0018-genesys-Add-a-firmware-parser-for-MStar-scaler-image.patch Patch0019: 0019-genesys-Support-level-1-MStar-scalers-with-no-public.patch Patch0020: 0020-genesys-Add-quirks-for-the-HP-Z27k-G3-USB-C-Monitor.patch Patch0021: 0021-genesys-Add-an-emulation-test-for-the-HP-Z27k-G3.patch BuildRequires: gettext BuildRequires: hwdata BuildRequires: glib2-devel >= %{glib2_version} BuildRequires: libxmlb-devel >= %{libxmlb_version} BuildRequires: libusb1-devel >= %{libusb_version} BuildRequires: libcurl-devel >= %{libcurl_version} BuildRequires: polkit-devel >= 0.103 BuildRequires: python3-packaging BuildRequires: python3-jinja2 BuildRequires: sqlite-devel BuildRequires: systemd >= %{systemd_version} BuildRequires: systemd-devel BuildRequires: libblkid-devel BuildRequires: readline-devel BuildRequires: libmnl-devel %if 0%{?have_passim} BuildRequires: passim-devel %endif BuildRequires: gobject-introspection-devel %ifarch %{valgrind_arches} BuildRequires: valgrind BuildRequires: valgrind-devel %endif BuildRequires: gi-docgen BuildRequires: gnutls-devel BuildRequires: gnutls-utils BuildRequires: meson BuildRequires: vala BuildRequires: pkgconfig(bash-completion) BuildRequires: git-core BuildRequires: libdrm-devel # For fu-polkit-test BuildRequires: polkit %if 0%{?have_modem_manager} BuildRequires: ModemManager-glib-devel >= 1.10.0 BuildRequires: libqmi-devel >= 1.22.0 BuildRequires: libmbim-devel %endif %if 0%{?have_uefi} BuildRequires: python3 python3-cairo python3-gobject BuildRequires: pango-devel BuildRequires: cairo-devel cairo-gobject-devel BuildRequires: freetype BuildRequires: fontconfig BuildRequires: google-noto-sans-cjk-ttc-fonts BuildRequires: tpm2-tss-devel >= 2.2.3 %endif Requires(post): systemd Requires(preun): systemd Requires(postun): systemd Requires: glib2%{?_isa} >= %{glib2_version} Requires: libxmlb%{?_isa} >= %{libxmlb_version} Requires: libusb1%{?_isa} >= %{libusb_version} Requires: shared-mime-info Obsoletes: dbxtool < 9 Provides: dbxtool Obsoletes: %{name}-plugin-flashrom < 2.1.4 # optional, but a really good idea Recommends: udisks2 Recommends: bluez Recommends: jq %if 0%{?have_passim} Recommends: passim %endif %if 0%{?have_modem_manager} Recommends: %{name}-plugin-modem-manager %endif %if 0%{?have_uefi} Recommends: %{name}-efi Recommends: %{name}-plugin-uefi-capsule-data %endif %description fwupd is a daemon to allow session software to update device firmware. %package devel Summary: Development package for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Obsoletes: libebitdo-devel < 0.7.5-3 Obsoletes: libdfu-devel < 1.0.0 %description devel Files for development with %{name}. %package tests Summary: Data files for installed tests Requires: %{name}%{?_isa} = %{version}-%{release} %description tests Data files for installed tests. %if 0%{?have_modem_manager} %package plugin-modem-manager Summary: fwupd plugin using ModemManger Requires: %{name}%{?_isa} = %{version}-%{release} %description plugin-modem-manager This provides the optional package which is only required on hardware that might have mobile broadband hardware. It is probably not required on servers. %endif %if 0%{?have_uefi} %package plugin-uefi-capsule-data Summary: Localized data for the UEFI UX capsule Requires: %{name}%{?_isa} = %{version}-%{release} %description plugin-uefi-capsule-data This provides the pregenerated BMP artwork for the UX capsule, which allows the "Installing firmware update…" localized text to be shown during a UEFI firmware update operation. This subpackage is probably not required on embedded hardware or server machines. %endif %prep %autosetup -p1 %build %meson \ -Dumockdev_tests=disabled \ -Ddocs=enabled \ %if 0%{?enable_tests} -Dtests=true \ %else -Dtests=false \ %endif %if 0%{?have_modem_manager} -Dplugin_modem_manager=enabled \ %else -Dplugin_modem_manager=disabled \ %endif %if 0%{?have_passim} -Dpassim=enabled \ %else -Dpassim=disabled \ %endif %ifarch i686 x86_64 -Dhsi=enabled \ %else -Dhsi=disabled \ %endif %ifarch %{valgrind_arches} -Dvalgrind=enabled \ %else -Dvalgrind=disabled \ %endif -Dman=true \ -Dsystemd_unit_user="" \ -Dbluez=enabled \ -Dsupported_build=enabled %meson_build %if 0%{?enable_tests} %check %meson_test %endif %install %meson_install mkdir -p --mode=0700 $RPM_BUILD_ROOT%{_localstatedir}/lib/fwupd # workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1757948 mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/fwupd %find_lang %{name} %post %systemd_post fwupd.service fwupd-refresh.timer %preun %systemd_preun fwupd.service fwupd-refresh.timer %postun %systemd_postun_with_restart fwupd.service fwupd-refresh.timer %triggerun -- fedora-release-common < 39-0.28 # For upgrades from versions before fwupd-refresh.timer was enabled by default systemctl --no-reload preset fwupd-refresh.timer &>/dev/null || : %files -f %{name}.lang %doc README.md %license COPYING %config(noreplace)%{_sysconfdir}/fwupd/fwupd.conf %dir %{_libexecdir}/fwupd %{_libexecdir}/fwupd/fwupd %ifarch x86_64 %{_libexecdir}/fwupd/fwupd-detect-cet %endif %if 0%{?have_uefi} %{_bindir}/dbxtool %endif %{_bindir}/fwupdmgr %{_bindir}/fwupdtool %dir %{_sysconfdir}/fwupd %dir %{_sysconfdir}/fwupd/bios-settings.d %{_sysconfdir}/fwupd/bios-settings.d/README.md %dir %{_sysconfdir}/fwupd/remotes.d %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs.conf %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs-embargo.conf %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf %config(noreplace)%{_sysconfdir}/pki/fwupd %{_sysconfdir}/pki/fwupd-metadata %if 0%{?have_msr} /usr/lib/modules-load.d/fwupd-msr.conf %endif /usr/lib/modules-load.d/fwupd-i2c.conf %{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf %{_datadir}/bash-completion/completions/fwupdmgr %{_datadir}/bash-completion/completions/fwupdtool %{_datadir}/fish/vendor_completions.d/fwupdmgr.fish %dir %{_datadir}/fwupd %dir %{_datadir}/fwupd/metainfo %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd*.metainfo.xml %dir %{_datadir}/fwupd/remotes.d %dir %{_datadir}/fwupd/remotes.d/vendor %dir %{_datadir}/fwupd/remotes.d/vendor/firmware %{_datadir}/fwupd/remotes.d/vendor/firmware/README.md %{_datadir}/dbus-1/interfaces/org.freedesktop.fwupd.xml %{_datadir}/polkit-1/actions/org.freedesktop.fwupd.policy %{_datadir}/polkit-1/rules.d/org.freedesktop.fwupd.rules %{_datadir}/dbus-1/system-services/org.freedesktop.fwupd.service %{_mandir}/man1/fwupdtool.1* %if 0%{?have_uefi} %{_mandir}/man1/dbxtool.* %endif %{_mandir}/man1/fwupdmgr.1* %{_mandir}/man5/* %{_mandir}/man8/* %{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml %{_datadir}/icons/hicolor/*/apps/org.freedesktop.fwupd.* %{_datadir}/fwupd/firmware_packager.py %{_datadir}/fwupd/simple_client.py %{_datadir}/fwupd/add_capsule_header.py %{_datadir}/fwupd/install_dell_bios_exe.py %{_unitdir}/fwupd.service %{_unitdir}/fwupd-refresh.service %{_unitdir}/fwupd-refresh.timer %dir %{_localstatedir}/lib/fwupd %dir %{_localstatedir}/cache/fwupd %dir %{_datadir}/fwupd/quirks.d %{_datadir}/fwupd/quirks.d/builtin.quirk.gz %{_datadir}/doc/fwupd/*.html %if 0%{?have_uefi} %config(noreplace)%{_sysconfdir}/grub.d/35_fwupd %endif %{_libdir}/libfwupd.so.3* %{_libdir}/girepository-1.0/Fwupd-2.0.typelib /usr/lib/systemd/system-shutdown/fwupd.shutdown %dir %{_libdir}/fwupd-%{version} %{_libdir}/fwupd-%{version}/libfwupd*.so %if 0%{?have_modem_manager} %files plugin-modem-manager %{_libdir}/fwupd-%{version}/libfu_plugin_modem_manager.so %endif %if 0%{?have_uefi} %files plugin-uefi-capsule-data %{_datadir}/fwupd/uefi-capsule-ux.zip %endif %files devel %{_datadir}/gir-1.0/Fwupd-2.0.gir %{_datadir}/doc/fwupd/libfwupdplugin %{_datadir}/doc/fwupd/libfwupd %{_datadir}/doc/libfwupdplugin %{_datadir}/doc/libfwupd %{_datadir}/vala/vapi %{_includedir}/fwupd-3 %{_libdir}/libfwupd*.so %{_libdir}/pkgconfig/fwupd.pc %files tests %if 0%{?enable_tests} %{_datadir}/fwupd/host-emulate.d/*.json.gz %{_datadir}/installed-tests/fwupd %{_libexecdir}/installed-tests/fwupd %{_datadir}/fwupd/remotes.d/fwupd-tests.conf %endif %changelog ## START: Generated by rpmautospec * Mon Oct 05 2026 Erik Berg - 2.1.8-6.1 - Rebase the patch series onto 2.1.8 * Mon Oct 05 2026 Erik Berg - 2.1.8-5.1 - Add the genesys HP Z27k G3 series * Mon Oct 05 2026 Erik Berg - 2.1.8-4.1 - Add "Do not fail the update when the reset was not observed" * Mon Oct 05 2026 Erik Berg - 2.1.8-3.1 - Add the intel-gsc Intel Arc DG2 (A770) series * Mon Oct 05 2026 Erik Berg - 2.1.8-2.1 - Add a numeric Release suffix so our NEVR sorts above Fedora's * Thu Sep 24 2026 Richard Hughes - 2.1.8-1 - New upstream release * Mon Jul 27 2026 Richard Hughes - 2.1.7-1 - New upstream release * Wed Jul 15 2026 Fedora Release Engineering - 2.1.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild * Wed Jul 01 2026 Richard Hughes - 2.1.6-1 - New upstream release * Wed Jun 24 2026 Richard Hughes - 2.1.5-3 - RPMAUTOSPEC: unresolvable merge ## END: Generated by rpmautospec