[packages/kp5-discover] - rel 2, fix building with fwupd 2.x
baggins
baggins at pld-linux.org
Sat Aug 29 11:17:22 CEST 2026
commit 0a1bff3189f89f9f2e4827648564d220de70798c
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Sat Aug 29 11:17:01 2026 +0200
- rel 2, fix building with fwupd 2.x
fwupd2.patch | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
kp5-discover.spec | 4 +-
2 files changed, 141 insertions(+), 1 deletion(-)
---
diff --git a/kp5-discover.spec b/kp5-discover.spec
index 76eb453..dce270b 100644
--- a/kp5-discover.spec
+++ b/kp5-discover.spec
@@ -9,11 +9,12 @@ Summary: Discover - KDE Software Center
Summary(pl.UTF-8): Odkrywca - Ośrodek programów KDE
Name: kp5-%{kpname}
Version: 5.27.12
-Release: 1
+Release: 2
License: GPL v2+/LGPL v2.1+
Group: X11/Libraries
Source0: https://download.kde.org/stable/plasma/%{kdeplasmaver}/%{kpname}-%{version}.tar.xz
# Source0-md5: 0191263c4f417619e81f41a761420c36
+Patch0: fwupd2.patch
URL: https://kde.org/
BuildRequires: AppStream-qt5-devel >= 1.0.2-2
BuildRequires: PackageKit-qt5-devel >= 1.0.1
@@ -86,6 +87,7 @@ Odkrywca - Ośrodek programów KDE.
%prep
%setup -q -n %{kpname}-%{version}
+%patch -P0 -p1
%build
%cmake -B build \
diff --git a/fwupd2.patch b/fwupd2.patch
new file mode 100644
index 0000000..aa010a1
--- /dev/null
+++ b/fwupd2.patch
@@ -0,0 +1,138 @@
+diff -ur discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdBackend.cpp discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdBackend.cpp
+--- discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdBackend.cpp 2025-01-06 18:56:04.000000000 +0100
++++ discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdBackend.cpp 2026-08-04 11:19:44.000000000 +0200
+@@ -198,7 +216,12 @@
+ return nullptr;
+ }
+
++#if FWUPD_CHECK_VERSION(1, 5, 6)
++ GPtrArray *locations = fwupd_release_get_locations(release);
++ const QUrl update_uri(locations->len == 0 ? QString::fromUtf8("") : QString::fromUtf8((const gchar *)g_ptr_array_index(locations, 0)));
++#else
+ const QUrl update_uri(QString::fromUtf8(fwupd_release_get_uri(release)));
++#endif
+ if (!update_uri.isValid()) {
+ qWarning() << "Fwupd Error: No Update URI available for" << app->name() << "[" << app->id() << "]";
+ return nullptr;
+@@ -323,15 +350,18 @@
+ {
+ for (uint i = 0; remotes && i < remotes->len; i++) {
+ FwupdRemote *remote = (FwupdRemote *)g_ptr_array_index(remotes, i);
+- if (!fwupd_remote_get_enabled(remote))
++ if (!fwupd_remote_has_flag(remote, FWUPD_REMOTE_FLAG_ENABLED))
+ continue;
+
+- if (fwupd_remote_get_kind(remote) == FWUPD_REMOTE_KIND_LOCAL
+- || fwupd_remote_get_kind(remote) == FWUPD_REMOTE_KIND_DIRECTORY) {
++ if (fwupd_remote_get_kind(remote) == FWUPD_REMOTE_KIND_LOCAL || fwupd_remote_get_kind(remote) == FWUPD_REMOTE_KIND_DIRECTORY) {
+ continue;
+ }
+
+- fwupd_client_refresh_remote_async(client, remote, m_cancellable, fwupd_client_refresh_remote_cb, this);
++#if FWUPD_CHECK_VERSION(2, 0, 0)
++ fwupd_client_refresh_remote_async(client, remote, FWUPD_CLIENT_DOWNLOAD_FLAG_NONE, m_cancellable, fwupd_client_refresh_remote_cb, this);
++#else
++ fwupd_client_refresh_remote2_async(client, remote, FWUPD_CLIENT_DOWNLOAD_FLAG_NONE, m_cancellable, fwupd_client_refresh_remote_cb, this);
++#endif
+ }
+ }
+
+diff -ur discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdResource.cpp discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdResource.cpp
+--- discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdResource.cpp 2025-01-06 18:56:04.000000000 +0100
++++ discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdResource.cpp 2026-08-04 11:19:44.000000000 +0200
+@@ -161,13 +162,17 @@
+ m_description = QString::fromUtf8((fwupd_release_get_description(release)));
+ m_homepage = QUrl(QString::fromUtf8(fwupd_release_get_homepage(release)));
+ m_license = QString::fromUtf8(fwupd_release_get_license(release));
++#if FWUPD_CHECK_VERSION(1, 5, 6)
++ GPtrArray *locations = fwupd_release_get_locations(release);
++ m_updateURI = locations->len == 0 ? QString::fromUtf8("") : QString::fromUtf8((const gchar *)g_ptr_array_index(locations, 0));
++#else
+ m_updateURI = QString::fromUtf8(fwupd_release_get_uri(release));
++#endif
+ }
+
+ void FwupdResource::setDeviceDetails(FwupdDevice *dev)
+ {
+ m_isLiveUpdatable = fwupd_device_has_flag(dev, FWUPD_DEVICE_FLAG_UPDATABLE);
+- m_isOnlyOffline = fwupd_device_has_flag(dev, FWUPD_DEVICE_FLAG_ONLY_OFFLINE);
+ m_needsReboot = fwupd_device_has_flag(dev, FWUPD_DEVICE_FLAG_NEEDS_REBOOT);
+
+ if (fwupd_device_get_name(dev)) {
+@@ -182,7 +187,6 @@
+ m_vendor = QString::fromUtf8(fwupd_device_get_vendor(dev));
+ m_releaseDate = QDateTime::fromSecsSinceEpoch(fwupd_device_get_created(dev)).date();
+ m_availableVersion = QString::fromUtf8(fwupd_device_get_version(dev));
+- m_description = QString::fromUtf8((fwupd_device_get_description(dev)));
+
+ if (fwupd_device_get_icons(dev)->len >= 1)
+ m_iconName = QString::fromUtf8((const gchar *)g_ptr_array_index(fwupd_device_get_icons(dev), 0)); // Check whether given icon exists or not!
+diff -ur discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdResource.h discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdResource.h
+--- discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdResource.h 2025-01-06 18:56:04.000000000 +0100
++++ discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdResource.h 2026-08-04 11:19:44.000000000 +0200
+@@ -102,11 +102,6 @@
+ return m_isDeviceLocked;
+ }
+
+- bool isOnlyOffline() const
+- {
+- return m_isOnlyOffline;
+- }
+-
+ bool isLiveUpdatable() const
+ {
+ return m_isLiveUpdatable;
+@@ -146,7 +141,6 @@
+
+ QString m_updateURI;
+ bool m_isDeviceLocked = false; // True if device is locked!
+- bool m_isOnlyOffline = false; // True if only offline updates
+ bool m_isLiveUpdatable = false; // True if device is live updatable
+ bool m_needsReboot = false; // True if device needs Reboot
+ QString m_origin;
+diff -ur discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdSourcesBackend.cpp discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdSourcesBackend.cpp
+--- discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdSourcesBackend.cpp 2025-01-06 18:56:04.000000000 +0100
++++ discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdSourcesBackend.cpp 2026-08-04 11:19:44.000000000 +0200
+@@ -34,7 +34,7 @@
+ case Qt::CheckStateRole: {
+ if (value == Qt::Checked) {
+ m_backend->m_currentItem = item;
+- if (fwupd_remote_get_approval_required(remote)) {
++ if (fwupd_remote_has_flag(remote, FWUPD_REMOTE_FLAG_APPROVAL_REQUIRED)) {
+ QString eulaText = i18n("The remote %1 require that you accept their license:\n %2",
+ QString::fromUtf8(fwupd_remote_get_title(remote)),
+ QString::fromUtf8(fwupd_remote_get_agreement(remote)));
+@@ -88,7 +88,7 @@
+ it->setData(id, AbstractSourcesBackend::IdRole);
+ it->setData(QVariant(QString::fromUtf8(fwupd_remote_get_title(remote))), Qt::ToolTipRole);
+ it->setCheckable(true);
+- it->setCheckState(fwupd_remote_get_enabled(remote) ? Qt::Checked : Qt::Unchecked);
++ it->setCheckState(fwupd_remote_has_flag(remote, FWUPD_REMOTE_FLAG_ENABLED) ? Qt::Checked : Qt::Unchecked);
+ m_sources->appendRow(it);
+ }
+ }
+@@ -121,7 +121,7 @@
+ {
+ FwupdRemote *remote =
+ fwupd_client_get_remote_by_id(backend->client, m_currentItem->data(AbstractSourcesBackend::IdRole).toString().toUtf8().constData(), nullptr, nullptr);
+- m_currentItem->setCheckState(fwupd_remote_get_enabled(remote) ? Qt::Checked : Qt::Unchecked);
++ m_currentItem->setCheckState(fwupd_remote_has_flag(remote, FWUPD_REMOTE_FLAG_ENABLED) ? Qt::Checked : Qt::Unchecked);
+
+ m_currentItem = nullptr;
+ }
+diff -ur discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdTransaction.cpp discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdTransaction.cpp
+--- discover-5.27.12/libdiscover/backends/FwupdBackend/FwupdTransaction.cpp 2025-01-06 18:56:04.000000000 +0100
++++ discover-6.7.4/libdiscover/backends/FwupdBackend/FwupdTransaction.cpp 2026-08-04 11:19:44.000000000 +0200
+@@ -83,11 +87,7 @@
+ FwupdInstallFlags install_flags = FWUPD_INSTALL_FLAG_NONE;
+ g_autoptr(GError) error = nullptr;
+
+- /* only offline supported */
+- if (m_app->isOnlyOffline())
+- install_flags = static_cast<FwupdInstallFlags>(install_flags | FWUPD_INSTALL_FLAG_OFFLINE);
+-
+- if (!fwupd_client_install(m_backend->client, m_app->deviceId().toUtf8().constData(), file.toUtf8().constData(), install_flags, nullptr, &error)) {
++ if (!fwupd_client_install(m_backend->client, m_app->deviceId().toUtf8().constData(), file.toUtf8().constData(), install_flags, nullptr, &error)) {
+ m_backend->handleError(error);
+ setStatus(DoneWithErrorStatus);
+ } else
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/kp5-discover.git/commitdiff/0a1bff3189f89f9f2e4827648564d220de70798c
More information about the pld-cvs-commit
mailing list