Accepting request 981166 from home:Vogtinator:plasma5.25

- Add patch to fix opensuse-welcome autostart disabling:
  * 0001-startkde-Reload-systemd-on-Plasma-start.patch

OBS-URL: https://build.opensuse.org/request/show/981166
OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/plasma5-workspace?expand=0&rev=644
This commit is contained in:
Fabian Vogt 2022-06-08 07:26:43 +00:00 committed by Git OBS Bridge
parent 49eae4a00f
commit f1eb467a0c
3 changed files with 56 additions and 0 deletions

View File

@ -0,0 +1,48 @@
From 3b38de153c2ff78b97174d5d7b4258a74173e5c3 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Tue, 7 Jun 2022 14:12:03 +0200
Subject: [PATCH] startkde: Reload systemd on Plasma start
If the time between logout and relogin is short enough or a separate session
is open during that time, the systemd user instance keeps running. This means
that generators like the one for XDG autostart handling aren't run again, which
effectively means it's still using the configuration from the previous session.
Just reload systemd on every login to make sure its state is fresh.
---
startkde/startplasma.cpp | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp
index dc928a62d..9f026e033 100644
--- a/startkde/startplasma.cpp
+++ b/startkde/startplasma.cpp
@@ -504,6 +504,17 @@ void resetSystemdFailedUnits()
QDBusConnection::sessionBus().call(message);
}
+// Reload systemd to make sure the current configuration is active, which also reruns generators.
+// Needed for e.g. XDG autostart changes to become effective.
+void reloadSystemd()
+{
+ QDBusMessage message = QDBusMessage::createMethodCall(QStringLiteral("org.freedesktop.systemd1"),
+ QStringLiteral("/org/freedesktop/systemd1"),
+ QStringLiteral("org.freedesktop.systemd1.Manager"),
+ QStringLiteral("Reload"));
+ QDBusConnection::sessionBus().call(message);
+}
+
bool hasSystemdService(const QString &serviceName)
{
qDBusRegisterMetaType<QPair<QString, QString>>();
@@ -611,6 +622,7 @@ static void migrateUserScriptsAutostart()
bool startPlasmaSession(bool wayland)
{
resetSystemdFailedUnits();
+ reloadSystemd();
OrgKdeKSplashInterface iface(QStringLiteral("org.kde.KSplash"), QStringLiteral("/KSplash"), QDBusConnection::sessionBus());
iface.setStage(QStringLiteral("startPlasma"));
// finally, give the session control to the session manager
--
2.36.1

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Tue Jun 7 12:55:36 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>
- Add patch to fix opensuse-welcome autostart disabling:
* 0001-startkde-Reload-systemd-on-Plasma-start.patch
-------------------------------------------------------------------
Thu May 19 19:46:06 UTC 2022 - Fabian Vogt <fabian@ritter-vogt.de>

View File

@ -41,6 +41,8 @@ Source1: https://download.kde.org/unstable/plasma/%{version}/plasma-works
Source2: plasma.keyring
%endif
Source3: xprop-kde-full-session.desktop
# PATCH-FIX-UPSTREAM
Patch1: 0001-startkde-Reload-systemd-on-Plasma-start.patch
# PATCHES 501-??? are PATCH-FIX-OPENSUSE
Patch501: 0001-Use-qdbus-qt5.patch
Patch502: 0001-Ignore-default-sddm-face-icons.patch