diff --git a/COPYING b/COPYING
index a632d6f58b1..afc460fff5c 100644
--- a/COPYING
+++ b/COPYING
@@ -23,9 +23,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Note: the license above does not apply to the packages built by the
Nix Packages collection, merely to the package descriptions (i.e., Nix
-expressions, build scripts, etc.). Also, the license does not apply
-to some of the binaries used for bootstrapping Nixpkgs (e.g.,
-pkgs/stdenv/linux/tools/bash). It also might not apply to patches
+expressions, build scripts, etc.). It also might not apply to patches
included in Nixpkgs, which may be derivative works of the packages to
which they apply. The aforementioned artifacts are all covered by the
licenses of the respective packages.
diff --git a/doc/cross-compilation.xml b/doc/cross-compilation.xml
index 77d020afa2d..9e9dd41c288 100644
--- a/doc/cross-compilation.xml
+++ b/doc/cross-compilation.xml
@@ -184,7 +184,7 @@
For now, feel free to use either method.
- There is also a "backlink" __targetPackages, yielding a package set whose buildPackages is the current package set.
+ There is also a "backlink" targetPackages, yielding a package set whose buildPackages is the current package set.
This is a hack, though, to accommodate compilers with lousy build systems.
Please do not use this unless you are absolutely sure you are packaging such a compiler and there is no other way.
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index e01907ac5cd..93edea1e40e 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -614,6 +614,7 @@
sztupi = "Attila Sztupak ";
taeer = "Taeer Bar-Yam ";
tailhook = "Paul Colomiets ";
+ taketwo = "Sergey Alexandrov ";
takikawa = "Asumu Takikawa ";
taktoa = "Remy Goldschmidt ";
taku0 = "Takuo Yonezawa ";
diff --git a/nixos/modules/services/web-apps/mattermost.nix b/nixos/modules/services/web-apps/mattermost.nix
index 0b637e3991b..be74a2b1955 100644
--- a/nixos/modules/services/web-apps/mattermost.nix
+++ b/nixos/modules/services/web-apps/mattermost.nix
@@ -173,7 +173,7 @@ in
preStart = ''
mkdir -p ${cfg.statePath}/{data,config,logs}
- ln -sf ${pkgs.mattermost}/{bin,fonts,i18n,templates,webapp} ${cfg.statePath}
+ ln -sf ${pkgs.mattermost}/{bin,fonts,i18n,templates,client} ${cfg.statePath}
'' + lib.optionalString (!cfg.mutableConfig) ''
ln -sf ${mattermostConfJSON} ${cfg.statePath}/config/config.json
'' + lib.optionalString cfg.mutableConfig ''
diff --git a/nixos/modules/services/x11/compton.nix b/nixos/modules/services/x11/compton.nix
index 8701354b528..11cbcac6fa8 100644
--- a/nixos/modules/services/x11/compton.nix
+++ b/nixos/modules/services/x11/compton.nix
@@ -221,7 +221,7 @@ in {
};
extraOptions = mkOption {
- type = types.str;
+ type = types.lines;
default = "";
example = ''
unredir-if-possible = true;
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix
index 8ce7b2d2cf3..1741d2c7e1f 100644
--- a/nixos/modules/tasks/network-interfaces.nix
+++ b/nixos/modules/tasks/network-interfaces.nix
@@ -924,6 +924,14 @@ in
(flip map interfaces (i: {
assertion = i.subnetMask == null;
message = "The networking.interfaces.${i.name}.subnetMask option is defunct. Use prefixLength instead.";
+ })) ++ (flip map interfaces (i: {
+ # With the linux kernel, interface name length is limited by IFNAMSIZ
+ # to 16 bytes, including the trailing null byte.
+ # See include/linux/if.h in the kernel sources
+ assertion = stringLength i.name < 16;
+ message = ''
+ The name of networking.interfaces."${i.name}" is too long, it needs to be less than 16 characters.
+ '';
})) ++ (flip map slaveIfs (i: {
assertion = i.ip4 == [ ] && i.ipAddress == null && i.ip6 == [ ] && i.ipv6Address == null;
message = "The networking.interfaces.${i.name} must not have any defined ips when it is a slave.";
diff --git a/pkgs/applications/editors/eclipse/plugins.nix b/pkgs/applications/editors/eclipse/plugins.nix
index 4bad9eb2d64..8d96a79b3c3 100644
--- a/pkgs/applications/editors/eclipse/plugins.nix
+++ b/pkgs/applications/editors/eclipse/plugins.nix
@@ -24,9 +24,7 @@ rec {
buildEclipsePluginBase (attrs // {
srcs = [ srcFeature srcPlugin ];
- phases = [ "installPhase" ];
-
- installPhase = ''
+ buildCommand = ''
dropinDir="$out/eclipse/dropins/${name}"
mkdir -p $dropinDir/features
@@ -35,7 +33,6 @@ rec {
mkdir -p $dropinDir/plugins
cp -v ${srcPlugin} $dropinDir/plugins/${name}.jar
'';
-
});
# Helper for the case where the build directory has the layout of an
@@ -44,7 +41,8 @@ rec {
# directories will be installed.
buildEclipseUpdateSite = { name, ... } @ attrs:
buildEclipsePluginBase (attrs // {
- phases = [ "unpackPhase" "installPhase" ];
+ dontBuild = true;
+ doCheck = false;
installPhase = ''
dropinDir="$out/eclipse/dropins/${name}"
diff --git a/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix b/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix
new file mode 100644
index 00000000000..ce4010c9881
--- /dev/null
+++ b/pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix
@@ -0,0 +1,23 @@
+{ fetchurl, stdenv, melpaBuild }:
+
+melpaBuild {
+ pname = "font-lock-plus";
+ version = "20170222.1755";
+
+ src = fetchurl {
+ url = "https://www.emacswiki.org/emacs/download/font-lock+.el";
+ sha256 = "0iajkgh0n3pbrwwxx9rmrrwz8dw2m7jsp4mggnhq7zsb20ighs30";
+ name = "font-lock+.el";
+ };
+
+ recipeFile = fetchurl {
+ url = "https://raw.githubusercontent.com/milkypostman/melpa/a5d15f875b0080b12ce45cf696c581f6bbf061ba/recipes/font-lock+";
+ sha256 = "1wn99cb53ykds87lg9mrlfpalrmjj177nwskrnp9wglyqs65lk4g";
+ name = "font-lock-plus";
+ };
+
+ meta = with stdenv.lib; {
+ homepage = "https://melpa.org/#/font-lock+";
+ license = lib.licenses.gpl2Plus;
+ };
+}
diff --git a/pkgs/applications/editors/jucipp/default.nix b/pkgs/applications/editors/jucipp/default.nix
index ae4f1e6ad52..3d623d3f3bd 100644
--- a/pkgs/applications/editors/jucipp/default.nix
+++ b/pkgs/applications/editors/jucipp/default.nix
@@ -1,7 +1,7 @@
{ config, stdenv, fetchgit, makeWrapper, gnome3, at_spi2_core, libcxx,
boost, epoxy, cmake, aspell, llvmPackages, libgit2, pkgconfig, pcre,
libXdmcp, libxkbcommon, libpthreadstubs, wrapGAppsHook, aspellDicts,
- coreutils, glibc, dbus_libs, openssl, libxml2, gnumake, binutils, ctags }:
+ coreutils, glibc, dbus_libs, openssl, libxml2, gnumake, ctags }:
with stdenv.lib;
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
postInstall = ''
mv $out/bin/juci $out/bin/.juci
makeWrapper "$out/bin/.juci" "$out/bin/juci" \
- --set PATH "${stdenv.lib.makeBinPath [ ctags coreutils llvmPackages.clang.cc cmake gnumake binutils llvmPackages.clang ]}" \
+ --set PATH "${stdenv.lib.makeBinPath [ ctags coreutils llvmPackages.clang.cc cmake gnumake llvmPackages.clang.bintools llvmPackages.clang ]}" \
--set NO_AT_BRIDGE 1 \
--set ASPELL_CONF "dict-dir ${aspellDicts.en}/lib/aspell"
'';
diff --git a/pkgs/applications/editors/zed/default.nix b/pkgs/applications/editors/zed/default.nix
index 0170319871f..bcf262957bc 100644
--- a/pkgs/applications/editors/zed/default.nix
+++ b/pkgs/applications/editors/zed/default.nix
@@ -5,22 +5,16 @@ let
name = "zed-${version}";
version = "1.1.0";
- # When upgrading node.nix / node packages:
- # fetch package.json from Zed's repository
- # run `npm2nix package.json node.nix`
- # and replace node.nix with new one
- nodePackages = import ../../../../pkgs/top-level/node-packages.nix {
+ nodePackages = import ./node.nix {
inherit pkgs;
- inherit (pkgs) stdenv nodejs fetchurl fetchgit;
- neededNatives = [ pkgs.python ] ++ pkgs.lib.optional pkgs.stdenv.isLinux pkgs.utillinux;
- self = nodePackages;
- generated = ./node.nix;
+ system = stdenv.system;
};
node_env = buildEnv {
name = "node_env";
- paths = [ nodePackages."body-parser" nodePackages.express
- nodePackages.request nodePackages.tar nodePackages.ws ];
+ paths = [ nodePackages."body-parser-~1.6.3" nodePackages."express-~4.8.3"
+ nodePackages."request-~2.34.0" nodePackages."tar-~0.1.19"
+ nodePackages."ws-~0.4.32" ];
pathsToLink = [ "/lib" ];
ignoreCollisions = true;
};
@@ -78,11 +72,11 @@ in stdenv.mkDerivation rec {
ln -s ${zed_script} $out/bin/zed
'';
- meta = {
+ meta = with stdenv.lib; {
description = "A fully offline-capable, open source, keyboard-focused, text and code editor for power users";
- license = stdenv.lib.licenses.mit;
+ license = licenses.mit;
homepage = http://zedapp.org/;
- maintainers = [ stdenv.lib.maintainers.matejc ];
- platforms = stdenv.lib.platforms.linux;
+ maintainers = with maintainers; [ matejc ma27 ];
+ platforms = platforms.linux;
};
}
diff --git a/pkgs/applications/editors/zed/deps.json b/pkgs/applications/editors/zed/deps.json
new file mode 100644
index 00000000000..d3a7708d156
--- /dev/null
+++ b/pkgs/applications/editors/zed/deps.json
@@ -0,0 +1,6 @@
+[ { "body-parser": "~1.6.3" }
+, { "express": "~4.8.3" }
+, { "request": "~2.34.0" }
+, { "tar": "~0.1.19" }
+, { "ws": "~0.4.32" }
+]
diff --git a/pkgs/applications/editors/zed/deps.sh b/pkgs/applications/editors/zed/deps.sh
new file mode 100755
index 00000000000..6d2bf29532e
--- /dev/null
+++ b/pkgs/applications/editors/zed/deps.sh
@@ -0,0 +1,7 @@
+#!/usr/bin/env nix-shell
+#! nix-shell -i bash -p nodePackages.node2nix
+
+node2nix -6 -i deps.json \
+ -e ../../../development/node-packages/node-env.nix \
+ --no-copy-node-env \
+ -c node.nix
diff --git a/pkgs/applications/editors/zed/node-packages.nix b/pkgs/applications/editors/zed/node-packages.nix
new file mode 100644
index 00000000000..5aaa75b6c91
--- /dev/null
+++ b/pkgs/applications/editors/zed/node-packages.nix
@@ -0,0 +1,877 @@
+# This file has been generated by node2nix 1.3.0. Do not edit!
+
+{nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
+
+let
+ sources = {
+ "bytes-1.0.0" = {
+ name = "bytes";
+ packageName = "bytes";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz";
+ sha1 = "3569ede8ba34315fab99c3e92cb04c7220de1fa8";
+ };
+ };
+ "depd-0.4.4" = {
+ name = "depd";
+ packageName = "depd";
+ version = "0.4.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/depd/-/depd-0.4.4.tgz";
+ sha1 = "07091fae75f97828d89b4a02a2d4778f0e7c0662";
+ };
+ };
+ "iconv-lite-0.4.4" = {
+ name = "iconv-lite";
+ packageName = "iconv-lite";
+ version = "0.4.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.4.tgz";
+ sha1 = "e95f2e41db0735fc21652f7827a5ee32e63c83a8";
+ };
+ };
+ "media-typer-0.2.0" = {
+ name = "media-typer";
+ packageName = "media-typer";
+ version = "0.2.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/media-typer/-/media-typer-0.2.0.tgz";
+ sha1 = "d8a065213adfeaa2e76321a2b6dda36ff6335984";
+ };
+ };
+ "on-finished-2.1.0" = {
+ name = "on-finished";
+ packageName = "on-finished";
+ version = "2.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/on-finished/-/on-finished-2.1.0.tgz";
+ sha1 = "0c539f09291e8ffadde0c8a25850fb2cedc7022d";
+ };
+ };
+ "qs-2.2.2" = {
+ name = "qs";
+ packageName = "qs";
+ version = "2.2.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/qs/-/qs-2.2.2.tgz";
+ sha1 = "dfe783f1854b1ac2b3ade92775ad03e27e03218c";
+ };
+ };
+ "raw-body-1.3.0" = {
+ name = "raw-body";
+ packageName = "raw-body";
+ version = "1.3.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/raw-body/-/raw-body-1.3.0.tgz";
+ sha1 = "978230a156a5548f42eef14de22d0f4f610083d1";
+ };
+ };
+ "type-is-1.3.2" = {
+ name = "type-is";
+ packageName = "type-is";
+ version = "1.3.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/type-is/-/type-is-1.3.2.tgz";
+ sha1 = "4f2a5dc58775ca1630250afc7186f8b36309d1bb";
+ };
+ };
+ "ee-first-1.0.5" = {
+ name = "ee-first";
+ packageName = "ee-first";
+ version = "1.0.5";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ee-first/-/ee-first-1.0.5.tgz";
+ sha1 = "8c9b212898d8cd9f1a9436650ce7be202c9e9ff0";
+ };
+ };
+ "mime-types-1.0.2" = {
+ name = "mime-types";
+ packageName = "mime-types";
+ version = "1.0.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/mime-types/-/mime-types-1.0.2.tgz";
+ sha1 = "995ae1392ab8affcbfcb2641dd054e943c0d5dce";
+ };
+ };
+ "accepts-1.0.7" = {
+ name = "accepts";
+ packageName = "accepts";
+ version = "1.0.7";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/accepts/-/accepts-1.0.7.tgz";
+ sha1 = "5b501fb4f0704309964ccdb048172541208dab1a";
+ };
+ };
+ "buffer-crc32-0.2.3" = {
+ name = "buffer-crc32";
+ packageName = "buffer-crc32";
+ version = "0.2.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.3.tgz";
+ sha1 = "bb54519e95d107cbd2400e76d0cab1467336d921";
+ };
+ };
+ "debug-1.0.4" = {
+ name = "debug";
+ packageName = "debug";
+ version = "1.0.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/debug/-/debug-1.0.4.tgz";
+ sha1 = "5b9c256bd54b6ec02283176fa8a0ede6d154cbf8";
+ };
+ };
+ "escape-html-1.0.1" = {
+ name = "escape-html";
+ packageName = "escape-html";
+ version = "1.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz";
+ sha1 = "181a286ead397a39a92857cfb1d43052e356bff0";
+ };
+ };
+ "finalhandler-0.1.0" = {
+ name = "finalhandler";
+ packageName = "finalhandler";
+ version = "0.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/finalhandler/-/finalhandler-0.1.0.tgz";
+ sha1 = "da05bbc4f5f4a30c84ce1d91f3c154007c4e9daa";
+ };
+ };
+ "methods-1.1.0" = {
+ name = "methods";
+ packageName = "methods";
+ version = "1.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/methods/-/methods-1.1.0.tgz";
+ sha1 = "5dca4ee12df52ff3b056145986a8f01cbc86436f";
+ };
+ };
+ "parseurl-1.3.2" = {
+ name = "parseurl";
+ packageName = "parseurl";
+ version = "1.3.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz";
+ sha1 = "fc289d4ed8993119460c156253262cdc8de65bf3";
+ };
+ };
+ "path-to-regexp-0.1.3" = {
+ name = "path-to-regexp";
+ packageName = "path-to-regexp";
+ version = "0.1.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz";
+ sha1 = "21b9ab82274279de25b156ea08fd12ca51b8aecb";
+ };
+ };
+ "proxy-addr-1.0.1" = {
+ name = "proxy-addr";
+ packageName = "proxy-addr";
+ version = "1.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.1.tgz";
+ sha1 = "c7c566d5eb4e3fad67eeb9c77c5558ccc39b88a8";
+ };
+ };
+ "range-parser-1.0.0" = {
+ name = "range-parser";
+ packageName = "range-parser";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/range-parser/-/range-parser-1.0.0.tgz";
+ sha1 = "a4b264cfe0be5ce36abe3765ac9c2a248746dbc0";
+ };
+ };
+ "send-0.8.5" = {
+ name = "send";
+ packageName = "send";
+ version = "0.8.5";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/send/-/send-0.8.5.tgz";
+ sha1 = "37f708216e6f50c175e74c69fec53484e2fd82c7";
+ };
+ };
+ "serve-static-1.5.4" = {
+ name = "serve-static";
+ packageName = "serve-static";
+ version = "1.5.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/serve-static/-/serve-static-1.5.4.tgz";
+ sha1 = "819fb37ae46bd02dd520b77fcf7fd8f5112f9782";
+ };
+ };
+ "vary-0.1.0" = {
+ name = "vary";
+ packageName = "vary";
+ version = "0.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/vary/-/vary-0.1.0.tgz";
+ sha1 = "df0945899e93c0cc5bd18cc8321d9d21e74f6176";
+ };
+ };
+ "cookie-0.1.2" = {
+ name = "cookie";
+ packageName = "cookie";
+ version = "0.1.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz";
+ sha1 = "72fec3d24e48a3432073d90c12642005061004b1";
+ };
+ };
+ "fresh-0.2.2" = {
+ name = "fresh";
+ packageName = "fresh";
+ version = "0.2.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/fresh/-/fresh-0.2.2.tgz";
+ sha1 = "9731dcf5678c7faeb44fb903c4f72df55187fa77";
+ };
+ };
+ "cookie-signature-1.0.4" = {
+ name = "cookie-signature";
+ packageName = "cookie-signature";
+ version = "1.0.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.4.tgz";
+ sha1 = "0edd22286e3a111b9a2a70db363e925e867f6aca";
+ };
+ };
+ "merge-descriptors-0.0.2" = {
+ name = "merge-descriptors";
+ packageName = "merge-descriptors";
+ version = "0.0.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-0.0.2.tgz";
+ sha1 = "c36a52a781437513c57275f39dd9d317514ac8c7";
+ };
+ };
+ "utils-merge-1.0.0" = {
+ name = "utils-merge";
+ packageName = "utils-merge";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz";
+ sha1 = "0294fb922bb9375153541c4f7096231f287c8af8";
+ };
+ };
+ "negotiator-0.4.7" = {
+ name = "negotiator";
+ packageName = "negotiator";
+ version = "0.4.7";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/negotiator/-/negotiator-0.4.7.tgz";
+ sha1 = "a4160f7177ec806738631d0d3052325da42abdc8";
+ };
+ };
+ "ms-0.6.2" = {
+ name = "ms";
+ packageName = "ms";
+ version = "0.6.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ms/-/ms-0.6.2.tgz";
+ sha1 = "d89c2124c6fdc1353d65a8b77bf1aac4b193708c";
+ };
+ };
+ "ipaddr.js-0.1.2" = {
+ name = "ipaddr.js";
+ packageName = "ipaddr.js";
+ version = "0.1.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-0.1.2.tgz";
+ sha1 = "6a1fd3d854f5002965c34d7bbcd9b4a8d4b0467e";
+ };
+ };
+ "destroy-1.0.3" = {
+ name = "destroy";
+ packageName = "destroy";
+ version = "1.0.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz";
+ sha1 = "b433b4724e71fd8551d9885174851c5fc377e2c9";
+ };
+ };
+ "mime-1.2.11" = {
+ name = "mime";
+ packageName = "mime";
+ version = "1.2.11";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
+ sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
+ };
+ };
+ "qs-0.6.6" = {
+ name = "qs";
+ packageName = "qs";
+ version = "0.6.6";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/qs/-/qs-0.6.6.tgz";
+ sha1 = "6e015098ff51968b8a3c819001d5f2c89bc4b107";
+ };
+ };
+ "json-stringify-safe-5.0.1" = {
+ name = "json-stringify-safe";
+ packageName = "json-stringify-safe";
+ version = "5.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
+ sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
+ };
+ };
+ "forever-agent-0.5.2" = {
+ name = "forever-agent";
+ packageName = "forever-agent";
+ version = "0.5.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz";
+ sha1 = "6d0e09c4921f94a27f63d3b49c5feff1ea4c5130";
+ };
+ };
+ "node-uuid-1.4.8" = {
+ name = "node-uuid";
+ packageName = "node-uuid";
+ version = "1.4.8";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz";
+ sha1 = "b040eb0923968afabf8d32fb1f17f1167fdab907";
+ };
+ };
+ "tough-cookie-2.3.3" = {
+ name = "tough-cookie";
+ packageName = "tough-cookie";
+ version = "2.3.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.3.tgz";
+ sha1 = "0b618a5565b6dea90bf3425d04d55edc475a7561";
+ };
+ };
+ "form-data-0.1.4" = {
+ name = "form-data";
+ packageName = "form-data";
+ version = "0.1.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/form-data/-/form-data-0.1.4.tgz";
+ sha1 = "91abd788aba9702b1aabfa8bc01031a2ac9e3b12";
+ };
+ };
+ "tunnel-agent-0.3.0" = {
+ name = "tunnel-agent";
+ packageName = "tunnel-agent";
+ version = "0.3.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.3.0.tgz";
+ sha1 = "ad681b68f5321ad2827c4cfb1b7d5df2cfe942ee";
+ };
+ };
+ "http-signature-0.10.1" = {
+ name = "http-signature";
+ packageName = "http-signature";
+ version = "0.10.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz";
+ sha1 = "4fbdac132559aa8323121e540779c0a012b27e66";
+ };
+ };
+ "oauth-sign-0.3.0" = {
+ name = "oauth-sign";
+ packageName = "oauth-sign";
+ version = "0.3.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.3.0.tgz";
+ sha1 = "cb540f93bb2b22a7d5941691a288d60e8ea9386e";
+ };
+ };
+ "hawk-1.0.0" = {
+ name = "hawk";
+ packageName = "hawk";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/hawk/-/hawk-1.0.0.tgz";
+ sha1 = "b90bb169807285411da7ffcb8dd2598502d3b52d";
+ };
+ };
+ "aws-sign2-0.5.0" = {
+ name = "aws-sign2";
+ packageName = "aws-sign2";
+ version = "0.5.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
+ sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
+ };
+ };
+ "punycode-1.4.1" = {
+ name = "punycode";
+ packageName = "punycode";
+ version = "1.4.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz";
+ sha1 = "c0d5a63b2718800ad8e1eb0fa5269c84dd41845e";
+ };
+ };
+ "combined-stream-0.0.7" = {
+ name = "combined-stream";
+ packageName = "combined-stream";
+ version = "0.0.7";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
+ sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
+ };
+ };
+ "async-0.9.2" = {
+ name = "async";
+ packageName = "async";
+ version = "0.9.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/async/-/async-0.9.2.tgz";
+ sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
+ };
+ };
+ "delayed-stream-0.0.5" = {
+ name = "delayed-stream";
+ packageName = "delayed-stream";
+ version = "0.0.5";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz";
+ sha1 = "d4b1f43a93e8296dfe02694f4680bc37a313c73f";
+ };
+ };
+ "assert-plus-0.1.5" = {
+ name = "assert-plus";
+ packageName = "assert-plus";
+ version = "0.1.5";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
+ sha1 = "ee74009413002d84cec7219c6ac811812e723160";
+ };
+ };
+ "asn1-0.1.11" = {
+ name = "asn1";
+ packageName = "asn1";
+ version = "0.1.11";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
+ sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
+ };
+ };
+ "ctype-0.5.3" = {
+ name = "ctype";
+ packageName = "ctype";
+ version = "0.5.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
+ sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
+ };
+ };
+ "hoek-0.9.1" = {
+ name = "hoek";
+ packageName = "hoek";
+ version = "0.9.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz";
+ sha1 = "3d322462badf07716ea7eb85baf88079cddce505";
+ };
+ };
+ "boom-0.4.2" = {
+ name = "boom";
+ packageName = "boom";
+ version = "0.4.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/boom/-/boom-0.4.2.tgz";
+ sha1 = "7a636e9ded4efcefb19cef4947a3c67dfaee911b";
+ };
+ };
+ "cryptiles-0.2.2" = {
+ name = "cryptiles";
+ packageName = "cryptiles";
+ version = "0.2.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz";
+ sha1 = "ed91ff1f17ad13d3748288594f8a48a0d26f325c";
+ };
+ };
+ "sntp-0.2.4" = {
+ name = "sntp";
+ packageName = "sntp";
+ version = "0.2.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz";
+ sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
+ };
+ };
+ "block-stream-0.0.9" = {
+ name = "block-stream";
+ packageName = "block-stream";
+ version = "0.0.9";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz";
+ sha1 = "13ebfe778a03205cfe03751481ebb4b3300c126a";
+ };
+ };
+ "fstream-0.1.31" = {
+ name = "fstream";
+ packageName = "fstream";
+ version = "0.1.31";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
+ sha1 = "7337f058fbbbbefa8c9f561a28cab0849202c988";
+ };
+ };
+ "inherits-2.0.3" = {
+ name = "inherits";
+ packageName = "inherits";
+ version = "2.0.3";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz";
+ sha1 = "633c2c83e3da42a502f52466022480f4208261de";
+ };
+ };
+ "graceful-fs-3.0.11" = {
+ name = "graceful-fs";
+ packageName = "graceful-fs";
+ version = "3.0.11";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.11.tgz";
+ sha1 = "7613c778a1afea62f25c630a086d7f3acbbdd818";
+ };
+ };
+ "mkdirp-0.5.1" = {
+ name = "mkdirp";
+ packageName = "mkdirp";
+ version = "0.5.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
+ sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
+ };
+ };
+ "rimraf-2.6.2" = {
+ name = "rimraf";
+ packageName = "rimraf";
+ version = "2.6.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz";
+ sha512 = "3kmrqh8xli7rzfm8wc6j9lp0c6vml172iv3z088an9xlwl1xvkvh3fn92za66ms4c9yww80qa5kan31k1z1ypqvkchmh1mznb09xdwn";
+ };
+ };
+ "natives-1.1.0" = {
+ name = "natives";
+ packageName = "natives";
+ version = "1.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/natives/-/natives-1.1.0.tgz";
+ sha1 = "e9ff841418a6b2ec7a495e939984f78f163e6e31";
+ };
+ };
+ "minimist-0.0.8" = {
+ name = "minimist";
+ packageName = "minimist";
+ version = "0.0.8";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
+ sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
+ };
+ };
+ "glob-7.1.2" = {
+ name = "glob";
+ packageName = "glob";
+ version = "7.1.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz";
+ sha512 = "08vjxzixc9dwc1hn5pd60yyij98krk2pr758aiga97r02ncvaqx1hidi95wk470k1v84gg4alls9bm52m77174z128bgf13b61x951h";
+ };
+ };
+ "fs.realpath-1.0.0" = {
+ name = "fs.realpath";
+ packageName = "fs.realpath";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz";
+ sha1 = "1504ad2523158caa40db4a2787cb01411994ea4f";
+ };
+ };
+ "inflight-1.0.6" = {
+ name = "inflight";
+ packageName = "inflight";
+ version = "1.0.6";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz";
+ sha1 = "49bd6331d7d02d0c09bc910a1075ba8165b56df9";
+ };
+ };
+ "minimatch-3.0.4" = {
+ name = "minimatch";
+ packageName = "minimatch";
+ version = "3.0.4";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
+ sha512 = "1879a3j85h92ypvb7lpv1dqpcxl49rqnbgs5la18zmj1yqhwl60c2m74254wbr5pp3znckqpkg9dvjyrz6hfz8b9vag5a3j910db4f8";
+ };
+ };
+ "once-1.4.0" = {
+ name = "once";
+ packageName = "once";
+ version = "1.4.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/once/-/once-1.4.0.tgz";
+ sha1 = "583b1aa775961d4b113ac17d9c50baef9dd76bd1";
+ };
+ };
+ "path-is-absolute-1.0.1" = {
+ name = "path-is-absolute";
+ packageName = "path-is-absolute";
+ version = "1.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz";
+ sha1 = "174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f";
+ };
+ };
+ "wrappy-1.0.2" = {
+ name = "wrappy";
+ packageName = "wrappy";
+ version = "1.0.2";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz";
+ sha1 = "b5243d8f3ec1aa35f1364605bc0d1036e30ab69f";
+ };
+ };
+ "brace-expansion-1.1.8" = {
+ name = "brace-expansion";
+ packageName = "brace-expansion";
+ version = "1.1.8";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz";
+ sha1 = "c07b211c7c952ec1f8efd51a77ef0d1d3990a292";
+ };
+ };
+ "balanced-match-1.0.0" = {
+ name = "balanced-match";
+ packageName = "balanced-match";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz";
+ sha1 = "89b4d199ab2bee49de164ea02b89ce462d71b767";
+ };
+ };
+ "concat-map-0.0.1" = {
+ name = "concat-map";
+ packageName = "concat-map";
+ version = "0.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
+ sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
+ };
+ };
+ "commander-2.1.0" = {
+ name = "commander";
+ packageName = "commander";
+ version = "2.1.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/commander/-/commander-2.1.0.tgz";
+ sha1 = "d121bbae860d9992a3d517ba96f56588e47c6781";
+ };
+ };
+ "nan-1.0.0" = {
+ name = "nan";
+ packageName = "nan";
+ version = "1.0.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/nan/-/nan-1.0.0.tgz";
+ sha1 = "ae24f8850818d662fcab5acf7f3b95bfaa2ccf38";
+ };
+ };
+ "tinycolor-0.0.1" = {
+ name = "tinycolor";
+ packageName = "tinycolor";
+ version = "0.0.1";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz";
+ sha1 = "320b5a52d83abb5978d81a3e887d4aefb15a6164";
+ };
+ };
+ "options-0.0.6" = {
+ name = "options";
+ packageName = "options";
+ version = "0.0.6";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/options/-/options-0.0.6.tgz";
+ sha1 = "ec22d312806bb53e731773e7cdaefcf1c643128f";
+ };
+ };
+ };
+in
+{
+ "body-parser-~1.6.3" = nodeEnv.buildNodePackage {
+ name = "body-parser";
+ packageName = "body-parser";
+ version = "1.6.7";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/body-parser/-/body-parser-1.6.7.tgz";
+ sha1 = "82306becadf44543e826b3907eae93f0237c4e5c";
+ };
+ dependencies = [
+ sources."bytes-1.0.0"
+ sources."depd-0.4.4"
+ sources."iconv-lite-0.4.4"
+ sources."media-typer-0.2.0"
+ sources."on-finished-2.1.0"
+ sources."qs-2.2.2"
+ sources."raw-body-1.3.0"
+ sources."type-is-1.3.2"
+ sources."ee-first-1.0.5"
+ sources."mime-types-1.0.2"
+ ];
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "Node.js body parsing middleware";
+ homepage = https://github.com/expressjs/body-parser;
+ license = "MIT";
+ };
+ production = true;
+ };
+ "express-~4.8.3" = nodeEnv.buildNodePackage {
+ name = "express";
+ packageName = "express";
+ version = "4.8.8";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/express/-/express-4.8.8.tgz";
+ sha1 = "6aba348ccdfa87608040b12ca0010107a0aac28e";
+ };
+ dependencies = [
+ sources."accepts-1.0.7"
+ sources."buffer-crc32-0.2.3"
+ sources."debug-1.0.4"
+ sources."depd-0.4.4"
+ sources."escape-html-1.0.1"
+ sources."finalhandler-0.1.0"
+ sources."media-typer-0.2.0"
+ sources."methods-1.1.0"
+ sources."parseurl-1.3.2"
+ sources."path-to-regexp-0.1.3"
+ sources."proxy-addr-1.0.1"
+ sources."qs-2.2.2"
+ sources."range-parser-1.0.0"
+ sources."send-0.8.5"
+ sources."serve-static-1.5.4"
+ sources."type-is-1.3.2"
+ sources."vary-0.1.0"
+ sources."cookie-0.1.2"
+ sources."fresh-0.2.2"
+ sources."cookie-signature-1.0.4"
+ sources."merge-descriptors-0.0.2"
+ sources."utils-merge-1.0.0"
+ sources."mime-types-1.0.2"
+ sources."negotiator-0.4.7"
+ sources."ms-0.6.2"
+ sources."ipaddr.js-0.1.2"
+ sources."destroy-1.0.3"
+ sources."mime-1.2.11"
+ sources."on-finished-2.1.0"
+ sources."ee-first-1.0.5"
+ ];
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "Fast, unopinionated, minimalist web framework";
+ homepage = http://expressjs.com/;
+ license = "MIT";
+ };
+ production = true;
+ };
+ "request-~2.34.0" = nodeEnv.buildNodePackage {
+ name = "request";
+ packageName = "request";
+ version = "2.34.0";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/request/-/request-2.34.0.tgz";
+ sha1 = "b5d8b9526add4a2d4629f4d417124573996445ae";
+ };
+ dependencies = [
+ sources."qs-0.6.6"
+ sources."json-stringify-safe-5.0.1"
+ sources."forever-agent-0.5.2"
+ sources."node-uuid-1.4.8"
+ sources."mime-1.2.11"
+ sources."tough-cookie-2.3.3"
+ sources."form-data-0.1.4"
+ sources."tunnel-agent-0.3.0"
+ sources."http-signature-0.10.1"
+ sources."oauth-sign-0.3.0"
+ sources."hawk-1.0.0"
+ sources."aws-sign2-0.5.0"
+ sources."punycode-1.4.1"
+ sources."combined-stream-0.0.7"
+ sources."async-0.9.2"
+ sources."delayed-stream-0.0.5"
+ sources."assert-plus-0.1.5"
+ sources."asn1-0.1.11"
+ sources."ctype-0.5.3"
+ sources."hoek-0.9.1"
+ sources."boom-0.4.2"
+ sources."cryptiles-0.2.2"
+ sources."sntp-0.2.4"
+ ];
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "Simplified HTTP request client.";
+ homepage = https://github.com/mikeal/request;
+ license = "Apache, Version 2.0";
+ };
+ production = true;
+ };
+ "tar-~0.1.19" = nodeEnv.buildNodePackage {
+ name = "tar";
+ packageName = "tar";
+ version = "0.1.20";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/tar/-/tar-0.1.20.tgz";
+ sha1 = "42940bae5b5f22c74483699126f9f3f27449cb13";
+ };
+ dependencies = [
+ sources."block-stream-0.0.9"
+ sources."fstream-0.1.31"
+ sources."inherits-2.0.3"
+ sources."graceful-fs-3.0.11"
+ sources."mkdirp-0.5.1"
+ sources."rimraf-2.6.2"
+ sources."natives-1.1.0"
+ sources."minimist-0.0.8"
+ sources."glob-7.1.2"
+ sources."fs.realpath-1.0.0"
+ sources."inflight-1.0.6"
+ sources."minimatch-3.0.4"
+ sources."once-1.4.0"
+ sources."path-is-absolute-1.0.1"
+ sources."wrappy-1.0.2"
+ sources."brace-expansion-1.1.8"
+ sources."balanced-match-1.0.0"
+ sources."concat-map-0.0.1"
+ ];
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "tar for node";
+ homepage = https://github.com/isaacs/node-tar;
+ license = "BSD";
+ };
+ production = true;
+ };
+ "ws-~0.4.32" = nodeEnv.buildNodePackage {
+ name = "ws";
+ packageName = "ws";
+ version = "0.4.32";
+ src = fetchurl {
+ url = "https://registry.npmjs.org/ws/-/ws-0.4.32.tgz";
+ sha1 = "787a6154414f3c99ed83c5772153b20feb0cec32";
+ };
+ dependencies = [
+ sources."commander-2.1.0"
+ sources."nan-1.0.0"
+ sources."tinycolor-0.0.1"
+ sources."options-0.0.6"
+ ];
+ buildInputs = globalBuildInputs;
+ meta = {
+ description = "simple to use, blazing fast and thoroughly tested websocket client, server and console for node.js, up-to-date against RFC-6455";
+ homepage = https://github.com/einaros/ws;
+ };
+ production = true;
+ };
+}
\ No newline at end of file
diff --git a/pkgs/applications/editors/zed/node.nix b/pkgs/applications/editors/zed/node.nix
index e74ff1ec45f..ff0bf1eb805 100644
--- a/pkgs/applications/editors/zed/node.nix
+++ b/pkgs/applications/editors/zed/node.nix
@@ -1,1825 +1,16 @@
-{ self, fetchurl, fetchgit ? null, lib }:
+# This file has been generated by node2nix 1.3.0. Do not edit!
-{
- by-spec."accepts"."~1.2.7" =
- self.by-version."accepts"."1.2.7";
- by-version."accepts"."1.2.7" = lib.makeOverridable self.buildNodePackage {
- name = "accepts-1.2.7";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/accepts/-/accepts-1.2.7.tgz";
- name = "accepts-1.2.7.tgz";
- sha1 = "efea24e36e0b5b93d001a7598ac441c32ef56003";
- })
- ];
- buildInputs =
- (self.nativeDeps."accepts" or []);
- deps = {
- "mime-types-2.0.12" = self.by-version."mime-types"."2.0.12";
- "negotiator-0.5.3" = self.by-version."negotiator"."0.5.3";
- };
- peerDependencies = [
- ];
- passthru.names = [ "accepts" ];
- };
- by-spec."asn1"."0.1.11" =
- self.by-version."asn1"."0.1.11";
- by-version."asn1"."0.1.11" = lib.makeOverridable self.buildNodePackage {
- name = "asn1-0.1.11";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/asn1/-/asn1-0.1.11.tgz";
- name = "asn1-0.1.11.tgz";
- sha1 = "559be18376d08a4ec4dbe80877d27818639b2df7";
- })
- ];
- buildInputs =
- (self.nativeDeps."asn1" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "asn1" ];
- };
- by-spec."assert-plus"."^0.1.5" =
- self.by-version."assert-plus"."0.1.5";
- by-version."assert-plus"."0.1.5" = lib.makeOverridable self.buildNodePackage {
- name = "assert-plus-0.1.5";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/assert-plus/-/assert-plus-0.1.5.tgz";
- name = "assert-plus-0.1.5.tgz";
- sha1 = "ee74009413002d84cec7219c6ac811812e723160";
- })
- ];
- buildInputs =
- (self.nativeDeps."assert-plus" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "assert-plus" ];
- };
- by-spec."async"."~0.9.0" =
- self.by-version."async"."0.9.2";
- by-version."async"."0.9.2" = lib.makeOverridable self.buildNodePackage {
- name = "async-0.9.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/async/-/async-0.9.2.tgz";
- name = "async-0.9.2.tgz";
- sha1 = "aea74d5e61c1f899613bf64bda66d4c78f2fd17d";
- })
- ];
- buildInputs =
- (self.nativeDeps."async" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "async" ];
- };
- by-spec."aws-sign2"."~0.5.0" =
- self.by-version."aws-sign2"."0.5.0";
- by-version."aws-sign2"."0.5.0" = lib.makeOverridable self.buildNodePackage {
- name = "aws-sign2-0.5.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/aws-sign2/-/aws-sign2-0.5.0.tgz";
- name = "aws-sign2-0.5.0.tgz";
- sha1 = "c57103f7a17fc037f02d7c2e64b602ea223f7d63";
- })
- ];
- buildInputs =
- (self.nativeDeps."aws-sign2" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "aws-sign2" ];
- };
- by-spec."balanced-match"."^0.2.0" =
- self.by-version."balanced-match"."0.2.0";
- by-version."balanced-match"."0.2.0" = lib.makeOverridable self.buildNodePackage {
- name = "balanced-match-0.2.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/balanced-match/-/balanced-match-0.2.0.tgz";
- name = "balanced-match-0.2.0.tgz";
- sha1 = "38f6730c03aab6d5edbb52bd934885e756d71674";
- })
- ];
- buildInputs =
- (self.nativeDeps."balanced-match" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "balanced-match" ];
- };
- by-spec."block-stream"."*" =
- self.by-version."block-stream"."0.0.8";
- by-version."block-stream"."0.0.8" = lib.makeOverridable self.buildNodePackage {
- name = "block-stream-0.0.8";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/block-stream/-/block-stream-0.0.8.tgz";
- name = "block-stream-0.0.8.tgz";
- sha1 = "0688f46da2bbf9cff0c4f68225a0cb95cbe8a46b";
- })
- ];
- buildInputs =
- (self.nativeDeps."block-stream" or []);
- deps = {
- "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "block-stream" ];
- };
- by-spec."body-parser"."^1.6.3" =
- self.by-version."body-parser"."1.12.4";
- by-version."body-parser"."1.12.4" = lib.makeOverridable self.buildNodePackage {
- name = "body-parser-1.12.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/body-parser/-/body-parser-1.12.4.tgz";
- name = "body-parser-1.12.4.tgz";
- sha1 = "090700c4ba28862a8520ef378395fdee5f61c229";
- })
- ];
- buildInputs =
- (self.nativeDeps."body-parser" or []);
- deps = {
- "bytes-1.0.0" = self.by-version."bytes"."1.0.0";
- "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
- "debug-2.2.0" = self.by-version."debug"."2.2.0";
- "depd-1.0.1" = self.by-version."depd"."1.0.1";
- "iconv-lite-0.4.8" = self.by-version."iconv-lite"."0.4.8";
- "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
- "qs-2.4.2" = self.by-version."qs"."2.4.2";
- "raw-body-2.0.1" = self.by-version."raw-body"."2.0.1";
- "type-is-1.6.2" = self.by-version."type-is"."1.6.2";
- };
- peerDependencies = [
- ];
- passthru.names = [ "body-parser" ];
- };
- "body-parser" = self.by-version."body-parser"."1.12.4";
- by-spec."boom"."0.4.x" =
- self.by-version."boom"."0.4.2";
- by-version."boom"."0.4.2" = lib.makeOverridable self.buildNodePackage {
- name = "boom-0.4.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/boom/-/boom-0.4.2.tgz";
- name = "boom-0.4.2.tgz";
- sha1 = "7a636e9ded4efcefb19cef4947a3c67dfaee911b";
- })
- ];
- buildInputs =
- (self.nativeDeps."boom" or []);
- deps = {
- "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "boom" ];
- };
- by-spec."brace-expansion"."^1.0.0" =
- self.by-version."brace-expansion"."1.1.0";
- by-version."brace-expansion"."1.1.0" = lib.makeOverridable self.buildNodePackage {
- name = "brace-expansion-1.1.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.0.tgz";
- name = "brace-expansion-1.1.0.tgz";
- sha1 = "c9b7d03c03f37bc704be100e522b40db8f6cfcd9";
- })
- ];
- buildInputs =
- (self.nativeDeps."brace-expansion" or []);
- deps = {
- "balanced-match-0.2.0" = self.by-version."balanced-match"."0.2.0";
- "concat-map-0.0.1" = self.by-version."concat-map"."0.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "brace-expansion" ];
- };
- by-spec."bytes"."1.0.0" =
- self.by-version."bytes"."1.0.0";
- by-version."bytes"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "bytes-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz";
- name = "bytes-1.0.0.tgz";
- sha1 = "3569ede8ba34315fab99c3e92cb04c7220de1fa8";
- })
- ];
- buildInputs =
- (self.nativeDeps."bytes" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "bytes" ];
- };
- by-spec."bytes"."2.0.1" =
- self.by-version."bytes"."2.0.1";
- by-version."bytes"."2.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "bytes-2.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/bytes/-/bytes-2.0.1.tgz";
- name = "bytes-2.0.1.tgz";
- sha1 = "673743059be43d929f9c225dd7363ee0f8b15d97";
- })
- ];
- buildInputs =
- (self.nativeDeps."bytes" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "bytes" ];
- };
- by-spec."combined-stream"."~0.0.4" =
- self.by-version."combined-stream"."0.0.7";
- by-version."combined-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
- name = "combined-stream-0.0.7";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
- name = "combined-stream-0.0.7.tgz";
- sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
- })
- ];
- buildInputs =
- (self.nativeDeps."combined-stream" or []);
- deps = {
- "delayed-stream-0.0.5" = self.by-version."delayed-stream"."0.0.5";
- };
- peerDependencies = [
- ];
- passthru.names = [ "combined-stream" ];
- };
- by-spec."commander"."~2.1.0" =
- self.by-version."commander"."2.1.0";
- by-version."commander"."2.1.0" = lib.makeOverridable self.buildNodePackage {
- name = "commander-2.1.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/commander/-/commander-2.1.0.tgz";
- name = "commander-2.1.0.tgz";
- sha1 = "d121bbae860d9992a3d517ba96f56588e47c6781";
- })
- ];
- buildInputs =
- (self.nativeDeps."commander" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "commander" ];
- };
- by-spec."concat-map"."0.0.1" =
- self.by-version."concat-map"."0.0.1";
- by-version."concat-map"."0.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "concat-map-0.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz";
- name = "concat-map-0.0.1.tgz";
- sha1 = "d8a96bd77fd68df7793a73036a3ba0d5405d477b";
- })
- ];
- buildInputs =
- (self.nativeDeps."concat-map" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "concat-map" ];
- };
- by-spec."content-disposition"."0.5.0" =
- self.by-version."content-disposition"."0.5.0";
- by-version."content-disposition"."0.5.0" = lib.makeOverridable self.buildNodePackage {
- name = "content-disposition-0.5.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/content-disposition/-/content-disposition-0.5.0.tgz";
- name = "content-disposition-0.5.0.tgz";
- sha1 = "4284fe6ae0630874639e44e80a418c2934135e9e";
- })
- ];
- buildInputs =
- (self.nativeDeps."content-disposition" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "content-disposition" ];
- };
- by-spec."content-type"."~1.0.1" =
- self.by-version."content-type"."1.0.1";
- by-version."content-type"."1.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "content-type-1.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/content-type/-/content-type-1.0.1.tgz";
- name = "content-type-1.0.1.tgz";
- sha1 = "a19d2247327dc038050ce622b7a154ec59c5e600";
- })
- ];
- buildInputs =
- (self.nativeDeps."content-type" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "content-type" ];
- };
- by-spec."cookie"."0.1.2" =
- self.by-version."cookie"."0.1.2";
- by-version."cookie"."0.1.2" = lib.makeOverridable self.buildNodePackage {
- name = "cookie-0.1.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/cookie/-/cookie-0.1.2.tgz";
- name = "cookie-0.1.2.tgz";
- sha1 = "72fec3d24e48a3432073d90c12642005061004b1";
- })
- ];
- buildInputs =
- (self.nativeDeps."cookie" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "cookie" ];
- };
- by-spec."cookie-signature"."1.0.6" =
- self.by-version."cookie-signature"."1.0.6";
- by-version."cookie-signature"."1.0.6" = lib.makeOverridable self.buildNodePackage {
- name = "cookie-signature-1.0.6";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz";
- name = "cookie-signature-1.0.6.tgz";
- sha1 = "e303a882b342cc3ee8ca513a79999734dab3ae2c";
- })
- ];
- buildInputs =
- (self.nativeDeps."cookie-signature" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "cookie-signature" ];
- };
- by-spec."crc"."3.2.1" =
- self.by-version."crc"."3.2.1";
- by-version."crc"."3.2.1" = lib.makeOverridable self.buildNodePackage {
- name = "crc-3.2.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/crc/-/crc-3.2.1.tgz";
- name = "crc-3.2.1.tgz";
- sha1 = "5d9c8fb77a245cd5eca291e5d2d005334bab0082";
- })
- ];
- buildInputs =
- (self.nativeDeps."crc" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "crc" ];
- };
- by-spec."cryptiles"."0.2.x" =
- self.by-version."cryptiles"."0.2.2";
- by-version."cryptiles"."0.2.2" = lib.makeOverridable self.buildNodePackage {
- name = "cryptiles-0.2.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/cryptiles/-/cryptiles-0.2.2.tgz";
- name = "cryptiles-0.2.2.tgz";
- sha1 = "ed91ff1f17ad13d3748288594f8a48a0d26f325c";
- })
- ];
- buildInputs =
- (self.nativeDeps."cryptiles" or []);
- deps = {
- "boom-0.4.2" = self.by-version."boom"."0.4.2";
- };
- peerDependencies = [
- ];
- passthru.names = [ "cryptiles" ];
- };
- by-spec."ctype"."0.5.3" =
- self.by-version."ctype"."0.5.3";
- by-version."ctype"."0.5.3" = lib.makeOverridable self.buildNodePackage {
- name = "ctype-0.5.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/ctype/-/ctype-0.5.3.tgz";
- name = "ctype-0.5.3.tgz";
- sha1 = "82c18c2461f74114ef16c135224ad0b9144ca12f";
- })
- ];
- buildInputs =
- (self.nativeDeps."ctype" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "ctype" ];
- };
- by-spec."debug"."~2.2.0" =
- self.by-version."debug"."2.2.0";
- by-version."debug"."2.2.0" = lib.makeOverridable self.buildNodePackage {
- name = "debug-2.2.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/debug/-/debug-2.2.0.tgz";
- name = "debug-2.2.0.tgz";
- sha1 = "f87057e995b1a1f6ae6a4960664137bc56f039da";
- })
- ];
- buildInputs =
- (self.nativeDeps."debug" or []);
- deps = {
- "ms-0.7.1" = self.by-version."ms"."0.7.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "debug" ];
- };
- by-spec."delayed-stream"."0.0.5" =
- self.by-version."delayed-stream"."0.0.5";
- by-version."delayed-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
- name = "delayed-stream-0.0.5";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/delayed-stream/-/delayed-stream-0.0.5.tgz";
- name = "delayed-stream-0.0.5.tgz";
- sha1 = "d4b1f43a93e8296dfe02694f4680bc37a313c73f";
- })
- ];
- buildInputs =
- (self.nativeDeps."delayed-stream" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "delayed-stream" ];
- };
- by-spec."depd"."~1.0.1" =
- self.by-version."depd"."1.0.1";
- by-version."depd"."1.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "depd-1.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/depd/-/depd-1.0.1.tgz";
- name = "depd-1.0.1.tgz";
- sha1 = "80aec64c9d6d97e65cc2a9caa93c0aa6abf73aaa";
- })
- ];
- buildInputs =
- (self.nativeDeps."depd" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "depd" ];
- };
- by-spec."destroy"."1.0.3" =
- self.by-version."destroy"."1.0.3";
- by-version."destroy"."1.0.3" = lib.makeOverridable self.buildNodePackage {
- name = "destroy-1.0.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/destroy/-/destroy-1.0.3.tgz";
- name = "destroy-1.0.3.tgz";
- sha1 = "b433b4724e71fd8551d9885174851c5fc377e2c9";
- })
- ];
- buildInputs =
- (self.nativeDeps."destroy" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "destroy" ];
- };
- by-spec."ee-first"."1.1.0" =
- self.by-version."ee-first"."1.1.0";
- by-version."ee-first"."1.1.0" = lib.makeOverridable self.buildNodePackage {
- name = "ee-first-1.1.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz";
- name = "ee-first-1.1.0.tgz";
- sha1 = "6a0d7c6221e490feefd92ec3f441c9ce8cd097f4";
- })
- ];
- buildInputs =
- (self.nativeDeps."ee-first" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "ee-first" ];
- };
- by-spec."escape-html"."1.0.1" =
- self.by-version."escape-html"."1.0.1";
- by-version."escape-html"."1.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "escape-html-1.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/escape-html/-/escape-html-1.0.1.tgz";
- name = "escape-html-1.0.1.tgz";
- sha1 = "181a286ead397a39a92857cfb1d43052e356bff0";
- })
- ];
- buildInputs =
- (self.nativeDeps."escape-html" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "escape-html" ];
- };
- by-spec."etag"."~1.6.0" =
- self.by-version."etag"."1.6.0";
- by-version."etag"."1.6.0" = lib.makeOverridable self.buildNodePackage {
- name = "etag-1.6.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/etag/-/etag-1.6.0.tgz";
- name = "etag-1.6.0.tgz";
- sha1 = "8bcb2c6af1254c481dfc8b997c906ef4e442c207";
- })
- ];
- buildInputs =
- (self.nativeDeps."etag" or []);
- deps = {
- "crc-3.2.1" = self.by-version."crc"."3.2.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "etag" ];
- };
- by-spec."express"."^4.8.3" =
- self.by-version."express"."4.12.4";
- by-version."express"."4.12.4" = lib.makeOverridable self.buildNodePackage {
- name = "express-4.12.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/express/-/express-4.12.4.tgz";
- name = "express-4.12.4.tgz";
- sha1 = "8fec2510255bc6b2e58107c48239c0fa307c1aa2";
- })
- ];
- buildInputs =
- (self.nativeDeps."express" or []);
- deps = {
- "accepts-1.2.7" = self.by-version."accepts"."1.2.7";
- "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
- "content-type-1.0.1" = self.by-version."content-type"."1.0.1";
- "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
- "cookie-signature-1.0.6" = self.by-version."cookie-signature"."1.0.6";
- "debug-2.2.0" = self.by-version."debug"."2.2.0";
- "depd-1.0.1" = self.by-version."depd"."1.0.1";
- "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
- "etag-1.6.0" = self.by-version."etag"."1.6.0";
- "finalhandler-0.3.6" = self.by-version."finalhandler"."0.3.6";
- "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
- "merge-descriptors-1.0.0" = self.by-version."merge-descriptors"."1.0.0";
- "methods-1.1.1" = self.by-version."methods"."1.1.1";
- "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
- "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
- "path-to-regexp-0.1.3" = self.by-version."path-to-regexp"."0.1.3";
- "proxy-addr-1.0.8" = self.by-version."proxy-addr"."1.0.8";
- "qs-2.4.2" = self.by-version."qs"."2.4.2";
- "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
- "send-0.12.3" = self.by-version."send"."0.12.3";
- "serve-static-1.9.3" = self.by-version."serve-static"."1.9.3";
- "type-is-1.6.2" = self.by-version."type-is"."1.6.2";
- "vary-1.0.0" = self.by-version."vary"."1.0.0";
- "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "express" ];
- };
- "express" = self.by-version."express"."4.12.4";
- by-spec."finalhandler"."0.3.6" =
- self.by-version."finalhandler"."0.3.6";
- by-version."finalhandler"."0.3.6" = lib.makeOverridable self.buildNodePackage {
- name = "finalhandler-0.3.6";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.3.6.tgz";
- name = "finalhandler-0.3.6.tgz";
- sha1 = "daf9c4161b1b06e001466b1411dfdb6973be138b";
- })
- ];
- buildInputs =
- (self.nativeDeps."finalhandler" or []);
- deps = {
- "debug-2.2.0" = self.by-version."debug"."2.2.0";
- "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
- "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "finalhandler" ];
- };
- by-spec."forever-agent"."~0.5.0" =
- self.by-version."forever-agent"."0.5.2";
- by-version."forever-agent"."0.5.2" = lib.makeOverridable self.buildNodePackage {
- name = "forever-agent-0.5.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/forever-agent/-/forever-agent-0.5.2.tgz";
- name = "forever-agent-0.5.2.tgz";
- sha1 = "6d0e09c4921f94a27f63d3b49c5feff1ea4c5130";
- })
- ];
- buildInputs =
- (self.nativeDeps."forever-agent" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "forever-agent" ];
- };
- by-spec."form-data"."~0.1.0" =
- self.by-version."form-data"."0.1.4";
- by-version."form-data"."0.1.4" = lib.makeOverridable self.buildNodePackage {
- name = "form-data-0.1.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/form-data/-/form-data-0.1.4.tgz";
- name = "form-data-0.1.4.tgz";
- sha1 = "91abd788aba9702b1aabfa8bc01031a2ac9e3b12";
- })
- ];
- buildInputs =
- (self.nativeDeps."form-data" or []);
- deps = {
- "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
- "mime-1.2.11" = self.by-version."mime"."1.2.11";
- "async-0.9.2" = self.by-version."async"."0.9.2";
- };
- peerDependencies = [
- ];
- passthru.names = [ "form-data" ];
- };
- by-spec."forwarded"."~0.1.0" =
- self.by-version."forwarded"."0.1.0";
- by-version."forwarded"."0.1.0" = lib.makeOverridable self.buildNodePackage {
- name = "forwarded-0.1.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/forwarded/-/forwarded-0.1.0.tgz";
- name = "forwarded-0.1.0.tgz";
- sha1 = "19ef9874c4ae1c297bcf078fde63a09b66a84363";
- })
- ];
- buildInputs =
- (self.nativeDeps."forwarded" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "forwarded" ];
- };
- by-spec."fresh"."0.2.4" =
- self.by-version."fresh"."0.2.4";
- by-version."fresh"."0.2.4" = lib.makeOverridable self.buildNodePackage {
- name = "fresh-0.2.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/fresh/-/fresh-0.2.4.tgz";
- name = "fresh-0.2.4.tgz";
- sha1 = "3582499206c9723714190edd74b4604feb4a614c";
- })
- ];
- buildInputs =
- (self.nativeDeps."fresh" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "fresh" ];
- };
- by-spec."fstream"."~0.1.28" =
- self.by-version."fstream"."0.1.31";
- by-version."fstream"."0.1.31" = lib.makeOverridable self.buildNodePackage {
- name = "fstream-0.1.31";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
- name = "fstream-0.1.31.tgz";
- sha1 = "7337f058fbbbbefa8c9f561a28cab0849202c988";
- })
- ];
- buildInputs =
- (self.nativeDeps."fstream" or []);
- deps = {
- "graceful-fs-3.0.7" = self.by-version."graceful-fs"."3.0.7";
- "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
- "mkdirp-0.5.1" = self.by-version."mkdirp"."0.5.1";
- "rimraf-2.3.4" = self.by-version."rimraf"."2.3.4";
- };
- peerDependencies = [
- ];
- passthru.names = [ "fstream" ];
- };
- by-spec."glob"."^4.4.2" =
- self.by-version."glob"."4.5.3";
- by-version."glob"."4.5.3" = lib.makeOverridable self.buildNodePackage {
- name = "glob-4.5.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/glob/-/glob-4.5.3.tgz";
- name = "glob-4.5.3.tgz";
- sha1 = "c6cb73d3226c1efef04de3c56d012f03377ee15f";
- })
- ];
- buildInputs =
- (self.nativeDeps."glob" or []);
- deps = {
- "inflight-1.0.4" = self.by-version."inflight"."1.0.4";
- "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
- "minimatch-2.0.8" = self.by-version."minimatch"."2.0.8";
- "once-1.3.2" = self.by-version."once"."1.3.2";
- };
- peerDependencies = [
- ];
- passthru.names = [ "glob" ];
- };
- by-spec."graceful-fs"."~3.0.2" =
- self.by-version."graceful-fs"."3.0.7";
- by-version."graceful-fs"."3.0.7" = lib.makeOverridable self.buildNodePackage {
- name = "graceful-fs-3.0.7";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.7.tgz";
- name = "graceful-fs-3.0.7.tgz";
- sha1 = "e935be4b3e57892d289dc3bef7be8c02779d2b54";
- })
- ];
- buildInputs =
- (self.nativeDeps."graceful-fs" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "graceful-fs" ];
- };
- by-spec."hawk"."~1.0.0" =
- self.by-version."hawk"."1.0.0";
- by-version."hawk"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "hawk-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/hawk/-/hawk-1.0.0.tgz";
- name = "hawk-1.0.0.tgz";
- sha1 = "b90bb169807285411da7ffcb8dd2598502d3b52d";
- })
- ];
- buildInputs =
- (self.nativeDeps."hawk" or []);
- deps = {
- "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
- "boom-0.4.2" = self.by-version."boom"."0.4.2";
- "cryptiles-0.2.2" = self.by-version."cryptiles"."0.2.2";
- "sntp-0.2.4" = self.by-version."sntp"."0.2.4";
- };
- peerDependencies = [
- ];
- passthru.names = [ "hawk" ];
- };
- by-spec."hoek"."0.9.x" =
- self.by-version."hoek"."0.9.1";
- by-version."hoek"."0.9.1" = lib.makeOverridable self.buildNodePackage {
- name = "hoek-0.9.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/hoek/-/hoek-0.9.1.tgz";
- name = "hoek-0.9.1.tgz";
- sha1 = "3d322462badf07716ea7eb85baf88079cddce505";
- })
- ];
- buildInputs =
- (self.nativeDeps."hoek" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "hoek" ];
- };
- by-spec."http-signature"."~0.10.0" =
- self.by-version."http-signature"."0.10.1";
- by-version."http-signature"."0.10.1" = lib.makeOverridable self.buildNodePackage {
- name = "http-signature-0.10.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/http-signature/-/http-signature-0.10.1.tgz";
- name = "http-signature-0.10.1.tgz";
- sha1 = "4fbdac132559aa8323121e540779c0a012b27e66";
- })
- ];
- buildInputs =
- (self.nativeDeps."http-signature" or []);
- deps = {
- "assert-plus-0.1.5" = self.by-version."assert-plus"."0.1.5";
- "asn1-0.1.11" = self.by-version."asn1"."0.1.11";
- "ctype-0.5.3" = self.by-version."ctype"."0.5.3";
- };
- peerDependencies = [
- ];
- passthru.names = [ "http-signature" ];
- };
- by-spec."iconv-lite"."0.4.8" =
- self.by-version."iconv-lite"."0.4.8";
- by-version."iconv-lite"."0.4.8" = lib.makeOverridable self.buildNodePackage {
- name = "iconv-lite-0.4.8";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.8.tgz";
- name = "iconv-lite-0.4.8.tgz";
- sha1 = "c6019a7595f2cefca702eab694a010bcd9298d20";
- })
- ];
- buildInputs =
- (self.nativeDeps."iconv-lite" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "iconv-lite" ];
- };
- by-spec."inflight"."^1.0.4" =
- self.by-version."inflight"."1.0.4";
- by-version."inflight"."1.0.4" = lib.makeOverridable self.buildNodePackage {
- name = "inflight-1.0.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/inflight/-/inflight-1.0.4.tgz";
- name = "inflight-1.0.4.tgz";
- sha1 = "6cbb4521ebd51ce0ec0a936bfd7657ef7e9b172a";
- })
- ];
- buildInputs =
- (self.nativeDeps."inflight" or []);
- deps = {
- "once-1.3.2" = self.by-version."once"."1.3.2";
- "wrappy-1.0.1" = self.by-version."wrappy"."1.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "inflight" ];
- };
- by-spec."inherits"."2" =
- self.by-version."inherits"."2.0.1";
- by-version."inherits"."2.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "inherits-2.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
- name = "inherits-2.0.1.tgz";
- sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
- })
- ];
- buildInputs =
- (self.nativeDeps."inherits" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "inherits" ];
- };
- by-spec."inherits"."~2.0.0" =
- self.by-version."inherits"."2.0.1";
- by-spec."ipaddr.js"."1.0.1" =
- self.by-version."ipaddr.js"."1.0.1";
- by-version."ipaddr.js"."1.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "ipaddr.js-1.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.0.1.tgz";
- name = "ipaddr.js-1.0.1.tgz";
- sha1 = "5f38801dc73e0400fc7076386f6ed5215fbd8f95";
- })
- ];
- buildInputs =
- (self.nativeDeps."ipaddr.js" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "ipaddr.js" ];
- };
- by-spec."json-stringify-safe"."~5.0.0" =
- self.by-version."json-stringify-safe"."5.0.1";
- by-version."json-stringify-safe"."5.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "json-stringify-safe-5.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz";
- name = "json-stringify-safe-5.0.1.tgz";
- sha1 = "1296a2d58fd45f19a0f6ce01d65701e2c735b6eb";
- })
- ];
- buildInputs =
- (self.nativeDeps."json-stringify-safe" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "json-stringify-safe" ];
- };
- by-spec."media-typer"."0.3.0" =
- self.by-version."media-typer"."0.3.0";
- by-version."media-typer"."0.3.0" = lib.makeOverridable self.buildNodePackage {
- name = "media-typer-0.3.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz";
- name = "media-typer-0.3.0.tgz";
- sha1 = "8710d7af0aa626f8fffa1ce00168545263255748";
- })
- ];
- buildInputs =
- (self.nativeDeps."media-typer" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "media-typer" ];
- };
- by-spec."merge-descriptors"."1.0.0" =
- self.by-version."merge-descriptors"."1.0.0";
- by-version."merge-descriptors"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "merge-descriptors-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.0.tgz";
- name = "merge-descriptors-1.0.0.tgz";
- sha1 = "2169cf7538e1b0cc87fb88e1502d8474bbf79864";
- })
- ];
- buildInputs =
- (self.nativeDeps."merge-descriptors" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "merge-descriptors" ];
- };
- by-spec."methods"."~1.1.1" =
- self.by-version."methods"."1.1.1";
- by-version."methods"."1.1.1" = lib.makeOverridable self.buildNodePackage {
- name = "methods-1.1.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/methods/-/methods-1.1.1.tgz";
- name = "methods-1.1.1.tgz";
- sha1 = "17ea6366066d00c58e375b8ec7dfd0453c89822a";
- })
- ];
- buildInputs =
- (self.nativeDeps."methods" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "methods" ];
- };
- by-spec."mime"."1.3.4" =
- self.by-version."mime"."1.3.4";
- by-version."mime"."1.3.4" = lib.makeOverridable self.buildNodePackage {
- name = "mime-1.3.4";
- bin = true;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/mime/-/mime-1.3.4.tgz";
- name = "mime-1.3.4.tgz";
- sha1 = "115f9e3b6b3daf2959983cb38f149a2d40eb5d53";
- })
- ];
- buildInputs =
- (self.nativeDeps."mime" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "mime" ];
- };
- by-spec."mime"."~1.2.11" =
- self.by-version."mime"."1.2.11";
- by-version."mime"."1.2.11" = lib.makeOverridable self.buildNodePackage {
- name = "mime-1.2.11";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
- name = "mime-1.2.11.tgz";
- sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
- })
- ];
- buildInputs =
- (self.nativeDeps."mime" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "mime" ];
- };
- by-spec."mime"."~1.2.9" =
- self.by-version."mime"."1.2.11";
- by-spec."mime-db"."~1.10.0" =
- self.by-version."mime-db"."1.10.0";
- by-version."mime-db"."1.10.0" = lib.makeOverridable self.buildNodePackage {
- name = "mime-db-1.10.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/mime-db/-/mime-db-1.10.0.tgz";
- name = "mime-db-1.10.0.tgz";
- sha1 = "e6308063c758ebd12837874c3d1ea9170766b03b";
- })
- ];
- buildInputs =
- (self.nativeDeps."mime-db" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "mime-db" ];
- };
- by-spec."mime-types"."~2.0.11" =
- self.by-version."mime-types"."2.0.12";
- by-version."mime-types"."2.0.12" = lib.makeOverridable self.buildNodePackage {
- name = "mime-types-2.0.12";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/mime-types/-/mime-types-2.0.12.tgz";
- name = "mime-types-2.0.12.tgz";
- sha1 = "87ae9f124e94f8e440c93d1a72d0dccecdb71135";
- })
- ];
- buildInputs =
- (self.nativeDeps."mime-types" or []);
- deps = {
- "mime-db-1.10.0" = self.by-version."mime-db"."1.10.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "mime-types" ];
- };
- by-spec."minimatch"."^2.0.1" =
- self.by-version."minimatch"."2.0.8";
- by-version."minimatch"."2.0.8" = lib.makeOverridable self.buildNodePackage {
- name = "minimatch-2.0.8";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/minimatch/-/minimatch-2.0.8.tgz";
- name = "minimatch-2.0.8.tgz";
- sha1 = "0bc20f6bf3570a698ef0ddff902063c6cabda6bf";
- })
- ];
- buildInputs =
- (self.nativeDeps."minimatch" or []);
- deps = {
- "brace-expansion-1.1.0" = self.by-version."brace-expansion"."1.1.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "minimatch" ];
- };
- by-spec."minimist"."0.0.8" =
- self.by-version."minimist"."0.0.8";
- by-version."minimist"."0.0.8" = lib.makeOverridable self.buildNodePackage {
- name = "minimist-0.0.8";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz";
- name = "minimist-0.0.8.tgz";
- sha1 = "857fcabfc3397d2625b8228262e86aa7a011b05d";
- })
- ];
- buildInputs =
- (self.nativeDeps."minimist" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "minimist" ];
- };
- by-spec."mkdirp"."0.5" =
- self.by-version."mkdirp"."0.5.1";
- by-version."mkdirp"."0.5.1" = lib.makeOverridable self.buildNodePackage {
- name = "mkdirp-0.5.1";
- bin = true;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz";
- name = "mkdirp-0.5.1.tgz";
- sha1 = "30057438eac6cf7f8c4767f38648d6697d75c903";
- })
- ];
- buildInputs =
- (self.nativeDeps."mkdirp" or []);
- deps = {
- "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
- };
- peerDependencies = [
- ];
- passthru.names = [ "mkdirp" ];
- };
- by-spec."ms"."0.7.1" =
- self.by-version."ms"."0.7.1";
- by-version."ms"."0.7.1" = lib.makeOverridable self.buildNodePackage {
- name = "ms-0.7.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/ms/-/ms-0.7.1.tgz";
- name = "ms-0.7.1.tgz";
- sha1 = "9cd13c03adbff25b65effde7ce864ee952017098";
- })
- ];
- buildInputs =
- (self.nativeDeps."ms" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "ms" ];
- };
- by-spec."nan"."~1.0.0" =
- self.by-version."nan"."1.0.0";
- by-version."nan"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "nan-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/nan/-/nan-1.0.0.tgz";
- name = "nan-1.0.0.tgz";
- sha1 = "ae24f8850818d662fcab5acf7f3b95bfaa2ccf38";
- })
- ];
- buildInputs =
- (self.nativeDeps."nan" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "nan" ];
- };
- by-spec."negotiator"."0.5.3" =
- self.by-version."negotiator"."0.5.3";
- by-version."negotiator"."0.5.3" = lib.makeOverridable self.buildNodePackage {
- name = "negotiator-0.5.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/negotiator/-/negotiator-0.5.3.tgz";
- name = "negotiator-0.5.3.tgz";
- sha1 = "269d5c476810ec92edbe7b6c2f28316384f9a7e8";
- })
- ];
- buildInputs =
- (self.nativeDeps."negotiator" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "negotiator" ];
- };
- by-spec."node-uuid"."~1.4.0" =
- self.by-version."node-uuid"."1.4.3";
- by-version."node-uuid"."1.4.3" = lib.makeOverridable self.buildNodePackage {
- name = "node-uuid-1.4.3";
- bin = true;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/node-uuid/-/node-uuid-1.4.3.tgz";
- name = "node-uuid-1.4.3.tgz";
- sha1 = "319bb7a56e7cb63f00b5c0cd7851cd4b4ddf1df9";
- })
- ];
- buildInputs =
- (self.nativeDeps."node-uuid" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "node-uuid" ];
- };
- by-spec."oauth-sign"."~0.3.0" =
- self.by-version."oauth-sign"."0.3.0";
- by-version."oauth-sign"."0.3.0" = lib.makeOverridable self.buildNodePackage {
- name = "oauth-sign-0.3.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/oauth-sign/-/oauth-sign-0.3.0.tgz";
- name = "oauth-sign-0.3.0.tgz";
- sha1 = "cb540f93bb2b22a7d5941691a288d60e8ea9386e";
- })
- ];
- buildInputs =
- (self.nativeDeps."oauth-sign" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "oauth-sign" ];
- };
- by-spec."on-finished"."~2.2.1" =
- self.by-version."on-finished"."2.2.1";
- by-version."on-finished"."2.2.1" = lib.makeOverridable self.buildNodePackage {
- name = "on-finished-2.2.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/on-finished/-/on-finished-2.2.1.tgz";
- name = "on-finished-2.2.1.tgz";
- sha1 = "5c85c1cc36299f78029653f667f27b6b99ebc029";
- })
- ];
- buildInputs =
- (self.nativeDeps."on-finished" or []);
- deps = {
- "ee-first-1.1.0" = self.by-version."ee-first"."1.1.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "on-finished" ];
- };
- by-spec."once"."^1.3.0" =
- self.by-version."once"."1.3.2";
- by-version."once"."1.3.2" = lib.makeOverridable self.buildNodePackage {
- name = "once-1.3.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/once/-/once-1.3.2.tgz";
- name = "once-1.3.2.tgz";
- sha1 = "d8feeca93b039ec1dcdee7741c92bdac5e28081b";
- })
- ];
- buildInputs =
- (self.nativeDeps."once" or []);
- deps = {
- "wrappy-1.0.1" = self.by-version."wrappy"."1.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "once" ];
- };
- by-spec."options".">=0.0.5" =
- self.by-version."options"."0.0.6";
- by-version."options"."0.0.6" = lib.makeOverridable self.buildNodePackage {
- name = "options-0.0.6";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/options/-/options-0.0.6.tgz";
- name = "options-0.0.6.tgz";
- sha1 = "ec22d312806bb53e731773e7cdaefcf1c643128f";
- })
- ];
- buildInputs =
- (self.nativeDeps."options" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "options" ];
- };
- by-spec."parseurl"."~1.3.0" =
- self.by-version."parseurl"."1.3.0";
- by-version."parseurl"."1.3.0" = lib.makeOverridable self.buildNodePackage {
- name = "parseurl-1.3.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/parseurl/-/parseurl-1.3.0.tgz";
- name = "parseurl-1.3.0.tgz";
- sha1 = "b58046db4223e145afa76009e61bac87cc2281b3";
- })
- ];
- buildInputs =
- (self.nativeDeps."parseurl" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "parseurl" ];
- };
- by-spec."path-to-regexp"."0.1.3" =
- self.by-version."path-to-regexp"."0.1.3";
- by-version."path-to-regexp"."0.1.3" = lib.makeOverridable self.buildNodePackage {
- name = "path-to-regexp-0.1.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.3.tgz";
- name = "path-to-regexp-0.1.3.tgz";
- sha1 = "21b9ab82274279de25b156ea08fd12ca51b8aecb";
- })
- ];
- buildInputs =
- (self.nativeDeps."path-to-regexp" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "path-to-regexp" ];
- };
- by-spec."proxy-addr"."~1.0.8" =
- self.by-version."proxy-addr"."1.0.8";
- by-version."proxy-addr"."1.0.8" = lib.makeOverridable self.buildNodePackage {
- name = "proxy-addr-1.0.8";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/proxy-addr/-/proxy-addr-1.0.8.tgz";
- name = "proxy-addr-1.0.8.tgz";
- sha1 = "db54ec878bcc1053d57646609219b3715678bafe";
- })
- ];
- buildInputs =
- (self.nativeDeps."proxy-addr" or []);
- deps = {
- "forwarded-0.1.0" = self.by-version."forwarded"."0.1.0";
- "ipaddr.js-1.0.1" = self.by-version."ipaddr.js"."1.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "proxy-addr" ];
- };
- by-spec."qs"."2.4.2" =
- self.by-version."qs"."2.4.2";
- by-version."qs"."2.4.2" = lib.makeOverridable self.buildNodePackage {
- name = "qs-2.4.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/qs/-/qs-2.4.2.tgz";
- name = "qs-2.4.2.tgz";
- sha1 = "f7ce788e5777df0b5010da7f7c4e73ba32470f5a";
- })
- ];
- buildInputs =
- (self.nativeDeps."qs" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "qs" ];
- };
- by-spec."qs"."~0.6.0" =
- self.by-version."qs"."0.6.6";
- by-version."qs"."0.6.6" = lib.makeOverridable self.buildNodePackage {
- name = "qs-0.6.6";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/qs/-/qs-0.6.6.tgz";
- name = "qs-0.6.6.tgz";
- sha1 = "6e015098ff51968b8a3c819001d5f2c89bc4b107";
- })
- ];
- buildInputs =
- (self.nativeDeps."qs" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "qs" ];
- };
- by-spec."range-parser"."~1.0.2" =
- self.by-version."range-parser"."1.0.2";
- by-version."range-parser"."1.0.2" = lib.makeOverridable self.buildNodePackage {
- name = "range-parser-1.0.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/range-parser/-/range-parser-1.0.2.tgz";
- name = "range-parser-1.0.2.tgz";
- sha1 = "06a12a42e5131ba8e457cd892044867f2344e549";
- })
- ];
- buildInputs =
- (self.nativeDeps."range-parser" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "range-parser" ];
- };
- by-spec."raw-body"."~2.0.1" =
- self.by-version."raw-body"."2.0.1";
- by-version."raw-body"."2.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "raw-body-2.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/raw-body/-/raw-body-2.0.1.tgz";
- name = "raw-body-2.0.1.tgz";
- sha1 = "2b70a3ffd1681c0521bae73454e0ccbc785d378e";
- })
- ];
- buildInputs =
- (self.nativeDeps."raw-body" or []);
- deps = {
- "bytes-2.0.1" = self.by-version."bytes"."2.0.1";
- "iconv-lite-0.4.8" = self.by-version."iconv-lite"."0.4.8";
- };
- peerDependencies = [
- ];
- passthru.names = [ "raw-body" ];
- };
- by-spec."request"."~2.34.0" =
- self.by-version."request"."2.34.0";
- by-version."request"."2.34.0" = lib.makeOverridable self.buildNodePackage {
- name = "request-2.34.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/request/-/request-2.34.0.tgz";
- name = "request-2.34.0.tgz";
- sha1 = "b5d8b9526add4a2d4629f4d417124573996445ae";
- })
- ];
- buildInputs =
- (self.nativeDeps."request" or []);
- deps = {
- "qs-0.6.6" = self.by-version."qs"."0.6.6";
- "json-stringify-safe-5.0.1" = self.by-version."json-stringify-safe"."5.0.1";
- "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
- "node-uuid-1.4.3" = self.by-version."node-uuid"."1.4.3";
- "mime-1.2.11" = self.by-version."mime"."1.2.11";
- "tough-cookie-1.1.0" = self.by-version."tough-cookie"."1.1.0";
- "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
- "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
- "http-signature-0.10.1" = self.by-version."http-signature"."0.10.1";
- "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
- "hawk-1.0.0" = self.by-version."hawk"."1.0.0";
- "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "request" ];
- };
- "request" = self.by-version."request"."2.34.0";
- by-spec."rimraf"."2" =
- self.by-version."rimraf"."2.3.4";
- by-version."rimraf"."2.3.4" = lib.makeOverridable self.buildNodePackage {
- name = "rimraf-2.3.4";
- bin = true;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/rimraf/-/rimraf-2.3.4.tgz";
- name = "rimraf-2.3.4.tgz";
- sha1 = "82d9bc1b2fcf31e205ac7b28138a025d08e9159a";
- })
- ];
- buildInputs =
- (self.nativeDeps."rimraf" or []);
- deps = {
- "glob-4.5.3" = self.by-version."glob"."4.5.3";
- };
- peerDependencies = [
- ];
- passthru.names = [ "rimraf" ];
- };
- by-spec."send"."0.12.3" =
- self.by-version."send"."0.12.3";
- by-version."send"."0.12.3" = lib.makeOverridable self.buildNodePackage {
- name = "send-0.12.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/send/-/send-0.12.3.tgz";
- name = "send-0.12.3.tgz";
- sha1 = "cd12dc58fde21e4f91902b39b2fda05a7a6d9bdc";
- })
- ];
- buildInputs =
- (self.nativeDeps."send" or []);
- deps = {
- "debug-2.2.0" = self.by-version."debug"."2.2.0";
- "depd-1.0.1" = self.by-version."depd"."1.0.1";
- "destroy-1.0.3" = self.by-version."destroy"."1.0.3";
- "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
- "etag-1.6.0" = self.by-version."etag"."1.6.0";
- "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
- "mime-1.3.4" = self.by-version."mime"."1.3.4";
- "ms-0.7.1" = self.by-version."ms"."0.7.1";
- "on-finished-2.2.1" = self.by-version."on-finished"."2.2.1";
- "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
- };
- peerDependencies = [
- ];
- passthru.names = [ "send" ];
- };
- by-spec."serve-static"."~1.9.3" =
- self.by-version."serve-static"."1.9.3";
- by-version."serve-static"."1.9.3" = lib.makeOverridable self.buildNodePackage {
- name = "serve-static-1.9.3";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/serve-static/-/serve-static-1.9.3.tgz";
- name = "serve-static-1.9.3.tgz";
- sha1 = "5f8da07323ad385ff3dc541f1a7917b2e436eb57";
- })
- ];
- buildInputs =
- (self.nativeDeps."serve-static" or []);
- deps = {
- "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
- "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
- "send-0.12.3" = self.by-version."send"."0.12.3";
- "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
- };
- peerDependencies = [
- ];
- passthru.names = [ "serve-static" ];
- };
- by-spec."sntp"."0.2.x" =
- self.by-version."sntp"."0.2.4";
- by-version."sntp"."0.2.4" = lib.makeOverridable self.buildNodePackage {
- name = "sntp-0.2.4";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/sntp/-/sntp-0.2.4.tgz";
- name = "sntp-0.2.4.tgz";
- sha1 = "fb885f18b0f3aad189f824862536bceeec750900";
- })
- ];
- buildInputs =
- (self.nativeDeps."sntp" or []);
- deps = {
- "hoek-0.9.1" = self.by-version."hoek"."0.9.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "sntp" ];
- };
- by-spec."tar"."~0.1.19" =
- self.by-version."tar"."0.1.20";
- by-version."tar"."0.1.20" = lib.makeOverridable self.buildNodePackage {
- name = "tar-0.1.20";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/tar/-/tar-0.1.20.tgz";
- name = "tar-0.1.20.tgz";
- sha1 = "42940bae5b5f22c74483699126f9f3f27449cb13";
- })
- ];
- buildInputs =
- (self.nativeDeps."tar" or []);
- deps = {
- "block-stream-0.0.8" = self.by-version."block-stream"."0.0.8";
- "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
- "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
- };
- peerDependencies = [
- ];
- passthru.names = [ "tar" ];
- };
- "tar" = self.by-version."tar"."0.1.20";
- by-spec."tinycolor"."0.x" =
- self.by-version."tinycolor"."0.0.1";
- by-version."tinycolor"."0.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "tinycolor-0.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/tinycolor/-/tinycolor-0.0.1.tgz";
- name = "tinycolor-0.0.1.tgz";
- sha1 = "320b5a52d83abb5978d81a3e887d4aefb15a6164";
- })
- ];
- buildInputs =
- (self.nativeDeps."tinycolor" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "tinycolor" ];
- };
- by-spec."tough-cookie".">=0.12.0" =
- self.by-version."tough-cookie"."1.1.0";
- by-version."tough-cookie"."1.1.0" = lib.makeOverridable self.buildNodePackage {
- name = "tough-cookie-1.1.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-1.1.0.tgz";
- name = "tough-cookie-1.1.0.tgz";
- sha1 = "126d2490e66ae5286b6863debd4a341076915954";
- })
- ];
- buildInputs =
- (self.nativeDeps."tough-cookie" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "tough-cookie" ];
- };
- by-spec."tunnel-agent"."~0.3.0" =
- self.by-version."tunnel-agent"."0.3.0";
- by-version."tunnel-agent"."0.3.0" = lib.makeOverridable self.buildNodePackage {
- name = "tunnel-agent-0.3.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.3.0.tgz";
- name = "tunnel-agent-0.3.0.tgz";
- sha1 = "ad681b68f5321ad2827c4cfb1b7d5df2cfe942ee";
- })
- ];
- buildInputs =
- (self.nativeDeps."tunnel-agent" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "tunnel-agent" ];
- };
- by-spec."type-is"."~1.6.2" =
- self.by-version."type-is"."1.6.2";
- by-version."type-is"."1.6.2" = lib.makeOverridable self.buildNodePackage {
- name = "type-is-1.6.2";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/type-is/-/type-is-1.6.2.tgz";
- name = "type-is-1.6.2.tgz";
- sha1 = "694e83e5d110417e681cea278227f264ae406e33";
- })
- ];
- buildInputs =
- (self.nativeDeps."type-is" or []);
- deps = {
- "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
- "mime-types-2.0.12" = self.by-version."mime-types"."2.0.12";
- };
- peerDependencies = [
- ];
- passthru.names = [ "type-is" ];
- };
- by-spec."utils-merge"."1.0.0" =
- self.by-version."utils-merge"."1.0.0";
- by-version."utils-merge"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "utils-merge-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/utils-merge/-/utils-merge-1.0.0.tgz";
- name = "utils-merge-1.0.0.tgz";
- sha1 = "0294fb922bb9375153541c4f7096231f287c8af8";
- })
- ];
- buildInputs =
- (self.nativeDeps."utils-merge" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "utils-merge" ];
- };
- by-spec."vary"."~1.0.0" =
- self.by-version."vary"."1.0.0";
- by-version."vary"."1.0.0" = lib.makeOverridable self.buildNodePackage {
- name = "vary-1.0.0";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/vary/-/vary-1.0.0.tgz";
- name = "vary-1.0.0.tgz";
- sha1 = "c5e76cec20d3820d8f2a96e7bee38731c34da1e7";
- })
- ];
- buildInputs =
- (self.nativeDeps."vary" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "vary" ];
- };
- by-spec."wrappy"."1" =
- self.by-version."wrappy"."1.0.1";
- by-version."wrappy"."1.0.1" = lib.makeOverridable self.buildNodePackage {
- name = "wrappy-1.0.1";
- bin = false;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/wrappy/-/wrappy-1.0.1.tgz";
- name = "wrappy-1.0.1.tgz";
- sha1 = "1e65969965ccbc2db4548c6b84a6f2c5aedd4739";
- })
- ];
- buildInputs =
- (self.nativeDeps."wrappy" or []);
- deps = {
- };
- peerDependencies = [
- ];
- passthru.names = [ "wrappy" ];
- };
- by-spec."ws"."~0.4.32" =
- self.by-version."ws"."0.4.32";
- by-version."ws"."0.4.32" = lib.makeOverridable self.buildNodePackage {
- name = "ws-0.4.32";
- bin = true;
- src = [
- (fetchurl {
- url = "http://registry.npmjs.org/ws/-/ws-0.4.32.tgz";
- name = "ws-0.4.32.tgz";
- sha1 = "787a6154414f3c99ed83c5772153b20feb0cec32";
- })
- ];
- buildInputs =
- (self.nativeDeps."ws" or []);
- deps = {
- "commander-2.1.0" = self.by-version."commander"."2.1.0";
- "nan-1.0.0" = self.by-version."nan"."1.0.0";
- "tinycolor-0.0.1" = self.by-version."tinycolor"."0.0.1";
- "options-0.0.6" = self.by-version."options"."0.0.6";
- };
- peerDependencies = [
- ];
- passthru.names = [ "ws" ];
- };
- "ws" = self.by-version."ws"."0.4.32";
-}
+{pkgs ? import {
+ inherit system;
+ }, system ? builtins.currentSystem, nodejs ? pkgs."nodejs-6_x"}:
+
+let
+ nodeEnv = import ../../../development/node-packages/node-env.nix {
+ inherit (pkgs) stdenv python2 utillinux runCommand writeTextFile;
+ inherit nodejs;
+ };
+in
+import ./node-packages.nix {
+ inherit (pkgs) fetchurl fetchgit;
+ inherit nodeEnv;
+}
\ No newline at end of file
diff --git a/pkgs/applications/kde/kdenlive.nix b/pkgs/applications/kde/kdenlive.nix
index 854e346e290..17d7da7b702 100644
--- a/pkgs/applications/kde/kdenlive.nix
+++ b/pkgs/applications/kde/kdenlive.nix
@@ -2,7 +2,6 @@
, lib
, extra-cmake-modules
, kdoctools
-, qtscript
, kactivities
, kconfig
, kcrash
@@ -27,7 +26,10 @@
, kfilemetadata
, ffmpeg
, phonon-backend-gstreamer
+, qtdeclarative
, qtquickcontrols
+, qtscript
+, qtwebkit
}:
mkDerivation {
@@ -56,8 +58,10 @@ mkDerivation {
ktextwidgets
mlt
phonon-backend-gstreamer
+ qtdeclarative
qtquickcontrols
qtscript
+ qtwebkit
shared_mime_info
libv4l
ffmpeg
diff --git a/pkgs/applications/misc/keepassx/community.nix b/pkgs/applications/misc/keepassx/community.nix
index 0444b1d96d2..72d9c7d2fb5 100644
--- a/pkgs/applications/misc/keepassx/community.nix
+++ b/pkgs/applications/misc/keepassx/community.nix
@@ -6,7 +6,7 @@
with stdenv.lib;
stdenv.mkDerivation rec {
- name = "keepassx-community-${version}";
+ name = "keepassxc-${version}";
version = "2.2.2";
src = fetchFromGitHub {
diff --git a/pkgs/applications/misc/lyx/default.nix b/pkgs/applications/misc/lyx/default.nix
index 0c08929417e..e3c4943cb2f 100644
--- a/pkgs/applications/misc/lyx/default.nix
+++ b/pkgs/applications/misc/lyx/default.nix
@@ -18,11 +18,6 @@ stdenv.mkDerivation rec {
hunspell makeWrapper # enchant
];
- # bogus configure script tests
- preConfigure = ''
- NIX_CFLAGS_COMPILE+=" $(pkg-config --cflags Qt5Core)"
- '';
-
configureFlags = [
"--enable-qt5"
#"--without-included-boost"
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index fc702f249de..0167132db78 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -2,11 +2,11 @@
, desktop_file_utils, libSM, imagemagick }:
stdenv.mkDerivation rec {
- version = "0.7.99";
+ version = "17.10";
name = "mediainfo-gui-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
- sha256 = "127d6wsrq3wg3ibbb28m26wrm54qbkv8h8xycanvml6ys4zqsc6a";
+ sha256 = "1yvh4r19kk3bzzgnr4ikrjxqldr6860s35sh4bqr51c7l77k048c";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
sourceRoot = "./MediaInfo/Project/GNU/GUI/";
+ enableParallelBuilding = true;
+
meta = with stdenv.lib; {
description = "Supplies technical and tag information about a video or audio file (GUI version)";
longDescription = ''
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index 84fef1b3983..e6175356348 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, libmediainfo, zlib }:
stdenv.mkDerivation rec {
- version = "0.7.99";
+ version = "17.10";
name = "mediainfo-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
- sha256 = "127d6wsrq3wg3ibbb28m26wrm54qbkv8h8xycanvml6ys4zqsc6a";
+ sha256 = "1yvh4r19kk3bzzgnr4ikrjxqldr6860s35sh4bqr51c7l77k048c";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
configureFlags = [ "--with-libmediainfo=${libmediainfo}" ];
+ enableParallelBuilding = true;
+
meta = with stdenv.lib; {
description = "Supplies technical and tag information about a video or audio file";
longDescription = ''
diff --git a/pkgs/applications/networking/browsers/surf/default.nix b/pkgs/applications/networking/browsers/surf/default.nix
index 04d475f36f0..1aa9bf044b0 100644
--- a/pkgs/applications/networking/browsers/surf/default.nix
+++ b/pkgs/applications/networking/browsers/surf/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
version = "2.0";
src = fetchurl {
- url = "http://dl.suckless.org/surf/surf-${version}.tar.gz";
+ url = "https://dl.suckless.org/surf/surf-${version}.tar.gz";
sha256 = "07cmajyafljigy10d21kkyvv5jf3hxkx06pz3rwwk3y3c9x4rvps";
};
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
possible to embed it in another application. Furthermore, one can point
surf to another URI by setting its XProperties.
'';
- homepage = http://surf.suckless.org;
+ homepage = https://surf.suckless.org;
license = licenses.mit;
platforms = webkitgtk.meta.platforms;
maintainers = with maintainers; [ joachifm ];
diff --git a/pkgs/applications/networking/gns3/default.nix b/pkgs/applications/networking/gns3/default.nix
index bee3062a5a2..6e86cfb3d02 100644
--- a/pkgs/applications/networking/gns3/default.nix
+++ b/pkgs/applications/networking/gns3/default.nix
@@ -2,7 +2,7 @@
let
stableVersion = "2.0.3";
- previewVersion = "2.1.0rc3";
+ previewVersion = "2.1.0rc4";
addVersion = args:
let version = if args.stable then stableVersion else previewVersion;
branch = if args.stable then "stable" else "preview";
@@ -16,7 +16,7 @@ in {
};
guiPreview = mkGui {
stable = false;
- sha256Hash = "0yc5lr01xb7lk4dsrwx79mimbr91vldpvqbrx37j3kym6p5m84cn";
+ sha256Hash = "10p8i45n6qsf431d0xpy5dk3g5qh6zdlnfj82jn9xdyccgxs4x3s";
};
serverStable = mkServer {
@@ -25,6 +25,6 @@ in {
};
serverPreview = mkServer {
stable = false;
- sha256Hash = "1lac88d9cmlhrwmlvxv1sk86600rwznw3lpsm440bax6qbdfcis3";
+ sha256Hash = "1z8a3s90k86vmi4rwsd3v74gwvml68ci6f3zgxaji3z1sm22zcyd";
};
}
diff --git a/pkgs/applications/networking/gns3/server.nix b/pkgs/applications/networking/gns3/server.nix
index 9d7bf6f5a3a..6e3280b9901 100644
--- a/pkgs/applications/networking/gns3/server.nix
+++ b/pkgs/applications/networking/gns3/server.nix
@@ -4,7 +4,23 @@
let
pythonPackages = python3Packages;
- yarl = if (!stable) then pythonPackages.yarl
+ # TODO: Not sure if all these overwrites are really required...
+ # Upstream seems to have some reasons (bugs, incompatibilities) though.
+ multidict_3_1_3 =
+ (stdenv.lib.overrideDerivation pythonPackages.multidict (oldAttrs:
+ rec {
+ pname = "multidict";
+ version = "3.1.3";
+ name = "${pname}-${version}";
+ src = pythonPackages.fetchPypi {
+ inherit pname version;
+ sha256 = "04kdxh19m41c6vbshwk8jfbidsfsqn7mn0abvx09nyg78sh80pw7";
+ };
+ doInstallCheck = false;
+ }));
+ yarl = if (!stable)
+ then (stdenv.lib.overrideDerivation pythonPackages.yarl (oldAttrs:
+ { propagatedBuildInputs = [ multidict_3_1_3 ]; }))
else (stdenv.lib.overrideDerivation pythonPackages.yarl (oldAttrs:
rec {
pname = "yarl";
@@ -15,7 +31,19 @@ let
sha256 = "1v2dsmr7bqp0yx51pwhbxyvzza8m2f88prsnbd926mi6ah38p0d7";
};
}));
- aiohttp = if (!stable) then pythonPackages.aiohttp
+ aiohttp = if (!stable)
+ then (stdenv.lib.overrideDerivation pythonPackages.aiohttp (oldAttrs:
+ rec {
+ pname = "aiohttp";
+ version = "2.2.5";
+ name = "${pname}-${version}";
+ src = pythonPackages.fetchPypi {
+ inherit pname version;
+ sha256 = "1g6kzkf5in0briyscwxsihgps833dq2ggcq6lfh1hq95ck8zsnxg";
+ };
+ propagatedBuildInputs = [ yarl multidict_3_1_3 ]
+ ++ (with pythonPackages; [ async-timeout chardet ]);
+ }))
else (stdenv.lib.overrideDerivation pythonPackages.aiohttp (oldAttrs:
rec {
pname = "aiohttp";
@@ -28,7 +56,9 @@ let
propagatedBuildInputs = [ yarl ]
++ (with pythonPackages; [ async-timeout chardet multidict ]);
}));
- aiohttp-cors = if (!stable) then pythonPackages.aiohttp-cors
+ aiohttp-cors = if (!stable)
+ then (stdenv.lib.overrideDerivation pythonPackages.aiohttp-cors (oldAttrs:
+ { propagatedBuildInputs = [ aiohttp ]; }))
else (stdenv.lib.overrideDerivation pythonPackages.aiohttp-cors (oldAttrs:
rec {
pname = "aiohttp-cors";
diff --git a/pkgs/applications/networking/instant-messengers/qtox/default.nix b/pkgs/applications/networking/instant-messengers/qtox/default.nix
index aee73925674..0bc3118d101 100644
--- a/pkgs/applications/networking/instant-messengers/qtox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/qtox/default.nix
@@ -2,25 +2,25 @@
libtoxcore,
libpthreadstubs, libXdmcp, libXScrnSaver,
qtbase, qtsvg, qttools, qttranslations,
- ffmpeg, filter-audio, libsodium, libopus,
+ ffmpeg, filter-audio, libexif, libsodium, libopus,
libvpx, openal, opencv, pcre, qrencode, sqlcipher }:
mkDerivation rec {
name = "qtox-${version}";
- version = "1.11.0";
+ version = "1.12.1";
src = fetchFromGitHub {
- owner = "tux3";
+ owner = "qTox";
repo = "qTox";
rev = "v${version}";
- sha256 = "0h8v359h1xn2xm6xa9q56mjiw58ap1bpiwx1dxxmphjildxadwck";
+ sha256 = "1832ay0167qjc2vvpps507mnb0531y3d3pxmlm5nakvcwjs7vl8d";
};
buildInputs = [
libtoxcore
libpthreadstubs libXdmcp libXScrnSaver
qtbase qtsvg qttools qttranslations
- ffmpeg filter-audio libopus libsodium
+ ffmpeg filter-audio libexif libopus libsodium
libvpx openal opencv pcre qrencode sqlcipher
];
@@ -37,6 +37,7 @@ mkDerivation rec {
meta = with lib; {
description = "Qt Tox client";
+ homepage = https://tox.chat;
license = licenses.gpl3;
maintainers = with maintainers; [ viric jgeerds akaWolf peterhoeg ];
platforms = platforms.all;
diff --git a/pkgs/applications/networking/instant-messengers/utox/default.nix b/pkgs/applications/networking/instant-messengers/utox/default.nix
index 9c4d88761b8..9c208dd52a8 100644
--- a/pkgs/applications/networking/instant-messengers/utox/default.nix
+++ b/pkgs/applications/networking/instant-messengers/utox/default.nix
@@ -25,9 +25,9 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DENABLE_UPDATER=OFF"
- ];
+ ] ++ stdenv.lib.optional (!doCheck) "-DENABLE_TESTS=OFF";
- doCheck = false;
+ doCheck = true;
checkTarget = "test";
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index 9b6f2f1f1bb..3bb65123c81 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -22,10 +22,6 @@ stdenv.mkDerivation rec {
buildInputs = [ boost libtorrentRasterbar qtbase qttools ]
++ optional guiSupport dbus_libs;
- preConfigure = ''
- export QT_QMAKE=$(dirname "$QMAKE")
- '';
-
configureFlags = [
"--with-boost-libdir=${boost.out}/lib"
"--with-boost=${boost.dev}"
diff --git a/pkgs/applications/networking/syncthing/default.nix b/pkgs/applications/networking/syncthing/default.nix
index f2ffcac452e..ecdecd07eeb 100644
--- a/pkgs/applications/networking/syncthing/default.nix
+++ b/pkgs/applications/networking/syncthing/default.nix
@@ -1,14 +1,14 @@
{ stdenv, lib, fetchFromGitHub, go, procps, removeReferencesTo }:
stdenv.mkDerivation rec {
- version = "0.14.39";
+ version = "0.14.40";
name = "syncthing-${version}";
src = fetchFromGitHub {
owner = "syncthing";
repo = "syncthing";
rev = "v${version}";
- sha256 = "0bq2vdfnl77qldg1zvfhdbmhsj80qz8pds4slqlwjmmjmk19sqnh";
+ sha256 = "0fd4k09sb91d1bjqj2v1fh7raq98fdw45aaa58kramwhidsf9sy5";
};
buildInputs = [ go removeReferencesTo ];
diff --git a/pkgs/applications/office/paperwork/default.nix b/pkgs/applications/office/paperwork/default.nix
index 07a09fbfc0a..0881d6d06b5 100644
--- a/pkgs/applications/office/paperwork/default.nix
+++ b/pkgs/applications/office/paperwork/default.nix
@@ -1,19 +1,19 @@
{ lib, python3Packages, fetchFromGitHub, gtk3, cairo
, aspellDicts, buildEnv
-, gnome3, hicolor_icon_theme
+, gnome3, hicolor_icon_theme, librsvg
, xvfb_run, dbus, libnotify
}:
python3Packages.buildPythonApplication rec {
name = "paperwork-${version}";
# Don't forget to also update paperwork-backend when updating this!
- version = "1.2";
+ version = "1.2.1";
src = fetchFromGitHub {
repo = "paperwork";
- owner = "jflesch";
+ owner = "openpaperwork";
rev = version;
- sha256 = "1cb9wnhhpm3dyxjrkyl9bbva56xx85vlwlb7z07m1icflcln14x5";
+ sha256 = "0lqnq74hdjj778j2k0syibwy4i37l8w932gmibs8617s4yi34rxz";
};
# Patch out a few paths that assume that we're using the FHS:
@@ -47,7 +47,9 @@ python3Packages.buildPythonApplication rec {
}}/lib/aspell";
checkInputs = [ xvfb_run dbus.daemon ];
- buildInputs = [ gnome3.defaultIconTheme hicolor_icon_theme libnotify ];
+ buildInputs = [
+ gnome3.defaultIconTheme hicolor_icon_theme libnotify librsvg
+ ];
# A few parts of chkdeps need to have a display and a dbus session, so we not
# only need to run a virtual X server + dbus but also have a large enough
@@ -64,6 +66,7 @@ python3Packages.buildPythonApplication rec {
makeWrapperArgs = [
"--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\""
+ "--set GDK_PIXBUF_MODULE_FILE \"$GDK_PIXBUF_MODULE_FILE\""
"--prefix XDG_DATA_DIRS : \"$out/share\""
"--suffix XDG_DATA_DIRS : \"$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH\""
];
diff --git a/pkgs/applications/science/logic/glucose/default.nix b/pkgs/applications/science/logic/glucose/default.nix
index 5b318be1664..a0035f96539 100644
--- a/pkgs/applications/science/logic/glucose/default.nix
+++ b/pkgs/applications/science/logic/glucose/default.nix
@@ -1,19 +1,21 @@
{ stdenv, fetchurl, zlib }:
stdenv.mkDerivation rec {
name = "glucose-${version}";
- version = "4.0";
+ version = "4.1";
src = fetchurl {
- url = "http://www.labri.fr/perso/lsimon/downloads/softwares/glucose-syrup.tgz";
- sha256 = "0bq5l2jabhdfhng002qfk0mcj4pfi1v5853x3c7igwfrgx0jmfld";
+ url = "http://www.labri.fr/perso/lsimon/downloads/softwares/glucose-syrup-${version}.tgz";
+ sha256 = "0aahrkaq7n0z986fpqz66yz946nxardfi6dh8calzcfjpvqiraji";
};
buildInputs = [ zlib ];
- sourceRoot = "glucose-syrup/simp";
+ sourceRoot = "glucose-syrup-${version}/simp";
makeFlags = [ "r" ];
installPhase = ''
install -Dm0755 glucose_release $out/bin/glucose
+ mkdir -p "$out/share/doc/${name}/"
+ install -Dm0755 ../{LICEN?E,README*,Changelog*} "$out/share/doc/${name}/"
'';
meta = with stdenv.lib; {
diff --git a/pkgs/applications/science/logic/glucose/syrup.nix b/pkgs/applications/science/logic/glucose/syrup.nix
index 7604ebc1a3d..fd59a53fd2a 100644
--- a/pkgs/applications/science/logic/glucose/syrup.nix
+++ b/pkgs/applications/science/logic/glucose/syrup.nix
@@ -1,19 +1,18 @@
-{ stdenv, fetchurl, zlib }:
+{ stdenv, fetchurl, zlib, glucose }:
stdenv.mkDerivation rec {
name = "glucose-syrup-${version}";
- version = "4.0";
+ version = glucose.version;
- src = fetchurl {
- url = "http://www.labri.fr/perso/lsimon/downloads/softwares/glucose-syrup.tgz";
- sha256 = "0bq5l2jabhdfhng002qfk0mcj4pfi1v5853x3c7igwfrgx0jmfld";
- };
+ src = glucose.src;
buildInputs = [ zlib ];
- sourceRoot = "glucose-syrup/parallel";
+ sourceRoot = "glucose-syrup-${version}/parallel";
makeFlags = [ "r" ];
installPhase = ''
install -Dm0755 glucose-syrup_release $out/bin/glucose-syrup
+ mkdir -p "$out/share/doc/${name}/"
+ install -Dm0755 ../{LICEN?E,README*,Changelog*} "$out/share/doc/${name}/"
'';
meta = with stdenv.lib; {
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 4f6da3c7cd9..6649b027c31 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -94,6 +94,14 @@ in stdenv.mkDerivation {
postPatch = ''
sed -i -e 's|/sbin/ifconfig|${nettools}/bin/ifconfig|' \
src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp
+ patch -p0 < ${
+ fetchurl { # for glibc-2.26
+ name = "conflicting-types-for-greg_t.patch";
+ url = "http://www.linuxquestions.org/questions/"
+ + "attachment.php?attachmentid=25801&d=1504099531";
+ sha256 = "1bcyf9qrqxizyjp1s662k6n1cfyfjbl7256r4n20kbr65yxcydps";
+ }
+ }
'';
# first line: ugly hack, and it isn't yet clear why it's a problem
diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix
index 6227ccd2c9f..1e1072e4960 100644
--- a/pkgs/applications/window-managers/sway/default.nix
+++ b/pkgs/applications/window-managers/sway/default.nix
@@ -8,13 +8,13 @@
stdenv.mkDerivation rec {
name = "sway-${version}";
- version = "0.14.0";
+ version = "0.15.0";
src = fetchFromGitHub {
- owner = "Sircmpwn";
+ owner = "swaywm";
repo = "sway";
- rev = "${version}";
- sha256 = "1l8v9cdzd44bm4q71d47vqg6933b8j42q1a61r362vz2la1rcpq2";
+ rev = version;
+ sha256 = "0rz5rgap2ah7hkk4glvlmjq0c8i2f47qzkwjx7gm4wmb8gymikmh";
};
nativeBuildInputs = [
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index a12c835dd9b..8d8b8a42fe9 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -97,6 +97,11 @@ stdenv.mkDerivation {
outputs = [ "out" "man" ];
passthru = {
+ # "cc" is the generic name for a C compiler, but there is no one for package
+ # providing the linker and related tools. The two we use now are GNU
+ # Binutils, and Apple's "cctools"; "binutils" as an attempt to find an
+ # unused middle-ground name that evokes both.
+ bintools = binutils_bin;
inherit libc nativeTools nativeLibc nativePrefix isGNU isClang default_cxx_stdlib_compile
prefix;
diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix
index c3cd9bdb4b3..91d38f3537e 100644
--- a/pkgs/data/misc/hackage/default.nix
+++ b/pkgs/data/misc/hackage/default.nix
@@ -1,34 +1,6 @@
-{ fetchFromGitHub
-, stdenv
-, pkgconfig
-, libarchive
-, glib
-, # Override this to use a different revision
- src-spec ?
- { owner = "commercialhaskell";
- repo = "all-cabal-hashes";
- rev = "5e87c40f2cd96bd5dd953758e82f302107c7895e";
- sha256 = "12rw5fld64s0a2zjsdijfs0dv6vc6z7gcf24h4m2dmymzms4namg";
- }
-, lib
-}:
+{ fetchurl }:
-# Use builtins.fetchTarball "https://github.com/commercialhaskell/all-cabal-hashes/archive/hackage.tar.gz"
-# instead if you want the latest Hackage automatically at the price of frequent re-downloads.
-let partition-all-cabal-hashes = stdenv.mkDerivation
- { name = "partition-all-cabal-hashes";
- src = ./partition-all-cabal-hashes.c;
- unpackPhase = "true";
- buildInputs = [ libarchive glib ];
- nativeBuildInputs = [ pkgconfig ];
- buildPhase =
- "cc -O3 $(pkg-config --cflags --libs libarchive glib-2.0) $src -o partition-all-cabal-hashes";
- installPhase =
- ''
- mkdir -p $out/bin
- install -m755 partition-all-cabal-hashes $out/bin
- '';
- };
-in fetchFromGitHub (src-spec //
- { postFetch = "${partition-all-cabal-hashes}/bin/partition-all-cabal-hashes $downloadedFile $out";
- })
+fetchurl {
+ url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/5e87c40f2cd96bd5dd953758e82f302107c7895e.tar.gz";
+ sha256 = "0hjkddda9mdm21nb9bkhr9n5r9jllisif1qmzha91a9cps5w1mx5";
+}
diff --git a/pkgs/data/misc/hackage/partition-all-cabal-hashes.c b/pkgs/data/misc/hackage/partition-all-cabal-hashes.c
deleted file mode 100644
index d8c3eca3701..00000000000
--- a/pkgs/data/misc/hackage/partition-all-cabal-hashes.c
+++ /dev/null
@@ -1,190 +0,0 @@
-#include
-#include
-#include
-#include
-#include
-#include
-#include
-
-static char * case_normalize(char * str) {
- for (char * iter = str; *iter; ++iter) {
- *iter = tolower(*iter);
- }
- return str;
-}
-
-static gint compare_str(const void * a, const void * b, void * _) {
- return strcmp(a, b);
-}
-
-int main(int argc, char ** argv) {
- if (argc != 3) {
- fprintf(stderr, "Usage: %s TARBALL OUTPUT\n", argv[0]);
- return 1;
- }
-
- size_t output_len = strlen(argv[2]);
-
- /* Switch to standard locale to ensure consistency in case-folding.
- */
- setlocale(LC_CTYPE, "C");
-
- /* Map from case-normalized package name to a sorted sequence of
- * package names in the equivalence class defined by
- * case-normalization.
- */
- GHashTable * equivalence_classes =
- g_hash_table_new(g_str_hash, g_str_equal);
-
- /* Open up the tarball.
- */
- struct archive * ar = archive_read_new();
- if (!ar) {
- perror("Allocating archive structure");
- return 1;
- }
- archive_read_support_filter_gzip(ar);
- archive_read_support_format_tar(ar);
- if (archive_read_open_filename( ar
- , argv[1]
- , 10240
- ) == ARCHIVE_FATAL) {
- fprintf( stderr
- , "Error opening %s: %s\n"
- , argv[0]
- , archive_error_string(ar)
- );
- return 1;
- }
-
- /* Extract the length of the output directory that prefixes all
- * tarball entries from the first entry in the tarball.
- */
- struct archive_entry * ent;
- int err = archive_read_next_header(ar, &ent);
- if (err != ARCHIVE_OK) {
- if (err == ARCHIVE_EOF) {
- fprintf( stderr
- , "No entries in %s, surely this is an error!\n"
- , argv[1]
- );
- } else {
- fprintf( stderr
- , "Error reading entry from %s: %s\n"
- , argv[1]
- , archive_error_string(ar)
- );
- }
- return 1;
- }
- const char * path = archive_entry_pathname(ent);
- /* Number of characters from the start of the path name until after
- * the slash after the leading directory.
- */
- size_t prefix_len = strchr(path, '/') - path + 1;
-
- /* Extract each entry to the right partition.
- */
- do {
- path = archive_entry_pathname(ent) + prefix_len;
- const char * pkg_end = strchr(path, '/');
- if (!pkg_end)
- /* If there is no second slash, then this is either just the entry
- * corresponding to the root or some non-package file (e.g.
- * travis.yml). In either case, we don't care.
- */
- continue;
-
- /* Find our package in the equivalence class map.
- */
- char * pkg_name = g_strndup(path, pkg_end - path);
- char * pkg_normalized =
- case_normalize(g_strndup(path, pkg_end - path));
- GSequence * pkg_class =
- g_hash_table_lookup(equivalence_classes, pkg_normalized);
- gint partition_num;
- if (!pkg_class) {
- /* We haven't seen any packages with this normalized name yet,
- * so we need to initialize the sequence and add it to the map.
- */
- pkg_class = g_sequence_new(NULL);
- g_sequence_append(pkg_class, pkg_name);
- g_hash_table_insert( equivalence_classes
- , pkg_normalized
- , pkg_class
- );
- partition_num = 1;
- } else {
- g_free(pkg_normalized);
- /* Find the package name in the equivalence class */
- GSequenceIter * pkg_iter =
- g_sequence_search( pkg_class
- , pkg_name
- , compare_str
- , NULL
- );
- if (!g_sequence_iter_is_end(pkg_iter)) {
- /* If there are any packages after this one in the list, bail
- * out. In principle we could solve this by moving them up to
- * the next partition, but so far I've never seen any github
- * tarballs out of order so let's save ourselves the work
- * until we know we need it.
- */
- fprintf( stderr
- , "Out of order github tarball: %s is after %s\n"
- , pkg_name
- , (char *) g_sequence_get(pkg_iter)
- );
- return 1;
- }
- pkg_iter = g_sequence_iter_prev(pkg_iter);
- if (strcmp( g_sequence_get(pkg_iter)
- , pkg_name
- ) != 0) {
- /* This package doesn't have the same name as the one right
- * before where it should be in the sequence, which means it's
- * new and needs to be added to the sequence.
- *
- * !!! We need to change this to use g_sequence_insert_before
- * if we ever get an out-of-order github tarball, see comment
- * after the check for !g_sequence_iter_is_end(pkg_iter).
- */
- pkg_iter = g_sequence_append(pkg_class, pkg_name);
- } else {
- g_free(pkg_name);
- }
- /* Get the partition number, starting with 1.
- */
- partition_num = g_sequence_iter_get_position(pkg_iter) + 1;
- }
-
- /* Set the destination path.
- * The 3 below is for the length of /#/, the partition number part
- * of the path. If we have more than 9 partitions, we deserve to
- * segfault. The 1 at the end is for the trailing null.
- */
- char * dest_path = g_malloc(output_len + 3 + strlen(path) + 1);
- sprintf(dest_path, "%s/%d/%s", argv[2], partition_num, path);
- archive_entry_set_pathname(ent, dest_path);
-
- if (archive_read_extract(ar, ent, 0) != ARCHIVE_OK) {
- fprintf( stderr
- , "Error extracting entry %s from %s: %s\n"
- , dest_path
- , argv[1]
- , archive_error_string(ar)
- );
- return 1;
- }
- } while ((err = archive_read_next_header(ar, &ent)) == ARCHIVE_OK);
- if (err != ARCHIVE_EOF) {
- fprintf( stderr
- , "Error reading entry from %s: %s\n"
- , argv[1]
- , archive_error_string(ar)
- );
- return 1;
- }
-
- return 0;
-}
diff --git a/pkgs/desktops/plasma-5/fetch.sh b/pkgs/desktops/plasma-5/fetch.sh
index cb0f50727d7..494b8492353 100644
--- a/pkgs/desktops/plasma-5/fetch.sh
+++ b/pkgs/desktops/plasma-5/fetch.sh
@@ -1 +1 @@
-WGET_ARGS=( https://download.kde.org/stable/plasma/5.11.2/ -A '*.tar.xz' )
+WGET_ARGS=( https://download.kde.org/stable/plasma/5.11.3/ -A '*.tar.xz' )
diff --git a/pkgs/desktops/plasma-5/plasma-workspace/plasma-workspace.patch b/pkgs/desktops/plasma-5/plasma-workspace/plasma-workspace.patch
index 1f4b83cf83b..598f043dcd5 100644
--- a/pkgs/desktops/plasma-5/plasma-workspace/plasma-workspace.patch
+++ b/pkgs/desktops/plasma-5/plasma-workspace/plasma-workspace.patch
@@ -8,7 +8,7 @@ index 7e2d9758..40a5797b 100644
import org.kde.kcoreaddons 1.0 as KCoreAddons
-import "logic.js" as Logic
+import "../code/logic.js" as Logic
-
+
Item {
id: batteryItem
diff --git a/applets/batterymonitor/package/contents/ui/batterymonitor.qml b/applets/batterymonitor/package/contents/ui/batterymonitor.qml
@@ -21,7 +21,7 @@ index ae6d5919..c2f99c86 100644
import org.kde.kquickcontrolsaddons 2.0
-import "logic.js" as Logic
+import "../code/logic.js" as Logic
-
+
Item {
id: batterymonitor
diff --git a/applets/lock_logout/contents/ui/lockout.qml b/applets/lock_logout/contents/ui/lockout.qml
@@ -34,7 +34,7 @@ index 80e7e53b..0083cf01 100644
import org.kde.kquickcontrolsaddons 2.0
-import "data.js" as Data
+import "../code/data.js" as Data
-
+
Flow {
id: lockout
diff --git a/applets/notifications/package/contents/ui/main.qml b/applets/notifications/package/contents/ui/main.qml
@@ -42,12 +42,12 @@ index acdda88f..989de8ab 100644
--- a/applets/notifications/package/contents/ui/main.qml
+++ b/applets/notifications/package/contents/ui/main.qml
@@ -28,7 +28,7 @@ import org.kde.plasma.extras 2.0 as PlasmaExtras
-
+
import org.kde.plasma.private.notifications 1.0
-
+
-import "uiproperties.js" as UiProperties
+import "../code/uiproperties.js" as UiProperties
-
+
MouseEventListener {
id: notificationsApplet
diff --git a/krunner/dbus/org.kde.krunner.service.in b/krunner/dbus/org.kde.krunner.service.in
@@ -59,7 +59,7 @@ index 85715214..294eab08 100644
Name=org.kde.krunner
-Exec=@CMAKE_INSTALL_PREFIX@/bin/krunner
+Exec=@CMAKE_INSTALL_FULL_BINDIR@/krunner
-
+
diff --git a/kuiserver/org.kde.kuiserver.service.in b/kuiserver/org.kde.kuiserver.service.in
index 7a86d07f..5b3030cc 100644
--- a/kuiserver/org.kde.kuiserver.service.in
@@ -76,7 +76,7 @@ index fe29f57a..247db953 100644
@@ -3,11 +3,6 @@ add_subdirectory(kstartupconfig)
add_subdirectory(ksyncdbusenv)
add_subdirectory(waitforname)
-
+
-#FIXME: reconsider, looks fishy
-if(NOT CMAKE_INSTALL_PREFIX STREQUAL "/usr")
- set(EXPORT_XCURSOR_PATH "XCURSOR_PATH=${CMAKE_INSTALL_PREFIX}/share/icons:$XCURSOR_PATH\":~/.icons:/usr/share/icons:/usr/share/pixmaps:/usr/X11R6/lib/X11/icons\"; export XCURSOR_PATH")
@@ -106,7 +106,7 @@ index e9fa0bee..79e50a96 100644
-# DEFAULT Plasma STARTUP SCRIPT ( @PROJECT_VERSION@ )
+# NIXPKGS KDE STARTUP SCRIPT ( @PROJECT_VERSION@ )
#
-
+
+if test "x$1" = x--failsafe; then
+ KDE_FAILSAFE=1 # General failsafe flag
+ KWIN_COMPOSE=N # Disable KWin's compositing
@@ -117,7 +117,7 @@ index e9fa0bee..79e50a96 100644
# When the X server dies we get a HUP signal from xinit. We must ignore it
# because we still need to do some cleanup.
trap 'echo GOT SIGHUP' HUP
-
+
-# Check if a Plasma session already is running and whether it's possible to connect to X
-kcheckrunning
+# we have to unset this for Darwin since it will screw up KDE's dynamic-loading
@@ -140,12 +140,12 @@ index e9fa0bee..79e50a96 100644
+ echo "\$DISPLAY is not set or cannot connect to the X server."
+ exit 1
fi
-
+
# Boot sequence:
@@ -33,59 +42,132 @@ fi
#
# * Then ksmserver is started which takes control of the rest of the startup sequence
-
+
-# We need to create config folder so we can write startupconfigkeys
-if [ ${XDG_CONFIG_HOME} ]; then
- configDir=$XDG_CONFIG_HOME;
@@ -174,7 +174,7 @@ index e9fa0bee..79e50a96 100644
+if [ -e $XDG_CONFIG_HOME/Trolltech.conf ]; then
+ @NIXPKGS_SED@ -e '/nix\\store\|nix\/store/ d' -i $XDG_CONFIG_HOME/Trolltech.conf
fi
-
+
-mkdir -p $configDir
+@NIXPKGS_KBUILDSYCOCA5@
+
@@ -227,7 +227,7 @@ index e9fa0bee..79e50a96 100644
+cursorSize=0
+EOF
+fi
-
+
#This is basically setting defaults so we can use them with kstartupconfig5
-cat >$configDir/startupconfigkeys <"$XDG_CONFIG_HOME/startupconfigkeys" </plasma-workspace/env/*.sh
-# (where correspond to the system and user's configuration
-# directories, as identified by Qt's qtpaths, e.g. $HOME/.config
@@ -451,9 +451,9 @@ index e9fa0bee..79e50a96 100644
- export GS_LIB
-fi
+@NIXPKGS_XSETROOT@ -cursor_name left_ptr
-
+
echo 'startkde: Starting up...' 1>&2
-
+
-# Make sure that the KDE prefix is first in XDG_DATA_DIRS and that it's set at all.
-# The spec allows XDG_DATA_DIRS to be not set, but X session startup scripts tend
-# to set it to a list of paths *not* including the KDE prefix if it's not /usr or
@@ -472,19 +472,19 @@ index e9fa0bee..79e50a96 100644
export KDE_FULL_SESSION
-xprop -root -f KDE_FULL_SESSION 8t -set KDE_FULL_SESSION true
+@NIXPKGS_XPROP@ -root -f KDE_FULL_SESSION 8t -set KDE_FULL_SESSION true
-
+
KDE_SESSION_VERSION=5
export KDE_SESSION_VERSION
-xprop -root -f KDE_SESSION_VERSION 32c -set KDE_SESSION_VERSION 5
+@NIXPKGS_XPROP@ -root -f KDE_SESSION_VERSION 32c -set KDE_SESSION_VERSION 5
-
+
-KDE_SESSION_UID=`id -ru`
+KDE_SESSION_UID=$(@NIXPKGS_ID@ -ru)
export KDE_SESSION_UID
-
+
XDG_CURRENT_DESKTOP=KDE
export XDG_CURRENT_DESKTOP
-
+
+# Enforce xcb QPA. Helps switching between Wayland and X sessions.
+export QT_QPA_PLATFORM=xcb
+
@@ -527,7 +527,7 @@ index e9fa0bee..79e50a96 100644
- xmessage -geometry 500x100 "Could not sync environment to dbus."
exit 1
fi
-
+
# We set LD_BIND_NOW to increase the efficiency of kdeinit.
# kdeinit unsets this variable before loading applications.
-LD_BIND_NOW=true @CMAKE_INSTALL_FULL_LIBEXECDIR_KF5@/start_kdeinit_wrapper --kded +kcminit_startup
@@ -539,10 +539,10 @@ index e9fa0bee..79e50a96 100644
- xmessage -geometry 500x100 "Could not start kdeinit5. Check your installation."
exit 1
fi
-
+
-qdbus org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit &
+@NIXPKGS_QDBUS@ org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit &
-
+
# finally, give the session control to the session manager
# see kdebase/ksmserver for the description of the rest of the startup sequence
@@ -303,34 +330,37 @@ qdbus org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit &
@@ -568,12 +568,12 @@ index e9fa0bee..79e50a96 100644
test -n "$ksplash_pid" && kill "$ksplash_pid" 2>/dev/null
- xmessage -geometry 500x100 "Could not start ksmserver. Check your installation."
fi
-
+
#Anything after here is logout/shutdown
-
+
-wait_drkonqi=`kreadconfig5 --file startkderc --group WaitForDrKonqi --key Enabled --default true`
+wait_drkonqi=$(@NIXPKGS_KREADCONFIG5@ --file startkderc --group WaitForDrKonqi --key Enabled --default true)
-
+
-if test x"$wait_drkonqi"x = x"true"x ; then
+if [ x"$wait_drkonqi"x = x"true"x ]; then
# wait for remaining drkonqi instances with timeout (in seconds)
@@ -595,18 +595,18 @@ index e9fa0bee..79e50a96 100644
break
fi
@@ -339,15 +369,17 @@ fi
-
+
echo 'startkde: Shutting down...' 1>&2
# just in case
-test -n "$ksplash_pid" && kill "$ksplash_pid" 2>/dev/null
+if [ -n "$ksplash_pid" ]; then
+ kill "$ksplash_pid" 2>/dev/null
+fi
-
+
# Clean up
-kdeinit5_shutdown
+@NIXPKGS_KDEINIT5_SHUTDOWN@
-
+
unset KDE_FULL_SESSION
-xprop -root -remove KDE_FULL_SESSION
+@NIXPKGS_XPROP@ -root -remove KDE_FULL_SESSION
@@ -614,24 +614,24 @@ index e9fa0bee..79e50a96 100644
-xprop -root -remove KDE_SESSION_VERSION
+@NIXPKGS_XPROP@ -root -remove KDE_SESSION_VERSION
unset KDE_SESSION_UID
-
+
echo 'startkde: Done.' 1>&2
diff --git a/startkde/startplasma.cmake b/startkde/startplasma.cmake
index fd232bdf..e1c8fff6 100644
--- a/startkde/startplasma.cmake
+++ b/startkde/startplasma.cmake
-@@ -1,6 +1,6 @@
+@@ -1,4 +1,4 @@
#!/bin/sh
#
-# DEFAULT Plasma STARTUP SCRIPT ( @PROJECT_VERSION@ )
+# NIXPKGS Plasma STARTUP SCRIPT ( @PROJECT_VERSION@ )
#
-
+
# Boot sequence:
@@ -17,17 +17,13 @@
#
# * Then ksmserver is started which takes control of the rest of the startup sequence
-
+
-# We need to create config folder so we can write startupconfigkeys
-if [ ${XDG_CONFIG_HOME} ]; then
- configDir=$XDG_CONFIG_HOME;
@@ -641,7 +641,7 @@ index fd232bdf..e1c8fff6 100644
+if [ -r "$XDG_CONFIG_HOME/startupconfig" ]; then
+ . "$XDG_CONFIG_HOME/startupconfig"
fi
-
+
-[ -r $configDir/startupconfig ] && . $configDir/startupconfig
-
-if test "$kcmfonts_general_forcefontdpi" -ne 0; then
@@ -653,7 +653,7 @@ index fd232bdf..e1c8fff6 100644
fi
@@ -36,11 +32,11 @@ dl=$DESKTOP_LOCKED
unset DESKTOP_LOCKED # Don't want it in the environment
-
+
ksplash_pid=
-if test -z "$dl"; then
+if [ -z "$dl" ]; then
@@ -668,7 +668,7 @@ index fd232bdf..e1c8fff6 100644
@@ -52,48 +48,6 @@ fi
#In wayland we want Plasma to use Qt's scaling
export PLASMA_USE_QT_SCALING=1
-
+
-# Activate the kde font directories.
-#
-# There are 4 directories that may be used for supplying fonts for KDE.
@@ -729,15 +729,15 @@ index fd232bdf..e1c8fff6 100644
- export GS_LIB
-fi
+@NIXPKGS_XSETROOT@ -cursor_name left_ptr
-
+
echo 'startplasma: Starting up...' 1>&2
-
+
# export our session variables to the Xwayland server
-xprop -root -f KDE_FULL_SESSION 8t -set KDE_FULL_SESSION true
-xprop -root -f KDE_SESSION_VERSION 32c -set KDE_SESSION_VERSION 5
+@NIXPKGS_XPROP@ -root -f KDE_FULL_SESSION 8t -set KDE_FULL_SESSION true
+@NIXPKGS_XPROP@ -root -f KDE_SESSION_VERSION 32c -set KDE_SESSION_VERSION 5
-
+
# We set LD_BIND_NOW to increase the efficiency of kdeinit.
# kdeinit unsets this variable before loading applications.
-LD_BIND_NOW=true @CMAKE_INSTALL_FULL_LIBEXECDIR_KF5@/start_kdeinit_wrapper --kded +kcminit_startup
@@ -749,10 +749,10 @@ index fd232bdf..e1c8fff6 100644
- xmessage -geometry 500x100 "Could not start kdeinit5. Check your installation."
exit 1
fi
-
+
-qdbus org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit
+@NIXPKGS_QDBUS@ org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit
-
+
# finally, give the session control to the session manager
# see kdebase/ksmserver for the description of the rest of the startup sequence
@@ -145,27 +89,26 @@ qdbus org.kde.KSplash /KSplash org.kde.KSplash.setStage kinit
@@ -767,10 +767,10 @@ index fd232bdf..e1c8fff6 100644
test -n "$ksplash_pid" && kill "$ksplash_pid" 2>/dev/null
- xmessage -geometry 500x100 "Could not start ksmserver. Check your installation."
fi
-
+
-wait_drkonqi=`kreadconfig5 --file startkderc --group WaitForDrKonqi --key Enabled --default true`
+wait_drkonqi=$(@NIXPKGS_KREADCONFIG5@ --file startkderc --group WaitForDrKonqi --key Enabled --default true)
-
+
-if test x"$wait_drkonqi"x = x"true"x ; then
+if [ x"$wait_drkonqi"x = x"true"x ]; then
# wait for remaining drkonqi instances with timeout (in seconds)
@@ -792,18 +792,18 @@ index fd232bdf..e1c8fff6 100644
break
fi
@@ -174,15 +117,17 @@ fi
-
+
echo 'startplasma: Shutting down...' 1>&2
# just in case
-test -n "$ksplash_pid" && kill "$ksplash_pid" 2>/dev/null
+if [ -n "$ksplash_pid" ]; then
+ kill "$ksplash_pid" 2>/dev/null
+fi
-
+
# Clean up
-kdeinit5_shutdown
+@NIXPKGS_KDEINIT5_SHUTDOWN@
-
+
unset KDE_FULL_SESSION
-xprop -root -remove KDE_FULL_SESSION
+@NIXPKGS_XPROP@ -root -remove KDE_FULL_SESSION
@@ -811,7 +811,7 @@ index fd232bdf..e1c8fff6 100644
-xprop -root -remove KDE_SESSION_VERSION
+@NIXPKGS_XPROP@ -root -remove KDE_SESSION_VERSION
unset KDE_SESSION_UID
-
+
echo 'startplasma: Done.' 1>&2
diff --git a/startkde/startplasmacompositor.cmake b/startkde/startplasmacompositor.cmake
index 417a87d4..3f62745a 100644
@@ -823,7 +823,7 @@ index 417a87d4..3f62745a 100644
-# DEFAULT Plasma STARTUP SCRIPT ( @PROJECT_VERSION@ )
+# NIXPKGS Plasma STARTUP SCRIPT ( @PROJECT_VERSION@ )
#
-
+
-# in case we have been started with full pathname spec without being in PATH
-bindir=`echo "$0" | sed -n 's,^\(/.*\)/[^/][^/]*$,\1,p'`
-if [ -n "$bindir" ]; then
@@ -861,7 +861,7 @@ index 417a87d4..3f62745a 100644
+if [ -e $XDG_CONFIG_HOME/Trolltech.conf ]; then
+ @NIXPKGS_SED@ -e '/nix\\store\|nix\/store/ d' -i $XDG_CONFIG_HOME/Trolltech.conf
fi
-
+
-# We need to create config folder so we can write startupconfigkeys
-if [ ${XDG_CONFIG_HOME} ]; then
- configDir=$XDG_CONFIG_HOME;
@@ -891,7 +891,7 @@ index 417a87d4..3f62745a 100644
+gtk-button-images=1
+EOF
fi
-
+
-mkdir -p $configDir
+# Set the default GTK 3 theme
+gtk3_settings="$XDG_CONFIG_HOME/gtk-3.0/settings.ini"
@@ -919,7 +919,7 @@ index 417a87d4..3f62745a 100644
+cursorSize=0
+EOF
+fi
-
+
#This is basically setting defaults so we can use them with kstartupconfig5
-cat >$configDir/startupconfigkeys <"$XDG_CONFIG_HOME/startupconfigkeys" </plasma-workspace/env/*.sh
-# (where correspond to the system and user's configuration
-# directories, as identified by Qt's qtpaths, e.g. $HOME/.config
@@ -1093,7 +1093,7 @@ index 417a87d4..3f62745a 100644
-done
-
echo 'startplasmacompositor: Starting up...' 1>&2
-
+
-# Make sure that the KDE prefix is first in XDG_DATA_DIRS and that it's set at all.
-# The spec allows XDG_DATA_DIRS to be not set, but X session startup scripts tend
-# to set it to a list of paths *not* including the KDE prefix if it's not /usr or
@@ -1114,16 +1114,16 @@ index 417a87d4..3f62745a 100644
@@ -202,7 +200,7 @@ export KDE_FULL_SESSION
KDE_SESSION_VERSION=5
export KDE_SESSION_VERSION
-
+
-KDE_SESSION_UID=`id -ru`
+KDE_SESSION_UID=$(@NIXPKGS_ID@ -ru)
export KDE_SESSION_UID
-
+
XDG_CURRENT_DESKTOP=KDE
@@ -212,26 +210,47 @@ export XDG_CURRENT_DESKTOP
QT_QPA_PLATFORM=wayland
export QT_QPA_PLATFORM
-
+
+# Source scripts found in /plasma-workspace/env/*.sh
+# (where correspond to the system and user's configuration
+# directories, as identified by Qt's qtpaths, e.g. $HOME/.config
@@ -1165,12 +1165,12 @@ index 417a87d4..3f62745a 100644
+ echo 'startplasmacompositor: Could not sync environment to dbus.' 1>&2
+ exit 1
fi
-
+
-@KWIN_WAYLAND_BIN_PATH@ --xwayland --libinput --exit-with-session=@CMAKE_INSTALL_FULL_LIBEXECDIR@/startplasma
+@KWIN_WAYLAND_BIN_PATH@ --xwayland --libinput --exit-with-session=@NIXPKGS_STARTPLASMA@
-
+
echo 'startplasmacompositor: Shutting down...' 1>&2
-
+
unset KDE_FULL_SESSION
-xprop -root -remove KDE_FULL_SESSION
+@NIXPKGS_XPROP@ -root -remove KDE_FULL_SESSION
@@ -1178,7 +1178,7 @@ index 417a87d4..3f62745a 100644
-xprop -root -remove KDE_SESSION_VERSION
+@NIXPKGS_XPROP@ -root -remove KDE_SESSION_VERSION
unset KDE_SESSION_UID
-
+
echo 'startplasmacompositor: Done.' 1>&2
diff --git a/startkde/waitforname/org.kde.plasma.Notifications.service.in b/startkde/waitforname/org.kde.plasma.Notifications.service.in
index 0a51b84b..f48b5d8a 100644
diff --git a/pkgs/desktops/plasma-5/srcs.nix b/pkgs/desktops/plasma-5/srcs.nix
index 5873f747060..c4f526a3e8c 100644
--- a/pkgs/desktops/plasma-5/srcs.nix
+++ b/pkgs/desktops/plasma-5/srcs.nix
@@ -3,355 +3,355 @@
{
bluedevil = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/bluedevil-5.11.2.tar.xz";
- sha256 = "0gwvmy8zn3wcdvcgc5j84gy1y7cxysy7bvnppg34rh6l5qc7vvjq";
- name = "bluedevil-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/bluedevil-5.11.3.tar.xz";
+ sha256 = "1sgnj3z4s1k7h2ddvcq9r67qc8gbd4yv7zb9a24gi3x3iwd5hsf3";
+ name = "bluedevil-5.11.3.tar.xz";
};
};
breeze = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/breeze-5.11.2.tar.xz";
- sha256 = "1wv5dp657gw4vyiv9zf6r8qbs67sp5g0x0kf1vmr1bp0gkw0ai81";
- name = "breeze-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/breeze-5.11.3.tar.xz";
+ sha256 = "1xlh8m9fw3009gdi0v1nn945rm1zg908apv8v9lgkgks6s2sspxk";
+ name = "breeze-5.11.3.tar.xz";
};
};
breeze-grub = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/breeze-grub-5.11.2.tar.xz";
- sha256 = "04m74iy0rijccmvqd7c9n4p6nk3flmb3zaf5qk8hv31qscg5qjaj";
- name = "breeze-grub-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/breeze-grub-5.11.3.tar.xz";
+ sha256 = "1v1ha0j9kh4vcxknnwk78lzigvpqdrcj4gv6h86pxmwsipr5l2bl";
+ name = "breeze-grub-5.11.3.tar.xz";
};
};
breeze-gtk = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/breeze-gtk-5.11.2.tar.xz";
- sha256 = "0c3vshnkgp6c38rwr1x34hn244r78qkc7fj0ax2cibydv3l852d4";
- name = "breeze-gtk-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/breeze-gtk-5.11.3.tar.xz";
+ sha256 = "1f9xlmc6mhr25mji8ir46qslnfa0i7q7pqkzp1hm5ss3kzdd45gb";
+ name = "breeze-gtk-5.11.3.tar.xz";
};
};
breeze-plymouth = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/breeze-plymouth-5.11.2.tar.xz";
- sha256 = "1v43z59y0zzwsrwa0y255i2q8krvr9yafdciyr63v4pb2564v4sd";
- name = "breeze-plymouth-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/breeze-plymouth-5.11.3.tar.xz";
+ sha256 = "11m65cg74cfhglsppahnppisqp4rnj528b93k78pgvb4xazm7s76";
+ name = "breeze-plymouth-5.11.3.tar.xz";
};
};
discover = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/discover-5.11.2.tar.xz";
- sha256 = "0j31x26s446xvi6dxr83v15xbr6ysifiwvdzil8yfsynifhjk5n3";
- name = "discover-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/discover-5.11.3.tar.xz";
+ sha256 = "1bavw2hynmznd72wmh4cmy6zs4a13gxcsh6gznd99g6shry8svix";
+ name = "discover-5.11.3.tar.xz";
};
};
drkonqi = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/drkonqi-5.11.2.tar.xz";
- sha256 = "1mgcp8zk4md0cyx6z6zz9s64jx9yshlnmsf1jxzhqwg8lyhyb77b";
- name = "drkonqi-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/drkonqi-5.11.3.tar.xz";
+ sha256 = "1683h4nzk9kgwzwjzkr0bmk8vmq07991x4239z3p39z4gnvsmb0h";
+ name = "drkonqi-5.11.3.tar.xz";
};
};
kactivitymanagerd = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kactivitymanagerd-5.11.2.tar.xz";
- sha256 = "165nybhn7pwgr6fds6frwcp3qsnxpmkz3842h0ni0flkkcl74n52";
- name = "kactivitymanagerd-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kactivitymanagerd-5.11.3.tar.xz";
+ sha256 = "1syprfgbcg1821v0mqnalnn3gr40sfvi3m9wcy1hbffqm2k561qq";
+ name = "kactivitymanagerd-5.11.3.tar.xz";
};
};
kde-cli-tools = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kde-cli-tools-5.11.2.tar.xz";
- sha256 = "18pl9v2dxayzwzk4rw674ka3j45dj864604hgg0874kkr3kgsgka";
- name = "kde-cli-tools-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kde-cli-tools-5.11.3.tar.xz";
+ sha256 = "0yhghfsyvx0xlmyigjm8hvp8d4s6pp8h6wbqrbfngslayq624cvi";
+ name = "kde-cli-tools-5.11.3.tar.xz";
};
};
kdecoration = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kdecoration-5.11.2.tar.xz";
- sha256 = "0qkh3p1zzvk0yvlpbvwfgmb2wvj0gd3j2sbz10vplf66fm3ck2va";
- name = "kdecoration-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kdecoration-5.11.3.tar.xz";
+ sha256 = "0ik62pavf9bw1mahiyqlc9qh2za31l4qa3fyz42y81phmr8hbj4a";
+ name = "kdecoration-5.11.3.tar.xz";
};
};
kde-gtk-config = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kde-gtk-config-5.11.2.tar.xz";
- sha256 = "0vhmpma2ssp7nqdy8yd12d42y2a2fnsyyz9msi4s7n1w5qga0g5p";
- name = "kde-gtk-config-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kde-gtk-config-5.11.3.tar.xz";
+ sha256 = "09k02ghsrc5bwk05a7jlyzgwr6a1mzwypy6q1yhkl8jcqaim18ff";
+ name = "kde-gtk-config-5.11.3.tar.xz";
};
};
kdeplasma-addons = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kdeplasma-addons-5.11.2.tar.xz";
- sha256 = "0x1lgvcnrc9vcy9fqvc60ilmcm8pbym76fq784qmgnmzm0br3bq6";
- name = "kdeplasma-addons-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kdeplasma-addons-5.11.3.tar.xz";
+ sha256 = "13vmr5m3gx2b757bnb74qjjr6faj2bn1qb9cngj0gnk9gbdgrwh1";
+ name = "kdeplasma-addons-5.11.3.tar.xz";
};
};
kgamma5 = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kgamma5-5.11.2.tar.xz";
- sha256 = "0k6j6nl26bhdavfr4y0ph17fywprzxjnamh67vibk39xg6vwa56d";
- name = "kgamma5-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kgamma5-5.11.3.tar.xz";
+ sha256 = "18g8rj4l1y1lwl2wrk4cdlpdn6gibbwbipdkmlk0hb4ad1bxkc96";
+ name = "kgamma5-5.11.3.tar.xz";
};
};
khotkeys = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/khotkeys-5.11.2.tar.xz";
- sha256 = "1w1a06v2cgq48z0b1rz6px1g14hm7f5jxzxf7sa26yszsyhwqglm";
- name = "khotkeys-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/khotkeys-5.11.3.tar.xz";
+ sha256 = "1bykjywj6yass35xv858azv9pw74wlqsss6hs9ra4sx0yh0n9ffp";
+ name = "khotkeys-5.11.3.tar.xz";
};
};
kinfocenter = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kinfocenter-5.11.2.tar.xz";
- sha256 = "1131gnqapnin8i4bm3skzhfsqgcaynaxn9xgfwxnj64z41cc8z8l";
- name = "kinfocenter-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kinfocenter-5.11.3.tar.xz";
+ sha256 = "1ip6zkrl81v987z7bj0mvkjmydyarxgih4gzkbgnpppl7746bs5n";
+ name = "kinfocenter-5.11.3.tar.xz";
};
};
kmenuedit = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kmenuedit-5.11.2.tar.xz";
- sha256 = "03412s6wc9h2422lx57rg65zln9ywjk5gbs5mqjr6fi46a1zp5lg";
- name = "kmenuedit-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kmenuedit-5.11.3.tar.xz";
+ sha256 = "1nks0lk1xnywx5r3bzr5npzapg5d25l73ygxq8988q1f4q39jlj6";
+ name = "kmenuedit-5.11.3.tar.xz";
};
};
kscreen = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kscreen-5.11.2.tar.xz";
- sha256 = "0bs09zfq1cs1ajgvz4p7l5naa3g3vzp72v9q7qkncx8yqiffxlnc";
- name = "kscreen-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kscreen-5.11.3.tar.xz";
+ sha256 = "03wcrqvqcsw47x504ydk3dkqw6x9dc2n3skh7asznmpda8ryb6dp";
+ name = "kscreen-5.11.3.tar.xz";
};
};
kscreenlocker = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kscreenlocker-5.11.2.tar.xz";
- sha256 = "1k32nzhv9d4g5ijkx8bl22hp5j1g22frriwq14xjw47ga8vkqmxw";
- name = "kscreenlocker-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kscreenlocker-5.11.3.tar.xz";
+ sha256 = "0i0xcakzznxsk0zqa664xavp64wbqgqim57bkp01wl82s3aik82v";
+ name = "kscreenlocker-5.11.3.tar.xz";
};
};
ksshaskpass = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/ksshaskpass-5.11.2.tar.xz";
- sha256 = "1z3vm8kwyi9pf51bhpqf3phbjkbrqfj4iiqzzs0aqm0l5db5il0r";
- name = "ksshaskpass-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/ksshaskpass-5.11.3.tar.xz";
+ sha256 = "1ij2xspd6clf8plqqgzx6zjq7c1sxrlf7ch9brnxprw29h5qfz34";
+ name = "ksshaskpass-5.11.3.tar.xz";
};
};
ksysguard = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/ksysguard-5.11.2.tar.xz";
- sha256 = "0vy2ivsn0cg70n1cxwa2385fwh350xngc1429zjfcs0jj8lcj21l";
- name = "ksysguard-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/ksysguard-5.11.3.tar.xz";
+ sha256 = "17b5lddmas5n1726xa5r8v0v6gmw6bzpvhcljk2r4yrly6gy3pv9";
+ name = "ksysguard-5.11.3.tar.xz";
};
};
kwallet-pam = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kwallet-pam-5.11.2.tar.xz";
- sha256 = "1jr4zvf9c5npi9mcgil5byx4bwh6kaa205329p5z8i15n1zf250f";
- name = "kwallet-pam-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kwallet-pam-5.11.3.tar.xz";
+ sha256 = "04ps2p3hjvkca8miqmg0xwh3i5van0jld2hb1xp737hy1dfpi9h4";
+ name = "kwallet-pam-5.11.3.tar.xz";
};
};
kwayland-integration = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kwayland-integration-5.11.2.tar.xz";
- sha256 = "1dzlf9638d36h8z5a7rjbb0xl2wjqg04j37gn4jnjclm57bwlrjm";
- name = "kwayland-integration-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kwayland-integration-5.11.3.tar.xz";
+ sha256 = "0j5czhq5r8pxy7pw00by0v75kk4lbijn7mrdnydlca3jjrdcgz6f";
+ name = "kwayland-integration-5.11.3.tar.xz";
};
};
kwin = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kwin-5.11.2.tar.xz";
- sha256 = "1wvq4pll1adncj88qd7isc0ip7hx2c72ah0vvmvxmkwxa4r5a89b";
- name = "kwin-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kwin-5.11.3.tar.xz";
+ sha256 = "1xgx7xn27lzqdwla45scfcnyxva97j2y2m7hgj60cd1mz686pill";
+ name = "kwin-5.11.3.tar.xz";
};
};
kwrited = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/kwrited-5.11.2.tar.xz";
- sha256 = "17i33yvpvpj6q42c58adb99xs1yb7yfchs626vw5nmllv7r7496l";
- name = "kwrited-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/kwrited-5.11.3.tar.xz";
+ sha256 = "0qm3x6ahnis1b98q9h53wdldsj7nqw35s1hcgfqzjqk7nnxzim5i";
+ name = "kwrited-5.11.3.tar.xz";
};
};
libkscreen = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/libkscreen-5.11.2.tar.xz";
- sha256 = "18bf7mzzri7fj8iw60wqbs6w46lin8lninpqpcs5fwz6m81lcxsg";
- name = "libkscreen-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/libkscreen-5.11.3.tar.xz";
+ sha256 = "01wbl1kinsvxfw5lq0wrhsk0fmv8gvkhr7m0w4lq1827wx68lfzw";
+ name = "libkscreen-5.11.3.tar.xz";
};
};
libksysguard = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/libksysguard-5.11.2.tar.xz";
- sha256 = "12d0r4rilydbqdgkm256khvkb9m0hya3p27xqvv3hg77wgxzdl3f";
- name = "libksysguard-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/libksysguard-5.11.3.tar.xz";
+ sha256 = "1jbcd2n1zd6ijybaffm5vs5b80130vii562s98xhinmifzsahzmy";
+ name = "libksysguard-5.11.3.tar.xz";
};
};
milou = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/milou-5.11.2.tar.xz";
- sha256 = "0kxf2q0pk7kyfirrspgpwlnj18v8q2770rrmrv0jcfsgv4jhl2gj";
- name = "milou-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/milou-5.11.3.tar.xz";
+ sha256 = "02j6f4ip7hgb5qpq9812g1pnm8fjd83dc923gyfpzb4i0nf6j93g";
+ name = "milou-5.11.3.tar.xz";
};
};
oxygen = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/oxygen-5.11.2.tar.xz";
- sha256 = "18nkw02q7lzdhalmbwsb5i704szs19zc5a0z73smanf20cfq7a91";
- name = "oxygen-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/oxygen-5.11.3.tar.xz";
+ sha256 = "0zg3qdnip1ad6980ga0lmxndbph3y4dw0qk73dd8022qw5f3ysyp";
+ name = "oxygen-5.11.3.tar.xz";
};
};
plasma-desktop = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-desktop-5.11.2.tar.xz";
- sha256 = "0dz57qywlircjjybxzb3mqxwaid86zdfwjgfwcb6fhm8rxhbhrzq";
- name = "plasma-desktop-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-desktop-5.11.3.tar.xz";
+ sha256 = "1igmq8zj71wf34ap2g0iakpjfq08mlg6yf1ly06111ygsinbg55a";
+ name = "plasma-desktop-5.11.3.tar.xz";
};
};
plasma-integration = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-integration-5.11.2.tar.xz";
- sha256 = "15vjmmrlk9dw0if0z3xam171f8z3qkjcllj3zyc0zxdwi2zw6i2l";
- name = "plasma-integration-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-integration-5.11.3.tar.xz";
+ sha256 = "0bqw5xp71yxciqzd3bmlgsd4mkjl4vcysd9s6bka5mxrlhkqxgx1";
+ name = "plasma-integration-5.11.3.tar.xz";
};
};
plasma-nm = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-nm-5.11.2.tar.xz";
- sha256 = "1h3ajq3fdv8fn0r51cpkhihacpjvpgzpfyg2m9aydh7ajygf0njq";
- name = "plasma-nm-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-nm-5.11.3.tar.xz";
+ sha256 = "1zqlg5jm3pgiirr98j3fl1h6wbhf4f06qainpy42b5w42vhizspk";
+ name = "plasma-nm-5.11.3.tar.xz";
};
};
plasma-pa = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-pa-5.11.2.tar.xz";
- sha256 = "1ckk4ckhy5y3b6cm7gahwkqvf8bxndk0srij3ggqdasxzdc4fjn8";
- name = "plasma-pa-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-pa-5.11.3.tar.xz";
+ sha256 = "07rwlqpmvbvdidhfhw8xk6lvarimd1mhm085vjk7g2wmzw5n69wl";
+ name = "plasma-pa-5.11.3.tar.xz";
};
};
plasma-sdk = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-sdk-5.11.2.tar.xz";
- sha256 = "10ayy3r36ysq3a79nlpqspfff0s28iq2xyp5767qpmzfrjby4bcx";
- name = "plasma-sdk-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-sdk-5.11.3.tar.xz";
+ sha256 = "17h42223agz4vvbff13xd1p7xa5swnhcrmh1779mswl1rfznrkys";
+ name = "plasma-sdk-5.11.3.tar.xz";
};
};
plasma-tests = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-tests-5.11.2.tar.xz";
- sha256 = "06k1cmmbyp4rslhmj6b1ngq6pg0hv9hmc3yi135vjgppj5x523mm";
- name = "plasma-tests-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-tests-5.11.3.tar.xz";
+ sha256 = "0ac2i66f3mywvkf7041sg3hsa97f69y5aibpk0fz41q9zi5jwzv3";
+ name = "plasma-tests-5.11.3.tar.xz";
};
};
plasma-vault = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-vault-5.11.2.tar.xz";
- sha256 = "1lxp40lmb03aicw9lz742i1lrigkki76yy7p5h9gnb4djzv5h0m6";
- name = "plasma-vault-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-vault-5.11.3.tar.xz";
+ sha256 = "12y2331lpp7i3fl6nbm78n6qh7hd7vmrvc94jkzwx5pbql6nx2ia";
+ name = "plasma-vault-5.11.3.tar.xz";
};
};
plasma-workspace = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-workspace-5.11.2.tar.xz";
- sha256 = "12i7raf4qqinr3wd4kzz96pkng19c7mdjqz28m8jwb3c1gdlps2w";
- name = "plasma-workspace-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-workspace-5.11.3.tar.xz";
+ sha256 = "0skn3mg90ghx3bmlj7snbhap9z2fq0hab0gfi4pv80ggyl5jf9sp";
+ name = "plasma-workspace-5.11.3.tar.xz";
};
};
plasma-workspace-wallpapers = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plasma-workspace-wallpapers-5.11.2.tar.xz";
- sha256 = "01a4cz7d15mrb96yhfvck61vbqdnw208mgssrllrmcfdn7hwalv1";
- name = "plasma-workspace-wallpapers-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plasma-workspace-wallpapers-5.11.3.tar.xz";
+ sha256 = "1xbfghhb6bjlqs2fk3z8k3q0lfirqmyqyxym2w8k69im2fscg0rl";
+ name = "plasma-workspace-wallpapers-5.11.3.tar.xz";
};
};
plymouth-kcm = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/plymouth-kcm-5.11.2.tar.xz";
- sha256 = "1dig5msins4grby4lvrrby0adjci8yplq1nw52xq571qvvcixjf4";
- name = "plymouth-kcm-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/plymouth-kcm-5.11.3.tar.xz";
+ sha256 = "1sbxwvi402lcnzxalgr85srh8vd4wy26gav7q23qbhd5axh26f06";
+ name = "plymouth-kcm-5.11.3.tar.xz";
};
};
polkit-kde-agent = {
- version = "1-5.11.2";
+ version = "1-5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/polkit-kde-agent-1-5.11.2.tar.xz";
- sha256 = "0qbr8c3fn6yp6ixfcfg4190q2wdj1xlm6791nn23bynd0nrxmxb3";
- name = "polkit-kde-agent-1-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/polkit-kde-agent-1-5.11.3.tar.xz";
+ sha256 = "088ch67syimxqlda0nczrrj1hb7ynsrwdcb0bq1pcndp57p71vzl";
+ name = "polkit-kde-agent-1-5.11.3.tar.xz";
};
};
powerdevil = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/powerdevil-5.11.2.tar.xz";
- sha256 = "10ah28rqdn8xhz578yhcnampbfq7vh89gm0jzjx9ryxiv6rch2cw";
- name = "powerdevil-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/powerdevil-5.11.3.tar.xz";
+ sha256 = "1807x3vzq24vip7dnl87cd1hn368vqk7cbyhai492irf20j7hn82";
+ name = "powerdevil-5.11.3.tar.xz";
};
};
sddm-kcm = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/sddm-kcm-5.11.2.tar.xz";
- sha256 = "159qwvzk7g4ygg2sdb6k84vq0k1yadrgwzgq6sfbfhffim1w6dr1";
- name = "sddm-kcm-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/sddm-kcm-5.11.3.tar.xz";
+ sha256 = "1c9dm8819yaynq6cbzcg0j77cz0cf2cwrz9cfmr4w65ypl937va5";
+ name = "sddm-kcm-5.11.3.tar.xz";
};
};
systemsettings = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/systemsettings-5.11.2.tar.xz";
- sha256 = "11gcrd1i28hifjysvnj97fcy619h660j4bgszj9lmr8w554j0cri";
- name = "systemsettings-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/systemsettings-5.11.3.tar.xz";
+ sha256 = "1abza0qmdhfdlr2k53lc4ymr42ri1pfv0yyf9plxhra7f7f2ylf7";
+ name = "systemsettings-5.11.3.tar.xz";
};
};
user-manager = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/user-manager-5.11.2.tar.xz";
- sha256 = "1pyyhhi276s8503q65n25rqwcddcbzy6l2vl844dnmmpd1m0gi4r";
- name = "user-manager-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/user-manager-5.11.3.tar.xz";
+ sha256 = "0d2i3ndq9vwr2m39i6qdn18bg4c19rqhfy2a38lhm30g288wxfbr";
+ name = "user-manager-5.11.3.tar.xz";
};
};
xdg-desktop-portal-kde = {
- version = "5.11.2";
+ version = "5.11.3";
src = fetchurl {
- url = "${mirror}/stable/plasma/5.11.2/xdg-desktop-portal-kde-5.11.2.tar.xz";
- sha256 = "0yjidwqk25c7grj42facqfl84ai7h4fin0zlf8y9jdksv26hskl0";
- name = "xdg-desktop-portal-kde-5.11.2.tar.xz";
+ url = "${mirror}/stable/plasma/5.11.3/xdg-desktop-portal-kde-5.11.3.tar.xz";
+ sha256 = "01jcya7xyrn3d99raqvbzfwllihzdpyizx757f87pgg43dmbggwm";
+ name = "xdg-desktop-portal-kde-5.11.3.tar.xz";
};
};
}
diff --git a/pkgs/development/beam-modules/hex-packages.nix b/pkgs/development/beam-modules/hex-packages.nix
index d8d55c01120..df781d3e247 100644
--- a/pkgs/development/beam-modules/hex-packages.nix
+++ b/pkgs/development/beam-modules/hex-packages.nix
@@ -11,6 +11,15 @@
* airbrakex_0_0_8
* alembic_2_1_0
* algolia_0_3_2
+ * alice_0_3_6
+ * alice_against_humanity_0_1_2
+ * alice_google_images_0_1_3
+ * alice_karma_0_2_0
+ * alice_personable_0_0_2
+ * alice_reddit_0_0_3
+ * alice_shizzle_0_1_2
+ * alice_tielurs_heart_rate_0_0_5
+ * alice_xkcd_0_0_3
* alphonse_0_1_0
* amqp_0_1_1
* amqp_0_1_4
@@ -31,6 +40,7 @@
* aws_http_0_2_4
* b2_client_0_0_1
* backoff_1_1_3
+ * backy_0_0_5
* balanced_3_1_0
* bamboo_sendgrid_0_1_0
* bandwidth_1_2_1
@@ -51,6 +61,7 @@
* blackbook_0_3_1
* block_timer_0_0_1
* bno055_0_0_1
+ * boltun_1_0_1
* booter_0_1_0
* bottler_0_5_0
* bouncer_0_1_5
@@ -119,6 +130,7 @@
* cloudi_service_validate_1_5_1
* cloudi_service_zeromq_1_5_1
* clox_0_1_3
+ * coffee_rotor_0_2_1
* coinbase_0_0_1
* comeonin_ecto_password_2_0_0_rc_0
* commerce_billing_0_0_2
@@ -142,6 +154,8 @@
* cpg_1_4_0
* cpg_1_5_1
* cqrex_0_0_1
+ * cqrs_0_0_7
+ * cqrs_events_0_0_4
* craterl_0_2_3
* crudex_0_0_2
* crypto_ext_0_1_3
@@ -151,6 +165,7 @@
* datomic_gen_server_2_0_1
* dayron_0_1_1
* db_0_9_0
+ * db_connection_1_0_0_rc_0
* dbschema_0_2_0
* dbus_0_5_0
* ddb_client_0_1_17
@@ -205,6 +220,7 @@
* ectograph_0_0_8
* ectoo_0_0_4
* ectophile_0_3_0
+ * edeliver_1_2_9
* eden_0_1_3
* edgarex_0_0_2
* efrisby_0_2_0
@@ -222,12 +238,15 @@
* elixir_drawille_0_0_3
* elixir_ipfs_api_0_1_0
* elixir_locker_0_1_4
+ * elixir_nsq_1_0_3
* elixometer_1_2_1
* elixtagram_0_2_7
* elixush_0_0_4
* elli_xpblfe_0_1_1
* elmit_0_0_1
+ * email_checker_0_0_3
* emodel_1_3_1
+ * eno_0_0_1
* enotify_0_1_0
* ensq_0_1_6
* env_conf_0_3_0
@@ -252,9 +271,11 @@
* esip_1_0_4
* espec_phoenix_0_2_1
* etcd_0_0_2
+ * etude_0_1_5
* etude_request_0_1_0
* euler_0_0_1
* event_source_encoder_0_0_3
+ * eventstore_0_2_1
* everex_0_1_1
* everyoneapi_0_0_1
* everything_location_0_0_1
@@ -315,6 +336,8 @@
* exprotobuf_0_10_2
* exprotobuf_0_13_0
* exprotobuf_1_0_0
+ * exq_0_7_1
+ * exq_ui_0_7_1
* exquery_0_0_11
* exrabbit_0_0_2
* exrecaptcha_0_0_3
@@ -322,6 +345,12 @@
* exrm_0_14_17
* exrm_0_18_8
* exrm_0_19_9
+ * exrm_1_0_5
+ * exrm_deb_0_0_6
+ * exrm_docker_0_1_0
+ * exrm_heroku_0_1_1
+ * exrm_rpm_0_3_3
+ * exrm_smartos_gz_1_0_0
* exseed_0_0_3
* exsentry_0_5_0
* exsyslog_1_0_1
@@ -357,6 +386,7 @@
* fleet_api_0_0_15
* floorplan_0_1_1
* flower_power_0_3_2
+ * flub_0_9_0
* fluent_client_0_1_0
* folsom_ddb_0_1_22
* font_awesome_phoenix_0_3_2
@@ -442,6 +472,7 @@
* kalends_0_6_5
* kane_0_1_1
* katipo_0_3_4
+ * kcl_0_6_2
* keccakf1600_2_0_0
* keelless_0_1_0
* keenex_0_3_0
@@ -463,6 +494,7 @@
* libex_config_0_2_0
* libhowl_0_1_36
* libleofs_0_1_2
+ * librex_1_0_1
* libsnarl_0_3_40
* libsnarl_0_3_46
* libsniffle_0_3_47
@@ -478,7 +510,9 @@
* mailgun_webhook_auth_1_0_0
* mailibex_0_1_0
* mailman_0_2_2
+ * mandrag_0_1_1
* mandrillex_0_2_0
+ * mariaex_0_7_5
* maru_0_10_1
* maru_swagger_0_8_0
* marvel_1_0_0
@@ -489,6 +523,7 @@
* mdns_client_lib_0_1_33
* mdns_client_lib_0_1_39
* medex_0_1_2
+ * merkle_0_0_4
* message_pack_0_2_0
* meta_0_0_1
* migratrex_0_0_1
@@ -496,6 +531,7 @@
* mixstar_0_0_1
* mmath_0_1_15
* mobiledoc_0_0_1
+ * moebius_2_0_1
* monetized_0_4_0
* money_1_0_0
* mongo_0_5_4
@@ -586,6 +622,7 @@
* phoenix_linguist_0_0_1
* phoenix_live_reload_1_0_5
* phoenix_microsoftbot_0_1_0
+ * phoenix_pubsub_postgres_0_0_2
* phoenix_pubsub_rabbitmq_0_0_1
* phoenix_pubsub_redis_2_0_0
* phoenix_ratchet_0_2_0
@@ -617,6 +654,7 @@
* plug_newrelic_0_0_5
* plug_secure_headers_0_0_1
* plug_session_memcached_0_3_3
+ * plug_session_redis_0_1_0
* png_0_1_1
* poison_1_0_3
* poison_1_1_1
@@ -626,13 +664,17 @@
* portal_0_0_1
* porterstemmer_0_0_1
* portmidi_5_0_0
+ * posterize_0_11_0
+ * postgrex_0_11_1
* postgrex_0_6_0
* pqueue_1_4_0
* proper_1_1_1_beta
* protego_0_1_0
* protobuffs_0_8_2
* provider_asn1_0_2_1
+ * pulse_0_1_3
* pulse_libs_1_0_0
+ * pusher_0_1_3
* pushex_0_0_5
* pynchon_0_1_1
* quick_chex_0_2_1
@@ -645,6 +687,7 @@
* raygun_0_3_0
* reactive_0_0_1
* readme_md_doc_0_1_2
+ * reagent_0_1_9
* reaxt_0_3_2
* rebar3_abnfc_plugin_0_1_0
* rebar3_auto_0_3_0
@@ -1545,267 +1588,6 @@ let
algae = algae_0_10_0;
- alice_0_3_6 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- poison_2_1_0,
- redix_0_3_6,
- poolboy_1_5_1,
- slack_0_4_2
- }:
- buildMix ({
- name = "alice";
- version = "0.3.6";
- src = fetchHex {
- pkg = "alice";
- version = "0.3.6";
- sha256 =
- "f5c549f6983a5cc5f13320728315d101c8117f939df29e51c10ed3ff26809d54";
- };
- beamDeps = [ poison_2_1_0 redix_0_3_6 poolboy_1_5_1 slack_0_4_2
- ];
-
- meta = {
- description = ''A Slack bot'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/adamzaninovich/alice";
- };
- } // packageOverrides)
- ) {};
-
- alice = alice_0_3_6;
-
- alice_against_humanity_0_1_2 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, alice_0_3_6 }:
- buildMix ({
- name = "alice_against_humanity";
- version = "0.1.2";
- src = fetchHex {
- pkg = "alice_against_humanity";
- version = "0.1.2";
- sha256 =
- "aac5f049b59d0eaaea2383e1fc8fec28125b9a29ffda7fbe214d829738ad3935";
- };
- beamDeps = [ alice_0_3_6 ];
-
- meta = {
- description = ''A handler for the Alice Slack bot. Play Cards
- Against Humanity with Alice.'';
- license = stdenv.lib.licenses.mit;
- homepage =
- "https://github.com/adamzaninovich/alice_against_humanity";
- };
- } // packageOverrides)
- ) {};
-
- alice_against_humanity = alice_against_humanity_0_1_2;
-
- alice_google_images_0_1_3 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, alice_0_3_6 }:
- buildMix ({
- name = "alice_google_images";
- version = "0.1.3";
- src = fetchHex {
- pkg = "alice_google_images";
- version = "0.1.3";
- sha256 =
- "04b4e23c44a67c032c1ac8e2da4ca0fca03ec20cf207b4cb40eba0cb17e975e8";
- };
- beamDeps = [ alice_0_3_6 ];
-
- meta = {
- description = ''A handler for the Alice Slack bot. Get random
- images from Google'';
- license = stdenv.lib.licenses.mit;
- homepage =
- "https://github.com/adamzaninovich/alice_google_images";
- };
- } // packageOverrides)
- ) {};
-
- alice_google_images = alice_google_images_0_1_3;
-
- alice_karma_0_2_0 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, alice_0_3_6 }:
- buildMix ({
- name = "alice_karma";
- version = "0.2.0";
- src = fetchHex {
- pkg = "alice_karma";
- version = "0.2.0";
- sha256 =
- "8b1a6da30511fbc9c6df4035994407813af5ff194768ad64ebc1379cd923591d";
- };
- beamDeps = [ alice_0_3_6 ];
-
- meta = {
- longDescription = ''A handler for the Alice Slack bot. Allows
- Alice to keep track of karma points for
- arbitrary terms.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/adamzaninovich/alice_karma";
- };
- } // packageOverrides)
- ) {};
-
- alice_karma = alice_karma_0_2_0;
-
- alice_personable_0_0_2 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, alice_0_3_6 }:
- buildMix ({
- name = "alice_personable";
- version = "0.0.2";
- src = fetchHex {
- pkg = "alice_personable";
- version = "0.0.2";
- sha256 =
- "fb80938b27c3ae374b3d0bf284de9902d65e85dd8da2d4c80238a03b819b8aad";
- };
- beamDeps = [ alice_0_3_6 ];
-
- meta = {
- description = ''A plugin for the Alice chat bot to make her seem
- a bit more human.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/mattr-/alice_personable";
- };
- } // packageOverrides)
- ) {};
-
- alice_personable = alice_personable_0_0_2;
-
- alice_reddit_0_0_3 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- readit_0_0_3,
- alice_0_3_6
- }:
- buildMix ({
- name = "alice_reddit";
- version = "0.0.3";
- src = fetchHex {
- pkg = "alice_reddit";
- version = "0.0.3";
- sha256 =
- "bd1d16dde4cb066b4ae7486da425148fab23ae5bece0d283e1c27352b7707dbc";
- };
- beamDeps = [ readit_0_0_3 alice_0_3_6 ];
-
- meta = {
- description = ''Alice does Reddit'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/adamzaninovich/alice_reddit";
- };
- } // packageOverrides)
- ) {};
-
- alice_reddit = alice_reddit_0_0_3;
-
- alice_shizzle_0_1_2 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- gizoogle_0_0_2,
- alice_0_3_6
- }:
- buildMix ({
- name = "alice_shizzle";
- version = "0.1.2";
- src = fetchHex {
- pkg = "alice_shizzle";
- version = "0.1.2";
- sha256 =
- "c98481d59c004f905958b9412bff1d288a649cf373afb4fea307222af2597c19";
- };
- beamDeps = [ gizoogle_0_0_2 alice_0_3_6 ];
-
- meta = {
- longDescription = ''A handlez fo` tha Alice Slack bot fo` realz.
- Uses Gizoogle ta allow you ta drop a rhyme like
- a thug n` retrieve links fo` translated sitez'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/notdevinclark/alice_shizzle";
- };
- } // packageOverrides)
- ) {};
-
- alice_shizzle = alice_shizzle_0_1_2;
-
- alice_tielurs_heart_rate_0_0_5 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- alice_0_3_6,
- timex_2_1_6,
- httpoison_0_8_3
- }:
- buildMix ({
- name = "alice_tielurs_heart_rate";
- version = "0.0.5";
- src = fetchHex {
- pkg = "alice_tielurs_heart_rate";
- version = "0.0.5";
- sha256 =
- "691b49b417029034d5b1905e06fa266c114d41fc9066047aa65212224e0bb5cc";
- };
- beamDeps = [ alice_0_3_6 timex_2_1_6 httpoison_0_8_3 ];
-
- meta = {
- description = ''A handler for the Alice Slack bot. Allows Alice
- to check Tielur`s heart rate'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/tielur/alice_tielurs_heart_rate";
- };
- } // packageOverrides)
- ) {};
-
- alice_tielurs_heart_rate = alice_tielurs_heart_rate_0_0_5;
-
- alice_xkcd_0_0_3 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- xkcd_0_0_1,
- alice_0_3_6
- }:
- buildMix ({
- name = "alice_xkcd";
- version = "0.0.3";
- src = fetchHex {
- pkg = "alice_xkcd";
- version = "0.0.3";
- sha256 =
- "13562b43fd99c7d9cdc568d7511c154842b9a59a19eca9df019069193bd94842";
- };
- beamDeps = [ xkcd_0_0_1 alice_0_3_6 ];
-
- meta = {
- longDescription = ''A handler for the Alice Slack bot. Retrieves
- latest, specific and random XKCD comics.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/notdevinclark/alice_xkcd";
- };
- } // packageOverrides)
- ) {};
-
- alice_xkcd = alice_xkcd_0_0_3;
-
amazon_product_advertising_client_0_1_1 = callPackage
(
{
@@ -2591,37 +2373,6 @@ let
b2 = b2_0_0_6;
- backy_0_0_5 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- poison_2_1_0,
- postgrex_0_11_1
- }:
- buildMix ({
- name = "backy";
- version = "0.0.5";
- src = fetchHex {
- pkg = "backy";
- version = "0.0.5";
- sha256 =
- "e581cc209ec08e61f0ba2205b39b7154f9fb3d12f6636e76ebd3ddce5e85a0e6";
- };
- beamDeps = [ poison_2_1_0 postgrex_0_11_1 ];
-
- meta = {
- description = ''A simple background job queue backed by
- postgresql.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/kuon/backy";
- };
- } // packageOverrides)
- ) {};
-
- backy = backy_0_0_5;
-
bamboo_0_3_2 = callPackage
(
{
@@ -4303,32 +4054,6 @@ let
bmfont = bmfont_0_0_1;
- boltun_1_0_1 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, postgrex_0_11_1 }:
- buildMix ({
- name = "boltun";
- version = "1.0.1";
- src = fetchHex {
- pkg = "boltun";
- version = "1.0.1";
- sha256 =
- "4b787aa6cafedca1a3a35b40ca8fee944641b1577b18c4e9e8c234ffd728e8d9";
- };
- beamDeps = [ postgrex_0_11_1 ];
-
- meta = {
- longDescription = ''Transforms notifications from the Postgres
- LISTEN/NOTIFY mechanism into callback
- execution'';
- license = stdenv.lib.licenses.isc;
- homepage = "https://github.com/bitgamma/boltun";
- };
- } // packageOverrides)
- ) {};
-
- boltun = boltun_1_0_1;
-
bookingsync_api_client_v3_0_0_1 = callPackage
(
{
@@ -5871,31 +5596,6 @@ let
codepagex = codepagex_0_1_2;
- coffee_rotor_0_2_1 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, rotor_0_2_2 }:
- buildMix ({
- name = "coffee_rotor";
- version = "0.2.1";
- src = fetchHex {
- pkg = "coffee_rotor";
- version = "0.2.1";
- sha256 =
- "cb2f786c1abf109ed4d86ec175c02cb09adb1f1ee52d7a4ef0c9e65979d4f365";
- };
- beamDeps = [ rotor_0_2_2 ];
-
- meta = {
- description = ''A [rotor](https://github.com/HashNuke/rotor) to
- compile CoffeeScript files '';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/HashNuke/coffee_rotor";
- };
- } // packageOverrides)
- ) {};
-
- coffee_rotor = coffee_rotor_0_2_1;
-
coincap_io_0_0_2 = callPackage
(
{
@@ -7022,37 +6722,6 @@ let
cqex = cqex_0_2_0;
- cqrs_0_0_7 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- cqrs_events_0_0_4,
- cqrs_commands_0_0_6
- }:
- buildMix ({
- name = "cqrs";
- version = "0.0.7";
- src = fetchHex {
- pkg = "cqrs";
- version = "0.0.7";
- sha256 =
- "feb8f5b6e8bb0a7bbc622ad6b0b518e218d3adfad6ef55b16d531c992240c41f";
- };
- beamDeps = [ cqrs_events_0_0_4 cqrs_commands_0_0_6 ];
-
- meta = {
- description = ''This is not production ready yet but I want your
- feedback.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/amberbit/cqrs_commands";
- };
- } // packageOverrides)
- ) {};
-
- cqrs = cqrs_0_0_7;
-
cqrs_commands_0_0_6 = callPackage
(
{
@@ -7093,38 +6762,6 @@ let
cqrs_commands = cqrs_commands_0_0_6;
- cqrs_events_0_0_4 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- syn_1_4_0,
- poison_2_0_1,
- moebius_2_0_1
- }:
- buildMix ({
- name = "cqrs_events";
- version = "0.0.4";
- src = fetchHex {
- pkg = "cqrs_events";
- version = "0.0.4";
- sha256 =
- "21c5ee4b8b814abf7ced3c88069511dd1a9a5c1c16a17c175228bfe5a9e4b7f8";
- };
- beamDeps = [ syn_1_4_0 poison_2_0_1 moebius_2_0_1 ];
-
- meta = {
- description = ''This is not production ready yet but I want your
- feedback.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/amberbit/cqrs_commands";
- };
- } // packageOverrides)
- ) {};
-
- cqrs_events = cqrs_events_0_0_4;
-
crazy_pants_0_0_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -7950,38 +7587,6 @@ let
datastructures = datastructures_0_2_5;
- db_connection_1_0_0_rc_0 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- sbroker_0_6_2,
- poolboy_1_5_1,
- connection_1_0_2
- }:
- buildMix ({
- name = "db_connection";
- version = "1.0.0-rc.0";
- src = fetchHex {
- pkg = "db_connection";
- version = "1.0.0-rc.0";
- sha256 =
- "ff4e4805da74db0fe9dbe751ce39e1549c7bf80593dd1cd53b31458df801026d";
- };
- beamDeps = [ sbroker_0_6_2 poolboy_1_5_1 connection_1_0_2 ];
-
- meta = {
- description = ''Database connection behaviour for database
- transactions and connection pooling'';
- license = stdenv.lib.licenses.asl20;
- homepage = "https://github.com/fishcakez/db_connection";
- };
- } // packageOverrides)
- ) {};
-
- db_connection = db_connection_1_0_0_rc_0;
-
dbg_1_0_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -9759,32 +9364,6 @@ let
ed25519 = ed25519_0_2_0;
- edeliver_1_2_9 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "edeliver";
- version = "1.2.9";
- src = fetchHex {
- pkg = "edeliver";
- version = "1.2.9";
- sha256 =
- "0673ffc1f6eb6f2c29097afa81baa7f9be18cf54bd796724b16656297aff85df";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- longDescription = ''Build and Deploy Elixir Applications and
- perform Hot-Code Upgrades and Schema
- Migrations'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/boldpoker/edeliver";
- };
- } // packageOverrides)
- ) {};
-
- edeliver = edeliver_1_2_9;
-
edib_0_7_0 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -10446,42 +10025,6 @@ let
elixir_mod_event = elixir_mod_event_0_0_5;
- elixir_nsq_1_0_3 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- uuid_1_1_4,
- socket_0_3_4,
- poison_1_5_2,
- httpotion_2_2_2
- }:
- buildMix ({
- name = "elixir_nsq";
- version = "1.0.3";
- src = fetchHex {
- pkg = "elixir_nsq";
- version = "1.0.3";
- sha256 =
- "6d30c3754dfdd988f927b9c6ae51d3e0ec4b0d2477b99047baf7a52c96bf9494";
- };
- beamDeps = [
- uuid_1_1_4 socket_0_3_4 poison_1_5_2 httpotion_2_2_2
- ];
-
- meta = {
- longDescription = ''A client library for NSQ, `elixir_nsq` aims
- to be complete, easy to use, and well tested.
- Developed at Wistia (http://wistia.com).'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/wistia/elixir_nsq";
- };
- } // packageOverrides)
- ) {};
-
- elixir_nsq = elixir_nsq_1_0_3;
-
elixir_prelude_0_2_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -10761,36 +10304,6 @@ let
elmxir = elmxir_0_0_1;
- email_checker_0_0_3 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, socket_0_3_4 }:
- buildMix ({
- name = "email_checker";
- version = "0.0.3";
- src = fetchHex {
- pkg = "email_checker";
- version = "0.0.3";
- sha256 =
- "feac6fa5cc1343b437221ace18fa8fa7251dfa777e986063e13f435d6aff990c";
- };
- beamDeps = [ socket_0_3_4 ];
-
- meta = {
- longDescription = ''Simple library checking the validity of an
- email. Checks are performed in the following
- order: - REGEX: validate the emails has a good
- looking format - MX: validate the domain sever
- contains MX records - SMTP: validate the SMTP
- behind the MX records knows this email address
- (no email sent)'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/kdisneur/email_checker";
- };
- } // packageOverrides)
- ) {};
-
- email_checker = email_checker_0_0_3;
-
eministat_0_10_1 = callPackage
(
{ buildErlangMk, packageOverrides ? {}, fetchHex }:
@@ -10842,37 +10355,6 @@ let
eml = eml_0_7_1;
- eno_0_0_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- postgrex_0_11_1,
- mariaex_0_7_5,
- combine_0_7_0
- }:
- buildMix ({
- name = "eno";
- version = "0.0.1";
- src = fetchHex {
- pkg = "eno";
- version = "0.0.1";
- sha256 =
- "217cabaf3d3a4f5e46d9b48a88a2cafded20a04a2f477f6bec37b3a82b40424a";
- };
- beamDeps = [ postgrex_0_11_1 mariaex_0_7_5 combine_0_7_0 ];
-
- meta = {
- description = ''lightweight SQL toolkit'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/zweifisch/eno";
- };
- } // packageOverrides)
- ) {};
-
- eno = eno_0_0_1;
-
env_0_1_0 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -11990,35 +11472,6 @@ let
ets_owner = ets_owner_1_0_0;
- etude_0_1_5 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- rebind_0_1_3,
- lineo_0_0_1
- }:
- buildMix ({
- name = "etude";
- version = "0.1.5";
- src = fetchHex {
- pkg = "etude";
- version = "0.1.5";
- sha256 =
- "4600f34a15fe85e74e181e4af9e4504ba1fedf42fcad77fd9d571b7443038355";
- };
- beamDeps = [ rebind_0_1_3 lineo_0_0_1 ];
-
- meta = {
- description = ''parallel computation coordination utilities for
- erlang/elixir'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/camshaft/etude";
- };
- } // packageOverrides)
- ) {};
-
etude_1_0_0_beta_0 = callPackage
(
{
@@ -12176,37 +11629,6 @@ let
event_nanny = event_nanny_0_1_1;
- eventstore_0_2_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- postgrex_0_11_1,
- poolboy_1_5_1,
- fsm_0_2_0
- }:
- buildMix ({
- name = "eventstore";
- version = "0.2.1";
- src = fetchHex {
- pkg = "eventstore";
- version = "0.2.1";
- sha256 =
- "ca035c60f925868826eb81bc85a91a7fa5e0637e3232d68e2d7aef248bf2ca35";
- };
- beamDeps = [ postgrex_0_11_1 poolboy_1_5_1 fsm_0_2_0 ];
-
- meta = {
- description = ''EventStore using PostgreSQL for persistence.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/slashdotdash/eventstore";
- };
- } // packageOverrides)
- ) {};
-
- eventstore = eventstore_0_2_1;
-
eventstore_client_0_1_4 = callPackage
(
{
@@ -15191,73 +14613,6 @@ let
exprof = exprof_0_2_0;
- exq_0_7_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- uuid_1_1_4,
- timex_2_1_6,
- redix_0_3_6,
- poison_2_1_0
- }:
- buildMix ({
- name = "exq";
- version = "0.7.1";
- src = fetchHex {
- pkg = "exq";
- version = "0.7.1";
- sha256 =
- "d6694cddf4a6808c7bb9d8bcc9b917fe1a3720a22a917767a4f0ddcaa5b6d148";
- };
- beamDeps = [ uuid_1_1_4 timex_2_1_6 redix_0_3_6 poison_2_1_0 ];
-
- meta = {
- longDescription = ''Exq is a job processing library compatible
- with Resque / Sidekiq for the Elixir
- language.'';
- license = stdenv.lib.licenses.free;
- homepage = "https://github.com/akira/exq";
- };
- } // packageOverrides)
- ) {};
-
- exq = exq_0_7_1;
-
- exq_ui_0_7_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- plug_1_1_5,
- exq_0_7_1,
- cowboy_1_0_4
- }:
- buildMix ({
- name = "exq_ui";
- version = "0.7.1";
- src = fetchHex {
- pkg = "exq_ui";
- version = "0.7.1";
- sha256 =
- "5ff47501d6280afd4a07b74190f96e94345653db617d24e3ffc1c5cbb2f1de72";
- };
- beamDeps = [ plug_1_1_5 exq_0_7_1 cowboy_1_0_4 ];
-
- meta = {
- longDescription = ''Exq UI is the UI component for Exq, a job
- processing library. Exq UI provides the UI
- dashboard to display stats on job processing.'';
-
- homepage = "https://github.com/akira/exq";
- };
- } // packageOverrides)
- ) {};
-
- exq_ui = exq_ui_0_7_1;
-
exql_0_0_3 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex, tds_0_5_4 }:
@@ -15406,167 +14761,6 @@ let
exrethinkdb = exrethinkdb_0_0_3;
- exrm_1_0_5 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, relx_3_19_0 }:
- buildMix ({
- name = "exrm";
- version = "1.0.5";
- src = fetchHex {
- pkg = "exrm";
- version = "1.0.5";
- sha256 =
- "fef4ec90a6cafcff138cf51a5acc882392b7b34bd13372373ad8abc09ea0ef47";
- };
- beamDeps = [ relx_3_19_0 ];
-
- meta = {
- longDescription = ''Exrm, or Elixir Release Manager, provides mix
- tasks for building, upgrading, and controlling
- release packages for your application.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/bitwalker/exrm";
- };
- } // packageOverrides)
- ) {};
-
- exrm = exrm_1_0_5;
-
- exrm_deb_0_0_6 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- vex_0_5_5,
- timex_2_1_6,
- exrm_1_0_5
- }:
- buildMix ({
- name = "exrm_deb";
- version = "0.0.6";
- src = fetchHex {
- pkg = "exrm_deb";
- version = "0.0.6";
- sha256 =
- "f78edff8a5b6ef41a007869fc23614ebf577f679849fb5b3a6ce4013cd861d2c";
- };
- beamDeps = [ vex_0_5_5 timex_2_1_6 exrm_1_0_5 ];
-
- meta = {
- description = ''Create a deb for your elixir release with ease'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/johnhamelink/exrm_deb";
- };
- } // packageOverrides)
- ) {};
-
- exrm_deb = exrm_deb_0_0_6;
-
- exrm_docker_0_1_0 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "exrm_docker";
- version = "0.1.0";
- src = fetchHex {
- pkg = "exrm_docker";
- version = "0.1.0";
- sha256 =
- "a10f0334d9d93f8e97bde71c2638e725f1e36790a817b40ca26da0771366a3a3";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- description = ''Exrm plugin to push your release into a Docker
- image.'';
- license = stdenv.lib.licenses.free;
- homepage = "https://github.com/kwrooijen/exrm_docker";
- };
- } // packageOverrides)
- ) {};
-
- exrm_docker = exrm_docker_0_1_0;
-
- exrm_heroku_0_1_1 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "exrm_heroku";
- version = "0.1.1";
- src = fetchHex {
- pkg = "exrm_heroku";
- version = "0.1.1";
- sha256 =
- "19fc16f1cfcc1c86bc64796a287028b8a8d951f7737024893c1772ba658da76d";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- description = ''Publish Elixir releases created with exrm release
- manager to Heroku. '';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/ride/exrm-heroku";
- };
- } // packageOverrides)
- ) {};
-
- exrm_heroku = exrm_heroku_0_1_1;
-
- exrm_rpm_0_3_3 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "exrm_rpm";
- version = "0.3.3";
- src = fetchHex {
- pkg = "exrm_rpm";
- version = "0.3.3";
- sha256 =
- "11de82ed0ba9e265577f255cdad0693bf191b30d56dbd85977201882e3652e53";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- longDescription = ''Adds simple Red Hat Package Manager (RPM)
- generation to the exrm package manager. The
- generated RPM file includes the Elixir release
- and an init.d script to manage the project`s
- service.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/smpallen99/exrm-rpm";
- };
- } // packageOverrides)
- ) {};
-
- exrm_rpm = exrm_rpm_0_3_3;
-
- exrm_smartos_gz_1_0_0 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "exrm_smartos_gz";
- version = "1.0.0";
- src = fetchHex {
- pkg = "exrm_smartos_gz";
- version = "1.0.0";
- sha256 =
- "700c3c9e80d24d1e0404c54391e582d786dbb3f8da9a3bf5d2b7f082841ba5af";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- longDescription = ''Trying to package an Elixir application for a
- SmartOS GZ but getting errors about ncurses?
- This will cure what ails you.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/adam12/exrm_smartos_gz";
- };
- } // packageOverrides)
- ) {};
-
- exrm_smartos_gz = exrm_smartos_gz_1_0_0;
-
exromaji_0_3_0 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -16801,38 +15995,6 @@ let
floki = floki_0_8_1;
- flub_0_9_0 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- shorter_maps_1_0_0,
- ex2ms_1_4_0,
- ets_owner_1_0_0
- }:
- buildMix ({
- name = "flub";
- version = "0.9.0";
- src = fetchHex {
- pkg = "flub";
- version = "0.9.0";
- sha256 =
- "8bb3936f7acbf813eee74b628fbe33e8d114c5a40c7b96540e53db4a66b3fa61";
- };
- beamDeps = [ shorter_maps_1_0_0 ex2ms_1_4_0 ets_owner_1_0_0 ];
-
- meta = {
- description = ''Flub does Pub. Flub does Sub. Flub does PubSub,
- bub.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/meyercm/shorter_maps";
- };
- } // packageOverrides)
- ) {};
-
- flub = flub_0_9_0;
-
fluxter_0_3_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -22694,44 +21856,6 @@ let
kaguya = kaguya_0_4_7;
- kcl_0_6_2 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- salsa20_0_3_0,
- poly1305_0_4_1,
- ed25519_0_2_0,
- curve25519_0_1_0
- }:
- buildMix ({
- name = "kcl";
- version = "0.6.2";
- src = fetchHex {
- pkg = "kcl";
- version = "0.6.2";
- sha256 =
- "20dfbd4fb5fd71d612d9c4989adbb35a8d1ffabc70bc0729f2648c9489344e9f";
- };
- beamDeps = [
- salsa20_0_3_0
- poly1305_0_4_1
- ed25519_0_2_0
- curve25519_0_1_0
- ];
-
- meta = {
- description = ''KCl - a less savory pure Elixir NaCl crypto suite
- substitute'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/mwmiller/kcl";
- };
- } // packageOverrides)
- ) {};
-
- kcl = kcl_0_6_2;
-
kennitala_1_0_0 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -23369,33 +22493,6 @@ let
lhttpc = lhttpc_1_4_0;
- librex_1_0_1 = callPackage
- (
- {
- buildMix, packageOverrides ? {}, fetchHex, secure_random_0_3_0
- }:
- buildMix ({
- name = "librex";
- version = "1.0.1";
- src = fetchHex {
- pkg = "librex";
- version = "1.0.1";
- sha256 =
- "70a33754fed13f653cc26f91bac47bef90e793f1283d0cef946d14fe17f2ff70";
- };
- beamDeps = [ secure_random_0_3_0 ];
-
- meta = {
- description = ''Convert office documents to other formats using
- LibreOffice'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/ricn/librex";
- };
- } // packageOverrides)
- ) {};
-
- librex = librex_1_0_1;
-
libsnarlmatch_0_1_7 = callPackage
(
{ buildRebar3, packageOverrides ? {}, fetchHex }:
@@ -24257,31 +23354,6 @@ let
majremind = majremind_0_0_1;
- mandrag_0_1_1 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, exrm_1_0_5 }:
- buildMix ({
- name = "mandrag";
- version = "0.1.1";
- src = fetchHex {
- pkg = "mandrag";
- version = "0.1.1";
- sha256 =
- "e9e9fcbb844a2a86ecd95f5f8fa7db9f6ff88f3e2a6dca2bd996f4f71bbf125d";
- };
- beamDeps = [ exrm_1_0_5 ];
-
- meta = {
- description = ''A simple, extremely assumptive deploy script for
- Phoenix apps'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/cschiewek/mandrag";
- };
- } // packageOverrides)
- ) {};
-
- mandrag = mandrag_0_1_1;
-
mandrake_0_0_4 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -24415,37 +23487,6 @@ let
} // packageOverrides)
) {};
- mariaex_0_7_5 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- decimal_1_1_2,
- db_connection_1_0_0_rc_0
- }:
- buildMix ({
- name = "mariaex";
- version = "0.7.5";
- src = fetchHex {
- pkg = "mariaex";
- version = "0.7.5";
- sha256 =
- "36a09e08ff2583d4cb2f9fbeec720730a04c202bb486726276368a2be1e4cb95";
- };
- beamDeps = [ decimal_1_1_2 db_connection_1_0_0_rc_0 ];
-
- meta = {
- description = ''Pure elixir database driver for MariaDB /
- MySQL.'';
- license = stdenv.lib.licenses.asl20;
- homepage = "https://github.com/xerions/mariaex";
- };
- } // packageOverrides)
- ) {};
-
- mariaex = mariaex_0_7_5;
-
marked_0_0_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -25079,37 +24120,6 @@ let
memcache_client = memcache_client_1_1_0;
- merkle_0_0_4 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- sha3_1_0_0,
- rlist_0_0_1
- }:
- buildMix ({
- name = "merkle";
- version = "0.0.4";
- src = fetchHex {
- pkg = "merkle";
- version = "0.0.4";
- sha256 =
- "76e33e4736f670ac380a0e46914143ae83429f6fc2355d05dfbdf4cd8bbc29d1";
- };
- beamDeps = [ sha3_1_0_0 rlist_0_0_1 ];
-
- meta = {
- description = ''Implementation of binary Merkle Tree in
- Elixir.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/stampery/elixir-merkle";
- };
- } // packageOverrides)
- ) {};
-
- merkle = merkle_0_0_4;
-
merkle_tree_1_1_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -26185,46 +25195,6 @@ let
module_mocker = module_mocker_0_2_0;
- moebius_2_0_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- timex_2_1_6,
- postgrex_0_11_1,
- poolboy_1_5_1,
- poison_2_0_1,
- inflex_1_5_0
- }:
- buildMix ({
- name = "moebius";
- version = "2.0.1";
- src = fetchHex {
- pkg = "moebius";
- version = "2.0.1";
- sha256 =
- "00e6dbde61bae910463d5a0a7334776946b14c4de390b6f7d839fe6e31089add";
- };
- beamDeps = [
- timex_2_1_6
- postgrex_0_11_1
- poolboy_1_5_1
- poison_2_0_1
- inflex_1_5_0
- ];
-
- meta = {
- description = ''A functional approach to data access with
- Elixir'';
- license = stdenv.lib.licenses.free;
- homepage = "https://github.com/robconery/moebius";
- };
- } // packageOverrides)
- ) {};
-
- moebius = moebius_2_0_1;
-
mogrify_0_3_0 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -29437,37 +28407,6 @@ let
phoenix_pubsub = phoenix_pubsub_1_0_0_rc_0;
- phoenix_pubsub_postgres_0_0_2 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- postgrex_0_11_1,
- poolboy_1_4_2
- }:
- buildMix ({
- name = "phoenix_pubsub_postgres";
- version = "0.0.2";
- src = fetchHex {
- pkg = "phoenix_pubsub_postgres";
- version = "0.0.2";
- sha256 =
- "85b43b941b8c3dcf3f967dcd5bca1e29716235398b8b6c03d52d6611d5cf82ad";
- };
- beamDeps = [ postgrex_0_11_1 poolboy_1_4_2 ];
-
- meta = {
- description = ''Postgresql PubSub adapter for Phoenix apps'';
- license = stdenv.lib.licenses.mit;
- homepage =
- "https://github.com/opendrops/phoenix-pubsub-postgres";
- };
- } // packageOverrides)
- ) {};
-
- phoenix_pubsub_postgres = phoenix_pubsub_postgres_0_0_2;
-
phoenix_pubsub_vernemq_0_0_3 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex }:
@@ -30635,37 +29574,6 @@ let
plug_runtime = plug_runtime_1_0_0;
- plug_session_redis_0_1_0 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- redo_2_0_1,
- poolboy_1_5_1
- }:
- buildMix ({
- name = "plug_session_redis";
- version = "0.1.0";
- src = fetchHex {
- pkg = "plug_session_redis";
- version = "0.1.0";
- sha256 =
- "8a101a1e36cb9212153191e44963f052b7478b0bfaff5a85e331afe0ae56dbeb";
- };
- beamDeps = [ redo_2_0_1 poolboy_1_5_1 ];
-
- meta = {
- description = ''The Redis Plug.Session adapter for the Phoenix
- framework.'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/aposto/plug_session_redis";
- };
- } // packageOverrides)
- ) {};
-
- plug_session_redis = plug_session_redis_0_1_0;
-
plug_statsd_0_4_1 = callPackage
(
{
@@ -31600,72 +30508,6 @@ let
positive = positive_13_3_7;
- posterize_0_11_0 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- sbroker_0_7_0,
- postgrex_0_11_1
- }:
- buildMix ({
- name = "posterize";
- version = "0.11.0";
- src = fetchHex {
- pkg = "posterize";
- version = "0.11.0";
- sha256 =
- "9c6b189d0924788edb42f3fff493caec10c36bc0e457983a33045cc891cf589d";
- };
- beamDeps = [ sbroker_0_7_0 postgrex_0_11_1 ];
-
- meta = {
- description = ''erlang wrapper for the postgrex postgres
- client'';
- license = with stdenv.lib.licenses; [ asl20 mit ];
- homepage = "https://github.com/talentdeficit/posterize";
- };
- } // packageOverrides)
- ) {};
-
- posterize = posterize_0_11_0;
-
- postgrex_0_11_1 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- decimal_1_1_2,
- db_connection_1_0_0_rc_0,
- connection_1_0_2
- }:
- buildMix ({
- name = "postgrex";
- version = "0.11.1";
- src = fetchHex {
- pkg = "postgrex";
- version = "0.11.1";
- sha256 =
- "f56d47038f4f642cee0f9c40eeea0ef9ba645b7fc77723b4764f282df95baeb8";
- };
- beamDeps = [
- decimal_1_1_2
- db_connection_1_0_0_rc_0
- connection_1_0_2
- ];
-
- meta = {
- description = ''PostgreSQL driver for Elixir.'';
- license = stdenv.lib.licenses.asl20;
- homepage = "https://github.com/ericmj/postgrex";
- };
- } // packageOverrides)
- ) {};
-
- postgrex = postgrex_0_11_1;
-
postgrex_0_9_1 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex, decimal_1_1_2 }:
@@ -32356,63 +31198,6 @@ let
pubsub = pubsub_0_0_2;
- pulse_0_1_3 = callPackage
- (
- { buildMix, packageOverrides ? {}, fetchHex, sonic_0_1_3 }:
- buildMix ({
- name = "pulse";
- version = "0.1.3";
- src = fetchHex {
- pkg = "pulse";
- version = "0.1.3";
- sha256 =
- "8d9ab6b8f5b3e8da2feedb32062b97243bfc8c250ad5bab09fd61944e51e6aa0";
- };
- beamDeps = [ sonic_0_1_3 ];
-
- meta = {
- longDescription = ''Service registration and discovery library
- for Elixir. Relies on etcd as an external
- service registry.'';
- license = stdenv.lib.licenses.asl20;
- homepage = "https://github.com/heroiclabs/pulse";
- };
- } // packageOverrides)
- ) {};
-
- pulse = pulse_0_1_3;
-
- pusher_0_1_3 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- signaturex_1_0_1,
- httpoison_0_8_3,
- exjsx_3_2_0
- }:
- buildMix ({
- name = "pusher";
- version = "0.1.3";
- src = fetchHex {
- pkg = "pusher";
- version = "0.1.3";
- sha256 =
- "1443c9652d3a3d03fcfef0e8dca817affa80d1c4e0eb582282af0d9c69a087f3";
- };
- beamDeps = [ signaturex_1_0_1 httpoison_0_8_3 exjsx_3_2_0 ];
-
- meta = {
- description = ''Pusher HTTP client'';
- license = stdenv.lib.licenses.mit;
- homepage = "https://github.com/edgurgel/pusher";
- };
- } // packageOverrides)
- ) {};
-
- pusher = pusher_0_1_3;
-
qdate_0_4_3 = callPackage
(
{
@@ -33262,36 +32047,6 @@ let
readit = readit_0_0_3;
- reagent_0_1_9 = callPackage
- (
- {
- buildMix,
- packageOverrides ? {},
- fetchHex,
- socket_0_3_4,
- exts_0_3_1
- }:
- buildMix ({
- name = "reagent";
- version = "0.1.9";
- src = fetchHex {
- pkg = "reagent";
- version = "0.1.9";
- sha256 =
- "c76c57437dff9d46fcc617a2c2ae9d87bef1c3619c2e6da84fa0bd2392591e5b";
- };
- beamDeps = [ socket_0_3_4 exts_0_3_1 ];
-
- meta = {
- description = ''You need more reagents to conjure this server'';
- license = stdenv.lib.licenses.wtfpl;
- homepage = "https://github.com/meh/reagent";
- };
- } // packageOverrides)
- ) {};
-
- reagent = reagent_0_1_9;
-
reap_0_1_3 = callPackage
(
{ buildMix, packageOverrides ? {}, fetchHex, jsex_2_0_0 }:
diff --git a/pkgs/development/compilers/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix
index 41d31888bde..e7b188ad71b 100644
--- a/pkgs/development/compilers/gcc/4.5/default.nix
+++ b/pkgs/development/compilers/gcc/4.5/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langJava ? false
, langAda ? false
@@ -77,8 +77,8 @@ let version = "4.5.4";
withCpu +
withAbi +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -229,7 +229,7 @@ stdenv.mkDerivation ({
++ (optional langJava boehmgc)
++ (optionals langJava [zip unzip])
++ (optionals javaAwtGtk ([gtk2 pkgconfig libart_lgpl] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
;
diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix
index 3031df56150..ab91528049c 100644
--- a/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/pkgs/development/compilers/gcc/4.8/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, noSysDirs
+{ stdenv, targetPackages, fetchurl, fetchpatch, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -153,8 +153,8 @@ let version = "4.8.5";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -303,7 +303,7 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index 4675787912e..794d809fa72 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -144,8 +144,8 @@ let version = "4.9.4";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -296,7 +296,7 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
diff --git a/pkgs/development/compilers/gcc/5/default.nix b/pkgs/development/compilers/gcc/5/default.nix
index 346ea928b76..345e2baf671 100644
--- a/pkgs/development/compilers/gcc/5/default.nix
+++ b/pkgs/development/compilers/gcc/5/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -31,7 +31,6 @@
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
, stripped ? true
, gnused ? null
-, binutils ? null
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
, darwin ? null
, buildPlatform, hostPlatform, targetPlatform
@@ -51,7 +50,7 @@ assert libelf != null -> zlib != null;
assert hostPlatform.isDarwin -> gnused != null;
# Need c++filt on darwin
-assert hostPlatform.isDarwin -> binutils != null;
+assert hostPlatform.isDarwin -> targetPackages.stdenv.cc.bintools or null != null;
# The go frontend is written in c++
assert langGo -> langCC;
@@ -149,8 +148,8 @@ let version = "5.5.0";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -312,7 +311,7 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals (buildPlatform != hostPlatform) [buildPackages.stdenv.cc])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
@@ -320,7 +319,7 @@ stdenv.mkDerivation ({
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ (optional hostPlatform.isDarwin gnused)
- ++ (optional hostPlatform.isDarwin binutils)
+ ++ (optional hostPlatform.isDarwin targetPackages.stdenv.cc.bintools)
;
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 7d019c7fe84..3ae478c4ecf 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -31,7 +31,6 @@
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
, stripped ? true
, gnused ? null
-, binutils ? null
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
, darwin ? null
, buildPlatform, hostPlatform, targetPlatform
@@ -50,7 +49,7 @@ assert libelf != null -> zlib != null;
assert hostPlatform.isDarwin -> gnused != null;
# Need c++filt on darwin
-assert hostPlatform.isDarwin -> binutils != null;
+assert hostPlatform.isDarwin -> targetPackages.stdenv.cc.bintools or null != null;
# The go frontend is written in c++
assert langGo -> langCC;
@@ -145,8 +144,8 @@ let version = "6.4.0";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -309,14 +308,14 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ (optional hostPlatform.isDarwin gnused)
- ++ (optional hostPlatform.isDarwin binutils)
+ ++ (optional hostPlatform.isDarwin targetPackages.stdenv.cc.bintools)
;
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix
index 064f2ab00d4..3a7c0eb6443 100644
--- a/pkgs/development/compilers/gcc/7/default.nix
+++ b/pkgs/development/compilers/gcc/7/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -31,7 +31,6 @@
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
, stripped ? true
, gnused ? null
-, binutils ? null
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
, darwin ? null
, flex ? null
@@ -51,7 +50,7 @@ assert libelf != null -> zlib != null;
assert hostPlatform.isDarwin -> gnused != null;
# Need c++filt on darwin
-assert hostPlatform.isDarwin -> binutils != null;
+assert hostPlatform.isDarwin -> targetPackages.stdenv.cc.bintools or null != null;
# The go frontend is written in c++
assert langGo -> langCC;
@@ -144,8 +143,8 @@ let version = "7.2.0";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -308,14 +307,14 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ (optional hostPlatform.isDarwin gnused)
- ++ (optional hostPlatform.isDarwin binutils)
+ ++ (optional hostPlatform.isDarwin targetPackages.stdenv.cc.bintools)
;
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
diff --git a/pkgs/development/compilers/gcc/snapshot/default.nix b/pkgs/development/compilers/gcc/snapshot/default.nix
index 696417a4956..e235be639c6 100644
--- a/pkgs/development/compilers/gcc/snapshot/default.nix
+++ b/pkgs/development/compilers/gcc/snapshot/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, noSysDirs
+{ stdenv, targetPackages, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false
, langObjC ? targetPlatform.isDarwin
, langObjCpp ? targetPlatform.isDarwin
@@ -31,7 +31,6 @@
, libpthread ? null, libpthreadCross ? null # required for GNU/Hurd
, stripped ? true
, gnused ? null
-, binutils ? null
, cloog # unused; just for compat with gcc4, as we override the parameter on some places
, darwin ? null
, flex ? null
@@ -51,7 +50,7 @@ assert libelf != null -> zlib != null;
assert hostPlatform.isDarwin -> gnused != null;
# Need c++filt on darwin
-assert hostPlatform.isDarwin -> binutils != null;
+assert hostPlatform.isDarwin -> targetPackages.stdenv.cc.bintools or null != null;
# The go frontend is written in c++
assert langGo -> langCC;
@@ -144,8 +143,8 @@ let version = "7-20170409";
withFloat +
withMode +
# Ensure that -print-prog-name is able to find the correct programs.
- " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
- " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
+ " --with-as=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-as" +
+ " --with-ld=${targetPackages.stdenv.cc.bintools}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" +
" --with-gcc" +
@@ -295,14 +294,14 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
- ++ (optionals (targetPlatform != hostPlatform) [binutils])
+ ++ (optionals (targetPlatform != hostPlatform) [targetPackages.stdenv.cc.bintools])
++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat])
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ (optional hostPlatform.isDarwin gnused)
- ++ (optional hostPlatform.isDarwin binutils)
+ ++ (optional hostPlatform.isDarwin targetPackages.stdenv.cc.bintools)
;
NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix
index 863f904e4e9..51274dd6059 100644
--- a/pkgs/development/compilers/ghc/7.10.2.nix
+++ b/pkgs/development/compilers/ghc/7.10.2.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, targetPackages, coreutils
, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
# If enabled GHC will be build with the GPL-free but slower integer-simple
@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
- sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ binutils coreutils ]}"' $i
+ sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
diff --git a/pkgs/development/compilers/ghc/7.10.3.nix b/pkgs/development/compilers/ghc/7.10.3.nix
index eb8f1dddd19..d573a22e0ae 100644
--- a/pkgs/development/compilers/ghc/7.10.3.nix
+++ b/pkgs/development/compilers/ghc/7.10.3.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
+{ stdenv, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, targetPackages, coreutils
, libxml2, libxslt, docbook_xsl, docbook_xml_dtd_45, docbook_xml_dtd_42, hscolour
# If enabled GHC will be build with the GPL-free but slower integer-simple
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
- sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ binutils coreutils ]}"' $i
+ sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
diff --git a/pkgs/development/compilers/ghc/7.6.3.nix b/pkgs/development/compilers/ghc/7.6.3.nix
index 5f951936046..fde4ca2aa37 100644
--- a/pkgs/development/compilers/ghc/7.6.3.nix
+++ b/pkgs/development/compilers/ghc/7.6.3.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ghc, perl, ncurses, binutils, libiconv
+{ stdenv, fetchurl, ghc, perl, ncurses, libiconv
# If enabled GHC will be build with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
diff --git a/pkgs/development/compilers/ghc/8.0.2.nix b/pkgs/development/compilers/ghc/8.0.2.nix
index e50a8df7352..d475e3438b4 100644
--- a/pkgs/development/compilers/ghc/8.0.2.nix
+++ b/pkgs/development/compilers/ghc/8.0.2.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
+{ stdenv, lib, fetchurl, fetchpatch, bootPkgs, perl, ncurses, libiconv, targetPackages, coreutils
, hscolour, patchutils, sphinx
# If enabled GHC will be build with the GPL-free but slower integer-simple
@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
- sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ binutils coreutils ]}"' $i
+ sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
diff --git a/pkgs/development/compilers/ghc/8.2.1.nix b/pkgs/development/compilers/ghc/8.2.1.nix
index dde56df8131..bcc801c98ea 100644
--- a/pkgs/development/compilers/ghc/8.2.1.nix
+++ b/pkgs/development/compilers/ghc/8.2.1.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchurl, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
+{ stdenv, lib, fetchurl, bootPkgs, perl, ncurses, libiconv, targetPackages, coreutils
, autoconf, automake, happy, alex, python3, sphinx, hscolour
, buildPlatform, targetPlatform , selfPkgs, cross ? null
@@ -66,7 +66,7 @@ in stdenv.mkDerivation (rec {
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
- sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ binutils coreutils ]}"' $i
+ sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
@@ -97,23 +97,23 @@ in stdenv.mkDerivation (rec {
configureFlags = [
"CC=${stdenv.ccCross}/bin/${cross.config}-cc"
- "LD=${stdenv.binutils}/bin/${cross.config}-ld"
- "AR=${stdenv.binutils}/bin/${cross.config}-ar"
- "NM=${stdenv.binutils}/bin/${cross.config}-nm"
- "RANLIB=${stdenv.binutils}/bin/${cross.config}-ranlib"
+ "LD=${targetPackages.stdenv.cc.bintools}/bin/${cross.config}-ld"
+ "AR=${targetPackages.stdenv.cc.bintools}/bin/${cross.config}-ar"
+ "NM=${targetPackages.stdenv.cc.bintools}/bin/${cross.config}-nm"
+ "RANLIB=${targetPackages.stdenv.cc.bintools}/bin/${cross.config}-ranlib"
"--target=${cross.config}"
"--enable-bootstrap-with-devel-snapshot"
] ++
# fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
lib.optional (cross.config or null == "aarch64-apple-darwin14") "--disable-large-address-space";
- buildInputs = commonBuildInputs ++ [ stdenv.ccCross stdenv.binutils ];
+ buildInputs = commonBuildInputs ++ [ stdenv.ccCross stdenv.targetPackages.stdenv.cc.bintools ];
dontSetConfigureCross = true;
passthru = {
inherit bootPkgs cross;
cc = "${stdenv.ccCross}/bin/${cross.config}-cc";
- ld = "${stdenv.binutils}/bin/${cross.config}-ld";
+ ld = "${stdenv.targetPackages.stdenv.cc.bintools}/bin/${cross.config}-ld";
};
})
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index 362b4895b7e..92ba3f6a46e 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchgit, bootPkgs, perl, ncurses, libiconv, binutils, coreutils
+{ stdenv, lib, fetchgit, bootPkgs, perl, ncurses, libiconv, targetPackages, coreutils
, autoconf, automake, happy, alex, python3, buildPlatform, targetPlatform
, selfPkgs, cross ? null
@@ -71,7 +71,7 @@ in stdenv.mkDerivation (rec {
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
- sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ binutils coreutils ]}"' $i
+ sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
diff --git a/pkgs/development/compilers/halvm/2.4.0.nix b/pkgs/development/compilers/halvm/2.4.0.nix
index 24fffcf603c..0c4cef653d8 100644
--- a/pkgs/development/compilers/halvm/2.4.0.nix
+++ b/pkgs/development/compilers/halvm/2.4.0.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, binutils, autoconf, alex, happy, makeStaticLibraries
+{ stdenv, fetchgit, bootPkgs, perl, gmp, ncurses, targetPackages, autoconf, alex, happy, makeStaticLibraries
, hscolour, xen, automake, gcc, git, zlib, libtool, enableIntegerSimple ? false
}:
@@ -17,14 +17,14 @@ stdenv.mkDerivation rec {
sed -i '305 d' Makefile
sed -i '309,439 d' Makefile # Removes RPM packaging
sed -i '20 d' src/scripts/halvm-cabal.in
- sed -ie 's|ld |${binutils}/bin/ld |g' src/scripts/ldkernel.in
+ sed -ie 's|ld |${targetPackages.stdenv.cc.bintools}/bin/ld |g' src/scripts/ldkernel.in
'';
configureFlags = stdenv.lib.optional (!enableIntegerSimple) [ "--enable-gmp" ];
propagatedNativeBuildInputs = [ alex happy ];
buildInputs =
let haskellPkgs = [ alex happy bootPkgs.hscolour bootPkgs.cabal-install bootPkgs.haddock bootPkgs.hpc
]; in [ bootPkgs.ghc
- automake perl git binutils
+ automake perl git targetPackages.stdenv.cc.bintools
autoconf xen zlib ncurses.dev
libtool gmp ] ++ haskellPkgs;
preConfigure = ''
@@ -40,7 +40,7 @@ stdenv.mkDerivation rec {
inherit bootPkgs;
cross.config = "halvm";
cc = "${gcc}/bin/gcc";
- ld = "${binutils}/bin/ld";
+ ld = "${targetPackages.stdenv.cc.bintools}/bin/ld";
};
meta = {
diff --git a/pkgs/development/compilers/julia/0.6.nix b/pkgs/development/compilers/julia/0.6.nix
index 9d9f0229e56..99e6f8efff1 100644
--- a/pkgs/development/compilers/julia/0.6.nix
+++ b/pkgs/development/compilers/julia/0.6.nix
@@ -80,6 +80,9 @@ stdenv.mkDerivation rec {
mv test/$i.jl{,.off}
touch test/$i.jl
done
+
+ sed -e 's/Invalid Content-Type:/invalid Content-Type:/g' -i test/libgit2.jl
+ sed -e 's/Failed to resolve /failed to resolve /g' -i test/libgit2.jl
'';
buildInputs = [
diff --git a/pkgs/development/compilers/llvm/3.5/libc++/default.nix b/pkgs/development/compilers/llvm/3.5/libc++/default.nix
index abc198b0686..1f1129f578f 100644
--- a/pkgs/development/compilers/llvm/3.5/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/3.5/libc++/default.nix
@@ -20,7 +20,11 @@ stdenv.mkDerivation rec {
'"${libcxxabi}/lib/libc++abi.dylib"'
'';
- patches = [ ./darwin.patch ];
+ patches = [
+ ./darwin.patch
+ # glibc 2.26 fix
+ ./xlocale-glibc-2.26.patch
+ ];
buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
diff --git a/pkgs/development/compilers/llvm/3.5/libc++/xlocale-glibc-2.26.patch b/pkgs/development/compilers/llvm/3.5/libc++/xlocale-glibc-2.26.patch
new file mode 100644
index 00000000000..250bb49fc23
--- /dev/null
+++ b/pkgs/development/compilers/llvm/3.5/libc++/xlocale-glibc-2.26.patch
@@ -0,0 +1,17 @@
+diff --git a/include/__locale b/include/__locale
+index 3daa1f1..cb8e151 100644
+--- a/include/__locale
++++ b/include/__locale
+@@ -29,10 +29,10 @@
+ # if __ANDROID_API__ <= 20
+ # include
+ # endif
+-#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__FreeBSD__) \
++#elif (defined(__APPLE__) || defined(__FreeBSD__) \
+ || defined(__sun__) || defined(__EMSCRIPTEN__) || defined(__IBMCPP__))
+ # include
+-#endif // __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
++#endif // __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
+
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+ #pragma GCC system_header
diff --git a/pkgs/development/compilers/llvm/3.7/libc++/default.nix b/pkgs/development/compilers/llvm/3.7/libc++/default.nix
index 69ce87bcbf3..4296c0fd192 100644
--- a/pkgs/development/compilers/llvm/3.7/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/3.7/libc++/default.nix
@@ -17,6 +17,8 @@ stdenv.mkDerivation rec {
patches = [
./darwin.patch
./r242056.patch
+ # glibc 2.26 fix
+ ./xlocale-glibc-2.26.patch
];
buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
diff --git a/pkgs/development/compilers/llvm/3.7/libc++/xlocale-glibc-2.26.patch b/pkgs/development/compilers/llvm/3.7/libc++/xlocale-glibc-2.26.patch
new file mode 100644
index 00000000000..5ee8f6b8230
--- /dev/null
+++ b/pkgs/development/compilers/llvm/3.7/libc++/xlocale-glibc-2.26.patch
@@ -0,0 +1,17 @@
+diff --git a/include/__locale b/include/__locale
+index 1989558..1e42905 100644
+--- a/include/__locale
++++ b/include/__locale
+@@ -34,10 +34,10 @@
+ # include
+ #elif defined(_NEWLIB_VERSION)
+ # include
+-#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__FreeBSD__) \
++#elif (defined(__APPLE__) || defined(__FreeBSD__) \
+ || defined(__EMSCRIPTEN__) || defined(__IBMCPP__))
+ # include
+-#endif // __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
++#endif // __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
+
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+ #pragma GCC system_header
diff --git a/pkgs/development/compilers/llvm/3.8/libc++/default.nix b/pkgs/development/compilers/llvm/3.8/libc++/default.nix
index e4198599904..ea468b3772e 100644
--- a/pkgs/development/compilers/llvm/3.8/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/3.8/libc++/default.nix
@@ -14,7 +14,10 @@ stdenv.mkDerivation rec {
cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$NIX_BUILD_TOP/libcxxabi-${version}.src/include")
'';
- patches = lib.optional stdenv.isDarwin ./darwin.patch;
+ patches = [
+ # glibc 2.26 fix
+ ../../3.9/libc++/xlocale-glibc-2.26.patch
+ ] ++ lib.optional stdenv.isDarwin ./darwin.patch;
buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
diff --git a/pkgs/development/compilers/llvm/3.9/libc++/default.nix b/pkgs/development/compilers/llvm/3.9/libc++/default.nix
index f656f553f16..ad514b0daa5 100644
--- a/pkgs/development/compilers/llvm/3.9/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/3.9/libc++/default.nix
@@ -14,7 +14,10 @@ stdenv.mkDerivation rec {
cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$NIX_BUILD_TOP/libcxxabi-${version}.src/include")
'';
- patches = lib.optional stdenv.isDarwin ./darwin.patch;
+ patches = [
+ # glibc 2.26 fix
+ ./xlocale-glibc-2.26.patch
+ ] ++ lib.optional stdenv.isDarwin ./darwin.patch;
buildInputs = [ cmake libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
diff --git a/pkgs/development/compilers/llvm/3.9/libc++/xlocale-glibc-2.26.patch b/pkgs/development/compilers/llvm/3.9/libc++/xlocale-glibc-2.26.patch
new file mode 100644
index 00000000000..4cc042554c8
--- /dev/null
+++ b/pkgs/development/compilers/llvm/3.9/libc++/xlocale-glibc-2.26.patch
@@ -0,0 +1,19 @@
+diff --git a/include/__locale b/include/__locale
+index 7bc701d..ea75c86 100644
+--- a/include/__locale
++++ b/include/__locale
+@@ -34,12 +34,12 @@
+ # include
+ #elif defined(_NEWLIB_VERSION)
+ # include
+-#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__FreeBSD__) \
++#elif (defined(__APPLE__) || defined(__FreeBSD__) \
+ || defined(__EMSCRIPTEN__) || defined(__IBMCPP__))
+ # include
+ #elif defined(_LIBCPP_HAS_MUSL_LIBC)
+ # include
+-#endif // __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
++#endif // __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
+
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+ #pragma GCC system_header
diff --git a/pkgs/development/compilers/llvm/4/libc++/default.nix b/pkgs/development/compilers/llvm/4/libc++/default.nix
index b74d2fb89dc..db751bcffd4 100644
--- a/pkgs/development/compilers/llvm/4/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/4/libc++/default.nix
@@ -10,8 +10,12 @@ stdenv.mkDerivation rec {
export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
'';
- # https://github.com/llvm-mirror/libcxx/commit/bcc92d75df0274b9593ebd097fcae60494e3bffc
- patches = [ ./pthread_mach_thread_np.patch ];
+ patches = [
+ # https://github.com/llvm-mirror/libcxx/commit/bcc92d75df0274b9593ebd097fcae60494e3bffc
+ ./pthread_mach_thread_np.patch
+ # glibc 2.26 fix
+ ./xlocale-glibc-2.26.patch
+ ];
prePatch = ''
substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
diff --git a/pkgs/development/compilers/llvm/4/libc++/xlocale-glibc-2.26.patch b/pkgs/development/compilers/llvm/4/libc++/xlocale-glibc-2.26.patch
new file mode 100644
index 00000000000..e411d85066b
--- /dev/null
+++ b/pkgs/development/compilers/llvm/4/libc++/xlocale-glibc-2.26.patch
@@ -0,0 +1,19 @@
+diff --git a/include/__locale b/include/__locale
+index f4882de..29443b4 100644
+--- a/include/__locale
++++ b/include/__locale
+@@ -34,12 +34,12 @@
+ # include
+ #elif defined(_NEWLIB_VERSION)
+ # include
+-#elif (defined(__GLIBC__) || defined(__APPLE__) || defined(__FreeBSD__) \
++#elif (defined(__APPLE__) || defined(__FreeBSD__) \
+ || defined(__EMSCRIPTEN__) || defined(__IBMCPP__))
+ # include
+ #elif defined(_LIBCPP_HAS_MUSL_LIBC)
+ # include
+-#endif // __GLIBC__ || __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
++#endif // __APPLE__ || __FreeBSD__ || __sun__ || __EMSCRIPTEN__ || __IBMCPP__
+
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+ #pragma GCC system_header
diff --git a/pkgs/development/compilers/neko/default.nix b/pkgs/development/compilers/neko/default.nix
index e90f3af704d..5b90dc7debc 100644
--- a/pkgs/development/compilers/neko/default.nix
+++ b/pkgs/development/compilers/neko/default.nix
@@ -30,6 +30,9 @@ stdenv.mkDerivation rec {
+ "c6d9c6d796200990b3b6a53a4dc716c9192398e6.patch";
sha256 = "1pq0qhhb9gbhc3zbgylwp0amhwsz0q0ggpj6v2xgv0hfy7d63rcd";
})
+ # Glibc 2.26 no longer has xlocale.h, patch backported from upstream commit
+ # e286c8f3301fa443255a3101d14b7392467051b8.
+ ./xlocale-fix.patch
];
buildInputs =
diff --git a/pkgs/development/compilers/neko/xlocale-fix.patch b/pkgs/development/compilers/neko/xlocale-fix.patch
new file mode 100644
index 00000000000..f4c53f3a43d
--- /dev/null
+++ b/pkgs/development/compilers/neko/xlocale-fix.patch
@@ -0,0 +1,59 @@
+commit 31d3ac3d691b2a1b07991e67302fd52b0f409cac
+Author: Andy Li
+Date: Thu Jul 13 13:23:33 2017 +0800
+
+ include xlocale.h only if it is available since it is removed in recent glibc
+
+ see: https://bugzilla.redhat.com/show_bug.cgi?id=1464244
+
+ (Backported from e286c8f3301fa443255a3101d14b7392467051b8)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 8de1702..d64cab9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,5 +1,6 @@
+ cmake_minimum_required(VERSION 2.8.7)
+
++include(CheckIncludeFile)
+ project(neko C)
+
+ set(CMAKE_OSX_ARCHITECTURES x86_64)
+@@ -48,6 +49,8 @@ set(NEKO_VERSION_MAJOR 2)
+ set(NEKO_VERSION_MINOR 1)
+ set(NEKO_VERSION_PATCH 0)
+
++check_include_file(xlocale.h HAVE_XLOCALE_H)
++
+ configure_file (
+ "${CMAKE_SOURCE_DIR}/vm/neko.h.in"
+ "${CMAKE_BINARY_DIR}/neko.h"
+diff --git a/libs/std/sys.c b/libs/std/sys.c
+index 8003d41..ae0cfee 100644
+--- a/libs/std/sys.c
++++ b/libs/std/sys.c
+@@ -41,7 +41,11 @@
+ # include
+ # include
+ # include
++#ifdef HAVE_XLOCALE_H
+ # include
++#else
++# include
++#endif
+ #endif
+
+ #ifdef NEKO_MAC
+diff --git a/vm/neko.h.in b/vm/neko.h.in
+index bb9ec1b..147ecce 100644
+--- a/vm/neko.h.in
++++ b/vm/neko.h.in
+@@ -88,6 +88,8 @@
+ # include
+ #endif
+
++#cmakedefine HAVE_XLOCALE_H
++
+ #define NEKO_VERSION_MAJOR @NEKO_VERSION_MAJOR@
+ #define NEKO_VERSION_MINOR @NEKO_VERSION_MINOR@
+ #define NEKO_VERSION_PATCH @NEKO_VERSION_PATCH@
diff --git a/pkgs/development/compilers/purescript/psc-package/default.nix b/pkgs/development/compilers/purescript/psc-package/default.nix
index 306eaa93958..8b2a0a0eb39 100644
--- a/pkgs/development/compilers/purescript/psc-package/default.nix
+++ b/pkgs/development/compilers/purescript/psc-package/default.nix
@@ -4,13 +4,13 @@ with lib;
mkDerivation rec {
pname = "psc-package";
- version = "0.2.0";
+ version = "0.2.4";
src = fetchFromGitHub {
owner = "purescript";
repo = pname;
rev = "v${version}";
- sha256 = "0vid8vc8n8xj0qa4gnm1any9s18rdh7yn960vgix17r7a3bdndwb";
+ sha256 = "0m1vcxa5zs4sqnnwgmxkhw1isdlmirp12yimn5345vwfvlxkc8kp";
};
isLibrary = false;
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index a113f5db480..9f96d05c116 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchurl, fetchgit, fetchzip, file, python2, tzdata, procps
-, llvm, jemalloc, ncurses, darwin, binutils, rustPlatform, git, cmake, curl
+{ stdenv, targetPackages
+, fetchurl, fetchgit, fetchzip, file, python2, tzdata, procps
+, llvm, jemalloc, ncurses, darwin, rustPlatform, git, cmake, curl
, which, libffi, gdb
, version
, forceBundledLLVM ? false
@@ -49,7 +50,7 @@ stdenv.mkDerivation {
++ [ "--enable-local-rust" "--local-rust-root=${rustPlatform.rust.rustc}" "--enable-rpath" ]
++ [ "--enable-vendor" "--disable-locked-deps" ]
# ++ [ "--jemalloc-root=${jemalloc}/lib"
- ++ [ "--default-linker=${stdenv.cc}/bin/cc" "--default-ar=${binutils.out}/bin/ar" ]
+ ++ [ "--default-linker=${targetPackages.stdenv.cc}/bin/cc" "--default-ar=${targetPackages.stdenv.cc.bintools}/bin/ar" ]
++ optional (!forceBundledLLVM) [ "--enable-llvm-link-shared" ]
++ optional (stdenv.cc.cc ? isClang) "--enable-clang"
++ optional (targets != []) "--target=${target}"
diff --git a/pkgs/development/compilers/swift/default.nix b/pkgs/development/compilers/swift/default.nix
index 7484d2568be..937977b0a97 100644
--- a/pkgs/development/compilers/swift/default.nix
+++ b/pkgs/development/compilers/swift/default.nix
@@ -1,4 +1,5 @@
{ stdenv
+, targetPackages
, cmake
, coreutils
, glibc
@@ -26,7 +27,6 @@
, rsync
, git
, libgit2
-, binutils
, fetchFromGitHub
, paxctl
, findutils
@@ -250,7 +250,7 @@ stdenv.mkDerivation rec {
# TODO: Use wrappers to get these on the PATH for swift tools, instead
ln -s ${clang}/bin/* $out/bin/
- ln -s ${binutils}/bin/ar $out/bin/ar
+ ln -s ${targetPackages.stdenv.cc.bintools}/bin/ar $out/bin/ar
'';
# Hack to avoid TMPDIR in RPATHs.
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index ebfe44dd25a..61043252155 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -118,23 +118,16 @@ let
'';
};
- all-cabal-hashes-component = name: import (pkgs.runCommand "all-cabal-hashes-component-${name}.nix" {}
- ''
- set +o pipefail
- for component in ${all-cabal-hashes}/*; do
- if ls $component | grep -q "^${name}$"; then
- echo "builtins.storePath $component" > $out
- exit 0
- fi
- done
- echo "${name} not found in any all-cabal-hashes component, are you sure it's in hackage?" >&2
- exit 1
- '');
+ all-cabal-hashes-component = name: version: pkgs.runCommand "all-cabal-hashes-component-${name}-${version}" {} ''
+ tar --wildcards -xzvf ${all-cabal-hashes} \*/${name}/${version}/${name}.{json,cabal}
+ mkdir -p $out
+ mv */${name}/${version}/${name}.{json,cabal} $out
+ '';
- hackage2nix = name: version: let component = all-cabal-hashes-component name; in self.haskellSrc2nix {
+ hackage2nix = name: version: let component = all-cabal-hashes-component name version; in self.haskellSrc2nix {
name = "${name}-${version}";
- sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${component}/${name}/${version}/${name}.json")'';
- src = "${component}/${name}/${version}/${name}.cabal";
+ sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${component}/${name}.json")'';
+ src = "${component}/${name}.cabal";
};
in package-set { inherit pkgs stdenv callPackage; } self // {
diff --git a/pkgs/development/interpreters/clisp/default.nix b/pkgs/development/interpreters/clisp/default.nix
index 2386cc27155..9ab43e7392d 100644
--- a/pkgs/development/interpreters/clisp/default.nix
+++ b/pkgs/development/interpreters/clisp/default.nix
@@ -48,7 +48,11 @@ stdenv.mkDerivation rec {
libX11 libXau libXt libXpm xproto libXext xextproto
];
- patches = [ ./bits_ipctypes_to_sys_ipc.patch ]; # from Gentoo
+ patches = [
+ ./bits_ipctypes_to_sys_ipc.patch # from Gentoo
+ # The cfree alias no longer exists since glibc 2.26
+ ./remove-cfree-binding.patch
+ ];
# First, replace port 9090 (rather low, can be used)
# with 64237 (much higher, IANA private area, not
diff --git a/pkgs/development/interpreters/clisp/remove-cfree-binding.patch b/pkgs/development/interpreters/clisp/remove-cfree-binding.patch
new file mode 100644
index 00000000000..4b570c3a467
--- /dev/null
+++ b/pkgs/development/interpreters/clisp/remove-cfree-binding.patch
@@ -0,0 +1,12 @@
+diff --git a/modules/bindings/glibc/linux.lisp b/modules/bindings/glibc/linux.lisp
+index c40b4f8..1c8edca 100644
+--- a/modules/bindings/glibc/linux.lisp
++++ b/modules/bindings/glibc/linux.lisp
+@@ -648,7 +648,6 @@
+ (def-call-out calloc (:arguments (nmemb size_t) (size size_t))
+ (:return-type c-pointer))
+ (def-call-out free (:arguments (ptr c-pointer)) (:return-type nil))
+-(def-call-out cfree (:arguments (ptr c-pointer)) (:return-type nil))
+ (def-call-out valloc (:arguments (size size_t)) (:return-type c-pointer))
+
+ (def-call-out abort (:arguments) (:return-type nil))
diff --git a/pkgs/development/interpreters/erlang/R20.nix b/pkgs/development/interpreters/erlang/R20.nix
index 8866d9848e7..cf94a8800f9 100644
--- a/pkgs/development/interpreters/erlang/R20.nix
+++ b/pkgs/development/interpreters/erlang/R20.nix
@@ -1,8 +1,8 @@
{ mkDerivation, fetchurl }:
mkDerivation rec {
- version = "20.0";
- sha256 = "12dbay254ivnakwknjn5h55wndb0a0wqx55p156h8hwjhykj2kn0";
+ version = "20.1";
+ sha256 = "13f53lzgq2himg9kax41f66rzv5pjfrb1ln8b54yv9spkqx2hqqi";
prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10'
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index 9e4b23a0919..25a597ea4da 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, autoreconfHook, pkgconfig, libzen, zlib }:
stdenv.mkDerivation rec {
- version = "0.7.99";
+ version = "17.10";
name = "libmediainfo-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
- sha256 = "126nkxrzs6dxzm3hzx6smvw6xgrqr3zs6hdqvl2xmvqy10p8z6pc";
+ sha256 = "00m1b4m37c9lm16yhh63p5pidg2sr3qvsw36672lklmcv3y1ic30";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
configureFlags = [ "--enable-shared" ];
+ enableParallelBuilding = true;
+
postInstall = ''
install -vD -m 644 libmediainfo.pc "$out/lib/pkgconfig/libmediainfo.pc"
'';
diff --git a/pkgs/development/libraries/libmsgpack/2.0.nix b/pkgs/development/libraries/libmsgpack/2.0.nix
new file mode 100644
index 00000000000..d8282b12687
--- /dev/null
+++ b/pkgs/development/libraries/libmsgpack/2.0.nix
@@ -0,0 +1,12 @@
+{ callPackage, fetchFromGitHub, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+ version = "2.0.0";
+
+ src = fetchFromGitHub {
+ owner = "msgpack";
+ repo = "msgpack-c";
+ rev = "cpp-${version}";
+ sha256 = "189m44pwpcpf7g4yhzfla4djqyp2kl54wxmwfaj94gwgj5s370i7";
+ };
+})
diff --git a/pkgs/development/libraries/libmsgpack/default.nix b/pkgs/development/libraries/libmsgpack/default.nix
index 2af7e31c889..8feacd4e365 100644
--- a/pkgs/development/libraries/libmsgpack/default.nix
+++ b/pkgs/development/libraries/libmsgpack/default.nix
@@ -1,12 +1,12 @@
{ callPackage, fetchFromGitHub, ... } @ args:
callPackage ./generic.nix (args // rec {
- version = "2.0.0";
+ version = "2.1.5";
src = fetchFromGitHub {
- owner = "msgpack";
- repo = "msgpack-c";
- rev = "cpp-${version}";
- sha256 = "189m44pwpcpf7g4yhzfla4djqyp2kl54wxmwfaj94gwgj5s370i7";
+ owner = "msgpack";
+ repo = "msgpack-c";
+ rev = "cpp-${version}";
+ sha256 = "0n4kvma3dldfsvv7b0zw23qln6av5im2aqqd6m890i75zwwkw0zv";
};
})
diff --git a/pkgs/development/libraries/libmsgpack/generic.nix b/pkgs/development/libraries/libmsgpack/generic.nix
index c6870f77f1f..7bca8f21c6b 100644
--- a/pkgs/development/libraries/libmsgpack/generic.nix
+++ b/pkgs/development/libraries/libmsgpack/generic.nix
@@ -11,16 +11,21 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
+ enableParallelBuilding = true;
+
crossAttrs = {
} // stdenv.lib.optionalAttrs (hostPlatform.libc == "msvcrt") {
- cmakeFlags = "-DMSGPACK_BUILD_EXAMPLES=OFF -DCMAKE_SYSTEM_NAME=Windows";
+ cmakeFlags = [
+ "-DMSGPACK_BUILD_EXAMPLES=OFF"
+ "-DCMAKE_SYSTEM_NAME=Windows"
+ ];
};
meta = with stdenv.lib; {
description = "MessagePack implementation for C and C++";
- homepage = http://msgpack.org;
+ homepage = http://msgpack.org;
+ license = licenses.asl20;
maintainers = with maintainers; [ redbaron wkennington ];
- license = licenses.asl20;
- platforms = platforms.all;
+ platforms = platforms.all;
};
}
diff --git a/pkgs/development/libraries/libstdc++5/default.nix b/pkgs/development/libraries/libstdc++5/default.nix
index abe0538b8a9..baea981ca4a 100644
--- a/pkgs/development/libraries/libstdc++5/default.nix
+++ b/pkgs/development/libraries/libstdc++5/default.nix
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
sha256 = "11m5lc51b0addhc4yq4rz0dwpv6k73rrj73wya3lqdk8rly6cjpm";
addPrefixes = true;
})
+ # Required because of glibc 2.26
+ ./struct-ucontext.patch
];
postPatch = ''
diff --git a/pkgs/development/libraries/libstdc++5/struct-ucontext.patch b/pkgs/development/libraries/libstdc++5/struct-ucontext.patch
new file mode 100644
index 00000000000..5462e0e33ec
--- /dev/null
+++ b/pkgs/development/libraries/libstdc++5/struct-ucontext.patch
@@ -0,0 +1,61 @@
+diff --git a/gcc/config/alpha/linux.h b/gcc/config/alpha/linux.h
+index 3a2940c..67f9899 100644
+--- a/gcc/config/alpha/linux.h
++++ b/gcc/config/alpha/linux.h
+@@ -89,7 +89,7 @@ Boston, MA 02111-1307, USA. */
+ { \
+ struct rt_sigframe { \
+ struct siginfo info; \
+- struct ucontext uc; \
++ ucontext_t uc; \
+ } *rt_ = (CONTEXT)->cfa; \
+ sc_ = &rt_->uc.uc_mcontext; \
+ } \
+diff --git a/gcc/config/i386/linux.h b/gcc/config/i386/linux.h
+index e86ab3d..30797a7 100644
+--- a/gcc/config/i386/linux.h
++++ b/gcc/config/i386/linux.h
+@@ -260,7 +260,7 @@ Boston, MA 02111-1307, USA. */
+ siginfo_t *pinfo; \
+ void *puc; \
+ siginfo_t info; \
+- struct ucontext uc; \
++ ucontext_t uc; \
+ } *rt_ = (CONTEXT)->cfa; \
+ sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \
+ } \
+diff --git a/gcc/config/i386/linux64.h b/gcc/config/i386/linux64.h
+index fbfaa58..200c8dc 100644
+--- a/gcc/config/i386/linux64.h
++++ b/gcc/config/i386/linux64.h
+@@ -112,7 +112,7 @@ Boston, MA 02111-1307, USA. */
+ if (*(unsigned char *)(pc_+0) == 0x48 \
+ && *(unsigned long *)(pc_+1) == 0x050f0000000fc0c7) \
+ { \
+- struct ucontext *uc_ = (CONTEXT)->cfa; \
++ ucontext_t *uc_ = (CONTEXT)->cfa; \
+ sc_ = (struct sigcontext *) &uc_->uc_mcontext; \
+ } \
+ else \
+@@ -182,7 +182,7 @@ Boston, MA 02111-1307, USA. */
+ struct siginfo *pinfo; \
+ void *puc; \
+ struct siginfo info; \
+- struct ucontext uc; \
++ ucontext_t uc; \
+ } *rt_ = (CONTEXT)->cfa; \
+ sc_ = (struct sigcontext *) &rt_->uc.uc_mcontext; \
+ } \
+diff --git a/gcc/config/rs6000/linux.h b/gcc/config/rs6000/linux.h
+index ba70ec1..0fff8b1 100644
+--- a/gcc/config/rs6000/linux.h
++++ b/gcc/config/rs6000/linux.h
+@@ -101,7 +101,7 @@ Boston, MA 02111-1307, USA. */
+
+ struct kernel_old_ucontext {
+ unsigned long uc_flags;
+- struct ucontext *uc_link;
++ ucontext_t *uc_link;
+ stack_t uc_stack;
+ struct sigcontext_struct uc_mcontext;
+ sigset_t uc_sigmask;
diff --git a/pkgs/development/libraries/libtoxcore/default.nix b/pkgs/development/libraries/libtoxcore/default.nix
index 0d0563eb5dd..af9c38a9634 100644
--- a/pkgs/development/libraries/libtoxcore/default.nix
+++ b/pkgs/development/libraries/libtoxcore/default.nix
@@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
name = "libtoxcore-${version}";
- version = "0.1.8";
+ version = "0.1.10";
src = fetchFromGitHub {
owner = "TokTok";
repo = "c-toxcore";
rev = "v${version}";
- sha256 = "08vdq3j60wn62lj2z9f3f47hibns93rvaqx5xc5bm3nglk70q7kk";
+ sha256 = "1d3f7lnlxra2lhih838bvlahxqv50j35g9kfyzspq971sb5z30mv";
};
cmakeFlags = [
@@ -24,7 +24,11 @@ stdenv.mkDerivation rec {
libopus
libvpx
];
+
nativeBuildInputs = [ cmake pkgconfig ];
+
+ enableParallelBuilding = true;
+
checkInputs = [ check ];
checkPhase = "ctest";
diff --git a/pkgs/development/libraries/libzen/default.nix b/pkgs/development/libraries/libzen/default.nix
index ab473bbe85c..afa7696aca9 100644
--- a/pkgs/development/libraries/libzen/default.nix
+++ b/pkgs/development/libraries/libzen/default.nix
@@ -1,11 +1,11 @@
{ stdenv, fetchurl, autoreconfHook }:
stdenv.mkDerivation rec {
- version = "0.4.35";
+ version = "0.4.37";
name = "libzen-${version}";
src = fetchurl {
url = "https://mediaarea.net/download/source/libzen/${version}/libzen_${version}.tar.bz2";
- sha256 = "12a1icgcffgv503ii2k1453kxg5hfly09mf4zjcc80aq8a6rf8by";
+ sha256 = "1hcsrmn85b0xp0mp33aazk7g071q1v3f163nnhv8b0mv9c4bgsfn";
};
nativeBuildInputs = [ autoreconfHook ];
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
preConfigure = "sh autogen.sh";
+ enableParallelBuilding = true;
+
meta = with stdenv.lib; {
description = "Shared library for libmediainfo and mediainfo";
homepage = https://mediaarea.net/;
diff --git a/pkgs/development/libraries/mlt/default.nix b/pkgs/development/libraries/mlt/default.nix
index 168b94495a9..6eee8df5a23 100644
--- a/pkgs/development/libraries/mlt/default.nix
+++ b/pkgs/development/libraries/mlt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, makeWrapper
+{ stdenv, fetchFromGitHub, fetchurl, makeWrapper
, SDL, ffmpeg, frei0r, libjack2, libdv, libsamplerate
, libvorbis, libxml2, movit, pkgconfig, sox
, gtk2
@@ -15,6 +15,19 @@ stdenv.mkDerivation rec {
sha256 = "0k9vj21n6qxdjd0vvj22cwi35igajjzh5fbjza766izdbijv2i2w";
};
+ patches = [
+ # fix for glibc-2.26
+ (fetchurl {
+ url = "https://github.com/mltframework/mlt/commit/2125e3955a0d0be61571cf43b674f74b4b93c6f8.patch";
+ sha256 = "1bgs5a3dblsmdmb7hwval9nmq1as4r4f48b3amsc23v69nsl2g0a";
+ })
+ # fix for glibc-2.26
+ (fetchurl {
+ url = "https://github.com/mltframework/mlt/commit/fbf6a5187776f2f392cf258935ff49e4c0e87024.patch";
+ sha256 = "045vchpcznzsz47j67kxwdbg133kar66ssna3parnzrxdfqi72pv";
+ })
+ ];
+
buildInputs = [
SDL ffmpeg frei0r libjack2 libdv libsamplerate libvorbis libxml2
makeWrapper movit pkgconfig sox
diff --git a/pkgs/development/libraries/mlt/qt-5.nix b/pkgs/development/libraries/mlt/qt-5.nix
index 1d56d58c68d..f3bdc005247 100644
--- a/pkgs/development/libraries/mlt/qt-5.nix
+++ b/pkgs/development/libraries/mlt/qt-5.nix
@@ -3,6 +3,8 @@
, fftw, vid-stab, opencv3, ladspa-sdk
}:
+let inherit (stdenv.lib) getDev; in
+
stdenv.mkDerivation rec {
name = "mlt-${version}";
version = "6.4.1";
@@ -11,6 +13,18 @@ stdenv.mkDerivation rec {
url = "https://github.com/mltframework/mlt/archive/v${version}.tar.gz";
sha256 = "10m3ry0b2pvqx3bk34qh5dq337nn8pkc2gzfyhsj4nv9abskln47";
};
+ patches = [
+ # fix for glibc-2.26
+ (fetchurl {
+ url = "https://github.com/mltframework/mlt/commit/2125e3955a0d0be61571cf43b674f74b4b93c6f8.patch";
+ sha256 = "1bgs5a3dblsmdmb7hwval9nmq1as4r4f48b3amsc23v69nsl2g0a";
+ })
+ # fix for glibc-2.26
+ (fetchurl {
+ url = "https://github.com/mltframework/mlt/commit/fbf6a5187776f2f392cf258935ff49e4c0e87024.patch";
+ sha256 = "045vchpcznzsz47j67kxwdbg133kar66ssna3parnzrxdfqi72pv";
+ })
+ ];
buildInputs = [
SDL ffmpeg frei0r libjack2 libdv libsamplerate libvorbis libxml2
@@ -27,6 +41,10 @@ stdenv.mkDerivation rec {
"--enable-opengl"
];
+ # mlt is unable to cope with our multi-prefix Qt build
+ # because it does not use CMake or qmake.
+ NIX_CFLAGS_COMPILE = [ "-I${getDev qtsvg}/include/QtSvg" ];
+
CXXFLAGS = "-std=c++11";
enableParallelBuilding = true;
diff --git a/pkgs/development/libraries/qoauth/default.nix b/pkgs/development/libraries/qoauth/default.nix
index fa998b9e198..d09c0d9a6ce 100644
--- a/pkgs/development/libraries/qoauth/default.nix
+++ b/pkgs/development/libraries/qoauth/default.nix
@@ -9,7 +9,11 @@ stdenv.mkDerivation {
sha256 = "a28005986410d333e03d077679cdf6c504ec5a33342867dc0f9fb0b74285e333";
};
- patchPhase = "sed -e 's/lib64/lib/g' -i src/src.pro";
+ postPatch = ''
+ sed -i src/src.pro \
+ -e 's/lib64/lib/g' \
+ -e '/features.path =/ s|$$\[QMAKE_MKSPECS\]|$$NIX_OUTPUT_DEV/mkspecs|'
+ '';
buildInputs = [ qt5.qtbase qca2-qt5 ];
nativeBuildInputs = [ qt5.qmake ];
diff --git a/pkgs/development/libraries/qscintilla/default.nix b/pkgs/development/libraries/qscintilla/default.nix
index c2e6c3cb3b5..f5c5a667418 100644
--- a/pkgs/development/libraries/qscintilla/default.nix
+++ b/pkgs/development/libraries/qscintilla/default.nix
@@ -21,11 +21,23 @@ stdenv.mkDerivation rec {
preConfigure = ''
cd Qt4Qt5
+ ${if withQt5
+ then ''
+ sed -i -e "s,\$\$\\[QT_INSTALL_LIBS\\],$out/lib," \
+ -e "s,\$\$\\[QT_INSTALL_HEADERS\\],$out/include/," \
+ -e "s,\$\$\\[QT_INSTALL_TRANSLATIONS\\],$out/translations," \
+ -e "s,\$\$\\[QT_HOST_DATA\\]/mkspecs,$out/mkspecs," \
+ -e "s,\$\$\\[QT_INSTALL_DATA\\]/mkspecs,$out/mkspecs," \
+ -e "s,\$\$\\[QT_INSTALL_DATA\\],$out/share," \
+ qscintilla.pro
+ ''
+ else ''
sed -i -e "s,\$\$\\[QT_INSTALL_LIBS\\],$out/lib," \
-e "s,\$\$\\[QT_INSTALL_HEADERS\\],$out/include/," \
-e "s,\$\$\\[QT_INSTALL_TRANSLATIONS\\],$out/share/qt/translations," \
-e "s,\$\$\\[QT_INSTALL_DATA\\],$out/share/qt," \
qscintilla.pro
+ ''}
'';
meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/qt-5/5.6/default.nix b/pkgs/development/libraries/qt-5/5.6/default.nix
index b250ae8b952..8b01ce2749c 100644
--- a/pkgs/development/libraries/qt-5/5.6/default.nix
+++ b/pkgs/development/libraries/qt-5/5.6/default.nix
@@ -45,64 +45,39 @@ let
mirror = "http://download.qt.io";
srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; };
- mkDerivation = args:
- stdenv.mkDerivation (args // {
+ patches = {
+ qtbase = [ ./qtbase.patch ];
+ qtdeclarative = [ ./qtdeclarative.patch ];
+ qtscript = [ ./qtscript.patch ];
+ qtserialport = [ ./qtserialport.patch ];
+ qttools = [ ./qttools.patch ];
+ qtwebengine =
+ [ ./qtwebengine.patch ]
+ ++ optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
+ qtwebkit = [ ./qtwebkit.patch ];
+ };
- qmakeFlags =
- (args.qmakeFlags or [])
- ++ optional (debug != null)
- (if debug then "CONFIG+=debug" else "CONFIG+=release");
+ mkDerivation =
+ import ../mkDerivation.nix
+ { inherit stdenv; inherit (stdenv) lib; }
+ { inherit debug; };
- cmakeFlags =
- (args.cmakeFlags or [])
- ++ [ "-DBUILD_TESTING=OFF" ]
- ++ optional (debug != null)
- (if debug then "-DCMAKE_BUILD_TYPE=Debug"
- else "-DCMAKE_BUILD_TYPE=Release");
-
- enableParallelBuilding = args.enableParallelBuilding or true;
-
- });
-
- qtSubmodule = args:
- let
- inherit (args) name;
- version = args.version or srcs."${name}".version;
- src = args.src or srcs."${name}".src;
- in mkDerivation (args // {
- name = "${name}-${version}";
- inherit src;
-
- propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
- nativeBuildInputs =
- (args.nativeBuildInputs or [])
- ++ [ perl self.qmake ];
-
- NIX_QT_SUBMODULE = args.NIX_QT_SUBMODULE or true;
-
- outputs = args.outputs or [ "out" "dev" ];
- setOutputFlags = args.setOutputFlags or false;
-
- setupHook = ../qtsubmodule-setup-hook.sh;
-
- meta = {
- homepage = http://www.qt.io;
- description = "A cross-platform application framework for C++";
- license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
- maintainers = with maintainers; [ qknight ttuegel periklis ];
- platforms = platforms.unix;
- } // (args.meta or {});
- });
+ qtModule =
+ import ../qtModule.nix
+ { inherit mkDerivation perl; inherit (stdenv) lib; }
+ { inherit self srcs patches; };
addPackages = self: with self;
let
- callPackage = self.newScope { inherit qtCompatVersion qtSubmodule srcs; };
+ callPackage = self.newScope { inherit qtCompatVersion qtModule srcs; };
in {
inherit mkDerivation;
- qtbase = callPackage ./qtbase {
+ qtbase = callPackage ../modules/qtbase.nix {
inherit bison cups harfbuzz mesa;
+ inherit (srcs.qtbase) src version;
+ patches = patches.qtbase;
inherit developerBuild decryptSslTraffic;
};
@@ -110,47 +85,46 @@ let
/* qtactiveqt = not packaged */
/* qtandroidextras = not packaged */
/* qtcanvas3d = not packaged */
- qtconnectivity = callPackage ./qtconnectivity.nix {};
- qtdeclarative = callPackage ./qtdeclarative {};
- qtdoc = callPackage ./qtdoc.nix {};
- qtenginio = callPackage ./qtenginio.nix {};
- qtgraphicaleffects = callPackage ./qtgraphicaleffects.nix {};
- qtimageformats = callPackage ./qtimageformats.nix {};
- qtlocation = callPackage ./qtlocation.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
+ qtdoc = callPackage ../modules/qtdoc.nix {};
+ qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
+ qtimageformats = callPackage ../modules/qtimageformats.nix {};
+ qtlocation = callPackage ../modules/qtlocation.nix {};
/* qtmacextras = not packaged */
- qtmultimedia = callPackage ./qtmultimedia.nix {
+ qtmultimedia = callPackage ../modules/qtmultimedia.nix {
inherit gstreamer gst-plugins-base;
};
qtquick1 = null;
- qtquickcontrols = callPackage ./qtquickcontrols.nix {};
- qtquickcontrols2 = callPackage ./qtquickcontrols2.nix {};
- qtscript = callPackage ./qtscript {};
- qtsensors = callPackage ./qtsensors.nix {};
- qtserialport = callPackage ./qtserialport {};
- qtsvg = callPackage ./qtsvg.nix {};
- qttools = callPackage ./qttools {};
- qttranslations = callPackage ./qttranslations.nix {};
- qtwayland = callPackage ./qtwayland.nix {};
- qtwebchannel = callPackage ./qtwebchannel.nix {};
- qtwebengine = callPackage ./qtwebengine {};
- qtwebkit = callPackage ./qtwebkit {};
- qtwebsockets = callPackage ./qtwebsockets.nix {};
+ qtquickcontrols = callPackage ../modules/qtquickcontrols.nix {};
+ qtquickcontrols2 = callPackage ../modules/qtquickcontrols2.nix {};
+ qtscript = callPackage ../modules/qtscript.nix {};
+ qtsensors = callPackage ../modules/qtsensors.nix {};
+ qtserialport = callPackage ../modules/qtserialport.nix {};
+ qtsvg = callPackage ../modules/qtsvg.nix {};
+ qttools = callPackage ../modules/qttools.nix {};
+ qttranslations = callPackage ../modules/qttranslations.nix {};
+ qtwayland = callPackage ../modules/qtwayland.nix {};
+ qtwebchannel = callPackage ../modules/qtwebchannel.nix {};
+ qtwebengine = callPackage ../modules/qtwebengine.nix {};
+ qtwebkit = callPackage ../modules/qtwebkit.nix {};
+ qtwebsockets = callPackage ../modules/qtwebsockets.nix {};
/* qtwinextras = not packaged */
- qtx11extras = callPackage ./qtx11extras.nix {};
- qtxmlpatterns = callPackage ./qtxmlpatterns.nix {};
+ qtx11extras = callPackage ../modules/qtx11extras.nix {};
+ qtxmlpatterns = callPackage ../modules/qtxmlpatterns.nix {};
env = callPackage ../qt-env.nix {};
full = env "qt-${qtbase.version}" [
- qtconnectivity qtdeclarative qtdoc qtenginio qtgraphicaleffects
- qtimageformats qtlocation qtmultimedia qtquickcontrols qtquickcontrols2
- qtscript qtsensors qtserialport qtsvg qttools qttranslations qtwayland
+ qtconnectivity qtdeclarative qtdoc qtgraphicaleffects qtimageformats
+ qtlocation qtmultimedia qtquickcontrols qtquickcontrols2 qtscript
+ qtsensors qtserialport qtsvg qttools qttranslations qtwayland
qtwebchannel qtwebengine qtwebkit qtwebsockets qtx11extras qtxmlpatterns
];
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
substitutions = { inherit (stdenv) isDarwin; };
- } ../qmake-hook.sh;
+ } ../hooks/qmake-hook.sh;
};
self = makeScope newScope addPackages;
diff --git a/pkgs/development/libraries/qt-5/5.6/qtbase.patch b/pkgs/development/libraries/qt-5/5.6/qtbase.patch
new file mode 100644
index 00000000000..0e21a17665b
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.6/qtbase.patch
@@ -0,0 +1,773 @@
+diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
+index 11fb52a0b1..a4cca1fdcb 100644
+--- a/mkspecs/features/create_cmake.prf
++++ b/mkspecs/features/create_cmake.prf
+@@ -21,7 +21,7 @@ load(cmake_functions)
+ # at cmake time whether package has been found via a symlink, and correct
+ # that to an absolute path. This is only done for installations to
+ # the /usr or / prefix.
+-CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS])
++CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/)
+ contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR
+
+ CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake
+@@ -47,47 +47,22 @@ split_incpath {
+ $$cmake_extra_source_includes.output
+ }
+
+-CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") {
+- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/
+- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/
++CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
+
+ !exists($$first(QT.$${MODULE}_private.includes)): CMAKE_NO_PRIVATE_INCLUDES = true
+
+-CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_LIB_DIR,"^\\.\\./.*") {
+- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/
+- CMAKE_LIB_DIR_IS_ABSOLUTE = True
+-} else {
+- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS])
+- # We need to go up another two levels because the CMake files are
+- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME}
+- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../"
+-}
++CMAKE_LIB_DIR = $$NIX_OUTPUT_DEV/lib/
++CMAKE_LIB_DIR_IS_ABSOLUTE = True
+
+-CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_BIN_DIR, "^\\.\\./.*") {
+- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/
+- CMAKE_BIN_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/
++CMAKE_BIN_DIR_IS_ABSOLUTE = True
+
+-CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") {
+- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/
+- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/
++CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
+
+-win32:!wince:!static:!staticlib {
+- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX])
+- contains(CMAKE_DLL_DIR, "^\\.\\./.*") {
+- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/
+- CMAKE_DLL_DIR_IS_ABSOLUTE = True
+- }
+-} else {
+- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR
+- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE
+-}
++CMAKE_DLL_DIR = $$NIX_OUTPUT_DEV/lib/
++CMAKE_DLL_DIR_IS_ABSOLUTE = True
+
+ static|staticlib:CMAKE_STATIC_TYPE = true
+
+@@ -167,7 +142,7 @@ contains(CONFIG, plugin) {
+ cmake_target_file
+
+ cmake_qt5_plugin_file.files = $$cmake_target_file.output
+- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
++ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
+ INSTALLS += cmake_qt5_plugin_file
+
+ return()
+@@ -314,7 +289,7 @@ exists($$cmake_macros_file.input) {
+ cmake_qt5_module_files.files += $$cmake_macros_file.output
+ }
+
+-cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
++cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
+
+ # We are generating cmake files. Most developers of Qt are not aware of cmake,
+ # so we require automatic tests to be available. The only module which should
+diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+index d2358cae4b..61d8cc0471 100644
+--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+@@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
+ endif()
+ !!ENDIF
+
+-!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND)
+-!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
+-!!ELSE
+-get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH)
+-# Use original install prefix when loaded through a
+-# cross-prefix symbolic link such as /lib -> /usr/lib.
+-get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH)
+-get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH)
+-if(_realCurr STREQUAL _realOrig)
+- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE)
+-else()
+- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
+-endif()
+-unset(_realOrig)
+-unset(_realCurr)
+-unset(_IMPORT_PREFIX)
+-!!ENDIF
+-!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
+-!!ELSE
+-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
+-!!ENDIF
+-
+ !!IF !equals(TEMPLATE, aux)
+ # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead.
+ set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.MAJOR_VERSION).$$eval(QT.$${MODULE}.MINOR_VERSION).$$eval(QT.$${MODULE}.PATCH_VERSION)")
+@@ -58,11 +34,7 @@ endmacro()
+ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION)
+ set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
+ set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
+ \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\"
+@@ -75,11 +47,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI
+ )
+
+ !!IF !isEmpty(CMAKE_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+-!!ELSE
+ set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib})
+ if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\")
+ set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
+@@ -95,24 +63,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !no_module_headers
+ !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
+ set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
+ )
+ !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
+- )
+-!!ELSE
+- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+-!!ENDIF
+-!!ELSE
+-!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
+- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\")
+-!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
+- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
+ )
+ !!ELSE
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+@@ -128,7 +85,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+ !!ENDIF
+ !!ENDIF
+-!!ENDIF
+ !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS)
+ include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL)
+ !!ENDIF
+@@ -254,25 +210,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+ !!IF isEmpty(CMAKE_DEBUG_TYPE)
+ !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
+ if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" )
+ !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
+ if (EXISTS
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
+-!!ELSE
+ \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
+-!!ENDIF
+ AND EXISTS
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ELSE
+ \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ENDIF
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+ !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
+ endif()
+@@ -291,25 +235,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+ !!IF isEmpty(CMAKE_RELEASE_TYPE)
+ !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
+ if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" )
+ !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
+ if (EXISTS
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
+-!!ELSE
+ \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
+-!!ENDIF
+ AND EXISTS
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ELSE
+ \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ENDIF
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+ !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
+ endif()
+@@ -328,11 +260,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
+ set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
+ set_target_properties(Qt5::${Plugin} PROPERTIES
+ \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
+diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf
+index b09d42a0a4..f076265bdd 100644
+--- a/mkspecs/features/qml_module.prf
++++ b/mkspecs/features/qml_module.prf
+@@ -17,10 +17,7 @@ fq_qml_files = $$_PRO_FILE_PWD_/qmldir
+
+ for(qmlf, QML_FILES): fq_qml_files += $$absolute_path($$qmlf, $$_PRO_FILE_PWD_)
+
+-qml1_target: \
+- instbase = $$[QT_INSTALL_IMPORTS]
+-else: \
+- instbase = $$[QT_INSTALL_QML]
++instbase = $$NIX_OUTPUT_QML
+
+ # Install rules
+ qmldir.base = $$_PRO_FILE_PWD_
+diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf
+index ebec1db8da..62ace84a6c 100644
+--- a/mkspecs/features/qml_plugin.prf
++++ b/mkspecs/features/qml_plugin.prf
+@@ -46,13 +46,8 @@ exists($$QMLTYPEFILE): QML_FILES += $$QMLTYPEFILE
+
+ load(qt_build_paths)
+
+-qml1_target {
+- DESTDIR = $$MODULE_BASE_OUTDIR/imports/$$TARGETPATH
+- instbase = $$[QT_INSTALL_IMPORTS]
+-} else {
+- DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
+- instbase = $$[QT_INSTALL_QML]
+-}
++DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
++instbase = $$NIX_OUTPUT_QML
+
+ target.path = $$instbase/$$TARGETPATH
+ INSTALLS += target
+diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf
+index 46aca50cc2..4f4e634724 100644
+--- a/mkspecs/features/qt_app.prf
++++ b/mkspecs/features/qt_app.prf
+@@ -29,7 +29,7 @@ host_build:force_bootstrap {
+ target.path = $$[QT_HOST_BINS]
+ } else {
+ !build_pass:contains(QT_CONFIG, debug_and_release): CONFIG += release
+- target.path = $$[QT_INSTALL_BINS]
++ target.path = $$NIX_OUTPUT_BIN/bin
+ CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable
+ }
+ INSTALLS += target
+diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf
+index 1848f00e90..2af93675c5 100644
+--- a/mkspecs/features/qt_build_paths.prf
++++ b/mkspecs/features/qt_build_paths.prf
+@@ -23,6 +23,6 @@ exists($$MODULE_BASE_INDIR/.git): \
+ !force_independent {
+ # If the module is not built independently, everything ends up in qtbase.
+ # This is the case in non-prefix builds, except for selected modules.
+- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX]
+- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX]
++ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT
++ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT
+ }
+diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
+index c1809468af..0a12ec24db 100644
+--- a/mkspecs/features/qt_common.prf
++++ b/mkspecs/features/qt_common.prf
+@@ -30,8 +30,8 @@ contains(TEMPLATE, .*lib) {
+ qqt_libdir = \$\$\$\$[QT_HOST_LIBS]
+ qt_libdir = $$[QT_HOST_LIBS]
+ } else {
+- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS]
+- qt_libdir = $$[QT_INSTALL_LIBS]
++ qqt_libdir = \$\$\$\$NIX_OUTPUT_OUT/lib
++ qt_libdir = $$NIX_OUTPUT_OUT/lib
+ }
+ contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) {
+ lib_replace.match = "[^ ']*$$rplbase/lib"
+diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf
+index 183d0c9502..17982b04ec 100644
+--- a/mkspecs/features/qt_docs.prf
++++ b/mkspecs/features/qt_docs.prf
+@@ -41,7 +41,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR
+
+ QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR)
+ !build_online_docs: \
+- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS])
++ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC)
+ PREP_DOC_INDEXES =
+ DOC_INDEXES =
+ !isEmpty(QTREPOS) {
+@@ -60,8 +60,8 @@ DOC_INDEXES =
+ DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc)
+ } else {
+ prepare_docs: \
+- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
+- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
++ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
++ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
+ }
+ doc_command = $$QDOC $$QMAKE_DOCS
+ prepare_docs {
+@@ -75,12 +75,12 @@ prepare_docs {
+ qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch)
+
+ inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR
+- inst_html_docs.path = $$[QT_INSTALL_DOCS]
++ inst_html_docs.path = $$NIX_OUTPUT_DOC
+ inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build
+ INSTALLS += inst_html_docs
+
+ inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch
+- inst_qch_docs.path = $$[QT_INSTALL_DOCS]
++ inst_qch_docs.path = $$NIX_OUTPUT_DOC
+ inst_qch_docs.CONFIG += no_check_exist no_default_install no_build
+ INSTALLS += inst_qch_docs
+
+diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
+index 4c68cfd72f..f422f18266 100644
+--- a/mkspecs/features/qt_example_installs.prf
++++ b/mkspecs/features/qt_example_installs.prf
+@@ -70,7 +70,7 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
+ $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
+ $$DBUS_ADAPTORS $$DBUS_INTERFACES
+ addInstallFiles(sources.files, $$sourcefiles)
+- sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase
++ sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase
+ INSTALLS += sources
+
+ check_examples {
+diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
+index 4a1d265a8b..abe0da95f6 100644
+--- a/mkspecs/features/qt_functions.prf
++++ b/mkspecs/features/qt_functions.prf
+@@ -70,7 +70,7 @@ defineTest(qtHaveModule) {
+ defineTest(qtPrepareTool) {
+ cmd = $$eval(QT_TOOL.$${2}.binary)
+ isEmpty(cmd) {
+- cmd = $$[QT_HOST_BINS]/$$2
++ cmd = $$system("type -p $$2")
+ exists($${cmd}.pl) {
+ cmd = perl -w $$system_path($${cmd}.pl)
+ } else: contains(QMAKE_HOST.os, Windows) {
+diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
+index 3a5dbb6274..24f321bd82 100644
+--- a/mkspecs/features/qt_installs.prf
++++ b/mkspecs/features/qt_installs.prf
+@@ -12,16 +12,10 @@
+ #library
+ !qt_no_install_library {
+ win32 {
+- host_build: \
+- dlltarget.path = $$[QT_HOST_BINS]
+- else: \
+- dlltarget.path = $$[QT_INSTALL_BINS]
++ dlltarget.path = $$NIX_OUTPUT_BIN/bin
+ INSTALLS += dlltarget
+ }
+- host_build: \
+- target.path = $$[QT_HOST_LIBS]
+- else: \
+- target.path = $$[QT_INSTALL_LIBS]
++ target.path = $$NIX_OUTPUT_OUT/lib
+ !static: target.CONFIG = no_dll
+ INSTALLS += target
+ }
+@@ -29,33 +23,33 @@
+ #headers
+ qt_install_headers {
+ class_headers.files = $$SYNCQT.HEADER_CLASSES
+- class_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
++ class_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
+ INSTALLS += class_headers
+
+ targ_headers.files = $$SYNCQT.HEADER_FILES
+- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
++ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
+ INSTALLS += targ_headers
+
+ private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES
+- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
++ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
+ INSTALLS += private_headers
+
+ qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES
+- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
++ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
+ INSTALLS += qpa_headers
+ }
+
+ #module
+ qt_install_module {
+ !isEmpty(MODULE_PRI) {
+- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
++ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
+ pritarget.files = $$MODULE_PRI
+ INSTALLS += pritarget
+ } else: isEmpty(MODULE_PRIVATE_PRI) {
+ warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.")
+ }
+ !isEmpty(MODULE_PRIVATE_PRI) {
+- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
++ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
+ privpritarget.files = $$MODULE_PRIVATE_PRI
+ INSTALLS += privpritarget
+ }
+diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf
+index 3cf6c7349c..83e68025a5 100644
+--- a/mkspecs/features/qt_plugin.prf
++++ b/mkspecs/features/qt_plugin.prf
+@@ -82,7 +82,7 @@ CONFIG(static, static|shared)|prefix_build {
+ }
+ }
+
+-target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE
++target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE
+ INSTALLS += target
+
+ TARGET = $$qt5LibraryTarget($$TARGET)
+diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
+index 91a4eb619a..08b533e69c 100644
+--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
+@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake)
+ add_executable(Qt5::qmake IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc)
+ add_executable(Qt5::moc IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc)
+ add_executable(Qt5::rcc IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -131,7 +131,7 @@ if (NOT TARGET Qt5::WinMain)
+ !!IF !isEmpty(CMAKE_RELEASE_TYPE)
+ set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
+ !!ENDIF
+@@ -145,7 +145,7 @@ if (NOT TARGET Qt5::WinMain)
+ set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
+ !!ENDIF
+diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+index c357237d0e..6f0c75de3c 100644
+--- a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+@@ -1,6 +1,6 @@
+
+ !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE)
+-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+ !!ELSE
+ set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
+ !!ENDIF
+diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+index 706304cf34..546420f6ad 100644
+--- a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+@@ -1,6 +1,6 @@
+
+ !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE)
+-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+ !!ELSE
+ set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
+ !!ENDIF
+diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
+index f5b15207cc..f85e0524bb 100644
+--- a/src/corelib/kernel/qcoreapplication.cpp
++++ b/src/corelib/kernel/qcoreapplication.cpp
+@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPaths()
+ QStringList *app_libpaths = new QStringList;
+ coreappdata()->app_libpaths.reset(app_libpaths);
+
++ // Add library paths derived from PATH
++ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
++ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX);
++ for (const QString &path: paths) {
++ if (!path.isEmpty()) {
++ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir));
++ }
++ }
++
+ const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
+ if (!libPathEnv.isEmpty()) {
+ QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
+diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp
+index c13c9a5223..6936851511 100644
+--- a/src/corelib/tools/qtimezoneprivate_tz.cpp
++++ b/src/corelib/tools/qtimezoneprivate_tz.cpp
+@@ -64,7 +64,11 @@ typedef QHash QTzTimeZoneHash;
+ // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
+ static QTzTimeZoneHash loadTzTimeZones()
+ {
+- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
++ // Try TZDIR first, in case we're running on NixOS.
++ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab");
++ // Fallback to traditional paths in case we are not on NixOS.
++ if (!QFile::exists(path))
++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
+ if (!QFile::exists(path))
+ path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
+
+@@ -636,12 +640,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
+ if (!tzif.open(QIODevice::ReadOnly))
+ return;
+ } else {
+- // Open named tz, try modern path first, if fails try legacy path
+- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ // Try TZDIR first, in case we're running on NixOS
++ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly)) {
+- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+- if (!tzif.open(QIODevice::ReadOnly))
+- return;
++ // Open named tz, try modern path first, if fails try legacy path
++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly)) {
++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly))
++ return;
++ }
+ }
+ }
+
+diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
+index 1d947159e2..b36865fc48 100644
+--- a/src/dbus/Qt5DBusConfigExtras.cmake.in
++++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
+@@ -2,11 +2,7 @@
+ if (NOT TARGET Qt5::qdbuscpp2xml)
+ add_executable(Qt5::qdbuscpp2xml IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+ _qt5_DBus_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qdbuscpp2xml PROPERTIES
+@@ -17,11 +13,7 @@ endif()
+ if (NOT TARGET Qt5::qdbusxml2cpp)
+ add_executable(Qt5::qdbusxml2cpp IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+ _qt5_DBus_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qdbusxml2cpp PROPERTIES
+diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
+index 07869efd7d..37b95d1b6b 100644
+--- a/src/gui/Qt5GuiConfigExtras.cmake.in
++++ b/src/gui/Qt5GuiConfigExtras.cmake.in
+@@ -2,7 +2,7 @@
+ !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
+
+ !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
+-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
++set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+ !!ELSE
+ set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+ !!ENDIF
+@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATIO
+ set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+ !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
++ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+ !!ENDIF
+
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
++ set(imported_implib \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+ !!ELSE
+ set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+ !!ENDIF
+diff --git a/src/network/kernel/qdnslookup_unix.cpp b/src/network/kernel/qdnslookup_unix.cpp
+index 584f0b0f0e..24d80063f2 100644
+--- a/src/network/kernel/qdnslookup_unix.cpp
++++ b/src/network/kernel/qdnslookup_unix.cpp
+@@ -83,7 +83,7 @@ static bool resolveLibraryInternal()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
+ if (!lib.load())
+ return false;
+ }
+diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
+index dabf1913cc..53bb867e07 100644
+--- a/src/network/kernel/qhostinfo_unix.cpp
++++ b/src/network/kernel/qhostinfo_unix.cpp
+@@ -94,7 +94,7 @@ static bool resolveLibraryInternal()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
+ if (!lib.load())
+ return false;
+ }
+diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp
+index 68caaeb6dc..fef4a81474 100644
+--- a/src/network/ssl/qsslcontext_openssl.cpp
++++ b/src/network/ssl/qsslcontext_openssl.cpp
+@@ -340,7 +340,7 @@ init_context:
+
+ const QVector 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"));
+diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+index 44f1d7e6ba..e24fe54326 100644
+--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
++++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+@@ -251,12 +251,9 @@ void TableGenerator::initPossibleLocations()
+ // the QTCOMPOSE environment variable
+ if (qEnvironmentVariableIsSet("QTCOMPOSE"))
+ m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));
+- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale"));
+ m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale"));
+ m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale"));
++ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE));
+ }
+
+ QString TableGenerator::findComposeFile()
+diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+index 9bdedcc830..2559b2066b 100644
+--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
++++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+@@ -570,7 +570,14 @@ void (*QGLXContext::getProcAddress(const QByteArray &procName)) ()
+ #ifndef QT_NO_LIBRARY
+ extern const QString qt_gl_library_name();
+ // QLibrary lib(qt_gl_library_name());
++ // Check system library paths first
+ QLibrary lib(QLatin1String("GL"));
++#ifdef NIXPKGS_MESA_GL
++ if (!lib.load()) {
++ // Fallback to Mesa driver
++ lib.setFileName(QLatin1String(NIXPKGS_MESA_GL));
++ }
++#endif // NIXPKGS_MESA_GL
+ glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
+ #endif
+ }
+diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp
+index b321ed95dc..9e7a72521c 100644
+--- a/src/plugins/platforms/xcb/qxcbcursor.cpp
++++ b/src/plugins/platforms/xcb/qxcbcursor.cpp
+@@ -303,10 +303,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
+ #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);
++ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1);
+ bool xcursorFound = xcursorLib.load();
+ if (!xcursorFound) { // try without the version number
+- xcursorLib.setFileName(QLatin1String("Xcursor"));
++ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR));
+ xcursorFound = xcursorLib.load();
+ }
+ if (xcursorFound) {
+diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+index 99d87e2e46..a4eab2aa72 100644
+--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
++++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic)
+ add_executable(Qt5::uic IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
diff --git a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/import-paths.patch b/pkgs/development/libraries/qt-5/5.6/qtdeclarative.patch
similarity index 67%
rename from pkgs/development/libraries/qt-5/5.9/qtdeclarative/import-paths.patch
rename to pkgs/development/libraries/qt-5/5.6/qtdeclarative.patch
index d50ee823a78..dbddaa2a1d6 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/import-paths.patch
+++ b/pkgs/development/libraries/qt-5/5.6/qtdeclarative.patch
@@ -1,8 +1,8 @@
-Index: qtdeclarative-opensource-src-5.8.0/src/qml/qml/qqmlimport.cpp
-===================================================================
---- qtdeclarative-opensource-src-5.8.0.orig/src/qml/qml/qqmlimport.cpp
-+++ qtdeclarative-opensource-src-5.8.0/src/qml/qml/qqmlimport.cpp
-@@ -1630,6 +1630,15 @@ QQmlImportDatabase::QQmlImportDatabase(Q
+diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
+index dfdf2edbe..7ee96049d 100644
+--- a/src/qml/qml/qqmlimport.cpp
++++ b/src/qml/qml/qqmlimport.cpp
+@@ -1568,6 +1568,15 @@ QQmlImportDatabase::QQmlImportDatabase(QQmlEngine *e)
QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
addImportPath(installImportsPath);
diff --git a/pkgs/development/libraries/qt-5/5.9/qtscript/0001-glib-2.32.patch b/pkgs/development/libraries/qt-5/5.6/qtscript.patch
similarity index 61%
rename from pkgs/development/libraries/qt-5/5.9/qtscript/0001-glib-2.32.patch
rename to pkgs/development/libraries/qt-5/5.6/qtscript.patch
index 887e107b6c1..5508dec1280 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtscript/0001-glib-2.32.patch
+++ b/pkgs/development/libraries/qt-5/5.6/qtscript.patch
@@ -1,12 +1,3 @@
-From abd80356449bb36c8adcc5c9ca1df6b47715d265 Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel
-Date: Sun, 23 Aug 2015 09:13:34 -0500
-Subject: [PATCH] glib-2.32
-
----
- src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
index 1f6d25e..087c3fb 100644
--- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
@@ -20,6 +11,3 @@ index 1f6d25e..087c3fb 100644
typedef struct _GCond GCond;
#endif
---
-2.5.0
-
diff --git a/pkgs/development/libraries/qt-5/5.9/qtserialport/qtserialport-dlopen-udev.patch b/pkgs/development/libraries/qt-5/5.6/qtserialport.patch
similarity index 69%
rename from pkgs/development/libraries/qt-5/5.9/qtserialport/qtserialport-dlopen-udev.patch
rename to pkgs/development/libraries/qt-5/5.6/qtserialport.patch
index 65bb64710eb..b2cffbe4f39 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtserialport/qtserialport-dlopen-udev.patch
+++ b/pkgs/development/libraries/qt-5/5.6/qtserialport.patch
@@ -1,8 +1,8 @@
-Index: qtserialport-opensource-src-5.8.0/src/serialport/qtudev_p.h
-===================================================================
---- qtserialport-opensource-src-5.8.0.orig/src/serialport/qtudev_p.h
-+++ qtserialport-opensource-src-5.8.0/src/serialport/qtudev_p.h
-@@ -111,9 +111,17 @@ inline QFunctionPointer resolveSymbol(QL
+diff --git a/src/serialport/qtudev_p.h b/src/serialport/qtudev_p.h
+index 6f2cabd..cd3c0ed 100644
+--- a/src/serialport/qtudev_p.h
++++ b/src/serialport/qtudev_p.h
+@@ -105,9 +105,17 @@ inline QFunctionPointer resolveSymbol(QLibrary *udevLibrary, const char *symbolN
inline bool resolveSymbols(QLibrary *udevLibrary)
{
if (!udevLibrary->isLoaded()) {
diff --git a/pkgs/development/libraries/qt-5/5.6/qttools.patch b/pkgs/development/libraries/qt-5/5.6/qttools.patch
new file mode 100644
index 00000000000..dcb15e0e55a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.6/qttools.patch
@@ -0,0 +1,64 @@
+diff --git a/src/assistant/help/Qt5HelpConfigExtras.cmake.in b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
+index 5a5bd5ce..1c6727d4 100644
+--- a/src/assistant/help/Qt5HelpConfigExtras.cmake.in
++++ b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
+@@ -2,14 +2,13 @@
+ if (NOT TARGET Qt5::qcollectiongenerator)
+ add_executable(Qt5::qcollectiongenerator IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ if(NOT EXISTS \"${imported_location}\")
++ set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
++ endif()
+ _qt5_Help_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qcollectiongenerator PROPERTIES
+ IMPORTED_LOCATION ${imported_location}
+ )
+-endif()
++endif()
+\ No newline at end of file
+diff --git a/src/linguist/Qt5LinguistToolsConfig.cmake.in b/src/linguist/Qt5LinguistToolsConfig.cmake.in
+index 4318b16f..d60db4ff 100644
+--- a/src/linguist/Qt5LinguistToolsConfig.cmake.in
++++ b/src/linguist/Qt5LinguistToolsConfig.cmake.in
+@@ -44,11 +44,7 @@ endmacro()
+ if (NOT TARGET Qt5::lrelease)
+ add_executable(Qt5::lrelease IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lrelease PROPERTIES
+@@ -59,11 +55,7 @@ endif()
+ if (NOT TARGET Qt5::lupdate)
+ add_executable(Qt5::lupdate IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lupdate PROPERTIES
+@@ -74,11 +66,7 @@ endif()
+ if (NOT TARGET Qt5::lconvert)
+ add_executable(Qt5::lconvert IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lconvert PROPERTIES
diff --git a/pkgs/development/libraries/qt-5/5.6/qtwebengine/qtwebengine-paxmark-mksnapshot.patch b/pkgs/development/libraries/qt-5/5.6/qtwebengine-paxmark-mksnapshot.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/5.6/qtwebengine/qtwebengine-paxmark-mksnapshot.patch
rename to pkgs/development/libraries/qt-5/5.6/qtwebengine-paxmark-mksnapshot.patch
diff --git a/pkgs/development/libraries/qt-5/5.6/qtwebengine/chromium-clang-update-py.patch b/pkgs/development/libraries/qt-5/5.6/qtwebengine.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/5.6/qtwebengine/chromium-clang-update-py.patch
rename to pkgs/development/libraries/qt-5/5.6/qtwebengine.patch
diff --git a/pkgs/development/libraries/qt-5/5.6/qtwebkit.patch b/pkgs/development/libraries/qt-5/5.6/qtwebkit.patch
new file mode 100644
index 00000000000..310d2745825
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.6/qtwebkit.patch
@@ -0,0 +1,77 @@
+diff --git a/Source/WTF/WTF.pri b/Source/WTF/WTF.pri
+index 1f4866d66..bb61e4ba3 100644
+--- a/Source/WTF/WTF.pri
++++ b/Source/WTF/WTF.pri
+@@ -12,7 +12,7 @@ mac {
+ # Mac OS does ship libicu but not the associated header files.
+ # Therefore WebKit provides adequate header files.
+ INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
+- LIBS += -licucore
++ LIBS += /usr/lib/libicucore.dylib
+ } else:!use?(wchar_unicode): {
+ win32 {
+ CONFIG(static, static|shared) {
+diff --git a/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+index a923d49aa..46772a4bb 100644
+--- a/Source/WebCore/plugins/qt/PluginPackageQt.cpp
++++ b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+@@ -136,7 +136,11 @@ static void initializeGtk(QLibrary* module = 0)
+ }
+ }
+
++#ifdef NIXPKGS_LIBGTK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGTK2), 0);
++#else
+ QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
++#endif
+ 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 de06a2fea..86fe39ef1 100644
+--- a/Source/WebCore/plugins/qt/PluginViewQt.cpp
++++ b/Source/WebCore/plugins/qt/PluginViewQt.cpp
+@@ -697,7 +697,11 @@ 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());
++#ifdef NIXPKGS_LIBGDK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
++#else
+ QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++#endif
+ if (!library.load())
+ return 0;
+
+diff --git a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+index 8de65216b..38f5c05e5 100644
+--- a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
++++ b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+@@ -53,7 +53,11 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
+
+ static bool initializeGtk()
+ {
++#ifdef NIXPKGS_LIBGTK2
++ QLibrary gtkLibrary(QLatin1String(NIXPKGS_LIBGTK2), 0);
++#else
+ QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
++#endif
+ if (!gtkLibrary.load())
+ return false;
+ typedef void* (*gtk_init_ptr)(void*, void*);
+diff --git a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+index d734ff684..0f6ff63d1 100644
+--- a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
++++ b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+@@ -64,7 +64,11 @@ static Display* getPluginDisplay()
+ // The code below has the same effect as this one:
+ // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+
++#ifdef NIXPKGS_LIBGDK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
++#else
+ QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++#endif
+ if (!library.load())
+ return 0;
+
diff --git a/pkgs/development/libraries/qt-5/5.9/default.nix b/pkgs/development/libraries/qt-5/5.9/default.nix
index 8f9be38fc88..879f7f198c9 100644
--- a/pkgs/development/libraries/qt-5/5.9/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/default.nix
@@ -36,96 +36,68 @@ let
mirror = "http://download.qt.io";
srcs = import ./srcs.nix { inherit fetchurl; inherit mirror; };
- mkDerivation = args:
- stdenv.mkDerivation (args // {
+ patches = {
+ qtbase = [ ./qtbase.patch ];
+ qtdeclarative = [ ./qtdeclarative.patch ];
+ qtscript = [ ./qtscript.patch ];
+ qtserialport = [ ./qtserialport.patch ];
+ qttools = [ ./qttools.patch ];
+ qtwebengine = optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
+ qtwebkit = [ ./qtwebkit.patch ];
+ };
- qmakeFlags =
- (args.qmakeFlags or [])
- ++ optional (debug != null)
- (if debug then "CONFIG+=debug" else "CONFIG+=release");
+ mkDerivation =
+ import ../mkDerivation.nix
+ { inherit stdenv; inherit (stdenv) lib; }
+ { inherit debug; };
- cmakeFlags =
- (args.cmakeFlags or [])
- ++ [ "-DBUILD_TESTING=OFF" ]
- ++ optional (debug != null)
- (if debug then "-DCMAKE_BUILD_TYPE=Debug"
- else "-DCMAKE_BUILD_TYPE=Release");
-
- enableParallelBuilding = args.enableParallelBuilding or true;
-
- });
-
- qtSubmodule = args:
- let
- inherit (args) name;
- version = args.version or srcs."${name}".version;
- src = args.src or srcs."${name}".src;
- in mkDerivation (args // {
- name = "${name}-${version}";
- inherit src;
-
- propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
- nativeBuildInputs =
- (args.nativeBuildInputs or [])
- ++ [ perl self.qmake ];
-
- NIX_QT_SUBMODULE = args.NIX_QT_SUBMODULE or true;
-
- outputs = args.outputs or [ "out" "dev" ];
- setOutputFlags = args.setOutputFlags or false;
-
- setupHook = ../qtsubmodule-setup-hook.sh;
-
- meta = {
- homepage = http://www.qt.io;
- description = "A cross-platform application framework for C++";
- license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
- maintainers = with maintainers; [ qknight ttuegel periklis ];
- platforms = platforms.unix;
- } // (args.meta or {});
- });
+ qtModule =
+ import ../qtModule.nix
+ { inherit mkDerivation perl; inherit (stdenv) lib; }
+ { inherit self srcs patches; };
addPackages = self: with self;
let
- callPackage = self.newScope { inherit qtCompatVersion qtSubmodule srcs; };
+ callPackage = self.newScope { inherit qtCompatVersion qtModule srcs; };
in {
inherit mkDerivation;
- qtbase = callPackage ./qtbase {
+ qtbase = callPackage ../modules/qtbase.nix {
inherit (srcs.qtbase) src version;
+ patches = patches.qtbase;
inherit bison cups harfbuzz mesa;
- inherit dconf gtk3;
+ withGtk3 = true; inherit dconf gtk3;
inherit developerBuild decryptSslTraffic;
};
- qtcharts = callPackage ./qtcharts.nix {};
- qtconnectivity = callPackage ./qtconnectivity.nix {};
- qtdeclarative = callPackage ./qtdeclarative {};
- qtdoc = callPackage ./qtdoc.nix {};
- qtgraphicaleffects = callPackage ./qtgraphicaleffects.nix {};
- qtimageformats = callPackage ./qtimageformats.nix {};
- qtlocation = callPackage ./qtlocation.nix {};
- qtmacextras = callPackage ./qtmacextras.nix {};
- qtmultimedia = callPackage ./qtmultimedia.nix {
+ qtcharts = callPackage ../modules/qtcharts.nix {};
+ qtconnectivity = callPackage ../modules/qtconnectivity.nix {};
+ qtdeclarative = callPackage ../modules/qtdeclarative.nix {};
+ qtdoc = callPackage ../modules/qtdoc.nix {};
+ qtgraphicaleffects = callPackage ../modules/qtgraphicaleffects.nix {};
+ qtimageformats = callPackage ../modules/qtimageformats.nix {};
+ qtlocation = callPackage ../modules/qtlocation.nix {};
+ qtmacextras = callPackage ../modules/qtmacextras.nix {};
+ qtmultimedia = callPackage ../modules/qtmultimedia.nix {
inherit gstreamer gst-plugins-base;
};
qtquick1 = null;
- qtquickcontrols = callPackage ./qtquickcontrols.nix {};
- qtquickcontrols2 = callPackage ./qtquickcontrols2.nix {};
- qtscript = callPackage ./qtscript {};
- qtsensors = callPackage ./qtsensors.nix {};
- qtserialport = callPackage ./qtserialport {};
- qtsvg = callPackage ./qtsvg.nix {};
- qttools = callPackage ./qttools {};
- qttranslations = callPackage ./qttranslations.nix {};
- qtwayland = callPackage ./qtwayland.nix {};
- qtwebchannel = callPackage ./qtwebchannel.nix {};
- qtwebengine = callPackage ./qtwebengine {};
- qtwebkit = callPackage ./qtwebkit {};
- qtwebsockets = callPackage ./qtwebsockets.nix {};
- qtx11extras = callPackage ./qtx11extras.nix {};
- qtxmlpatterns = callPackage ./qtxmlpatterns.nix {};
+ qtquickcontrols = callPackage ../modules/qtquickcontrols.nix {};
+ qtquickcontrols2 = callPackage ../modules/qtquickcontrols2.nix {};
+ qtscript = callPackage ../modules/qtscript.nix {};
+ qtsensors = callPackage ../modules/qtsensors.nix {};
+ qtserialport = callPackage ../modules/qtserialport.nix {};
+ qtsvg = callPackage ../modules/qtsvg.nix {};
+ qttools = callPackage ../modules/qttools.nix {};
+ qttranslations = callPackage ../modules/qttranslations.nix {};
+ qtwayland = callPackage ../modules/qtwayland.nix {};
+ qtwebchannel = callPackage ../modules/qtwebchannel.nix {};
+ qtwebengine = callPackage ../modules/qtwebengine.nix {};
+ qtwebkit = callPackage ../modules/qtwebkit.nix {};
+ qtwebsockets = callPackage ../modules/qtwebsockets.nix {};
+ qtx11extras = callPackage ../modules/qtx11extras.nix {};
+ qtxmlpatterns = callPackage ../modules/qtxmlpatterns.nix {};
env = callPackage ../qt-env.nix {};
full = env "qt-${qtbase.version}" ([
@@ -138,8 +110,12 @@ let
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
- substitutions = { inherit (stdenv) isDarwin; };
- } ../qmake-hook.sh;
+ substitutions = {
+ inherit (stdenv) isDarwin;
+ qtbase_dev = self.qtbase.dev;
+ fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh;
+ };
+ } ../hooks/qmake-hook.sh;
};
self = makeScope newScope addPackages;
diff --git a/pkgs/development/libraries/qt-5/5.9/fetch.sh b/pkgs/development/libraries/qt-5/5.9/fetch.sh
index d026d2a922a..2ae85bba391 100644
--- a/pkgs/development/libraries/qt-5/5.9/fetch.sh
+++ b/pkgs/development/libraries/qt-5/5.9/fetch.sh
@@ -1,2 +1,2 @@
-WGET_ARGS=( https://download.qt.io/archive/qt/5.9/5.9.2/submodules/ \
+WGET_ARGS=( http://download.qt.io/official_releases/qt/5.9/5.9.1/submodules/ \
-A '*.tar.xz' )
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase.patch b/pkgs/development/libraries/qt-5/5.9/qtbase.patch
new file mode 100644
index 00000000000..4f6ed98ba29
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtbase.patch
@@ -0,0 +1,1106 @@
+diff --git a/mkspecs/common/mac.conf b/mkspecs/common/mac.conf
+index 5208379f9a..92fe29a0ac 100644
+--- a/mkspecs/common/mac.conf
++++ b/mkspecs/common/mac.conf
+@@ -23,7 +23,7 @@ QMAKE_INCDIR_OPENGL = \
+
+ QMAKE_FIX_RPATH = install_name_tool -id
+
+-QMAKE_LFLAGS_RPATH = -Wl,-rpath,
++QMAKE_LFLAGS_RPATH =
+ QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip
+
+ QMAKE_LFLAGS_REL_RPATH =
+diff --git a/mkspecs/features/create_cmake.prf b/mkspecs/features/create_cmake.prf
+index bb5083c925..da8e2cb386 100644
+--- a/mkspecs/features/create_cmake.prf
++++ b/mkspecs/features/create_cmake.prf
+@@ -21,7 +21,7 @@ load(cmake_functions)
+ # at cmake time whether package has been found via a symlink, and correct
+ # that to an absolute path. This is only done for installations to
+ # the /usr or / prefix.
+-CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$[QT_INSTALL_LIBS])
++CMAKE_INSTALL_LIBS_DIR = $$cmakeTargetPath($$NIX_OUTPUT_OUT/lib/)
+ contains(CMAKE_INSTALL_LIBS_DIR, ^(/usr)?/lib(64)?.*): CMAKE_USR_MOVE_WORKAROUND = $$CMAKE_INSTALL_LIBS_DIR
+
+ CMAKE_OUT_DIR = $$MODULE_BASE_OUTDIR/lib/cmake
+@@ -47,47 +47,22 @@ split_incpath {
+ $$cmake_extra_source_includes.output
+ }
+
+-CMAKE_INCLUDE_DIR = $$cmakeRelativePath($$[QT_INSTALL_HEADERS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_INCLUDE_DIR, "^\\.\\./.*") {
+- CMAKE_INCLUDE_DIR = $$[QT_INSTALL_HEADERS]/
+- CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_INCLUDE_DIR = $$NIX_OUTPUT_DEV/include/
++CMAKE_INCLUDE_DIR_IS_ABSOLUTE = True
+
+ !exists($$first(QT.$${MODULE}_private.includes)): CMAKE_NO_PRIVATE_INCLUDES = true
+
+-CMAKE_LIB_DIR = $$cmakeRelativePath($$[QT_INSTALL_LIBS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_LIB_DIR,"^\\.\\./.*") {
+- CMAKE_LIB_DIR = $$[QT_INSTALL_LIBS]/
+- CMAKE_LIB_DIR_IS_ABSOLUTE = True
+-} else {
+- CMAKE_RELATIVE_INSTALL_LIBS_DIR = $$cmakeRelativePath($$[QT_INSTALL_PREFIX], $$[QT_INSTALL_LIBS])
+- # We need to go up another two levels because the CMake files are
+- # installed in $${CMAKE_LIB_DIR}/cmake/Qt5$${CMAKE_MODULE_NAME}
+- CMAKE_RELATIVE_INSTALL_DIR = "$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}../../"
+-}
++CMAKE_LIB_DIR = $$NIX_OUTPUT_DEV/lib/
++CMAKE_LIB_DIR_IS_ABSOLUTE = True
+
+-CMAKE_BIN_DIR = $$cmakeRelativePath($$[QT_HOST_BINS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_BIN_DIR, "^\\.\\./.*") {
+- CMAKE_BIN_DIR = $$[QT_HOST_BINS]/
+- CMAKE_BIN_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_BIN_DIR = $$NIX_OUTPUT_BIN/bin/
++CMAKE_BIN_DIR_IS_ABSOLUTE = True
+
+-CMAKE_PLUGIN_DIR = $$cmakeRelativePath($$[QT_INSTALL_PLUGINS], $$[QT_INSTALL_PREFIX])
+-contains(CMAKE_PLUGIN_DIR, "^\\.\\./.*") {
+- CMAKE_PLUGIN_DIR = $$[QT_INSTALL_PLUGINS]/
+- CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
+-}
++CMAKE_PLUGIN_DIR = $$NIX_OUTPUT_PLUGIN/
++CMAKE_PLUGIN_DIR_IS_ABSOLUTE = True
+
+-win32:!static:!staticlib {
+- CMAKE_DLL_DIR = $$cmakeRelativePath($$[QT_INSTALL_BINS], $$[QT_INSTALL_PREFIX])
+- contains(CMAKE_DLL_DIR, "^\\.\\./.*") {
+- CMAKE_DLL_DIR = $$[QT_INSTALL_BINS]/
+- CMAKE_DLL_DIR_IS_ABSOLUTE = True
+- }
+-} else {
+- CMAKE_DLL_DIR = $$CMAKE_LIB_DIR
+- CMAKE_DLL_DIR_IS_ABSOLUTE = $$CMAKE_LIB_DIR_IS_ABSOLUTE
+-}
++CMAKE_DLL_DIR = $$NIX_OUTPUT_DEV/lib/
++CMAKE_DLL_DIR_IS_ABSOLUTE = True
+
+ static|staticlib:CMAKE_STATIC_TYPE = true
+
+@@ -167,7 +142,7 @@ contains(CONFIG, plugin) {
+ cmake_target_file
+
+ cmake_qt5_plugin_file.files = $$cmake_target_file.output
+- cmake_qt5_plugin_file.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
++ cmake_qt5_plugin_file.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
+ INSTALLS += cmake_qt5_plugin_file
+
+ return()
+@@ -314,7 +289,7 @@ exists($$cmake_macros_file.input) {
+ cmake_qt5_module_files.files += $$cmake_macros_file.output
+ }
+
+-cmake_qt5_module_files.path = $$[QT_INSTALL_LIBS]/cmake/Qt5$${CMAKE_MODULE_NAME}
++cmake_qt5_module_files.path = $$NIX_OUTPUT_OUT/lib/cmake/Qt5$${CMAKE_MODULE_NAME}
+
+ # We are generating cmake files. Most developers of Qt are not aware of cmake,
+ # so we require automatic tests to be available. The only module which should
+diff --git a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+index 17da8b979e..d648ab4058 100644
+--- a/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
++++ b/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
+@@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
+ endif()
+ !!ENDIF
+
+-!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND)
+-!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
+-!!ELSE
+-get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH)
+-# Use original install prefix when loaded through a
+-# cross-prefix symbolic link such as /lib -> /usr/lib.
+-get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH)
+-get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH)
+-if(_realCurr STREQUAL _realOrig)
+- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE)
+-else()
+- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
+-endif()
+-unset(_realOrig)
+-unset(_realCurr)
+-unset(_IMPORT_PREFIX)
+-!!ENDIF
+-!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+-get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
+-!!ELSE
+-set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
+-!!ENDIF
+-
+ !!IF !equals(TEMPLATE, aux)
+ # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead.
+ set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.VERSION)")
+@@ -58,11 +34,7 @@ endmacro()
+ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATION IMPLIB_LOCATION)
+ set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
+ set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
+ \"INTERFACE_LINK_LIBRARIES\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\"
+@@ -75,11 +47,7 @@ macro(_populate_$${CMAKE_MODULE_NAME}_target_properties Configuration LIB_LOCATI
+ )
+
+ !!IF !isEmpty(CMAKE_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+-!!ELSE
+ set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib})
+ if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\")
+ set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
+@@ -95,24 +63,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !no_module_headers
+ !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
+ set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
+ )
+ !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
+- )
+-!!ELSE
+- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+-!!ENDIF
+-!!ELSE
+-!!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
+- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\")
+-!!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
+- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\"
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
++ \"$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
+ )
+ !!ELSE
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+@@ -128,7 +85,6 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
+ !!ENDIF
+ !!ENDIF
+-!!ENDIF
+ !!IF !isEmpty(CMAKE_ADD_SOURCE_INCLUDE_DIRS)
+ include(\"${CMAKE_CURRENT_LIST_DIR}/ExtraSourceIncludes.cmake\" OPTIONAL)
+ !!ENDIF
+@@ -280,25 +236,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+ !!IF isEmpty(CMAKE_DEBUG_TYPE)
+ !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
+ if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" \"\" )
+ !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
+ if (EXISTS
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
+-!!ELSE
+ \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
+-!!ENDIF
+ AND EXISTS
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ELSE
+ \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+-!!ENDIF
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(DEBUG \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
+ !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
+ endif()
+@@ -317,25 +261,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ !!IF !isEmpty(CMAKE_FIND_OTHER_LIBRARY_BUILD)
+ !!IF isEmpty(CMAKE_RELEASE_TYPE)
+ !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
+ if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" \"\" )
+ !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
+ if (EXISTS
+-!!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
+-!!ELSE
+ \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
+-!!ENDIF
+ AND EXISTS
+-!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ELSE
+ \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+-!!ENDIF
+ _populate_$${CMAKE_MODULE_NAME}_target_properties(RELEASE \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\" \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
+ !!ENDIF // CMAKE_STATIC_WINDOWS_BUILD
+ endif()
+@@ -354,11 +286,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME})
+ macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
+ set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+-!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
+-!!ENDIF
+ _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
+ set_target_properties(Qt5::${Plugin} PROPERTIES
+ \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
+diff --git a/mkspecs/features/mac/default_post.prf b/mkspecs/features/mac/default_post.prf
+index 395ac34001..a0e5c68b7e 100644
+--- a/mkspecs/features/mac/default_post.prf
++++ b/mkspecs/features/mac/default_post.prf
+@@ -24,165 +24,3 @@ qt {
+ }
+ }
+ }
+-
+-# Add the same default rpaths as Xcode does for new projects.
+-# This is especially important for iOS/tvOS/watchOS where no other option is possible.
+-!no_default_rpath {
+- QMAKE_RPATHDIR += @executable_path/Frameworks
+- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks
+-}
+-
+-# Don't pass -headerpad_max_install_names when using Bitcode.
+-# In that case the linker emits a warning stating that the flag is ignored when
+-# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962).
+-# Using this flag is also unnecessary in practice on UIKit platforms since they
+-# are sandboxed, and only UIKit platforms support bitcode to begin with.
+-!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD
+-
+-app_extension_api_only {
+- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
+- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
+- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
+- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
+-}
+-
+-macx-xcode {
+- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) {
+- debug_information_format.name = DEBUG_INFORMATION_FORMAT
+- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT
+- debug_information_format.build = debug
+- QMAKE_MAC_XCODE_SETTINGS += debug_information_format
+- }
+-
+- QMAKE_XCODE_ARCHS =
+-
+- arch_device.name = "ARCHS[sdk=$${device.sdk}*]"
+- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS
+- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS
+- QMAKE_MAC_XCODE_SETTINGS += arch_device
+-
+- simulator {
+- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]"
+- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS
+- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS
+- QMAKE_MAC_XCODE_SETTINGS += arch_simulator
+- }
+-
+- only_active_arch.name = ONLY_ACTIVE_ARCH
+- only_active_arch.value = YES
+- only_active_arch.build = debug
+- QMAKE_MAC_XCODE_SETTINGS += only_active_arch
+-} else {
+- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS
+- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS
+- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS
+-
+- isEmpty(VALID_ARCHS): \
+- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture")
+-
+- single_arch: VALID_ARCHS = $$first(VALID_ARCHS)
+-
+- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS))
+- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch))
+-
+- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS
+-
+- arch_flags = $(EXPORT_ARCH_ARGS)
+-
+- QMAKE_CFLAGS += $$arch_flags
+- QMAKE_CXXFLAGS += $$arch_flags
+- QMAKE_LFLAGS += $$arch_flags
+-
+- QMAKE_PCH_ARCHS = $$VALID_ARCHS
+-
+- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET
+- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET
+- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET
+- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET
+-
+- # If we're doing a simulator and device build, device and simulator
+- # architectures use different paths and flags for the sysroot and
+- # deployment target switch, so we must multiplex them across multiple
+- # architectures using -Xarch. Otherwise we fall back to the simple path.
+- # This is not strictly necessary, but results in cleaner command lines
+- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit
+- # individual rules to a different set of architecture(s) from the overall
+- # build (such as machtest in QtCore).
+- simulator:device {
+- QMAKE_XARCH_CFLAGS =
+- QMAKE_XARCH_LFLAGS =
+- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS
+-
+- for (arch, VALID_ARCHS) {
+- contains(VALID_SIMULATOR_ARCHS, $$arch) {
+- sdk = $$simulator.sdk
+- version_identifier = $$simulator.deployment_identifier
+- } else {
+- sdk = $$device.sdk
+- version_identifier = $$device.deployment_identifier
+- }
+-
+- version_min_flags = \
+- -Xarch_$${arch} \
+- -m$${version_identifier}-version-min=$$deployment_target
+- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \
+- -Xarch_$${arch} \
+- -isysroot$$xcodeSDKInfo(Path, $$sdk)
+- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \
+- -Xarch_$${arch} \
+- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk)
+-
+- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch})
+- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch})
+-
+- QMAKE_EXTRA_VARIABLES += \
+- QMAKE_XARCH_CFLAGS_$${arch} \
+- QMAKE_XARCH_LFLAGS_$${arch}
+- }
+-
+- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS)
+- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS)
+- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS)
+- } else {
+- simulator: \
+- version_identifier = $$simulator.deployment_identifier
+- else: \
+- version_identifier = $$device.deployment_identifier
+- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target
+- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag
+- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag
+- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag
+- }
+-
+- # Enable precompiled headers for multiple architectures
+- QMAKE_CFLAGS_USE_PRECOMPILE =
+- for (arch, VALID_ARCHS) {
+- icc_pch_style: \
+- use_flag = "-pch-use "
+- else: \
+- use_flag = -include
+-
+- # Only use Xarch with multi-arch, as the option confuses ccache
+- count(VALID_ARCHS, 1, greaterThan): \
+- QMAKE_CFLAGS_USE_PRECOMPILE += \
+- -Xarch_$${arch}
+-
+- QMAKE_CFLAGS_USE_PRECOMPILE += \
+- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}}
+- }
+- icc_pch_style {
+- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT}
+- QMAKE_CFLAGS_USE_PRECOMPILE =
+- } else {
+- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
+- }
+-
+- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT}
+-}
+-
+-cache(QMAKE_XCODE_DEVELOPER_PATH, stash)
+-cache(QMAKE_XCODE_VERSION, stash)
+-
+-QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix()
+diff --git a/mkspecs/features/mac/default_pre.prf b/mkspecs/features/mac/default_pre.prf
+index e21e749ee9..3b01424e67 100644
+--- a/mkspecs/features/mac/default_pre.prf
++++ b/mkspecs/features/mac/default_pre.prf
+@@ -1,51 +1,2 @@
+ CONFIG = asset_catalogs rez $$CONFIG
+ load(default_pre)
+-
+-isEmpty(QMAKE_XCODE_DEVELOPER_PATH) {
+- # Get path of Xcode's Developer directory
+- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null")
+- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \
+- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.")
+-
+- # Make sure Xcode path is valid
+- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \
+- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.")
+-
+- # Make sure Xcode is set up properly
+- isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null"))): \
+- error("Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.")
+-}
+-
+-isEmpty(QMAKE_XCODE_VERSION) {
+- # Extract Xcode version using xcodebuild
+- xcode_version = $$system("/usr/bin/xcodebuild -version")
+- QMAKE_XCODE_VERSION = $$member(xcode_version, 1)
+- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.")
+- unset(xcode_version)
+-}
+-
+-isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) {
+- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist
+- exists($$QMAKE_XCODE_PREFERENCES_FILE): \
+- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null")
+-
+- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \
+- cache(QMAKE_TARGET_BUNDLE_PREFIX)
+-}
+-
+-QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon
+-
+-# Make the default debug info format for static debug builds
+-# DWARF instead of DWARF with dSYM. This cuts down build times
+-# for application debug builds significantly, as Xcode doesn't
+-# have to pull out all the DWARF info from the Qt static libs
+-# and put it into a dSYM file. We don't need that dSYM file in
+-# the first place, since the information is available in the
+-# object files inside the archives (static libraries).
+-macx-xcode:qtConfig(static): \
+- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf
+-
+-# This variable is used by the xcode_dynamic_library_suffix
+-# feature, which allows Xcode to choose the Qt libraries to link to
+-# at build time, depending on the current Xcode SDK and configuration.
+-QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX
+diff --git a/mkspecs/features/mac/sdk.prf b/mkspecs/features/mac/sdk.prf
+index 68ab7e4053..e69de29bb2 100644
+--- a/mkspecs/features/mac/sdk.prf
++++ b/mkspecs/features/mac/sdk.prf
+@@ -1,49 +0,0 @@
+-
+-isEmpty(QMAKE_MAC_SDK): \
+- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.")
+-
+-contains(QMAKE_MAC_SDK, .*/.*): \
+- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)")
+-
+-defineReplace(xcodeSDKInfo) {
+- info = $$1
+- sdk = $$2
+- isEmpty(sdk): \
+- sdk = $$QMAKE_MAC_SDK
+-
+- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) {
+- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcodebuild -sdk $$sdk -version $$info 2>/dev/null")
+- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}): error("Could not resolve SDK $$info for \'$$sdk\'")
+- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info})
+- }
+-
+- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info}))
+-}
+-
+-QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path)
+-QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath)
+-QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion)
+-
+-sysrootified =
+-for(val, QMAKE_INCDIR_OPENGL): sysrootified += $${QMAKE_MAC_SDK_PATH}$$val
+-QMAKE_INCDIR_OPENGL = $$sysrootified
+-
+-QMAKESPEC_NAME = $$basename(QMAKESPEC)
+-
+-# Resolve SDK version of various tools
+-for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL)) {
+- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool}
+- !isEmpty($$tool_variable) {
+- $$tool = $$eval($$tool_variable)
+- next()
+- }
+-
+- value = $$eval($$tool)
+- isEmpty(value): next()
+-
+- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null")
+- isEmpty(sysrooted): next()
+-
+- $$tool = $$sysrooted $$member(value, 1, -1)
+- cache($$tool_variable, set stash, $$tool)
+-}
+diff --git a/mkspecs/features/qml_module.prf b/mkspecs/features/qml_module.prf
+index 4db0040dc5..65d6da1f4d 100644
+--- a/mkspecs/features/qml_module.prf
++++ b/mkspecs/features/qml_module.prf
+@@ -23,13 +23,8 @@ for(qmlf, AUX_QML_FILES): fq_aux_qml_files += $$absolute_path($$qmlf, $$_PRO_FIL
+
+ load(qt_build_paths)
+
+-qml1_target {
+- DESTDIR = $$MODULE_BASE_OUTDIR/imports/$$TARGETPATH
+- instbase = $$[QT_INSTALL_IMPORTS]
+-} else {
+- DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
+- instbase = $$[QT_INSTALL_QML]
+-}
++DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
++instbase = $$NIX_OUTPUT_QML
+
+ !qml1_target:static: CONFIG += builtin_resources
+
+diff --git a/mkspecs/features/qml_plugin.prf b/mkspecs/features/qml_plugin.prf
+index d49f4c49c1..097dcd7d39 100644
+--- a/mkspecs/features/qml_plugin.prf
++++ b/mkspecs/features/qml_plugin.prf
+@@ -48,13 +48,8 @@ exists($$QMLTYPEFILE): AUX_QML_FILES += $$QMLTYPEFILE
+
+ load(qt_build_paths)
+
+-qml1_target {
+- DESTDIR = $$MODULE_BASE_OUTDIR/imports/$$TARGETPATH
+- instbase = $$[QT_INSTALL_IMPORTS]
+-} else {
+- DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
+- instbase = $$[QT_INSTALL_QML]
+-}
++DESTDIR = $$MODULE_BASE_OUTDIR/qml/$$TARGETPATH
++instbase = $$NIX_OUTPUT_QML
+
+ target.path = $$instbase/$$TARGETPATH
+ INSTALLS += target
+diff --git a/mkspecs/features/qt_app.prf b/mkspecs/features/qt_app.prf
+index cb84ae0da8..45e16f4302 100644
+--- a/mkspecs/features/qt_app.prf
++++ b/mkspecs/features/qt_app.prf
+@@ -29,7 +29,7 @@ host_build:force_bootstrap {
+ target.path = $$[QT_HOST_BINS]
+ } else {
+ !build_pass:qtConfig(debug_and_release): CONFIG += release
+- target.path = $$[QT_INSTALL_BINS]
++ target.path = $$NIX_OUTPUT_BIN/bin
+ CONFIG += relative_qt_rpath # Qt's tools and apps should be relocatable
+ }
+ INSTALLS += target
+diff --git a/mkspecs/features/qt_build_paths.prf b/mkspecs/features/qt_build_paths.prf
+index 1848f00e90..2af93675c5 100644
+--- a/mkspecs/features/qt_build_paths.prf
++++ b/mkspecs/features/qt_build_paths.prf
+@@ -23,6 +23,6 @@ exists($$MODULE_BASE_INDIR/.git): \
+ !force_independent {
+ # If the module is not built independently, everything ends up in qtbase.
+ # This is the case in non-prefix builds, except for selected modules.
+- MODULE_BASE_OUTDIR = $$[QT_HOST_PREFIX]
+- MODULE_QMAKE_OUTDIR = $$[QT_HOST_PREFIX]
++ MODULE_BASE_OUTDIR = $$NIX_OUTPUT_OUT
++ MODULE_QMAKE_OUTDIR = $$NIX_OUTPUT_OUT
+ }
+diff --git a/mkspecs/features/qt_common.prf b/mkspecs/features/qt_common.prf
+index 1e138730b3..b7ba74dc3f 100644
+--- a/mkspecs/features/qt_common.prf
++++ b/mkspecs/features/qt_common.prf
+@@ -32,8 +32,8 @@ contains(TEMPLATE, .*lib) {
+ qqt_libdir = \$\$\$\$[QT_HOST_LIBS]
+ qt_libdir = $$[QT_HOST_LIBS]
+ } else {
+- qqt_libdir = \$\$\$\$[QT_INSTALL_LIBS]
+- qt_libdir = $$[QT_INSTALL_LIBS]
++ qqt_libdir = \$\$\$\$NIX_OUTPUT_OUT/lib
++ qt_libdir = $$NIX_OUTPUT_OUT/lib
+ }
+ contains(QMAKE_DEFAULT_LIBDIRS, $$qt_libdir) {
+ lib_replace.match = "[^ ']*$$rplbase/lib"
+diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf
+index 72dde61a40..f891a2baed 100644
+--- a/mkspecs/features/qt_docs.prf
++++ b/mkspecs/features/qt_docs.prf
+@@ -45,7 +45,7 @@ QMAKE_DOCS_OUTPUTDIR = $$QMAKE_DOCS_BASE_OUTDIR/$$QMAKE_DOCS_TARGETDIR
+
+ QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR)
+ !build_online_docs: \
+- QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS])
++ QDOC += -installdir $$shell_quote($$NIX_OUTPUT_DOC)
+ PREP_DOC_INDEXES =
+ DOC_INDEXES =
+ !isEmpty(QTREPOS) {
+@@ -64,8 +64,8 @@ DOC_INDEXES =
+ DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc)
+ } else {
+ prepare_docs: \
+- PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
+- DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get])
++ PREP_DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
++ DOC_INDEXES += -indexdir $$shell_quote($$NIX_OUTPUT_DOC)
+ }
+
+ qtattributionsscanner.target = qtattributionsscanner
+@@ -88,12 +88,12 @@ prepare_docs {
+ qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch)
+
+ inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR
+- inst_html_docs.path = $$[QT_INSTALL_DOCS]
++ inst_html_docs.path = $$NIX_OUTPUT_DOC
+ inst_html_docs.CONFIG += no_check_exist directory no_default_install no_build
+ INSTALLS += inst_html_docs
+
+ inst_qch_docs.files = $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch
+- inst_qch_docs.path = $$[QT_INSTALL_DOCS]
++ inst_qch_docs.path = $$NIX_OUTPUT_DOC
+ inst_qch_docs.CONFIG += no_check_exist no_default_install no_build
+ INSTALLS += inst_qch_docs
+
+diff --git a/mkspecs/features/qt_example_installs.prf b/mkspecs/features/qt_example_installs.prf
+index 0a008374e5..5e7cd92f6f 100644
+--- a/mkspecs/features/qt_example_installs.prf
++++ b/mkspecs/features/qt_example_installs.prf
+@@ -73,7 +73,7 @@ probase = $$relative_path($$_PRO_FILE_PWD_, $$dirname(_QMAKE_CONF_)/examples)
+ $$SOURCES $$HEADERS $$FORMS $$RESOURCES $$TRANSLATIONS \
+ $$DBUS_ADAPTORS $$DBUS_INTERFACES
+ addInstallFiles(sources.files, $$sourcefiles)
+- sources.path = $$[QT_INSTALL_EXAMPLES]/$$probase
++ sources.path = $$NIX_OUTPUT_DEV/share/examples/$$probase
+ INSTALLS += sources
+
+ check_examples {
+diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf
+index c00fdb73f8..6d8ba132cb 100644
+--- a/mkspecs/features/qt_functions.prf
++++ b/mkspecs/features/qt_functions.prf
+@@ -69,7 +69,7 @@ defineTest(qtHaveModule) {
+ defineTest(qtPrepareTool) {
+ cmd = $$eval(QT_TOOL.$${2}.binary)
+ isEmpty(cmd) {
+- cmd = $$[QT_HOST_BINS]/$$2
++ cmd = $$system("type -p $$2")
+ exists($${cmd}.pl) {
+ $${1}_EXE = $${cmd}.pl
+ cmd = perl -w $$system_path($${cmd}.pl)
+diff --git a/mkspecs/features/qt_installs.prf b/mkspecs/features/qt_installs.prf
+index 0d3dfb6b93..5f935b4424 100644
+--- a/mkspecs/features/qt_installs.prf
++++ b/mkspecs/features/qt_installs.prf
+@@ -12,16 +12,10 @@
+ #library
+ !qt_no_install_library {
+ win32 {
+- host_build: \
+- dlltarget.path = $$[QT_HOST_BINS]
+- else: \
+- dlltarget.path = $$[QT_INSTALL_BINS]
++ dlltarget.path = $$NIX_OUTPUT_BIN/bin
+ INSTALLS += dlltarget
+ }
+- host_build: \
+- target.path = $$[QT_HOST_LIBS]
+- else: \
+- target.path = $$[QT_INSTALL_LIBS]
++ target.path = $$NIX_OUTPUT_OUT/lib
+ !static: target.CONFIG = no_dll
+ INSTALLS += target
+ }
+@@ -29,33 +23,33 @@
+ #headers
+ qt_install_headers {
+ class_headers.files = $$SYNCQT.HEADER_CLASSES
+- class_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
++ class_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
+ INSTALLS += class_headers
+
+ targ_headers.files = $$SYNCQT.HEADER_FILES
+- targ_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME
++ targ_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME
+ INSTALLS += targ_headers
+
+ private_headers.files = $$SYNCQT.PRIVATE_HEADER_FILES $$SYNCQT.INJECTED_PRIVATE_HEADER_FILES
+- private_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
++ private_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/private
+ INSTALLS += private_headers
+
+ qpa_headers.files = $$SYNCQT.QPA_HEADER_FILES
+- qpa_headers.path = $$[QT_INSTALL_HEADERS]/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
++ qpa_headers.path = $$NIX_OUTPUT_DEV/include/$$MODULE_INCNAME/$$VERSION/$$MODULE_INCNAME/qpa
+ INSTALLS += qpa_headers
+ }
+
+ #module
+ qt_install_module {
+ !isEmpty(MODULE_PRI) {
+- pritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
++ pritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
+ pritarget.files = $$MODULE_PRI
+ INSTALLS += pritarget
+ } else: isEmpty(MODULE_PRIVATE_PRI) {
+ warning("Project $$basename(_PRO_FILE_) is a module, but has not defined MODULE_PRI, which is required for Qt to expose the module to other projects.")
+ }
+ !isEmpty(MODULE_PRIVATE_PRI) {
+- privpritarget.path = $$[QT_HOST_DATA]/mkspecs/modules
++ privpritarget.path = $$NIX_OUTPUT_DEV/mkspecs/modules
+ privpritarget.files = $$MODULE_PRIVATE_PRI
+ INSTALLS += privpritarget
+ }
+diff --git a/mkspecs/features/qt_plugin.prf b/mkspecs/features/qt_plugin.prf
+index 62e1b69fde..abd63123f9 100644
+--- a/mkspecs/features/qt_plugin.prf
++++ b/mkspecs/features/qt_plugin.prf
+@@ -88,7 +88,7 @@ CONFIG(static, static|shared)|prefix_build {
+ }
+ }
+
+-target.path = $$[QT_INSTALL_PLUGINS]/$$PLUGIN_TYPE
++target.path = $$NIX_OUTPUT_PLUGIN/$$PLUGIN_TYPE
+ INSTALLS += target
+
+ TARGET = $$qt5LibraryTarget($$TARGET)
+diff --git a/src/corelib/Qt5CoreConfigExtras.cmake.in b/src/corelib/Qt5CoreConfigExtras.cmake.in
+index 545b9a3d1e..6ac0cdefe4 100644
+--- a/src/corelib/Qt5CoreConfigExtras.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtras.cmake.in
+@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake)
+ add_executable(Qt5::qmake IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc)
+ add_executable(Qt5::moc IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc)
+ add_executable(Qt5::rcc IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
+@@ -133,7 +133,7 @@ if (NOT TARGET Qt5::WinMain)
+ !!IF !isEmpty(CMAKE_RELEASE_TYPE)
+ set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
+ !!ENDIF
+@@ -147,7 +147,7 @@ if (NOT TARGET Qt5::WinMain)
+ set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
+
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
+ !!ENDIF
+diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+index c357237d0e..6f0c75de3c 100644
+--- a/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
+@@ -1,6 +1,6 @@
+
+ !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE)
+-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+ !!ELSE
+ set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
+ !!ENDIF
+diff --git a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+index 706304cf34..546420f6ad 100644
+--- a/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
++++ b/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
+@@ -1,6 +1,6 @@
+
+ !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE)
+-set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
++set(_qt5_corelib_extra_includes \"$$NIX_OUTPUT_DEV/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
+ !!ELSE
+ set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
+ !!ENDIF
+diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
+index 39e7c71a9c..dced1f2811 100644
+--- a/src/corelib/kernel/qcoreapplication.cpp
++++ b/src/corelib/kernel/qcoreapplication.cpp
+@@ -2533,6 +2533,15 @@ QStringList QCoreApplication::libraryPaths()
+ QStringList *app_libpaths = new QStringList;
+ coreappdata()->app_libpaths.reset(app_libpaths);
+
++ // Add library paths derived from PATH
++ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
++ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX);
++ for (const QString &path: paths) {
++ if (!path.isEmpty()) {
++ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir));
++ }
++ }
++
+ const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
+ if (!libPathEnv.isEmpty()) {
+ QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
+diff --git a/src/corelib/tools/qtimezoneprivate_tz.cpp b/src/corelib/tools/qtimezoneprivate_tz.cpp
+index 1714c9802f..fd2ebb1336 100644
+--- a/src/corelib/tools/qtimezoneprivate_tz.cpp
++++ b/src/corelib/tools/qtimezoneprivate_tz.cpp
+@@ -70,7 +70,11 @@ typedef QHash QTzTimeZoneHash;
+ // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
+ static QTzTimeZoneHash loadTzTimeZones()
+ {
+- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
++ // Try TZDIR first, in case we're running on NixOS.
++ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab");
++ // Fallback to traditional paths in case we are not on NixOS.
++ if (!QFile::exists(path))
++ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
+ if (!QFile::exists(path))
+ path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
+
+@@ -643,12 +647,16 @@ void QTzTimeZonePrivate::init(const QByteArray &ianaId)
+ if (!tzif.open(QIODevice::ReadOnly))
+ return;
+ } else {
+- // Open named tz, try modern path first, if fails try legacy path
+- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ // Try TZDIR first, in case we're running on NixOS
++ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId));
+ if (!tzif.open(QIODevice::ReadOnly)) {
+- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
+- if (!tzif.open(QIODevice::ReadOnly))
+- return;
++ // Open named tz, try modern path first, if fails try legacy path
++ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly)) {
++ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
++ if (!tzif.open(QIODevice::ReadOnly))
++ return;
++ }
+ }
+ }
+
+diff --git a/src/dbus/Qt5DBusConfigExtras.cmake.in b/src/dbus/Qt5DBusConfigExtras.cmake.in
+index 1d947159e2..b36865fc48 100644
+--- a/src/dbus/Qt5DBusConfigExtras.cmake.in
++++ b/src/dbus/Qt5DBusConfigExtras.cmake.in
+@@ -2,11 +2,7 @@
+ if (NOT TARGET Qt5::qdbuscpp2xml)
+ add_executable(Qt5::qdbuscpp2xml IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
+ _qt5_DBus_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qdbuscpp2xml PROPERTIES
+@@ -17,11 +13,7 @@ endif()
+ if (NOT TARGET Qt5::qdbusxml2cpp)
+ add_executable(Qt5::qdbusxml2cpp IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ set(imported_location \"$$NIX_OUTPUT_DEV/bin/qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
+ _qt5_DBus_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qdbusxml2cpp PROPERTIES
+diff --git a/src/gui/Qt5GuiConfigExtras.cmake.in b/src/gui/Qt5GuiConfigExtras.cmake.in
+index 07869efd7d..37b95d1b6b 100644
+--- a/src/gui/Qt5GuiConfigExtras.cmake.in
++++ b/src/gui/Qt5GuiConfigExtras.cmake.in
+@@ -2,7 +2,7 @@
+ !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
+
+ !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
+-set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
++set(Qt5Gui_EGL_INCLUDE_DIRS \"$$NIX_OUTPUT_DEV/$$CMAKE_INCLUDE_DIR/QtANGLE\")
+ !!ELSE
+ set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
+ !!ENDIF
+@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_properties TargetName Configuration LIB_LOCATIO
+ set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
+
+ !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
++ set(imported_location \"$$NIX_OUTPUT_OUT/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
+ !!ENDIF
+
+ !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
+- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
++ set(imported_implib \"$$NIX_OUTPUT_DEV/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+ !!ELSE
+ set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
+ !!ENDIF
+diff --git a/src/network/kernel/qdnslookup_unix.cpp b/src/network/kernel/qdnslookup_unix.cpp
+index 1da00813ce..0bf877afcb 100644
+--- a/src/network/kernel/qdnslookup_unix.cpp
++++ b/src/network/kernel/qdnslookup_unix.cpp
+@@ -92,7 +92,7 @@ static bool resolveLibraryInternal()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
+ if (!lib.load())
+ return false;
+ }
+diff --git a/src/network/kernel/qhostinfo_unix.cpp b/src/network/kernel/qhostinfo_unix.cpp
+index cf08a15f96..2310488298 100644
+--- a/src/network/kernel/qhostinfo_unix.cpp
++++ b/src/network/kernel/qhostinfo_unix.cpp
+@@ -102,7 +102,7 @@ static bool resolveLibraryInternal()
+ if (!lib.load())
+ #endif
+ {
+- lib.setFileName(QLatin1String("resolv"));
++ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
+ if (!lib.load())
+ return false;
+ }
+diff --git a/src/network/ssl/qsslcontext_openssl.cpp b/src/network/ssl/qsslcontext_openssl.cpp
+index c92d8fc3f8..6008063bcf 100644
+--- a/src/network/ssl/qsslcontext_openssl.cpp
++++ b/src/network/ssl/qsslcontext_openssl.cpp
+@@ -351,7 +351,7 @@ init_context:
+
+ const QVector 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,
+@@ -364,7 +364,7 @@ init_context:
+ sslContext->errorCode = QSslError::UnspecifiedError;
+ }
+ } 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"));
+diff --git a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+index ca9f7af127..a337ad73bf 100644
+--- a/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
++++ b/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
+@@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocations()
+ m_possibleLocations.reserve(7);
+ if (qEnvironmentVariableIsSet("QTCOMPOSE"))
+ m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));
+- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale"));
+- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale"));
+ m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale"));
+ m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale"));
++ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE));
+ }
+
+ QString TableGenerator::findComposeFile()
+diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+index 7640a711a9..ef9a14d38b 100644
+--- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
++++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
+@@ -580,7 +580,14 @@ QFunctionPointer QGLXContext::getProcAddress(const char *procName)
+ #if QT_CONFIG(library)
+ extern const QString qt_gl_library_name();
+ // QLibrary lib(qt_gl_library_name());
++ // Check system library paths first
+ QLibrary lib(QLatin1String("GL"));
++#ifdef NIXPKGS_MESA_GL
++ if (!lib.load()) {
++ // Fallback to Mesa driver
++ lib.setFileName(QLatin1String(NIXPKGS_MESA_GL));
++ }
++#endif // NIXPKGS_MESA_GL
+ glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
+ #endif
+ }
+diff --git a/src/plugins/platforms/xcb/qxcbcursor.cpp b/src/plugins/platforms/xcb/qxcbcursor.cpp
+index d257ab1242..75853af4e4 100644
+--- a/src/plugins/platforms/xcb/qxcbcursor.cpp
++++ b/src/plugins/platforms/xcb/qxcbcursor.cpp
+@@ -311,10 +311,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *conn, QXcbScreen *screen)
+ #if defined(XCB_USE_XLIB) && QT_CONFIG(library)
+ static bool function_ptrs_not_initialized = true;
+ if (function_ptrs_not_initialized) {
+- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
++ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1);
+ bool xcursorFound = xcursorLib.load();
+ if (!xcursorFound) { // try without the version number
+- xcursorLib.setFileName(QLatin1String("Xcursor"));
++ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR));
+ xcursorFound = xcursorLib.load();
+ }
+ if (xcursorFound) {
+diff --git a/src/plugins/platformthemes/gtk3/main.cpp b/src/plugins/platformthemes/gtk3/main.cpp
+index c4cd66c33b..b6f2691587 100644
+--- a/src/plugins/platformthemes/gtk3/main.cpp
++++ b/src/plugins/platformthemes/gtk3/main.cpp
+@@ -39,6 +39,7 @@
+
+ #include
+ #include "qgtk3theme.h"
++#include
+
+ QT_BEGIN_NAMESPACE
+
+@@ -54,8 +55,22 @@ public:
+ QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms)
+ {
+ Q_UNUSED(params);
+- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive))
++ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) {
++
++#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS
++ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':');
++ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS);
++ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':')));
++#endif
++
++#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES
++ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':');
++ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES);
++ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':')));
++#endif
++
+ return new QGtk3Theme;
++ }
+
+ return 0;
+ }
+diff --git a/src/widgets/Qt5WidgetsConfigExtras.cmake.in b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+index 99d87e2e46..a4eab2aa72 100644
+--- a/src/widgets/Qt5WidgetsConfigExtras.cmake.in
++++ b/src/widgets/Qt5WidgetsConfigExtras.cmake.in
+@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic)
+ add_executable(Qt5::uic IMPORTED)
+
+ !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
++ set(imported_location \"$$NIX_OUTPUT_DEV/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ !!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
+ !!ENDIF
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/cmake-paths.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/cmake-paths.patch
deleted file mode 100644
index 9616f5812cf..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/cmake-paths.patch
+++ /dev/null
@@ -1,359 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-+++ qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5BasicConfig.cmake.in
-@@ -9,30 +9,6 @@ if (CMAKE_VERSION VERSION_LESS 3.0.0)
- endif()
- !!ENDIF
-
--!!IF !isEmpty(CMAKE_USR_MOVE_WORKAROUND)
--!!IF !isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
--set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
--!!ELSE
--get_filename_component(_IMPORT_PREFIX \"${CMAKE_CURRENT_LIST_FILE}\" PATH)
--# Use original install prefix when loaded through a
--# cross-prefix symbolic link such as /lib -> /usr/lib.
--get_filename_component(_realCurr \"${_IMPORT_PREFIX}\" REALPATH)
--get_filename_component(_realOrig \"$$CMAKE_INSTALL_LIBS_DIR/cmake/Qt5$${CMAKE_MODULE_NAME}\" REALPATH)
--if(_realCurr STREQUAL _realOrig)
-- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$CMAKE_INSTALL_LIBS_DIR/$${CMAKE_RELATIVE_INSTALL_LIBS_DIR}\" ABSOLUTE)
--else()
-- get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
--endif()
--unset(_realOrig)
--unset(_realCurr)
--unset(_IMPORT_PREFIX)
--!!ENDIF
--!!ELIF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
--get_filename_component(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"${CMAKE_CURRENT_LIST_DIR}/$${CMAKE_RELATIVE_INSTALL_DIR}\" ABSOLUTE)
--!!ELSE
--set(_qt5$${CMAKE_MODULE_NAME}_install_prefix \"$$[QT_INSTALL_PREFIX]\")
--!!ENDIF
--
- !!IF !equals(TEMPLATE, aux)
- # For backwards compatibility only. Use Qt5$${CMAKE_MODULE_NAME}_VERSION instead.
- set(Qt5$${CMAKE_MODULE_NAME}_VERSION_STRING "$$eval(QT.$${MODULE}.MAJOR_VERSION).$$eval(QT.$${MODULE}.MINOR_VERSION).$$eval(QT.$${MODULE}.PATCH_VERSION)")
-@@ -59,7 +35,10 @@ macro(_populate_$${CMAKE_MODULE_NAME}_ta
- set_property(TARGET Qt5::$${CMAKE_MODULE_NAME} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-
- !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-+ endif()
- !!ELSE
- set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
- !!ENDIF
-@@ -74,19 +53,6 @@ macro(_populate_$${CMAKE_MODULE_NAME}_ta
- \"IMPORTED_LINK_INTERFACE_LIBRARIES_${Configuration}\" \"${_Qt5$${CMAKE_MODULE_NAME}_LIB_DEPENDENCIES}\"
- )
-
--!!IF !isEmpty(CMAKE_WINDOWS_BUILD)
--!!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- set(imported_implib \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
--!!ELSE
-- set(imported_implib \"IMPORTED_IMPLIB_${Configuration}\" \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
--!!ENDIF
-- _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_implib})
-- if(NOT \"${IMPLIB_LOCATION}\" STREQUAL \"\")
-- set_target_properties(Qt5::$${CMAKE_MODULE_NAME} PROPERTIES
-- \"IMPORTED_IMPLIB_${Configuration}\" ${imported_implib}
-- )
-- endif()
--!!ENDIF
- endmacro()
- !!ENDIF
-
-@@ -95,24 +61,24 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- !!IF !no_module_headers
- !!IF !isEmpty(CMAKE_BUILD_IS_FRAMEWORK)
- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
-+ \"@NIX_OUT@/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework\"
-+ \"@NIX_OUT@/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Headers\"
- )
- !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
-+ \"@NIX_OUT@/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/\"
-+ \"@NIX_OUT@/$${CMAKE_LIB_DIR}Qt$${CMAKE_MODULE_NAME}.framework/Versions/$$section(VERSION, ., 0, 0)/Headers/$$VERSION/$${MODULE_INCNAME}\"
- )
- !!ELSE
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
- !!ENDIF
- !!ELSE
- !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
-- set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR\" \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\")
-+ set(_Qt5$${CMAKE_MODULE_NAME}_OWN_INCLUDE_DIRS \"@NIX_DEV@/$$CMAKE_INCLUDE_DIR\" \"@NIX_DEV@/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}\")
- !!IF isEmpty(CMAKE_NO_PRIVATE_INCLUDES)
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\"
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\"
-+ \"@NIX_DEV@/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION\"
-+ \"@NIX_DEV@/$${CMAKE_INCLUDE_DIR}$${MODULE_INCNAME}/$$VERSION/$${MODULE_INCNAME}\"
- )
- !!ELSE
- set(Qt5$${CMAKE_MODULE_NAME}_PRIVATE_INCLUDE_DIRS \"\")
-@@ -281,7 +247,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- !!IF isEmpty(CMAKE_DEBUG_TYPE)
- !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-+ if (EXISTS \"@NIX_OUT@/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
- !!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
- if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
- !!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
-@@ -289,13 +255,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
- if (EXISTS
- !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
-+ \"@NIX_OUT@/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
- !!ELSE
- \"$${CMAKE_LIB_FILE_LOCATION_DEBUG}\"
- !!ENDIF
- AND EXISTS
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
-+ \"@NIX_DEV@/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
- !!ELSE
- \"$${CMAKE_IMPLIB_FILE_LOCATION_DEBUG}\" )
- !!ENDIF
-@@ -318,7 +284,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- !!IF isEmpty(CMAKE_RELEASE_TYPE)
- !!IF !isEmpty(CMAKE_STATIC_WINDOWS_BUILD)
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- if (EXISTS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-+ if (EXISTS \"@NIX_DEV@/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
- !!ELSE // CMAKE_LIB_DIR_IS_ABSOLUTE
- if (EXISTS \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
- !!ENDIF // CMAKE_LIB_DIR_IS_ABSOLUTE
-@@ -326,13 +292,13 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- !!ELSE // CMAKE_STATIC_WINDOWS_BUILD
- if (EXISTS
- !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
-+ \"@NIX_OUT@/$${CMAKE_DLL_DIR}$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
- !!ELSE
- \"$${CMAKE_LIB_FILE_LOCATION_RELEASE}\"
- !!ENDIF
- AND EXISTS
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
-+ \"@NIX_DEV@/$${CMAKE_LIB_DIR}$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
- !!ELSE
- \"$${CMAKE_IMPLIB_FILE_LOCATION_RELEASE}\" )
- !!ENDIF
-@@ -354,11 +320,7 @@ if (NOT TARGET Qt5::$${CMAKE_MODULE_NAME
- macro(_populate_$${CMAKE_MODULE_NAME}_plugin_properties Plugin Configuration PLUGIN_LOCATION)
- set_property(TARGET Qt5::${Plugin} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-
--!!IF isEmpty(CMAKE_PLUGIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
--!!ELSE
-- set(imported_location \"$${CMAKE_PLUGIN_DIR}${PLUGIN_LOCATION}\")
--!!ENDIF
-+ set(imported_location \"${PLUGIN_LOCATION}\")
- _qt5_$${CMAKE_MODULE_NAME}_check_file_exists(${imported_location})
- set_target_properties(Qt5::${Plugin} PROPERTIES
- \"IMPORTED_LOCATION_${Configuration}\" ${imported_location}
-Index: qtbase-opensource-src-5.9.0/src/gui/Qt5GuiConfigExtras.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/gui/Qt5GuiConfigExtras.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/gui/Qt5GuiConfigExtras.cmake.in
-@@ -2,7 +2,7 @@
- !!IF !isEmpty(CMAKE_ANGLE_EGL_DLL_RELEASE)
-
- !!IF isEmpty(CMAKE_INCLUDE_DIR_IS_ABSOLUTE)
--set(Qt5Gui_EGL_INCLUDE_DIRS \"${_qt5$${CMAKE_MODULE_NAME}_install_prefix}/$$CMAKE_INCLUDE_DIR/QtANGLE\")
-+set(Qt5Gui_EGL_INCLUDE_DIRS \"@NIX_DEV@/$$CMAKE_INCLUDE_DIR/QtANGLE\")
- !!ELSE
- set(Qt5Gui_EGL_INCLUDE_DIRS \"$$CMAKE_INCLUDE_DIR/QtANGLE\")
- !!ENDIF
-@@ -17,13 +17,13 @@ macro(_populate_qt5gui_gl_target_propert
- set_property(TARGET Qt5::${TargetName} APPEND PROPERTY IMPORTED_CONFIGURATIONS ${Configuration})
-
- !!IF isEmpty(CMAKE_DLL_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Gui_install_prefix}/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
- !!ELSE
- set(imported_location \"$${CMAKE_DLL_DIR}${LIB_LOCATION}\")
- !!ENDIF
-
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- set(imported_implib \"${_qt5Gui_install_prefix}/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
-+ set(imported_implib \"@NIX_DEV@/$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
- !!ELSE
- set(imported_implib \"$${CMAKE_LIB_DIR}${IMPLIB_LOCATION}\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/widgets/Qt5WidgetsConfigExtras.cmake.in
-@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::uic)
- add_executable(Qt5::uic IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Widgets_install_prefix}/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}uic$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtras.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtras.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtras.cmake.in
-@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qmake)
- add_executable(Qt5::qmake IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}qmake$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::moc)
- add_executable(Qt5::moc IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}moc$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-@@ -35,7 +35,7 @@ if (NOT TARGET Qt5::rcc)
- add_executable(Qt5::rcc IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}rcc$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-@@ -133,7 +133,7 @@ if (NOT TARGET Qt5::WinMain)
- !!IF !isEmpty(CMAKE_RELEASE_TYPE)
- set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
- !!ELSE
- set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_RELEASE}\")
- !!ENDIF
-@@ -147,7 +147,7 @@ if (NOT TARGET Qt5::WinMain)
- set_property(TARGET Qt5::WinMain APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
-
- !!IF isEmpty(CMAKE_LIB_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Core_install_prefix}/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
- !!ELSE
- set(imported_location \"$${CMAKE_LIB_DIR}$${CMAKE_WINMAIN_FILE_LOCATION_DEBUG}\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDirForInstall.cmake.in
-@@ -1,6 +1,6 @@
-
- !!IF isEmpty(CMAKE_INSTALL_DATA_DIR_IS_ABSOLUTE)
--set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
-+set(_qt5_corelib_extra_includes \"@NIX_DEV@/$${CMAKE_INSTALL_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
- !!ELSE
- set(_qt5_corelib_extra_includes \"$${CMAKE_INSTALL_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/corelib/Qt5CoreConfigExtrasMkspecDir.cmake.in
-@@ -1,6 +1,6 @@
-
- !!IF isEmpty(CMAKE_HOST_DATA_DIR_IS_ABSOLUTE)
--set(_qt5_corelib_extra_includes \"${_qt5Core_install_prefix}/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
-+set(_qt5_corelib_extra_includes \"@NIX_DEV@/$${CMAKE_HOST_DATA_DIR}/mkspecs/$${CMAKE_MKSPEC}\")
- !!ELSE
- set(_qt5_corelib_extra_includes \"$${CMAKE_HOST_DATA_DIR}mkspecs/$${CMAKE_MKSPEC}\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/src/dbus/Qt5DBusConfigExtras.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/dbus/Qt5DBusConfigExtras.cmake.in
-+++ qtbase-opensource-src-5.9.0/src/dbus/Qt5DBusConfigExtras.cmake.in
-@@ -3,7 +3,7 @@ if (NOT TARGET Qt5::qdbuscpp2xml)
- add_executable(Qt5::qdbuscpp2xml IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}qdbuscpp2xml$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-@@ -18,7 +18,7 @@ if (NOT TARGET Qt5::qdbusxml2cpp)
- add_executable(Qt5::qdbusxml2cpp IMPORTED)
-
- !!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5DBus_install_prefix}/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
- !!ELSE
- set(imported_location \"$${CMAKE_BIN_DIR}qdbusxml2cpp$$CMAKE_BIN_SUFFIX\")
- !!ENDIF
-Index: qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-+++ qtbase-opensource-src-5.9.0/mkspecs/features/data/cmake/Qt5PluginTarget.cmake.in
-@@ -2,10 +2,10 @@
- add_library(Qt5::$$CMAKE_PLUGIN_NAME MODULE IMPORTED)
-
- !!IF !isEmpty(CMAKE_RELEASE_TYPE)
--_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
-+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME RELEASE \"@NIX_BIN@/$${CMAKE_PLUGIN_LOCATION_RELEASE}\")
- !!ENDIF
- !!IF !isEmpty(CMAKE_DEBUG_TYPE)
--_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
-+_populate_$${CMAKE_MODULE_NAME}_plugin_properties($$CMAKE_PLUGIN_NAME DEBUG \"@NIX_BIN@/$${CMAKE_PLUGIN_LOCATION_DEBUG}\")
- !!ENDIF
-
- list(APPEND Qt5$${CMAKE_MODULE_NAME}_PLUGINS Qt5::$$CMAKE_PLUGIN_NAME)
-Index: qtbase-opensource-src-5.9.0/mkspecs/features/create_cmake.prf
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/mkspecs/features/create_cmake.prf
-+++ qtbase-opensource-src-5.9.0/mkspecs/features/create_cmake.prf
-@@ -136,28 +136,28 @@ contains(CONFIG, plugin) {
-
- win32 {
- isEmpty(CMAKE_STATIC_TYPE) {
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${TARGET}.dll
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${TARGET}d.dll
-+ CMAKE_PLUGIN_LOCATION_RELEASE = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/$${TARGET}.dll
-+ CMAKE_PLUGIN_LOCATION_DEBUG = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/$${TARGET}d.dll
- } else:mingw {
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${TARGET}.a
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${TARGET}d.a
-+ CMAKE_PLUGIN_LOCATION_RELEASE = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}.a
-+ CMAKE_PLUGIN_LOCATION_DEBUG = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}d.a
- } else { # MSVC static
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/$${TARGET}.lib
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/$${TARGET}d.lib
-+ CMAKE_PLUGIN_LOCATION_RELEASE = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/$${TARGET}.lib
-+ CMAKE_PLUGIN_LOCATION_DEBUG = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/$${TARGET}d.lib
- }
- } else {
- mac {
- isEmpty(CMAKE_STATIC_TYPE): CMAKE_PlUGIN_EXT = .dylib
- else: CMAKE_PlUGIN_EXT = .a
-
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-+ CMAKE_PLUGIN_LOCATION_RELEASE = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-+ CMAKE_PLUGIN_LOCATION_DEBUG = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
- } else {
- isEmpty(CMAKE_STATIC_TYPE): CMAKE_PlUGIN_EXT = .so
- else: CMAKE_PlUGIN_EXT = .a
-
-- CMAKE_PLUGIN_LOCATION_RELEASE = $$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-- CMAKE_PLUGIN_LOCATION_DEBUG = $$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-+ CMAKE_PLUGIN_LOCATION_RELEASE = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
-+ CMAKE_PLUGIN_LOCATION_DEBUG = $${CMAKE_PLUGIN_DIR}$$PLUGIN_TYPE/lib$${TARGET}$${CMAKE_PlUGIN_EXT}
- }
- }
- cmake_target_file.input = $$PWD/data/cmake/Qt5PluginTarget.cmake.in
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/compose-search-path.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/compose-search-path.patch
deleted file mode 100644
index 720e7d81fa2..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/compose-search-path.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
-+++ qtbase-opensource-src-5.9.0/src/plugins/platforminputcontexts/compose/generator/qtablegenerator.cpp
-@@ -265,12 +265,9 @@ void TableGenerator::initPossibleLocatio
- m_possibleLocations.reserve(7);
- if (qEnvironmentVariableIsSet("QTCOMPOSE"))
- m_possibleLocations.append(QString::fromLocal8Bit(qgetenv("QTCOMPOSE")));
-- m_possibleLocations.append(QStringLiteral("/usr/share/X11/locale"));
-- m_possibleLocations.append(QStringLiteral("/usr/local/share/X11/locale"));
-- m_possibleLocations.append(QStringLiteral("/usr/lib/X11/locale"));
-- m_possibleLocations.append(QStringLiteral("/usr/local/lib/X11/locale"));
- m_possibleLocations.append(QStringLiteral(X11_PREFIX "/share/X11/locale"));
- m_possibleLocations.append(QStringLiteral(X11_PREFIX "/lib/X11/locale"));
-+ m_possibleLocations.append(QLatin1String(NIXPKGS_QTCOMPOSE));
- }
-
- QString TableGenerator::findComposeFile()
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-cf.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-cf.patch
deleted file mode 100644
index 3e6e0e5101a..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-cf.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff --git a/src/plugins/bearer/corewlan/qcorewlanengine.mm b/src/plugins/bearer/corewlan/qcorewlanengine.mm
-index 341d3bc..3368234 100644
---- a/src/plugins/bearer/corewlan/qcorewlanengine.mm
-+++ b/src/plugins/bearer/corewlan/qcorewlanengine.mm
-@@ -287,7 +287,7 @@ void QScanThread::getUserConfigurations()
- QMacAutoReleasePool pool;
- userProfiles.clear();
-
-- NSArray *wifiInterfaces = [CWWiFiClient interfaceNames];
-+ NSArray *wifiInterfaces = [CWWiFiClient interfaceNames];
- for (NSString *ifName in wifiInterfaces) {
-
- CWInterface *wifiInterface = [[CWWiFiClient sharedWiFiClient] interfaceWithName:ifName];
-@@ -602,7 +602,7 @@ void QCoreWlanEngine::doRequestUpdate()
-
- QMacAutoReleasePool pool;
-
-- NSArray *wifiInterfaces = [CWWiFiClient interfaceNames];
-+ NSArray *wifiInterfaces = [CWWiFiClient interfaceNames];
- for (NSString *ifName in wifiInterfaces) {
- scanThread->interfaceName = QString::fromNSString(ifName);
- scanThread->start();
- QString TableGenerator::findComposeFile()
-diff --git a/src/plugins/platforms/cocoa/qcocoawindow.mm b/src/plugins/platforms/cocoa/qcocoawindow.mm
-index 59b7637..b91139d 100644
---- a/src/plugins/platforms/cocoa/qcocoawindow.mm
-+++ b/src/plugins/platforms/cocoa/qcocoawindow.mm
-@@ -320,7 +320,7 @@ static void qt_closePopups()
- + (void)applicationActivationChanged:(NSNotification*)notification
- {
- const id sender = self;
-- NSEnumerator *windowEnumerator = nullptr;
-+ NSEnumerator *windowEnumerator = nullptr;
- NSApplication *application = [NSApplication sharedApplication];
-
- #if QT_MACOS_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_10_12)
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-series b/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-series
deleted file mode 100644
index 1111ff65f44..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/darwin-series
+++ /dev/null
@@ -1,3 +0,0 @@
-mkspecs-common-mac.patch
-mkspecs-features-mac.patch
-darwin-cf.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gl.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gl.patch
deleted file mode 100644
index 9385c7f6678..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gl.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
-+++ qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp
-@@ -580,7 +580,14 @@ QFunctionPointer QGLXContext::getProcAdd
- #if QT_CONFIG(library)
- extern const QString qt_gl_library_name();
- // QLibrary lib(qt_gl_library_name());
-+ // Check system library paths first
- QLibrary lib(QLatin1String("GL"));
-+#ifdef NIXPKGS_MESA_GL
-+ if (!lib.load()) {
-+ // Fallback to Mesa driver
-+ lib.setFileName(QLatin1String(NIXPKGS_MESA_GL));
-+ }
-+#endif // NIXPKGS_MESA_GL
- glXGetProcAddressARB = (qt_glXGetProcAddressARB) lib.resolve("glXGetProcAddressARB");
- #endif
- }
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gtkstyle.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gtkstyle.patch
deleted file mode 100644
index 755b0965cf5..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gtkstyle.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-Index: qtbase-opensource-src-5.5.1/src/widgets/styles/qgtk2painter.cpp
-===================================================================
---- qtbase-opensource-src-5.5.1.orig/src/widgets/styles/qgtk2painter.cpp
-+++ qtbase-opensource-src-5.5.1/src/widgets/styles/qgtk2painter.cpp
-@@ -96,7 +96,7 @@ static void initGtk()
- static bool initialized = false;
- if (!initialized) {
- // enforce the "0" suffix, so we'll open libgtk-x11-2.0.so.0
-- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
-+ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
-
- 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: qtbase-opensource-src-5.5.1/src/widgets/styles/qgtkstyle_p.cpp
-===================================================================
---- qtbase-opensource-src-5.5.1.orig/src/widgets/styles/qgtkstyle_p.cpp
-+++ qtbase-opensource-src-5.5.1/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
-- QLibrary libgtk(QLS("gtk-x11-2.0"), 0, 0);
-+ QLibrary libgtk(QLS("@gtk@/lib/libgtk-x11-2.0"), 0, 0);
-
- gtk_init = (Ptr_gtk_init)libgtk.resolve("gtk_init");
- gtk_window_new = (Ptr_gtk_window_new)libgtk.resolve("gtk_window_new");
-@@ -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");
-
-- gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("gnomeui-2"), 0, "gnome_icon_lookup_sync");
-- gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("gnomevfs-2"), 0, "gnome_vfs_init");
-+ gnome_icon_lookup_sync = (Ptr_gnome_icon_lookup_sync)QLibrary::resolve(QLS("@libgnomeui@/lib/libgnomeui-2"), 0, "gnome_icon_lookup_sync");
-+ gnome_vfs_init= (Ptr_gnome_vfs_init)QLibrary::resolve(QLS("@gnome_vfs@/lib/libgnomevfs-2"), 0, "gnome_vfs_init");
- }
-
- /* \internal
-@@ -594,9 +594,9 @@ void QGtkStylePrivate::cleanupGtkWidgets
- static bool resolveGConf()
- {
- if (!QGtkStylePrivate::gconf_client_get_default) {
-- QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_default");
-- QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_string");
-- QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("gconf-2"), 4, "gconf_client_get_bool");
-+ QGtkStylePrivate::gconf_client_get_default = (Ptr_gconf_client_get_default)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_default");
-+ QGtkStylePrivate::gconf_client_get_string = (Ptr_gconf_client_get_string)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_string");
-+ QGtkStylePrivate::gconf_client_get_bool = (Ptr_gconf_client_get_bool)QLibrary::resolve(QLS("@gconf@/lib/libgconf-2"), 4, "gconf_client_get_bool");
- }
- return (QGtkStylePrivate::gconf_client_get_default !=0);
- }
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-libXcursor.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-libXcursor.patch
deleted file mode 100644
index 31339abc785..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-libXcursor.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/qxcbcursor.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/plugins/platforms/xcb/qxcbcursor.cpp
-+++ qtbase-opensource-src-5.9.0/src/plugins/platforms/xcb/qxcbcursor.cpp
-@@ -311,10 +311,10 @@ QXcbCursor::QXcbCursor(QXcbConnection *c
- #if defined(XCB_USE_XLIB) && QT_CONFIG(library)
- static bool function_ptrs_not_initialized = true;
- if (function_ptrs_not_initialized) {
-- QLibrary xcursorLib(QLatin1String("Xcursor"), 1);
-+ QLibrary xcursorLib(QLatin1String(NIXPKGS_LIBXCURSOR), 1);
- bool xcursorFound = xcursorLib.load();
- if (!xcursorFound) { // try without the version number
-- xcursorLib.setFileName(QLatin1String("Xcursor"));
-+ xcursorLib.setFileName(QLatin1String(NIXPKGS_LIBXCURSOR));
- xcursorFound = xcursorLib.load();
- }
- if (xcursorFound) {
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-resolv.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-resolv.patch
deleted file mode 100644
index 598456a49ff..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-resolv.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/network/kernel/qdnslookup_unix.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/network/kernel/qdnslookup_unix.cpp
-+++ qtbase-opensource-src-5.9.0/src/network/kernel/qdnslookup_unix.cpp
-@@ -92,7 +92,7 @@ static bool resolveLibraryInternal()
- if (!lib.load())
- #endif
- {
-- lib.setFileName(QLatin1String("resolv"));
-+ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
- if (!lib.load())
- return false;
- }
-Index: qtbase-opensource-src-5.9.0/src/network/kernel/qhostinfo_unix.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/network/kernel/qhostinfo_unix.cpp
-+++ qtbase-opensource-src-5.9.0/src/network/kernel/qhostinfo_unix.cpp
-@@ -102,7 +102,7 @@ static bool resolveLibraryInternal()
- if (!lib.load())
- #endif
- {
-- lib.setFileName(QLatin1String("resolv"));
-+ lib.setFileName(QLatin1String(NIXPKGS_LIBRESOLV));
- if (!lib.load())
- return false;
- }
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/library-paths.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/library-paths.patch
deleted file mode 100644
index 4c24d73ed36..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/library-paths.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/corelib/kernel/qcoreapplication.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/corelib/kernel/qcoreapplication.cpp
-+++ qtbase-opensource-src-5.9.0/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 PATH
-+ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
-+ const QString plugindir = QStringLiteral("../" NIXPKGS_QT_PLUGIN_PREFIX);
-+ for (const QString &path: paths) {
-+ if (!path.isEmpty()) {
-+ app_libpaths->append(QDir::cleanPath(path + QDir::separator() + plugindir));
-+ }
-+ }
-+
- const QByteArray libPathEnv = qgetenv("QT_PLUGIN_PATH");
- if (!libPathEnv.isEmpty()) {
- QStringList paths = QFile::decodeName(libPathEnv).split(QDir::listSeparator(), QString::SkipEmptyParts);
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/libressl.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/libressl.patch
deleted file mode 100644
index e9c60e7ab07..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/libressl.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-From 81494e67eccba04fc3fe554d76a9ca6fe7f2250e Mon Sep 17 00:00:00 2001
-From: hasufell
-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: qtbase-opensource-src-5.8.0/src/network/ssl/qsslcontext_openssl.cpp
-===================================================================
---- qtbase-opensource-src-5.8.0.orig/src/network/ssl/qsslcontext_openssl.cpp
-+++ qtbase-opensource-src-5.8.0/src/network/ssl/qsslcontext_openssl.cpp
-@@ -351,7 +351,7 @@ init_context:
-
- const QVector 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,
-@@ -364,7 +364,7 @@ init_context:
- sslContext->errorCode = QSslError::UnspecifiedError;
- }
- } 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"));
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-common-mac.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-common-mac.patch
deleted file mode 100644
index b77f8778122..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-common-mac.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- qtbase-opensource-src-5.9.1.orig/mkspecs/common/mac.conf 2017-09-16 16:40:30.000000000 +0800
-+++ qtbase-opensource-src-5.9.1/mkspecs/common/mac.conf 2017-09-16 16:41:27.000000000 +0800
-@@ -23,7 +23,7 @@
-
- QMAKE_FIX_RPATH = install_name_tool -id
-
--QMAKE_LFLAGS_RPATH = -Wl,-rpath,
-+QMAKE_LFLAGS_RPATH =
- QMAKE_LFLAGS_GCSECTIONS = -Wl,-dead_strip
-
- QMAKE_LFLAGS_REL_RPATH =
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-features-mac.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-features-mac.patch
deleted file mode 100644
index 46d950a767b..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-features-mac.patch
+++ /dev/null
@@ -1,292 +0,0 @@
-diff -u -r qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/default_post.prf qtbase-opensource-src-5.9.2/mkspecs/features/mac/default_post.prf
---- qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/default_post.prf 2017-10-14 12:31:04.000000000 +0800
-+++ qtbase-opensource-src-5.9.2/mkspecs/features/mac/default_post.prf 2017-10-14 12:42:02.000000000 +0800
-@@ -24,166 +24,3 @@
- }
- }
- }
--
--# Add the same default rpaths as Xcode does for new projects.
--# This is especially important for iOS/tvOS/watchOS where no other option is possible.
--!no_default_rpath {
-- QMAKE_RPATHDIR += @executable_path/Frameworks
-- equals(TEMPLATE, lib):!plugin:lib_bundle: QMAKE_RPATHDIR += @loader_path/Frameworks
--}
--
--# Don't pass -headerpad_max_install_names when using Bitcode.
--# In that case the linker emits a warning stating that the flag is ignored when
--# used with bitcode, for reasons that cannot be determined (rdar://problem/20748962).
--# Using this flag is also unnecessary in practice on UIKit platforms since they
--# are sandboxed, and only UIKit platforms support bitcode to begin with.
--!bitcode: QMAKE_LFLAGS += $$QMAKE_LFLAGS_HEADERPAD
--
--app_extension_api_only {
-- QMAKE_CFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
-- QMAKE_CXXFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
-- QMAKE_CXXFLAGS_PRECOMPILE += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
-- QMAKE_LFLAGS += $$QMAKE_CFLAGS_APPLICATION_EXTENSION
--}
--
--macx-xcode {
-- !isEmpty(QMAKE_XCODE_DEBUG_INFORMATION_FORMAT) {
-- debug_information_format.name = DEBUG_INFORMATION_FORMAT
-- debug_information_format.value = $$QMAKE_XCODE_DEBUG_INFORMATION_FORMAT
-- debug_information_format.build = debug
-- QMAKE_MAC_XCODE_SETTINGS += debug_information_format
-- }
--
-- QMAKE_XCODE_ARCHS =
--
-- arch_device.name = "ARCHS[sdk=$${device.sdk}*]"
-- arch_device.value = $$QMAKE_APPLE_DEVICE_ARCHS
-- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_DEVICE_ARCHS
-- QMAKE_MAC_XCODE_SETTINGS += arch_device
--
-- simulator {
-- arch_simulator.name = "ARCHS[sdk=$${simulator.sdk}*]"
-- arch_simulator.value = $$QMAKE_APPLE_SIMULATOR_ARCHS
-- QMAKE_XCODE_ARCHS += $$QMAKE_APPLE_SIMULATOR_ARCHS
-- QMAKE_MAC_XCODE_SETTINGS += arch_simulator
-- }
--
-- only_active_arch.name = ONLY_ACTIVE_ARCH
-- only_active_arch.value = YES
-- only_active_arch.build = debug
-- QMAKE_MAC_XCODE_SETTINGS += only_active_arch
--} else {
-- device|!simulator: VALID_DEVICE_ARCHS = $$QMAKE_APPLE_DEVICE_ARCHS
-- simulator: VALID_SIMULATOR_ARCHS = $$QMAKE_APPLE_SIMULATOR_ARCHS
-- VALID_ARCHS = $$VALID_DEVICE_ARCHS $$VALID_SIMULATOR_ARCHS
--
-- isEmpty(VALID_ARCHS): \
-- error("QMAKE_APPLE_DEVICE_ARCHS or QMAKE_APPLE_SIMULATOR_ARCHS must contain at least one architecture")
--
-- single_arch: VALID_ARCHS = $$first(VALID_ARCHS)
--
-- ACTIVE_ARCHS = $(filter $(EXPORT_VALID_ARCHS), $(ARCHS))
-- ARCH_ARGS = $(foreach arch, $(if $(EXPORT_ACTIVE_ARCHS), $(EXPORT_ACTIVE_ARCHS), $(EXPORT_VALID_ARCHS)), -arch $(arch))
--
-- QMAKE_EXTRA_VARIABLES += VALID_ARCHS ACTIVE_ARCHS ARCH_ARGS
--
-- arch_flags = $(EXPORT_ARCH_ARGS)
--
-- QMAKE_CFLAGS += $$arch_flags
-- QMAKE_CXXFLAGS += $$arch_flags
-- QMAKE_LFLAGS += $$arch_flags
--
-- QMAKE_PCH_ARCHS = $$VALID_ARCHS
--
-- macos: deployment_target = $$QMAKE_MACOSX_DEPLOYMENT_TARGET
-- ios: deployment_target = $$QMAKE_IOS_DEPLOYMENT_TARGET
-- tvos: deployment_target = $$QMAKE_TVOS_DEPLOYMENT_TARGET
-- watchos: deployment_target = $$QMAKE_WATCHOS_DEPLOYMENT_TARGET
--
-- # If we're doing a simulator and device build, device and simulator
-- # architectures use different paths and flags for the sysroot and
-- # deployment target switch, so we must multiplex them across multiple
-- # architectures using -Xarch. Otherwise we fall back to the simple path.
-- # This is not strictly necessary, but results in cleaner command lines
-- # and makes it easier for people to override EXPORT_VALID_ARCHS to limit
-- # individual rules to a different set of architecture(s) from the overall
-- # build (such as machtest in QtCore).
-- simulator:device {
-- QMAKE_XARCH_CFLAGS =
-- QMAKE_XARCH_LFLAGS =
-- QMAKE_EXTRA_VARIABLES += QMAKE_XARCH_CFLAGS QMAKE_XARCH_LFLAGS
--
-- for (arch, VALID_ARCHS) {
-- contains(VALID_SIMULATOR_ARCHS, $$arch) {
-- sdk = $$simulator.sdk
-- version_identifier = $$simulator.deployment_identifier
-- } else {
-- sdk = $$device.sdk
-- version_identifier = $$device.deployment_identifier
-- }
--
-- version_min_flags = \
-- -Xarch_$${arch} \
-- -m$${version_identifier}-version-min=$$deployment_target
-- QMAKE_XARCH_CFLAGS_$${arch} = $$version_min_flags \
-- -Xarch_$${arch} \
-- -isysroot$$xcodeSDKInfo(Path, $$sdk)
-- QMAKE_XARCH_LFLAGS_$${arch} = $$version_min_flags \
-- -Xarch_$${arch} \
-- -Wl,-syslibroot,$$xcodeSDKInfo(Path, $$sdk)
--
-- QMAKE_XARCH_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS_$${arch})
-- QMAKE_XARCH_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS_$${arch})
--
-- QMAKE_EXTRA_VARIABLES += \
-- QMAKE_XARCH_CFLAGS_$${arch} \
-- QMAKE_XARCH_LFLAGS_$${arch}
-- }
--
-- QMAKE_CFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS)
-- QMAKE_CXXFLAGS += $(EXPORT_QMAKE_XARCH_CFLAGS)
-- QMAKE_LFLAGS += $(EXPORT_QMAKE_XARCH_LFLAGS)
-- } else {
-- simulator: \
-- version_identifier = $$simulator.deployment_identifier
-- else: \
-- version_identifier = $$device.deployment_identifier
-- version_min_flag = -m$${version_identifier}-version-min=$$deployment_target
-- QMAKE_CFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag
-- QMAKE_CXXFLAGS += -isysroot $$QMAKE_MAC_SDK_PATH $$version_min_flag
-- QMAKE_LFLAGS += -Wl,-syslibroot,$$QMAKE_MAC_SDK_PATH $$version_min_flag
-- }
--
-- # Enable precompiled headers for multiple architectures
-- QMAKE_CFLAGS_USE_PRECOMPILE =
-- for (arch, VALID_ARCHS) {
-- icc_pch_style: \
-- use_flag = "-pch-use "
-- else: \
-- use_flag = -include
--
-- # Only use Xarch with multi-arch, as the option confuses ccache
-- count(VALID_ARCHS, 1, greaterThan): \
-- QMAKE_CFLAGS_USE_PRECOMPILE += \
-- -Xarch_$${arch}
--
-- QMAKE_CFLAGS_USE_PRECOMPILE += \
-- $${use_flag}${QMAKE_PCH_OUTPUT_$${arch}}
-- }
-- icc_pch_style {
-- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE -include ${QMAKE_PCH_INPUT}
-- QMAKE_CFLAGS_USE_PRECOMPILE =
-- } else {
-- QMAKE_CXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-- QMAKE_OBJCFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-- QMAKE_OBJCXXFLAGS_USE_PRECOMPILE = $$QMAKE_CFLAGS_USE_PRECOMPILE
-- }
--
-- QMAKE_PCH_OUTPUT_EXT = _${QMAKE_PCH_ARCH}$${QMAKE_PCH_OUTPUT_EXT}
--}
--
--cache(QMAKE_XCODE_DEVELOPER_PATH, stash)
--!isEmpty(QMAKE_XCODE_VERSION): \
-- cache(QMAKE_XCODE_VERSION, stash)
--
--QMAKE_XCODE_LIBRARY_SUFFIX = $$qtPlatformTargetSuffix()
-diff -u -r qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/default_pre.prf qtbase-opensource-src-5.9.2/mkspecs/features/mac/default_pre.prf
---- qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/default_pre.prf 2017-10-14 12:31:04.000000000 +0800
-+++ qtbase-opensource-src-5.9.2/mkspecs/features/mac/default_pre.prf 2017-10-14 12:42:02.000000000 +0800
-@@ -1,56 +1,2 @@
- CONFIG = asset_catalogs rez $$CONFIG
- load(default_pre)
--
--isEmpty(QMAKE_XCODE_DEVELOPER_PATH) {
-- # Get path of Xcode's Developer directory
-- QMAKE_XCODE_DEVELOPER_PATH = $$system("/usr/bin/xcode-select --print-path 2>/dev/null")
-- isEmpty(QMAKE_XCODE_DEVELOPER_PATH): \
-- error("Xcode path is not set. Please use xcode-select to choose Xcode installation path.")
--
-- # Make sure Xcode path is valid
-- !exists($$QMAKE_XCODE_DEVELOPER_PATH): \
-- error("Xcode is not installed in $${QMAKE_XCODE_DEVELOPER_PATH}. Please use xcode-select to choose Xcode installation path.")
--}
--
--isEmpty(QMAKE_XCODEBUILD_PATH): \
-- QMAKE_XCODEBUILD_PATH = $$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null")
--
--!isEmpty(QMAKE_XCODEBUILD_PATH) {
-- # Make sure Xcode is set up properly
-- !system("/usr/bin/xcrun xcodebuild -license check 2>/dev/null"): \
-- error("Xcode not set up properly. You need to confirm the license agreement by running 'sudo xcrun xcodebuild -license accept'.")
--
-- isEmpty(QMAKE_XCODE_VERSION) {
-- # Extract Xcode version using xcodebuild
-- xcode_version = $$system("/usr/bin/xcrun xcodebuild -version")
-- QMAKE_XCODE_VERSION = $$member(xcode_version, 1)
-- isEmpty(QMAKE_XCODE_VERSION): error("Could not resolve Xcode version.")
-- unset(xcode_version)
-- }
--}
--
--isEmpty(QMAKE_TARGET_BUNDLE_PREFIX) {
-- QMAKE_XCODE_PREFERENCES_FILE = $$(HOME)/Library/Preferences/com.apple.dt.Xcode.plist
-- exists($$QMAKE_XCODE_PREFERENCES_FILE): \
-- QMAKE_TARGET_BUNDLE_PREFIX = $$system("/usr/libexec/PlistBuddy -c 'print IDETemplateOptions:bundleIdentifierPrefix' $$QMAKE_XCODE_PREFERENCES_FILE 2>/dev/null")
--
-- !isEmpty(_QMAKE_CACHE_):!isEmpty(QMAKE_TARGET_BUNDLE_PREFIX): \
-- cache(QMAKE_TARGET_BUNDLE_PREFIX)
--}
--
--QMAKE_ASSET_CATALOGS_APP_ICON = AppIcon
--
--# Make the default debug info format for static debug builds
--# DWARF instead of DWARF with dSYM. This cuts down build times
--# for application debug builds significantly, as Xcode doesn't
--# have to pull out all the DWARF info from the Qt static libs
--# and put it into a dSYM file. We don't need that dSYM file in
--# the first place, since the information is available in the
--# object files inside the archives (static libraries).
--macx-xcode:qtConfig(static): \
-- QMAKE_XCODE_DEBUG_INFORMATION_FORMAT = dwarf
--
--# This variable is used by the xcode_dynamic_library_suffix
--# feature, which allows Xcode to choose the Qt libraries to link to
--# at build time, depending on the current Xcode SDK and configuration.
--QMAKE_XCODE_LIBRARY_SUFFIX_SETTING = QT_LIBRARY_SUFFIX
-diff -u -r qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/sdk.prf qtbase-opensource-src-5.9.2/mkspecs/features/mac/sdk.prf
---- qtbase-opensource-src-5.9.2.orig/mkspecs/features/mac/sdk.prf 2017-10-14 12:31:04.000000000 +0800
-+++ qtbase-opensource-src-5.9.2/mkspecs/features/mac/sdk.prf 2017-10-14 12:42:10.000000000 +0800
-@@ -1,58 +0,0 @@
--
--isEmpty(QMAKE_MAC_SDK): \
-- error("QMAKE_MAC_SDK must be set when using CONFIG += sdk.")
--
--contains(QMAKE_MAC_SDK, .*/.*): \
-- error("QMAKE_MAC_SDK can only contain short-form SDK names (eg. macosx, iphoneos)")
--
--defineReplace(xcodeSDKInfo) {
-- info = $$1
-- equals(info, "Path"): \
-- info = --show-sdk-path
-- equals(info, "PlatformPath"): \
-- info = --show-sdk-platform-path
-- equals(info, "SDKVersion"): \
-- info = --show-sdk-version
-- sdk = $$2
-- isEmpty(sdk): \
-- sdk = $$QMAKE_MAC_SDK
--
-- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}) {
-- QMAKE_MAC_SDK.$${sdk}.$${info} = $$system("/usr/bin/xcrun --sdk $$sdk $$info 2>/dev/null")
-- # --show-sdk-platform-path won't work for Command Line Tools; this is fine
-- # only used by the XCTest backend to testlib
-- isEmpty(QMAKE_MAC_SDK.$${sdk}.$${info}):if(!isEmpty(QMAKE_XCODEBUILD_PATH)|!equals(info, "--show-sdk-platform-path")): \
-- error("Could not resolve SDK $$info for \'$$sdk\'")
-- cache(QMAKE_MAC_SDK.$${sdk}.$${info}, set stash, QMAKE_MAC_SDK.$${sdk}.$${info})
-- }
--
-- return($$eval(QMAKE_MAC_SDK.$${sdk}.$${info}))
--}
--
--QMAKE_MAC_SDK_PATH = $$xcodeSDKInfo(Path)
--QMAKE_MAC_SDK_PLATFORM_PATH = $$xcodeSDKInfo(PlatformPath)
--QMAKE_MAC_SDK_VERSION = $$xcodeSDKInfo(SDKVersion)
--
--sysrootified =
--for(val, QMAKE_INCDIR_OPENGL): sysrootified += $${QMAKE_MAC_SDK_PATH}$$val
--QMAKE_INCDIR_OPENGL = $$sysrootified
--
--QMAKESPEC_NAME = $$basename(QMAKESPEC)
--
--# Resolve SDK version of various tools
--for(tool, $$list(QMAKE_CC QMAKE_CXX QMAKE_FIX_RPATH QMAKE_AR QMAKE_RANLIB QMAKE_LINK QMAKE_LINK_SHLIB QMAKE_ACTOOL)) {
-- tool_variable = QMAKE_MAC_SDK.$${QMAKESPEC_NAME}.$${QMAKE_MAC_SDK}.$${tool}
-- !isEmpty($$tool_variable) {
-- $$tool = $$eval($$tool_variable)
-- next()
-- }
--
-- value = $$eval($$tool)
-- isEmpty(value): next()
--
-- sysrooted = $$system("/usr/bin/xcrun -sdk $$QMAKE_MAC_SDK -find $$first(value) 2>/dev/null")
-- isEmpty(sysrooted): next()
--
-- $$tool = $$sysrooted $$member(value, 1, -1)
-- cache($$tool_variable, set stash, $$tool)
--}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/qgtk-env.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/qgtk-env.patch
deleted file mode 100644
index 8e5e2c71828..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/qgtk-env.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Index: qtbase-opensource-src-5.8.0/src/plugins/platformthemes/gtk3/main.cpp
-===================================================================
---- qtbase-opensource-src-5.8.0.orig/src/plugins/platformthemes/gtk3/main.cpp
-+++ qtbase-opensource-src-5.8.0/src/plugins/platformthemes/gtk3/main.cpp
-@@ -39,6 +39,7 @@
-
- #include
- #include "qgtk3theme.h"
-+#include
-
- QT_BEGIN_NAMESPACE
-
-@@ -54,8 +55,22 @@ public:
- QPlatformTheme *QGtk3ThemePlugin::create(const QString &key, const QStringList ¶ms)
- {
- Q_UNUSED(params);
-- if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive))
-+ if (!key.compare(QLatin1String(QGtk3Theme::name), Qt::CaseInsensitive)) {
-+
-+#ifdef NIXPKGS_QGTK3_XDG_DATA_DIRS
-+ QStringList XDG_DATA_DIRS = QFile::decodeName(qgetenv("XDG_DATA_DIRS")).split(':');
-+ XDG_DATA_DIRS << QLatin1String(NIXPKGS_QGTK3_XDG_DATA_DIRS);
-+ qputenv("XDG_DATA_DIRS", QFile::encodeName(XDG_DATA_DIRS.join(':')));
-+#endif
-+
-+#ifdef NIXPKGS_QGTK3_GIO_EXTRA_MODULES
-+ QStringList GIO_EXTRA_MODULES = QFile::decodeName(qgetenv("GIO_EXTRA_MODULES")).split(':');
-+ GIO_EXTRA_MODULES << QLatin1String(NIXPKGS_QGTK3_GIO_EXTRA_MODULES);
-+ qputenv("GIO_EXTRA_MODULES", QFile::encodeName(GIO_EXTRA_MODULES.join(':')));
-+#endif
-+
- return new QGtk3Theme;
-+ }
-
- return 0;
- }
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/qnativesocketengine-type-pun.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/qnativesocketengine-type-pun.patch
deleted file mode 100644
index ad40dfab2f7..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/qnativesocketengine-type-pun.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-Index: qtbase-opensource-src-5.8.0/src/network/socket/qnativesocketengine_unix.cpp
-===================================================================
---- qtbase-opensource-src-5.8.0.orig/src/network/socket/qnativesocketengine_unix.cpp
-+++ qtbase-opensource-src-5.8.0/src/network/socket/qnativesocketengine_unix.cpp
-@@ -979,7 +979,8 @@ qint64 QNativeSocketEnginePrivate::nativ
- if (cmsgptr->cmsg_len == CMSG_LEN(sizeof(int))
- && ((cmsgptr->cmsg_level == IPPROTO_IPV6 && cmsgptr->cmsg_type == IPV6_HOPLIMIT)
- || (cmsgptr->cmsg_level == IPPROTO_IP && cmsgptr->cmsg_type == IP_TTL))) {
-- header->hopLimit = *reinterpret_cast(CMSG_DATA(cmsgptr));
-+ int *ttl = reinterpret_cast(CMSG_DATA(cmsgptr));
-+ header->hopLimit = *ttl;
- }
-
- #ifndef QT_NO_SCTP
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/series b/pkgs/development/libraries/qt-5/5.9/qtbase/series
deleted file mode 100644
index 4f354e87c84..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/series
+++ /dev/null
@@ -1,9 +0,0 @@
-dlopen-resolv.patch
-tzdir.patch
-dlopen-libXcursor.patch
-library-paths.patch
-libressl.patch
-dlopen-gl.patch
-compose-search-path.patch
-cmake-paths.patch
-qgtk-env.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/tzdir.patch b/pkgs/development/libraries/qt-5/5.9/qtbase/tzdir.patch
deleted file mode 100644
index d57f24c3ed0..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/tzdir.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-Index: qtbase-opensource-src-5.9.0/src/corelib/tools/qtimezoneprivate_tz.cpp
-===================================================================
---- qtbase-opensource-src-5.9.0.orig/src/corelib/tools/qtimezoneprivate_tz.cpp
-+++ qtbase-opensource-src-5.9.0/src/corelib/tools/qtimezoneprivate_tz.cpp
-@@ -70,7 +70,11 @@ typedef QHash Q
- // Parse zone.tab table, assume lists all installed zones, if not will need to read directories
- static QTzTimeZoneHash loadTzTimeZones()
- {
-- QString path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
-+ // Try TZDIR first, in case we're running on NixOS.
-+ QString path = QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/zone.tab");
-+ // Fallback to traditional paths in case we are not on NixOS.
-+ if (!QFile::exists(path))
-+ path = QStringLiteral("/usr/share/zoneinfo/zone.tab");
- if (!QFile::exists(path))
- path = QStringLiteral("/usr/lib/zoneinfo/zone.tab");
-
-@@ -643,12 +647,16 @@ void QTzTimeZonePrivate::init(const QByt
- if (!tzif.open(QIODevice::ReadOnly))
- return;
- } else {
-- // Open named tz, try modern path first, if fails try legacy path
-- tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
-+ // Try TZDIR first, in case we're running on NixOS
-+ tzif.setFileName(QFile::decodeName(qgetenv("TZDIR")) + QStringLiteral("/") + QString::fromLocal8Bit(ianaId));
- if (!tzif.open(QIODevice::ReadOnly)) {
-- tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
-- if (!tzif.open(QIODevice::ReadOnly))
-- return;
-+ // Open named tz, try modern path first, if fails try legacy path
-+ tzif.setFileName(QLatin1String("/usr/share/zoneinfo/") + QString::fromLocal8Bit(ianaId));
-+ if (!tzif.open(QIODevice::ReadOnly)) {
-+ tzif.setFileName(QLatin1String("/usr/lib/zoneinfo/") + QString::fromLocal8Bit(ianaId));
-+ if (!tzif.open(QIODevice::ReadOnly))
-+ return;
-+ }
- }
- }
-
diff --git a/pkgs/development/libraries/qt-5/5.9/qtcharts.nix b/pkgs/development/libraries/qt-5/5.9/qtcharts.nix
deleted file mode 100644
index afc09e3eeb5..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtcharts.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ qtSubmodule, qtbase, qtdeclarative }:
-
-qtSubmodule {
- name = "qtcharts";
- qtInputs = [ qtbase qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtconnectivity.nix b/pkgs/development/libraries/qt-5/5.9/qtconnectivity.nix
deleted file mode 100644
index 8153f0d4078..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtconnectivity.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ qtSubmodule, qtbase, qtdeclarative }:
-
-qtSubmodule {
- name = "qtconnectivity";
- qtInputs = [ qtbase qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtdeclarative.patch b/pkgs/development/libraries/qt-5/5.9/qtdeclarative.patch
new file mode 100644
index 00000000000..bb1bbbeb05e
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtdeclarative.patch
@@ -0,0 +1,33 @@
+diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp
+index ee5b38717..bbccef8c4 100644
+--- a/src/qml/qml/qqmlimport.cpp
++++ b/src/qml/qml/qqmlimport.cpp
+@@ -1678,6 +1678,15 @@ QQmlImportDatabase::QQmlImportDatabase(QQmlEngine *e)
+ QString installImportsPath = QLibraryInfo::location(QLibraryInfo::Qml2ImportsPath);
+ addImportPath(installImportsPath);
+
++ // Add import paths derived from PATH
++ const QStringList paths = QFile::decodeName(qgetenv("PATH")).split(':');
++ const QString qmldir = QStringLiteral("../" NIXPKGS_QML2_IMPORT_PREFIX);
++ for (const QString &path: paths) {
++ if (!path.isEmpty()) {
++ addImportPath(QDir::cleanPath(path + QDir::separator() + qmldir));
++ }
++ }
++
+ // env import paths
+ if (Q_UNLIKELY(!qEnvironmentVariableIsEmpty("QML2_IMPORT_PATH"))) {
+ const QByteArray envImportPath = qgetenv("QML2_IMPORT_PATH");
+diff --git a/tools/qmlcachegen/qmlcache.prf b/tools/qmlcachegen/qmlcache.prf
+index 330da358b..cdf570205 100644
+--- a/tools/qmlcachegen/qmlcache.prf
++++ b/tools/qmlcachegen/qmlcache.prf
+@@ -44,7 +44,7 @@ defineReplace(qmlCacheOutputFileName) {
+ }
+
+ qmlcacheinst.base = $$QMLCACHE_DESTDIR
+-qmlcacheinst.path = $$[QT_INSTALL_QML]/$$TARGETPATH
++qmlcacheinst.path = $$NIX_OUTPUT_QML/$$TARGETPATH
+ qmlcacheinst.CONFIG = no_check_exist
+
+ qmlcachegen.input = CACHEGEN_FILES
diff --git a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/default.nix b/pkgs/development/libraries/qt-5/5.9/qtdeclarative/default.nix
deleted file mode 100644
index 39b4d35ef36..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, qtSubmodule, copyPathsToStore, python2, qtbase, qtsvg, qtxmlpatterns }:
-
-with stdenv.lib;
-
-qtSubmodule {
- name = "qtdeclarative";
- patches = copyPathsToStore (readPathsFromFile ./. ./series);
- qtInputs = [ qtbase qtsvg qtxmlpatterns ];
- nativeBuildInputs = [ python2 ];
- outputs = [ "bin" "dev" "out" ];
-
- preConfigure = ''
- NIX_CFLAGS_COMPILE+=" -DNIXPKGS_QML2_IMPORT_PREFIX=\"$qtQmlPrefix\""
- '';
-
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/series b/pkgs/development/libraries/qt-5/5.9/qtdeclarative/series
deleted file mode 100644
index 38abb916a50..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtdeclarative/series
+++ /dev/null
@@ -1 +0,0 @@
-import-paths.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtlocation.nix b/pkgs/development/libraries/qt-5/5.9/qtlocation.nix
deleted file mode 100644
index f883fd4ff40..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtlocation.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ qtSubmodule, qtbase, qtmultimedia }:
-
-qtSubmodule {
- name = "qtlocation";
- qtInputs = [ qtbase qtmultimedia ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
- # Linking with -lclipper fails with parallel build enabled
- enableParallelBuilding = false;
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtquickcontrols2.nix b/pkgs/development/libraries/qt-5/5.9/qtquickcontrols2.nix
deleted file mode 100644
index 37d7d59f815..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtquickcontrols2.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ qtSubmodule, qtdeclarative }:
-
-qtSubmodule {
- name = "qtquickcontrols2";
- qtInputs = [ qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtscript.patch b/pkgs/development/libraries/qt-5/5.9/qtscript.patch
new file mode 100644
index 00000000000..5508dec1280
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtscript.patch
@@ -0,0 +1,13 @@
+diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+index 1f6d25e..087c3fb 100644
+--- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
++++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/Threading.h
+@@ -81,7 +81,7 @@
+ #include
+ #elif PLATFORM(GTK)
+ #include
+-typedef struct _GMutex GMutex;
++typedef union _GMutex GMutex;
+ typedef struct _GCond GCond;
+ #endif
+
diff --git a/pkgs/development/libraries/qt-5/5.9/qtscript/default.nix b/pkgs/development/libraries/qt-5/5.9/qtscript/default.nix
deleted file mode 100644
index 127766e2ebd..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtscript/default.nix
+++ /dev/null
@@ -1,7 +0,0 @@
-{ qtSubmodule, qtbase, qttools }:
-
-qtSubmodule {
- name = "qtscript";
- qtInputs = [ qtbase qttools ];
- patches = [ ./0001-glib-2.32.patch ];
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtsensors.nix b/pkgs/development/libraries/qt-5/5.9/qtsensors.nix
deleted file mode 100644
index 4127d00b769..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtsensors.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ stdenv, qtSubmodule, qtbase, qtdeclarative }:
-
-with stdenv.lib;
-
-qtSubmodule {
- name = "qtsensors";
- qtInputs = [ qtbase qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtserialport.patch b/pkgs/development/libraries/qt-5/5.9/qtserialport.patch
new file mode 100644
index 00000000000..f25524e80bc
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtserialport.patch
@@ -0,0 +1,22 @@
+diff --git a/src/serialport/qtudev_p.h b/src/serialport/qtudev_p.h
+index af2dab2..8e17f64 100644
+--- a/src/serialport/qtudev_p.h
++++ b/src/serialport/qtudev_p.h
+@@ -111,9 +111,17 @@ inline QFunctionPointer resolveSymbol(QLibrary *udevLibrary, const char *symbolN
+ inline bool resolveSymbols(QLibrary *udevLibrary)
+ {
+ if (!udevLibrary->isLoaded()) {
++#ifdef NIXPKGS_LIBUDEV
++ udevLibrary->setFileNameAndVersion(QLatin1String(NIXPKGS_LIBUDEV), 1);
++#else
+ udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 1);
++#endif
+ if (!udevLibrary->load()) {
++#ifdef NIXPKGS_LIBUDEV
++ udevLibrary->setFileNameAndVersion(QLatin1String(NIXPKGS_LIBUDEV), 0);
++#else
+ udevLibrary->setFileNameAndVersion(QStringLiteral("udev"), 0);
++#endif
+ if (!udevLibrary->load()) {
+ qWarning("Failed to load the library: %s, supported version(s): %i and %i", qPrintable(udevLibrary->fileName()), 1, 0);
+ return false;
diff --git a/pkgs/development/libraries/qt-5/5.9/qtserialport/series b/pkgs/development/libraries/qt-5/5.9/qtserialport/series
deleted file mode 100644
index 83f4abf094e..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtserialport/series
+++ /dev/null
@@ -1 +0,0 @@
-qtserialport-dlopen-udev.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtsvg.nix b/pkgs/development/libraries/qt-5/5.9/qtsvg.nix
deleted file mode 100644
index ce419731dfa..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtsvg.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ qtSubmodule, qtbase }:
-
-qtSubmodule {
- name = "qtsvg";
- qtInputs = [ qtbase ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qttools.patch b/pkgs/development/libraries/qt-5/5.9/qttools.patch
new file mode 100644
index 00000000000..fbba439ef7a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qttools.patch
@@ -0,0 +1,71 @@
+diff --git a/src/assistant/help/Qt5HelpConfigExtras.cmake.in b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
+index 3b97923a..63336bd5 100644
+--- a/src/assistant/help/Qt5HelpConfigExtras.cmake.in
++++ b/src/assistant/help/Qt5HelpConfigExtras.cmake.in
+@@ -2,11 +2,10 @@
+ if (NOT TARGET Qt5::qcollectiongenerator)
+ add_executable(Qt5::qcollectiongenerator IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
++ if(NOT EXISTS \"${imported_location}\")
++ set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
++ endif()
+ _qt5_Help_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qcollectiongenerator PROPERTIES
+@@ -17,11 +16,7 @@ endif()
+ if (NOT TARGET Qt5::qhelpgenerator)
+ add_executable(Qt5::qhelpgenerator IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_Help_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::qhelpgenerator PROPERTIES
+diff --git a/src/linguist/Qt5LinguistToolsConfig.cmake.in b/src/linguist/Qt5LinguistToolsConfig.cmake.in
+index 4318b16f..d60db4ff 100644
+--- a/src/linguist/Qt5LinguistToolsConfig.cmake.in
++++ b/src/linguist/Qt5LinguistToolsConfig.cmake.in
+@@ -44,11 +44,7 @@ endmacro()
+ if (NOT TARGET Qt5::lrelease)
+ add_executable(Qt5::lrelease IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lrelease PROPERTIES
+@@ -59,11 +55,7 @@ endif()
+ if (NOT TARGET Qt5::lupdate)
+ add_executable(Qt5::lupdate IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lupdate PROPERTIES
+@@ -74,11 +66,7 @@ endif()
+ if (NOT TARGET Qt5::lconvert)
+ add_executable(Qt5::lconvert IMPORTED)
+
+-!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
+- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
+-!!ELSE
+ set(imported_location \"$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
+-!!ENDIF
+ _qt5_LinguistTools_check_file_exists(${imported_location})
+
+ set_target_properties(Qt5::lconvert PROPERTIES
diff --git a/pkgs/development/libraries/qt-5/5.9/qttools/cmake-paths.patch b/pkgs/development/libraries/qt-5/5.9/qttools/cmake-paths.patch
deleted file mode 100644
index dfcba9045a7..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qttools/cmake-paths.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-Index: qttools-opensource-src-5.8.0/src/assistant/help/Qt5HelpConfigExtras.cmake.in
-===================================================================
---- qttools-opensource-src-5.8.0.orig/src/assistant/help/Qt5HelpConfigExtras.cmake.in
-+++ qttools-opensource-src-5.8.0/src/assistant/help/Qt5HelpConfigExtras.cmake.in
-@@ -2,11 +2,10 @@
- if (NOT TARGET Qt5::qcollectiongenerator)
- add_executable(Qt5::qcollectiongenerator IMPORTED)
-
--!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
--!!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
--!!ENDIF
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qcollectiongenerator$$CMAKE_BIN_SUFFIX\")
-+ endif()
- _qt5_Help_check_file_exists(${imported_location})
-
- set_target_properties(Qt5::qcollectiongenerator PROPERTIES
-@@ -17,11 +16,10 @@ endif()
- if (NOT TARGET Qt5::qhelpgenerator)
- add_executable(Qt5::qhelpgenerator IMPORTED)
-
--!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5Help_install_prefix}/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
--!!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
--!!ENDIF
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}qhelpgenerator$$CMAKE_BIN_SUFFIX\")
-+ endif()
- _qt5_Help_check_file_exists(${imported_location})
-
- set_target_properties(Qt5::qhelpgenerator PROPERTIES
-Index: qttools-opensource-src-5.8.0/src/linguist/Qt5LinguistToolsConfig.cmake.in
-===================================================================
---- qttools-opensource-src-5.8.0.orig/src/linguist/Qt5LinguistToolsConfig.cmake.in
-+++ qttools-opensource-src-5.8.0/src/linguist/Qt5LinguistToolsConfig.cmake.in
-@@ -44,11 +44,10 @@ endmacro()
- if (NOT TARGET Qt5::lrelease)
- add_executable(Qt5::lrelease IMPORTED)
-
--!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
--!!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
--!!ENDIF
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}lrelease$$CMAKE_BIN_SUFFIX\")
-+ endif()
- _qt5_LinguistTools_check_file_exists(${imported_location})
-
- set_target_properties(Qt5::lrelease PROPERTIES
-@@ -59,11 +58,10 @@ endif()
- if (NOT TARGET Qt5::lupdate)
- add_executable(Qt5::lupdate IMPORTED)
-
--!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
--!!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
--!!ENDIF
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}lupdate$$CMAKE_BIN_SUFFIX\")
-+ endif()
- _qt5_LinguistTools_check_file_exists(${imported_location})
-
- set_target_properties(Qt5::lupdate PROPERTIES
-@@ -74,11 +72,10 @@ endif()
- if (NOT TARGET Qt5::lconvert)
- add_executable(Qt5::lconvert IMPORTED)
-
--!!IF isEmpty(CMAKE_BIN_DIR_IS_ABSOLUTE)
-- set(imported_location \"${_qt5_linguisttools_install_prefix}/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
--!!ELSE
-- set(imported_location \"$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
--!!ENDIF
-+ set(imported_location \"@NIX_OUT@/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
-+ if(NOT EXISTS \"${imported_location}\")
-+ set(imported_location \"@NIX_DEV@/$${CMAKE_BIN_DIR}lconvert$$CMAKE_BIN_SUFFIX\")
-+ endif()
- _qt5_LinguistTools_check_file_exists(${imported_location})
-
- set_target_properties(Qt5::lconvert PROPERTIES
diff --git a/pkgs/development/libraries/qt-5/5.9/qttools/default.nix b/pkgs/development/libraries/qt-5/5.9/qttools/default.nix
deleted file mode 100644
index 38d8f1ebe64..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qttools/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, qtSubmodule, copyPathsToStore, qtbase }:
-
-with stdenv.lib;
-
-qtSubmodule {
- name = "qttools";
- qtInputs = [ qtbase ];
- outputs = [ "bin" "dev" "out" ];
- patches = copyPathsToStore (readPathsFromFile ./. ./series);
- # qmake moves all binaries to $dev in preFixup
- postFixup = ''
- moveToOutput "bin/qdbus" "$bin"
- moveToOutput "bin/qdbusviewer" "$bin"
- moveToOutput "bin/qtpaths" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qttools/series b/pkgs/development/libraries/qt-5/5.9/qttools/series
deleted file mode 100644
index 6cc1d3b87bc..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qttools/series
+++ /dev/null
@@ -1 +0,0 @@
-cmake-paths.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwayland.nix b/pkgs/development/libraries/qt-5/5.9/qtwayland.nix
deleted file mode 100644
index 8b3072c5534..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwayland.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ qtSubmodule, qtbase, qtquickcontrols, wayland, pkgconfig }:
-
-qtSubmodule {
- name = "qtwayland";
- qtInputs = [ qtbase qtquickcontrols ];
- buildInputs = [ wayland ];
- nativeBuildInputs = [ pkgconfig ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebchannel.nix b/pkgs/development/libraries/qt-5/5.9/qtwebchannel.nix
deleted file mode 100644
index e6a2d74e714..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwebchannel.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ qtSubmodule, qtbase, qtdeclarative }:
-
-qtSubmodule {
- name = "qtwebchannel";
- qtInputs = [ qtbase qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
-
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine/qtwebengine-paxmark-mksnapshot.patch b/pkgs/development/libraries/qt-5/5.9/qtwebengine-paxmark-mksnapshot.patch
similarity index 100%
rename from pkgs/development/libraries/qt-5/5.9/qtwebengine/qtwebengine-paxmark-mksnapshot.patch
rename to pkgs/development/libraries/qt-5/5.9/qtwebengine-paxmark-mksnapshot.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit.patch b/pkgs/development/libraries/qt-5/5.9/qtwebkit.patch
new file mode 100644
index 00000000000..c78cb58f564
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebkit.patch
@@ -0,0 +1,77 @@
+diff --git a/Source/WTF/WTF.pri b/Source/WTF/WTF.pri
+index 69e4cd1f3..3f729a75e 100644
+--- a/Source/WTF/WTF.pri
++++ b/Source/WTF/WTF.pri
+@@ -12,7 +12,7 @@ mac {
+ # Mac OS does ship libicu but not the associated header files.
+ # Therefore WebKit provides adequate header files.
+ INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
+- LIBS += -licucore
++ LIBS += /usr/lib/libicucore.dylib
+ } else:!use?(wchar_unicode): {
+ win32 {
+ CONFIG(static, static|shared) {
+diff --git a/Source/WebCore/plugins/qt/PluginPackageQt.cpp b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+index a923d49aa..46772a4bb 100644
+--- a/Source/WebCore/plugins/qt/PluginPackageQt.cpp
++++ b/Source/WebCore/plugins/qt/PluginPackageQt.cpp
+@@ -136,7 +136,11 @@ static void initializeGtk(QLibrary* module = 0)
+ }
+ }
+
++#ifdef NIXPKGS_LIBGTK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGTK2), 0);
++#else
+ QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
++#endif
+ 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 de06a2fea..86fe39ef1 100644
+--- a/Source/WebCore/plugins/qt/PluginViewQt.cpp
++++ b/Source/WebCore/plugins/qt/PluginViewQt.cpp
+@@ -697,7 +697,11 @@ 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());
++#ifdef NIXPKGS_LIBGDK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
++#else
+ QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++#endif
+ if (!library.load())
+ return 0;
+
+diff --git a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+index 8de65216b..38f5c05e5 100644
+--- a/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
++++ b/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
+@@ -53,7 +53,11 @@ static void messageHandler(QtMsgType type, const QMessageLogContext&, const QStr
+
+ static bool initializeGtk()
+ {
++#ifdef NIXPKGS_LIBGTK2
++ QLibrary gtkLibrary(QLatin1String(NIXPKGS_LIBGTK2), 0);
++#else
+ QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
++#endif
+ if (!gtkLibrary.load())
+ return false;
+ typedef void* (*gtk_init_ptr)(void*, void*);
+diff --git a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+index d734ff684..0f6ff63d1 100644
+--- a/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
++++ b/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
+@@ -64,7 +64,11 @@ static Display* getPluginDisplay()
+ // The code below has the same effect as this one:
+ // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
+
++#ifdef NIXPKGS_LIBGDK2
++ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
++#else
+ QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
++#endif
+ if (!library.load())
+ return 0;
+
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-gtk.patch b/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-gtk.patch
deleted file mode 100644
index e34eda592af..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-gtk.patch
+++ /dev/null
@@ -1,64 +0,0 @@
-Index: qtwebkit-opensource-src-5.8.0/Source/WebCore/plugins/qt/PluginPackageQt.cpp
-===================================================================
---- qtwebkit-opensource-src-5.8.0.orig/Source/WebCore/plugins/qt/PluginPackageQt.cpp
-+++ qtwebkit-opensource-src-5.8.0/Source/WebCore/plugins/qt/PluginPackageQt.cpp
-@@ -136,7 +136,11 @@ static void initializeGtk(QLibrary* modu
- }
- }
-
-+#ifdef NIXPKGS_LIBGTK2
-+ QLibrary library(QLatin1String(NIXPKGS_LIBGTK2), 0);
-+#else
- QLibrary library(QLatin1String("libgtk-x11-2.0"), 0);
-+#endif
- 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");
-Index: qtwebkit-opensource-src-5.8.0/Source/WebCore/plugins/qt/PluginViewQt.cpp
-===================================================================
---- qtwebkit-opensource-src-5.8.0.orig/Source/WebCore/plugins/qt/PluginViewQt.cpp
-+++ qtwebkit-opensource-src-5.8.0/Source/WebCore/plugins/qt/PluginViewQt.cpp
-@@ -697,7 +697,11 @@ 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());
-+#ifdef NIXPKGS_LIBGDK2
-+ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
-+#else
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
-+#endif
- if (!library.load())
- return 0;
-
-Index: qtwebkit-opensource-src-5.8.0/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
-===================================================================
---- qtwebkit-opensource-src-5.8.0.orig/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
-+++ qtwebkit-opensource-src-5.8.0/Source/WebKit2/WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp
-@@ -64,7 +64,11 @@ static Display* getPluginDisplay()
- // The code below has the same effect as this one:
- // Display *gdkDisplay = gdk_x11_display_get_xdisplay(gdk_display_get_default());
-
-+#ifdef NIXPKGS_LIBGDK2
-+ QLibrary library(QLatin1String(NIXPKGS_LIBGDK2), 0);
-+#else
- QLibrary library(QLatin1String("libgdk-x11-2.0"), 0);
-+#endif
- if (!library.load())
- return 0;
-
-Index: qtwebkit-opensource-src-5.8.0/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
-===================================================================
---- qtwebkit-opensource-src-5.8.0.orig/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
-+++ qtwebkit-opensource-src-5.8.0/Source/WebKit2/PluginProcess/qt/PluginProcessMainQt.cpp
-@@ -53,7 +53,11 @@ static void messageHandler(QtMsgType typ
-
- static bool initializeGtk()
- {
-+#ifdef NIXPKGS_LIBGTK2
-+ QLibrary gtkLibrary(QLatin1String(NIXPKGS_LIBGTK2), 0);
-+#else
- QLibrary gtkLibrary(QLatin1String("libgtk-x11-2.0"), 0);
-+#endif
- if (!gtkLibrary.load())
- return false;
- typedef void* (*gtk_init_ptr)(void*, void*);
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-udev.patch b/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-udev.patch
deleted file mode 100644
index e69de29bb2d..00000000000
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-icucore-darwin.patch b/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-icucore-darwin.patch
deleted file mode 100644
index 63c653da94e..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-icucore-darwin.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: qtwebkit-opensource-src-5.8.0/Source/WTF/WTF.pri
-===================================================================
---- qtwebkit-opensource-src-5.8.0.orig/Source/WTF/WTF.pri
-+++ qtwebkit-opensource-src-5.8.0/Source/WTF/WTF.pri
-@@ -12,7 +12,7 @@ mac {
- # Mac OS does ship libicu but not the associated header files.
- # Therefore WebKit provides adequate header files.
- INCLUDEPATH = $${ROOT_WEBKIT_DIR}/Source/WTF/icu $$INCLUDEPATH
-- LIBS += -licucore
-+ LIBS += /usr/lib/libicucore.dylib
- } else:!use?(wchar_unicode): {
- win32 {
- CONFIG(static, static|shared) {
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit/series b/pkgs/development/libraries/qt-5/5.9/qtwebkit/series
deleted file mode 100644
index 140e2a3dd4e..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwebkit/series
+++ /dev/null
@@ -1,3 +0,0 @@
-qtwebkit-dlopen-gtk.patch
-qtwebkit-dlopen-udev.patch
-qtwebkit-icucore-darwin.patch
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebsockets.nix b/pkgs/development/libraries/qt-5/5.9/qtwebsockets.nix
deleted file mode 100644
index 888c1fb6534..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtwebsockets.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ qtSubmodule, qtbase, qtdeclarative }:
-
-qtSubmodule {
- name = "qtwebsockets";
- qtInputs = [ qtbase qtdeclarative ];
- outputs = [ "bin" "dev" "out" ];
- postInstall = ''
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtxmlpatterns.nix b/pkgs/development/libraries/qt-5/5.9/qtxmlpatterns.nix
deleted file mode 100644
index 9a8ddbba2bd..00000000000
--- a/pkgs/development/libraries/qt-5/5.9/qtxmlpatterns.nix
+++ /dev/null
@@ -1,6 +0,0 @@
-{ qtSubmodule, qtbase }:
-
-qtSubmodule {
- name = "qtxmlpatterns";
- qtInputs = [ qtbase ];
-}
diff --git a/pkgs/development/libraries/qt-5/5.9/srcs.nix b/pkgs/development/libraries/qt-5/5.9/srcs.nix
index f30802472fb..247800b7578 100644
--- a/pkgs/development/libraries/qt-5/5.9/srcs.nix
+++ b/pkgs/development/libraries/qt-5/5.9/srcs.nix
@@ -3,283 +3,275 @@
{
qt3d = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qt3d-opensource-src-5.9.2.tar.xz";
- sha256 = "10q7npsl087sja0g2n3v0cg4n75y7sbrs3mfjcsg1wpkw8psjmf9";
- name = "qt3d-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qt3d-opensource-src-5.9.1.tar.xz";
+ sha256 = "15j9znfnxch1n6fwz9ngi30msdzh0wlpykl53cs8g2fp2awfa7sg";
+ name = "qt3d-opensource-src-5.9.1.tar.xz";
};
};
qtactiveqt = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtactiveqt-opensource-src-5.9.2.tar.xz";
- sha256 = "1kz59ns6afnd8s73ys7hqffg9ki9g7px009b2ab72nq7f8cqsib0";
- name = "qtactiveqt-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtactiveqt-opensource-src-5.9.1.tar.xz";
+ sha256 = "07zq60xg7nnlny7qgj6dk1ibg3fzhbdh78gpd0s6x1n822iyislg";
+ name = "qtactiveqt-opensource-src-5.9.1.tar.xz";
};
};
qtandroidextras = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtandroidextras-opensource-src-5.9.2.tar.xz";
- sha256 = "1hsx16v17iqjhs20xn7an2ad7g8djwrmxachscjhji1dvk4682nl";
- name = "qtandroidextras-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtandroidextras-opensource-src-5.9.1.tar.xz";
+ sha256 = "0nq879jsa2z1l5q3n0hhiv15mzfm5c6s7zfblcc10sgim90p5mjj";
+ name = "qtandroidextras-opensource-src-5.9.1.tar.xz";
};
};
qtbase = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtbase-opensource-src-5.9.2.tar.xz";
- sha256 = "16v0dny4rcyd5p8qsnsfg89w98k8kqk3rp9x3g3k7xjmi53bpqkz";
- name = "qtbase-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtbase-opensource-src-5.9.1.tar.xz";
+ sha256 = "1ikm896jzyfyjv2qv8n3fd81sxb4y24zkygx36865ygzyvlj36mw";
+ name = "qtbase-opensource-src-5.9.1.tar.xz";
};
};
qtcanvas3d = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtcanvas3d-opensource-src-5.9.2.tar.xz";
- sha256 = "1siyzgm1mjx90rwyzzq9vw2s2xzyf6n7q0vn8gw7mdim5indda44";
- name = "qtcanvas3d-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtcanvas3d-opensource-src-5.9.1.tar.xz";
+ sha256 = "10fy8wqfw2yhha6lyky5g1a72137aj8pji7mk0wjnggh629z12sb";
+ name = "qtcanvas3d-opensource-src-5.9.1.tar.xz";
};
};
qtcharts = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtcharts-opensource-src-5.9.2.tar.xz";
- sha256 = "193a3imkgryw42s0gbwaj9gpqd673h3jrg86jvmy33l2fc5gfyjf";
- name = "qtcharts-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtcharts-opensource-src-5.9.1.tar.xz";
+ sha256 = "180df5v7i1ki8hc3lgi6jcfdyz7f19pb73dvfkw402wa2gfcna3k";
+ name = "qtcharts-opensource-src-5.9.1.tar.xz";
};
};
qtconnectivity = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtconnectivity-opensource-src-5.9.2.tar.xz";
- sha256 = "1k7kjmlny0ykm40qx796wbsg3310v6b8hqizkbr597cmxjbrax9c";
- name = "qtconnectivity-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtconnectivity-opensource-src-5.9.1.tar.xz";
+ sha256 = "1mbzmqix0388iq20a1ljd1pgdq259rm1xzp9kx8gigqpamqqnqs0";
+ name = "qtconnectivity-opensource-src-5.9.1.tar.xz";
};
};
qtdatavis3d = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtdatavis3d-opensource-src-5.9.2.tar.xz";
- sha256 = "1cmjjbbmdqdix1f8b7qyc2vwhj9pvchc8r4lp65qw11dhycmdbh6";
- name = "qtdatavis3d-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdatavis3d-opensource-src-5.9.1.tar.xz";
+ sha256 = "14d1q07winh6n1bkc616dapwfnsfkcjyg5zngdqjdj9mza8ang13";
+ name = "qtdatavis3d-opensource-src-5.9.1.tar.xz";
};
};
qtdeclarative = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtdeclarative-opensource-src-5.9.2.tar.xz";
- sha256 = "020bha6q8byxc8cj5zw7gms5rgsjg71hv31hv1rr2fy7x56zsh0d";
- name = "qtdeclarative-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdeclarative-opensource-src-5.9.1.tar.xz";
+ sha256 = "1zwlxrgraxhlsdkwsai3pjbz7f3a6rsnsg2mjrpay6cz3af6rznj";
+ name = "qtdeclarative-opensource-src-5.9.1.tar.xz";
};
};
qtdoc = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtdoc-opensource-src-5.9.2.tar.xz";
- sha256 = "0dfva8h8f9wpszih285qcxlfcijy52qcbfy1zy20gxh72nfi86c9";
- name = "qtdoc-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtdoc-opensource-src-5.9.1.tar.xz";
+ sha256 = "1d2kk9wzm2261ap87nyf743a4662gll03gz5yh5qi7k620lk372x";
+ name = "qtdoc-opensource-src-5.9.1.tar.xz";
};
};
qtgamepad = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtgamepad-opensource-src-5.9.2.tar.xz";
- sha256 = "0lm5v43psf7r8zc79dcjdmmdnz4jm30ylgkvsyv8k88mj06yklbn";
- name = "qtgamepad-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtgamepad-opensource-src-5.9.1.tar.xz";
+ sha256 = "055w4649zi93q1sl32ngqwgnl2vxw1idnm040s9gjgjb67gi81zi";
+ name = "qtgamepad-opensource-src-5.9.1.tar.xz";
};
};
qtgraphicaleffects = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtgraphicaleffects-opensource-src-5.9.2.tar.xz";
- sha256 = "0xpvigfiqfqvf05ywj8x69y57rp8dwq2hs1kpxlxs15pniz4wn8l";
- name = "qtgraphicaleffects-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtgraphicaleffects-opensource-src-5.9.1.tar.xz";
+ sha256 = "1zsr3a5dsmpvrb5h4m4h42wqmkvkks3d8mmyrx4k0mfr6s7c71jz";
+ name = "qtgraphicaleffects-opensource-src-5.9.1.tar.xz";
};
};
qtimageformats = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtimageformats-opensource-src-5.9.2.tar.xz";
- sha256 = "1wwxxcl24mk1p4w6knyfai09axmwqsm6cgsbkjsmdz3zmjh6qqis";
- name = "qtimageformats-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtimageformats-opensource-src-5.9.1.tar.xz";
+ sha256 = "0iwa3dys5rv706cpxwhmgircv783pmlyl1yrsc5i0rha643y7zkr";
+ name = "qtimageformats-opensource-src-5.9.1.tar.xz";
};
};
qtlocation = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtlocation-opensource-src-5.9.2.tar.xz";
- sha256 = "033b6l6jbvmc0k5qvbgh5vkzvfga7npqcphrywrrqkmx9vj446n8";
- name = "qtlocation-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtlocation-opensource-src-5.9.1.tar.xz";
+ sha256 = "058mgvlaml9rkfhkpr1n3avhi12zlva131sqhbwj4lwwyqfkri2b";
+ name = "qtlocation-opensource-src-5.9.1.tar.xz";
};
};
qtmacextras = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtmacextras-opensource-src-5.9.2.tar.xz";
- sha256 = "0f14xkardmidvwljccrv6adcs4nyn8rzry9k74mwqn0ikvycs3my";
- name = "qtmacextras-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtmacextras-opensource-src-5.9.1.tar.xz";
+ sha256 = "0096g9l2hwsiwlzfjkw7rhkdnyvb5gzjzyjjg9kqfnsagbwscv11";
+ name = "qtmacextras-opensource-src-5.9.1.tar.xz";
};
};
qtmultimedia = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtmultimedia-opensource-src-5.9.2.tar.xz";
- sha256 = "0815hi3cxy5zy6yc5fkdpx2xd6rk7968j1ziwl2g4wa80802g9n9";
- name = "qtmultimedia-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtmultimedia-opensource-src-5.9.1.tar.xz";
+ sha256 = "1r76zvbv6wwb7lgw9jwlx382iyw34i1amxaypb5bg3j1niqvx3z4";
+ name = "qtmultimedia-opensource-src-5.9.1.tar.xz";
};
};
qtnetworkauth = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtnetworkauth-opensource-src-5.9.2.tar.xz";
- sha256 = "16i33m8x5yii22ciq97bpfmnw0lwhvgv84i2az30a1ikm9dg00x0";
- name = "qtnetworkauth-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtnetworkauth-opensource-src-5.9.1.tar.xz";
+ sha256 = "1fgax3p7lqcz29z2n1qxnfpkj3wxq1x9bfx61q6nss1fs74pxzra";
+ name = "qtnetworkauth-opensource-src-5.9.1.tar.xz";
};
};
qtpurchasing = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtpurchasing-opensource-src-5.9.2.tar.xz";
- sha256 = "04f28y7qcr4kd0pw26mm515qj7haxr0i8lijn1q47wkikxyhawca";
- name = "qtpurchasing-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtpurchasing-opensource-src-5.9.1.tar.xz";
+ sha256 = "0b1hlaq6rb7d6b6h8kqd26klcpzf9vcdjrv610kdj0drb00jg3ss";
+ name = "qtpurchasing-opensource-src-5.9.1.tar.xz";
};
};
qtquickcontrols = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtquickcontrols-opensource-src-5.9.2.tar.xz";
- sha256 = "07xxhkfsljwdwlp9jfp88pwkrig02y2pnwhdsaz8mkcackwfq2az";
- name = "qtquickcontrols-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtquickcontrols-opensource-src-5.9.1.tar.xz";
+ sha256 = "0bpc465q822phw3dcbddn70wj1fjlc2hxskkp1z9gl7r23hx03jj";
+ name = "qtquickcontrols-opensource-src-5.9.1.tar.xz";
};
};
qtquickcontrols2 = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtquickcontrols2-opensource-src-5.9.2.tar.xz";
- sha256 = "1ln83afxyp5dmvdnq6n7as82xrd5k3xvfx7b1jxnljivslyxsm9b";
- name = "qtquickcontrols2-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtquickcontrols2-opensource-src-5.9.1.tar.xz";
+ sha256 = "1zq86kqz85wm3n84jcxkxw5x1mrhkqzldkigf8xm3l8j24rf0fr0";
+ name = "qtquickcontrols2-opensource-src-5.9.1.tar.xz";
};
};
qtremoteobjects = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtremoteobjects-opensource-src-5.9.2.tar.xz";
- sha256 = "1ylphdwis34y4pm9xiwh2xqfd0hh2gp8kkawlps2q5mh2bm11376";
- name = "qtremoteobjects-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtremoteobjects-opensource-src-5.9.1.tar.xz";
+ sha256 = "10kwq0fgmi6zsqhb6s1nkcydpyl8d8flzdpgmyj50c4h2xhg2km0";
+ name = "qtremoteobjects-opensource-src-5.9.1.tar.xz";
};
};
qtscript = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtscript-opensource-src-5.9.2.tar.xz";
- sha256 = "1wa0rnbphkhgydnwkf5bjwn0llskl6hgs0964nh0jik8qaspv027";
- name = "qtscript-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtscript-opensource-src-5.9.1.tar.xz";
+ sha256 = "13qq2mjfhqdcvkmzrgxg1gr5kww1ygbwb7r71xxl6rjzbn30hshp";
+ name = "qtscript-opensource-src-5.9.1.tar.xz";
};
};
qtscxml = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtscxml-opensource-src-5.9.2.tar.xz";
- sha256 = "0pdimqwdrj8hckm81lwy1z58ji4bdv0bzgv336m0a8v3pj914awx";
- name = "qtscxml-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtscxml-opensource-src-5.9.1.tar.xz";
+ sha256 = "1m3b6wg5hqasdfc5igpj9bq3czql5kkvvn3rx1ig508kdlh5i5s0";
+ name = "qtscxml-opensource-src-5.9.1.tar.xz";
};
};
qtsensors = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtsensors-opensource-src-5.9.2.tar.xz";
- sha256 = "1lxmhi19dbb8vjhpjph0l0ss6zh72hb4908lp4s1pgf8r641ai3r";
- name = "qtsensors-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtsensors-opensource-src-5.9.1.tar.xz";
+ sha256 = "1772x7r6y9xv2sv0w2dfz2yhagsq5bpa9kdpzg0qikccmabr7was";
+ name = "qtsensors-opensource-src-5.9.1.tar.xz";
};
};
qtserialbus = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtserialbus-opensource-src-5.9.2.tar.xz";
- sha256 = "025yv7zajz5scrmkjkmgkyvxpgkliqvrzc88is0gr481zpd4phmv";
- name = "qtserialbus-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtserialbus-opensource-src-5.9.1.tar.xz";
+ sha256 = "1hzk377c3zl4dm5hxwvpxg2w096m160448y9df6v6l8xpzpzxafa";
+ name = "qtserialbus-opensource-src-5.9.1.tar.xz";
};
};
qtserialport = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtserialport-opensource-src-5.9.2.tar.xz";
- sha256 = "0hndc9z7qzxazzjvc6k5yd58afw13444plk70b05nqdi5p19rvah";
- name = "qtserialport-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtserialport-opensource-src-5.9.1.tar.xz";
+ sha256 = "0sbsc7n701kxl16r247a907zg2afmbx1xlml5jkc6a9956zqbzp1";
+ name = "qtserialport-opensource-src-5.9.1.tar.xz";
};
};
qtspeech = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtspeech-opensource-src-5.9.2.tar.xz";
- sha256 = "0cq33dffi7q7dnvzhdivky5prakb8xnwap0b76fwgirhbbn88ypg";
- name = "qtspeech-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtspeech-opensource-src-5.9.1.tar.xz";
+ sha256 = "00daxkf8iwf6n9rhkkv3isv5qa8wijwzb0zy1f6zlm3vcc8fz75c";
+ name = "qtspeech-opensource-src-5.9.1.tar.xz";
};
};
qtsvg = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtsvg-opensource-src-5.9.2.tar.xz";
- sha256 = "020icrl9vi8jh8ygsssqrx2bl8bx28m15dwmf9a969qdnvxyp5ms";
- name = "qtsvg-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtsvg-opensource-src-5.9.1.tar.xz";
+ sha256 = "1rg2q4snh2g4n93zmk995swwkl0ab1jr9ka9xpj56ddifkw99wlr";
+ name = "qtsvg-opensource-src-5.9.1.tar.xz";
};
};
qttools = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qttools-opensource-src-5.9.2.tar.xz";
- sha256 = "06nqsa5mj0mc9w9xbm7mgdkb66x4wlvkhnas32f97sb8ic8rdf9b";
- name = "qttools-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qttools-opensource-src-5.9.1.tar.xz";
+ sha256 = "1s50kh3sg5wc5gqhwwznnibh7jcnfginnmkv66w62mm74k7mdsy4";
+ name = "qttools-opensource-src-5.9.1.tar.xz";
};
};
qttranslations = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qttranslations-opensource-src-5.9.2.tar.xz";
- sha256 = "0byi4s07lfnzzlr2c4sc5qg3hrysswmakwmf80q2mx50kpgnvwax";
- name = "qttranslations-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qttranslations-opensource-src-5.9.1.tar.xz";
+ sha256 = "0sdjiqli15fmkbqvhhgjfavff906sg56jx5xf8bg6xzd2j5544ja";
+ name = "qttranslations-opensource-src-5.9.1.tar.xz";
};
};
qtvirtualkeyboard = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtvirtualkeyboard-opensource-src-5.9.2.tar.xz";
- sha256 = "1z66chp5746cb0rwy2isnpbvwjj44qvp2hg56n3g47dj901wldp8";
- name = "qtvirtualkeyboard-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtvirtualkeyboard-opensource-src-5.9.1.tar.xz";
+ sha256 = "0k79sqa8bg6gkbsk16320gnila1iiwpnl3vx03rysm5bqdnnlx3b";
+ name = "qtvirtualkeyboard-opensource-src-5.9.1.tar.xz";
};
};
qtwayland = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwayland-opensource-src-5.9.2.tar.xz";
- sha256 = "1ipn4xh0dj1kjg5i4vfl4gpx3hg2377w5gls47xpv1ikz41lshzn";
- name = "qtwayland-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwayland-opensource-src-5.9.1.tar.xz";
+ sha256 = "1yizvbmh26mx1ffq0qaci02g2wihy68ld0y7r3z8nx3v5acb236g";
+ name = "qtwayland-opensource-src-5.9.1.tar.xz";
};
};
qtwebchannel = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwebchannel-opensource-src-5.9.2.tar.xz";
- sha256 = "09iss70c1iqgf8qpik35qlgrdw5y9935v0fm2ppgkmxdxkpls6ww";
- name = "qtwebchannel-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebchannel-opensource-src-5.9.1.tar.xz";
+ sha256 = "003h09mla82f2znb8jjigx13ivc68ikgv7w04594yy7qdmd5yhl0";
+ name = "qtwebchannel-opensource-src-5.9.1.tar.xz";
};
};
qtwebengine = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwebengine-opensource-src-5.9.2.tar.xz";
- sha256 = "0251qk04yif4lsn8qvkc2kmzzmaw1v3pfh5ypr06d04zb3j6kc6a";
- name = "qtwebengine-opensource-src-5.9.2.tar.xz";
- };
- };
- qtwebsockets = {
- version = "5.9.2";
- src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwebsockets-opensource-src-5.9.2.tar.xz";
- sha256 = "0x0nx1ampqsgj9qlc3l32z3ham1a5vq7m2lnxk5pr92yj6yw3pdg";
- name = "qtwebsockets-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebengine-opensource-src-5.9.1.tar.xz";
+ sha256 = "00b4d18m54pbxa1hm6ijh2mrd4wmrs7lkplys8b4liw8j7mpx8zn";
+ name = "qtwebengine-opensource-src-5.9.1.tar.xz";
};
};
qtwebkit = {
@@ -298,36 +290,44 @@
name = "qtwebkit-examples-opensource-src-5.9.1.tar.xz";
};
};
- qtwebview = {
- version = "5.9.2";
+ qtwebsockets = {
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwebview-opensource-src-5.9.2.tar.xz";
- sha256 = "1cdqw6pjfqagnwxrha0s18zadjnm65dsildxj07h2qiwqxwyrjpw";
- name = "qtwebview-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebsockets-opensource-src-5.9.1.tar.xz";
+ sha256 = "0r1lya2jj3wfci82zfn0vk6vr8sk9k7xiphnkb0panhb8di769q1";
+ name = "qtwebsockets-opensource-src-5.9.1.tar.xz";
+ };
+ };
+ qtwebview = {
+ version = "5.9.1";
+ src = fetchurl {
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwebview-opensource-src-5.9.1.tar.xz";
+ sha256 = "0qmxrh4y3i9n8x6yhrlnahcn75cc2xwlc8mi4g8n2d83c3x7pxyn";
+ name = "qtwebview-opensource-src-5.9.1.tar.xz";
};
};
qtwinextras = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtwinextras-opensource-src-5.9.2.tar.xz";
- sha256 = "07qq9rxl6hhl300w7qxsjjbdd5fwpszfk3rbinxklg20f6c6ixml";
- name = "qtwinextras-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtwinextras-opensource-src-5.9.1.tar.xz";
+ sha256 = "1x7f944f3g2ml3mm594qv6jlvl5dzzsxq86yinp7av0lhnyrxk0s";
+ name = "qtwinextras-opensource-src-5.9.1.tar.xz";
};
};
qtx11extras = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtx11extras-opensource-src-5.9.2.tar.xz";
- sha256 = "1ias745j5lfnrfkgyk0pr8n8zlkqs08gq7yyzaj1c645sh54b1fv";
- name = "qtx11extras-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtx11extras-opensource-src-5.9.1.tar.xz";
+ sha256 = "00fn3bps48gjyw0pdqvvl9scknxdpmacby6hvdrdccc3jll0wgd6";
+ name = "qtx11extras-opensource-src-5.9.1.tar.xz";
};
};
qtxmlpatterns = {
- version = "5.9.2";
+ version = "5.9.1";
src = fetchurl {
- url = "${mirror}/archive/qt/5.9/5.9.2/submodules/qtxmlpatterns-opensource-src-5.9.2.tar.xz";
- sha256 = "0knk4bplqhvsxar1wv16bzfw57q0aja12gdaxz7m8mvx121sm9ha";
- name = "qtxmlpatterns-opensource-src-5.9.2.tar.xz";
+ url = "${mirror}/official_releases/qt/5.9/5.9.1/submodules/qtxmlpatterns-opensource-src-5.9.1.tar.xz";
+ sha256 = "094wwap2fsl23cys6rxh2ciw0gxbbiqbshnn4qs1n6xdjrj6i15m";
+ name = "qtxmlpatterns-opensource-src-5.9.1.tar.xz";
};
};
}
diff --git a/pkgs/development/libraries/qt-5/README.md b/pkgs/development/libraries/qt-5/README.md
new file mode 100644
index 00000000000..c13b172e82a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/README.md
@@ -0,0 +1,81 @@
+# Qt 5 Maintainer's Notes
+
+## Minor Updates
+
+Let `$major` be the major version number, e.g. `5.9`.
+
+1. Change the version number in the `$major/fetch.sh`.
+2. Run `./maintainers/scripts/fetch-kde-qt.sh pkgs/development/qt-5/$major`
+ from the top of the Nixpkgs tree.
+
+See below if it is necessary to update any patches.
+
+## Major Updates
+
+Let `$major` be the new major version number, e.g. `5.10`.
+
+1. Copy the subdirectory from the previous major version to `$major`.
+2. Change the version number in `$major/fetch.sh`.
+3. Run `./maintainers/scripts/fetch-kde-qt.sh pkgs/development/qt-5/$major`
+ from the top of the Nixpkgs tree.
+4. Add a top-level attribute in `pkgs/top-level/all-packages.nix` for the new
+ major version.
+5. Change the `qt5` top-level attribute to point to the new major version.
+6. If the previous major version is _not_ a long-term support release,
+ remove it from Nixpkgs.
+
+See below if it is necessary to update any patches.
+
+## Patches
+
+Nixpkgs maintains several patches for Qt which cannot be submitted upstream. To
+facilitate maintenance, a fork of the upstream repository is created for each patched module:
+
+- [qtbase](https://github.com/ttuegel/qtbase)
+- [qtwebkit](https://github.com/ttuegel/qtwebkit)
+- [qttools](https://github.com/ttuegel/qttools)
+- [qtscript](https://github.com/ttuegel/qtscript)
+- [qtserialport](https://github.com/ttuegel/qtserialport)
+- [qtdeclarative](https://github.com/ttuegel/qtdeclarative)
+- [qtwebengine](https://github.com/ttuegel/qtwebengine)
+
+In each repository, the patches are contained in a branch named `nixpkgs/$major`
+for each major version. Please make a pull request to add or update any patch
+which will be maintained in Nixpkgs.
+
+The forked repository for each module is used to create a single patch in
+Nixpkgs. To recreate the patch for module `$module` (e.g. `qtbase`) at version
+`$version` (e.g. `5.9.1`) in the branch `$major` (e.g. `5.9`),
+
+1. Clone the fork for `$module` from the list above.
+2. Checkout the active branch, `git checkout nixpkgs/$major`.
+3. Compare the patched branch to the release tag,
+ `git diff v$version > $module.patch`.
+4. Copy `$module.patch` into the Nixpkgs tree.
+
+### Minor Version Updates
+
+To update module `$module` to version `$version` from an older version in the
+same branch `$major`,
+
+1. Clone the fork for `$module` from the list above.
+2. Checkout the active branch, `git checkout nixpkgs/$major`.
+3. Merge the new version into the active branch,
+ `git merge --no-ff v$version`.
+4. Fix any conflicts.
+5. Open a pull request for the changes.
+6. Follow the instructions above to recreate the module patch in Nixpkgs.
+
+### Major Version Updates
+
+To update module `$module` from `$oldversion` in branch `$oldmajor` to version
+`$version` in branch `$major`,
+
+1. Clone the fork for `$module` from the list above.
+2. Checkout a new branch for the new major version,
+ `git checkout -b nixpkgs/$major nixpkgs/$oldmajor`.
+3. Rebase the patches from `$oldversion` onto the new branch,
+ `git rebase v$oldversion --onto v$version`.
+4. Fix any conflicts.
+5. Open a pull request for the changes.
+6. Follow the instructions above to recreate the module patch in Nixpkgs.
diff --git a/pkgs/development/libraries/qt-5/hooks/fix-qt-builtin-paths.sh b/pkgs/development/libraries/qt-5/hooks/fix-qt-builtin-paths.sh
new file mode 100644
index 00000000000..4ca11a223de
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/fix-qt-builtin-paths.sh
@@ -0,0 +1,64 @@
+# fixQtBuiltinPaths
+#
+# Usage: fixQtBuiltinPaths _dir_ _pattern_
+#
+# Fix Qt builtin paths in files matching _pattern_ under _dir_.
+#
+fixQtBuiltinPaths() {
+ local dir="$1"
+ local pattern="$2"
+ local bin="${!outputBin}"
+ local dev="${!outputDev}"
+ local doc="${!outputDoc}"
+ local lib="${!outputLib}"
+
+ if [ -d "$dir" ]; then
+ find "$dir" -name "$pattern" | while read pr_; do
+ if grep -q '\$\$\[QT_' "${pr_:?}"; then
+ echo "fixQtBuiltinPaths: Fixing Qt builtin paths in \`${pr_:?}'..."
+ sed -i "${pr_:?}" \
+ -e "s|\\\$\\\$\\[QT_HOST_BINS[^]]*\\]|$dev/bin|g" \
+ -e "s|\\\$\\\$\\[QT_HOST_DATA[^]]*\\]/mkspecs|$dev/mkspecs|g" \
+ -e "s|\\\$\\\$\\[QT_HOST_PREFIX[^]]*\\]|$dev|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_ARCHDATA[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_BINS[^]]*\\]|$bin/bin|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_CONFIGURATION[^]]*\\]|$bin|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_DATA[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_DOCS[^]]*\\]|$doc/share/doc|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_EXAMPLES[^]]*\\]|$doc/examples|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_HEADERS[^]]*\\]|$dev/include|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_LIBS[^]]*\\]|$lib/lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_LIBEXECS[^]]*\\]|$lib/libexec|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_PLUGINS[^]]*\\]|$bin/$qtPluginPrefix|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_PREFIX[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_TESTS[^]]*\\]|$dev/tests|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_TRANSLATIONS[^]]*\\]|$lib/translations|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_QML[^]]*\\]|$bin/$qtQmlPrefix|g"
+ fi
+ done
+ elif [ -e "$dir" ]; then
+ if grep -q '\$\$\[QT_' "${dir:?}"; then
+ echo "fixQtBuiltinPaths: Fixing Qt builtin paths in \`${dir:?}'..."
+ sed -i "${dir:?}" \
+ -e "s|\\\$\\\$\\[QT_HOST_BINS[^]]*\\]|$dev/bin|g" \
+ -e "s|\\\$\\\$\\[QT_HOST_DATA[^]]*\\]/mkspecs|$dev/mkspecs|g" \
+ -e "s|\\\$\\\$\\[QT_HOST_PREFIX[^]]*\\]|$dev|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_ARCHDATA[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_BINS[^]]*\\]|$bin/bin|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_CONFIGURATION[^]]*\\]|$bin|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_DATA[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_DOCS[^]]*\\]|$doc/share/doc|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_EXAMPLES[^]]*\\]|$doc/examples|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_HEADERS[^]]*\\]|$dev/include|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_LIBS[^]]*\\]|$lib/lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_LIBEXECS[^]]*\\]|$lib/libexec|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_PLUGINS[^]]*\\]|$bin/$qtPluginPrefix|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_PREFIX[^]]*\\]|$lib|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_TESTS[^]]*\\]|$dev/tests|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_TRANSLATIONS[^]]*\\]|$lib/translations|g" \
+ -e "s|\\\$\\\$\\[QT_INSTALL_QML[^]]*\\]|$bin/$qtQmlPrefix|g"
+ fi
+ else
+ echo "fixQtBuiltinPaths: Warning: \`$dir' does not exist"
+ fi
+}
diff --git a/pkgs/development/libraries/qt-5/hooks/fix-qt-module-paths.sh b/pkgs/development/libraries/qt-5/hooks/fix-qt-module-paths.sh
new file mode 100644
index 00000000000..916981b5299
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/fix-qt-module-paths.sh
@@ -0,0 +1,43 @@
+# fixQtModulePaths
+#
+# Usage: fixQtModulePaths _dir_
+#
+# Find Qt module definitions in directory _dir_ and patch the module paths.
+#
+fixQtModulePaths () {
+ local dir="$1"
+ local bin="${!outputBin}"
+ local dev="${!outputDev}"
+ local lib="${!outputLib}"
+
+ if [ -d "$dir" ]; then
+ find "$dir" -name 'qt_*.pri' | while read pr; do
+ if grep -q '\$\$QT_MODULE_' "${pr:?}"; then
+ echo "fixQtModulePaths: Fixing module paths in \`${pr:?}'..."
+ sed -i "${pr:?}" \
+ -e "s|\\\$\\\$QT_MODULE_LIB_BASE|$dev/lib|g" \
+ -e "s|\\\$\\\$QT_MODULE_HOST_LIB_BASE|$dev/lib|g" \
+ -e "s|\\\$\\\$QT_MODULE_INCLUDE_BASE|$dev/include|g" \
+ -e "s|\\\$\\\$QT_MODULE_BIN_BASE|$dev/bin|g"
+ fi
+ done
+ elif [ -e "$dir" ]; then
+ echo "fixQtModulePaths: Warning: \`$dir' is not a directory"
+ else
+ echo "fixQtModulePaths: Warning: \`$dir' does not exist"
+ fi
+
+ if [ "z$dev" != "z$lib" ]; then
+ if [ -d "$lib/lib" ]; then
+ mkdir -p "$dev/lib"
+ lndir -silent "$lib/lib" "$dev/lib"
+ fi
+ fi
+
+ if [ "z$bin" != "z$dev" ]; then
+ if [ -d "$bin/bin" ]; then
+ mkdir -p "$dev/bin"
+ lndir -silent "$bin/bin" "$dev/bin"
+ fi
+ fi
+}
diff --git a/pkgs/development/libraries/qt-5/hooks/fix-qt-static-libs.sh b/pkgs/development/libraries/qt-5/hooks/fix-qt-static-libs.sh
new file mode 100644
index 00000000000..2a20e77e7ba
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/fix-qt-static-libs.sh
@@ -0,0 +1,32 @@
+# fixQtStaticLibs
+#
+# Usage: fixQtStaticLibs _lib_ _dev_
+#
+# Find static Qt libraries in output _lib_ and move them to the corresponding
+# path in output _dev_. Any QMake library definitions (*.prl files) are also
+# moved and library paths are patched.
+#
+fixQtStaticLibs() {
+ local lib="$1"
+ local dev="$2"
+
+ pushd "$lib"
+ if [ -d "lib" ]; then
+ find lib \( -name '*.a' -o -name '*.la' -o -name '*.prl' \) -print0 | \
+ while read -r -d $'\0' file; do
+ mkdir -p "$dev/$(dirname "$file")"
+ mv "$lib/$file" "$dev/$file"
+ done
+ fi
+ popd
+
+ if [ -d "$dev" ]; then
+ find "$dev" -name '*.prl' | while read prl; do
+ echo "fixQtStaticLibs: Fixing built-in paths in \`$prl'..."
+ sed -i "$prl" \
+ -e '/^QMAKE_PRL_BUILD_DIR =/d' \
+ -e '/^QMAKE_PRO_INPUT =/d' \
+ -e "s|-L\\\$\\\$NIX_OUTPUT_OUT/lib|-L$lib/lib -L$dev/lib|g"
+ done
+ fi
+}
diff --git a/pkgs/development/libraries/qt-5/hooks/move-qt-dev-tools.sh b/pkgs/development/libraries/qt-5/hooks/move-qt-dev-tools.sh
new file mode 100644
index 00000000000..85489c85105
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/move-qt-dev-tools.sh
@@ -0,0 +1,34 @@
+updateToolPath() {
+ local tool="$1"
+ local target="$2"
+ local original="${!outputBin}/$tool"
+ local actual="${!outputDev}/$tool"
+ if grep -q "$original" "$target"; then
+ echo "updateToolPath: Updating \`$original' in \`$target\'..."
+ sed -i "$target" -e "s|$original|$actual|"
+ fi
+}
+
+moveQtDevTools() {
+ if [ -n "$devTools" ]; then
+ for tool in $devTools; do
+ moveToOutput "$tool" "${!outputDev}"
+ done
+
+ if [ -d "${!outputDev}/mkspecs" ]; then
+ find "${!outputDev}/mkspecs" -name '*.pr?' | while read pr_; do
+ for tool in $devTools; do
+ updateToolPath "$tool" "$pr_"
+ done
+ done
+ fi
+
+ if [ -d "${!outputDev}/lib/cmake" ]; then
+ find "${!outputDev}/lib/cmake" -name '*.cmake' | while read cmake; do
+ for tool in $devTools; do
+ updateToolPath "$tool" "$cmake"
+ done
+ done
+ fi
+ fi
+}
diff --git a/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
new file mode 100644
index 00000000000..17d3db65849
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/qmake-hook.sh
@@ -0,0 +1,18 @@
+qmakeConfigurePhase() {
+ runHook preConfigure
+
+ qmake PREFIX=$out \
+ NIX_OUTPUT_OUT=$out \
+ NIX_OUTPUT_DEV=${!outputDev} \
+ NIX_OUTPUT_BIN=${!outputBin} \
+ NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?} \
+ NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?} \
+ NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?} \
+ $qmakeFlags
+
+ runHook postConfigure
+}
+
+if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
+ configurePhase=qmakeConfigurePhase
+fi
diff --git a/pkgs/development/libraries/qt-5/hooks/qtbase-setup-hook.sh b/pkgs/development/libraries/qt-5/hooks/qtbase-setup-hook.sh
new file mode 100644
index 00000000000..258b2d09f20
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/qtbase-setup-hook.sh
@@ -0,0 +1,87 @@
+qtPluginPrefix=@qtPluginPrefix@
+qtQmlPrefix=@qtQmlPrefix@
+qtDocPrefix=@qtDocPrefix@
+
+. @fix_qt_builtin_paths@
+. @fix_qt_module_paths@
+. @fix_qt_static_libs@
+
+providesQtRuntime() {
+ [ -d "$1/$qtPluginPrefix" ] || [ -d "$1/$qtQmlPrefix" ]
+}
+
+# Build tools are often confused if QMAKE is unset.
+QMAKE=@dev@/bin/qmake
+export QMAKE
+
+QMAKEPATH=
+export QMAKEPATH
+
+QMAKEMODULES=
+export QMAKEMODULES
+
+addToQMAKEPATH() {
+ if [ -d "$1/mkspecs" ]; then
+ QMAKEMODULES="${QMAKEMODULES}${QMAKEMODULES:+:}/mkspecs"
+ QMAKEPATH="${QMAKEPATH}${QMAKEPATH:+:}$1"
+ fi
+}
+
+# Propagate any runtime dependency of the building package.
+# Each dependency is propagated to the user environment and as a build
+# input so that it will be re-propagated to the user environment by any
+# package depending on the building package. (This is necessary in case
+# the building package does not provide runtime dependencies itself and so
+# would not be propagated to the user environment.)
+qtCrossEnvHook() {
+ addToQMAKEPATH "$1"
+ if providesQtRuntime "$1"; then
+ if [ "z${!outputBin}" != "z${!outputDev}" ]; then
+ propagatedBuildInputs+=" $1"
+ fi
+ propagatedUserEnvPkgs+=" $1"
+ fi
+}
+crossEnvHooks+=(qtCrossEnvHook)
+
+qtEnvHook() {
+ addToQMAKEPATH "$1"
+ if providesQtRuntime "$1"; then
+ if [ "z${!outputBin}" != "z${!outputDev}" ]; then
+ propagatedNativeBuildInputs+=" $1"
+ fi
+ if [ -z "$crossConfig" ]; then
+ propagatedUserEnvPkgs+=" $1"
+ fi
+ fi
+}
+envHooks+=(qtEnvHook)
+
+postPatchMkspecs() {
+ local bin="${!outputBin}"
+ local dev="${!outputDev}"
+ local doc="${!outputDoc}"
+ local lib="${!outputLib}"
+
+ moveToOutput "mkspecs" "$dev"
+
+ if [ -d "$dev/mkspecs/modules" ]; then
+ fixQtModulePaths "$dev/mkspecs/modules"
+ fi
+
+ if [ -d "$dev/mkspecs" ]; then
+ fixQtBuiltinPaths "$dev/mkspecs" '*.pr?'
+ fi
+}
+if [ -z "$dontPatchMkspecs" ]; then
+ postPhases="${postPhases}${postPhases:+ }postPatchMkspecs"
+fi
+
+postMoveQtStaticLibs() {
+ if [ "z${!outputLib}" != "z${!outputDev}" ]; then
+ fixQtStaticLibs "${!outputLib}" "${!outputDev}"
+ fi
+}
+if [ -z "$dontMoveQtStaticLibs" ]; then
+ postPhases="${postPhases}${postPhases:+ }postMoveQtStaticLibs"
+fi
diff --git a/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh
new file mode 100644
index 00000000000..b09cf5f46c9
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh
@@ -0,0 +1 @@
+qmakeFlags="$qmakeFlags${qmakeFlags:+ }QMAKE_LRELEASE=@dev@/bin/lrelease"
diff --git a/pkgs/development/libraries/qt-5/mkDerivation.nix b/pkgs/development/libraries/qt-5/mkDerivation.nix
new file mode 100644
index 00000000000..ef105092fe2
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/mkDerivation.nix
@@ -0,0 +1,29 @@
+{ stdenv, lib }:
+
+let inherit (lib) optional; in
+
+{ debug }:
+
+args:
+
+let
+ args_ = {
+
+ qmakeFlags =
+ (args.qmakeFlags or [])
+ ++ optional (debug != null)
+ (if debug then "CONFIG+=debug" else "CONFIG+=release");
+
+ cmakeFlags =
+ (args.cmakeFlags or [])
+ ++ [ "-DBUILD_TESTING=OFF" ]
+ ++ optional (debug != null)
+ (if debug then "-DCMAKE_BUILD_TYPE=Debug"
+ else "-DCMAKE_BUILD_TYPE=Release");
+
+ enableParallelBuilding = args.enableParallelBuilding or false;
+
+ };
+in
+
+stdenv.mkDerivation (args // args_)
diff --git a/pkgs/development/libraries/qt-5/5.9/qtbase/default.nix b/pkgs/development/libraries/qt-5/modules/qtbase.nix
similarity index 75%
rename from pkgs/development/libraries/qt-5/5.9/qtbase/default.nix
rename to pkgs/development/libraries/qt-5/modules/qtbase.nix
index d63936c561c..902d4f01bf8 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtbase/default.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtbase.nix
@@ -1,20 +1,21 @@
{
- stdenv, lib, copyPathsToStore,
- src, version, qtCompatVersion,
+ stdenv, lib,
+ src, patches, version, qtCompatVersion,
coreutils, bison, flex, gdb, gperf, lndir, patchelf, perl, pkgconfig, python2,
- ruby, which,
+ ruby,
# darwin support
darwin, libiconv, libcxx,
- dbus, dconf, fontconfig, freetype, glib, gtk3, harfbuzz, icu, libX11, libXcomposite,
+ dbus, fontconfig, freetype, glib, harfbuzz, icu, libX11, libXcomposite,
libXcursor, libXext, libXi, libXrender, libinput, libjpeg, libpng, libtiff,
- libxcb, libxkbcommon, libxml2, libxslt, openssl, pcre2, sqlite, udev,
+ libxcb, libxkbcommon, libxml2, libxslt, openssl, pcre16, pcre2, sqlite, udev,
xcbutil, xcbutilimage, xcbutilkeysyms, xcbutilrenderutil, xcbutilwm, xlibs,
zlib,
# optional dependencies
cups ? null, mysql ? null, postgresql ? null,
+ withGtk3 ? false, dconf ? null, gtk3 ? null,
# options
mesaSupported ? (!stdenv.isDarwin),
@@ -25,6 +26,9 @@
decryptSslTraffic ? false
}:
+assert withGtk3 -> dconf != null;
+assert withGtk3 -> gtk3 != null;
+
let
system-x86_64 = lib.elem stdenv.system lib.platforms.x86_64;
in
@@ -36,7 +40,7 @@ stdenv.mkDerivation {
propagatedBuildInputs =
[
- libxml2 libxslt openssl pcre2 sqlite zlib
+ libxml2 libxslt openssl sqlite zlib
# Text rendering
harfbuzz icu
@@ -44,6 +48,8 @@ stdenv.mkDerivation {
# Image formats
libjpeg libpng libtiff
]
+ ++ (if builtins.compareVersions version "5.9.0" >= 0
+ then [ pcre2 ] else [ pcre16 ])
++ lib.optional (mesaSupported && !stdenv.isDarwin) mesa
@@ -66,24 +72,42 @@ stdenv.mkDerivation {
]);
buildInputs = [ ]
- ++ lib.optionals (!stdenv.isDarwin) [ gtk3 libinput ]
+ ++ lib.optional (!stdenv.isDarwin && withGtk3) gtk3
+ ++ lib.optional (!stdenv.isDarwin) libinput
++ lib.optional developerBuild gdb
++ lib.optional (cups != null) cups
++ lib.optional (mysql != null) mysql.lib
++ lib.optional (postgresql != null) postgresql;
nativeBuildInputs =
- [ bison flex gperf lndir perl pkgconfig python2 which ]
+ [ bison flex gperf lndir perl pkgconfig python2 ]
++ lib.optional (!stdenv.isDarwin) patchelf;
+ propagatedNativeBuildInputs = [ lndir ];
+
outputs = [ "bin" "dev" "out" ];
- patches =
- copyPathsToStore (lib.readPathsFromFile ./. ./series)
- ++ stdenv.lib.optional stdenv.isDarwin (copyPathsToStore (lib.readPathsFromFile ./. ./darwin-series));
+ inherit patches;
+
+ fix_qt_static_libs = ../hooks/fix-qt-static-libs.sh;
+ fix_qt_builtin_paths = ../hooks/fix-qt-builtin-paths.sh;
+ fix_qt_module_paths = ../hooks/fix-qt-module-paths.sh;
+ preHook = ''
+ . "$fix_qt_static_libs"
+ . "$fix_qt_builtin_paths"
+ . "$fix_qt_module_paths"
+ . ${../hooks/move-qt-dev-tools.sh}
+ '';
postPatch =
''
+ for prf in qml_plugin.prf qt_plugin.prf qt_docs.prf qml_module.prf create_cmake.prf; do
+ substituteInPlace "mkspecs/features/$prf" \
+ --subst-var qtPluginPrefix \
+ --subst-var qtQmlPrefix \
+ --subst-var qtDocPrefix
+ done
+
substituteInPlace configure --replace /bin/pwd pwd
substituteInPlace src/corelib/global/global.pri --replace /bin/ls ${coreutils}/bin/ls
sed -e 's@/\(usr\|opt\)/@/var/empty/@g' -i mkspecs/*/*.conf
@@ -126,13 +150,33 @@ stdenv.mkDerivation {
setOutputFlags = false;
preConfigure = ''
export LD_LIBRARY_PATH="$PWD/lib:$PWD/plugins/platforms:$LD_LIBRARY_PATH"
- export MAKEFLAGS=-j$NIX_BUILD_CORES
+ ${lib.optionalString (builtins.compareVersions version "5.9.0" < 0) ''
+ # We need to set LD to CXX or otherwise we get nasty compile errors
+ export LD=$CXX
+ ''}
configureFlags+="\
-plugindir $out/$qtPluginPrefix \
-qmldir $out/$qtQmlPrefix \
-docdir $out/$qtDocPrefix"
+ createQmakeCache() {
+ cat >>"$1" <= 0
+ then [ (if system-x86_64 then "-sse2" else "-no-sse2") ]
+ else lib.optional (!system-x86_64) "-no-sse2")
++ [
- ''${lib.optionalString (!system-x86_64) "-no"}-sse2''
"-no-sse3"
"-no-ssse3"
"-no-sse4.1"
@@ -232,7 +283,7 @@ stdenv.mkDerivation {
]
++ lib.optionals (!stdenv.isDarwin) [
- "-rpath"
+ "-${lib.optionalString (builtins.compareVersions version "5.9.0" < 0) "no-"}rpath"
"-system-xcb"
"-xcb"
@@ -250,14 +301,14 @@ stdenv.mkDerivation {
''-${lib.optionalString (cups == null) "no-"}cups''
"-dbus-linked"
"-glib"
- "-gtk"
- "-inotify"
"-system-libjpeg"
"-system-libpng"
# gold linker of binutils 2.28 generates duplicate symbols
# TODO: remove for newer version of binutils
"-no-use-gold-linker"
]
+ ++ lib.optional withGtk3 "-gtk"
+ ++ lib.optional (builtins.compareVersions version "5.9.0" >= 0) "-inotify"
++ lib.optionals stdenv.isDarwin [
"-platform macx-clang"
@@ -270,62 +321,43 @@ stdenv.mkDerivation {
enableParallelBuilding = true;
postInstall =
- # Hardcode some CMake module paths.
- ''
- find "$out" -name "*.cmake" | while read file; do
- substituteInPlace "$file" \
- --subst-var-by NIX_OUT "''${!outputLib}" \
- --subst-var-by NIX_DEV "''${!outputDev}" \
- --subst-var-by NIX_BIN "''${!outputBin}"
- done
- '';
-
- preFixup =
# Move selected outputs.
''
- moveToOutput "bin" "$dev"
- moveToOutput "include" "$dev"
moveToOutput "mkspecs" "$dev"
-
- mkdir -p "$dev/share"
- moveToOutput "share/doc" "$dev"
-
- moveToOutput "$qtPluginPrefix" "$bin"
'';
+ devTools = [
+ "bin/fixqt4headers.pl"
+ "bin/moc"
+ "bin/qdbuscpp2xml"
+ "bin/qdbusxml2cpp"
+ "bin/qlalr"
+ "bin/qmake"
+ "bin/rcc"
+ "bin/syncqt.pl"
+ "bin/uic"
+ ];
+
postFixup =
# Don't retain build-time dependencies like gdb.
''
sed '/QMAKE_DEFAULT_.*DIRS/ d' -i $dev/mkspecs/qconfig.pri
''
- # Move libtool archives into $dev
+ ''
- if [ "z''${!outputLib}" != "z''${!outputDev}" ]; then
- pushd "''${!outputLib}"
- find lib -name '*.a' -o -name '*.la' | while read -r file; do
- mkdir -p "''${!outputDev}/$(dirname "$file")"
- mv "''${!outputLib}/$file" "''${!outputDev}/$file"
- done
- popd
- fi
+ fixQtModulePaths "''${!outputDev}/mkspecs/modules"
+ fixQtBuiltinPaths "''${!outputDev}" '*.pr?'
''
- # Move qmake project files into $dev.
- # Don't move .prl files on darwin because they end up in
- # "dev/lib/Foo.framework/Foo.prl" which interferes with subsequent
- # use of lndir in the qtbase setup-hook. On Linux, the .prl files
- # are in lib, and so do not cause a subsequent recreation of deep
- # framework directory trees.
- + lib.optionalString (!stdenv.isDarwin) ''
- if [ "z''${!outputLib}" != "z''${!outputDev}" ]; then
- pushd "''${!outputLib}"
- find lib -name '*.prl' | while read -r file; do
- mkdir -p "''${!outputDev}/$(dirname "$file")"
- mv "''${!outputLib}/$file" "''${!outputDev}/$file"
- done
- popd
- fi
+ # Move static libraries and QMake library definitions into $dev.
+ + ''
+ fixQtStaticLibs "''${!outputLib}" "''${!outputDev}"
+ ''
+
+ # Move development tools to $dev
+ + ''
+ moveQtDevTools
+ moveToOutput bin "$dev"
''
# fixup .pc file (where to find 'moc' etc.)
@@ -350,10 +382,7 @@ stdenv.mkDerivation {
fixDarwinDylibNames_rpath "QtConcurrent" "QtPrintSupport" "QtCore" "QtSql" "QtDBus" "QtTest" "QtGui" "QtWidgets" "QtNetwork" "QtXml" "QtOpenGL"
'';
- inherit lndir;
- setupHook = if stdenv.isDarwin
- then ../../qtbase-setup-hook-darwin.sh
- else ../../qtbase-setup-hook.sh;
+ setupHook = ../hooks/qtbase-setup-hook.sh;
meta = with lib; {
homepage = http://www.qt.io;
diff --git a/pkgs/development/libraries/qt-5/modules/qtcharts.nix b/pkgs/development/libraries/qt-5/modules/qtcharts.nix
new file mode 100644
index 00000000000..84d3a17ea8c
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtcharts.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase, qtdeclarative }:
+
+qtModule {
+ name = "qtcharts";
+ qtInputs = [ qtbase qtdeclarative ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
new file mode 100644
index 00000000000..d866edb052b
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtconnectivity.nix
@@ -0,0 +1,8 @@
+{ qtModule, qtbase, qtdeclarative, bluez }:
+
+qtModule {
+ name = "qtconnectivity";
+ qtInputs = [ qtbase qtdeclarative ];
+ buildInputs = [ bluez ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix b/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
new file mode 100644
index 00000000000..fc0a751f48a
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtdeclarative.nix
@@ -0,0 +1,25 @@
+{ qtModule, lib, python2, qtbase, qtsvg, qtxmlpatterns }:
+
+with lib;
+
+qtModule {
+ name = "qtdeclarative";
+ qtInputs = [ qtbase qtsvg qtxmlpatterns ];
+ nativeBuildInputs = [ python2 ];
+ outputs = [ "out" "dev" "bin" ];
+ preConfigure = ''
+ NIX_CFLAGS_COMPILE+=" -DNIXPKGS_QML2_IMPORT_PREFIX=\"$qtQmlPrefix\""
+ '';
+ devTools = [
+ "bin/qml"
+ "bin/qmlcachegen"
+ "bin/qmleasing"
+ "bin/qmlimportscanner"
+ "bin/qmllint"
+ "bin/qmlmin"
+ "bin/qmlplugindump"
+ "bin/qmlprofiler"
+ "bin/qmlscene"
+ "bin/qmltestrunner"
+ ];
+}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtdoc.nix b/pkgs/development/libraries/qt-5/modules/qtdoc.nix
similarity index 62%
rename from pkgs/development/libraries/qt-5/5.9/qtdoc.nix
rename to pkgs/development/libraries/qt-5/modules/qtdoc.nix
index 7f979ee94c0..10623962c43 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtdoc.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtdoc.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qtdeclarative }:
+{ qtModule, qtdeclarative }:
-qtSubmodule {
+qtModule {
name = "qtdoc";
qtInputs = [ qtdeclarative ];
outputs = [ "out" ];
diff --git a/pkgs/development/libraries/qt-5/5.9/qtgraphicaleffects.nix b/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
similarity index 51%
rename from pkgs/development/libraries/qt-5/5.9/qtgraphicaleffects.nix
rename to pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
index 3273f12eb83..888f627baab 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtgraphicaleffects.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtgraphicaleffects.nix
@@ -1,6 +1,7 @@
-{ qtSubmodule, qtdeclarative }:
+{ qtModule, qtdeclarative }:
-qtSubmodule {
+qtModule {
name = "qtgraphicaleffects";
qtInputs = [ qtdeclarative ];
+ outputs = [ "out" ];
}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtimageformats.nix b/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
similarity index 58%
rename from pkgs/development/libraries/qt-5/5.9/qtimageformats.nix
rename to pkgs/development/libraries/qt-5/modules/qtimageformats.nix
index 03d0fffbe80..1a7726070be 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtimageformats.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtimageformats.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qtbase }:
+{ qtModule, qtbase }:
-qtSubmodule {
+qtModule {
name = "qtimageformats";
qtInputs = [ qtbase ];
}
diff --git a/pkgs/development/libraries/qt-5/modules/qtlocation.nix b/pkgs/development/libraries/qt-5/modules/qtlocation.nix
new file mode 100644
index 00000000000..008583ebaf9
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtlocation.nix
@@ -0,0 +1,9 @@
+{ qtModule, qtbase, qtmultimedia }:
+
+qtModule {
+ name = "qtlocation";
+ qtInputs = [ qtbase qtmultimedia ];
+ outputs = [ "bin" "out" "dev" ];
+ # Linking with -lclipper fails with parallel build enabled
+ enableParallelBuilding = false;
+}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtmacextras.nix b/pkgs/development/libraries/qt-5/modules/qtmacextras.nix
similarity index 78%
rename from pkgs/development/libraries/qt-5/5.9/qtmacextras.nix
rename to pkgs/development/libraries/qt-5/modules/qtmacextras.nix
index 582294cc7f7..5a3b1fe35cd 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtmacextras.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtmacextras.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qtbase, lib }:
+{ qtModule, qtbase, lib }:
-qtSubmodule {
+qtModule {
name = "qtmacextras";
qtInputs = [ qtbase ];
meta = with lib; {
diff --git a/pkgs/development/libraries/qt-5/5.9/qtmultimedia.nix b/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
similarity index 70%
rename from pkgs/development/libraries/qt-5/5.9/qtmultimedia.nix
rename to pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
index 1c728b036ad..1b7a7c1fcea 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtmultimedia.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtmultimedia.nix
@@ -1,11 +1,11 @@
-{ stdenv, qtSubmodule, qtbase, qtdeclarative, pkgconfig
+{ qtModule, stdenv, qtbase, qtdeclarative, pkgconfig
, alsaLib, gstreamer, gst-plugins-base, libpulseaudio
, darwin
}:
with stdenv.lib;
-qtSubmodule {
+qtModule {
name = "qtmultimedia";
qtInputs = [ qtbase qtdeclarative ];
nativeBuildInputs = [ pkgconfig ];
@@ -14,8 +14,4 @@ qtSubmodule {
outputs = [ "bin" "dev" "out" ];
qmakeFlags = [ "GST_VERSION=1.0" ];
NIX_LDFLAGS = optionalString (stdenv.isDarwin) "-lobjc";
- postInstall = ''
- moveToOutput "$qtPluginPrefix" "$bin"
- moveToOutput "$qtQmlPrefix" "$bin"
- '';
}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtquickcontrols.nix b/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
similarity index 57%
rename from pkgs/development/libraries/qt-5/5.9/qtquickcontrols.nix
rename to pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
index 93a864621b8..ba0f20bc0d8 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtquickcontrols.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtquickcontrols.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qtdeclarative }:
+{ qtModule, qtdeclarative }:
-qtSubmodule {
+qtModule {
name = "qtquickcontrols";
qtInputs = [ qtdeclarative ];
}
diff --git a/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix b/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix
new file mode 100644
index 00000000000..a9522f4b1f0
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtdeclarative }:
+
+qtModule {
+ name = "qtquickcontrols2";
+ qtInputs = [ qtdeclarative ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtscript.nix b/pkgs/development/libraries/qt-5/modules/qtscript.nix
new file mode 100644
index 00000000000..5a1a462a964
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtscript.nix
@@ -0,0 +1,6 @@
+{ qtModule, qtbase, qttools }:
+
+qtModule {
+ name = "qtscript";
+ qtInputs = [ qtbase qttools ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtsensors.nix b/pkgs/development/libraries/qt-5/modules/qtsensors.nix
new file mode 100644
index 00000000000..3b8732b6885
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtsensors.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase, qtdeclarative }:
+
+qtModule {
+ name = "qtsensors";
+ qtInputs = [ qtbase qtdeclarative ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtserialport/default.nix b/pkgs/development/libraries/qt-5/modules/qtserialport.nix
similarity index 55%
rename from pkgs/development/libraries/qt-5/5.9/qtserialport/default.nix
rename to pkgs/development/libraries/qt-5/modules/qtserialport.nix
index 925e8a808f2..2f8c142323d 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtserialport/default.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtserialport.nix
@@ -1,11 +1,10 @@
-{ stdenv, qtSubmodule, lib, copyPathsToStore, qtbase, substituteAll, systemd }:
+{ qtModule, stdenv, lib, qtbase, substituteAll, systemd }:
let inherit (lib) getLib optional; in
-qtSubmodule {
+qtModule {
name = "qtserialport";
qtInputs = [ qtbase ];
- patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
NIX_CFLAGS_COMPILE =
optional stdenv.isLinux
''-DNIXPKGS_LIBUDEV="${getLib systemd}/lib/libudev"'';
diff --git a/pkgs/development/libraries/qt-5/modules/qtsvg.nix b/pkgs/development/libraries/qt-5/modules/qtsvg.nix
new file mode 100644
index 00000000000..3ce68e56e41
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtsvg.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase }:
+
+qtModule {
+ name = "qtsvg";
+ qtInputs = [ qtbase ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qttools.nix b/pkgs/development/libraries/qt-5/modules/qttools.nix
new file mode 100644
index 00000000000..ae6bd18cb14
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qttools.nix
@@ -0,0 +1,34 @@
+{ qtModule, lib, qtbase }:
+
+with lib;
+
+qtModule {
+ name = "qttools";
+ qtInputs = [ qtbase ];
+ outputs = [ "out" "dev" "bin" ];
+
+ # fixQtBuiltinPaths overwrites a builtin path we should keep
+ postPatch = ''
+ sed -i "src/linguist/linguist.pro" \
+ -e '/^cmake_linguist_config_version_file.input =/ s|$$\[QT_HOST_DATA.*\]|${getDev qtbase}|'
+ '';
+
+ devTools = [
+ "bin/qcollectiongenerator"
+ "bin/linguist"
+ "bin/assistant"
+ "bin/qdoc"
+ "bin/lconvert"
+ "bin/designer"
+ "bin/qtattributesscanner"
+ "bin/lrelease"
+ "bin/pixeltool"
+ "bin/lupdate"
+ "bin/qtdiag"
+ "bin/qhelpgenerator"
+ "bin/qtplugininfo"
+ "bin/qthelpconverter"
+ ];
+
+ setupHook = ../hooks/qttools-setup-hook.sh;
+}
diff --git a/pkgs/development/libraries/qt-5/5.9/qttranslations.nix b/pkgs/development/libraries/qt-5/modules/qttranslations.nix
similarity index 58%
rename from pkgs/development/libraries/qt-5/5.9/qttranslations.nix
rename to pkgs/development/libraries/qt-5/modules/qttranslations.nix
index 50fc8cf6826..11a6e3fedcb 100644
--- a/pkgs/development/libraries/qt-5/5.9/qttranslations.nix
+++ b/pkgs/development/libraries/qt-5/modules/qttranslations.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qttools }:
+{ qtModule, qttools }:
-qtSubmodule {
+qtModule {
name = "qttranslations";
qtInputs = [ qttools ];
}
diff --git a/pkgs/development/libraries/qt-5/modules/qtwayland.nix b/pkgs/development/libraries/qt-5/modules/qtwayland.nix
new file mode 100644
index 00000000000..c7a7704f283
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtwayland.nix
@@ -0,0 +1,9 @@
+{ qtModule, qtbase, qtquickcontrols, wayland, pkgconfig }:
+
+qtModule {
+ name = "qtwayland";
+ qtInputs = [ qtbase qtquickcontrols ];
+ buildInputs = [ wayland ];
+ nativeBuildInputs = [ pkgconfig ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix b/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix
new file mode 100644
index 00000000000..84fb88385a3
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtwebchannel.nix
@@ -0,0 +1,8 @@
+{ qtModule, qtbase, qtdeclarative }:
+
+qtModule {
+ name = "qtwebchannel";
+ qtInputs = [ qtbase qtdeclarative ];
+ outputs = [ "out" "dev" "bin" ];
+}
+
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
similarity index 84%
rename from pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix
rename to pkgs/development/libraries/qt-5/modules/qtwebengine.nix
index 58716f65738..4be72b08784 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebengine.nix
@@ -1,4 +1,5 @@
-{ qtSubmodule, qtquickcontrols, qtlocation, qtwebchannel
+{ qtModule, qtCompatVersion,
+ qtdeclarative, qtquickcontrols, qtlocation, qtwebchannel
, bison, coreutils, flex, git, gperf, ninja, pkgconfig, python2, which
@@ -18,9 +19,11 @@
with stdenv.lib;
-qtSubmodule {
+let qt56 = qtCompatVersion == "5.6"; in
+
+qtModule {
name = "qtwebengine";
- qtInputs = [ qtquickcontrols qtlocation qtwebchannel ];
+ qtInputs = [ qtdeclarative qtquickcontrols qtlocation qtwebchannel ];
nativeBuildInputs = [
bison coreutils flex git gperf ninja pkgconfig python2 which
];
@@ -38,9 +41,9 @@ qtSubmodule {
+ ''
substituteInPlace ./src/3rdparty/chromium/build/common.gypi \
--replace /bin/echo ${coreutils}/bin/echo
- substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/toolchain.gypi \
+ substituteInPlace ./src/3rdparty/chromium/v8/${if qt56 then "build" else "gypfiles"}/toolchain.gypi \
--replace /bin/echo ${coreutils}/bin/echo
- substituteInPlace ./src/3rdparty/chromium/v8/gypfiles/standalone.gypi \
+ substituteInPlace ./src/3rdparty/chromium/v8/${if qt56 then "build" else "gypfiles"}/standalone.gypi \
--replace /bin/echo ${coreutils}/bin/echo
''
# Patch library paths in Qt sources
@@ -62,6 +65,10 @@ qtSubmodule {
preConfigure = ''
export MAKEFLAGS=-j$NIX_BUILD_CORES
+
+ if [ -d "$PWD/tools/qmake" ]; then
+ QMAKEPATH="$PWD/tools/qmake''${QMAKEPATH:+:}$QMAKEPATH"
+ fi
'';
qmakeFlags =
@@ -99,7 +106,6 @@ qtSubmodule {
xlibs.xrandr libXScrnSaver libXcursor libXrandr xlibs.libpciaccess libXtst
xlibs.libXcomposite
];
- patches = optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
dontUseNinjaBuild = true;
dontUseNinjaInstall = true;
@@ -111,7 +117,5 @@ qtSubmodule {
EOF
paxmark m $out/libexec/QtWebEngineProcess
-
- moveToOutput "$qtQmlPrefix" "$bin"
'';
}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebkit/default.nix b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
similarity index 73%
rename from pkgs/development/libraries/qt-5/5.9/qtwebkit/default.nix
rename to pkgs/development/libraries/qt-5/modules/qtwebkit.nix
index 664281aac31..4dce9c4e22e 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtwebkit/default.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtwebkit.nix
@@ -1,5 +1,5 @@
-{ qtSubmodule, stdenv, copyPathsToStore, lib
-, qtdeclarative, qtlocation, qtsensors
+{ qtModule, stdenv, lib
+, qtbase, qtdeclarative, qtlocation, qtsensors
, fontconfig, gdk_pixbuf, gtk2, libwebp, libxml2, libxslt
, sqlite, systemd, glib, gst_all_1
, bison2, flex, gdb, gperf, perl, pkgconfig, python2, ruby
@@ -10,9 +10,9 @@
let inherit (lib) optional optionals getLib; in
-qtSubmodule {
+qtModule {
name = "qtwebkit";
- qtInputs = [ qtdeclarative qtlocation qtsensors ];
+ qtInputs = [ qtbase qtdeclarative qtlocation qtsensors ];
buildInputs = [ fontconfig libwebp libxml2 libxslt sqlite glib gst_all_1.gstreamer gst_all_1.gst-plugins-base ]
++ optionals (stdenv.isDarwin) (with darwin.apple_sdk.frameworks; [ OpenGL ]);
nativeBuildInputs = [
@@ -23,7 +23,12 @@ qtSubmodule {
"/usr/lib/libicucore.dylib"
];
- patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
+ # QtWebKit overrides qmake's default_pre and default_post features,
+ # so its custom qmake files must be found first at the front of QMAKEPATH.
+ preConfigure = ''
+ QMAKEPATH="$PWD/Tools/qmake''${QMAKEPATH:+:}$QMAKEPATH"
+ fixQtBuiltinPaths . '*.pr?'
+ '';
NIX_CFLAGS_COMPILE =
optionals flashplayerFix
diff --git a/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix b/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix
new file mode 100644
index 00000000000..ad5e7625f28
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtwebsockets.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase, qtdeclarative }:
+
+qtModule {
+ name = "qtwebsockets";
+ qtInputs = [ qtbase qtdeclarative ];
+ outputs = [ "out" "dev" "bin" ];
+}
diff --git a/pkgs/development/libraries/qt-5/5.9/qtx11extras.nix b/pkgs/development/libraries/qt-5/modules/qtx11extras.nix
similarity index 57%
rename from pkgs/development/libraries/qt-5/5.9/qtx11extras.nix
rename to pkgs/development/libraries/qt-5/modules/qtx11extras.nix
index a765161e2d7..4d431fee278 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtx11extras.nix
+++ b/pkgs/development/libraries/qt-5/modules/qtx11extras.nix
@@ -1,6 +1,6 @@
-{ qtSubmodule, qtbase }:
+{ qtModule, qtbase }:
-qtSubmodule {
+qtModule {
name = "qtx11extras";
qtInputs = [ qtbase ];
}
diff --git a/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix b/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix
new file mode 100644
index 00000000000..ee8ef617fc8
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix
@@ -0,0 +1,7 @@
+{ qtModule, qtbase }:
+
+qtModule {
+ name = "qtxmlpatterns";
+ qtInputs = [ qtbase ];
+ devTools = [ "bin/xmlpatterns" "bin/xmlpatternsvalidator" ];
+}
diff --git a/pkgs/development/libraries/qt-5/qmake-hook.sh b/pkgs/development/libraries/qt-5/qmake-hook.sh
deleted file mode 100644
index c70410975ec..00000000000
--- a/pkgs/development/libraries/qt-5/qmake-hook.sh
+++ /dev/null
@@ -1,47 +0,0 @@
-qmakeConfigurePhase() {
- runHook preConfigure
-
- qmake PREFIX=$out $qmakeFlags
-
- runHook postConfigure
-}
-
-if [ -z "$dontUseQmakeConfigure" -a -z "$configurePhase" ]; then
- configurePhase=qmakeConfigurePhase
-fi
-
-_qtModuleMultioutDevsPre() {
- # We cannot simply set these paths in configureFlags because libQtCore retains
- # references to the paths it was built with.
- moveToOutput "bin" "${!outputDev}"
- moveToOutput "include" "${!outputDev}"
-
- # The destination directory must exist or moveToOutput will do nothing
- mkdir -p "${!outputDev}/share"
- moveToOutput "share/doc" "${!outputDev}"
-}
-
-_qtModuleMultioutDevsPost() {
- local -a findopts=(-name '*.a' -o -name '*.la')
- if [ -z "@isDarwin@" ]; then
- findopts+=(-o -name '*.prl')
- fi
-
- # Move libtool archives and qmake project files to $dev/lib
- if [ "z${!outputLib}" != "z${!outputDev}" ]; then
- pushd "${!outputLib}"
- if [ -d "lib" ]; then
- find lib \( "${findopts[@]}" \) -print0 | \
- while read -r -d $'\0' file; do
- mkdir -p "${!outputDev}/$(dirname "$file")"
- mv "${!outputLib}/$file" "${!outputDev}/$file"
- done
- fi
- popd
- fi
-}
-
-if [ -n "$NIX_QT_SUBMODULE" ]; then
- preFixupHooks+=(_qtModuleMultioutDevsPre)
- postFixupHooks+=(_qtModuleMultioutDevsPost)
-fi
diff --git a/pkgs/development/libraries/qt-5/qtModule.nix b/pkgs/development/libraries/qt-5/qtModule.nix
new file mode 100644
index 00000000000..11e4ae1c26c
--- /dev/null
+++ b/pkgs/development/libraries/qt-5/qtModule.nix
@@ -0,0 +1,59 @@
+{ lib, mkDerivation, perl }:
+
+let inherit (lib) licenses maintainers platforms; in
+
+{ self, srcs, patches }:
+
+args:
+
+let
+ inherit (args) name;
+ version = args.version or srcs."${name}".version;
+ src = args.src or srcs."${name}".src;
+in
+
+mkDerivation (args // {
+ name = "${name}-${version}";
+ inherit src;
+ patches = args.patches or patches."${name}" or [];
+
+ nativeBuildInputs = (args.nativeBuildInputs or []) ++ [ perl self.qmake ];
+ propagatedBuildInputs = args.qtInputs ++ (args.propagatedBuildInputs or []);
+
+ outputs = args.outputs or [ "out" "dev" ];
+ setOutputFlags = args.setOutputFlags or false;
+
+ preHook = ''
+ . ${./hooks/move-qt-dev-tools.sh}
+ . ${./hooks/fix-qt-builtin-paths.sh}
+ '';
+
+ preConfigure = ''
+ ${args.preConfigure or ""}
+
+ fixQtBuiltinPaths . '*.pr?'
+ '';
+
+ postFixup = ''
+ if [ -d "''${!outputDev}/lib/pkgconfig" ]; then
+ find "''${!outputDev}/lib/pkgconfig" -name '*.pc' | while read pc; do
+ sed -i "$pc" \
+ -e "/^prefix=/ c prefix=''${!outputLib}" \
+ -e "/^exec_prefix=/ c exec_prefix=''${!outputBin}" \
+ -e "/^includedir=/ c includedir=''${!outputDev}/include"
+ done
+ fi
+
+ moveQtDevTools
+
+ ${args.postFixup or ""}
+ '';
+
+ meta = {
+ homepage = http://www.qt.io;
+ description = "A cross-platform application framework for C++";
+ license = with licenses; [ fdl13 gpl2 lgpl21 lgpl3 ];
+ maintainers = with maintainers; [ qknight ttuegel periklis ];
+ platforms = platforms.unix;
+ } // (args.meta or {});
+})
diff --git a/pkgs/development/libraries/qt-5/qtbase-setup-hook-darwin.sh b/pkgs/development/libraries/qt-5/qtbase-setup-hook-darwin.sh
deleted file mode 100644
index 3f6a00dc1a1..00000000000
--- a/pkgs/development/libraries/qt-5/qtbase-setup-hook-darwin.sh
+++ /dev/null
@@ -1,192 +0,0 @@
-qtPluginPrefix=@qtPluginPrefix@
-qtQmlPrefix=@qtQmlPrefix@
-qtDocPrefix=@qtDocPrefix@
-
-_qtRmCMakeLink() {
- find "${!outputLib}" -name "*.cmake" -type l -delete
-}
-
-postInstallHooks+=(_qtRmCMakeLink)
-
-addToSearchPathOnceWithCustomDelimiter() {
- local delim="$1"
- local search="$2"
- local target="$3"
- local dirs
- local exported
- IFS="$delim" read -a dirs <<< "${!search}"
- local canonical
- if canonical=$(readlink -e "$target"); then
- for dir in ${dirs[@]}; do
- if [ "z$dir" == "z$canonical" ]; then exported=1; fi
- done
- if [ -z $exported ]; then
- eval "export ${search}=\"${!search}${!search:+$delim}$canonical\""
- fi
- fi
-}
-
-addToSearchPathOnce() {
- addToSearchPathOnceWithCustomDelimiter ':' "$@"
-}
-
-propagateOnce() {
- addToSearchPathOnceWithCustomDelimiter ' ' "$@"
-}
-
-_qtPropagate() {
- for dir in $qtPluginPrefix $qtQmlPrefix; do
- if [ -d "$1/$dir" ]; then
- propagateOnce propagatedBuildInputs "$1"
- break
- fi
- done
- addToSearchPathOnce QT_PLUGIN_PATH "$1/$qtPluginPrefix"
- addToSearchPathOnce QML2_IMPORT_PATH "$1/$qtQmlPrefix"
-}
-
-crossEnvHooks+=(_qtPropagate)
-
-_qtPropagateNative() {
- for dir in $qtPluginPrefix $qtQmlPrefix; do
- if [ -d "$1/$dir" ]; then
- propagateOnce propagatedNativeBuildInputs "$1"
- break
- fi
- done
- if [ -z "$crossConfig" ]; then
- addToSearchPathOnce QT_PLUGIN_PATH "$1/$qtPluginPrefix"
- addToSearchPathOnce QML2_IMPORT_PATH "$1/$qtQmlPrefix"
- fi
-}
-
-envHooks+=(_qtPropagateNative)
-
-_qtMultioutDevs() {
- # This is necessary whether the package is a Qt module or not
- moveToOutput "mkspecs" "${!outputDev}"
-}
-
-preFixupHooks+=(_qtMultioutDevs)
-
-_qtSetCMakePrefix() {
- export CMAKE_PREFIX_PATH="$NIX_QT5_TMP${CMAKE_PREFIX_PATH:+:}${CMAKE_PREFIX_PATH}"
-}
-
-_qtRmTmp() {
- if [ -z "$NIX_QT_SUBMODULE" ]; then
- rm -fr "$NIX_QT5_TMP"
- else
- cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read file; do
- if [ ! -d "$NIX_QT5_TMP/$file" ]; then
- rm -f "$NIX_QT5_TMP/$file"
- fi
- done
-
- cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read dir; do
- if [ -d "$NIX_QT5_TMP/$dir" ]; then
- rmdir --ignore-fail-on-non-empty -p "$NIX_QT5_TMP/$dir"
- fi
- done
-
- rm "$NIX_QT5_TMP/nix-support/qt-inputs"
- fi
-}
-
-_qtSetQmakePath() {
- export PATH="$NIX_QT5_TMP/bin${PATH:+:}$PATH"
-}
-
-if [ -z "$NIX_QT5_TMP" ]; then
- if [ -z "$NIX_QT_SUBMODULE" ]; then
- NIX_QT5_TMP=$(pwd)/.nix_qt5
- else
- NIX_QT5_TMP=$out
- fi
- postInstallHooks+=(_qtRmTmp)
-
- mkdir -p "$NIX_QT5_TMP/nix-support"
- for subdir in bin include mkspecs share; do
- mkdir -p "$NIX_QT5_TMP/$subdir"
- echo "$subdir/" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
- done
- mkdir -p "$NIX_QT5_TMP/lib"
-
- postHooks+=(_qtSetCMakePrefix)
-
- ln -sf "@dev@/bin/qmake" "$NIX_QT5_TMP/bin"
- echo "bin/qmake" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
-
- cat >"$NIX_QT5_TMP/bin/qt.conf" <> "$NIX_QT5_TMP/nix-support/qt-inputs"
-
- export QMAKE="$NIX_QT5_TMP/bin/qmake"
-
- # Set PATH to find qmake first in a preConfigure hook
- # It must run after all the envHooks!
- preConfigureHooks+=(_qtSetQmakePath)
-fi
-
-qt5LinkModuleDir() {
- if [ -d "$1/$2" ]; then
- @lndir@/bin/lndir -silent "$1/$2" "$NIX_QT5_TMP/$2"
- find "$1/$2" -printf "$2/%P\n" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
- fi
-}
-
-qt5LinkDarwinModuleLibDir() {
- for fw in $(find "$1"/lib -maxdepth 1 -name '*.framework'); do
- if [ ! -L "$fw" ]; then
- ln -s "$fw" "$NIX_QT5_TMP"/lib
- fi
- done
- for file in $(find "$1"/lib -maxdepth 1 -type f); do
- if [ ! -L "$file" ]; then
- ln -s "$file" "$NIX_QT5_TMP"/lib
- fi
- done
- for dir in $(find "$1"/lib -maxdepth 1 -mindepth 1 -type d ! -name '*.framework'); do
- mkdir -p "$NIX_QT5_TMP"/lib/$(basename "$dir")
- @lndir@/bin/lndir -silent "$dir" "$NIX_QT5_TMP"/lib/$(basename "$dir")
- done
-}
-
-NIX_QT5_MODULES="${NIX_QT5_MODULES}${NIX_QT5_MODULES:+:}@out@"
-NIX_QT5_MODULES_DEV="${NIX_QT5_MODULES_DEV}${NIX_QT5_MODULES_DEV:+:}@dev@"
-
-_qtLinkAllModules() {
- IFS=: read -a modules <<< $NIX_QT5_MODULES
- for module in ${modules[@]}; do
- qt5LinkDarwinModuleLibDir "$module"
- done
-
- IFS=: read -a modules <<< $NIX_QT5_MODULES_DEV
- for module in ${modules[@]}; do
- qt5LinkModuleDir "$module" "bin"
- qt5LinkModuleDir "$module" "include"
- qt5LinkDarwinModuleLibDir "$module"
- qt5LinkModuleDir "$module" "mkspecs"
- qt5LinkModuleDir "$module" "share"
- done
-}
-
-preConfigureHooks+=(_qtLinkAllModules)
-
-_qtFixCMakePaths() {
- find "${!outputLib}" -name "*.cmake" | while read file; do
- substituteInPlace "$file" \
- --subst-var-by NIX_OUT "${!outputLib}" \
- --subst-var-by NIX_DEV "${!outputDev}" \
- --subst-var-by NIX_BIN "${!outputBin}"
- done
-}
-
-if [ -n "$NIX_QT_SUBMODULE" ]; then
- postInstallHooks+=(_qtFixCMakePaths)
-fi
diff --git a/pkgs/development/libraries/qt-5/qtbase-setup-hook.sh b/pkgs/development/libraries/qt-5/qtbase-setup-hook.sh
deleted file mode 100644
index e4ef456bf97..00000000000
--- a/pkgs/development/libraries/qt-5/qtbase-setup-hook.sh
+++ /dev/null
@@ -1,155 +0,0 @@
-qtPluginPrefix=@qtPluginPrefix@
-qtQmlPrefix=@qtQmlPrefix@
-qtDocPrefix=@qtDocPrefix@
-
-NIX_QT5_MODULES="${NIX_QT5_MODULES}${NIX_QT5_MODULES:+:}@out@"
-NIX_QT5_MODULES_DEV="${NIX_QT5_MODULES_DEV}${NIX_QT5_MODULES_DEV:+:}@dev@"
-
-providesQtRuntime() {
- [ -d "$1/$qtPluginPrefix" ] || [ -d "$1/$qtQmlPrefix" ]
-}
-
-# Propagate any runtime dependency of the building package.
-# Each dependency is propagated to the user environment and as a build
-# input so that it will be re-propagated to the user environment by any
-# package depending on the building package. (This is necessary in case
-# the building package does not provide runtime dependencies itself and so
-# would not be propagated to the user environment.)
-_qtCrossEnvHook() {
- if providesQtRuntime "$1"; then
- propagatedBuildInputs+=" $1"
- propagatedUserEnvPkgs+=" $1"
- fi
-}
-if [ -z "$NIX_QT5_TMP" ]; then
- crossEnvHooks+=(_qtCrossEnvHook)
-fi
-
-_qtEnvHook() {
- if providesQtRuntime "$1"; then
- propagatedNativeBuildInputs+=" $1"
- if [ -z "$crossConfig" ]; then
- propagatedUserEnvPkgs+=" $1"
- fi
- fi
-}
-if [ -z "$NIX_QT5_TMP" ]; then
- envHooks+=(_qtEnvHook)
-fi
-
-_qtPreFixupHook() {
- moveToOutput "mkspecs" "${!outputDev}"
-}
-if [ -z "$NIX_QT5_TMP" ]; then
- preFixupHooks+=(_qtPreFixupHook)
-fi
-
-_qtPostInstallHook() {
- # Clean up temporary installation files created by this setup hook.
- # For building Qt modules, this is necessary to prevent including
- # dependencies in the output. For all other packages, this is necessary
- # to induce patchelf to remove the temporary paths from the RPATH of
- # dynamically-linked objects.
- if [ -z "$NIX_QT_SUBMODULE" ]; then
- rm -fr "$NIX_QT5_TMP"
- else
- cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read file; do
- if [ ! -d "$NIX_QT5_TMP/$file" ]; then
- rm -f "$NIX_QT5_TMP/$file"
- fi
- done
-
- cat "$NIX_QT5_TMP/nix-support/qt-inputs" | while read dir; do
- if [ -d "$NIX_QT5_TMP/$dir" ]; then
- rmdir --ignore-fail-on-non-empty -p "$NIX_QT5_TMP/$dir"
- fi
- done
-
- rm "$NIX_QT5_TMP/nix-support/qt-inputs"
- fi
-
- # Patch CMake modules
- if [ -n "$NIX_QT_SUBMODULE" ]; then
- find "${!outputLib}" -name "*.cmake" | while read file; do
- substituteInPlace "$file" \
- --subst-var-by NIX_OUT "${!outputLib}" \
- --subst-var-by NIX_DEV "${!outputDev}" \
- --subst-var-by NIX_BIN "${!outputBin}"
- done
- fi
-}
-if [ -z "$NIX_QT5_TMP" ]; then
- preConfigureHooks+=(_qtPreConfigureHook)
-fi
-
-_qtLinkModuleDir() {
- if [ -d "$1/$2" ]; then
- @lndir@/bin/lndir -silent "$1/$2" "$NIX_QT5_TMP/$2"
- find "$1/$2" -printf "$2/%P\n" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
- fi
-}
-
-_qtPreConfigureHook() {
- # Find the temporary qmake executable first.
- # This must run after all the environment hooks!
- export PATH="$NIX_QT5_TMP/bin${PATH:+:}$PATH"
-
- # Link all runtime module dependencies into the temporary directory.
- IFS=: read -a modules <<< $NIX_QT5_MODULES
- for module in ${modules[@]}; do
- _qtLinkModuleDir "$module" "lib"
- done
-
- # Link all the build-time module dependencies into the temporary directory.
- IFS=: read -a modules <<< $NIX_QT5_MODULES_DEV
- for module in ${modules[@]}; do
- _qtLinkModuleDir "$module" "bin"
- _qtLinkModuleDir "$module" "include"
- _qtLinkModuleDir "$module" "lib"
- _qtLinkModuleDir "$module" "mkspecs"
- _qtLinkModuleDir "$module" "share"
- done
-}
-if [ -z "$NIX_QT5_TMP" ]; then
- postInstallHooks+=(_qtPostInstallHook)
-fi
-
-if [ -z "$NIX_QT5_TMP" ]; then
- if [ -z "$NIX_QT_SUBMODULE" ]; then
- if [ -z "$IN_NIX_SHELL" ]; then
- NIX_QT5_TMP=$(pwd)/__nix_qt5__
- else
- NIX_QT5_TMP=$(mktemp -d)
- fi
- else
- NIX_QT5_TMP=$out
- fi
-
- mkdir -p "$NIX_QT5_TMP/nix-support"
- for subdir in bin include lib mkspecs share; do
- mkdir -p "$NIX_QT5_TMP/$subdir"
- echo "$subdir/" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
- done
-
- cp "@dev@/bin/qmake" "$NIX_QT5_TMP/bin"
- echo "bin/qmake" >> "$NIX_QT5_TMP/nix-support/qt-inputs"
-
- cat >"$NIX_QT5_TMP/bin/qt.conf" <> "$NIX_QT5_TMP/nix-support/qt-inputs"
-
- export QMAKE="$NIX_QT5_TMP/bin/qmake"
-fi
-
-_qtShellCleanupHook () {
- rm -fr $NIX_QT5_TMP
-}
-
-if [ -n "$IN_NIX_SHELL" ]; then
- trap _qtShellCleanupHook EXIT
-fi
diff --git a/pkgs/development/libraries/qt-5/qtsubmodule-setup-hook.sh b/pkgs/development/libraries/qt-5/qtsubmodule-setup-hook.sh
deleted file mode 100644
index e41433c1138..00000000000
--- a/pkgs/development/libraries/qt-5/qtsubmodule-setup-hook.sh
+++ /dev/null
@@ -1,2 +0,0 @@
-NIX_QT5_MODULES="${NIX_QT5_MODULES}${NIX_QT5_MODULES:+:}@out@"
-NIX_QT5_MODULES_DEV="${NIX_QT5_MODULES_DEV}${NIX_QT5_MODULES_DEV:+:}@dev@"
diff --git a/pkgs/development/libraries/qtstyleplugins/default.nix b/pkgs/development/libraries/qtstyleplugins/default.nix
index 1be83731f20..a8611b31240 100644
--- a/pkgs/development/libraries/qtstyleplugins/default.nix
+++ b/pkgs/development/libraries/qtstyleplugins/default.nix
@@ -13,11 +13,6 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [ gtk2 ];
- installPhase = ''
- make INSTALL_ROOT=$NIX_QT5_TMP install
- mv $NIX_QT5_TMP/$NIX_QT5_TMP $out
- '';
-
meta = with stdenv.lib; {
description = "Additional style plugins for Qt5, including BB10, GTK+, Cleanlooks, Motif, Plastique";
homepage = http://blog.qt.io/blog/2012/10/30/cleaning-up-styles-in-qt5-and-adding-fusion/;
diff --git a/pkgs/development/libraries/wlc/default.nix b/pkgs/development/libraries/wlc/default.nix
index 7fcf4fbbe5f..02066253d0f 100644
--- a/pkgs/development/libraries/wlc/default.nix
+++ b/pkgs/development/libraries/wlc/default.nix
@@ -5,28 +5,18 @@
, withOptionalPackages ? true, zlib, valgrind, doxygen
}:
-let
- # for 0.0.10
- xwaylandPatch = fetchpatch {
- url = "https://github.com/Cloudef/wlc/commit/a130f6006560fb8ac02fb59a90ced1659563f9ca.diff";
- sha256 = "0kzcbqklcyg8bganm65di8cif6dpc8bkrsvkjia09kr92lymxm2c";
- };
-in stdenv.mkDerivation rec {
+stdenv.mkDerivation rec {
name = "wlc-${version}";
- version = "0.0.10";
+ version = "0.0.11";
src = fetchFromGitHub {
owner = "Cloudef";
repo = "wlc";
rev = "v${version}";
fetchSubmodules = true;
- sha256 = "09kvwhrpgkxlagn9lgqxc80jbg56djn29a6z0n6h0dsm90ysyb2k";
+ sha256 = "1qnak907gjd35hq4b0rrhgb7kz5iwnirh8yk372yzxpgk7dq0gz9";
};
- patches = [
- xwaylandPatch
- ];
-
nativeBuildInputs = [ cmake pkgconfig ];
buildInputs = [
diff --git a/pkgs/development/python-modules/meliae/default.nix b/pkgs/development/python-modules/meliae/default.nix
index 2a1c4f4341f..ec6c15b2501 100644
--- a/pkgs/development/python-modules/meliae/default.nix
+++ b/pkgs/development/python-modules/meliae/default.nix
@@ -8,7 +8,7 @@
buildPythonPackage rec {
pname = "meliae";
- version = "0.4.0.final.0";
+ version = "0.4.0";
name = "${pname}-${version}";
src = fetchPypi {
diff --git a/pkgs/development/python-modules/natsort/default.nix b/pkgs/development/python-modules/natsort/default.nix
index bd48ad2559c..7041768c209 100644
--- a/pkgs/development/python-modules/natsort/default.nix
+++ b/pkgs/development/python-modules/natsort/default.nix
@@ -1,6 +1,8 @@
{ lib
, buildPythonPackage
, pythonOlder
+, isPy35
+, isPy36
, fetchPypi
, hypothesis
, pytestcache
@@ -38,7 +40,8 @@ buildPythonPackage rec {
};
# do not run checks on nix_run_setup.py
- patches = [ ./setup.patch ];
+ patches = lib.singleton ./setup.patch
+ ++ lib.optional (isPy35 || isPy36) ./python-3.6.3-test-failures.patch;
# testing based on project's tox.ini
checkPhase = ''
diff --git a/pkgs/development/python-modules/natsort/python-3.6.3-test-failures.patch b/pkgs/development/python-modules/natsort/python-3.6.3-test-failures.patch
new file mode 100644
index 00000000000..b304a1d11e5
--- /dev/null
+++ b/pkgs/development/python-modules/natsort/python-3.6.3-test-failures.patch
@@ -0,0 +1,37 @@
+diff --git a/test_natsort/test_string_component_transform_factory.py b/test_natsort/test_string_component_transform_factory.py
+index 6790e51..8db4efb 100644
+--- a/test_natsort/test_string_component_transform_factory.py
++++ b/test_natsort/test_string_component_transform_factory.py
+@@ -24,6 +24,8 @@ from hypothesis.strategies import (
+ )
+ from compat.locale import bad_uni_chars
+
++import pytest
++
+
+ # Each test has an "example" version for demonstrative purposes,
+ # and a test that uses the hypothesis module.
+@@ -77,6 +79,7 @@ def test_string_component_transform_factory_with_LOCALE_returns_fast_int_and_gro
+ assert _string_component_transform_factory(ns.LOCALE)(x) == fast_int(x, key=get_strxfrm())
+
+
++@pytest.mark.xfail
+ @given(text())
+ def test_string_component_transform_factory_with_LOCALE_returns_fast_int_and_groupletters(x):
+ assume(x)
+@@ -89,6 +92,7 @@ def test_string_component_transform_factory_with_LOCALE_and_GROUPLETTERS_returns
+ assert _string_component_transform_factory(ns.GROUPLETTERS | ns.LOCALE)(x) == fast_int(x, key=lambda x: get_strxfrm()(_groupletters(x)))
+
+
++@pytest.mark.xfail
+ @given(text())
+ def test_string_component_transform_factory_with_LOCALE_and_GROUPLETTERS_returns_fast_int_and_groupletters_and_locale_convert(x):
+ assume(x)
+@@ -104,6 +108,7 @@ def test_string_component_transform_factory_with_LOCALE_and_DUMB_returns_fast_in
+ assert _string_component_transform_factory(ns._DUMB | ns.LOCALE)(x) == fast_int(x, key=lambda x: get_strxfrm()(_groupletters(x)))
+
+
++@pytest.mark.xfail
+ @given(text())
+ def test_string_component_transform_factory_with_LOCALE_and_DUMB_returns_fast_int_and_groupletters_and_locale_convert(x):
+ assume(x)
diff --git a/pkgs/development/python-modules/pyqt/5.x.nix b/pkgs/development/python-modules/pyqt/5.x.nix
index 9b3700bcd2a..9c1489aba02 100644
--- a/pkgs/development/python-modules/pyqt/5.x.nix
+++ b/pkgs/development/python-modules/pyqt/5.x.nix
@@ -45,7 +45,6 @@ in buildPythonPackage {
${python.executable} configure.py -w \
--confirm-license \
--dbus=${dbus_libs.dev}/include/dbus-1.0 \
- --qmake=$QMAKE \
--no-qml-plugin \
--bindir=$out/bin \
--destdir=$out/${python.sitePackages} \
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 803bd70dbd8..2f794c583e5 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -3,14 +3,14 @@
with lib;
stdenv.mkDerivation rec {
- version = "0.58.0";
+ version = "0.59.0";
name = "flow-${version}";
src = fetchFromGitHub {
owner = "facebook";
repo = "flow";
rev = "v${version}";
- sha256 = "0s27zj3lx1mqpmfwqpvdcqpz9gzp40mbiy5hp5796pg7627spld5";
+ sha256 = "1i47k9dg3pawwkdccb57n6882q92jsmclk5ip2y6dv5hhv4s5z49";
};
installPhase = ''
diff --git a/pkgs/development/tools/misc/dbench/default.nix b/pkgs/development/tools/misc/dbench/default.nix
index a1c9c11d34d..a1c9e85a83a 100644
--- a/pkgs/development/tools/misc/dbench/default.nix
+++ b/pkgs/development/tools/misc/dbench/default.nix
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
buildInputs = [ autoconf popt zlib ];
+ patches = [
+ # patch has been also sent upstream and might be included in future versions
+ ./fix-missing-stdint.patch
+ ];
+
preConfigure = ''
./autogen.sh
configureFlagsArray+=("--datadir=$out/share/dbench")
diff --git a/pkgs/development/tools/misc/dbench/fix-missing-stdint.patch b/pkgs/development/tools/misc/dbench/fix-missing-stdint.patch
new file mode 100644
index 00000000000..96cb28e9e55
--- /dev/null
+++ b/pkgs/development/tools/misc/dbench/fix-missing-stdint.patch
@@ -0,0 +1,10 @@
+--- dbench-65b1987.org/libnfs.c 2017-11-08 12:25:39.652147989 +0000
++++ dbench-65b1987/libnfs.c 2017-11-08 12:26:20.269897054 +0000
+@@ -23,6 +23,7 @@
+ #include
+ #include
+ #include
++#include
+
+ #define discard_const(ptr) ((void *)((intptr_t)(ptr)))
+
diff --git a/pkgs/development/tools/phantomjs2/default.nix b/pkgs/development/tools/phantomjs2/default.nix
index ee5de04a782..1a6a4ca890c 100644
--- a/pkgs/development/tools/phantomjs2/default.nix
+++ b/pkgs/development/tools/phantomjs2/default.nix
@@ -104,10 +104,6 @@ in stdenv.mkDerivation rec {
--prefix PATH : ${stdenv.lib.makeBinPath [ qtbase ]}
'';
- preFixup = ''
- rm -r ../__nix_qt5__
- '';
-
meta = with stdenv.lib; {
description = "Headless WebKit with JavaScript API";
longDescription = ''
diff --git a/pkgs/development/tools/profiling/systemtap/default.nix b/pkgs/development/tools/profiling/systemtap/default.nix
index 89a1b5fe0aa..b397f02665b 100644
--- a/pkgs/development/tools/profiling/systemtap/default.nix
+++ b/pkgs/development/tools/profiling/systemtap/default.nix
@@ -1,5 +1,7 @@
{ fetchgit, pkgconfig, gettext, runCommand, makeWrapper
-, elfutils, kernel, gnumake, python2, pythonPackages, binutils }:
+, elfutils, kernel, gnumake, python2, pythonPackages
+}:
+
let
## fetchgit info
url = git://sourceware.org/git/systemtap.git;
@@ -55,5 +57,5 @@ in runCommand "systemtap-${kernel.version}-${version}" {
rm $out/bin/stap
makeWrapper $stapBuild/bin/stap $out/bin/stap \
--add-flags "-r $kernelBuildDir" \
- --prefix PATH : ${lib.makeBinPath [ stdenv.cc.cc binutils elfutils gnumake ]}
+ --prefix PATH : ${lib.makeBinPath [ stdenv.cc.cc stdenv.cc.bintools elfutils gnumake ]}
''
diff --git a/pkgs/games/anki/default.nix b/pkgs/games/anki/default.nix
index 4a531c07efd..e87e59637ed 100644
--- a/pkgs/games/anki/default.nix
+++ b/pkgs/games/anki/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
# "http://ankisrs.net/download/mirror/${name}.tgz"
# "http://ankisrs.net/download/mirror/archive/${name}.tgz"
];
- sha256 = "01h51rbnj0r6lmjnn2vzxzaf7mxkc0azmg1v4mvf4pkpsp50a7hr";
+ sha256 = "067bsidqzy1zc301i2pk4biwp2kwvgk4kydp5z5s551acinkbdgv";
};
pythonPath = [ pyqt4 sqlalchemy pyaudio beautifulsoup4 httplib2 ]
diff --git a/pkgs/games/brogue/default.nix b/pkgs/games/brogue/default.nix
index 814f4f6c82e..d48dc8e8006 100644
--- a/pkgs/games/brogue/default.nix
+++ b/pkgs/games/brogue/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, SDL, ncurses, libtcod, binutils }:
+{ stdenv, fetchurl, SDL, ncurses, libtcod }:
stdenv.mkDerivation rec {
name = "brogue-${version}";
diff --git a/pkgs/games/steam/runtime.nix b/pkgs/games/steam/runtime.nix
index 82fce93a66a..1fa17c32d6c 100644
--- a/pkgs/games/steam/runtime.nix
+++ b/pkgs/games/steam/runtime.nix
@@ -1,4 +1,4 @@
-{ stdenv, steamArch, fetchurl, writeText, python2, dpkg, binutils }:
+{ stdenv, steamArch, fetchurl, writeText, python2, dpkg }:
let input = builtins.getAttr steamArch (import ./runtime-generated.nix { inherit fetchurl; });
@@ -7,7 +7,7 @@ let input = builtins.getAttr steamArch (import ./runtime-generated.nix { inherit
in stdenv.mkDerivation {
name = "steam-runtime-2016-08-13";
- nativeBuildInputs = [ python2 dpkg binutils ];
+ nativeBuildInputs = [ python2 dpkg stdenv.cc.bintools ];
buildCommand = ''
mkdir -p $out
diff --git a/pkgs/games/uqm/3dovideo.nix b/pkgs/games/uqm/3dovideo.nix
index ca5a1197a32..0eb6e02eac5 100644
--- a/pkgs/games/uqm/3dovideo.nix
+++ b/pkgs/games/uqm/3dovideo.nix
@@ -41,9 +41,10 @@ in stdenv.mkDerivation {
sha256 = "044h0cl69r0kc43vk4n0akk0prwzb7inq324h5yfqb38sd4zkds1";
message = ''
In order to get the intro and ending sequences from the 3DO version, you
- need to have the original 3DO Star Control II CD. Create an image from the
- CD and use uqm3donix* to extract a tarball with the videos from it. The
- reason for this is because the 3DO uses its own proprietary disk format.
+ need to have the original 3DO Star Control II CD. Create an image from
+ the CD and use uqm3donix* to extract a tarball with the videos from it.
+ The reason for this is because the 3DO uses its own proprietary disk
+ format.
Save the file as videos.tar and use "nix-prefetch-url file://${name}" to
add it to the Nix store.
diff --git a/pkgs/games/uqm/default.nix b/pkgs/games/uqm/default.nix
index c6f4b57a033..d8dcdf6b7b6 100644
--- a/pkgs/games/uqm/default.nix
+++ b/pkgs/games/uqm/default.nix
@@ -1,6 +1,5 @@
-{ stdenv, fetchurl
-, pkgconfig, mesa
-, SDL, SDL_image, libpng, zlib, libvorbis, libogg, libmikmod, unzip
+{ stdenv, lib, fetchurl, pkgconfig, mesa
+, SDL, SDL_image, libpng, zlib, libvorbis, libogg, libmikmod
, use3DOVideos ? false, requireFile ? null, writeText ? null
, haskellPackages ? null
@@ -11,14 +10,12 @@
assert use3DOVideos -> requireFile != null && writeText != null
&& haskellPackages != null;
-with stdenv.lib;
-
let
videos = import ./3dovideo.nix {
inherit stdenv requireFile writeText fetchurl haskellPackages;
};
- remixPacks = imap1 (num: sha256: fetchurl rec {
+ remixPacks = lib.imap1 (num: sha256: fetchurl rec {
name = "uqm-remix-disc${toString num}.uqm";
url = "mirror://sourceforge/sc2/${name}";
inherit sha256;
@@ -53,14 +50,8 @@ in stdenv.mkDerivation rec {
sha256 = "10nbvcrr0lc0mxivxfkcbxnibwk3vwmamabrlvwdsjxd9pk8aw65";
};
-
- /* uses pthread_cancel(), which requires libgcc_s.so.1 to be
- loadable at run-time. Adding the flag below ensures that the
- library can be found. Obviously, though, this is a hack. */
- NIX_LDFLAGS="-lgcc_s";
-
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [SDL SDL_image libpng libvorbis libogg libmikmod unzip mesa];
+ buildInputs = [ SDL SDL_image libpng libvorbis libogg libmikmod mesa ];
postUnpack = ''
mkdir -p uqm-${version}/content/packages
@@ -68,15 +59,19 @@ in stdenv.mkDerivation rec {
ln -s "$content" "uqm-${version}/content/packages/uqm-0.7.0-content.uqm"
ln -s "$music" "uqm-${version}/content/addons/uqm-0.7.0-3domusic.uqm"
ln -s "$voice" "uqm-${version}/content/addons/uqm-0.7.0-voice.uqm"
- '' + optionalString useRemixPacks (concatMapStrings (disc: ''
+ '' + lib.optionalString useRemixPacks (lib.concatMapStrings (disc: ''
ln -s "${disc}" "uqm-$version/content/addons/${disc.name}"
- '') remixPacks) + optionalString use3DOVideos ''
+ '') remixPacks) + lib.optionalString use3DOVideos ''
ln -s "${videos}" "uqm-${version}/content/addons/3dovideo"
'';
- /* uqm has a 'unique' build system with a root script incidentally called
- * 'build.sh'. */
+ # Using _STRINGS_H as include guard conflicts with glibc.
+ postPatch = ''
+ sed -i -e '/^#/s/_STRINGS_H/_UQM_STRINGS_H/g' src/uqm/comm/*/strings.h
+ '';
+ # uqm has a 'unique' build system with a root script incidentally called
+ # 'build.sh'.
configurePhase = ''
echo "INPUT_install_prefix_VALUE='$out'" >> config.state
echo "INPUT_install_bindir_VALUE='$out/bin'" >> config.state
@@ -97,14 +92,16 @@ in stdenv.mkDerivation rec {
meta = {
description = "Remake of Star Control II";
longDescription = ''
- The goals for the The Ur-Quan Masters project are:
- - to bring Star Control II to modern platforms, thereby making a lot of people happy
- - to make game translations easy, thereby making even more people happy
- - to adapt the code so that people can more easily make their own spin-offs, thereby making zillions more people happy!
+ The goals for the The Ur-Quan Masters project are:
+ - to bring Star Control II to modern platforms, thereby making a lot of
+ people happy
+ - to make game translations easy, thereby making even more people happy
+ - to adapt the code so that people can more easily make their own
+ spin-offs, thereby making zillions more people happy!
'';
homepage = http://sc2.sourceforge.net/;
license = stdenv.lib.licenses.gpl2;
- maintainers = with maintainers; [ jcumming aszlig ];
- platforms = with platforms; linux;
+ maintainers = with lib.maintainers; [ jcumming aszlig ];
+ platforms = with lib.platforms; linux;
};
}
diff --git a/pkgs/os-specific/linux/android-udev-rules/default.nix b/pkgs/os-specific/linux/android-udev-rules/default.nix
index 28b17d7e69c..ffc723e55d2 100644
--- a/pkgs/os-specific/linux/android-udev-rules/default.nix
+++ b/pkgs/os-specific/linux/android-udev-rules/default.nix
@@ -6,13 +6,13 @@
stdenv.mkDerivation rec {
name = "android-udev-rules-${version}";
- version = "20171031";
+ version = "20171107";
src = fetchFromGitHub {
owner = "M0Rf30";
repo = "android-udev-rules";
rev = version;
- sha256 = "0h9rp1bmry81lybly9x7qjdmaq0sj0m1ybl237qly8zqw7ywv5la";
+ sha256 = "17al46an6yhjdpz9gxcxzv3zgzjy5c8yn89jwnjdhbq0gkw28nsy";
};
installPhase = ''
diff --git a/pkgs/os-specific/linux/ffado/default.nix b/pkgs/os-specific/linux/ffado/default.nix
index 1ca503f33ec..aa273ec613e 100644
--- a/pkgs/os-specific/linux/ffado/default.nix
+++ b/pkgs/os-specific/linux/ffado/default.nix
@@ -41,7 +41,10 @@ stdenv.mkDerivation rec {
optXdg_utils libxmlxx glibmm
];
- patches = [ ./gcc6.patch ];
+ patches = [
+ ./gcc6.patch
+ ./glibc226.patch
+ ];
postPatch = ''
# SConstruct checks cpuinfo and an objdump of /bin/mount to determine the appropriate arch
diff --git a/pkgs/os-specific/linux/ffado/glibc226.patch b/pkgs/os-specific/linux/ffado/glibc226.patch
new file mode 100644
index 00000000000..e147ee9aa76
--- /dev/null
+++ b/pkgs/os-specific/linux/ffado/glibc226.patch
@@ -0,0 +1,10 @@
+--- libffado/src/libutil/PosixMessageQueue.cpp (revision 2705)
++++ libffado/src/libutil/PosixMessageQueue.cpp (revision 2706)
+@@ -30,6 +30,7 @@
+ #include
+ #include
+ #include
++#include
+
+ #define MQ_INVALID_ID ((mqd_t) -1)
+ // one second
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index a528df26964..0f7ad055af8 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -573,6 +573,11 @@ with stdenv.lib;
''}
MEDIA_USB_SUPPORT y
MEDIA_PCI_SUPPORT y
+ MEDIA_ANALOG_TV_SUPPORT y
+ VIDEO_STK1160_COMMON m
+ ${optionalString (versionOlder version "4.11") ''
+ VIDEO_STK1160_AC97 y
+ ''}
# Our initrd init uses shebang scripts, so can't be modular.
BINFMT_SCRIPT y
diff --git a/pkgs/os-specific/linux/kernel/linux-4.13.nix b/pkgs/os-specific/linux/kernel/linux-4.13.nix
index bb40bbcb72e..d2144225833 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.13.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.13.nix
@@ -1,11 +1,11 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec {
- version = "4.13.11";
+ version = "4.13.12";
extraMeta.branch = "4.13";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "1vzl2i72c8iidhdc8a490npsbk7q7iphjqil4i9609disqw75gx4";
+ sha256 = "0x6yz5yb25789ky6hm55abja9374gcaqz06hg7rmmap3y1dhd65z";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.4.nix b/pkgs/os-specific/linux/kernel/linux-4.4.nix
index 3a49c348687..324d2e8291e 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.4.nix
@@ -1,11 +1,11 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec {
- version = "4.4.96";
+ version = "4.4.97";
extraMeta.branch = "4.4";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "1asvcqip5w9nkg4c5jllbjygski9cnw7qn6ci7p6zwnd2mfks794";
+ sha256 = "03hnm66nv7l1f21z893rghgpgghs1i2pxzhcahpi7d6nsm5mwqgq";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 7431694e362..86108f553b8 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,11 +1,11 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec {
- version = "4.9.60";
+ version = "4.9.61";
extraMeta.branch = "4.9";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
- sha256 = "015dzkrhadmr3kadz0m3yhjikkmga8dv90f6s5ji5i2ja5f6qchf";
+ sha256 = "17ni4skllgd24ddg1ifj1s9b5mqx38filrabgmlw7w4ff9src8z0";
};
} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
index 47ef31bd20a..55b40c9cd7d 100644
--- a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
+++ b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
@@ -3,9 +3,9 @@
with stdenv.lib;
let
- version = "4.13.11";
+ version = "4.13.12";
revision = "a";
- sha256 = "1nby5iii1k0vjvs1s2qvlszln2p9sza9ivbjjdhrmvpp1shzwcvx";
+ sha256 = "10zfdv0s5jdpp9nqbxi34wwf1pqh3fjflgcd60f7cbr95ivvkl9r";
# modVersion needs to be x.y.z, will automatically add .0 if needed
modVersion = concatStrings (intersperse "." (take 3 (splitString "." "${version}.0")));
diff --git a/pkgs/os-specific/linux/lxc/default.nix b/pkgs/os-specific/linux/lxc/default.nix
index f818d2c0d8c..2660f299262 100644
--- a/pkgs/os-specific/linux/lxc/default.nix
+++ b/pkgs/os-specific/linux/lxc/default.nix
@@ -29,6 +29,12 @@ stdenv.mkDerivation rec {
patches = [
./support-db2x.patch
+ # Fix build error against glibc 2.26
+ (fetchpatch {
+ url = "https://github.com/lxc/lxc/commit/"
+ + "180c477a326ce85632249ff16990e8c29db1b6fa.patch";
+ sha256 = "05jkiiixxk9ibj1fwzmy56rkkign28bd9mrmgiz12g92r2qahm2z";
+ })
];
postPatch = ''
diff --git a/pkgs/os-specific/linux/nfs-utils/default.nix b/pkgs/os-specific/linux/nfs-utils/default.nix
index 294dde2a0a6..e52174c0901 100644
--- a/pkgs/os-specific/linux/nfs-utils/default.nix
+++ b/pkgs/os-specific/linux/nfs-utils/default.nix
@@ -45,6 +45,8 @@ in stdenv.mkDerivation rec {
substituteInPlace utils/mount/Makefile.in \
--replace "chmod 4511" "chmod 0511"
+
+ sed '1i#include ' -i support/nsm/rpc.c
'';
makeFlags = [
diff --git a/pkgs/servers/asterisk/default.nix b/pkgs/servers/asterisk/default.nix
index 1bea8006e9f..c6cd9f3df4c 100644
--- a/pkgs/servers/asterisk/default.nix
+++ b/pkgs/servers/asterisk/default.nix
@@ -1,6 +1,6 @@
{ stdenv, pkgs, lib, fetchurl, fetchgit, fetchsvn, fetchpatch,
jansson, libxml2, libxslt, ncurses, openssl, sqlite,
- utillinux, dmidecode, libuuid, binutils, newt,
+ utillinux, dmidecode, libuuid, newt,
lua, speex,
srtp, wget, curl
}:
@@ -10,7 +10,7 @@ let
inherit version;
name = "asterisk-${version}";
- buildInputs = [ jansson libxml2 libxslt ncurses openssl sqlite utillinux dmidecode libuuid binutils newt lua speex srtp wget curl ];
+ buildInputs = [ jansson libxml2 libxslt ncurses openssl sqlite utillinux dmidecode libuuid newt lua speex srtp wget curl ];
patches = [
# We want the Makefile to install the default /var skeleton
diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix
index c99f939437b..2bfe929784b 100644
--- a/pkgs/servers/mattermost/default.nix
+++ b/pkgs/servers/mattermost/default.nix
@@ -1,22 +1,37 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, fetchFromGitHub, buildGoPackage }:
-stdenv.mkDerivation rec {
+buildGoPackage rec {
name = "mattermost-${version}";
- version = "4.1.0";
+ version = "4.3.0";
- src = fetchurl {
- url = "https://releases.mattermost.com/${version}/mattermost-team-${version}-linux-amd64.tar.gz";
- sha256 = "0bp56i108pxsqcswxy1hdz3d8wq83lc29wcq6npimwx566rx4xhf";
+ src = fetchFromGitHub {
+ owner = "mattermost";
+ repo = "mattermost-server";
+ rev = "v${version}";
+ sha256 = "05119h3x81p8plfjq99khfywc3plv2zynvf83vkhj48zqk61wvbq";
};
- installPhase = ''
- mkdir -p $out
- mv * $out/
- ln -s ./platform $out/bin/mattermost-platform
+ webApp = fetchurl {
+ url = "https://releases.mattermost.com/${version}/mattermost-team-${version}-linux-amd64.tar.gz";
+ sha256 = "0d30zj036nz6vwpiv0mn656j5r4br6y4x8iqc5jn785fiwk2pdls";
+ };
+
+ goPackagePath = "github.com/mattermost/mattermost-server";
+
+ buildPhase = ''
+ runHook preBuild
+ cd go/src/${goPackagePath}/cmd/platform
+ go install
+ runHook postBuild
'';
- postFixup = ''
- patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $out/bin/platform
+ preInstall = ''
+ mkdir -p $bin
+ tar --strip 1 -C $bin -xf $webApp
+ '';
+
+ postInstall = ''
+ ln -s $bin/bin/platform $bin/bin/mattermost-platform
'';
meta = with stdenv.lib; {
@@ -24,6 +39,6 @@ stdenv.mkDerivation rec {
homepage = https://www.mattermost.org;
license = with licenses; [ agpl3 asl20 ];
maintainers = with maintainers; [ fpletz ];
- platforms = [ "x86_64-linux" ];
+ platforms = platforms.unix;
};
}
diff --git a/pkgs/servers/openafs-client/default.nix b/pkgs/servers/openafs-client/default.nix
index 263df09ebb5..d7ed2849d60 100644
--- a/pkgs/servers/openafs-client/default.nix
+++ b/pkgs/servers/openafs-client/default.nix
@@ -1,5 +1,5 @@
{ stdenv, fetchurl, fetchgit, which, autoconf, automake, flex, yacc,
- kernel, glibc, ncurses, perl, kerberos }:
+ kernel, glibc, ncurses, perl, kerberos, fetchpatch }:
stdenv.mkDerivation rec {
name = "openafs-${version}-${kernel.version}";
@@ -16,6 +16,14 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "pic" ];
+ patches = [
+ (fetchpatch {
+ name = "fix-stdint-include.patch";
+ url = "http://git.openafs.org/?p=openafs.git;a=patch;h=c193e5cba18273a062d4162118c7055b54f7eb5e";
+ sha256 = "1yc4gygcazwsslf6mzk1ai92as5jbsjv7212jcbb2dw83jydhc09";
+ })
+ ];
+
preConfigure = ''
ln -s "${kernel.dev}/lib/modules/"*/build $TMP/linux
diff --git a/pkgs/stdenv/booter.nix b/pkgs/stdenv/booter.nix
index a1055708f99..7364a586fc2 100644
--- a/pkgs/stdenv/booter.nix
+++ b/pkgs/stdenv/booter.nix
@@ -47,13 +47,13 @@ stageFuns: let
same as
let
- f_-1 = lnul;
+ f_-1 = lnul f_0;
f_0 = op f_-1 x_0 f_1;
f_1 = op f_0 x_1 f_2;
f_2 = op f_1 x_2 f_3;
...
f_n = op f_n-1 x_n f_n+1;
- f_n+1 = rnul;
+ f_n+1 = rnul f_n;
in
f_0
*/
@@ -62,13 +62,15 @@ stageFuns: let
len = builtins.length list;
go = pred: n:
if n == len
- then rnul
+ then rnul pred
else let
# Note the cycle -- call-by-need ensures finite fold.
cur = op pred (builtins.elemAt list n) succ;
succ = go cur (n + 1);
in cur;
- in go lnul 0;
+ lapp = lnul cur;
+ cur = go lapp 0;
+ in cur;
# Take the list and disallow custom overrides in all but the final stage,
# and allow it in the final flag. Only defaults this boolean field if it
@@ -98,7 +100,18 @@ stageFuns: let
then args'
else allPackages ((builtins.removeAttrs args' ["selfBuild"]) // {
buildPackages = if args.selfBuild or true then null else prevStage;
- __targetPackages = if args.selfBuild or true then null else nextStage;
+ targetPackages = if args.selfBuild or true then null else nextStage;
});
-in dfold folder {} {} withAllowCustomOverrides
+ # This is a hack for resolving cross-compiled compilers' run-time
+ # deps. (That is, compilers that are themselves cross-compiled, as
+ # opposed to used to cross-compile packages.)
+ postStage = buildPackages: {
+ __raw = true;
+ stdenv.cc =
+ if buildPackages.stdenv.cc.isClang or false
+ then buildPackages.clang
+ else buildPackages.gcc;
+ };
+
+in dfold folder postStage (_: {}) withAllowCustomOverrides
diff --git a/pkgs/tools/audio/mpdas/default.nix b/pkgs/tools/audio/mpdas/default.nix
new file mode 100644
index 00000000000..70ae1f84643
--- /dev/null
+++ b/pkgs/tools/audio/mpdas/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchFromGitHub, pkgconfig, mpd_clientlib, curl }:
+
+stdenv.mkDerivation rec {
+ name = "mpdas-${version}";
+ version = "0.4.4";
+
+ src = fetchFromGitHub {
+ owner = "hrkfdn";
+ repo = "mpdas";
+ rev = version;
+ sha256 = "1i6i36jd582y3nm5plcrswqljf528hd23whp8zw06hwqnsgca5b6";
+ };
+
+ nativeBuildInputs = [ pkgconfig ];
+
+ buildInputs = [ mpd_clientlib curl ];
+
+ makeFlags = [ "CONFIG=/etc" "DESTDIR=" "PREFIX=$(out)" ];
+
+ meta = with stdenv.lib; {
+ description = "Music Player Daemon AudioScrobbler";
+ homepage = http://50hz.ws/mpdas/;
+ license = licenses.bsd3;
+ maintainers = [ maintainers.taketwo ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/tools/graphics/cuneiform/default.nix b/pkgs/tools/graphics/cuneiform/default.nix
index 7e639940d07..0a48e947a48 100644
--- a/pkgs/tools/graphics/cuneiform/default.nix
+++ b/pkgs/tools/graphics/cuneiform/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
})
];
+ postPatch = ''
+ rm cuneiform_src/Kern/hhh/tigerh/h/strings.h
+ '';
+
buildInputs = [ imagemagick ];
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/tools/graphics/gnuplot/default.nix b/pkgs/tools/graphics/gnuplot/default.nix
index 10170b41bbe..7594474538d 100644
--- a/pkgs/tools/graphics/gnuplot/default.nix
+++ b/pkgs/tools/graphics/gnuplot/default.nix
@@ -21,11 +21,11 @@ let
withX = libX11 != null && !aquaterm && !stdenv.isDarwin;
in
stdenv.mkDerivation rec {
- name = "gnuplot-5.2.0";
+ name = "gnuplot-5.2.1";
src = fetchurl {
url = "mirror://sourceforge/gnuplot/${name}.tar.gz";
- sha256 = "0hqyajcnlk822fk7hyl07sqk6a75n93awbdl3ydk9fd6l4jn9zkx";
+ sha256 = "123yh0ysahn71nlibsz5qkq18rlf18qqfhrlkvl925ijdgxv1ikx";
};
buildInputs =
diff --git a/pkgs/tools/misc/qt5ct/default.nix b/pkgs/tools/misc/qt5ct/default.nix
index 86750518bb5..9da2ebc07fc 100644
--- a/pkgs/tools/misc/qt5ct/default.nix
+++ b/pkgs/tools/misc/qt5ct/default.nix
@@ -1,5 +1,7 @@
{ stdenv, fetchurl, qtbase, qtsvg, qttools, qmake }:
+let inherit (stdenv.lib) getDev; in
+
stdenv.mkDerivation rec {
name = "qt5ct-${version}";
version = "0.33";
@@ -14,6 +16,8 @@ stdenv.mkDerivation rec {
buildInputs = [ qtbase qtsvg ];
+ qmakeFlags = [ ''LRELEASE_EXECUTABLE=${getDev qttools}/bin/lrelease'' ];
+
preConfigure = ''
qmakeFlags="$qmakeFlags PLUGINDIR=$out/$qtPluginPrefix"
'';
diff --git a/pkgs/tools/misc/rockbox-utility/default.nix b/pkgs/tools/misc/rockbox-utility/default.nix
index f84b9563967..32f5a551dfe 100644
--- a/pkgs/tools/misc/rockbox-utility/default.nix
+++ b/pkgs/tools/misc/rockbox-utility/default.nix
@@ -2,6 +2,8 @@
, qtbase, qttools, makeWrapper, qmake
, withEspeak ? false, espeak ? null }:
+let inherit (stdenv.lib) getDev; in
+
stdenv.mkDerivation rec {
name = "rockbox-utility-${version}";
version = "1.4.0";
@@ -15,6 +17,11 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional withEspeak espeak;
nativeBuildInputs = [ makeWrapper pkgconfig qmake ];
+ postPatch = ''
+ sed -i rbutil/rbutilqt/rbutilqt.pro \
+ -e '/^lrelease.commands =/ s|$$\[QT_INSTALL_BINS\]/lrelease -silent|${getDev qttools}/bin/lrelease|'
+ '';
+
preConfigure = ''
cd rbutil/rbutilqt
'';
diff --git a/pkgs/tools/networking/htpdate/default.nix b/pkgs/tools/networking/htpdate/default.nix
index d937f3c2f0b..47163b94dc5 100644
--- a/pkgs/tools/networking/htpdate/default.nix
+++ b/pkgs/tools/networking/htpdate/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
makeFlags = [
"INSTALL=install"
- "STRIP=strip"
+ "STRIP=${stdenv.cc.bintools.prefix}strip"
"prefix=$(out)"
];
diff --git a/pkgs/tools/networking/netsniff-ng/default.nix b/pkgs/tools/networking/netsniff-ng/default.nix
index 5ca3079a084..b0921375849 100644
--- a/pkgs/tools/networking/netsniff-ng/default.nix
+++ b/pkgs/tools/networking/netsniff-ng/default.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation rec {
sha256 = "1lz4hwgwdq3znlqjmvl7cw3g3ilbayn608h0hwqdf7v2jq6n67kg";
};
+ patches = [ ./glibc-2.26.patch ];
+
buildInputs = [ bison flex geoip geolite-legacy libcli libnet libnl
libnetfilter_conntrack libpcap libsodium liburcu ncurses perl
pkgconfig zlib ];
diff --git a/pkgs/tools/networking/netsniff-ng/glibc-2.26.patch b/pkgs/tools/networking/netsniff-ng/glibc-2.26.patch
new file mode 100644
index 00000000000..2ee7b478e9b
--- /dev/null
+++ b/pkgs/tools/networking/netsniff-ng/glibc-2.26.patch
@@ -0,0 +1,24 @@
+diff --git a/built_in.h b/built_in.h
+index da04dbd..7acc183 100644
+--- a/built_in.h
++++ b/built_in.h
+@@ -10,6 +10,7 @@
+ #include
+ #include
+ #include
++#include
+
+ typedef uint64_t u64;
+ typedef uint32_t u32;
+diff --git a/staging/tools.c b/staging/tools.c
+index 9d2d1be..909b059 100644
+--- a/staging/tools.c
++++ b/staging/tools.c
+@@ -55,6 +55,7 @@
+ ////////////////////////////////////////////////////////////////////////////////////////////
+
+ #include "mz.h"
++#include
+
+ #define CMP_INT(a, b) ((a) < (b) ? -1 : (a) > (b))
+ #define IPV6_MAX_RANGE_LEN strlen("ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff-ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff/128")
diff --git a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
index 901d84b4692..f63c1d474c0 100644
--- a/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
+++ b/pkgs/tools/networking/p2p/gtk-gnutella/default.nix
@@ -13,8 +13,8 @@ stdenv.mkDerivation {
sha256 = "1zvadgsskmpm82id9mbj24a2lyq38qv768ixv7nmfjl3d4wr2biv";
};
- nativeBuildInputs = [ bison binutils gettext pkgconfig ];
- buildInputs = [ glib gnutls gtk2 libxml2 zlib ];
+ nativeBuildInputs = [ bison gettext pkgconfig ];
+ buildInputs = [ binutils glib gnutls gtk2 libxml2 zlib ];
hardeningDisable = [ "bindnow" "fortify" "pic" "relro" ];
diff --git a/pkgs/tools/networking/reaver-wps-t6x/default.nix b/pkgs/tools/networking/reaver-wps-t6x/default.nix
index 2f0e19b231c..dd834771731 100644
--- a/pkgs/tools/networking/reaver-wps-t6x/default.nix
+++ b/pkgs/tools/networking/reaver-wps-t6x/default.nix
@@ -1,33 +1,24 @@
-{ stdenv, fetchFromGitHub, libpcap, sqlite, pixiewps, makeWrapper }:
+{ stdenv, fetchFromGitHub, libpcap, pixiewps, makeWrapper }:
stdenv.mkDerivation rec {
- version = "1.5.2";
+ version = "1.6.3";
name = "reaver-wps-t6x-${version}";
- confdir = "/var/db/${name}"; # the sqlite database is at "${confdir}/reaver/reaver.db"
src = fetchFromGitHub {
owner = "t6x";
repo = "reaver-wps-fork-t6x";
rev = "v${version}";
- sha256 = "0zhlms89ncqz1f1hc22yw9x1s837yv76f1zcjizhgn5h7vp17j4b";
+ sha256 = "1bccwp67q1q0h5m38gqxn9imq5rb75jbmv7fjr2n38v10jcga2pb";
};
nativeBuildInputs = [ makeWrapper ];
- buildInputs = [ libpcap sqlite pixiewps ];
+ buildInputs = [ libpcap pixiewps ];
- setSourceRoot = ''
- sourceRoot=$(echo */src)
- '';
-
- configureFlags = "--sysconfdir=${confdir}";
+ preConfigure = "cd src";
installPhase = ''
- mkdir -p $out/{bin,etc}
- cp reaver.db $out/etc/
+ mkdir -p $out/bin
cp reaver wash $out/bin/
-
- wrapProgram $out/bin/reaver --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db"
- wrapProgram $out/bin/wash --run "[ -s ${confdir}/reaver/reaver.db ] || install -D $out/etc/reaver.db ${confdir}/reaver/reaver.db"
'';
meta = with stdenv.lib; {
diff --git a/pkgs/tools/package-management/nixui/generate.sh b/pkgs/tools/package-management/nixui/generate.sh
index 915497208fa..e3a7d9f69e4 100755
--- a/pkgs/tools/package-management/nixui/generate.sh
+++ b/pkgs/tools/package-management/nixui/generate.sh
@@ -1,3 +1,3 @@
#!/bin/sh -e
-node2nix -i pkg.json -c nixui.nix -e ../../../development/node-packages/node-env.nix
+node2nix -i pkg.json -c nixui.nix -e ../../../development/node-packages/node-env.nix --no-copy-node-env
diff --git a/pkgs/tools/typesetting/pygmentex/default.nix b/pkgs/tools/typesetting/pygmentex/default.nix
index c19447cc0c4..fef6c9087c5 100644
--- a/pkgs/tools/typesetting/pygmentex/default.nix
+++ b/pkgs/tools/typesetting/pygmentex/default.nix
@@ -1,12 +1,14 @@
-{ stdenv, fetchzip, python2Packages }:
+{ stdenv, fetchFromBitbucket, python2Packages }:
python2Packages.buildPythonApplication rec {
name = "pygmentex-${version}";
version = "0.8";
- src = fetchzip {
- url = "http://mirrors.ctan.org/macros/latex/contrib/pygmentex.zip";
- sha256 = "1nm19pvhlv51mv2sdankndhw64ys9r7ch6szzd6i4jz8zr86kn9v";
+ src = fetchFromBitbucket {
+ owner = "romildo";
+ repo = "pygmentex";
+ rev = version;
+ sha256 = "07dnv7hgppy15bda2kcbrlvfqzl6lhza80klc7133dwg8q92hm6m";
};
pythonPath = [ python2Packages.pygments python2Packages.chardet ];
@@ -38,7 +40,7 @@ python2Packages.buildPythonApplication rec {
texlive.combine.
'';
license = licenses.lppl13c;
- maintainers = with maintainers; [ romildo ];
platforms = platforms.unix;
+ maintainers = with maintainers; [ romildo ];
};
}
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index b6f36aa9de1..defac535532 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -83,6 +83,7 @@ mapAliases (rec {
kdiff3-qt5 = kdiff3; # added 2017-02-18
keepassx2-http = keepassx-reboot; # added 2016-10-17
keepassx-reboot = keepassx-community; # added 2017-02-01
+ keepassx-community = keepassxc; # added 2017-11
keybase-go = keybase; # added 2016-08-24
krename-qt5 = krename; # added 2017-02-18
letsencrypt = certbot; # added 2016-05-16
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 82c4465452d..1aceb0c72fe 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1158,6 +1158,8 @@ with pkgs;
mp3fs = callPackage ../tools/filesystems/mp3fs { };
+ mpdas = callPackage ../tools/audio/mpdas { };
+
mpdcron = callPackage ../tools/audio/mpdcron { };
mpdris2 = callPackage ../tools/audio/mpdris2 { };
@@ -5537,7 +5539,7 @@ with pkgs;
# built with, and use, that cross-compiled libc.
gccCrossStageStatic = assert targetPlatform != buildPlatform; let
libcCross1 =
- if targetPlatform.libc == "msvcrt" then __targetPackages.windows.mingw_w64_headers
+ if targetPlatform.libc == "msvcrt" then targetPackages.windows.mingw_w64_headers
else if targetPlatform.libc == "libSystem" then darwin.xcode
else null;
in wrapCCWith {
@@ -8338,9 +8340,9 @@ with pkgs;
libcCrossChooser = name:
# libc is hackily often used from the previous stage. This `or`
# hack fixes the hack, *sigh*.
- /**/ if name == "glibc" then __targetPackages.glibcCross or glibcCross
+ /**/ if name == "glibc" then targetPackages.glibcCross or glibcCross
else if name == "uclibc" then uclibcCross
- else if name == "msvcrt" then __targetPackages.windows.mingw_w64 or windows.mingw_w64
+ else if name == "msvcrt" then targetPackages.windows.mingw_w64 or windows.mingw_w64
else if name == "libSystem" then darwin.xcode
else throw "Unknown libc";
@@ -9241,6 +9243,7 @@ with pkgs;
libmtp = callPackage ../development/libraries/libmtp { };
libmsgpack = callPackage ../development/libraries/libmsgpack { };
+ libmsgpack_2_0 = callPackage ../development/libraries/libmsgpack/2.0.nix { };
libmsgpack_1_4 = callPackage ../development/libraries/libmsgpack/1.4.nix { };
libmysqlconnectorcpp = callPackage ../development/libraries/libmysqlconnectorcpp {
@@ -14497,7 +14500,7 @@ with pkgs;
keepassx = callPackage ../applications/misc/keepassx { };
keepassx2 = callPackage ../applications/misc/keepassx/2.0.nix { };
- keepassx-community = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { };
+ keepassxc = libsForQt5.callPackage ../applications/misc/keepassx/community.nix { };
inherit (gnome3) evince;
evolution_data_server = gnome3.evolution_data_server;
diff --git a/pkgs/top-level/emacs-packages.nix b/pkgs/top-level/emacs-packages.nix
index 4ff8d23424c..baaedbeb521 100644
--- a/pkgs/top-level/emacs-packages.nix
+++ b/pkgs/top-level/emacs-packages.nix
@@ -226,6 +226,8 @@ let
};
};
+ font-lock-plus = callPackage ../applications/editors/emacs-modes/font-lock-plus { };
+
ghc-mod = melpaBuild rec {
pname = "ghc";
version = external.ghc-mod.version;
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 0bdd0f2ccac..01d2fc8e046 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -12493,6 +12493,9 @@ let self = _self // overrides; _self = with self; {
meta = {
maintainers = with maintainers; [ ];
platforms = stdenv.lib.platforms.unix;
+
+ # http://cpansearch.perl.org/src/ROSCH/String-ShellQuote-1.04/README
+ license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
};
};
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index c1578987570..02e2bc3a56c 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -6520,13 +6520,13 @@ in {
paperwork-backend = buildPythonPackage rec {
name = "paperwork-backend-${version}";
- version = "1.2.0";
+ version = "1.2.1";
src = pkgs.fetchFromGitHub {
- owner = "jflesch";
+ owner = "openpaperwork";
repo = "paperwork-backend";
rev = version;
- sha256 = "1pzyy14f9wzh9vwn855k1z48a8mbs73j1dk8730kdlcdkmn3l1ms";
+ sha256 = "1lrawibm6jnykj1bkrl8196kcxrhndzp7r0brdrb4hs54gql7j5x";
};
# Python 2.x is not supported.
@@ -16043,21 +16043,21 @@ in {
pyinsane2 = buildPythonPackage rec {
name = "pyinsane2-${version}";
- version = "2.0.9";
+ version = "2.0.10";
src = pkgs.fetchurl {
url = "mirror://pypi/p/pyinsane2/${name}.tar.gz";
- sha256 = "1g4a1zhrrs7smmnsm7x8j5lvsz0r6rr2jgjykc9c1jlscz3yr747";
+ sha256 = "00d1wqb3w9bn1rxb2dwmdqbar2lr96izq855l5vzprc17dkgip3j";
};
postPatch = ''
# pyinsane2 forks itself, so we need to re-inject the PYTHONPATH.
sed -i -e '/os.putenv.*PYINSANE_DAEMON/ {
a \ os.putenv("PYTHONPATH", ":".join(sys.path))
- }' src/pyinsane2/sane/abstract_proc.py
+ }' pyinsane2/sane/abstract_proc.py
sed -i -e 's,"libsane.so.1","${pkgs.sane-backends}/lib/libsane.so",' \
- src/pyinsane2/sane/rawapi.py
+ pyinsane2/sane/rawapi.py
'';
# Tests require a scanner to be physically connected, so let's just do a
diff --git a/pkgs/top-level/splice.nix b/pkgs/top-level/splice.nix
index 44a46b7b692..b13fa86a995 100644
--- a/pkgs/top-level/splice.nix
+++ b/pkgs/top-level/splice.nix
@@ -67,7 +67,7 @@ let
if actuallySplice
then splicer defaultBuildScope defaultRunScope // {
# These should never be spliced under any circumstances
- inherit (pkgs) pkgs buildPackages __targetPackages
+ inherit (pkgs) pkgs buildPackages targetPackages
buildPlatform targetPlatform hostPlatform;
}
else pkgs // pkgs.xorg;
diff --git a/pkgs/top-level/stage.nix b/pkgs/top-level/stage.nix
index 617fa0c30ce..7cddc664570 100644
--- a/pkgs/top-level/stage.nix
+++ b/pkgs/top-level/stage.nix
@@ -26,13 +26,13 @@
# us to avoid expensive splicing.
buildPackages
-, # The package set used in the next stage. If null, `__targetPackages` will be
+, # The package set used in the next stage. If null, `targetPackages` will be
# defined internally as the final produced package set itself, just like with
# `buildPackages` and for the same reasons.
#
# THIS IS A HACK for compilers that don't think critically about cross-
# compilation. Please do *not* use unless you really know what you are doing.
- __targetPackages
+ targetPackages
, # The standard environment to use for building packages.
stdenv
@@ -72,7 +72,7 @@ let
stdenvBootstappingAndPlatforms = self: super: {
buildPackages = (if buildPackages == null then self else buildPackages)
// { recurseForDerivations = false; };
- __targetPackages = (if __targetPackages == null then self else __targetPackages)
+ targetPackages = (if targetPackages == null then self else targetPackages)
// { recurseForDerivations = false; };
inherit stdenv;
};