#13 Backport patch to fix updating whithin 5min of login
Merged 17 days ago by marcdeop. Opened 17 days ago by aleasto.
rpms/ aleasto/plasma-discover rawhide  into  rawhide

@@ -1,8 +1,8 @@ 

  diff --git a/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp b/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp

- index 106a93322..d1bdd2422 100644

+ index 096f659de..60dd417d6 100644

  --- a/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp

  +++ b/libdiscover/backends/PackageKitBackend/PackageKitBackend.cpp

- @@ -422,7 +422,7 @@ void PackageKitBackend::checkForUpdates()

+ @@ -473,7 +473,7 @@ void PackageKitBackend::checkForUpdates()

   

       if (!m_refresher) {

           acquireFetching(true);
@@ -12,7 +12,7 @@ 

           connect(m_refresher.data(), &PackageKit::Transaction::errorCode, this, &PackageKitBackend::transactionError);

           connect(m_refresher.data(), &PackageKit::Transaction::finished, this, [this]() {

  diff --git a/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp b/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

- index 25eabb2ce..f2ddaa6cd 100644

+ index 5332e0b8a..e3b5a6dfd 100644

  --- a/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

  +++ b/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

  @@ -53,7 +53,7 @@ PackageKitNotifier::PackageKitNotifier(QObject *parent)
@@ -24,9 +24,9 @@ 

                   regularCheck->start();

                   if (!value.isEmpty())

                       qWarning() << "couldn't understand value for timer:" << value;

- @@ -262,7 +262,7 @@ void PackageKitNotifier::onDistroUpgrade(PackageKit::Transaction::DistroUpgrade

-  void PackageKitNotifier::refreshDatabase()

-  {

+ @@ -267,7 +267,7 @@ void PackageKitNotifier::refreshDatabase()

+      }

+  

       if (!m_refresher) {

  -        m_refresher = PackageKit::Daemon::refreshCache(false);

  +        m_refresher = PackageKit::Daemon::refreshCache(true);

@@ -0,0 +1,33 @@ 

+ From 23eead2841c291f11f399fbd605e0a53b62d1a89 Mon Sep 17 00:00:00 2001

+ From: Alessandro Astone <ales.astone@gmail.com>

+ Date: Tue, 21 Mar 2023 20:06:03 +0100

+ Subject: [PATCH] PackageKitNotifier: Do not refresh database if an offline

+  update is pending

+ 

+ This causes the update to be canceled

+ 

+ 

+ (cherry picked from commit 0cc41d9d49ebbeb4273a8f902915895d2a33f0e3)

+ ---

+  .../backends/PackageKitBackend/PackageKitNotifier.cpp        | 5 +++++

+  1 file changed, 5 insertions(+)

+ 

+ diff --git a/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp b/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

+ index abbff51d0..5332e0b8a 100644

+ --- a/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

+ +++ b/libdiscover/backends/PackageKitBackend/PackageKitNotifier.cpp

+ @@ -261,6 +261,11 @@ void PackageKitNotifier::onDistroUpgrade(PackageKit::Transaction::DistroUpgrade

+  

+  void PackageKitNotifier::refreshDatabase()

+  {

+ +    if (auto offline = PackageKit::Daemon::global()->offline();

+ +            offline->updatePrepared() || offline->upgradePrepared() || offline->updateTriggered() || offline->upgradeTriggered()) {

+ +        return;

+ +    }

+ +

+      if (!m_refresher) {

+          m_refresher = PackageKit::Daemon::refreshCache(false);

+          connect(m_refresher.data(), &PackageKit::Transaction::finished, this, &PackageKitNotifier::recheckSystemUpdateNeeded);

+ -- 

+ GitLab

+ 

file modified
+3 -1
@@ -13,7 +13,7 @@ 

  Name:    plasma-discover

  Summary: KDE and Plasma resources management GUI

  Version: 5.27.3

- Release: 1%{?dist}

+ Release: 2%{?dist}

  

  # KDE e.V. may determine that future GPL versions are accepted

  License: GPLv2 or GPLv3
@@ -32,6 +32,8 @@ 

  Source10: discoverrc

  

  ## upstream patches

+ # https://invent.kde.org/plasma/discover/-/merge_requests/511

+ Patch100: do-not-refresh-database-if-offline-update-pending.patch

  

  ## downstream patches

  # workaround PK metadata refresh issues (always force refresh)

This is an age long bug.
There is a 5 minutes timer on login that cancels any offline update started before it. So discover would say "Ready to reboot" but upon reboot no update would happen.

Proposing this for F38 final since it's likely that one may start updates right after the first boot.

Pull-Request has been merged by marcdeop

17 days ago