Luca Beltrame 2018-05-21 09:07:08 +00:00 committed by Git OBS Bridge
parent 69cb75aa48
commit c6abb9d535
8 changed files with 61 additions and 164 deletions

View File

@ -1,29 +0,0 @@
From e83437e6e5caf39c1c5df4e7ab5600440e43ff28 Mon Sep 17 00:00:00 2001
From: "Friedrich W. H. Kossebau" <kossebau@kde.org>
Date: Sat, 10 Feb 2018 14:04:57 +0100
Subject: [PATCH 1/3] Call KLocalizedString::setApplicationDomain after Q*App
creation
As now recommended, to ensure all locale settings are done from Qt side
---
kcmshell/main.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kcmshell/main.cpp b/kcmshell/main.cpp
index dd4ed1c..93dd6f8 100644
--- a/kcmshell/main.cpp
+++ b/kcmshell/main.cpp
@@ -173,9 +173,9 @@ void KCMShell::appExit(const QString &appId, const QString &oldName, const QStri
extern "C" Q_DECL_EXPORT int kdemain(int _argc, char *_argv[])
{
+ KCMShell app(_argc, _argv);
KLocalizedString::setApplicationDomain("kcmshell5");
- KCMShell app(_argc, _argv);
app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
KAboutData aboutData("kcmshell5", i18n("System Settings Module"),
--
2.16.2

View File

@ -1,79 +0,0 @@
From cc5f6765b3e25f411120d2100fb14f0d69de75a1 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Tue, 27 Mar 2018 09:24:09 +0200
Subject: [PATCH 2/3] Use platform detection from KWorkSpace in KCMShell
Summary: In a Wayland session, KCMs need to use the wayland platform plugin.
Test Plan: kcmshell5 kscreen now works properly.
Reviewers: #plasma, romangg
Reviewed By: #plasma, romangg
Subscribers: romangg, plasma-devel
Tags: #plasma
Differential Revision: https://phabricator.kde.org/D11739
---
CMakeLists.txt | 2 ++
kcmshell/CMakeLists.txt | 1 +
kcmshell/main.cpp | 8 ++++++++
3 files changed, 11 insertions(+)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 26d5e7e..0c04e8d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -50,6 +50,8 @@ find_package(KF5 ${KF5_MIN_VERSION} REQUIRED COMPONENTS
QUIET
)
+find_package(LibKWorkspace ${PROJECT_VERSION} REQUIRED)
+
# Disables automatic conversions from QString (or char *) to QUrl.
add_definitions(-DQT_NO_URL_CAST_FROM_STRING)
diff --git a/kcmshell/CMakeLists.txt b/kcmshell/CMakeLists.txt
index f787136..7c33290 100644
--- a/kcmshell/CMakeLists.txt
+++ b/kcmshell/CMakeLists.txt
@@ -11,6 +11,7 @@ target_link_libraries(kdeinit_kcmshell5
KF5::I18n
KF5::WindowSystem
KF5::Activities
+ PW::KWorkspace
)
install(TARGETS kdeinit_kcmshell5 ${INSTALL_TARGETS_DEFAULT_ARGS})
diff --git a/kcmshell/main.cpp b/kcmshell/main.cpp
index 93dd6f8..d855b96 100644
--- a/kcmshell/main.cpp
+++ b/kcmshell/main.cpp
@@ -40,6 +40,8 @@
#include <KStartupInfo>
#include <KActivities/ResourceInstance>
+#include <kworkspace.h>
+
#include <QIcon>
#include <QCommandLineParser>
#include <QCommandLineOption>
@@ -173,7 +175,13 @@ void KCMShell::appExit(const QString &appId, const QString &oldName, const QStri
extern "C" Q_DECL_EXPORT int kdemain(int _argc, char *_argv[])
{
+ const bool qpaVariable = qEnvironmentVariableIsSet("QT_QPA_PLATFORM");
+ KWorkSpace::detectPlatform(argc, argv);
KCMShell app(_argc, _argv);
+ if (!qpaVariable) {
+ // don't leak the env variable to processes we start
+ qunsetenv("QT_QPA_PLATFORM");
+ }
KLocalizedString::setApplicationDomain("kcmshell5");
app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
--
2.16.2

View File

@ -1,27 +0,0 @@
From 74969bbb1ee83ee90d9d078cb38d4213c92a14ec Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fabian@ritter-vogt.de>
Date: Tue, 27 Mar 2018 21:31:39 +0200
Subject: [PATCH 3/3] Fix build in kcmshell5, accidentially landed the wrong
revision
Needs to be _argc, _argv.
---
kcmshell/main.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/kcmshell/main.cpp b/kcmshell/main.cpp
index d855b96..aa2cd05 100644
--- a/kcmshell/main.cpp
+++ b/kcmshell/main.cpp
@@ -176,7 +176,7 @@ void KCMShell::appExit(const QString &appId, const QString &oldName, const QStri
extern "C" Q_DECL_EXPORT int kdemain(int _argc, char *_argv[])
{
const bool qpaVariable = qEnvironmentVariableIsSet("QT_QPA_PLATFORM");
- KWorkSpace::detectPlatform(argc, argv);
+ KWorkSpace::detectPlatform(_argc, _argv);
KCMShell app(_argc, _argv);
if (!qpaVariable) {
// don't leak the env variable to processes we start
--
2.16.2

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:905e5ad02a68743674f89bf705ffc32e0772704fee5023e5be068f2e6e6a403f
size 572368

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5eb55b4d82192f3cc8ff781b8b01703a35fb8cb22190b708e8a8a991a5339e51
size 577920

View File

@ -1,3 +1,41 @@
-------------------------------------------------------------------
Sat May 19 14:16:34 CEST 2018 - fabian@ritter-vogt.de
- Update to 5.12.90
* New feature release
* For more details please see:
* https://www.kde.org/announcements/plasma-5.12.90.php
- Changes since 5.12.5:
* Fix filetypestest
* Fix build in kcmshell5, accidentially landed the wrong revision
* Use platform detection from KWorkSpace in KCMShell
* Use non-deprecated KDEInstallDirs variables
* [kbroadcastnotification] Set app data from created KAboutData instance
* Do not repeat work done by KAboutData.setupCommandLine()
* Port away from deprecated NETWinInfo constructor variant
* Port away from deprecated KWindowSystem::windowInfo()
* Port away from deprecated KRun::runUrl() variant
* Port away from deprecated KIO::Job::ui()
* Port away from deprecated KLineEdit::setClickMessage()
* Use explicit
* Use nullptr
* Use override
* Group all cmake macro includes, move settings ones to top
* Remove module prefixes from Qt includes
* Remove now always fulfilled check of Qt version
* Remove unused cpp macro
* Call KLocalizedString::setApplicationDomain after Q*App creation
* Use KF5_MIN_VERSION also for ECM, now that it's part of KF
* Use add_test signature where target command gets resolved to binary path
* Bump min cmake version to 3.0, move cmake_minimum_required to begin
* Update an include to now used class
* [KCMShell] Don't assume KCModuleProxy is our child widget
- Refresh kdesu-add-some-i18n-love.patch
- Remove patches, now upstream:
* 0001-Call-KLocalizedString-setApplicationDomain-after-Q-A.patch
* 0002-Use-platform-detection-from-KWorkSpace-in-KCMShell.patch
* 0003-Fix-build-in-kcmshell5-accidentially-landed-the-wron.patch
-------------------------------------------------------------------
Wed May 2 09:06:30 CEST 2018 - fabian@ritter-vogt.de

View File

@ -18,23 +18,18 @@
%bcond_without lang
Name: kde-cli-tools5
Version: 5.12.5
Version: 5.12.90
Release: 0
Summary: Additional CLI tools for KDE applications
License: GPL-2.0+
Group: System/GUI/KDE
Url: http://www.kde.org
Source: http://download.kde.org/stable/plasma/%{version}/kde-cli-tools-%{version}.tar.xz
Source: http://download.kde.org/unstable/plasma/%{version}/kde-cli-tools-%{version}.tar.xz
# PATCH-FIX-OPENSUSE kdesu-add-some-i18n-love.patch -- boo#852256
Patch0: kdesu-add-some-i18n-love.patch
# PATCH-FIX-UPSTREAM
Patch1: 0001-Call-KLocalizedString-setApplicationDomain-after-Q-A.patch
Patch2: 0002-Use-platform-detection-from-KWorkSpace-in-KCMShell.patch
Patch3: 0003-Fix-build-in-kcmshell5-accidentially-landed-the-wron.patch
BuildRequires: extra-cmake-modules >= 1.3.0
BuildRequires: kf5-filesystem
BuildRequires: xz
# Needs KWorkSpace::detectPlatform
BuildRequires: cmake(KF5Activities) >= 5.16.0
BuildRequires: cmake(KF5Config) >= 5.16.0
BuildRequires: cmake(KF5DocTools) >= 5.16.0
@ -46,7 +41,8 @@ BuildRequires: cmake(KF5KDELibs4Support) >= 5.16.0
BuildRequires: cmake(KF5KIO) >= 5.16.0
BuildRequires: cmake(KF5Su) >= 5.16.0
BuildRequires: cmake(KF5WindowSystem) >= 5.16.0
BuildRequires: cmake(LibKWorkspace) >= 5.12.3
# Needs KWorkSpace::detectPlatform
BuildRequires: cmake(LibKWorkspace) >= 5.12.4
BuildRequires: cmake(Qt5DBus) >= 5.4.0
BuildRequires: cmake(Qt5Svg) >= 5.4.0
BuildRequires: cmake(Qt5Test) >= 5.4.0
@ -61,7 +57,6 @@ Recommends: %{name}-lang
%endif
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
Additional CLI tools for KDE applications and workspaces.
@ -111,8 +106,7 @@ if [ $1 -eq 0 ]; then
fi
%files
%defattr(-,root,root)
%doc COPYING*
%license COPYING*
%{_kf5_bindir}/kdesu
%{_kf5_bindir}/kcmshell5
%{_kf5_bindir}/kdecp5

View File

@ -11,25 +11,25 @@ BUG: boo#852256
kdesu/kdesu.cpp | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/kdesu/kdesu.cpp b/kdesu/kdesu.cpp
index 9e7f173..f553422 100644
--- a/kdesu/kdesu.cpp
+++ b/kdesu/kdesu.cpp
@@ -160,11 +160,11 @@
Index: kde-cli-tools-5.12.80git.20180210T155619~a94e055/kdesu/kdesu.cpp
===================================================================
--- kde-cli-tools-5.12.80git.20180210T155619~a94e055.orig/kdesu/kdesu.cpp
+++ kde-cli-tools-5.12.80git.20180210T155619~a94e055/kdesu/kdesu.cpp
@@ -160,11 +160,11 @@ int main(int argc, char *argv[])
if (result == 127)
{
- KMessageBox::sorry(0, i18n("Cannot execute command '%1'.", QString::fromLocal8Bit(command)));
+ KMessageBox::sorry(0, i18n("Cannot execute command '%1'.", QString::fromUtf8(command)));
- KMessageBox::sorry(nullptr, i18n("Cannot execute command '%1'.", QString::fromLocal8Bit(command)));
+ KMessageBox::sorry(nullptr, i18n("Cannot execute command '%1'.", QString::fromUtf8(command)));
}
if (result == -2)
{
- KMessageBox::sorry(0, i18n("Cannot execute command '%1'. It contains invalid characters.", QString::fromLocal8Bit(command)));
+ KMessageBox::sorry(0, i18n("Cannot execute command '%1'. It contains invalid characters.", QString::fromUtf8(command)));
- KMessageBox::sorry(nullptr, i18n("Cannot execute command '%1'. It contains invalid characters.", QString::fromLocal8Bit(command)));
+ KMessageBox::sorry(nullptr, i18n("Cannot execute command '%1'. It contains invalid characters.", QString::fromUtf8(command)));
}
return result;
@@ -199,7 +199,7 @@
@@ -199,7 +199,7 @@ static int startApp(QCommandLineParser&
prompt = false;
// Get target uid
@ -37,8 +37,8 @@ index 9e7f173..f553422 100644
+ QByteArray user = p.value("u").toUtf8();
QByteArray auth_user = user;
struct passwd *pw = getpwnam(user);
if (pw == 0L)
@@ -259,7 +259,7 @@
if (pw == nullptr)
@@ -259,7 +259,7 @@ static int startApp(QCommandLineParser&
// Get command
if (p.isSet("c"))
{
@ -47,7 +47,7 @@ index 9e7f173..f553422 100644
// Accepting additional arguments here is somewhat weird,
// but one can conceive use cases: have a complex command with
// redirections and additional file names which need to be quoted
@@ -347,7 +347,7 @@
@@ -347,7 +347,7 @@ static int startApp(QCommandLineParser&
// }
KUser u;
@ -56,7 +56,7 @@ index 9e7f173..f553422 100644
if (keep && !terminal && !just_started)
{
@@ -459,7 +459,7 @@
@@ -459,7 +459,7 @@ static int startApp(QCommandLineParser&
}
else if (keep && have_daemon)
{
@ -65,7 +65,7 @@ index 9e7f173..f553422 100644
client.setPriority(priority);
client.setScheduler(scheduler);
int result = client.exec(command, user, options, env);
@@ -478,7 +478,7 @@
@@ -478,7 +478,7 @@ static int startApp(QCommandLineParser&
proc.setPriority(priority);
proc.setScheduler(scheduler);
proc.setCommand(command);