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
