about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/qt-6/patches/0008-qtbase-pass-to-qmlimportscanner-the-QML2_IMPORT_PATH.patch
blob: d1139e0aecd1e111b5be0d093ae8aa43b59cf8c3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
From a5cbfb30fc53b3290578af4a87fe4c0463df4247 Mon Sep 17 00:00:00 2001
From: Nick Cao <nickcao@nichi.co>
Date: Tue, 10 Oct 2023 10:12:56 -0400
Subject: [PATCH 08/11] qtbase: pass to qmlimportscanner the QML2_IMPORT_PATH

---
 src/tools/macdeployqt/shared/shared.cpp | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/tools/macdeployqt/shared/shared.cpp b/src/tools/macdeployqt/shared/shared.cpp
index f637416cf22..77749506ccb 100644
--- a/src/tools/macdeployqt/shared/shared.cpp
+++ b/src/tools/macdeployqt/shared/shared.cpp
@@ -1293,6 +1293,13 @@ bool deployQmlImports(const QString &appBundlePath, DeploymentInfo deploymentInf
     argumentList.append( "-importPath");
     argumentList.append(qmlImportsPath);
 
+    // In a modularized installation of qt as we have in Nix, instead, we will
+    // read the paths from the environment, as they are spread in multiple
+    // locations and normally set in the environment like this
+    auto envQmlImportPaths = ::qgetenv("QML2_IMPORT_PATH").split(':');
+    for (const QString &importPath : envQmlImportPaths)
+        argumentList << "-importPath" << importPath;
+
     // run qmlimportscanner
     QProcess qmlImportScanner;
     qmlImportScanner.start(qmlImportScannerPath, argumentList);
-- 
2.42.0