Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package liblxqt for openSUSE:Factory checked 
in at 2026-02-06 19:09:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/liblxqt (Old)
 and      /work/SRC/openSUSE:Factory/.liblxqt.new.1670 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "liblxqt"

Fri Feb  6 19:09:09 2026 rev:29 rq:1331460 version:2.3.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/liblxqt/liblxqt.changes  2026-01-23 
17:32:33.528688462 +0100
+++ /work/SRC/openSUSE:Factory/.liblxqt.new.1670/liblxqt.changes        
2026-02-06 19:14:48.083339391 +0100
@@ -1,0 +2,7 @@
+Thu Feb  5 01:22:26 UTC 2026 - Shawn Dunn <[email protected]>
+
+- Added 0001-Support-logout-in-SystemdProvider.patch, for better
+  systemd compaitibility and functionality, please see
+  https://github.com/lxqt/liblxqt/pull/372
+
+-------------------------------------------------------------------

New:
----
  0001-Support-logout-in-SystemdProvider.patch

----------(New B)----------
  New:
- Added 0001-Support-logout-in-SystemdProvider.patch, for better
  systemd compaitibility and functionality, please see
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ liblxqt.spec ++++++
--- /var/tmp/diff_new_pack.MxA9FY/_old  2026-02-06 19:14:48.871372589 +0100
+++ /var/tmp/diff_new_pack.MxA9FY/_new  2026-02-06 19:14:48.875372758 +0100
@@ -25,6 +25,11 @@
 Source:         %{url}/releases/download/%{version}/%{name}-%{version}.tar.xz
 Source1:        
%{url}/releases/download/%{version}/%{name}-%{version}.tar.xz.asc
 Source2:        %{name}.keyring
+
+# PATCH-FIX-UPSTREAM 0001-Support-logout-in-SystemdProvider.patch 
[email protected]
+# https://github.com/lxqt/liblxqt/pull/372
+Patch0:         0001-Support-logout-in-SystemdProvider.patch
+
 BuildRequires:  cmake >= 3.5.0
 BuildRequires:  fdupes
 BuildRequires:  gcc-c++

++++++ 0001-Support-logout-in-SystemdProvider.patch ++++++
>From aeab541e464e7b48020c659b88dc949d3f2e0082 Mon Sep 17 00:00:00 2001
From: Basil Crow <[email protected]>
Date: Mon, 19 Jan 2026 09:52:54 -0800
Subject: [PATCH] Support logout from `SystemdProvider`

---
 lxqtpower/lxqtpowerproviders.cpp | 34 ++++++++++++++++++++++++++++++--
 1 file changed, 32 insertions(+), 2 deletions(-)

diff --git a/lxqtpower/lxqtpowerproviders.cpp b/lxqtpower/lxqtpowerproviders.cpp
index 59cc133..6ae0b79 100644
--- a/lxqtpower/lxqtpowerproviders.cpp
+++ b/lxqtpower/lxqtpowerproviders.cpp
@@ -30,6 +30,7 @@
 #include "lxqtpowerproviders.h"
 #include <QDBusInterface>
 #include <QProcess>
+#include <QProcessEnvironment>
 #include <QGuiApplication>
 #include <QDebug>
 #include "lxqtnotification.h"
@@ -75,7 +76,8 @@ static bool dbusCall(const QString &service,
               const QString &interface,
               const QDBusConnection &connection,
               const QString & method,
-              PowerProvider::DbusErrorCheck errorCheck = 
PowerProvider::CheckDBUS
+              PowerProvider::DbusErrorCheck errorCheck = 
PowerProvider::CheckDBUS,
+              const QVariantList &args = QVariantList()
               )
 {
     QDBusInterface dbus(service, path, interface, connection);
@@ -92,7 +94,7 @@ static bool dbusCall(const QString &service,
         return false;
     }
 
-    QDBusMessage msg = dbus.call(method);
+    QDBusMessage msg = !args.isEmpty() ? 
dbus.callWithArgumentList(QDBus::Block, method, args) : dbus.call(method);
 
     if (!msg.errorName().isEmpty())
     {
@@ -407,6 +409,19 @@ bool SystemdProvider::canAction(Power::Action action) const
 
     switch (action)
     {
+    case Power::PowerLogout:
+    {
+        const QByteArray sessionId = qgetenv("XDG_SESSION_ID");
+        if (sessionId.isEmpty())
+            return false;
+
+        QDBusInterface dbus(QL1SV(SYSTEMD_SERVICE),
+                            QL1SV(SYSTEMD_PATH),
+                            QL1SV(SYSTEMD_INTERFACE),
+                            QDBusConnection::systemBus());
+        return dbus.isValid();
+    }
+
     case Power::PowerReboot:
         command = QL1SV("CanReboot");
         break;
@@ -447,6 +462,21 @@ bool SystemdProvider::doAction(Power::Action action)
 
     switch (action)
     {
+    case Power::PowerLogout:
+    {
+        const QByteArray sessionId = qgetenv("XDG_SESSION_ID");
+        if (sessionId.isEmpty())
+            return false;
+
+        return dbusCall(QL1SV(SYSTEMD_SERVICE),
+                        QL1SV(SYSTEMD_PATH),
+                        QL1SV(SYSTEMD_INTERFACE),
+                        QDBusConnection::systemBus(),
+                        QL1SV("TerminateSession"),
+                        PowerProvider::CheckDBUS,
+                        QVariantList() << QString::fromLocal8Bit(sessionId));
+    }
+
     case Power::PowerReboot:
         command = QL1SV("Reboot");
         break;
-- 
2.52.0

Reply via email to