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 | 28 |
1 files changed, 28 insertions, 0 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 new file mode 100644 index 000000000000..3e18d304c307 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch @@ -0,0 +1,28 @@ +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( + + 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; ++ } ++ } + } + +- //qDebug() << "Samba is not installed!"; +- + return false; + } + |