Retrieved from nixpkgs. Modified to use QML_IMPORT_PATH instead of QML2_IMPORT_PATH. From d7a9a3b0ecdbb1b5829f25954d763d767f1c8794 Mon Sep 17 00:00:00 2001 From: Nick Cao Date: Tue, 10 Oct 2023 10:12:56 -0400 Subject: [PATCH 07/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 2ae4f998944..ba10ae02bcd 100644 --- a/src/tools/macdeployqt/shared/shared.cpp +++ b/src/tools/macdeployqt/shared/shared.cpp @@ -1297,6 +1297,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("QML_IMPORT_PATH").split(':'); + for (const QString &importPath : envQmlImportPaths) + argumentList << "-importPath" << importPath; + // run qmlimportscanner QProcess qmlImportScanner; qmlImportScanner.start(qmlImportScannerPath, argumentList); -- 2.42.0