Compare commits
8 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| aedcdd3508 | |||
| 04c694f282 | |||
| 4f8f834f54 | |||
| 61a097cb1c | |||
| 39e5530475 | |||
| 2ae461fc36 | |||
| b0aa8fa757 | |||
| 185fefb387 |
@@ -18,7 +18,6 @@ networkStateChanged signal, so we can react to a network state change
|
||||
even when PackageKit is stopped. In this case, we update all properties,
|
||||
which triggers PK to run and emits the appropiate PK signals as
|
||||
expected.
|
||||
|
||||
---
|
||||
src/CMakeLists.txt | 1 +
|
||||
src/daemon.h | 1 +
|
||||
@@ -31,19 +30,19 @@ expected.
|
||||
create mode 100644 src/networkmanagermonitor.h
|
||||
|
||||
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
|
||||
index dac2104..2ed020d 100644
|
||||
index fd3e268..5f3fd8e 100644
|
||||
--- a/src/CMakeLists.txt
|
||||
+++ b/src/CMakeLists.txt
|
||||
@@ -22,6 +22,7 @@ set(packagekitqt_SRC
|
||||
@@ -23,6 +23,7 @@ set(packagekitqt_SRC
|
||||
transactionprivate.cpp
|
||||
details.cpp
|
||||
offline.cpp
|
||||
+ networkmanagermonitor.cpp
|
||||
)
|
||||
|
||||
find_path(PK_INTERFACES_DIR org.freedesktop.PackageKit.xml
|
||||
|
||||
set(QPK_VERSION_HDR ${CMAKE_CURRENT_BINARY_DIR}/qpk-version.h)
|
||||
diff --git a/src/daemon.h b/src/daemon.h
|
||||
index 449cf17..51a818f 100644
|
||||
index 5411828..45210ce 100644
|
||||
--- a/src/daemon.h
|
||||
+++ b/src/daemon.h
|
||||
@@ -869,6 +869,7 @@ private:
|
||||
@@ -60,7 +59,7 @@ index 829ba22..2c6bdfc 100644
|
||||
+++ b/src/daemonprivate.cpp
|
||||
@@ -70,6 +70,20 @@ DaemonPrivate::DaemonPrivate(Daemon* parent)
|
||||
});
|
||||
|
||||
|
||||
getAllProperties();
|
||||
+
|
||||
+ // If PackageKit is not running, we are not getting a signal when
|
||||
@@ -77,18 +76,18 @@ index 829ba22..2c6bdfc 100644
|
||||
+ if (!running)
|
||||
+ getAllProperties();
|
||||
}
|
||||
|
||||
|
||||
void DaemonPrivate::getAllProperties()
|
||||
diff --git a/src/daemonprivate.h b/src/daemonprivate.h
|
||||
index 729e3ec..0fa645b 100644
|
||||
--- a/src/daemonprivate.h
|
||||
+++ b/src/daemonprivate.h
|
||||
@@ -27,6 +27,7 @@
|
||||
|
||||
|
||||
#include "daemon.h"
|
||||
#include "offline.h"
|
||||
+#include "networkmanagermonitor.h"
|
||||
|
||||
|
||||
Q_DECLARE_LOGGING_CATEGORY(PACKAGEKITQT_DAEMON)
|
||||
Q_DECLARE_LOGGING_CATEGORY(PACKAGEKITQT_OFFLINE)
|
||||
@@ -72,10 +73,12 @@ protected:
|
||||
@@ -96,13 +95,13 @@ index 729e3ec..0fa645b 100644
|
||||
bool locked = false;
|
||||
bool running = false;
|
||||
+ NetworkManagerMonitor networkManagerMonitor;
|
||||
|
||||
|
||||
protected Q_SLOTS:
|
||||
void propertiesChanged(const QString &interface, const QVariantMap &properties, const QStringList &invalidatedProperties);
|
||||
void updateProperties(const QVariantMap &properties);
|
||||
+ void getAllPropertiesIfPackageKitNotRunning();
|
||||
};
|
||||
|
||||
|
||||
} // End namespace PackageKit
|
||||
diff --git a/src/networkmanagermonitor.cpp b/src/networkmanagermonitor.cpp
|
||||
new file mode 100644
|
||||
@@ -237,6 +236,6 @@ index 0000000..16eb25c
|
||||
+};
|
||||
+
|
||||
+#endif
|
||||
--
|
||||
2.40.0
|
||||
--
|
||||
2.49.0
|
||||
|
||||
|
||||
29
0001-offline-Ensure-the-enum-is-registered.patch
Normal file
29
0001-offline-Ensure-the-enum-is-registered.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
From 173fe4008050810c0ecd06f1accfa4eef2790bfc Mon Sep 17 00:00:00 2001
|
||||
From: Aleix Pol <aleixpol@kde.org>
|
||||
Date: Fri, 15 Aug 2025 17:42:44 +0200
|
||||
Subject: [PATCH] offline: Ensure the enum is registered
|
||||
|
||||
Otherwise we get a crash saying:
|
||||
[fatal] discover (unknown:0) - QDBusPendingReply: type
|
||||
PackageKit::Transaction::Role is not registered with QtDBus
|
||||
|
||||
See https://bugs.kde.org/show_bug.cgi?id=508271
|
||||
---
|
||||
src/offline.cpp | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/offline.cpp b/src/offline.cpp
|
||||
index d4eaedb..b5e4dc8 100644
|
||||
--- a/src/offline.cpp
|
||||
+++ b/src/offline.cpp
|
||||
@@ -26,6 +26,7 @@ using namespace PackageKit;
|
||||
Offline::Offline(QObject *parent) : QObject(parent)
|
||||
, d_ptr(new OfflinePrivate(this))
|
||||
{
|
||||
+ qRegisterMetaType<Transaction::Role>();
|
||||
QDBusConnection::systemBus().connect(PK_NAME,
|
||||
PK_PATH,
|
||||
DBUS_PROPERTIES,
|
||||
--
|
||||
2.50.1
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:65780e4bf008a904a456521fb63a09a7bd58f1a87eb7cc3cfcf67c24491d0d8e
|
||||
size 56420
|
||||
3
PackageKit-Qt-1.1.4.tar.gz
Normal file
3
PackageKit-Qt-1.1.4.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:bbb8398d0f98c46e2ed7fd3ce526d4f7fc8476f5a449e89269f01b1bc751c4ad
|
||||
size 58172
|
||||
@@ -1,3 +1,36 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Oct 7 07:53:00 UTC 2025 - Dominique Leuenberger <dimstar@opensuse.org>
|
||||
|
||||
- Update to version 1.1.4:
|
||||
+ Features: Drop Qt5 support
|
||||
+ Bugfixes:
|
||||
- Make Offline::getResults return a wrapper object
|
||||
- Unpack info enum in "package" signals, like pk-glib does
|
||||
- Drop qt5 multibuild flavor.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Aug 16 19:35:47 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Add upstream change to fix a discover crash (kde#508235):
|
||||
* 0001-offline-Ensure-the-enum-is-registered.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jul 29 07:28:14 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 1.1.3
|
||||
* Build with Qt6 by default, instead of Qt5
|
||||
* Bump cmake version
|
||||
* Add new GetResult* methods of the Offline interface
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Apr 23 08:26:17 UTC 2025 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
- Update to 1.1.2
|
||||
* offline: Make sure we allow for interactive authorization
|
||||
* Allow Transaction::setHints before the transaction has started
|
||||
* Fix check for PackageKit D-Bus specs
|
||||
* Add missing info enum values
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 23 10:23:31 UTC 2023 - Christophe Marin <christophe@krop.fr>
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file
|
||||
# spec file for package PackageKit-Qt
|
||||
#
|
||||
# Copyright (c) 2022 SUSE LLC
|
||||
# Copyright (c) 2025 SUSE LLC and contributors
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@@ -26,14 +26,9 @@ ExclusiveArch: do_not_build
|
||||
%define pkg_suffix -Qt6
|
||||
%define pkqt packagekitqt6
|
||||
%endif
|
||||
%if "%{pkqt_flavor}" == "qt5"
|
||||
%define qt5 1
|
||||
%define pkg_suffix -Qt5
|
||||
%define pkqt packagekitqt5
|
||||
%endif
|
||||
%define major 1
|
||||
%define major 2
|
||||
Name: PackageKit%{?pkg_suffix}
|
||||
Version: 1.1.1
|
||||
Version: 1.1.4
|
||||
Release: 0
|
||||
Summary: Simple software installation management software
|
||||
License: LGPL-2.1-or-later
|
||||
@@ -42,13 +37,11 @@ URL: https://github.com/hughsie/PackageKit-Qt
|
||||
Source: https://github.com/hughsie/PackageKit-Qt/archive/v%{version}.tar.gz#/PackageKit-Qt-%{version}.tar.gz
|
||||
# PATCH-FIX-UPSTREAM boo#1103678
|
||||
Patch0: 0001-Fix-PackageKit-not-emitting-network-state-changed-signal.patch
|
||||
# PATCH-FIX-UPSTREAM kde#508235
|
||||
Patch1: 0001-offline-Ensure-the-enum-is-registered.patch
|
||||
BuildRequires: PackageKit-devel >= %{version}
|
||||
BuildRequires: cmake
|
||||
BuildRequires: pkgconfig
|
||||
%if 0%{?qt5}
|
||||
BuildRequires: cmake(Qt5Core)
|
||||
BuildRequires: cmake(Qt5DBus)
|
||||
%endif
|
||||
%if 0%{?qt6}
|
||||
BuildRequires: cmake(Qt6Core)
|
||||
BuildRequires: cmake(Qt6DBus)
|
||||
@@ -76,14 +69,6 @@ suck less.
|
||||
Summary: Simple software installation management software
|
||||
Group: Development/Libraries/C and C++
|
||||
Requires: lib%{pkqt}-%{major} = %{version}
|
||||
%if 0%{?qt5}
|
||||
# PackageKit-Qt used to be Qt4 based until 0.9.6; then it turned into a Qt5 package (no more Qt4 support)
|
||||
# For this reason, we now have to obsolete the former 2nd spec file names
|
||||
Provides: PackageKit-Qt-devel = %{version}
|
||||
Obsoletes: PackageKit-Qt-devel < %{version}
|
||||
Provides: PackageKit-Qt5-devel = %{version}
|
||||
Obsoletes: PackageKit-Qt5-devel < %{version}
|
||||
%endif
|
||||
|
||||
%description -n %{pkqt}-devel
|
||||
PackageKit is a system designed to make installing and updating
|
||||
@@ -96,24 +81,19 @@ suck less.
|
||||
%autosetup -p1 -n PackageKit-Qt-%{version}
|
||||
|
||||
%build
|
||||
%if 0%{?qt5}
|
||||
%cmake
|
||||
%cmake_build
|
||||
%endif
|
||||
|
||||
%if 0%{?qt6}
|
||||
%cmake_qt6 -DBUILD_WITH_QT6:BOOL=ON
|
||||
%cmake_qt6
|
||||
%{qt6_build}
|
||||
%endif
|
||||
|
||||
%install
|
||||
%if 0%{?qt5}
|
||||
%cmake_install
|
||||
%endif
|
||||
%if 0%{?qt6}
|
||||
%qt6_install
|
||||
%endif
|
||||
|
||||
%check
|
||||
%ctest
|
||||
|
||||
%ldconfig_scriptlets -n lib%{pkqt}-%{major}
|
||||
|
||||
%files -n lib%{pkqt}-%{major}
|
||||
@@ -126,6 +106,6 @@ suck less.
|
||||
%{_libdir}/libpackagekitqt?.so
|
||||
%{_libdir}/cmake/packagekitqt?/
|
||||
%{_libdir}/pkgconfig/packagekitqt?.pc
|
||||
%{_includedir}/packagekitqt?/
|
||||
%{_includedir}/PackageKitQt
|
||||
|
||||
%changelog
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
<multibuild>
|
||||
<flavor>qt5</flavor>
|
||||
<flavor>qt6</flavor>
|
||||
</multibuild>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user