nixpkgs/pkgs/development/libraries/qt-5/5.4/qtbase/nix-profiles-library-paths.patch

26 lines
1.2 KiB
Diff

Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/kernel/qcoreapplication.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/corelib/kernel/qcoreapplication.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/kernel/qcoreapplication.cpp
@@ -2442,6 +2442,21 @@ QStringList QCoreApplication::libraryPat
}
}
}
+
+ // Add library paths derived from NIX_PROFILES.
+ const QByteArray nixProfilesEnv = qgetenv("NIX_PROFILES");
+ if (!nixProfilesEnv.isEmpty()) {
+ QLatin1Char pathSep(' ');
+ QStringList paths = QFile::decodeName(nixProfilesEnv).split(pathSep, QString::SkipEmptyParts);
+ for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) {
+ it->append("/lib/qt5/plugins");
+ QString canonicalPath = QDir(*it).canonicalPath();
+ if (!canonicalPath.isEmpty()
+ && !app_libpaths->contains(canonicalPath)) {
+ app_libpaths->append(canonicalPath);
+ }
+ }
+ }
}
return *(coreappdata()->app_libpaths);
}