From: "Andreas Sturmlechner" <asturm@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-plasma/plasma-workspace/, kde-plasma/plasma-workspace/files/
Date: Fri, 20 Sep 2024 17:11:50 +0000 (UTC) [thread overview]
Message-ID: <1726852297.0f286d339c6912c9af2b648bba9bb512d370842b.asturm@gentoo> (raw)
commit: 0f286d339c6912c9af2b648bba9bb512d370842b
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 20 16:52:12 2024 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Fri Sep 20 17:11:37 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0f286d33
kde-plasma/plasma-workspace: Fix X11 logout w/ Session Restore enabled
KDE-bug: https://bugs.kde.org/show_bug.cgi?id=488853
Closes: https://bugs.gentoo.org/938925
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
...ce-6.1.5-fix-x11-logout-w-session-restore.patch | 45 ++++
.../plasma-workspace-6.1.5-r2.ebuild | 232 +++++++++++++++++++++
2 files changed, 277 insertions(+)
diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-x11-logout-w-session-restore.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-x11-logout-w-session-restore.patch
new file mode 100644
index 000000000000..052ff52bba38
--- /dev/null
+++ b/kde-plasma/plasma-workspace/files/plasma-workspace-6.1.5-fix-x11-logout-w-session-restore.patch
@@ -0,0 +1,45 @@
+From 9bd2dcc8a785d977cdf67a7cbb467423803e3327 Mon Sep 17 00:00:00 2001
+From: David Edmundson <kde@davidedmundson.co.uk>
+Date: Fri, 20 Sep 2024 14:36:11 +0200
+Subject: [PATCH] startkde: Disable session management in our session
+ management
+
+We have two types of session restore, ksmserver for ICE clients and a
+small fallback app that runs after ksmserver for any stragglers.
+
+This fallback app is a gui application, as such it will try and connect
+to ksmserver. This isn't useful and can cause a block.
+
+BUG: 488853
+---
+ startkde/session-restore/restore.cpp | 1 +
+ startkde/session-restore/save.cpp | 1 +
+ 2 files changed, 2 insertions(+)
+
+diff --git a/startkde/session-restore/restore.cpp b/startkde/session-restore/restore.cpp
+index 2d86215a6f..aecc179139 100644
+--- a/startkde/session-restore/restore.cpp
++++ b/startkde/session-restore/restore.cpp
+@@ -22,6 +22,7 @@ using namespace Qt::StringLiterals;
+
+ int main(int argc, char *argv[])
+ {
++ QCoreApplication::setAttribute(Qt::AA_DisableSessionManager);
+ QGuiApplication a(argc, argv);
+ a.setDesktopSettingsAware(false);
+ a.setApplicationName(u"plasmasessionrestore"_s);
+diff --git a/startkde/session-restore/save.cpp b/startkde/session-restore/save.cpp
+index a2a0fb2086..5e1473ed0b 100644
+--- a/startkde/session-restore/save.cpp
++++ b/startkde/session-restore/save.cpp
+@@ -29,6 +29,7 @@ using namespace Qt::StringLiterals;
+
+ int main(int argc, char *argv[])
+ {
++ QCoreApplication::setAttribute(Qt::AA_DisableSessionManager);
+ QGuiApplication::setDesktopFileName(u"plasma-fallback-session-save"_s);
+ QGuiApplication a(argc, argv);
+ a.setApplicationName(u"plasmasessionrestore"_s);
+--
+GitLab
+
diff --git a/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild b/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild
new file mode 100644
index 000000000000..317637695d40
--- /dev/null
+++ b/kde-plasma/plasma-workspace/plasma-workspace-6.1.5-r2.ebuild
@@ -0,0 +1,232 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_HANDBOOK="optional"
+ECM_TEST="forceoptional"
+KFMIN=6.5.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=6.7.2
+inherit ecm plasma.kde.org
+
+DESCRIPTION="KDE Plasma workspace"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="6"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="appstream +calendar +fontconfig geolocation gps +policykit
+screencast +semantic-desktop systemd telemetry +wallpaper-metadata"
+
+REQUIRED_USE="gps? ( geolocation )"
+RESTRICT="test"
+
+# kde-frameworks/kwindowsystem[X]: Uses KX11Extras
+# slot op: Uses Qt::GuiPrivate for qtx11extras_p.h
+# slot op: various private QtWaylandClient headers
+COMMON_DEPEND="
+ dev-libs/icu:=
+ >=dev-libs/wayland-1.15
+ >=dev-qt/qt5compat-${QTMIN}:6[qml]
+ >=dev-qt/qtbase-${QTMIN}:6=[dbus,gui,libinput,network,sql,widgets,xml]
+ >=dev-qt/qtdeclarative-${QTMIN}:6[widgets]
+ >=dev-qt/qtshadertools-${QTMIN}:6
+ >=dev-qt/qtsvg-${QTMIN}:6
+ >=dev-qt/qtwayland-${QTMIN}:6=
+ >=kde-frameworks/karchive-${KFMIN}:6
+ >=kde-frameworks/kauth-${KFMIN}:6
+ >=kde-frameworks/kbookmarks-${KFMIN}:6
+ >=kde-frameworks/kcmutils-${KFMIN}:6
+ >=kde-frameworks/kcompletion-${KFMIN}:6
+ >=kde-frameworks/kconfig-${KFMIN}:6
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:6
+ >=kde-frameworks/kcoreaddons-${KFMIN}:6
+ >=kde-frameworks/kcrash-${KFMIN}:6
+ >=kde-frameworks/kdbusaddons-${KFMIN}:6
+ >=kde-frameworks/kdeclarative-${KFMIN}:6
+ >=kde-frameworks/kded-${KFMIN}:6
+ >=kde-frameworks/kglobalaccel-${KFMIN}:6
+ >=kde-frameworks/kguiaddons-${KFMIN}:6
+ >=kde-frameworks/ki18n-${KFMIN}:6
+ >=kde-frameworks/kiconthemes-${KFMIN}:6
+ >=kde-frameworks/kidletime-${KFMIN}:6
+ >=kde-frameworks/kio-${KFMIN}:6
+ >=kde-frameworks/kitemmodels-${KFMIN}:6
+ >=kde-frameworks/kitemviews-${KFMIN}:6
+ >=kde-frameworks/kjobwidgets-${KFMIN}:6
+ >=kde-frameworks/knewstuff-${KFMIN}:6
+ >=kde-frameworks/knotifications-${KFMIN}:6
+ >=kde-frameworks/knotifyconfig-${KFMIN}:6
+ >=kde-frameworks/kpackage-${KFMIN}:6
+ >=kde-frameworks/kparts-${KFMIN}:6
+ >=kde-frameworks/krunner-${KFMIN}:6
+ >=kde-frameworks/kservice-${KFMIN}:6
+ >=kde-frameworks/kstatusnotifieritem-${KFMIN}:6
+ >=kde-frameworks/ksvg-${KFMIN}:6
+ >=kde-frameworks/ktexteditor-${KFMIN}:6
+ >=kde-frameworks/ktextwidgets-${KFMIN}:6
+ >=kde-frameworks/kunitconversion-${KFMIN}:6
+ >=kde-frameworks/kwallet-${KFMIN}:6
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:6
+ >=kde-frameworks/kwindowsystem-${KFMIN}:6[X]
+ >=kde-frameworks/kxmlgui-${KFMIN}:6
+ >=kde-frameworks/prison-${KFMIN}:6[qml]
+ >=kde-frameworks/solid-${KFMIN}:6
+ >=kde-plasma/breeze-${PVCUT}:6
+ >=kde-plasma/kscreenlocker-${PVCUT}:6
+ >=kde-plasma/kwayland-${PVCUT}:6
+ >=kde-plasma/kwin-${PVCUT}:6
+ >=kde-plasma/layer-shell-qt-${PVCUT}:6
+ >=kde-plasma/libkscreen-${PVCUT}:6
+ >=kde-plasma/libksysguard-${PVCUT}:6
+ >=kde-plasma/libplasma-${PVCUT}:6
+ >=kde-plasma/plasma-activities-${PVCUT}:6
+ >=kde-plasma/plasma-activities-stats-${PVCUT}:6
+ >=kde-plasma/plasma5support-${PVCUT}:6
+ media-libs/libcanberra
+ >=media-libs/phonon-4.12.0[qt6(+)]
+ sci-libs/libqalculate:=
+ sys-libs/zlib
+ virtual/libudev:=
+ x11-libs/libICE
+ x11-libs/libSM
+ x11-libs/libX11
+ x11-libs/libXau
+ x11-libs/libxcb
+ x11-libs/libXcursor
+ x11-libs/libXfixes
+ x11-libs/libXrender
+ x11-libs/libXtst
+ x11-libs/xcb-util
+ appstream? ( >=dev-libs/appstream-1[qt6] )
+ calendar? ( >=kde-frameworks/kholidays-${KFMIN}:6 )
+ fontconfig? (
+ media-libs/fontconfig
+ x11-libs/libXft
+ x11-libs/xcb-util-image
+ )
+ geolocation? ( >=kde-frameworks/networkmanager-qt-${KFMIN}:6 )
+ gps? ( sci-geosciences/gpsd )
+ policykit? (
+ >=sys-auth/polkit-qt-0.175[qt6(+)]
+ virtual/libcrypt:=
+ )
+ screencast? (
+ >=dev-qt/qtbase-${QTMIN}:6=[opengl]
+ >=kde-plasma/kpipewire-${PVCUT}:6
+ media-libs/libglvnd
+ >=media-video/pipewire-0.3:=
+ x11-libs/libdrm
+ )
+ semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:6 )
+ systemd? ( sys-apps/systemd:= )
+ telemetry? ( >=kde-frameworks/kuserfeedback-${KFMIN}:6 )
+ wallpaper-metadata? ( kde-apps/libkexiv2:6 )
+"
+DEPEND="${COMMON_DEPEND}
+ >=dev-libs/plasma-wayland-protocols-1.13.0
+ dev-libs/qcoro[dbus]
+ >=dev-qt/qtbase-${QTMIN}:6[concurrent]
+ x11-base/xorg-proto
+ fontconfig? ( x11-libs/libXrender )
+"
+RDEPEND="${COMMON_DEPEND}
+ !kde-plasma/libkworkspace:5
+ !<kde-plasma/plasma-desktop-5.27.0:5
+ !kde-plasma/xembed-sni-proxy:*
+ app-text/iso-codes
+ dev-libs/kirigami-addons:6
+ >=dev-qt/qttools-${QTMIN}:*[qdbus]
+ kde-apps/kio-extras:6
+ >=kde-frameworks/kirigami-${KFMIN}:6
+ >=kde-frameworks/kquickcharts-${KFMIN}:6
+ >=kde-plasma/kactivitymanagerd-${PVCUT}:6
+ >=kde-plasma/kdesu-gui-${PVCUT}:*
+ >=kde-plasma/milou-${PVCUT}:6
+ >=kde-plasma/plasma-integration-${PVCUT}:6
+ sys-apps/dbus
+ x11-apps/xmessage
+ x11-apps/xprop
+ x11-apps/xrdb
+ x11-apps/xsetroot
+ policykit? ( sys-apps/accountsservice )
+"
+BDEPEND="
+ >=dev-qt/qtwayland-${QTMIN}:6
+ >=dev-util/wayland-scanner-1.19.0
+ >=kde-frameworks/kcmutils-${KFMIN}:6
+ virtual/pkgconfig
+ test? ( >=dev-qt/qtwayland-${QTMIN}:6[compositor] )
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-5.22.5-krunner-cwd-at-home.patch" # TODO upstream: KDE-bug 432975, bug 767478
+ "${FILESDIR}/${P}-fix-wayland-session-restore-saving.patch" # KDE-bug 436318
+ "${FILESDIR}/${P}-fix-x11-logout-w-session-restore.patch" # bug 938925, KDE-bug 488853
+)
+
+src_prepare() {
+ ecm_src_prepare
+
+ # TODO: try to get a build switch upstreamed
+ if ! use screencast; then
+ ecm_punt_bogus_dep KPipeWire
+ sed -e "s/^pkg_check_modules.*PipeWire/#&/" -i CMakeLists.txt || die
+ fi
+
+ # TODO: try to get a build switch upstreamed
+ if use geolocation; then
+ use gps || sed -e "s/^pkg_check_modules.*LIBGPS/#&/" \
+ -i dataengines/geolocation/CMakeLists.txt || die
+ fi
+
+ if ! use policykit; then
+ cmake_run_in kcms cmake_comment_add_subdirectory users
+ fi
+
+ if ! use fontconfig; then
+ ecm_punt_bogus_dep XCB IMAGE
+ sed -e "s/check_X11_lib(Xft)/#&/" -i CMakeLists.txt || die
+ fi
+
+ # TODO: try to get a build switch upstreamed
+ if ! use systemd; then
+ sed -e "s/^pkg_check_modules.*SYSTEMD/#&/" -i CMakeLists.txt || die
+ fi
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_X11=ON # TODO: broken upstream, fix it if you can
+ -DGLIBC_LOCALE_GEN=$(usex policykit)
+ $(cmake_use_find_package appstream AppStreamQt)
+ $(cmake_use_find_package calendar KF6Holidays)
+ $(cmake_use_find_package fontconfig Fontconfig)
+ $(cmake_use_find_package geolocation KF6NetworkManagerQt)
+ $(cmake_use_find_package semantic-desktop KF6Baloo)
+ $(cmake_use_find_package telemetry KF6UserFeedback)
+ $(cmake_use_find_package wallpaper-metadata KExiv2Qt6)
+ )
+
+ ecm_src_configure
+}
+
+src_install() {
+ ecm_src_install
+
+ # default startup and shutdown scripts
+ insinto /etc/xdg/plasma-workspace/env
+ doins "${FILESDIR}"/10-agent-startup.sh
+
+ insinto /etc/xdg/plasma-workspace/shutdown
+ doins "${FILESDIR}"/10-agent-shutdown.sh
+ fperms +x /etc/xdg/plasma-workspace/shutdown/10-agent-shutdown.sh
+}
+
+pkg_postinst () {
+ ecm_pkg_postinst
+
+ elog "To enable gpg-agent and/or ssh-agent in Plasma sessions,"
+ elog "edit ${EPREFIX}/etc/xdg/plasma-workspace/env/10-agent-startup.sh"
+ elog "and ${EPREFIX}/etc/xdg/plasma-workspace/shutdown/10-agent-shutdown.sh"
+}
next reply other threads:[~2024-09-20 17:11 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-09-20 17:11 Andreas Sturmlechner [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-10-07 22:12 [gentoo-commits] repo/gentoo:master commit in: kde-plasma/plasma-workspace/, kde-plasma/plasma-workspace/files/ Andreas Sturmlechner
2024-10-07 18:02 Andreas Sturmlechner
2024-08-12 20:16 Andreas Sturmlechner
2024-06-05 18:57 Andreas Sturmlechner
2023-09-24 21:47 Andreas Sturmlechner
2023-06-27 11:25 Andreas Sturmlechner
2023-04-10 18:35 Andreas Sturmlechner
2023-03-23 8:39 Andreas Sturmlechner
2023-02-01 9:47 Andreas Sturmlechner
2022-11-30 1:44 Sam James
2022-10-03 8:43 Andreas Sturmlechner
2022-09-14 11:59 Andreas Sturmlechner
2022-09-09 7:34 Sam James
2022-06-14 12:44 Andreas Sturmlechner
2022-05-17 19:02 Andreas Sturmlechner
2022-02-06 21:17 Andreas Sturmlechner
2021-12-14 9:28 Andreas Sturmlechner
2021-12-10 14:58 Andreas Sturmlechner
2021-11-30 14:33 Andreas Sturmlechner
2021-11-23 14:59 Andreas Sturmlechner
2021-09-22 21:59 Andreas Sturmlechner
2021-09-16 11:14 Andreas Sturmlechner
2021-05-29 21:19 Andreas Sturmlechner
2021-02-05 10:12 Andreas Sturmlechner
2021-01-23 22:45 Andreas Sturmlechner
2021-01-15 18:33 Andreas Sturmlechner
2020-10-04 16:07 Andreas Sturmlechner
2020-07-28 15:37 Andreas Sturmlechner
2020-07-09 17:52 Andreas Sturmlechner
2020-06-23 13:49 Andreas Sturmlechner
2020-05-16 22:38 Andreas Sturmlechner
2020-05-16 22:38 Andreas Sturmlechner
2020-01-21 16:29 Andreas Sturmlechner
2019-07-20 22:15 Andreas Sturmlechner
2018-09-11 17:47 Andreas Sturmlechner
2018-04-11 20:08 Andreas Sturmlechner
2018-02-09 13:57 Michael Palimaka
2017-08-31 20:54 Andreas Sturmlechner
2017-08-02 23:22 Andreas Sturmlechner
2017-07-27 16:24 Andreas Sturmlechner
2016-11-16 18:38 Michael Palimaka
2016-09-28 21:47 Michael Palimaka
2016-02-09 16:25 Michael Palimaka
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=1726852297.0f286d339c6912c9af2b648bba9bb512d370842b.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