3
0
Fork 0
forked from mirrors/nixpkgs

Update Qt 5 to Qt 5.6.0

This commit is contained in:
Thomas Tuegel 2016-05-09 10:02:16 -05:00
commit 709ee16626
67 changed files with 591 additions and 725 deletions

View file

@ -53,5 +53,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl2Plus;
maintainers = [ maintainers.goibhniu maintainers.marcweber ];
platforms = platforms.linux;
broken = true;
};
}

View file

@ -48,5 +48,6 @@ in
homepage = "https://github.com/mkeeter/antimony";
license = licenses.mit;
platforms = platforms.linux;
broken = true;
};
}

View file

@ -31,5 +31,6 @@ stdenv.mkDerivation {
license = licenses.gpl3;
maintainers = [ maintainers.ehmry ];
platforms = platforms.linux;
broken = true;
};
}

View file

@ -10,6 +10,7 @@ stdenv.mkDerivation rec {
homepage = "http://gstreamer.freedesktop.org";
license = stdenv.lib.licenses.lgpl2Plus;
platforms = stdenv.lib.platforms.unix;
maintainers = [ stdenv.lib.maintainers.ttuegel ];
};
src = fetchurl {

View file

@ -28,5 +28,6 @@ stdenv.mkDerivation rec {
license = stdenv.lib.licenses.asl20;
maintainers = with stdenv.lib.maintainers; [flosse];
platforms = with stdenv.lib.platforms; linux;
broken = true;
};
}

View file

@ -1,42 +0,0 @@
addQtDependency() {
addToSearchPath QT_PLUGIN_PATH "$1/lib/qt5/plugins"
addToSearchPath QML_IMPORT_PATH "$1/lib/qt5/imports"
addToSearchPath QML2_IMPORT_PATH "$1/lib/qt5/qml"
addToSearchPath XDG_CONFIG_DIRS "$1/etc/xdg"
addToSearchPath XDG_DATA_DIRS "$1/share"
}
wrapQtProgram() {
local prog="$1"
shift
wrapProgram "$prog" \
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
--prefix XDG_CONFIG_DIRS : "$XDG_CONFIG_DIRS" \
--prefix XDG_DATA_DIRS : "$XDG_DATA_DIRS" \
"$@"
}
makeQtWrapper() {
local old="$1"
local new="$2"
shift
shift
makeWrapper "$old" "$new" \
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
--prefix XDG_CONFIG_DIRS : "$XDG_CONFIG_DIRS" \
--prefix XDG_DATA_DIRS : "$XDG_DATA_DIRS" \
"$@"
}
# cannot use addToSearchPath because these directories may not exist yet
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}$out/lib/qt5/plugins"
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}$out/lib/qt5/imports"
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}$out/lib/qt5/qml"
export XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}$out/etc/xdg"
export XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}$out/share"
envHooks+=(addQtDependency)

View file

@ -1,26 +0,0 @@
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);
}

View file

@ -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

View file

@ -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

View file

@ -1,10 +0,0 @@
{ qtSubmodule, qtscript, qtsvg, qtwebkit, qtxmlpatterns }:
qtSubmodule {
name = "qtquick1";
patches = [ ./0001-nix-profiles-import-paths.patch ];
qtInputs = [ qtscript qtsvg qtwebkit qtxmlpatterns ];
postFixup = ''
fixQtModuleCMakeConfig "Declarative"
'';
}

View file

@ -1,6 +0,0 @@
{ qtSubmodule, qttools, qtwebkit }:
qtSubmodule {
name = "qtwebkit-examples";
qtInputs = [ qttools qtwebkit ];
}

View file

@ -1,53 +0,0 @@
From 862ce7d357a3ec32683ac6ec7c0ebdc9346b44ba Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Sun, 23 Aug 2015 09:18:54 -0500
Subject: [PATCH 1/3] dlopen webkit nsplugin
---
Source/WebCore/plugins/qt/PluginPackageQt.cpp | 2 +-
Source/WebCore/plugins/qt/PluginViewQt.cpp | 2 +-
Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
index a923d49..2731d05 100644
--- a/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+++ b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
@@ -136,7 +136,7 @@ static void initializeGtk(QLibrary* module = 0)
}
}
- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
if (library.load()) {
typedef void *(*gtk_init_check_ptr)(int*, char***);
gtk_init_check_ptr gtkInitCheck = (gtk_init_check_ptr)library.resolve("gtk_init_check");
diff --git a/Source/WebCore/plugins/qt/PluginViewQt.cpp b/Source/WebCore/plugins/qt/PluginViewQt.cpp
index de06a2f..363bde5 100644
--- a/Source/WebCore/plugins/qt/PluginViewQt.cpp
+++ b/Source/WebCore/plugins/qt/PluginViewQt.cpp
@@ -697,7 +697,7 @@ static Display *getPluginDisplay()
// support gdk based plugins (like flash) that use a different X connection.
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gdk_pixbuf@/lib/libgdk-x11-2.0"), 0);
if (!library.load())
return 0;
diff --git a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
index d734ff6..62a2197 100644
--- a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+++ b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
@@ -64,7 +64,7 @@ static Display* getPluginDisplay()
// The code below has the same effect as this one:
// Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
+ QLibrary library(QLatin1String("@gdk_pixbuf@/libgdk-x11-2.0"), 0);
if (!library.load())
return 0;
--
2.5.0

View file

@ -1,25 +0,0 @@
From 6a407d30357c2551abceac75c82f4a1688e47437 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Sun, 23 Aug 2015 09:19:16 -0500
Subject: [PATCH 2/3] dlopen webkit gtk
---
Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
index 8de6521..0b25748 100644
--- a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+++ b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
@@ -53,7 +53,7 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
static bool initializeGtk()
{
- QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
+ QLibrary gtkLibrary(QLatin1String("@gtk@/lib/libgtk-x11-2.0"), 0);
if (!gtkLibrary.load())
return false;
typedef void* (*gtk_init_ptr)(void*, void*);
--
2.5.0

View file

@ -1,31 +0,0 @@
From 864020dd47c3b6d532d9f26b82185904cf9324f2 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@gmail.com>
Date: Sun, 23 Aug 2015 09:19:29 -0500
Subject: [PATCH 3/3] dlopen webkit udev
---
Source/WebCore/platform/qt/GamepadsQt.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Source/WebCore/platform/qt/GamepadsQt.cpp b/Source/WebCore/platform/qt/GamepadsQt.cpp
index 60ff317..da8ac69 100644
--- a/Source/WebCore/platform/qt/GamepadsQt.cpp
+++ b/Source/WebCore/platform/qt/GamepadsQt.cpp
@@ -111,12 +111,12 @@ private:
bool load()
{
m_libUdev.setLoadHints(QLibrary::ResolveAllSymbolsHint);
- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 1);
+ m_libUdev.setFileNameAndVersion(QStringLiteral("@libudev@/lib/libudev"), 1);
m_loaded = m_libUdev.load();
if (resolveMethods())
return true;
- m_libUdev.setFileNameAndVersion(QStringLiteral("udev"), 0);
+ m_libUdev.setFileNameAndVersion(QStringLiteral("@libudev@/lib/libudev"), 0);
m_loaded = m_libUdev.load();
return resolveMethods();
}
--
2.5.0

View file

@ -1,38 +0,0 @@
{ qtSubmodule, stdenv, qtdeclarative, qtlocation, qtmultimedia, qtsensors
, fontconfig, gdk_pixbuf, gtk, libwebp, libxml2, libxslt
, sqlite, libudev
, bison2, flex, gdb, gperf, perl, pkgconfig, python, ruby
, substituteAll
, flashplayerFix ? false
}:
with stdenv.lib;
qtSubmodule {
name = "qtwebkit";
qtInputs = [ qtdeclarative qtlocation qtmultimedia qtsensors ];
buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite ];
nativeBuildInputs = [
bison2 flex gdb gperf perl pkgconfig python ruby
];
patches =
let dlopen-webkit-nsplugin = substituteAll {
src = ./0001-dlopen-webkit-nsplugin.patch;
gtk = gtk.out;
gdk_pixbuf = gdk_pixbuf.out;
};
dlopen-webkit-gtk = substituteAll {
src = ./0002-dlopen-webkit-gtk.patch;
gtk = gtk.out;
};
dlopen-webkit-udev = substituteAll {
src = ./0003-dlopen-webkit-udev.patch;
udev = libudev.out;
};
in optionals flashplayerFix [ dlopen-webkit-nsplugin dlopen-webkit-gtk ]
++ [ dlopen-webkit-udev ];
postFixup = ''
fixQtModuleCMakeConfig "WebKit"
fixQtModuleCMakeConfig "WebKitWidgets"
'';
}

View file

@ -1,245 +0,0 @@
# DO NOT EDIT! This file is generated automatically by manifest.sh
{ fetchurl, mirror }:
{
qtbase = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtbase-opensource-src-5.4.2.tar.xz";
sha256 = "0x2szpjjvsrpcqw0dd3gsim7b1jv9p716pnllzjbia5mp0hggi4z";
name = "qtbase-opensource-src-5.4.2.tar.xz";
};
};
qtenginio = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtenginio-opensource-src-5.4.2.tar.xz";
sha256 = "082i3fapjw6xs0jkz7x529dn3pb6w1pfli3cjrgvggff86gwlgwn";
name = "qtenginio-opensource-src-5.4.2.tar.xz";
};
};
qtserialport = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtserialport-opensource-src-5.4.2.tar.xz";
sha256 = "1h6p5rb0ldxgzd4md3n79gy0j9blhj736670xqjd9vlvh1743kck";
name = "qtserialport-opensource-src-5.4.2.tar.xz";
};
};
qtscript = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtscript-opensource-src-5.4.2.tar.xz";
sha256 = "0izsmy0cr8iii78r10ndkidyljxqd2k9g03f5xb9nxacvr2f8hp0";
name = "qtscript-opensource-src-5.4.2.tar.xz";
};
};
qtwebchannel = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwebchannel-opensource-src-5.4.2.tar.xz";
sha256 = "0vy1zjbghfa1wirxd8fd2n2n8yryykzr09913qm2nlfbcxdsgqsn";
name = "qtwebchannel-opensource-src-5.4.2.tar.xz";
};
};
qtwinextras = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwinextras-opensource-src-5.4.2.tar.xz";
sha256 = "0sgybvr1y2xsddlqc95ninxj3rfmd4gv7a8f7rqcxdynjan5gij0";
name = "qtwinextras-opensource-src-5.4.2.tar.xz";
};
};
qtwebsockets = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwebsockets-opensource-src-5.4.2.tar.xz";
sha256 = "0lv1la8333qnirxmscs42xnnra0xry1gjbhi3bxrf1hrfs2im9j4";
name = "qtwebsockets-opensource-src-5.4.2.tar.xz";
};
};
qtmultimedia = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtmultimedia-opensource-src-5.4.2.tar.xz";
sha256 = "0h29cs8ajnjarhjx1aczdnxqwvg6pqs9s8w28hw488s149wqqrnj";
name = "qtmultimedia-opensource-src-5.4.2.tar.xz";
};
};
qtgraphicaleffects = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtgraphicaleffects-opensource-src-5.4.2.tar.xz";
sha256 = "02p8xm5ajicjam30ry3g1lm2p4nja2q0sls8dzimqrxhw5xlg3xs";
name = "qtgraphicaleffects-opensource-src-5.4.2.tar.xz";
};
};
qtxmlpatterns = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtxmlpatterns-opensource-src-5.4.2.tar.xz";
sha256 = "0ar7znqp1i02ha5ngy2kzk3hlgkafjbn2xa8j2k78gzmwsmdhzxa";
name = "qtxmlpatterns-opensource-src-5.4.2.tar.xz";
};
};
qttranslations = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qttranslations-opensource-src-5.4.2.tar.xz";
sha256 = "0b4l69c16z8gjd4mq75zz3lj2gxarr9wyk0vk60jg1mi62vxvdls";
name = "qttranslations-opensource-src-5.4.2.tar.xz";
};
};
qtdeclarative = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtdeclarative-opensource-src-5.4.2.tar.xz";
sha256 = "1bj1wwms6lpj8s70y8by3j0hjsw6g9v8m6fybx68krzzizbj2c5p";
name = "qtdeclarative-opensource-src-5.4.2.tar.xz";
};
};
qtwebkit = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwebkit-opensource-src-5.4.2.tar.xz";
sha256 = "0vffbpiczag2n2hp5gc0nii8n7vkidr8f8pp8a47px0183hl6hiy";
name = "qtwebkit-opensource-src-5.4.2.tar.xz";
};
};
qtquick1 = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtquick1-opensource-src-5.4.2.tar.xz";
sha256 = "0178z15a31fw3l6933fwxs7sk0csifpwckydp3rqnn3fg5f2fwvp";
name = "qtquick1-opensource-src-5.4.2.tar.xz";
};
};
qtquickcontrols = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtquickcontrols-opensource-src-5.4.2.tar.xz";
sha256 = "137z3c3drxlvkdfc7zgcl0xqmavw0ladzqy0i3bq51h756qdc877";
name = "qtquickcontrols-opensource-src-5.4.2.tar.xz";
};
};
qtimageformats = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtimageformats-opensource-src-5.4.2.tar.xz";
sha256 = "1nny6j9pm5ri3n1vwl5lrfrdz0fl81rx127wa49rkg2rjai2aawb";
name = "qtimageformats-opensource-src-5.4.2.tar.xz";
};
};
qtdoc = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtdoc-opensource-src-5.4.2.tar.xz";
sha256 = "15lamv6jvd7v33ldpcrazcdksv6qibdcgh4ncbyh774k8avgrlh8";
name = "qtdoc-opensource-src-5.4.2.tar.xz";
};
};
qtwayland = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwayland-opensource-src-5.4.2.tar.xz";
sha256 = "14pmpkfq70plw07igxjaiji4vnjg5kg7izlb0wwym1lisg7bwkg0";
name = "qtwayland-opensource-src-5.4.2.tar.xz";
};
};
qtmacextras = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtmacextras-opensource-src-5.4.2.tar.xz";
sha256 = "0h0p3s0rvd3g9rgr4hwcggdbsav2g30vijqwmdxgxd8c00yply80";
name = "qtmacextras-opensource-src-5.4.2.tar.xz";
};
};
qtactiveqt = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtactiveqt-opensource-src-5.4.2.tar.xz";
sha256 = "014kwficqydciwdm1yw88yms81qm8pmi6xfhhfpbc9k85pc6jlla";
name = "qtactiveqt-opensource-src-5.4.2.tar.xz";
};
};
qtlocation = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtlocation-opensource-src-5.4.2.tar.xz";
sha256 = "1v43hl2zzi90vaw11y8dvsksrjn0r2v0br7pw6njl8lqadpg4jnw";
name = "qtlocation-opensource-src-5.4.2.tar.xz";
};
};
qtconnectivity = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtconnectivity-opensource-src-5.4.2.tar.xz";
sha256 = "1nj68bzgm3r1gg171kj0acnifzb3jx0m5pf4f81xb7zl4hfxasrs";
name = "qtconnectivity-opensource-src-5.4.2.tar.xz";
};
};
qtx11extras = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtx11extras-opensource-src-5.4.2.tar.xz";
sha256 = "0jgyywjxavfpiz8202g3s0g9izfl185mmak4fs9h80w1i3gn5zzn";
name = "qtx11extras-opensource-src-5.4.2.tar.xz";
};
};
qttools = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qttools-opensource-src-5.4.2.tar.xz";
sha256 = "1d5nx01r7wxhdg9f1i9xhsvsbwgaz3yv516s068riy970bhdgwzd";
name = "qttools-opensource-src-5.4.2.tar.xz";
};
};
qtsensors = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtsensors-opensource-src-5.4.2.tar.xz";
sha256 = "1yawvjbdymgw8af7ir9zcin89xxck9dm2l6hnc43lwrky0frcvcf";
name = "qtsensors-opensource-src-5.4.2.tar.xz";
};
};
qtwebengine = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwebengine-opensource-src-5.4.2.tar.xz";
sha256 = "06cyl733prakniqrn8sd807lclk5im2vmysjdcijry2mcyah2ih8";
name = "qtwebengine-opensource-src-5.4.2.tar.xz";
};
};
qtsvg = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtsvg-opensource-src-5.4.2.tar.xz";
sha256 = "1dsyncp154xvb7d82nmnfjm0ngymnhqmliq58ljwxsjmpjlncakz";
name = "qtsvg-opensource-src-5.4.2.tar.xz";
};
};
qt5 = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qt5-opensource-src-5.4.2.tar.xz";
sha256 = "17a0pybr4bpyv9pj7cr5hl4g31biv89bjr8zql723h0b12ql1w44";
name = "qt5-opensource-src-5.4.2.tar.xz";
};
};
qtwebkit-examples = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtwebkit-examples-opensource-src-5.4.2.tar.xz";
sha256 = "0pm9ik1j09jfb5xflc16449nff2xsfyfms7vxlcdjg4dhcqfmll8";
name = "qtwebkit-examples-opensource-src-5.4.2.tar.xz";
};
};
qtandroidextras = {
version = "5.4.2";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.4/5.4.2/submodules/qtandroidextras-opensource-src-5.4.2.tar.xz";
sha256 = "0krfm0wg26x7575p8isswdhrkb0jxyp169grwklil7mfw8yg3xhx";
name = "qtandroidextras-opensource-src-5.4.2.tar.xz";
};
};
}

View file

@ -57,11 +57,13 @@ _qtMultioutModuleDevs() {
# Move libtool archives and qmake project files to $dev/lib
if [ "z${!outputLib}" != "z${!outputDev}" ]; then
pushd "${!outputLib}"
find lib -name '*.a' -o -name '*.la' -o -name '*.prl' -print0 | \
while read -r -d $'\0' file; do
mkdir -p "${!outputDev}/$(dirname "$file")"
mv "${!outputLib}/$file" "${!outputDev}/$file"
done
if [ -d "lib" ]; then
find lib \( -name '*.a' -o -name '*.la' -o -name '*.prl' -print0 \) | \
while read -r -d $'\0' file; do
mkdir -p "${!outputDev}/$(dirname "$file")"
mv "${!outputLib}/$file" "${!outputDev}/$file"
done
fi
popd
fi
}

View file

@ -1,15 +1,20 @@
# Maintainer's Notes:
#
# Minor updates:
# 1. Edit ./fetchsrcs.sh to point to the updated URL.
# 2. Run ./fetchsrcs.sh.
# 3. Build and enjoy.
#
# Major updates:
# We prefer not to immediately overwrite older versions with major updates, so
# make a copy of this directory first. After copying, be sure to delete ./tmp
# if it exists. Then follow the minor update instructions. Be sure to check if
# any new components have been added and package them as necessary.
/*
# Minor Updates
1. Edit ./fetchsrcs.sh to point to the updated URL.
2. Run ./fetchsrcs.sh.
3. Build and enjoy.
# Major Updates
1. Make a copy of this directory. (We like to keep the old version around
for a short time after major updates.)
2. Delete the tmp/ subdirectory of the copy.
3. Follow the minor update instructions above.
4. Package any new Qt modules, if necessary.
*/
{ pkgs
@ -30,20 +35,22 @@ let
qtSubmodule = args:
let
inherit (args) name;
inherit (srcs."${args.name}") version src;
version = args.version or srcs."${name}".version;
src = args.src or srcs."${name}".src;
inherit (pkgs.stdenv) mkDerivation;
in mkDerivation (args // {
name = "${name}-${version}";
inherit src;
propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ self.fixQtModuleCMakeConfig self.qmakeHook ];
nativeBuildInputs =
(args.nativeBuildInputs or [])
++ [ pkgs.perl self.fixQtModuleCMakeConfig self.qmakeHook ];
NIX_QT_SUBMODULE = args.NIX_QT_SUBMODULE or true;
dontFixLibtool = args.dontFixLibtool or true;
outputs = args.outputs or [ "dev" "out" ];
setOutputFlags = false;
setOutputFlags = args.setOutputFlags or false;
enableParallelBuilding = args.enableParallelBuilding or true;
@ -57,6 +64,7 @@ let
qtbase = callPackage ./qtbase {
mesa = pkgs.mesa_noglu;
harfbuzz = pkgs.harfbuzz-icu;
cups = if stdenv.isLinux then pkgs.cups else null;
# GNOME dependencies are not used unless gtkStyle == true
inherit (pkgs.gnome) libgnomeui GConf gnome_vfs;
@ -79,7 +87,6 @@ let
qtmultimedia = callPackage ./qtmultimedia.nix {
inherit (pkgs.gst_all_1) gstreamer gst-plugins-base;
};
qtquick1 = callPackage ./qtquick1 {};
qtquickcontrols = callPackage ./qtquickcontrols.nix {};
qtscript = callPackage ./qtscript {};
qtsensors = callPackage ./qtsensors.nix {};
@ -90,8 +97,6 @@ let
/* qtwayland = not packaged */
/* qtwebchannel = not packaged */
/* qtwebengine = not packaged */
qtwebkit = callPackage ./qtwebkit {};
qtwebkit-examples = callPackage ./qtwebkit-examples.nix {};
qtwebsockets = callPackage ./qtwebsockets.nix {};
/* qtwinextras = not packaged */
qtx11extras = callPackage ./qtx11extras.nix {};
@ -99,10 +104,10 @@ let
env = callPackage ../qt-env.nix {};
full = env "qt-${qtbase.version}" [
qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects qtimageformats
qtlocation qtmultimedia qtquick1 qtquickcontrols qtscript qtsensors qtserialport
qtsvg qttools qttranslations qtwebkit qtwebkit-examples qtwebsockets qtx11extras
qtxmlpatterns
qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects
qtimageformats qtlocation qtmultimedia qtquickcontrols qtscript
qtsensors qtserialport qtsvg qttools qttranslations qtwebsockets
qtx11extras qtxmlpatterns
];
makeQtWrapper = makeSetupHook { deps = [ makeWrapper ]; } ./make-qt-wrapper.sh;
@ -111,6 +116,6 @@ let
};
self = makeScope pkgs.newScope addPackages;
self = makeScope pkgs.newScope addPackages;
in self

View file

@ -4,7 +4,7 @@
set -x
# The trailing slash at the end is necessary!
RELEASE_URL="http://download.qt.io/official_releases/qt/5.4/5.4.2/submodules/"
RELEASE_URL="http://download.qt.io/official_releases/qt/5.6/5.6.0/submodules/"
EXTRA_WGET_ARGS='-A *.tar.xz'
mkdir tmp; cd tmp

View file

@ -0,0 +1,38 @@
wrapQtProgram() {
local prog="$1"
shift
wrapProgram "$prog" \
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
"$@"
}
makeQtWrapper() {
local old="$1"
local new="$2"
shift
shift
makeWrapper "$old" "$new" \
--prefix QT_PLUGIN_PATH : "$QT_PLUGIN_PATH" \
--prefix QML_IMPORT_PATH : "$QML_IMPORT_PATH" \
--prefix QML2_IMPORT_PATH : "$QML2_IMPORT_PATH" \
--prefix XDG_CONFIG_DIRS : "$NIX_WRAP_XDG_CONFIG_DIRS" \
--prefix XDG_DATA_DIRS : "$NIX_WRAP_XDG_DATA_DIRS" \
"$@"
}
_makeQtWrapperSetup() {
# cannot use addToSearchPath because these directories may not exist yet
export QT_PLUGIN_PATH="$QT_PLUGIN_PATH${QT_PLUGIN_PATH:+:}${!outputLib}/lib/qt5/plugins"
export QML_IMPORT_PATH="$QML_IMPORT_PATH${QML_IMPORT_PATH:+:}${!outputLib}/lib/qt5/imports"
export QML2_IMPORT_PATH="$QML2_IMPORT_PATH${QML2_IMPORT_PATH:+:}${!outputLib}/lib/qt5/qml"
export XDG_CONFIG_DIRS="$XDG_CONFIG_DIRS${XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
export XDG_DATA_DIRS="$XDG_DATA_DIRS${XDG_DATA_DIRS:+:}${!outputLib}/share"
export NIX_WRAP_XDG_CONFIG_DIRS="$NIX_WRAP_XDG_CONFIG_DIRS${NIX_WRAP_XDG_CONFIG_DIRS:+:}${!outputLib}/etc/xdg"
export NIX_WRAP_XDG_DATA_DIRS="$NIX_WRAP_XDG_DATA_DIRS${NIX_WRAP_XDG_DATA_DIRS:+:}${!outputLib}/share"
}
prePhases+=(_makeQtWrapperSetup)

View file

@ -53,6 +53,19 @@ _qtMultioutModuleDevs() {
# The destination directory must exist or moveToOutput will do nothing
mkdir -p "${!outputDev}/share"
moveToOutput "share/doc" "${!outputDev}"
# Move libtool archives and qmake project files to $dev/lib
if [ "z${!outputLib}" != "z${!outputDev}" ]; then
pushd "${!outputLib}"
if [ -d "lib" ]; then
find lib \( -name '*.a' -o -name '*.la' -o -name '*.prl' \) -print0 | \
while read -r -d $'\0' file; do
mkdir -p "${!outputDev}/$(dirname "$file")"
mv "${!outputLib}/$file" "${!outputDev}/$file"
done
fi
popd
fi
}
qmakeConfigurePhase() {
@ -89,7 +102,7 @@ envHooks+=(_qtLinkModule)
# It must run after all the envHooks!
postHooks+=(_qtSetQmakePath)
if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
configurePhase=qmakeConfigurePhase
fi

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
===================================================================
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -68,10 +68,7 @@ void TableGenerator::initPossibleLocatio
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
@@ -251,10 +251,7 @@ void TableGenerator::initPossibleLocatio
// the QTCOMPOSE environment variable
if (qEnvironmentVariableIsSet("QTCOMPOSE"))
m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/network/ssl/qsslsocket_openssl.cpp
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/network/ssl/qsslsocket_openssl.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/network/ssl/qsslsocket_openssl.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/network/ssl/qsslsocket_openssl.cpp
@@ -47,7 +47,7 @@
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/network/ssl/qsslsocket_openssl.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/network/ssl/qsslsocket_openssl.cpp
@@ -48,7 +48,7 @@
****************************************************************************/
//#define QSSLSOCKET_DEBUG

View file

@ -1,13 +1,14 @@
{ stdenv, lib, fetchurl, copyPathsToStore, fixQtModuleCMakeConfig
{ stdenv, lib, fetchgit, copyPathsToStore, fixQtModuleCMakeConfig
, srcs
, xlibs, libX11, libxcb, libXcursor, libXext, libXrender, libXi
, xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilwm, libxkbcommon
, fontconfig, freetype, openssl, dbus, glib, udev, libxml2, libxslt, pcre
, fontconfig, freetype, harfbuzz
, openssl, dbus, glib, udev, libxml2, libxslt, pcre16
, zlib, libjpeg, libpng, libtiff, sqlite, icu
, coreutils, bison, flex, gdb, gperf, lndir, ruby
, python, perl, pkgconfig
, patchelf, perl, pkgconfig, python
# optional dependencies
, cups ? null
@ -18,13 +19,16 @@
, buildExamples ? false
, buildTests ? false
, developerBuild ? false
, gtkStyle ? false, libgnomeui, GConf, gnome_vfs, gtk
, gtkStyle ? true, libgnomeui, GConf, gnome_vfs, gtk
, decryptSslTraffic ? false
}:
let
inherit (srcs.qt5) version;
system-x86_64 = lib.elem stdenv.system lib.platforms.x86_64;
# Search path for Gtk plugin
gtkLibPath = lib.makeLibraryPath [ gtk.out gnome_vfs.out libgnomeui.out GConf.out ];
in
stdenv.mkDerivation {
@ -36,15 +40,14 @@ stdenv.mkDerivation {
sourceRoot = "qt-everywhere-opensource-src-${version}";
outputs = [ "dev" "out" ];
outputs = [ "dev" "out" "gtk" ];
postUnpack = ''
mv qtbase-opensource-src-${version} ./qt-everywhere-opensource-src-${version}/qtbase
mv qtbase-opensource-src-${version} $sourceRoot/qtbase
'';
patches =
copyPathsToStore (lib.readPathsFromFile ./. ./series)
++ lib.optional gtkStyle ./dlopen-gtkstyle.patch
++ lib.optional decryptSslTraffic ./decrypt-ssl-traffic.patch
++ lib.optional mesaSupported [ ./dlopen-gl.patch ./mkspecs-libgl.patch ];
@ -78,51 +81,30 @@ stdenv.mkDerivation {
qtbase/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp \
--replace "@libX11@" "${libX11.out}"
''
+ lib.optionalString gtkStyle ''
substituteInPlace qtbase/src/widgets/styles/qgtk2painter.cpp --replace "@gtk@" "${gtk.out}"
substituteInPlace qtbase/src/widgets/styles/qgtkstyle_p.cpp \
--replace "@gtk@" "${gtk.out}" \
--replace "@gnome_vfs@" "${gnome_vfs}" \
--replace "@libgnomeui@" "${libgnomeui}" \
--replace "@gconf@" "${GConf}"
''
+ lib.optionalString mesaSupported ''
substituteInPlace \
qtbase/src/plugins/platforms/xcb/qglxintegration.cpp \
qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp \
--replace "@mesa_lib@" "${mesa.out}"
substituteInPlace qtbase/mkspecs/common/linux.conf \
--replace "@mesa_lib@" "${mesa.out}" \
--replace "@mesa_inc@" "${mesa.dev}"
'';
setOutputFlags = false;
preConfigure = ''
export LD_LIBRARY_PATH="$PWD/qtbase/lib:$PWD/qtbase/plugins/platforms:$LD_LIBRARY_PATH"
export MAKEFLAGS=-j$NIX_BUILD_CORES
_multioutQtDevs() {
# We cannot simply set these paths in configureFlags because libQtCore retains
# references to the paths it was built with.
moveToOutput "bin" "$dev"
moveToOutput "include" "$dev"
moveToOutput "mkspecs" "$dev"
# The destination directory must exist or moveToOutput will do nothing
mkdir -p "$dev/share"
moveToOutput "share/doc" "$dev"
mkdir -p "$dev/lib"
lndir -silent "$out/lib" "$dev/lib"
if [[ -h "$dev/lib/cmake" ]]; then rm "$dev/lib/cmake"; fi
if [[ -h "$dev/lib/pkgconfig" ]]; then rm "$dev/lib/pkgconfig"; fi
}
preFixupHooks+=(_multioutQtDevs)
configureFlags+="\
-plugindir $out/lib/qt5/plugins \
-importdir $out/lib/qt5/imports \
-qmldir $out/lib/qt5/qml \
-docdir $out/share/doc/qt5"
''
# QMake expects to extract the list of available modules from .gitmodules
+ ''
echo '[submodule "qtbase"]' >.gitmodules
'';
prefixKey = "-prefix ";
@ -179,8 +161,10 @@ stdenv.mkDerivation {
-system-zlib
-system-libpng
-system-libjpeg
-system-harfbuzz
-system-xcb
-system-xkbcommon
-system-pcre
-openssl-linked
-dbus-linked
@ -200,9 +184,16 @@ stdenv.mkDerivation {
PSQL_LIBS = lib.optionalString (postgresql != null) "-L${postgresql.lib}/lib -lpq";
propagatedBuildInputs = [
dbus glib libxml2 libxslt openssl pcre16 sqlite udev zlib
# Image formats
libjpeg libpng libtiff
# Text rendering
fontconfig freetype harfbuzz icu
# X11 libs
xlibs.libXcomposite libX11 libxcb libXext libXrender libXi
fontconfig freetype openssl dbus glib udev libxml2 libxslt pcre
zlib libjpeg libpng libtiff sqlite icu
xcbutil xcbutilimage xcbutilkeysyms xcbutilwm libxkbcommon
]
++ lib.optional mesaSupported mesa;
@ -213,17 +204,56 @@ stdenv.mkDerivation {
++ lib.optional (cups != null) cups
++ lib.optional (mysql != null) mysql.lib
++ lib.optional (postgresql != null) postgresql
++ lib.optionals gtkStyle [gnome_vfs libgnomeui gtk GConf];
++ lib.optionals gtkStyle [gnome_vfs.out libgnomeui.out gtk GConf];
nativeBuildInputs = [ fixQtModuleCMakeConfig lndir python perl pkgconfig ];
nativeBuildInputs = [ fixQtModuleCMakeConfig lndir patchelf perl pkgconfig python ];
# freetype-2.5.4 changed signedness of some struct fields
NIX_CFLAGS_COMPILE = "-Wno-error=sign-compare";
preFixup = ''
# We cannot simply set these paths in configureFlags because libQtCore retains
# references to the paths it was built with.
moveToOutput "bin" "$dev"
moveToOutput "include" "$dev"
moveToOutput "mkspecs" "$dev"
# The destination directory must exist or moveToOutput will do nothing
mkdir -p "$dev/share"
moveToOutput "share/doc" "$dev"
# Move libtool archives and qmake projects
if [ "z''${!outputLib}" != "z''${!outputDev}" ]; then
pushd "''${!outputLib}"
find lib -name '*.a' -o -name '*.la' -o -name '*.prl' | \
while read -r file; do
mkdir -p "''${!outputDev}/$(dirname "$file")"
mv "''${!outputLib}/$file" "''${!outputDev}/$file"
done
popd
fi
# Move the QGtkStyle plugin to the gtk output
mkdir -p "$gtk/lib/qt5/plugins/platformthemes"
mv "$out/lib/qt5/plugins/platformthemes/libqgtk2.so" "$gtk/lib/qt5/plugins/platformthemes"
rm "$out/lib/cmake/Qt5Gui/Qt5Gui_QGtk2ThemePlugin.cmake"
# Set RPATH for QGtkStyle plugin
qgtk2="$gtk/lib/qt5/plugins/platformthemes/libqgtk2.so"
qgtk2_RPATH="$(patchelf --print-rpath "$qgtk2")"
qgtk2_RPATH="$qgtk2_RPATH''${qgtk2_RPATH:+:}${gtkLibPath}"
patchelf "$qgtk2" \
--add-needed libgtk-x11-2.0.so \
--add-needed libgnomeui-2.so \
--add-needed libgnomevfs-2.so \
--add-needed libgconf-2.so \
--set-rpath "$qgtk2_RPATH"
'';
postFixup =
''
# Don't retain build-time dependencies like gdb and ruby.
sed '/QMAKE_DEFAULT_.*DIRS/ d' -i "$dev/mkspecs/qconfig.pri"
sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $dev/mkspecs/qconfig.pri
fixQtModuleCMakeConfig "Concurrent"
fixQtModuleCMakeConfig "Core"

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/dbus/qdbus_symbols.cpp
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/dbus/qdbus_symbols.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/dbus/qdbus_symbols.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/dbus/qdbus_symbols.cpp
@@ -88,7 +88,7 @@ bool qdbus_loadLibDBus()
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/dbus/qdbus_symbols.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/dbus/qdbus_symbols.cpp
@@ -89,7 +89,7 @@ bool qdbus_loadLibDBus()
#ifdef Q_OS_WIN
QLatin1String("dbus-1"),
#endif

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/plugins/platforms/xcb/qglxintegration.cpp
@@ -560,7 +560,12 @@ void (*QGLXContext::getProcAddress(const
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
@@ -563,7 +563,12 @@ void (*QGLXContext::getProcAddress(const
{
extern const QString qt_gl_library_name();
// QLibrary lib(qt_gl_library_name());

View file

@ -1,7 +1,7 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtk2painter.cpp
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/widgets/styles/qgtk2painter.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/widgets/styles/qgtk2painter.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtk2painter.cpp
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/widgets/styles/qgtk2painter.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/widgets/styles/qgtk2painter.cpp
@@ -96,7 +96,7 @@ static void initGtk()
static bool initialized = false;
if (!initialized) {
@ -11,11 +11,11 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtk2painter
QGtk2PainterPrivate::gdk_pixmap_new = (Ptr_gdk_pixmap_new)libgtk.resolve("gdk_pixmap_new");
QGtk2PainterPrivate::gdk_pixbuf_get_from_drawable = (Ptr_gdk_pixbuf_get_from_drawable)libgtk.resolve("gdk_pixbuf_get_from_drawable");
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtkstyle_p.cpp
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/widgets/styles/qgtkstyle_p.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/widgets/styles/qgtkstyle_p.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtkstyle_p.cpp
@@ -326,7 +326,7 @@ void QGtkStylePrivate::gtkWidgetSetFocus
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/widgets/styles/qgtkstyle_p.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/widgets/styles/qgtkstyle_p.cpp
@@ -327,7 +327,7 @@ void QGtkStylePrivate::gtkWidgetSetFocus
void QGtkStylePrivate::resolveGtk() const
{
// enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
@ -24,7 +24,7 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtkstyle_p.
gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new");
@@ -424,8 +424,8 @@ void QGtkStylePrivate::resolveGtk() cons
@@ -425,8 +425,8 @@ void QGtkStylePrivate::resolveGtk() cons
pango_font_description_get_family = (Ptr_pango_font_description_get_family)libgtk.resolve("pango_font_description_get_family");
pango_font_description_get_style = (Ptr_pango_font_description_get_style)libgtk.resolve("pango_font_description_get_style");
@ -35,7 +35,7 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/widgets/styles/qgtkstyle_p.
}
/* \internal
@@ -593,9 +593,9 @@ void QGtkStylePrivate::cleanupGtkWidgets
@@ -594,9 +594,9 @@ void QGtkStylePrivate::cleanupGtkWidgets
static bool resolveGConf()
{
if (!QGtkStylePrivate::gconf_client_get_default) {

View file

@ -1,9 +1,9 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -297,10 +297,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *c
#ifdef XCB_USE_XLIB
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
@@ -303,10 +303,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *c
#if defined(XCB_USE_XLIB) && !defined(QT_NO_LIBRARY)
static bool function_ptrs_not_initialized = true;
if (function_ptrs_not_initialized) {
- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -611,8 +611,8 @@ static QPair<QLibrary*, QLibrary*> loadO
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/network/ssl/qsslsocket_openssl_symbols.cpp
@@ -652,8 +652,8 @@ static QPair<QLibrary*, QLibrary*> loadO
#endif
#if defined(SHLIB_VERSION_NUMBER) && !defined(Q_OS_QNX) // on QNX, the libs are always libssl.so and libcrypto.so
// first attempt: the canonical name is libssl.so.<SHLIB_VERSION_NUMBER>
@ -13,7 +13,7 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/network/ssl/qsslsocket_open
if (libcrypto->load() && libssl->load()) {
// libssl.so.<SHLIB_VERSION_NUMBER> and libcrypto.so.<SHLIB_VERSION_NUMBER> found
return pair;
@@ -629,8 +629,8 @@ static QPair<QLibrary*, QLibrary*> loadO
@@ -670,8 +670,8 @@ static QPair<QLibrary*, QLibrary*> loadO
// OS X's /usr/lib/libssl.dylib, /usr/lib/libcrypto.dylib will be picked up in the third
// attempt, _after_ <bundle>/Contents/Frameworks has been searched.
// iOS does not ship a system libssl.dylib, libcrypto.dylib in the first place.

View file

@ -1,7 +1,7 @@
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/network/kernel/qdnslookup_unix.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/network/kernel/qdnslookup_unix.cpp
===================================================================
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/network/kernel/qdnslookup_unix.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/network/kernel/qdnslookup_unix.cpp
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/network/kernel/qdnslookup_unix.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/network/kernel/qdnslookup_unix.cpp
@@ -79,7 +79,7 @@ static void resolveLibrary()
if (!lib.load())
#endif
@ -11,10 +11,10 @@ Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/network/kernel/qdnslookup_u
if (!lib.load())
return;
}
Index: qt-everywhere-opensource-src-5.5.1/qtbase/src/network/kernel/qhostinfo_unix.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/network/kernel/qhostinfo_unix.cpp
===================================================================
--- qt-everywhere-opensource-src-5.5.1.orig/qtbase/src/network/kernel/qhostinfo_unix.cpp
+++ qt-everywhere-opensource-src-5.5.1/qtbase/src/network/kernel/qhostinfo_unix.cpp
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/network/kernel/qhostinfo_unix.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/network/kernel/qhostinfo_unix.cpp
@@ -95,7 +95,7 @@ static void resolveLibrary()
if (!lib.load())
#endif

View file

@ -0,0 +1,33 @@
From 81494e67eccba04fc3fe554d76a9ca6fe7f2250e Mon Sep 17 00:00:00 2001
From: hasufell <hasufell@gentoo.org>
Date: Sat, 10 Oct 2015 01:15:01 +0200
Subject: [PATCH] Fix compilation with libressl
By additionally checking for defined(SSL_CTRL_SET_CURVES), which
is defined in openssl, but not in libressl.
---
src/network/ssl/qsslcontext_openssl.cpp | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/network/ssl/qsslcontext_openssl.cpp
===================================================================
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/network/ssl/qsslcontext_openssl.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/network/ssl/qsslcontext_openssl.cpp
@@ -340,7 +340,7 @@ init_context:
const QVector<QSslEllipticCurve> qcurves = sslContext->sslConfiguration.ellipticCurves();
if (!qcurves.isEmpty()) {
-#if OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#if OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
// Set the curves to be used
if (q_SSLeay() >= 0x10002000L) {
// SSL_CTX_ctrl wants a non-const pointer as last argument,
@@ -354,7 +354,7 @@ init_context:
return sslContext;
}
} else
-#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && !defined(OPENSSL_NO_EC)
+#endif // OPENSSL_VERSION_NUMBER >= 0x10002000L && defined(SSL_CTRL_SET_CURVES) && !defined(OPENSSL_NO_EC)
{
// specific curves requested, but not possible to set -> error
sslContext->errorStr = msgErrorSettingEllipticCurves(QSslSocket::tr("OpenSSL version too old, need at least v1.0.2"));

View file

@ -0,0 +1,22 @@
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/kernel/qcoreapplication.cpp
===================================================================
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/corelib/kernel/qcoreapplication.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/kernel/qcoreapplication.cpp
@@ -2533,7 +2533,17 @@ QStringList QCoreApplication::libraryPat
QStringList *app_libpaths = new QStringList;
coreappdata()->app_libpaths.reset(app_libpaths);
+ // Add library paths derived from NIX_PROFILES.
+ const QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' ');
+ const QString plugindir = QString::fromLatin1("/lib/qt5/plugins");
+ Q_FOREACH (const QByteArray &profile, profiles) {
+ if (!profile.isEmpty()) {
+ app_libpaths->append(QFile::decodeName(profile) + plugindir);
+ }
+ }
+
const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
+ qunsetenv("QT_PLUGIN_PATH"); // do not propagate to child processes
if (!libPathEnv.isEmpty()) {
QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
for (QStringList::const_iterator it = paths.constBegin(); it != paths.constEnd(); ++it) {

View file

@ -6,3 +6,4 @@ dlopen-dbus.patch
xdg-config-dirs.patch
nix-profiles-library-paths.patch
compose-search-path.patch
libressl.patch

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
@@ -61,7 +61,10 @@ typedef QHash<QByteArray, QTzTimeZone> Q
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/tools/qtimezoneprivate_tz.cpp
@@ -62,7 +62,10 @@ typedef QHash<QByteArray, QTzTimeZone> Q
// Parse zone.tab table, assume lists all installed zones, if not will need to read directories
static QTzTimeZoneHash loadTzTimeZones()
{
@ -14,7 +14,7 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/tools/qtimezonepriv
if (!QFile::exists(path))
path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
@@ -552,12 +555,18 @@ void QTzTimeZonePrivate::init(const QByt
@@ -560,12 +563,18 @@ void QTzTimeZonePrivate::init(const QByt
if (!tzif.open(QIODevice::ReadOnly))
return;
} else {

View file

@ -1,8 +1,8 @@
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/io/qsettings.cpp
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/io/qsettings.cpp
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/corelib/io/qsettings.cpp
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/io/qsettings.cpp
@@ -1128,6 +1128,24 @@ QConfFileSettingsPrivate::QConfFileSetti
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/corelib/io/qsettings.cpp
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/io/qsettings.cpp
@@ -1155,6 +1155,24 @@ QConfFileSettingsPrivate::QConfFileSetti
if (!application.isEmpty())
confFiles[F_System | F_Application].reset(QConfFile::fromName(systemPath + appFile, false));
confFiles[F_System | F_Organization].reset(QConfFile::fromName(systemPath + orgFile, false));
@ -27,11 +27,11 @@ Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/io/qsettings.cpp
#else
QString confName = getPath(format, QSettings::UserScope) + org;
if (!application.isEmpty())
Index: qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/io/qsettings_p.h
Index: qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/io/qsettings_p.h
===================================================================
--- qt-everywhere-opensource-src-5.4.2.orig/qtbase/src/corelib/io/qsettings_p.h
+++ qt-everywhere-opensource-src-5.4.2/qtbase/src/corelib/io/qsettings_p.h
@@ -240,7 +240,7 @@ public:
--- qt-everywhere-opensource-src-5.6.0.orig/qtbase/src/corelib/io/qsettings_p.h
+++ qt-everywhere-opensource-src-5.6.0/qtbase/src/corelib/io/qsettings_p.h
@@ -241,7 +241,7 @@ public:
F_Organization = 0x1,
F_User = 0x0,
F_System = 0x2,

View file

@ -1,8 +1,8 @@
{ qtSubmodule, python, qtbase, qtsvg, qtxmlpatterns }:
{ qtSubmodule, lib, copyPathsToStore, python, qtbase, qtsvg, qtxmlpatterns }:
qtSubmodule {
name = "qtdeclarative";
patches = [ ./0001-nix-profiles-import-paths.patch ];
patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
qtInputs = [ qtbase qtsvg qtxmlpatterns ];
nativeBuildInputs = [ python ];
postFixup = ''

View file

@ -0,0 +1,20 @@
Index: qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlimport.cpp
===================================================================
--- qtdeclarative-opensource-src-5.5.1.orig/src/qml/qml/qqmlimport.cpp
+++ qtdeclarative-opensource-src-5.5.1/src/qml/qml/qqmlimport.cpp
@@ -1549,6 +1549,15 @@ QQmlImportDatabase::QQmlImportDatabase(Q
QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
addImportPath(installImportsPath);
+ // Add library paths derived from NIX_PROFILES.
+ const QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' ');
+ const QString qmldir = QString::fromLatin1("/lib/qt5/qml");
+ Q_FOREACH (const QByteArray &profile, profiles) {
+ if (!profile.isEmpty()) {
+ addImportPath(QFile::decodeName(profile) + qmldir);
+ }
+ }
+
// env import paths
QByteArray envImportPath = qgetenv("QML2_IMPORT_PATH");
if (!envImportPath.isEmpty()) {

View file

@ -0,0 +1 @@
nix-profiles-import-paths.patch

View file

@ -3,7 +3,6 @@
qtSubmodule {
name = "qtserialport";
qtInputs = [ qtbase ];
patches = [
(substituteAll {
src = ./0001-dlopen-serialport-udev.patch;

View file

@ -1,8 +1,8 @@
{ qtSubmodule, qtbase }:
{ qtSubmodule, qtbase, qtdeclarative }:
qtSubmodule {
name = "qttools";
qtInputs = [ qtbase ];
qtInputs = [ qtbase qtdeclarative ];
postFixup = ''
moveToOutput "bin/qdbus" "$out"
moveToOutput "bin/qtpaths" "$out"
@ -10,6 +10,7 @@ qtSubmodule {
fixQtModuleCMakeConfig "Designer"
fixQtModuleCMakeConfig "Help"
fixQtModuleCMakeConfig "LinguistTools"
fixQtModuleCMakeConfig "UiPlugin"
fixQtModuleCMakeConfig "UiTools"
'';
}

View file

@ -0,0 +1,261 @@
# DO NOT EDIT! This file is generated automatically by manifest.sh
{ fetchurl, mirror }:
{
qttools = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qttools-opensource-src-5.6.0.tar.xz";
sha256 = "1791c9a1vxv0q2ywr00ya5rxaggidsq81s8h8fwmql75pdhlq90d";
name = "qttools-opensource-src-5.6.0.tar.xz";
};
};
qtwebengine = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwebengine-opensource-src-5.6.0.tar.xz";
sha256 = "00vaqx3mypqlnjkfwhx54r6ygfs07amkwc4rma0sg64zdjnvb8la";
name = "qtwebengine-opensource-src-5.6.0.tar.xz";
};
};
qtserialbus = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtserialbus-opensource-src-5.6.0.tar.xz";
sha256 = "13hbmj9pilh5gkbbngfbp225qvc650pnzvpzawpnf69zwl757jlc";
name = "qtserialbus-opensource-src-5.6.0.tar.xz";
};
};
qtwayland = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwayland-opensource-src-5.6.0.tar.xz";
sha256 = "1k5zsgz54wlkxm3ici55lbbz286bk2791vri02bjgja5y9102pdm";
name = "qtwayland-opensource-src-5.6.0.tar.xz";
};
};
qt5 = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qt5-opensource-src-5.6.0.tar.xz";
sha256 = "195dl9pk9slbiy6mgwwpc70vaw62sdhxc3lxmlnyddk99widqa3k";
name = "qt5-opensource-src-5.6.0.tar.xz";
};
};
qtimageformats = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtimageformats-opensource-src-5.6.0.tar.xz";
sha256 = "1nmsh682idxl0642q7376r9qfxkx0736q9pl4jx179c9lrsl519c";
name = "qtimageformats-opensource-src-5.6.0.tar.xz";
};
};
qtactiveqt = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtactiveqt-opensource-src-5.6.0.tar.xz";
sha256 = "0xrjr9jwkxxcv46a8vj77px3v1p36nm6rpvyxma0wb4xhpippp3a";
name = "qtactiveqt-opensource-src-5.6.0.tar.xz";
};
};
qtdoc = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtdoc-opensource-src-5.6.0.tar.xz";
sha256 = "1z69yl8nkvp21arjhzl34gr8gvxm5b03d58lwnddl4mkaxbi4vap";
name = "qtdoc-opensource-src-5.6.0.tar.xz";
};
};
qtsensors = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtsensors-opensource-src-5.6.0.tar.xz";
sha256 = "0blwqmkh0hn1716d5fvy0vnh56y9iikl34ayz6ksl0ayxhpkk3si";
name = "qtsensors-opensource-src-5.6.0.tar.xz";
};
};
qtwebchannel = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwebchannel-opensource-src-5.6.0.tar.xz";
sha256 = "0ky1njksczyfb7y7p5kfgzbx9vgajzy51g2y3vrpfvl6bs9j8m62";
name = "qtwebchannel-opensource-src-5.6.0.tar.xz";
};
};
qtmacextras = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtmacextras-opensource-src-5.6.0.tar.xz";
sha256 = "1jkmwppapvymdr1kwdrbjlxhcafcn4jb23ssnhrvvgcq3lnl5lhj";
name = "qtmacextras-opensource-src-5.6.0.tar.xz";
};
};
qtwebsockets = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwebsockets-opensource-src-5.6.0.tar.xz";
sha256 = "17vi3n27gx3f3c2lii3b70pzz6mpblam3236v6mj439xzrlvi2i6";
name = "qtwebsockets-opensource-src-5.6.0.tar.xz";
};
};
qtconnectivity = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtconnectivity-opensource-src-5.6.0.tar.xz";
sha256 = "1ss0ibabiv7n5hakkxmkc4msrwgqcvfffdjajnv5jrq0030v0p0c";
name = "qtconnectivity-opensource-src-5.6.0.tar.xz";
};
};
qtscript = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtscript-opensource-src-5.6.0.tar.xz";
sha256 = "0hjhkh4lia1i0iir1i8dr57gizi74h73j0phhir3q3wsglcpax5c";
name = "qtscript-opensource-src-5.6.0.tar.xz";
};
};
qttranslations = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qttranslations-opensource-src-5.6.0.tar.xz";
sha256 = "0jfdfj2z0nvf1xblmdxaphn0psjycrb5g3jxxcddkci214gka2cq";
name = "qttranslations-opensource-src-5.6.0.tar.xz";
};
};
qtlocation = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtlocation-opensource-src-5.6.0.tar.xz";
sha256 = "1jakjrwic01b5vyij6hfzdfpipandpkj9li3d7wf9bzws0cia3in";
name = "qtlocation-opensource-src-5.6.0.tar.xz";
};
};
qtserialport = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtserialport-opensource-src-5.6.0.tar.xz";
sha256 = "07rwhmh9y7b3ycvx4d4d1j32nahf8nhsb9qj99kxz5xrdfv7zvhn";
name = "qtserialport-opensource-src-5.6.0.tar.xz";
};
};
qtsvg = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtsvg-opensource-src-5.6.0.tar.xz";
sha256 = "07v4bzxd31dhkhp52y4g2ii0sslmk48cqkkz32v41frqj4qrk1vr";
name = "qtsvg-opensource-src-5.6.0.tar.xz";
};
};
qtwebview = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwebview-opensource-src-5.6.0.tar.xz";
sha256 = "0mqbh125bq37xybwslhri4pl861r26cnraiz9ivh4881kqzab3x4";
name = "qtwebview-opensource-src-5.6.0.tar.xz";
};
};
qtcanvas3d = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtcanvas3d-opensource-src-5.6.0.tar.xz";
sha256 = "1kwykm1ffgpjgb3ggd4h2d2x3yhp9jsc0gnwlks620bahagdbbb6";
name = "qtcanvas3d-opensource-src-5.6.0.tar.xz";
};
};
qtwinextras = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtwinextras-opensource-src-5.6.0.tar.xz";
sha256 = "14xvm081wjyild2wi7pcilqxdkhc8b0lf9yn7yf7zp576i9ir5aq";
name = "qtwinextras-opensource-src-5.6.0.tar.xz";
};
};
qtgraphicaleffects = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtgraphicaleffects-opensource-src-5.6.0.tar.xz";
sha256 = "1s0n8hrmrfs53cmm7i45p8zavvmsl0aisd5sgj93p8c5rzyi3s81";
name = "qtgraphicaleffects-opensource-src-5.6.0.tar.xz";
};
};
qtxmlpatterns = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtxmlpatterns-opensource-src-5.6.0.tar.xz";
sha256 = "1m0rr0m9zg2d6rdban2p5qyx8rdnjnjsfk3bm72bh47hscxipvds";
name = "qtxmlpatterns-opensource-src-5.6.0.tar.xz";
};
};
qtquickcontrols2 = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtquickcontrols2-opensource-src-5.6.0.tar.xz";
sha256 = "1q7yp7l32jd3p28587ldxzkj58z1aad9gcs80w6vqc9952i6xv2r";
name = "qtquickcontrols2-opensource-src-5.6.0.tar.xz";
};
};
qtbase = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtbase-opensource-src-5.6.0.tar.xz";
sha256 = "0ynnvcs5idivzldsq5ciqg9myg82b3l3906l4vjv54lyamf8mykf";
name = "qtbase-opensource-src-5.6.0.tar.xz";
};
};
qt3d = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qt3d-opensource-src-5.6.0.tar.xz";
sha256 = "17a37xhav5mxspx2c9wsgvcilv7ys40q6minmlqd1gnfmsfphqdr";
name = "qt3d-opensource-src-5.6.0.tar.xz";
};
};
qtenginio = {
version = "1.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtenginio-opensource-src-1.6.0.tar.xz";
sha256 = "033z2jncci64s7s9ml5rsfsnrkdmhx1g5dfvr61imv63pzxxqzb2";
name = "qtenginio-opensource-src-1.6.0.tar.xz";
};
};
qtx11extras = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtx11extras-opensource-src-5.6.0.tar.xz";
sha256 = "099lc7kxcxgp5s01ddnd6n955fc8866caark43xfs2dw0a6pdva7";
name = "qtx11extras-opensource-src-5.6.0.tar.xz";
};
};
qtdeclarative = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtdeclarative-opensource-src-5.6.0.tar.xz";
sha256 = "0k70zlyx1nh35caiav4s3jvg5l029pvilm6sarxmfj73y19z0mcc";
name = "qtdeclarative-opensource-src-5.6.0.tar.xz";
};
};
qtmultimedia = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtmultimedia-opensource-src-5.6.0.tar.xz";
sha256 = "11h66xcr3y3w8hhvx801r66yirvf1kppasjlhm25qvr6rpb9jgqh";
name = "qtmultimedia-opensource-src-5.6.0.tar.xz";
};
};
qtquickcontrols = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtquickcontrols-opensource-src-5.6.0.tar.xz";
sha256 = "12vqkxpz5y2bbh083lpsxcianykl8x7am49pmc4x221a5xwrc27c";
name = "qtquickcontrols-opensource-src-5.6.0.tar.xz";
};
};
qtandroidextras = {
version = "5.6.0";
src = fetchurl {
url = "${mirror}/official_releases/qt/5.6/5.6.0/submodules/qtandroidextras-opensource-src-5.6.0.tar.xz";
sha256 = "1qhrn8vhfn0z73bc2ls1b4zfvr7r5gn7b5xdmjp26hi338j55vp0";
name = "qtandroidextras-opensource-src-5.6.0.tar.xz";
};
};
}

View file

@ -1,18 +0,0 @@
{ stdenv, fetchurl, doxygen, qtbase, qmakeHook }:
stdenv.mkDerivation rec {
name = "signon-${version}";
version = "8.57";
src = fetchurl {
url = "https://gitlab.com/accounts-sso/signond/repository/archive.tar.gz?ref=${version}";
sha256 = "1vqkxhmdjk3217k38l2s3wld8x7f4jrbbh6xbr036cn1r23ncni5";
};
buildInputs = [ qtbase ];
nativeBuildInputs = [ doxygen qmakeHook ];
preConfigure = ''
qmakeFlags="$qmakeFlags LIBDIR=$out/lib CMAKE_CONFIG_PATH=$out/lib/cmake/SignOnQt5"
'';
}

View file

@ -30,5 +30,6 @@ stdenv.mkDerivation rec {
description = "ChessX allows you to browse and analyse chess games";
license = licenses.gpl2;
maintainers = [maintainers.luispedro];
broken = true;
};
}

View file

@ -40,5 +40,6 @@ stdenv.mkDerivation rec {
maintainers = [ stdenv.lib.maintainers.wyvie ];
platforms = stdenv.lib.platforms.linux;
license = stdenv.lib.licenses.gpl2;
broken = true;
};
}

View file

@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
license = licenses.gpl2;
platforms = platforms.all;
maintainers = [ maintainers.vbgl ];
broken = true;
};
}

View file

@ -74,7 +74,6 @@ doNotDisplayTwice rec {
pidginlatexSF = pidginlatex; # added 2014-11-02
poppler_qt5 = qt5.poppler; # added 2015-12-19
qca-qt5 = qt5.qca-qt5; # added 2015-12-19
qtcreator = qt5.qtcreator; # added 2015-12-19
quake3game = ioquake3; # added 2016-01-14
quassel_kf5 = kde5.quassel; # added 2015-09-30
quassel_qt5 = kde5.quassel_qt5; # added 2015-09-30

View file

@ -434,7 +434,7 @@ in
withGui = false;
};
apitrace = qt5.callPackage ../applications/graphics/apitrace {};
apitrace = qt55.callPackage ../applications/graphics/apitrace {};
argyllcms = callPackage ../tools/graphics/argyllcms {};
@ -1160,7 +1160,7 @@ in
convmv = callPackage ../tools/misc/convmv { };
cool-retro-term = qt5.callPackage ../applications/misc/cool-retro-term { };
cool-retro-term = qt55.callPackage ../applications/misc/cool-retro-term { };
coreutils = callPackage ../tools/misc/coreutils {
aclSupport = stdenv.isLinux;
@ -3248,7 +3248,7 @@ in
siege = callPackage ../tools/networking/siege {};
sigil = qt5.callPackage ../applications/editors/sigil { };
sigil = qt55.callPackage ../applications/editors/sigil { };
# aka., gpg-tools
signing-party = callPackage ../tools/security/signing-party { };
@ -6284,6 +6284,10 @@ in
premake = premake4;
qtcreator = qt5.callPackage ../development/qtcreator {
withDocumentation = true;
};
racerRust = callPackage ../development/tools/rust/racer { };
radare = callPackage ../development/tools/analysis/radare {
@ -7508,8 +7512,6 @@ in
libcm = callPackage ../development/libraries/libcm { };
libcommuni = qt5.callPackage ../development/libraries/libcommuni { };
libconfuse = callPackage ../development/libraries/libconfuse { };
inherit (gnome3) libcroco;
@ -8694,15 +8696,20 @@ in
developerBuild = true;
});
qt54 =
let imported = import ../development/libraries/qt-5/5.4 { inherit pkgs; };
in recurseIntoAttrs (imported.override (super: qt5LibsFun));
qt55 =
let imported = import ../development/libraries/qt-5/5.5 { inherit pkgs; };
# Libraries that cannot be built with newer versions of Qt 5
qt55Only = self: with self; {
# Requires Qt Quick (deprecated in Qt 5.5, removed from Qt 5.6)
qmltermwidget = callPackage ../development/libraries/qmltermwidget { };
};
in recurseIntoAttrs (imported.override (super: self: qt5LibsFun self // qt55Only self));
qt56 =
let imported = import ../development/libraries/qt-5/5.6 { inherit pkgs; };
in recurseIntoAttrs (imported.override (super: qt5LibsFun));
qt5 = self.qt54;
qt5 = self.qt56;
qt5LibsFun = self: with self; {
@ -8710,6 +8717,8 @@ in
grantlee = callPackage ../development/libraries/grantlee/5.x.nix { };
libcommuni = callPackage ../development/libraries/libcommuni { };
libdbusmenu = callPackage ../development/libraries/libdbusmenu-qt/qt-5.5.nix { };
libkeyfinder = callPackage ../development/libraries/libkeyfinder { };
@ -8728,20 +8737,12 @@ in
qca-qt5 = callPackage ../development/libraries/qca-qt5 { };
qmltermwidget = callPackage ../development/libraries/qmltermwidget { };
qtcreator = callPackage ../development/qtcreator {
withDocumentation = true;
};
quazip = callPackage ../development/libraries/quazip {
qt = qtbase;
};
qwt = callPackage ../development/libraries/qwt/6.nix { };
signon = callPackage ../development/libraries/signon { };
telepathy = callPackage ../development/libraries/telepathy/qt { };
vlc = lowPrio (callPackage ../applications/video/vlc {
@ -11663,7 +11664,7 @@ in
xlsx2csv = pythonPackages.xlsx2csv;
zeal = qt5.callPackage ../data/documentation/zeal { };
zeal = qt55.callPackage ../data/documentation/zeal { };
### APPLICATIONS
@ -13028,7 +13029,7 @@ in
kermit = callPackage ../tools/misc/kermit { };
keyfinder = qt55.callPackage ../applications/audio/keyfinder { };
keyfinder = qt5.callPackage ../applications/audio/keyfinder { };
keyfinder-cli = qt5.callPackage ../applications/audio/keyfinder-cli { };
@ -13186,7 +13187,7 @@ in
webkit = webkitgtk2;
};
luminanceHDR = qt5.callPackage ../applications/graphics/luminance-hdr { };
luminanceHDR = qt55.callPackage ../applications/graphics/luminance-hdr { };
lxdvdrip = callPackage ../applications/video/lxdvdrip { };
@ -13401,7 +13402,7 @@ in
else null;
};
musescore = qt5.callPackage ../applications/audio/musescore { };
musescore = qt55.callPackage ../applications/audio/musescore { };
mutt = callPackage ../applications/networking/mailreaders/mutt { };
mutt-with-sidebar = callPackage ../applications/networking/mailreaders/mutt {
@ -13443,7 +13444,7 @@ in
smplayer = qt5.callPackage ../applications/video/smplayer { };
smtube = qt5.callPackage ../applications/video/smtube {};
smtube = qt55.callPackage ../applications/video/smtube {};
sup = callPackage ../applications/networking/mailreaders/sup {
ruby = ruby_2_3.override { cursesSupport = true; };
@ -13792,7 +13793,7 @@ in
demo = false;
};
rapcad = qt5.callPackage ../applications/graphics/rapcad { boost = boost159; };
rapcad = qt55.callPackage ../applications/graphics/rapcad { boost = boost159; };
rapidsvn = callPackage ../applications/version-management/rapidsvn { };
@ -13820,7 +13821,7 @@ in
RhythmDelay = callPackage ../applications/audio/RhythmDelay { };
ricochet = qt5.callPackage ../applications/networking/instant-messengers/ricochet { };
ricochet = qt55.callPackage ../applications/networking/instant-messengers/ricochet { };
rkt = callPackage ../applications/virtualization/rkt { };
@ -16454,7 +16455,7 @@ in
inherit (pythonPackages) pexpect paramiko;
};
redis-desktop-manager = qt5.callPackage ../applications/misc/redis-desktop-manager { };
redis-desktop-manager = qt55.callPackage ../applications/misc/redis-desktop-manager { };
robomongo = qt5.callPackage ../applications/misc/robomongo { };
@ -16793,7 +16794,7 @@ in
discord = callPackage ../applications/networking/instant-messengers/discord { };
golden-cheetah = qt5.callPackage ../applications/misc/golden-cheetah {};
golden-cheetah = qt55.callPackage ../applications/misc/golden-cheetah {};
tomb = callPackage ../os-specific/linux/tomb {};