summary refs log tree commit diff
path: root/pkgs/development/libraries/qt-5/5.6/qtbase/nix-profiles-library-paths.patch
blob: dfc2dccdeb688c75f9318d9acf84a46c2f016cef (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Index: qtbase-opensource-src-5.6.2/src/corelib/kernel/qcoreapplication.cpp
===================================================================
--- qtbase-opensource-src-5.6.2.orig/src/corelib/kernel/qcoreapplication.cpp
+++ qtbase-opensource-src-5.6.2/src/corelib/kernel/qcoreapplication.cpp
@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPat
         QStringList *app_libpaths = new QStringList;
         coreappdata()->app_libpaths.reset(app_libpaths);
 
+        // Add library paths derived from NIX_PROFILES.
+        const QStringList profiles = QFile::decodeName(qgetenv("NIX_PROFILES")).split(' ');
+        const QString plugindir = QStringLiteral(NIXPKGS_QT_PLUGIN_PREFIX);
+        for (const QString &profile: profiles) {
+            if (!profile.isEmpty()) {
+                app_libpaths->append(profile + QDir::separator() + plugindir);
+            }
+        }
+
         const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
         if (!libPathEnv.isEmpty()) {
             QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);