diff --git a/.gitignore b/.gitignore index d18d66c..b1db404 100644 --- a/.gitignore +++ b/.gitignore @@ -94,3 +94,7 @@ /fwupd-efi-1.3.tar.xz /fwupd-efi-1.4.tar.xz /fwupd-1.8.10.tar.xz +/fwupd-1.8.16.tar.xz +/DBXUpdate-20230509-aa64.cab +/DBXUpdate-20230509-ia32.cab +/DBXUpdate-20230509-x64.cab diff --git a/0001-Do-not-make-any-of-the-HWIDs-setup-failures-fatal.patch b/0001-Do-not-make-any-of-the-HWIDs-setup-failures-fatal.patch deleted file mode 100644 index 9b7c50c..0000000 --- a/0001-Do-not-make-any-of-the-HWIDs-setup-failures-fatal.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 90e5a58736645cdd37bf4c63f9a4056951dfb3f2 Mon Sep 17 00:00:00 2001 -From: Richard Hughes -Date: Tue, 24 Jan 2023 09:52:17 +0000 -Subject: [PATCH] Do not make any of the HWIDs setup failures fatal - -It's perfectly okay to have no HWIDs defined. - -Should help with https://github.com/fwupd/fwupd/issues/5402 ---- - libfwupdplugin/fu-context.c | 73 +++++++++++-------------------------- - 1 file changed, 21 insertions(+), 52 deletions(-) - -diff --git a/libfwupdplugin/fu-context.c b/libfwupdplugin/fu-context.c -index 08618b435..11b4b1b38 100644 ---- a/libfwupdplugin/fu-context.c -+++ b/libfwupdplugin/fu-context.c -@@ -767,6 +767,8 @@ fu_context_security_changed(FuContext *self) - g_signal_emit(self, signals[SIGNAL_SECURITY_CHANGED], 0); - } - -+typedef gboolean (*FuContextHwidsSetupFunc)(FuContext *self, FuHwids *hwids, GError **error); -+ - /** - * fu_context_load_hwinfo: - * @self: a #FuContext -@@ -786,62 +788,29 @@ fu_context_load_hwinfo(FuContext *self, FuContextHwidFlags flags, GError **error - GPtrArray *guids; - g_autoptr(GError) error_hwids = NULL; - g_autoptr(GError) error_bios_settings = NULL; -+ struct { -+ const gchar *name; -+ FuContextHwidFlags flag; -+ FuContextHwidsSetupFunc func; -+ } hwids_setup_map[] = {{"config", FU_CONTEXT_HWID_FLAG_LOAD_CONFIG, fu_hwids_config_setup}, -+ {"smbios", FU_CONTEXT_HWID_FLAG_LOAD_SMBIOS, fu_hwids_smbios_setup}, -+ {"fdt", FU_CONTEXT_HWID_FLAG_LOAD_FDT, fu_hwids_fdt_setup}, -+ {"kenv", FU_CONTEXT_HWID_FLAG_LOAD_KENV, fu_hwids_kenv_setup}, -+ {"dmi", FU_CONTEXT_HWID_FLAG_LOAD_DMI, fu_hwids_dmi_setup}, -+ {NULL, FU_CONTEXT_HWID_FLAG_NONE, NULL}}; - - g_return_val_if_fail(FU_IS_CONTEXT(self), FALSE); - g_return_val_if_fail(error == NULL || *error == NULL, FALSE); - -- if ((flags & FU_CONTEXT_HWID_FLAG_LOAD_CONFIG) > 0) { -- g_autoptr(GError) error_local = NULL; -- if (!fu_hwids_config_setup(self, priv->hwids, &error_local)) { -- if (!g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { -- g_propagate_prefixed_error(error, -- g_steal_pointer(&error_local), -- "Failed to load HWIDs config: "); -- return FALSE; -- } -- } -- } -- if ((flags & FU_CONTEXT_HWID_FLAG_LOAD_DMI) > 0) { -- g_autoptr(GError) error_local = NULL; -- if (!fu_hwids_dmi_setup(self, priv->hwids, &error_local)) { -- if (!g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { -- g_propagate_prefixed_error(error, -- g_steal_pointer(&error_local), -- "Failed to load HWIDs DMI: "); -- return FALSE; -- } -- } -- } -- if ((flags & FU_CONTEXT_HWID_FLAG_LOAD_FDT) > 0) { -- g_autoptr(GError) error_local = NULL; -- if (!fu_hwids_fdt_setup(self, priv->hwids, &error_local)) { -- if (!g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { -- g_propagate_prefixed_error(error, -- g_steal_pointer(&error_local), -- "Failed to load HWIDs FDT: "); -- return FALSE; -- } -- } -- } -- if ((flags & FU_CONTEXT_HWID_FLAG_LOAD_KENV) > 0) { -- g_autoptr(GError) error_local = NULL; -- if (!fu_hwids_kenv_setup(self, priv->hwids, &error_local)) { -- if (!g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { -- g_propagate_prefixed_error(error, -- g_steal_pointer(&error_local), -- "Failed to load HWIDs kenv: "); -- return FALSE; -- } -- } -- } -- if ((flags & FU_CONTEXT_HWID_FLAG_LOAD_SMBIOS) > 0) { -- g_autoptr(GError) error_local = NULL; -- if (!fu_hwids_smbios_setup(self, priv->hwids, &error_local)) { -- if (!g_error_matches(error_local, FWUPD_ERROR, FWUPD_ERROR_NOT_SUPPORTED)) { -- g_propagate_prefixed_error(error, -- g_steal_pointer(&error_local), -- "Failed to load SMBIOS: "); -- return FALSE; -+ /* run all the HWID setup funcs */ -+ for (guint i = 0; hwids_setup_map[i].name != NULL; i++) { -+ if ((flags & hwids_setup_map[i].flag) > 0) { -+ g_autoptr(GError) error_local = NULL; -+ if (!hwids_setup_map[i].func(self, priv->hwids, &error_local)) { -+ g_debug("failed to load %s: %s", -+ hwids_setup_map[i].name, -+ error_local->message); -+ break; - } - } - } --- -2.39.1 - diff --git a/0001-Only-include-the-attribute-not-exported-warning-on-d.patch b/0001-Only-include-the-attribute-not-exported-warning-on-d.patch deleted file mode 100644 index 65c2246..0000000 --- a/0001-Only-include-the-attribute-not-exported-warning-on-d.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 19db23f9b8a64597564ce1b474eb6c384a57125f Mon Sep 17 00:00:00 2001 -From: Richard Hughes -Date: Wed, 2 Nov 2022 09:31:53 +0000 -Subject: [PATCH] Only include the 'attribute not exported' warning on debug - builds - -End users are not really capable of fixing the root issue, and people seem -overly worried that something bad has gone wrong. - -Fixes https://github.com/fwupd/fwupd/issues/5077 ---- - libfwupdplugin/fu-bios-settings.c | 2 +- - libfwupdplugin/fu-self-test.c | 2 ++ - plugins/lenovo-thinklmi/fu-self-test.c | 2 ++ - 3 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/libfwupdplugin/fu-bios-settings.c b/libfwupdplugin/fu-bios-settings.c -index 6151c8289..8ea1269d7 100644 ---- a/libfwupdplugin/fu-bios-settings.c -+++ b/libfwupdplugin/fu-bios-settings.c -@@ -276,7 +276,7 @@ fu_bios_setting_set_type(FuBiosSettings *self, FwupdBiosSetting *attr, GError ** - - /* lenovo thinklmi seems to be missing it even though it's mandatory :/ */ - if (!fu_bios_setting_get_key(attr, "type", &data, &error_key)) { --#if GLIB_CHECK_VERSION(2, 64, 0) -+#if GLIB_CHECK_VERSION(2, 64, 0) && !defined(SUPPORTED_BUILD) - g_warning_once("KERNEL BUG: 'type' attribute not exported: (%s)", - error_key->message); - #else -diff --git a/libfwupdplugin/fu-self-test.c b/libfwupdplugin/fu-self-test.c -index c105fa271..c670b3a80 100644 ---- a/libfwupdplugin/fu-self-test.c -+++ b/libfwupdplugin/fu-self-test.c -@@ -3117,7 +3117,9 @@ fu_bios_settings_load_func(void) - test_dir = g_test_build_filename(G_TEST_DIST, "tests", "bios-attrs", "lenovo-p620", NULL); - (void)g_setenv("FWUPD_SYSFSFWATTRIBDIR", test_dir, TRUE); - -+#if GLIB_CHECK_VERSION(2, 64, 0) && !defined(SUPPORTED_BUILD) - g_test_expect_message("FuBiosSettings", G_LOG_LEVEL_WARNING, "*BUG*"); -+#endif - ret = fu_context_reload_bios_settings(ctx, &error); - g_assert_no_error(error); - g_assert_true(ret); -diff --git a/plugins/lenovo-thinklmi/fu-self-test.c b/plugins/lenovo-thinklmi/fu-self-test.c -index 4777a2ae1..9e20a8cf5 100644 ---- a/plugins/lenovo-thinklmi/fu-self-test.c -+++ b/plugins/lenovo-thinklmi/fu-self-test.c -@@ -39,7 +39,9 @@ fu_test_self_init(FuTest *self, GError **error_global) - g_autoptr(FuProgress) progress = fu_progress_new(G_STRLOC); - g_autoptr(GError) error = NULL; - -+#if GLIB_CHECK_VERSION(2, 64, 0) && !defined(SUPPORTED_BUILD) - g_test_expect_message("FuBiosSettings", G_LOG_LEVEL_WARNING, "*KERNEL*BUG*"); -+#endif - - ret = fu_context_load_quirks(ctx, - FU_QUIRKS_LOAD_FLAG_NO_CACHE | FU_QUIRKS_LOAD_FLAG_NO_VERIFY, --- -2.39.1 - diff --git a/0001-modem-manager-remove-improper-use-of-assert.patch b/0001-modem-manager-remove-improper-use-of-assert.patch deleted file mode 100644 index 4b97ef0..0000000 --- a/0001-modem-manager-remove-improper-use-of-assert.patch +++ /dev/null @@ -1,28 +0,0 @@ -From af5fb429c8e726d1d7455b2d0e5d4263edbd4290 Mon Sep 17 00:00:00 2001 -From: Ivan Mikhanchuk -Date: Tue, 24 Jan 2023 17:06:09 -0800 -Subject: [PATCH] modem-manager: remove improper use of assert - -FuSaharaLoader being NULL is normal for devices that only -support Firehose and don't use Sahara QDL port. ---- - plugins/modem-manager/fu-sahara-loader.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/plugins/modem-manager/fu-sahara-loader.c b/plugins/modem-manager/fu-sahara-loader.c -index 89c620fbe..78f24036f 100644 ---- a/plugins/modem-manager/fu-sahara-loader.c -+++ b/plugins/modem-manager/fu-sahara-loader.c -@@ -206,7 +206,8 @@ fu_sahara_loader_close(FuSaharaLoader *self, GError **error) - gboolean - fu_sahara_loader_qdl_is_open(FuSaharaLoader *self) - { -- g_return_val_if_fail(self != NULL, FALSE); -+ if (self == NULL) -+ return FALSE; - - return fu_usb_device_is_open(self->usb_device); - } --- -2.39.1 - diff --git a/0001-trivial-Fix-build-fix-when-using-ppc64le-system.patch b/0001-trivial-Fix-build-fix-when-using-ppc64le-system.patch deleted file mode 100644 index 5fb8fa3..0000000 --- a/0001-trivial-Fix-build-fix-when-using-ppc64le-system.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 7f427d567d497048772bad59e098528605e563ce Mon Sep 17 00:00:00 2001 -From: Richard Hughes -Date: Mon, 23 Jan 2023 11:22:43 +0000 -Subject: [PATCH] trivial: Fix build fix when using ppc64le system - ---- - src/meson.build | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/meson.build b/src/meson.build -index b9f6736f2..f3ca734ee 100644 ---- a/src/meson.build -+++ b/src/meson.build -@@ -197,6 +197,7 @@ plugins_hdr = custom_target('fwupd-generate-plugins-header', - fwupdengine = library( - 'fwupdengine', - resources_src, -+ plugins_hdr, - sources: fwupd_engine_src, - install: true, - install_rpath: libdir_pkg, --- -2.39.1 - diff --git a/0001-wacom-usb-Retry-set_report-on-failure.patch b/0001-wacom-usb-Retry-set_report-on-failure.patch deleted file mode 100644 index 9fc7302..0000000 --- a/0001-wacom-usb-Retry-set_report-on-failure.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 8076090a000d4adde59fddeadb17a6f769993d1e Mon Sep 17 00:00:00 2001 -From: Jason Gerecke -Date: Tue, 17 Jan 2023 14:24:14 -0800 -Subject: [PATCH] wacom-usb: Retry set_report on failure - -Sometimes the flash process will randomly hang and time-out when sending -data to the device. We currently do not use any retry logic, so if this -happens the flash attempt is treated as a failure. This can be a source -of worry or frustration, especially if subsequent manual retries fail -in a similar way. - -Adding FU_HID_DEVICE_FLAG_RETRY_FAILURE to the list of flags used when -calling fu_hid_device_set_report allows fwupd to try sending a block -multiple times if such a time-out (or other error) occurs. This makes -the flash process less prone to failure. - -Signed-off-by: Jason Gerecke ---- - plugins/wacom-usb/fu-wac-device.c | 4 +++- - 1 file changed, 3 insertions(+), 1 deletion(-) - -diff --git a/plugins/wacom-usb/fu-wac-device.c b/plugins/wacom-usb/fu-wac-device.c -index 9162d19a9..714761b1e 100644 ---- a/plugins/wacom-usb/fu-wac-device.c -+++ b/plugins/wacom-usb/fu-wac-device.c -@@ -182,7 +182,8 @@ fu_wac_device_set_feature_report(FuWacDevice *self, - buf, - bufsz, - FU_WAC_DEVICE_TIMEOUT, -- flags | FU_HID_DEVICE_FLAG_IS_FEATURE, -+ flags | FU_HID_DEVICE_FLAG_IS_FEATURE | -+ FU_HID_DEVICE_FLAG_RETRY_FAILURE, - error); - } - -@@ -920,6 +921,7 @@ fu_wac_device_init(FuWacDevice *self) - fu_device_set_install_duration(FU_DEVICE(self), 10); - fu_device_set_remove_delay(FU_DEVICE(self), FU_DEVICE_REMOVE_DELAY_RE_ENUMERATE); - fu_device_set_firmware_gtype(FU_DEVICE(self), FU_TYPE_WAC_FIRMWARE); -+ fu_device_retry_set_delay(FU_DEVICE(self), 30); /* ms */ - } - - static void --- -2.39.1 - diff --git a/fwupd.spec b/fwupd.spec index 07415c2..b64be9a 100644 --- a/fwupd.spec +++ b/fwupd.spec @@ -53,19 +53,13 @@ Summary: Firmware update daemon Name: fwupd -Version: 1.8.10 -Release: 2%{?dist} +Version: 1.8.16 +Release: 1%{?dist} License: LGPLv2+ URL: https://github.com/fwupd/fwupd Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz Source2: http://people.freedesktop.org/~hughsient/releases/fwupd-efi-1.4.tar.xz -Patch1: 0001-trivial-Fix-build-fix-when-using-ppc64le-system.patch -Patch2: 0001-Only-include-the-attribute-not-exported-warning-on-d.patch -Patch3: 0001-Do-not-make-any-of-the-HWIDs-setup-failures-fatal.patch -Patch4: 0001-modem-manager-remove-improper-use-of-assert.patch -Patch5: 0001-wacom-usb-Retry-set_report-on-failure.patch - Patch101: 0001-generate_binary-Add-NX-COMPAT-flag-manually-when-gen.patch Source10: http://people.redhat.com/rhughes/dbx/DBXUpdate-20100307-x64.cab @@ -78,6 +72,9 @@ Source16: http://people.redhat.com/rhughes/dbx/DBXUpdate-20210429-x64.cab Source17: http://people.redhat.com/rhughes/dbx/DBXUpdate-20220812-aa64.cab Source18: http://people.redhat.com/rhughes/dbx/DBXUpdate-20220812-ia32.cab Source19: http://people.redhat.com/rhughes/dbx/DBXUpdate-20220812-x64.cab +Source20: http://people.redhat.com/rhughes/dbx/DBXUpdate-20230509-aa64.cab +Source21: http://people.redhat.com/rhughes/dbx/DBXUpdate-20230509-ia32.cab +Source22: http://people.redhat.com/rhughes/dbx/DBXUpdate-20230509-x64.cab # these are numbered high just to keep them wildly away from colliding with # the real package sources, in order to reduce churn. @@ -208,11 +205,6 @@ can be flashed using flashrom. It is probably not required on servers. %prep %setup -q -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 mkdir -p subprojects/fwupd-efi tar xfvs %{SOURCE2} -C subprojects/fwupd-efi --strip-components=1 @@ -279,6 +271,7 @@ cd - -Dplugin_modem_manager=disabled \ %endif -Dman=true \ + -Dcompat_cli=true \ -Dbluez=disabled \ -Dcbor=disabled \ -Dplugin_android_boot=disabled \ @@ -304,7 +297,10 @@ cd - # on RHEL the LVFS is disabled by default mkdir -p %{buildroot}/%{_datadir}/dbxtool -install %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} %{SOURCE15} %{SOURCE16} %{SOURCE17} %{SOURCE18} %{SOURCE19} %{buildroot}/%{_datadir}/dbxtool +install \ + %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} %{SOURCE15} \ + %{SOURCE16} %{SOURCE17} %{SOURCE18} %{SOURCE19} %{SOURCE20} %{SOURCE21} %{SOURCE22} \ + %{buildroot}/%{_datadir}/dbxtool # sign fwupd.efi loader %ifarch x86_64 @@ -340,7 +336,7 @@ done %systemd_postun_with_restart pesign.service %files -f %{name}.lang -%doc README.md AUTHORS +%doc README.md %license COPYING %config(noreplace)%{_sysconfdir}/fwupd/daemon.conf %if 0%{?have_uefi} @@ -390,7 +386,6 @@ done %{_datadir}/dbus-1/system.d/org.freedesktop.fwupd.conf %{_datadir}/bash-completion/completions/fwupdmgr %{_datadir}/bash-completion/completions/fwupdtool -%{_datadir}/bash-completion/completions/fwupdagent %{_datadir}/fish/vendor_completions.d/fwupdmgr.fish %{_datadir}/fwupd/metainfo/org.freedesktop.fwupd*.metainfo.xml %if 0%{?have_dell} @@ -439,7 +434,7 @@ done %dir %{_datadir}/fwupd/quirks.d %{_datadir}/fwupd/quirks.d/builtin.quirk.gz %if 0%{?have_uefi} -%{_sysconfdir}/grub.d/35_fwupd +%config(noreplace)%{_sysconfdir}/grub.d/35_fwupd %endif %{_libdir}/libfwupd.so.2* %{_libdir}/girepository-1.0/Fwupd-2.0.typelib @@ -486,13 +481,16 @@ done %endif %{_datadir}/installed-tests/fwupd/chassis_type %{_datadir}/installed-tests/fwupd/sys_vendor -%{_datadir}/fwupd/device-tests/*.json %{_libexecdir}/installed-tests/fwupd/* %dir %{_sysconfdir}/fwupd/remotes.d %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/fwupd-tests.conf %endif %changelog +* Fri Jun 09 2023 Richard Hughes 1.8.16-1 +- Update to latest stable upstream version. +- Resolves: rhbz#2209944 + * Thu Feb 02 2023 Richard Hughes 1.8.10-2 - Rebuild because distrobaker did entirely the wrong thing. - Resolves: rhbz#2128384, needed for rhbz#2119436 and rhbz#2128384 diff --git a/sources b/sources index 60fc632..56ccbe8 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (fwupd-1.8.10.tar.xz) = 8437cdc93d553e42d33a037d14fcb09bb65b4c4d7d60add6a90c84dce0845097fe96005a1f6a9da7daf89df5b7dcd1b43a9fbba666cd18129b67ebe1c3ce7c97 +SHA512 (fwupd-1.8.16.tar.xz) = 25dd773ca703ab6ad11eb042948bb719c2f3974a2e89ac8f9ae524384bce2c8a3d41e5754a5e0ab5595c14720737d53921dbf2859dd33519dcc480d227aac6c6 SHA512 (fwupd-efi-1.4.tar.xz) = c330409861a8c1e332a0d4fd49c54ef2c5bf7cdaca99d14de39b50fb35f0c490e9f7f7a4c9dd48181bd509cd358c43eb23659536aea93408c1fefb47629e4991 SHA512 (DBXUpdate-20100307-x64.cab) = f8ad56cf015f4cdc5c305856ff1f7a8589c25a2a671708c61883f427f38eb9b6a7abd3f2c8d79ef9d5076222255e42585917f8705a2a4b13f860bad4e02ec409 SHA512 (DBXUpdate-20140413-x64.cab) = 75771876a2309fa8ca083c2e76520173d434229b7cacf1e7636bd9b1bc4f871d745c348b9792bfb65fd9f40ef54c25bb427b1431151e817e7050b7829456731a @@ -10,3 +10,6 @@ SHA512 (DBXUpdate-20210429-x64.cab) = 7bc5e7780d105da89da367fbde7c33427bed6c3775 SHA512 (DBXUpdate-20220812-aa64.cab) = 422ebd0b9d15a26ad12b98798229615a1f5e272a95993934de0cd9d4e4e75589b41eae6366b52b4e25e8766bd7cf74f95d220b719649b1f3864603e46c18c193 SHA512 (DBXUpdate-20220812-ia32.cab) = 09094cc747f865e21fc815199d6ad5b6d3b1c9e19621497e3fe7cdfc4b96e144e721673bdff9ea6204dd465e8a8e2da1cc2b4a4badfd1f4f82c54eace11acb42 SHA512 (DBXUpdate-20220812-x64.cab) = 03dde66a31241ccaa562c57bd9b6b824f2a6b5a1d10affe32ee5a0452056609c981f8f7633bfc65fd0c7da79455b071dd9e02b6af7c880fb1c4a6ffdf577bcdc +SHA512 (DBXUpdate-20230509-aa64.cab) = 259f2373d6ab4cd031fe8b993825ba4cf922306afb3da1617d7b4e9d4ac918018b463135f58ace884a2ceec01789f3b2b31aaf63e63501503e4efbcf46ce567b +SHA512 (DBXUpdate-20230509-ia32.cab) = e9983039fa5283bf8357c75874842d06ac76a36e90c76406ab864a2b76f557f9649e84be3eb20ab473486cd60a08847ece0ef4015145357969067561338a7977 +SHA512 (DBXUpdate-20230509-x64.cab) = b2893b431adc3b155335a07e035979a2bf08b7c06975bde7c5561f5e5c1d8ed55f337e7a4782e6ad5c4c50c286cf474a1be356991784c88c23315c467fca30bb