Merge branch 'qt-unsetenv' into staging
This commit is contained in:
commit
d681d580ae
@ -3,8 +3,8 @@
|
|||||||
|
|
||||||
, xlibs, libX11, libxcb, libXcursor, libXext, libXrender, libXi
|
, xlibs, libX11, libxcb, libXcursor, libXext, libXrender, libXi
|
||||||
, xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilwm, libxkbcommon
|
, xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilwm, libxkbcommon
|
||||||
, fontconfig, freetype, openssl, dbus, glib, udev, libxml2, libxslt, pcre
|
, fontconfig, freetype, openssl, dbus, glib, udev, libxml2, libxslt, pcre16
|
||||||
, zlib, libjpeg, libpng, libtiff, sqlite, icu
|
, zlib, libjpeg, libpng, libtiff, sqlite, icu, harfbuzz
|
||||||
|
|
||||||
, coreutils, bison, flex, gdb, gperf, lndir, ruby
|
, coreutils, bison, flex, gdb, gperf, lndir, ruby
|
||||||
, python, perl, pkgconfig
|
, python, perl, pkgconfig
|
||||||
@ -164,8 +164,10 @@ stdenv.mkDerivation {
|
|||||||
-system-zlib
|
-system-zlib
|
||||||
-system-libpng
|
-system-libpng
|
||||||
-system-libjpeg
|
-system-libjpeg
|
||||||
|
-system-harfbuzz
|
||||||
-system-xcb
|
-system-xcb
|
||||||
-system-xkbcommon
|
-system-xkbcommon
|
||||||
|
-system-pcre
|
||||||
-openssl-linked
|
-openssl-linked
|
||||||
-dbus-linked
|
-dbus-linked
|
||||||
|
|
||||||
@ -186,8 +188,8 @@ stdenv.mkDerivation {
|
|||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
|
xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
|
||||||
fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre
|
fontconfig freetype openssl dbus.libs glib udev libxml2 libxslt pcre16
|
||||||
zlib libjpeg libpng libtiff sqlite icu
|
zlib libjpeg libpng libtiff sqlite icu harfbuzz
|
||||||
xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
|
xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
|
||||||
]
|
]
|
||||||
# Qt doesn't directly need GLU (just GL), but many apps use, it's small and
|
# Qt doesn't directly need GLU (just GL), but many apps use, it's small and
|
||||||
|
@ -2,10 +2,11 @@ Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/corelib/kernel/qcoreapplica
|
|||||||
===================================================================
|
===================================================================
|
||||||
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/corelib/kernel/qcoreapplication.cpp
|
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/corelib/kernel/qcoreapplication.cpp
|
||||||
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/corelib/kernel/qcoreapplication.cpp
|
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/corelib/kernel/qcoreapplication.cpp
|
||||||
@@ -2498,6 +2498,21 @@ QStringList QCoreApplication::libraryPat
|
@@ -2498,6 +2498,22 @@ QStringList QCoreApplication::libraryPat
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
+ qunsetenv("QT_PLUGIN_PATH"); // do not propagate to child processes
|
||||||
+
|
+
|
||||||
+ // Add library paths derived from NIX_PROFILES.
|
+ // Add library paths derived from NIX_PROFILES.
|
||||||
+ const QByteArray nixProfilesEnv = qgetenv("NIX_PROFILES");
|
+ const QByteArray nixProfilesEnv = qgetenv("NIX_PROFILES");
|
||||||
|
@ -1,37 +0,0 @@
|
|||||||
From 3f6fa74067aacd0e595e45b4ef7ce754514cb205 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
|
||||||
Date: Sat, 17 Oct 2015 09:28:18 -0500
|
|
||||||
Subject: [PATCH] nix profiles import paths
|
|
||||||
|
|
||||||
---
|
|
||||||
src/qml/qml/qqmlimport.cpp | 14 ++++++++++++++
|
|
||||||
1 file changed, 14 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
|
|
||||||
index 5a54609..f33c2f9 100644
|
|
||||||
--- a/src/qml/qml/qqmlimport.cpp
|
|
||||||
+++ b/src/qml/qml/qqmlimport.cpp
|
|
||||||
@@ -1549,6 +1549,20 @@ QQmlImportDatabase::QQmlImportDatabase(QQmlEngine *e)
|
|
||||||
QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
|
|
||||||
addImportPath(installImportsPath);
|
|
||||||
|
|
||||||
+ // Add import 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/qml");
|
|
||||||
+ QString canonicalPath = QDir(*it).canonicalPath();
|
|
||||||
+ if (!canonicalPath.isEmpty()) {
|
|
||||||
+ addImportPath(canonicalPath);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
// env import paths
|
|
||||||
QByteArray envImportPath = qgetenv("QML2_IMPORT_PATH");
|
|
||||||
if (!envImportPath.isEmpty()) {
|
|
||||||
--
|
|
||||||
2.5.2
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
{ qtSubmodule, python, qtbase, qtsvg, qtxmlpatterns }:
|
{ qtSubmodule, lib, copyPathsToStore, python, qtbase, qtsvg, qtxmlpatterns }:
|
||||||
|
|
||||||
qtSubmodule {
|
qtSubmodule {
|
||||||
name = "qtdeclarative";
|
name = "qtdeclarative";
|
||||||
patches = [ ./0001-nix-profiles-import-paths.patch ];
|
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
|
||||||
qtInputs = [ qtbase qtsvg qtxmlpatterns ];
|
qtInputs = [ qtbase qtsvg qtxmlpatterns ];
|
||||||
nativeBuildInputs = [ python ];
|
nativeBuildInputs = [ python ];
|
||||||
}
|
}
|
||||||
|
1
pkgs/development/libraries/qt-5/5.5/qtdeclarative/series
Normal file
1
pkgs/development/libraries/qt-5/5.5/qtdeclarative/series
Normal file
@ -0,0 +1 @@
|
|||||||
|
nix-profiles-import-paths.patch
|
@ -1,37 +0,0 @@
|
|||||||
From bbc706b3fcb90ca3b2b51d5e3434145572152711 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Thomas Tuegel <ttuegel@gmail.com>
|
|
||||||
Date: Sat, 17 Oct 2015 09:29:51 -0500
|
|
||||||
Subject: [PATCH] nix profiles import paths
|
|
||||||
|
|
||||||
---
|
|
||||||
src/declarative/qml/qdeclarativeimport.cpp | 14 ++++++++++++++
|
|
||||||
1 file changed, 14 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/src/declarative/qml/qdeclarativeimport.cpp b/src/declarative/qml/qdeclarativeimport.cpp
|
|
||||||
index 9404834..d185ed5 100644
|
|
||||||
--- a/src/declarative/qml/qdeclarativeimport.cpp
|
|
||||||
+++ b/src/declarative/qml/qdeclarativeimport.cpp
|
|
||||||
@@ -725,6 +725,20 @@ QDeclarativeImportDatabase::QDeclarativeImportDatabase(QDeclarativeEngine *e)
|
|
||||||
|
|
||||||
addImportPath(installImportsPath);
|
|
||||||
|
|
||||||
+ // Add import 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/imports");
|
|
||||||
+ QString canonicalPath = QDir(*it).canonicalPath();
|
|
||||||
+ if (!canonicalPath.isEmpty()) {
|
|
||||||
+ addImportPath(canonicalPath);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
// env import paths
|
|
||||||
QByteArray envImportPath = qgetenv("QML_IMPORT_PATH");
|
|
||||||
if (!envImportPath.isEmpty()) {
|
|
||||||
--
|
|
||||||
2.5.2
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
|||||||
{ qtSubmodule, qtscript, qtsvg, qtwebkit, qtxmlpatterns }:
|
{ qtSubmodule, lib, copyPathsToStore, qtscript, qtsvg, qtwebkit, qtxmlpatterns }:
|
||||||
|
|
||||||
qtSubmodule {
|
qtSubmodule {
|
||||||
name = "qtquick1";
|
name = "qtquick1";
|
||||||
patches = [ ./0001-nix-profiles-import-paths.patch ];
|
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
|
||||||
qtInputs = [ qtscript qtsvg qtwebkit qtxmlpatterns ];
|
qtInputs = [ qtscript qtsvg qtwebkit qtxmlpatterns ];
|
||||||
}
|
}
|
||||||
|
1
pkgs/development/libraries/qt-5/5.5/qtquick1/series
Normal file
1
pkgs/development/libraries/qt-5/5.5/qtquick1/series
Normal file
@ -0,0 +1 @@
|
|||||||
|
nix-profiles-import-paths.patch
|
Loading…
Reference in New Issue
Block a user