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/plasma-workspace/, kde-plasma/plasma-workspace/files/
Date: Thu,  9 Jul 2020 17:52:24 +0000 (UTC)	[thread overview]
Message-ID: <1594317090.bcd69d48c62d56c48c5ac42d3c6026305b52f988.asturm@gentoo> (raw)

commit:     bcd69d48c62d56c48c5ac42d3c6026305b52f988
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  9 17:50:12 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Jul  9 17:51:30 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bcd69d48

kde-plasma/plasma-workspace: Fix Plasma overriding system locales

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=423995
See also: https://invent.kde.org/plasma/plasma-workspace/-/merge_requests/100

Reported-by: Till Schäfer <till2.schaefer <AT> uni-dortmund.de>
Closes: https://bugs.gentoo.org/731738
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 ...fix-broken-env-vars-for-detailed-settings.patch |  62 ++++++
 .../plasma-workspace-5.19.3-r1.ebuild              | 222 +++++++++++++++++++++
 2 files changed, 284 insertions(+)

diff --git a/kde-plasma/plasma-workspace/files/plasma-workspace-5.19.3-revert-fix-broken-env-vars-for-detailed-settings.patch b/kde-plasma/plasma-workspace/files/plasma-workspace-5.19.3-revert-fix-broken-env-vars-for-detailed-settings.patch
new file mode 100644
index 00000000000..44c29a2f091
--- /dev/null
+++ b/kde-plasma/plasma-workspace/files/plasma-workspace-5.19.3-revert-fix-broken-env-vars-for-detailed-settings.patch
@@ -0,0 +1,62 @@
+From 76028ecdbd9a060b375c1cc53c6ae9ab9276cb28 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Thu, 9 Jul 2020 19:46:02 +0200
+Subject: [PATCH] Revert "Fix broken ENV variables for detailed settings"
+
+This reverts commit edc64d04a1e569d7032c41e6ee0ebf59833c26f2.
+---
+ startkde/startplasma.cpp | 31 ++++++++++---------------------
+ 1 file changed, 10 insertions(+), 21 deletions(-)
+
+diff --git a/startkde/startplasma.cpp b/startkde/startplasma.cpp
+index b2dba900d..a055d5635 100644
+--- a/startkde/startplasma.cpp
++++ b/startkde/startplasma.cpp
+@@ -128,27 +128,11 @@ void runStartupConfig()
+     KConfig config(QStringLiteral("plasma-localerc"));
+     KConfigGroup formatsConfig = KConfigGroup(&config, "Formats");
+ 
+-    // In case we don't have a value in the config file, but in the ENV variables, write it
+-    if (!formatsConfig.hasKey("LANG") && !qEnvironmentVariableIsEmpty("LANG")) {
+-        formatsConfig.writeEntry("LANG", qgetenv("LANG"));
+-        formatsConfig.sync();
+-    }
+-
+-    const auto explicitLCValues = { "LANG", "LC_COLLATE", "LC_CTYPE" };
+-    const auto detailedLCValues = { "LC_NUMERIC", "LC_TIME", "LC_MONETARY", "LC_MEASUREMENT" };
+-    const QString lcLang =  formatsConfig.readEntry("LANG");
+-    const bool useDetailed = formatsConfig.readEntry("useDetailed", false);
+-
+-    // These values have to explicitly set
+-    for (auto lc : explicitLCValues) {
+-        const QString value = formatsConfig.readEntry(lc);
+-        if (!value.isEmpty()) {
+-            qputenv(lc, value.toUtf8());
+-        }
+-    }
+-    // If we have the "Detailed Settings" checkbox unchecked we want to use the value from the LANG entry
+-    for (auto lc : detailedLCValues) {
+-        const QString value = useDetailed ? formatsConfig.readEntry(lc) : lcLang;
++    const auto lcValues = {
++        "LANG", "LC_NUMERIC", "LC_TIME", "LC_MONETARY", "LC_MEASUREMENT", "LC_COLLATE", "LC_CTYPE"
++    };
++    for (auto lc : lcValues) {
++        const QString value = formatsConfig.readEntry(lc, QString());
+         if (!value.isEmpty()) {
+             qputenv(lc, value.toUtf8());
+         }
+@@ -159,6 +143,11 @@ void runStartupConfig()
+     if (!value.isEmpty()) {
+         qputenv("LANGUAGE", value.toUtf8());
+     }
++
++    if (!formatsConfig.hasKey("LANG") && !qEnvironmentVariableIsEmpty("LANG")) {
++        formatsConfig.writeEntry("LANG", qgetenv("LANG"));
++        formatsConfig.sync();
++    }
+ }
+ 
+ void setupCursor(bool wayland)
+-- 
+2.27.0
+

diff --git a/kde-plasma/plasma-workspace/plasma-workspace-5.19.3-r1.ebuild b/kde-plasma/plasma-workspace/plasma-workspace-5.19.3-r1.ebuild
new file mode 100644
index 00000000000..2ffe458b17b
--- /dev/null
+++ b/kde-plasma/plasma-workspace/plasma-workspace-5.19.3-r1.ebuild
@@ -0,0 +1,222 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_HANDBOOK="forceoptional"
+ECM_TEST="forceoptional"
+KFMIN=5.71.0
+PVCUT=$(ver_cut 1-3)
+QTMIN=5.14.2
+VIRTUALX_REQUIRED="test"
+inherit ecm kde.org
+
+DESCRIPTION="KDE Plasma workspace"
+
+LICENSE="GPL-2" # TODO: CHECK
+SLOT="5"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="appstream +calendar geolocation gps qalculate qrcode +semantic-desktop systemd telemetry"
+
+REQUIRED_USE="gps? ( geolocation )"
+
+COMMON_DEPEND="
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
+	>=dev-qt/qtgui-${QTMIN}:5[jpeg]
+	>=dev-qt/qtnetwork-${QTMIN}:5
+	>=dev-qt/qtsql-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtx11extras-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
+	>=kde-frameworks/kactivities-${KFMIN}:5
+	>=kde-frameworks/kactivities-stats-${KFMIN}:5
+	>=kde-frameworks/kauth-${KFMIN}:5
+	>=kde-frameworks/kbookmarks-${KFMIN}:5
+	>=kde-frameworks/kcompletion-${KFMIN}:5
+	>=kde-frameworks/kconfig-${KFMIN}:5
+	>=kde-frameworks/kconfigwidgets-${KFMIN}:5
+	>=kde-frameworks/kcoreaddons-${KFMIN}:5
+	>=kde-frameworks/kcrash-${KFMIN}:5
+	>=kde-frameworks/kdbusaddons-${KFMIN}:5
+	>=kde-frameworks/kdeclarative-${KFMIN}:5
+	>=kde-frameworks/kded-${KFMIN}:5
+	>=kde-frameworks/kdelibs4support-${KFMIN}:5
+	>=kde-frameworks/kglobalaccel-${KFMIN}:5
+	>=kde-frameworks/kguiaddons-${KFMIN}:5
+	>=kde-frameworks/ki18n-${KFMIN}:5
+	>=kde-frameworks/kiconthemes-${KFMIN}:5
+	>=kde-frameworks/kidletime-${KFMIN}:5
+	>=kde-frameworks/kio-${KFMIN}:5
+	>=kde-frameworks/kitemmodels-${KFMIN}:5
+	>=kde-frameworks/kitemviews-${KFMIN}:5
+	>=kde-frameworks/kjobwidgets-${KFMIN}:5
+	>=kde-frameworks/knewstuff-${KFMIN}:5
+	>=kde-frameworks/knotifications-${KFMIN}:5
+	>=kde-frameworks/knotifyconfig-${KFMIN}:5
+	>=kde-frameworks/kpackage-${KFMIN}:5
+	>=kde-frameworks/kpeople-${KFMIN}:5
+	>=kde-frameworks/krunner-${KFMIN}:5
+	>=kde-frameworks/kservice-${KFMIN}:5
+	>=kde-frameworks/ktexteditor-${KFMIN}:5
+	>=kde-frameworks/ktextwidgets-${KFMIN}:5
+	>=kde-frameworks/kwallet-${KFMIN}:5
+	>=kde-frameworks/kwayland-${KFMIN}:5
+	>=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+	>=kde-frameworks/kwindowsystem-${KFMIN}:5
+	>=kde-frameworks/kxmlgui-${KFMIN}:5
+	>=kde-frameworks/plasma-${KFMIN}:5
+	>=kde-frameworks/solid-${KFMIN}:5
+	>=kde-plasma/kscreenlocker-${PVCUT}:5
+	>=kde-plasma/kwin-${PVCUT}:5
+	>=kde-plasma/libkscreen-${PVCUT}:5
+	>=kde-plasma/libksysguard-${PVCUT}:5
+	>=kde-plasma/libkworkspace-${PVCUT}:5
+	media-libs/phonon[qt5(+)]
+	sys-libs/zlib
+	x11-libs/libICE
+	x11-libs/libSM
+	x11-libs/libX11
+	x11-libs/libXau
+	x11-libs/libxcb
+	x11-libs/libXfixes
+	x11-libs/libXrender
+	x11-libs/libXtst
+	x11-libs/xcb-util
+	x11-libs/xcb-util-image
+	appstream? ( dev-libs/appstream[qt5] )
+	calendar? ( >=kde-frameworks/kholidays-${KFMIN}:5 )
+	geolocation? ( >=kde-frameworks/networkmanager-qt-${KFMIN}:5 )
+	gps? ( sci-geosciences/gpsd )
+	qalculate? ( sci-libs/libqalculate:= )
+	qrcode? ( >=kde-frameworks/prison-${KFMIN}:5 )
+	semantic-desktop? ( >=kde-frameworks/baloo-${KFMIN}:5 )
+	telemetry? ( dev-libs/kuserfeedback:5 )
+"
+DEPEND="${COMMON_DEPEND}
+	>=dev-qt/qtconcurrent-${QTMIN}:5
+	x11-base/xorg-proto
+"
+RDEPEND="${COMMON_DEPEND}
+	app-text/iso-codes
+	>=dev-qt/qdbus-${QTMIN}:5
+	>=dev-qt/qtgraphicaleffects-${QTMIN}:5
+	>=dev-qt/qtpaths-${QTMIN}:5
+	>=dev-qt/qtquickcontrols-${QTMIN}:5[widgets]
+	>=dev-qt/qtquickcontrols2-${QTMIN}:5
+	>=kde-apps/kio-extras-19.04.3:5
+	>=kde-frameworks/kquickcharts-${KFMIN}:5
+	>=kde-frameworks/kdesu-${KFMIN}:5
+	>=kde-frameworks/kirigami-${KFMIN}:5
+	>=kde-plasma/ksysguard-${PVCUT}:5
+	>=kde-plasma/milou-${PVCUT}:5
+	>=kde-plasma/plasma-integration-${PVCUT}:5
+	x11-apps/xmessage
+	x11-apps/xprop
+	x11-apps/xrdb
+	x11-apps/xsetroot
+	systemd? ( sys-apps/dbus[user-session] )
+	!systemd? ( sys-apps/dbus )
+	!<kde-plasma/plasma-desktop-5.16.80:5
+"
+PDEPEND="
+	>=kde-plasma/kde-cli-tools-${PVCUT}:5
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-5.14.2-split-libkworkspace.patch"
+	"${FILESDIR}/${PN}-5.19.2-use-PlasmaExtras.PlaceholderMessage.patch" # KDE-Bug #422684
+	"${FILESDIR}/${P}-revert-fix-broken-env-vars-for-detailed-settings.patch" # KDE-Bug #423995
+)
+
+RESTRICT+=" test"
+
+pkg_setup() {
+	ecm_pkg_setup
+
+	local md5
+	local srcfile=/etc/plasma/XX/10-agent-XX.sh
+	local newdir="${EPREFIX}"/etc/xdg/plasma-workspace
+
+	if [[ -f "${EROOT}"${srcfile//XX/startup} ]]; then
+		md5=$(md5sum "${EROOT}"${srcfile//XX/startup})
+		if [[ ${md5%% *} != 90caaabb40b56bfbe65388841a6dd6ca ]]; then
+			elog "Existing modified ${EPREFIX}${srcfile//XX/startup} detected."
+			elog "Copying to ${newdir}/env/10-agent-startup.sh..."
+			cp -v "${EROOT}"${srcfile//XX/startup} "${T}"/ || die
+		fi
+	fi
+
+	if [[ -f "${EROOT}"${srcfile//XX/shutdown} ]]; then
+		md5=$(md5sum "${EROOT}"${srcfile//XX/shutdown})
+		if [[ ${md5%% *} != d7bffa0273f92abd999c7c3c43dbc23d ]]; then
+			elog "Existing modified ${EPREFIX}${srcfile//XX/shutdown} detected."
+			elog "Copying to ${newdir}/shutdown/10-agent-shutdown.sh..."
+			cp -v "${EROOT}"${srcfile//XX/shutdown} "${T}"/ || die
+		fi
+	fi
+}
+
+src_prepare() {
+	ecm_src_prepare
+
+	if [[ ! -f "${T}"/10-agent-startup.sh ]]; then
+		cp "${FILESDIR}"/10-agent-startup.sh "${T}"/ || die
+	fi
+	if [[ ! -f "${T}"/10-agent-shutdown.sh ]]; then
+		cp "${FILESDIR}"/10-agent-shutdown.sh "${T}"/ || die
+	fi
+
+	cmake_comment_add_subdirectory libkworkspace
+	# delete colliding libkworkspace translations
+	if [[ ${KDE_BUILD_TYPE} = release ]]; then
+		find po -type f -name "*po" -and -name "libkworkspace*" -delete || die
+	fi
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DBUILD_xembed-sni-proxy=OFF
+		$(cmake_use_find_package appstream AppStreamQt)
+		$(cmake_use_find_package calendar KF5Holidays)
+		$(cmake_use_find_package geolocation KF5NetworkManagerQt)
+		$(cmake_use_find_package qalculate Qalculate)
+		$(cmake_use_find_package qrcode KF5Prison)
+		$(cmake_use_find_package semantic-desktop KF5Baloo)
+		$(cmake_use_find_package telemetry KUserFeedback)
+	)
+
+	use geolocation && mycmakeargs+=( $(cmake_use_find_package gps libgps) )
+
+	ecm_src_configure
+}
+
+src_install() {
+	ecm_src_install
+
+	# default startup and shutdown scripts
+	insinto /etc/xdg/plasma-workspace/env
+	doins "${T}"/10-agent-startup.sh
+
+	insinto /etc/xdg/plasma-workspace/shutdown
+	doins "${T}"/10-agent-shutdown.sh
+	fperms +x /etc/xdg/plasma-workspace/shutdown/10-agent-shutdown.sh
+}
+
+pkg_postinst () {
+	ecm_pkg_postinst
+
+	# Clean up pre-5.17.4 scripts
+	if [[ -e "${EROOT}"/etc/plasma/startup/10-agent-startup.sh ]]; then
+		rm "${EROOT}"/etc/plasma/startup/10-agent-startup.sh || die
+		elog "Removed obsolete ${EPREFIX}/etc/plasma/startup/10-agent-startup.sh"
+	fi
+	if [[ -e "${EROOT}"/etc/plasma/shutdown/10-agent-shutdown.sh ]]; then
+		rm "${EROOT}"/etc/plasma/shutdown/10-agent-shutdown.sh || die
+		elog "Removed obsolete ${EPREFIX}/etc/plasma/shutdown/10-agent-shutdown.sh"
+	fi
+
+	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"
+}


             reply	other threads:[~2020-07-09 17:52 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-09 17:52 Andreas Sturmlechner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-10-20 16:43 [gentoo-commits] repo/gentoo:master commit in: kde-plasma/plasma-workspace/, kde-plasma/plasma-workspace/files/ Andreas Sturmlechner
2025-09-25 19:11 Andreas Sturmlechner
2025-05-26 18:04 Andreas Sturmlechner
2024-10-07 22:12 Andreas Sturmlechner
2024-10-07 18:02 Andreas Sturmlechner
2024-09-20 17:11 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-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=1594317090.bcd69d48c62d56c48c5ac42d3c6026305b52f988.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