diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch | 36 |
1 files changed, 11 insertions, 25 deletions
diff --git a/nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch b/nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch index 3e18d304c307..d39ffbfde644 100644 --- a/nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch +++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch @@ -1,28 +1,14 @@ -Index: kio-5.17.0/src/core/ksambashare.cpp -=================================================================== ---- kio-5.17.0.orig/src/core/ksambashare.cpp -+++ kio-5.17.0/src/core/ksambashare.cpp -@@ -67,13 +67,18 @@ KSambaSharePrivate::~KSambaSharePrivate( - +diff --git a/src/core/ksambashare.cpp b/src/core/ksambashare.cpp +index 1895783..9fe7286 100644 +--- a/src/core/ksambashare.cpp ++++ b/src/core/ksambashare.cpp +@@ -73,8 +73,7 @@ KSambaSharePrivate::~KSambaSharePrivate() bool KSambaSharePrivate::isSambaInstalled() { -- if (QFile::exists(QStringLiteral("/usr/sbin/smbd")) -- || QFile::exists(QStringLiteral("/usr/local/sbin/smbd"))) { -- return true; -+ const QByteArray pathEnv = qgetenv("PATH"); -+ if (!pathEnv.isEmpty()) { -+ QLatin1Char pathSep(':'); -+ QStringList paths = QFile::decodeName(pathEnv).split(pathSep, QString::SkipEmptyParts); -+ for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) { -+ it->append(QStringLiteral("/smbd")); -+ if (QFile::exists(*it)) { -+ return true; -+ } -+ } + const bool daemonExists = +- !QStandardPaths::findExecutable(QStringLiteral("smbd"), +- {QStringLiteral("/usr/sbin/"), QStringLiteral("/usr/local/sbin/")}).isEmpty(); ++ !QStandardPaths::findExecutable(QStringLiteral("smbd")).isEmpty(); + if (!daemonExists) { + qCDebug(KIO_CORE_SAMBASHARE) << "KSambaShare: Could not find smbd"; } - -- //qDebug() << "Samba is not installed!"; -- - return false; - } - |