aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch')
-rw-r--r--nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch38
1 files changed, 38 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch b/nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch
new file mode 100644
index 00000000000..f82bf828e8e
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kdesu/kdesu-search-for-wrapped-daemon-first.patch
@@ -0,0 +1,38 @@
+From 01af4d2a098e5819c09bca37568941dcd4b89d0b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= <malaquias@gmail.com>
+Date: Thu, 16 Jul 2020 13:21:42 -0300
+Subject: [PATCH] Search for the daemon first in /run/wrappers/bin
+
+If looking first in libexec, the eventually wrapped one in
+/run/wrappers/bin can not be found.
+---
+ src/client.cpp | 13 ++++++++-----
+ 1 file changed, 8 insertions(+), 5 deletions(-)
+
+diff --git a/src/client.cpp b/src/client.cpp
+index 44fbacd..6b5abf5 100644
+--- a/src/client.cpp
++++ b/src/client.cpp
+@@ -378,11 +378,14 @@ int KDEsuClient::stopServer()
+
+ static QString findDaemon()
+ {
+- QString daemon = QFile::decodeName(CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 "/kdesud");
+- if (!QFile::exists(daemon)) { // if not in libexec, find it in PATH
+- daemon = QStandardPaths::findExecutable(QStringLiteral("kdesud"));
+- if (daemon.isEmpty()) {
+- qCWarning(KSU_LOG) << "kdesud daemon not found.";
++ QString daemon = QFile::decodeName("/run/wrappers/bin/kdesud");
++ if (!QFile::exists(daemon)) { // if not in wrappers
++ daemon = QFile::decodeName(CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 "/kdesud");
++ if (!QFile::exists(daemon)) { // if not in libexec, find it in PATH
++ daemon = QStandardPaths::findExecutable(QStringLiteral("kdesud"));
++ if (daemon.isEmpty()) {
++ qCWarning(KSU_LOG) << "kdesud daemon not found.";
++ }
+ }
+ }
+ return daemon;
+--
+2.27.0
+