public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-plasma/libkworkspace/files/, kde-plasma/libkworkspace/
Date: Fri, 10 Dec 2021 15:11:27 +0000 (UTC)	[thread overview]
Message-ID: <1639149063.21ed02f5976d3fedfac8e3d7b894685593103c33.asturm@gentoo> (raw)

commit:     21ed02f5976d3fedfac8e3d7b894685593103c33
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  9 14:35:21 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Dec 10 15:11:03 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21ed02f5

kde-plasma/libkworkspace: Fix sleep/suspend race condition

(not fixed in 5.23.4 yet)

See also: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1164

Thanks-to: Joe Breuer <kde <AT> jmbreuer.net>
Bug: https://bugs.gentoo.org/818124
Package-Manager: Portage-3.0.28, Repoman-3.0.3
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...bkworkspace-5.23.3-synchronous-dbus-calls.patch | 48 +++++++++++++++++
 .../libkworkspace/libkworkspace-5.23.4-r1.ebuild   | 60 ++++++++++++++++++++++
 2 files changed, 108 insertions(+)

diff --git a/kde-plasma/libkworkspace/files/libkworkspace-5.23.3-synchronous-dbus-calls.patch b/kde-plasma/libkworkspace/files/libkworkspace-5.23.3-synchronous-dbus-calls.patch
new file mode 100644
index 000000000000..411bebf70412
--- /dev/null
+++ b/kde-plasma/libkworkspace/files/libkworkspace-5.23.3-synchronous-dbus-calls.patch
@@ -0,0 +1,48 @@
+From 9ecd45f28dc5c3a4b1716d09e0ba121ec5fb2a50 Mon Sep 17 00:00:00 2001
+From: Joe Breuer <kde@jmbreuer.net>
+Date: Mon, 1 Nov 2021 07:19:51 +0000
+Subject: [PATCH] Fix sleep/suspend sometimes not working ... from
+ ksmserver-logout-greeter, by making the DBus calls synchronous.
+
+---
+ libkworkspace/sessionmanagementbackend.cpp | 9 +++++----
+ 1 file changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/sessionmanagementbackend.cpp b/sessionmanagementbackend.cpp
+index 83cd39395..a77a8a475 100644
+--- a/sessionmanagementbackend.cpp
++++ b/sessionmanagementbackend.cpp
+@@ -137,7 +137,6 @@ void LogindSessionBackend::shutdown()
+ {
+     // logind will confirm credentials with the caller, if the app quits after sending this
+     // this may fail
+-    // its not really needed for suspend tasks where the calling app won't be closing
+     m_login1->PowerOff(true).waitForFinished();
+ }
+ 
+@@ -148,17 +147,19 @@ void LogindSessionBackend::reboot()
+ 
+ void LogindSessionBackend::suspend()
+ {
+-    m_login1->Suspend(true);
++    // these need to be synchronous as well - ksmserver-logout-greeter specifically calls these
++    // and will quit immediately after
++    m_login1->Suspend(true).waitForFinished();
+ }
+ 
+ void LogindSessionBackend::hybridSuspend()
+ {
+-    m_login1->HybridSleep(true);
++    m_login1->HybridSleep(true).waitForFinished();
+ }
+ 
+ void LogindSessionBackend::hibernate()
+ {
+-    m_login1->Hibernate(true);
++    m_login1->Hibernate(true).waitForFinished();;
+ }
+ 
+ bool LogindSessionBackend::canShutdown() const
+-- 
+GitLab
+

diff --git a/kde-plasma/libkworkspace/libkworkspace-5.23.4-r1.ebuild b/kde-plasma/libkworkspace/libkworkspace-5.23.4-r1.ebuild
new file mode 100644
index 000000000000..f0dd4898d65b
--- /dev/null
+++ b/kde-plasma/libkworkspace/libkworkspace-5.23.4-r1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_TEST="true"
+KDE_ORG_NAME="plasma-workspace"
+KFMIN=5.86.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=5.15.2
+inherit ecm kde.org
+
+DESCRIPTION="Workspace library to interact with the Plasma session manager"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+IUSE=""
+
+RDEPEND="
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtx11extras-${QTMIN}:5
+	>=kde-frameworks/kconfig-${KFMIN}:5
+	>=kde-frameworks/kcoreaddons-${KFMIN}:5
+	>=kde-frameworks/ki18n-${KFMIN}:5
+	>=kde-frameworks/kwindowsystem-${KFMIN}:5
+	>=kde-plasma/kscreenlocker-${PVCUT}:5
+	x11-libs/libICE
+	x11-libs/libSM
+	x11-libs/libX11
+	x11-libs/libXau
+"
+DEPEND="${RDEPEND}
+	>=kde-frameworks/kinit-${KFMIN}:5
+	>=kde-plasma/kwin-${PVCUT}:5
+"
+
+S="${S}/${PN}"
+
+PATCHES=(
+	# Pending: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/1164
+	"${FILESDIR}"/${PN}-5.23.3-synchronous-dbus-calls.patch # bug 818124
+)
+
+src_prepare() {
+	# delete colliding libkworkspace translations, let ecm_src_prepare do its magic
+	if [[ ${KDE_BUILD_TYPE} = release ]]; then
+		find ../po -type f -name "*po" -and -not -name "libkworkspace*" -delete || die
+		rm -rf po/*/docs || die
+		cp -a ../po ./ || die
+	fi
+
+	eapply "${FILESDIR}/${PN}-5.22.80-standalone.patch"
+	sed -e "/set/s/GENTOO_PV/$(ver_cut 1-3)/" -i CMakeLists.txt || die
+	cat >> CMakeLists.txt <<- _EOF_ || die
+		ki18n_install(po)
+	_EOF_
+
+	ecm_src_prepare
+}


             reply	other threads:[~2021-12-10 15:11 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-10 15:11 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2021-10-01  6:44 [gentoo-commits] repo/gentoo:master commit in: kde-plasma/libkworkspace/files/, kde-plasma/libkworkspace/ Andreas Sturmlechner
2021-09-16 11:14 Andreas Sturmlechner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1639149063.21ed02f5976d3fedfac8e3d7b894685593103c33.asturm@gentoo \
    --to=asturm@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox