diff --git a/.fwupd.metadata b/.fwupd.metadata index ed8c355..26e102d 100644 --- a/.fwupd.metadata +++ b/.fwupd.metadata @@ -1 +1,2 @@ -9777016b6b861676e3e88153f7b310e4d985871a SOURCES/fwupd-1.1.4.tar.xz +416a671623a26f425c10f01a431046f534c53518 SOURCES/fwupd-1.4.1.tar.xz +6991b6879b438a4672e97c534d10737bc54e6f39 SOURCES/libjcat-0.1.2.tar.xz diff --git a/.gitignore b/.gitignore index 7aab32e..e7d79e1 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ -SOURCES/fwupd-1.1.4.tar.xz +SOURCES/fwupd-1.4.1.tar.xz +SOURCES/libjcat-0.1.2.tar.xz diff --git a/SOURCES/0001-Do-not-use-the-LVFS.patch b/SOURCES/0001-Do-not-use-the-LVFS.patch new file mode 100644 index 0000000..427c474 --- /dev/null +++ b/SOURCES/0001-Do-not-use-the-LVFS.patch @@ -0,0 +1,26 @@ +diff --git a/data/remotes.d/lvfs.conf b/data/remotes.d/lvfs.conf +index 1249ef74..f533bf52 100644 +--- a/data/remotes.d/lvfs.conf ++++ b/data/remotes.d/lvfs.conf +@@ -1,7 +1,7 @@ + [fwupd Remote] + + # this remote provides metadata and firmware marked as 'stable' from the LVFS +-Enabled=true ++Enabled=false + Title=Linux Vendor Firmware Service + MetadataURI=https://cdn.fwupd.org/downloads/firmware.xml.gz + ReportURI=https://fwupd.org/lvfs/firmware/report +diff --git a/libfwupd/fwupd-self-test.c b/libfwupd/fwupd-self-test.c +index 679360b0..59660360 100644 +--- a/libfwupd/fwupd-self-test.c ++++ b/libfwupd/fwupd-self-test.c +@@ -182,7 +182,7 @@ fwupd_remote_download_func (void) + g_assert_cmpint (fwupd_remote_get_kind (remote), ==, FWUPD_REMOTE_KIND_DOWNLOAD); + g_assert_cmpint (fwupd_remote_get_keyring_kind (remote), ==, FWUPD_KEYRING_KIND_JCAT); + g_assert_cmpint (fwupd_remote_get_priority (remote), ==, 0); +- g_assert (fwupd_remote_get_enabled (remote)); ++// g_assert (fwupd_remote_get_enabled (remote)); + g_assert (fwupd_remote_get_metadata_uri (remote) != NULL); + g_assert (fwupd_remote_get_metadata_uri_sig (remote) != NULL); + g_assert_cmpstr (fwupd_remote_get_title (remote), ==, "Linux Vendor Firmware Service"); diff --git a/SOURCES/0001-Relax-the-certificate-time-checks-in-the-self-tests-.patch b/SOURCES/0001-Relax-the-certificate-time-checks-in-the-self-tests-.patch deleted file mode 100644 index b6be5f2..0000000 --- a/SOURCES/0001-Relax-the-certificate-time-checks-in-the-self-tests-.patch +++ /dev/null @@ -1,220 +0,0 @@ -commit 58f79c3d235290c4cecccc1d55cbcc2da8e988a6 -Author: Richard Hughes -Date: Thu Aug 1 09:45:25 2019 +0100 - - Relax the certificate time checks in the self tests for the legacy certificate - - One test verifies a firmware with a signature from the old LVFS which was - hosted on secure-lvfs.rhcloud.com and used the original PKCS-7 key. This key - had a two year validity (expiring today, ohh the naivety...) rather than the - newer fwupd.org key which expires in the year 2058. - - For this specific test only, disable the certificate time checks to fix CI. - - Fixes https://github.com/hughsie/fwupd/issues/1264 - -diff --git a/src/fu-engine.c b/src/fu-engine.c -index ac102cfa..1a57b0af 100644 ---- a/src/fu-engine.c -+++ b/src/fu-engine.c -@@ -1908,7 +1908,8 @@ fu_engine_get_existing_keyring_result (FuEngine *self, - blob_sig = fu_common_get_contents_bytes (fwupd_remote_get_filename_cache_sig (remote), error); - if (blob_sig == NULL) - return NULL; -- return fu_keyring_verify_data (kr, blob, blob_sig, error); -+ return fu_keyring_verify_data (kr, blob, blob_sig, -+ FU_KEYRING_VERIFY_FLAG_NONE, error); - } - - /** -@@ -1991,7 +1992,9 @@ fu_engine_update_metadata (FuEngine *self, const gchar *remote_id, - pki_dir = g_build_filename (sysconfdir, "pki", "fwupd-metadata", NULL); - if (!fu_keyring_add_public_keys (kr, pki_dir, error)) - return FALSE; -- kr_result = fu_keyring_verify_data (kr, bytes_raw, bytes_sig, error); -+ kr_result = fu_keyring_verify_data (kr, bytes_raw, bytes_sig, -+ FU_KEYRING_VERIFY_FLAG_NONE, -+ error); - if (kr_result == NULL) - return FALSE; - -diff --git a/src/fu-keyring-gpg.c b/src/fu-keyring-gpg.c -index af0bfbe0..a51ab7a4 100644 ---- a/src/fu-keyring-gpg.c -+++ b/src/fu-keyring-gpg.c -@@ -231,6 +231,7 @@ static FuKeyringResult * - fu_keyring_gpg_verify_data (FuKeyring *keyring, - GBytes *blob, - GBytes *blob_signature, -+ FuKeyringVerifyFlags flags, - GError **error) - { - FuKeyringGpg *self = FU_KEYRING_GPG (keyring); -diff --git a/src/fu-keyring-pkcs7.c b/src/fu-keyring-pkcs7.c -index d48dc5d0..dc310d37 100644 ---- a/src/fu-keyring-pkcs7.c -+++ b/src/fu-keyring-pkcs7.c -@@ -182,6 +182,7 @@ static FuKeyringResult * - fu_keyring_pkcs7_verify_data (FuKeyring *keyring, - GBytes *blob, - GBytes *blob_signature, -+ FuKeyringVerifyFlags flags, - GError **error) - { - FuKeyringPkcs7 *self = FU_KEYRING_PKCS7 (keyring); -@@ -231,6 +232,14 @@ fu_keyring_pkcs7_verify_data (FuKeyring *keyring, - for (gint i = 0; i < count; i++) { - gnutls_pkcs7_signature_info_st info; - gint64 signing_time = 0; -+ gnutls_certificate_verify_flags verify_flags = 0; -+ -+ /* use with care */ -+ if (flags & FU_KEYRING_VERIFY_FLAG_DISABLE_TIME_CHECKS) { -+ g_debug ("WARNING: disabling time checks"); -+ verify_flags |= GNUTLS_VERIFY_DISABLE_TIME_CHECKS; -+ verify_flags |= GNUTLS_VERIFY_DISABLE_TRUSTED_TIME_CHECKS; -+ } - - /* verify the data against the detached signature */ - rc = gnutls_pkcs7_verify (pkcs7, self->tl, -@@ -238,7 +247,7 @@ fu_keyring_pkcs7_verify_data (FuKeyring *keyring, - 0, /* vdata_size */ - i, /* index */ - &datum, /* data */ -- 0); /* flags */ -+ verify_flags); - if (rc < 0) { - g_set_error (error, - FWUPD_ERROR, -diff --git a/src/fu-keyring-utils.c b/src/fu-keyring-utils.c -index 0c5a7f04..465b4a02 100644 ---- a/src/fu-keyring-utils.c -+++ b/src/fu-keyring-utils.c -@@ -167,7 +167,9 @@ fu_keyring_get_release_trust_flags (AsRelease *release, - fu_keyring_get_name (kr)); - return FALSE; - } -- kr_result = fu_keyring_verify_data (kr, blob_payload, blob_signature, &error_local); -+ kr_result = fu_keyring_verify_data (kr, blob_payload, blob_signature, -+ FU_KEYRING_VERIFY_FLAG_NONE, -+ &error_local); - if (kr_result == NULL) { - g_warning ("untrusted as failed to verify from %s keyring: %s", - fu_keyring_get_name (kr), -diff --git a/src/fu-keyring.c b/src/fu-keyring.c -index d8a88e8c..9b582563 100644 ---- a/src/fu-keyring.c -+++ b/src/fu-keyring.c -@@ -40,13 +40,14 @@ FuKeyringResult * - fu_keyring_verify_data (FuKeyring *keyring, - GBytes *blob, - GBytes *blob_signature, -+ FuKeyringVerifyFlags flags, - GError **error) - { - FuKeyringClass *klass = FU_KEYRING_GET_CLASS (keyring); - g_return_val_if_fail (FU_IS_KEYRING (keyring), NULL); - g_return_val_if_fail (blob != NULL, NULL); - g_return_val_if_fail (blob_signature != NULL, NULL); -- return klass->verify_data (keyring, blob, blob_signature, error); -+ return klass->verify_data (keyring, blob, blob_signature, flags, error); - } - - const gchar * -diff --git a/src/fu-keyring.h b/src/fu-keyring.h -index 6e03694c..f097305d 100644 ---- a/src/fu-keyring.h -+++ b/src/fu-keyring.h -@@ -17,6 +17,20 @@ G_BEGIN_DECLS - #define FU_TYPE_KEYRING (fu_keyring_get_type ()) - G_DECLARE_DERIVABLE_TYPE (FuKeyring, fu_keyring, FU, KEYRING, GObject) - -+/** -+ * FuKeyringVerifyFlags: -+ * @FU_KEYRING_VERIFY_FLAG_NONE: No flags set -+ * @FU_KEYRING_VERIFY_FLAG_DISABLE_TIME_CHECKS: Disable checking of validity periods -+ * -+ * The flags to use when interacting with a keyring -+ **/ -+typedef enum { -+ FU_KEYRING_VERIFY_FLAG_NONE = 0, -+ FU_KEYRING_VERIFY_FLAG_DISABLE_TIME_CHECKS = 1 << 2, -+ /*< private >*/ -+ FU_KEYRING_VERIFY_FLAG_LAST -+} FuKeyringVerifyFlags; -+ - struct _FuKeyringClass - { - GObjectClass parent_class; -@@ -28,6 +42,7 @@ struct _FuKeyringClass - FuKeyringResult *(*verify_data) (FuKeyring *keyring, - GBytes *payload, - GBytes *payload_signature, -+ FuKeyringVerifyFlags flags, - GError **error); - }; - -@@ -39,6 +54,7 @@ gboolean fu_keyring_add_public_keys (FuKeyring *keyring, - FuKeyringResult *fu_keyring_verify_data (FuKeyring *keyring, - GBytes *blob, - GBytes *blob_signature, -+ FuKeyringVerifyFlags flags, - GError **error); - const gchar *fu_keyring_get_name (FuKeyring *self); - void fu_keyring_set_name (FuKeyring *self, -diff --git a/src/fu-self-test.c b/src/fu-self-test.c -index 4f359614..98fac714 100644 ---- a/src/fu-self-test.c -+++ b/src/fu-self-test.c -@@ -1947,7 +1947,9 @@ fu_keyring_gpg_func (void) - g_assert_no_error (error); - g_assert_nonnull (blob_pass); - blob_sig = g_bytes_new_static (sig_gpgme, strlen (sig_gpgme)); -- result_pass = fu_keyring_verify_data (keyring, blob_pass, blob_sig, &error); -+ result_pass = fu_keyring_verify_data (keyring, blob_pass, blob_sig, -+ FU_KEYRING_VERIFY_FLAG_NONE, -+ &error); - g_assert_no_error (error); - g_assert_nonnull (result_pass); - g_assert_cmpint (fu_keyring_result_get_timestamp (result_pass), == , 1438072952); -@@ -1960,7 +1962,8 @@ fu_keyring_gpg_func (void) - blob_fail = fu_common_get_contents_bytes (fw_fail, &error); - g_assert_no_error (error); - g_assert_nonnull (blob_fail); -- result_fail = fu_keyring_verify_data (keyring, blob_fail, blob_sig, &error); -+ result_fail = fu_keyring_verify_data (keyring, blob_fail, blob_sig, -+ FU_KEYRING_VERIFY_FLAG_NONE, &error); - g_assert_error (error, FWUPD_ERROR, FWUPD_ERROR_SIGNATURE_INVALID); - g_assert_null (result_fail); - g_clear_error (&error); -@@ -2010,7 +2013,9 @@ fu_keyring_pkcs7_func (void) - blob_sig = fu_common_get_contents_bytes (sig_fn, &error); - g_assert_no_error (error); - g_assert_nonnull (blob_sig); -- result_pass = fu_keyring_verify_data (keyring, blob_pass, blob_sig, &error); -+ result_pass = fu_keyring_verify_data (keyring, blob_pass, blob_sig, -+ FU_KEYRING_VERIFY_FLAG_DISABLE_TIME_CHECKS, -+ &error); - g_assert_no_error (error); - g_assert_nonnull (result_pass); - g_assert_cmpint (fu_keyring_result_get_timestamp (result_pass), >= , 1502871248); -@@ -2022,7 +2027,8 @@ fu_keyring_pkcs7_func (void) - blob_sig2 = fu_common_get_contents_bytes (sig_fn2, &error); - g_assert_no_error (error); - g_assert_nonnull (blob_sig2); -- result_fail = fu_keyring_verify_data (keyring, blob_pass, blob_sig2, &error); -+ result_fail = fu_keyring_verify_data (keyring, blob_pass, blob_sig2, -+ FU_KEYRING_VERIFY_FLAG_NONE, &error); - g_assert_error (error, FWUPD_ERROR, FWUPD_ERROR_SIGNATURE_INVALID); - g_assert_null (result_fail); - g_clear_error (&error); -@@ -2033,7 +2039,8 @@ fu_keyring_pkcs7_func (void) - blob_fail = fu_common_get_contents_bytes (fw_fail, &error); - g_assert_no_error (error); - g_assert_nonnull (blob_fail); -- result_fail = fu_keyring_verify_data (keyring, blob_fail, blob_sig, &error); -+ result_fail = fu_keyring_verify_data (keyring, blob_fail, blob_sig, -+ FU_KEYRING_VERIFY_FLAG_NONE, &error); - g_assert_error (error, FWUPD_ERROR, FWUPD_ERROR_SIGNATURE_INVALID); - g_assert_null (result_fail); - g_clear_error (&error); diff --git a/SOURCES/0001-trivial-Relax-the-timing-requirements-on-the-FuDevic.patch b/SOURCES/0001-trivial-Relax-the-timing-requirements-on-the-FuDevic.patch deleted file mode 100644 index 2aff6ff..0000000 --- a/SOURCES/0001-trivial-Relax-the-timing-requirements-on-the-FuDevic.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 48cea11bd5d3d8c7f7423ad9807b1e537bc051c8 Mon Sep 17 00:00:00 2001 -From: Richard Hughes -Date: Thu, 8 Nov 2018 20:05:12 +0000 -Subject: [PATCH] trivial: Relax the timing requirements on the FuDevice poll - test - -If the poll source is scheduled just at the right time, we might only get 8x -'10ms ticks' in a 100ms window. This fixes an occasional build failure on -slower hardware and in CI. ---- - src/fu-self-test.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/fu-self-test.c b/src/fu-self-test.c -index 3c774b55..edc0088d 100644 ---- a/src/fu-self-test.c -+++ b/src/fu-self-test.c -@@ -2806,7 +2806,7 @@ fu_device_poll_func (void) - fu_test_loop_run_with_timeout (100); - fu_test_loop_quit (); - cnt = fu_device_get_metadata_integer (device, "cnt"); -- g_assert_cmpint (cnt, >=, 9); -+ g_assert_cmpint (cnt, >=, 8); - - /* disable the poll */ - fu_device_set_poll_interval (device, 0); --- -2.19.1 - diff --git a/SPECS/fwupd.spec b/SPECS/fwupd.spec index 5e4d994..5d4d636 100644 --- a/SPECS/fwupd.spec +++ b/SPECS/fwupd.spec @@ -1,9 +1,10 @@ %global glib2_version 2.45.8 -%global libappstream_version 0.7.4 +%global libxmlb_version 0.1.3 %global libgusb_version 0.2.11 %global libsoup_version 2.51.92 %global systemd_version 231 %global json_glib_version 1.1.1 +%global __meson_wrap_mode default %global enable_tests 1 %global enable_dummy 1 @@ -23,23 +24,27 @@ %global have_dell 1 %endif +# only available recently +%if 0%{?fedora} >= 30 || 0%{?rhel} >= 8 +%global have_modem_manager 1 +%endif + Summary: Firmware update daemon Name: fwupd -Version: 1.1.4 -Release: 2%{?dist} +Version: 1.4.1 +Release: 1%{?dist} License: LGPLv2+ -URL: https://github.com/hughsie/fwupd +URL: https://github.com/fwupd/fwupd Source0: http://people.freedesktop.org/~hughsient/releases/%{name}-%{version}.tar.xz Source1: securebootca.cer Source2: secureboot.cer +Source3: http://people.freedesktop.org/~hughsient/releases/libjcat-0.1.2.tar.xz -# backport from upstream -Patch0: 0001-trivial-Relax-the-timing-requirements-on-the-FuDevic.patch -Patch1: 0001-Relax-the-certificate-time-checks-in-the-self-tests-.patch +Patch2: 0001-Do-not-use-the-LVFS.patch BuildRequires: gettext BuildRequires: glib2-devel >= %{glib2_version} -BuildRequires: libappstream-glib-devel >= %{libappstream_version} +BuildRequires: libxmlb-devel >= %{libxmlb_version} BuildRequires: libgcab1-devel BuildRequires: libgudev1-devel BuildRequires: libgusb-devel >= %{libgusb_version} @@ -57,7 +62,6 @@ BuildRequires: valgrind-devel %endif BuildRequires: elfutils-libelf-devel BuildRequires: gtk-doc -BuildRequires: libuuid-devel BuildRequires: gnutls-devel BuildRequires: gnutls-utils BuildRequires: meson @@ -66,9 +70,15 @@ BuildRequires: json-glib-devel >= %{json_glib_version} BuildRequires: vala BuildRequires: python3-devel BuildRequires: bash-completion +BuildRequires: git-core +%if 0%{?have_flashrom} +BuildRequires: flashrom-devel >= 1.2-2 +%endif -# until rh-signing-tools is fixed -BuildRequires: nss-tools +%if 0%{?have_modem_manager} +BuildRequires: ModemManager-glib-devel >= 1.10.0 +BuildRequires: libqmi-devel >= 1.22.0 +%endif %if 0%{?have_redfish} BuildRequires: efivar-devel >= 33 @@ -96,10 +106,11 @@ Requires(preun): systemd Requires(postun): systemd Requires: glib2%{?_isa} >= %{glib2_version} -Requires: libappstream-glib%{?_isa} >= %{libappstream_version} +Requires: libxmlb%{?_isa} >= %{libxmlb_version} Requires: libgusb%{?_isa} >= %{libgusb_version} Requires: libsoup%{?_isa} >= %{libsoup_version} Requires: bubblewrap +Requires: shared-mime-info Obsoletes: fwupd-sign < 0.1.6 Obsoletes: libebitdo < 0.7.5-3 @@ -120,24 +131,28 @@ Files for development with %{name}. %package tests Summary: Data files for installed tests -BuildArch: noarch -Recommends: python3 %description tests Data files for installed tests. %prep -%autosetup -p1 +%setup -q +%patch2 -p1 -b .lvfs-disabled + +mkdir -p subprojects/libjcat +tar xfvs %{SOURCE3} -C subprojects/libjcat --strip-components=1 sed -ri '1s=^#!/usr/bin/(env )?python3=#!%{__python3}=' \ - libfwupd/generate-version-script.py \ - data/installed-tests/hardware.py \ - po/test-deps \ + contrib/ci/*.py \ + contrib/firmware_packager/*.py \ + contrib/*.py \ + contrib/standalone-installer/assets/*.py \ + contrib/standalone-installer/*.py \ + data/device-tests/*.py \ + libfwupdplugin/*.py \ + plugins/dfu/contrib/*.py \ po/make-images \ - contrib/ci/generate_debian.py \ - contrib/ci/generate_docker.py \ - contrib/firmware-packager/firmware-packager \ - plugins/dfu/contrib/parse-avrdude-conf.py + po/test-deps %build @@ -146,6 +161,11 @@ export RHEL_ALLOW_PYTHON2_FOR_BUILD=1 %meson \ -Dgtkdoc=true \ + -Defi_os_dir=redhat \ + -Dplugin_tpm=false \ + -Dlibjcat:gtkdoc=false \ + -Dlibjcat:introspection=false \ + -Dlibjcat:tests=false \ %if 0%{?enable_tests} -Dtests=true \ %else @@ -156,6 +176,11 @@ export RHEL_ALLOW_PYTHON2_FOR_BUILD=1 %else -Dplugin_dummy=false \ %endif +%if 0%{?have_flashrom} + -Dplugin_flashrom=true \ +%else + -Dplugin_flashrom=false \ +%endif -Dplugin_thunderbolt=true \ %if 0%{?have_redfish} -Dplugin_redfish=true \ @@ -176,6 +201,11 @@ export RHEL_ALLOW_PYTHON2_FOR_BUILD=1 -Dplugin_dell=false \ -Dplugin_synaptics=false \ %endif +%if 0%{?have_modem_manager} + -Dplugin_modem_manager=true \ +%else + -Dplugin_modem_manager=false \ +%endif -Dman=true %meson_build @@ -202,77 +232,112 @@ export RHEL_ALLOW_PYTHON2_FOR_BUILD=1 mkdir -p --mode=0700 $RPM_BUILD_ROOT%{_localstatedir}/lib/fwupd/gnupg +# workaround for https://bugzilla.redhat.com/show_bug.cgi?id=1757948 +mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/fwupd + %find_lang %{name} %post -/sbin/ldconfig %systemd_post fwupd.service %preun %systemd_preun fwupd.service %postun -/sbin/ldconfig %systemd_postun_with_restart fwupd.service %systemd_postun_with_restart pesign.service %files -f %{name}.lang -%doc README.md AUTHORS NEWS +%doc README.md AUTHORS %license COPYING +%config(noreplace)%{_sysconfdir}/fwupd/ata.conf %config(noreplace)%{_sysconfdir}/fwupd/daemon.conf +%config(noreplace)%{_sysconfdir}/fwupd/upower.conf %if 0%{?have_uefi} %config(noreplace)%{_sysconfdir}/fwupd/uefi.conf %endif %if 0%{?have_redfish} %config(noreplace)%{_sysconfdir}/fwupd/redfish.conf %endif +%config(noreplace)%{_sysconfdir}/fwupd/thunderbolt.conf %dir %{_libexecdir}/fwupd %{_libexecdir}/fwupd/fwupd -%{_libexecdir}/fwupd/fwupdtool +%{_libexecdir}/fwupd/fwupdoffline %if 0%{?have_uefi} %{_libexecdir}/fwupd/efi/*.efi %{_libexecdir}/fwupd/efi/*.efi.signed -%{_libexecdir}/fwupd/fwupdate +%{_bindir}/fwupdate %endif %{_bindir}/dfu-tool %{_bindir}/fwupdmgr +%{_bindir}/fwupdtool +%{_bindir}/fwupdagent +%{_bindir}/jcat-tool %dir %{_sysconfdir}/fwupd %dir %{_sysconfdir}/fwupd/remotes.d -%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/fwupd.conf +%if 0%{?have_dell} +%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/dell-esrt.conf +%endif %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs.conf %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/lvfs-testing.conf %config(noreplace)%{_sysconfdir}/fwupd/remotes.d/vendor.conf +%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/vendor-directory.conf %config(noreplace)%{_sysconfdir}/pki/fwupd %{_sysconfdir}/pki/fwupd-metadata -%{_sysconfdir}/dbus-1/system.d/org.freedesktop.fwupd.conf +%{_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 -%{_datadir}/fwupd/remotes.d/fwupd/metadata.xml +%if 0%{?have_dell} +%{_datadir}/fwupd/remotes.d/dell-esrt/metadata.xml +%endif %{_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 +%{_datadir}/man/man1/fwupdtool.1.gz +%{_datadir}/man/man1/fwupdagent.1.gz %{_datadir}/man/man1/dfu-tool.1.gz %{_datadir}/man/man1/fwupdmgr.1.gz +%if 0%{?have_uefi} +%{_datadir}/man/man1/fwupdate.1.gz +%endif +%{_datadir}/man/man1/jcat-tool.1* %{_datadir}/metainfo/org.freedesktop.fwupd.metainfo.xml -%{_datadir}/fwupd/firmware-packager +%{_datadir}/icons/hicolor/scalable/apps/org.freedesktop.fwupd.svg +%{_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-offline-update.service %{_unitdir}/fwupd.service +%{_unitdir}/fwupd-refresh.service +%{_unitdir}/fwupd-refresh.timer +%{_presetdir}/fwupd-refresh.preset %{_unitdir}/system-update.target.wants/ %dir %{_localstatedir}/lib/fwupd +%dir %{_localstatedir}/cache/fwupd %dir %{_datadir}/fwupd/quirks.d %{_datadir}/fwupd/quirks.d/*.quirk %{_localstatedir}/lib/fwupd/builder/README.md %{_libdir}/libfwupd*.so.* +%{_libdir}/libjcat.so.* %{_libdir}/girepository-1.0/Fwupd-2.0.typelib +%{_libdir}/girepository-1.0/FwupdPlugin-1.0.typelib /usr/lib/udev/rules.d/*.rules +/usr/lib/systemd/system-shutdown/fwupd.shutdown %dir %{_libdir}/fwupd-plugins-3 %{_libdir}/fwupd-plugins-3/libfu_plugin_altos.so %{_libdir}/fwupd-plugins-3/libfu_plugin_amt.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_ata.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_ccgx.so %{_libdir}/fwupd-plugins-3/libfu_plugin_colorhug.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_coreboot.so %{_libdir}/fwupd-plugins-3/libfu_plugin_csr.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_cpu.so %if 0%{?have_dell} %{_libdir}/fwupd-plugins-3/libfu_plugin_dell.so %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_esrt.so @@ -280,33 +345,53 @@ mkdir -p --mode=0700 $RPM_BUILD_ROOT%{_localstatedir}/lib/fwupd/gnupg %{_libdir}/fwupd-plugins-3/libfu_plugin_dell_dock.so %{_libdir}/fwupd-plugins-3/libfu_plugin_dfu.so %{_libdir}/fwupd-plugins-3/libfu_plugin_ebitdo.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_emmc.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_ep963x.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_fastboot.so +%if 0%{?have_flashrom} %{_libdir}/fwupd-plugins-3/libfu_plugin_flashrom.so +%endif +%{_libdir}/fwupd-plugins-3/libfu_plugin_fresco_pd.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_jabra.so +%if 0%{?have_modem_manager} +%{_libdir}/fwupd-plugins-3/libfu_plugin_modem_manager.so +%endif %{_libdir}/fwupd-plugins-3/libfu_plugin_nitrokey.so %if 0%{?have_uefi} %{_libdir}/fwupd-plugins-3/libfu_plugin_nvme.so %endif +%{_libdir}/fwupd-plugins-3/libfu_plugin_optionrom.so %if 0%{?have_redfish} %{_libdir}/fwupd-plugins-3/libfu_plugin_redfish.so %endif %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hid.so %{_libdir}/fwupd-plugins-3/libfu_plugin_rts54hub.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_solokey.so %{_libdir}/fwupd-plugins-3/libfu_plugin_steelseries.so %{_libdir}/fwupd-plugins-3/libfu_plugin_superio.so %if 0%{?have_dell} -%{_libdir}/fwupd-plugins-3/libfu_plugin_synapticsmst.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_mst.so %endif +%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_cxaudio.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_prometheus.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_synaptics_rmi.so %if 0%{?enable_dummy} %{_libdir}/fwupd-plugins-3/libfu_plugin_test.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_invalid.so %endif +%{_libdir}/fwupd-plugins-3/libfu_plugin_thelio_io.so %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt.so %{_libdir}/fwupd-plugins-3/libfu_plugin_thunderbolt_power.so -%{_libdir}/fwupd-plugins-3/libfu_plugin_udev.so %if 0%{?have_uefi} %{_libdir}/fwupd-plugins-3/libfu_plugin_uefi.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_uefi_recovery.so %endif -%{_libdir}/fwupd-plugins-3/libfu_plugin_unifying.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_logind.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_logitech_hidpp.so %{_libdir}/fwupd-plugins-3/libfu_plugin_upower.so -%{_libdir}/fwupd-plugins-3/libfu_plugin_wacomhid.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_vli.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_raw.so +%{_libdir}/fwupd-plugins-3/libfu_plugin_wacom_usb.so %ghost %{_localstatedir}/lib/fwupd/gnupg %if 0%{?have_uefi} %{_datadir}/locale/*/LC_IMAGES/fwupd* @@ -314,22 +399,49 @@ mkdir -p --mode=0700 $RPM_BUILD_ROOT%{_localstatedir}/lib/fwupd/gnupg %files devel %{_datadir}/gir-1.0/Fwupd-2.0.gir -%{_datadir}/gtk-doc/html/libfwupd +%{_datadir}/gir-1.0/FwupdPlugin-1.0.gir +%{_datadir}/gtk-doc/html/fwupd %{_datadir}/vala/vapi %{_includedir}/fwupd-1 +%{_includedir}/libjcat-1 %{_libdir}/libfwupd*.so +%{_libdir}/libjcat.so %{_libdir}/pkgconfig/fwupd.pc +%{_libdir}/pkgconfig/fwupdplugin.pc +%{_libdir}/pkgconfig/jcat.pc %files tests +%if 0%{?enable_tests} %dir %{_datadir}/installed-tests/fwupd -%{_datadir}/installed-tests/fwupd/firmware-example.xml.gz -%{_datadir}/installed-tests/fwupd/firmware-example.xml.gz.asc +%{_datadir}/installed-tests/fwupd/fwupd-tests.xml %{_datadir}/installed-tests/fwupd/*.test %{_datadir}/installed-tests/fwupd/*.cab %{_datadir}/installed-tests/fwupd/*.sh -%{_datadir}/installed-tests/fwupd/*.py* +%dir %{_sysconfdir}/fwupd/remotes.d +%config(noreplace)%{_sysconfdir}/fwupd/remotes.d/fwupd-tests.conf +%endif %changelog +* Mon Apr 27 2020 Richard Hughes 1.4.1-1 +- New upstream release +- Resolves: #1775277 + +* Wed Feb 19 2020 Richard Hughes 1.1.4-6 +- Rebuild to get the EFI executable signed with the Red Hat key +- Resolves: #1713033 + +* Thu Feb 13 2020 Richard Hughes 1.1.4-5 +- Backport a patch to specify the EFI os name +- Resolves: #1713033 + +* Fri Nov 29 2019 Richard Hughes 1.1.4-4 +- Rebuild to get the EFI executable signed with the Red Hat key +- Resolves: #1680154 + +* Fri Nov 29 2019 Richard Hughes 1.1.4-3 +- Disable wacomhid by default as probing the device stops the tablet working +- Resolves: #1680154 + * Mon Nov 25 2019 Richard Hughes 1.1.4-2 - Do not require python3 in the base package - Resolves: #1724593