From 6091e2aa3355ac0cab30ef024b9d977111d479d8 Mon Sep 17 00:00:00 2001 From: Florian Jacob Date: Thu, 5 Oct 2017 15:05:30 +0200 Subject: [PATCH 01/85] nixos/network-interfaces: assertion for too long interface names --- nixos/modules/tasks/network-interfaces.nix | 8 ++++++++ 1 file changed, 8 insertions(+) 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."; From 4866f16fbadd2fcc702102944b990ff578379b0a Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Thu, 2 Nov 2017 14:28:39 -0500 Subject: [PATCH 02/85] Revert "Merge pull request #30255 from bkchr/qt_5_9_2" This reverts commit 4cf0b6ba5d5ab5eb20a88449e0612f4dad8e4c29, reversing changes made to 756b9c7d6caae3b02151642b85d84e9b4e4e9b17. Qt 5.9.2 is reverted to Qt 5.9.1, as recommended by KDE upstream due to https://bugreports.qt.io/browse/QTBUG-64017 --- pkgs/development/libraries/qt-5/5.9/fetch.sh | 2 +- .../libraries/qt-5/5.9/qtbase/default.nix | 4 +- pkgs/development/libraries/qt-5/5.9/srcs.nix | 322 +++++++++--------- 3 files changed, 164 insertions(+), 164 deletions(-) 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/default.nix b/pkgs/development/libraries/qt-5/5.9/qtbase/default.nix index d63936c561c..eee55dbded3 100644 --- a/pkgs/development/libraries/qt-5/5.9/qtbase/default.nix +++ b/pkgs/development/libraries/qt-5/5.9/qtbase/default.nix @@ -3,7 +3,7 @@ src, version, qtCompatVersion, coreutils, bison, flex, gdb, gperf, lndir, patchelf, perl, pkgconfig, python2, - ruby, which, + ruby, # darwin support darwin, libiconv, libcxx, @@ -73,7 +73,7 @@ stdenv.mkDerivation { ++ 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; outputs = [ "bin" "dev" "out" ]; 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"; }; }; } From eca212741eb9dad7f2e5187c02077d40dd60bc05 Mon Sep 17 00:00:00 2001 From: Shaun Ren Date: Fri, 27 Oct 2017 19:29:18 +0900 Subject: [PATCH 03/85] compton: change extraOptions type to types.lines --- nixos/modules/services/x11/compton.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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; From 78d702f5805e35c565485ba270c449ec9c3d0ad4 Mon Sep 17 00:00:00 2001 From: Ryan Mulligan Date: Mon, 18 Sep 2017 16:03:15 -0700 Subject: [PATCH 04/85] nixos/mattermost: 4.1.0 -> 4.2.0 --- pkgs/servers/mattermost/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix index c99f939437b..da8d2b84e1e 100644 --- a/pkgs/servers/mattermost/default.nix +++ b/pkgs/servers/mattermost/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "mattermost-${version}"; - version = "4.1.0"; + version = "4.2.0"; src = fetchurl { url = "https://releases.mattermost.com/${version}/mattermost-team-${version}-linux-amd64.tar.gz"; - sha256 = "0bp56i108pxsqcswxy1hdz3d8wq83lc29wcq6npimwx566rx4xhf"; + sha256 = "0h52j1zmiij3g3rs10dr6xi2qdzqmb7xfj3rwbrlnvipjpnsa3v1"; }; installPhase = '' From ec2f834fb16e244940a6916b0e08b57890c59e0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 20 Sep 2017 08:46:11 +0100 Subject: [PATCH 05/85] mattermost: build from source at least the go part --- pkgs/servers/mattermost/default.nix | 35 ++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix index da8d2b84e1e..b1d2ad4f2cf 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.2.0"; - src = fetchurl { + src = fetchFromGitHub { + owner = "mattermost"; + repo = "mattermost-server"; + rev = "v${version}"; + sha256 = "0ngkdckd5bwh7ycnzspy9n16cqpk6pp9ifq8n19nkjlzynhsw2zd"; + }; + + webApp = fetchurl { url = "https://releases.mattermost.com/${version}/mattermost-team-${version}-linux-amd64.tar.gz"; sha256 = "0h52j1zmiij3g3rs10dr6xi2qdzqmb7xfj3rwbrlnvipjpnsa3v1"; }; - installPhase = '' - mkdir -p $out - mv * $out/ - ln -s ./platform $out/bin/mattermost-platform + goPackagePath = "github.com/mattermost/platform"; + + 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; }; } From a140a490d938646b35cea5a90c5182f1ea743e1f Mon Sep 17 00:00:00 2001 From: Ryan Mulligan Date: Sun, 5 Nov 2017 12:56:33 -0800 Subject: [PATCH 06/85] mattermost: 4.2.0 -> 4.3.0 --- pkgs/servers/mattermost/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/servers/mattermost/default.nix b/pkgs/servers/mattermost/default.nix index b1d2ad4f2cf..2bfe929784b 100644 --- a/pkgs/servers/mattermost/default.nix +++ b/pkgs/servers/mattermost/default.nix @@ -2,21 +2,21 @@ buildGoPackage rec { name = "mattermost-${version}"; - version = "4.2.0"; + version = "4.3.0"; src = fetchFromGitHub { owner = "mattermost"; repo = "mattermost-server"; rev = "v${version}"; - sha256 = "0ngkdckd5bwh7ycnzspy9n16cqpk6pp9ifq8n19nkjlzynhsw2zd"; + sha256 = "05119h3x81p8plfjq99khfywc3plv2zynvf83vkhj48zqk61wvbq"; }; webApp = fetchurl { url = "https://releases.mattermost.com/${version}/mattermost-team-${version}-linux-amd64.tar.gz"; - sha256 = "0h52j1zmiij3g3rs10dr6xi2qdzqmb7xfj3rwbrlnvipjpnsa3v1"; + sha256 = "0d30zj036nz6vwpiv0mn656j5r4br6y4x8iqc5jn785fiwk2pdls"; }; - goPackagePath = "github.com/mattermost/platform"; + goPackagePath = "github.com/mattermost/mattermost-server"; buildPhase = '' runHook preBuild From e8c83704257f52e53e982fa8f577ba3f93520270 Mon Sep 17 00:00:00 2001 From: Ryan Mulligan Date: Sun, 5 Nov 2017 12:57:02 -0800 Subject: [PATCH 07/85] nixos/mattermost: fix for webapp being renamed to client --- nixos/modules/services/web-apps/mattermost.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 '' From 5ae8f18f4d8216ec987e0f63b7d2b9a416a4ca82 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 31 Oct 2017 10:50:08 -0400 Subject: [PATCH 08/85] Rename `__targetPackages` to `targetPackages` --- doc/cross-compilation.xml | 2 +- pkgs/stdenv/booter.nix | 2 +- pkgs/top-level/all-packages.nix | 6 +++--- pkgs/top-level/splice.nix | 2 +- pkgs/top-level/stage.nix | 6 +++--- 5 files changed, 9 insertions(+), 9 deletions(-) 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/pkgs/stdenv/booter.nix b/pkgs/stdenv/booter.nix index a1055708f99..a8f8be75545 100644 --- a/pkgs/stdenv/booter.nix +++ b/pkgs/stdenv/booter.nix @@ -98,7 +98,7 @@ 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 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 02a25a4333a..4f249c2349f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5527,7 +5527,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 { @@ -8328,9 +8328,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"; 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; }; From 70d91badf57bbe4cd884e5da22b14662dd36009c Mon Sep 17 00:00:00 2001 From: John Ericson Date: Tue, 10 Oct 2017 19:01:42 -0400 Subject: [PATCH 09/85] treewide: Depend on stdenv.cc.bintools instead of binutils directly One should do this when needed executables at build time. It is more honest and cross-friendly than refering to binutils directly. --- pkgs/applications/editors/jucipp/default.nix | 4 ++-- pkgs/build-support/cc-wrapper/default.nix | 5 +++++ pkgs/development/tools/profiling/systemtap/default.nix | 6 ++++-- pkgs/games/brogue/default.nix | 2 +- pkgs/games/steam/runtime.nix | 4 ++-- pkgs/servers/asterisk/default.nix | 4 ++-- pkgs/tools/networking/htpdate/default.nix | 2 +- pkgs/tools/networking/p2p/gtk-gnutella/default.nix | 4 ++-- 8 files changed, 19 insertions(+), 12 deletions(-) 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/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix index 489fb02dcb5..6de2693a8b1 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/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/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/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/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/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" ]; From 4d4f94cde4d3806ca063ebf7e6ba448b0feae355 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Wed, 18 Oct 2017 14:05:39 -0400 Subject: [PATCH 10/85] treewide: Depend on targetPackages.stdenv.cc.bintools instead of binutils directly One should do this when needed executables at run time. It is more honest and cross-friendly than refering to binutils directly, if one neeeds the default binary tools for the target platform, rather than binutils in particular. --- .../development/compilers/gcc/4.5/default.nix | 8 +++---- .../development/compilers/gcc/4.8/default.nix | 8 +++---- .../development/compilers/gcc/4.9/default.nix | 8 +++---- pkgs/development/compilers/gcc/5/default.nix | 13 +++++------ pkgs/development/compilers/gcc/6/default.nix | 13 +++++------ pkgs/development/compilers/gcc/7/default.nix | 13 +++++------ .../compilers/gcc/snapshot/default.nix | 13 +++++------ pkgs/development/compilers/ghc/7.10.2.nix | 4 ++-- pkgs/development/compilers/ghc/7.10.3.nix | 4 ++-- pkgs/development/compilers/ghc/7.6.3.nix | 2 +- pkgs/development/compilers/ghc/8.0.2.nix | 4 ++-- pkgs/development/compilers/ghc/8.2.1.nix | 16 ++++++------- pkgs/development/compilers/ghc/head.nix | 4 ++-- pkgs/development/compilers/halvm/2.4.0.nix | 8 +++---- pkgs/development/compilers/rust/rustc.nix | 7 +++--- pkgs/development/compilers/swift/default.nix | 4 ++-- pkgs/stdenv/booter.nix | 23 +++++++++++++++---- 17 files changed, 81 insertions(+), 71 deletions(-) diff --git a/pkgs/development/compilers/gcc/4.5/default.nix b/pkgs/development/compilers/gcc/4.5/default.nix index 5bad03d3025..498d2f0f6c7 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" + @@ -228,7 +228,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 72e37f18a17..a49ea7bd689 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 @@ -149,8 +149,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" + @@ -299,7 +299,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 d7684a61a2a..ee0df2e9c54 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 @@ -143,8 +143,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" + @@ -295,7 +295,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 47cb93c1995..e3639fdf0f5 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; @@ -143,8 +142,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" + @@ -307,14 +306,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/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/stdenv/booter.nix b/pkgs/stdenv/booter.nix index a8f8be75545..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 @@ -101,4 +103,15 @@ stageFuns: let 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 From ff2d16e7f8da08c42f901a534d025a3d1387bfb0 Mon Sep 17 00:00:00 2001 From: adisbladis Date: Mon, 6 Nov 2017 11:39:13 +0800 Subject: [PATCH 11/85] emacsPackages.font-lock-plus: init at 20170222.1755 --- .../emacs-modes/font-lock-plus/default.nix | 23 +++++++++++++++++++ pkgs/top-level/emacs-packages.nix | 2 ++ 2 files changed, 25 insertions(+) create mode 100644 pkgs/applications/editors/emacs-modes/font-lock-plus/default.nix 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/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; From ce2d9bac9f8a8c9bcb158cc89a9f5669238b866f Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 11 Oct 2017 17:54:53 +0800 Subject: [PATCH 12/85] libmsgpack: house keeping --- pkgs/development/libraries/libmsgpack/generic.nix | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) 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; }; } From 01a7d7038bf18a29133a79c6d5c3facfc10f0923 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 11 Oct 2017 17:55:16 +0800 Subject: [PATCH 13/85] libmsgpack: 2.0.0 -> 2.1.5 --- pkgs/development/libraries/libmsgpack/2.0.nix | 12 ++++++++++++ pkgs/development/libraries/libmsgpack/default.nix | 10 +++++----- pkgs/top-level/all-packages.nix | 1 + 3 files changed, 18 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/libraries/libmsgpack/2.0.nix 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/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7383df20c0e..7ac98ea6d47 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -9227,6 +9227,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 { From 1d2ecd96616eb73b073599cbc24222cd31318f80 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 11 Oct 2017 17:54:18 +0800 Subject: [PATCH 14/85] libtoxcore: 0.1.8 -> 0.1.10 --- pkgs/development/libraries/libtoxcore/default.nix | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) 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"; From e48691c2d49d5781d2905cf3eccdef49dc84da7c Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Mon, 2 Oct 2017 17:39:23 +0800 Subject: [PATCH 15/85] qtox: 1.11.0 -> 1.12.1 --- .../networking/instant-messengers/qtox/default.nix | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) 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; From 24b70b56a04ec3bac5b7571b37a6238fbc4a438a Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 11 Oct 2017 20:05:41 +0800 Subject: [PATCH 16/85] utox: run tests --- .../networking/instant-messengers/utox/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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"; From 8caf9f13a66b7d7a9aa9a13d59a6e83fdc99f107 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Mon, 6 Nov 2017 14:57:28 -0500 Subject: [PATCH 17/85] Revert "Merge branch 'all-cabal-hashes-components'" This reverts commit ad6b8f438db055a73e64218b5f2ed3cbca963ae5, reversing changes made to 2d44e7280166256d8322546b11dcbe9b95f5bc5d. --- pkgs/data/misc/hackage/default.nix | 39 +--- .../misc/hackage/partition-all-cabal-hashes.c | 190 ------------------ .../haskell-modules/make-package-set.nix | 19 +- 3 files changed, 11 insertions(+), 237 deletions(-) delete mode 100644 pkgs/data/misc/hackage/partition-all-cabal-hashes.c diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix index c3cd9bdb4b3..cf2b4464881 100644 --- a/pkgs/data/misc/hackage/default.nix +++ b/pkgs/data/misc/hackage/default.nix @@ -1,34 +1,11 @@ -{ 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 -}: +{ fetchFromGitHub }: # 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"; - }) + +fetchFromGitHub { + owner = "commercialhaskell"; + repo = "all-cabal-hashes"; + rev = "5e87c40f2cd96bd5dd953758e82f302107c7895e"; + sha256 = "12rw5fld64s0a2zjsdijfs0dv6vc6z7gcf24h4m2dmymzms4namg"; +} 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/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix index ebfe44dd25a..37b32177f6b 100644 --- a/pkgs/development/haskell-modules/make-package-set.nix +++ b/pkgs/development/haskell-modules/make-package-set.nix @@ -118,23 +118,10 @@ 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 - ''); - - hackage2nix = name: version: let component = all-cabal-hashes-component name; in self.haskellSrc2nix { + hackage2nix = name: version: 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/".*$//' "${all-cabal-hashes}/${name}/${version}/${name}.json")''; + src = "${all-cabal-hashes}/${name}/${version}/${name}.cabal"; }; in package-set { inherit pkgs stdenv callPackage; } self // { From a38a3e21291ca8e751959a3f797ed2729bed6029 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Mon, 6 Nov 2017 16:26:05 -0500 Subject: [PATCH 18/85] Extract files one at a time from all-cabal-hashes --- pkgs/data/misc/hackage/default.nix | 13 ++++--------- .../haskell-modules/make-package-set.nix | 12 +++++++++--- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix index cf2b4464881..91d38f3537e 100644 --- a/pkgs/data/misc/hackage/default.nix +++ b/pkgs/data/misc/hackage/default.nix @@ -1,11 +1,6 @@ -{ fetchFromGitHub }: +{ 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. - -fetchFromGitHub { - owner = "commercialhaskell"; - repo = "all-cabal-hashes"; - rev = "5e87c40f2cd96bd5dd953758e82f302107c7895e"; - sha256 = "12rw5fld64s0a2zjsdijfs0dv6vc6z7gcf24h4m2dmymzms4namg"; +fetchurl { + url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/5e87c40f2cd96bd5dd953758e82f302107c7895e.tar.gz"; + sha256 = "0hjkddda9mdm21nb9bkhr9n5r9jllisif1qmzha91a9cps5w1mx5"; } diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix index 37b32177f6b..61043252155 100644 --- a/pkgs/development/haskell-modules/make-package-set.nix +++ b/pkgs/development/haskell-modules/make-package-set.nix @@ -118,10 +118,16 @@ let ''; }; - hackage2nix = name: version: self.haskellSrc2nix { + 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 version; in self.haskellSrc2nix { name = "${name}-${version}"; - sha256 = ''$(sed -e 's/.*"SHA256":"//' -e 's/".*$//' "${all-cabal-hashes}/${name}/${version}/${name}.json")''; - src = "${all-cabal-hashes}/${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 // { From fe0ab944db2176e6757ae89aeebea16ab8dc69d0 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:39:54 -0500 Subject: [PATCH 19/85] qt5: factor out common definitions and remove symlink farm The module definitions are factored out and shared between qt56 and qt59. The symlink farm which was created during builds is no longer needed. --- .../libraries/qt-5/5.6/default.nix | 124 +- .../libraries/qt-5/5.6/qtbase.patch | 773 ++++++++++++ .../qtdeclarative.patch} | 10 +- .../qtscript.patch} | 12 - .../qtserialport.patch} | 10 +- .../libraries/qt-5/5.6/qttools.patch | 64 + .../qtwebengine-paxmark-mksnapshot.patch | 0 ...lang-update-py.patch => qtwebengine.patch} | 0 .../libraries/qt-5/5.6/qtwebkit.patch | 77 ++ .../libraries/qt-5/5.9/default.nix | 126 +- .../libraries/qt-5/5.9/qtbase.patch | 1106 +++++++++++++++++ .../qt-5/5.9/qtbase/cmake-paths.patch | 359 ------ .../qt-5/5.9/qtbase/compose-search-path.patch | 18 - .../libraries/qt-5/5.9/qtbase/darwin-cf.patch | 36 - .../libraries/qt-5/5.9/qtbase/darwin-series | 3 - .../libraries/qt-5/5.9/qtbase/dlopen-gl.patch | 19 - .../qt-5/5.9/qtbase/dlopen-gtkstyle.patch | 50 - .../qt-5/5.9/qtbase/dlopen-libXcursor.patch | 17 - .../qt-5/5.9/qtbase/dlopen-resolv.patch | 26 - .../qt-5/5.9/qtbase/library-paths.patch | 20 - .../libraries/qt-5/5.9/qtbase/libressl.patch | 33 - .../qt-5/5.9/qtbase/mkspecs-common-mac.patch | 11 - .../5.9/qtbase/mkspecs-features-mac.patch | 292 ----- .../libraries/qt-5/5.9/qtbase/qgtk-env.patch | 36 - .../qtbase/qnativesocketengine-type-pun.patch | 14 - .../libraries/qt-5/5.9/qtbase/series | 9 - .../libraries/qt-5/5.9/qtbase/tzdir.patch | 39 - .../libraries/qt-5/5.9/qtcharts.nix | 10 - .../libraries/qt-5/5.9/qtconnectivity.nix | 10 - .../libraries/qt-5/5.9/qtdeclarative.patch | 33 + .../qt-5/5.9/qtdeclarative/default.nix | 20 - .../libraries/qt-5/5.9/qtdeclarative/series | 1 - .../libraries/qt-5/5.9/qtlocation.nix | 13 - .../libraries/qt-5/5.9/qtquickcontrols2.nix | 10 - .../libraries/qt-5/5.9/qtscript.patch | 13 + .../libraries/qt-5/5.9/qtscript/default.nix | 7 - .../libraries/qt-5/5.9/qtsensors.nix | 13 - .../libraries/qt-5/5.9/qtserialport.patch | 22 + .../libraries/qt-5/5.9/qtserialport/series | 1 - pkgs/development/libraries/qt-5/5.9/qtsvg.nix | 10 - .../libraries/qt-5/5.9/qttools.patch | 71 ++ .../qt-5/5.9/qttools/cmake-paths.patch | 88 -- .../libraries/qt-5/5.9/qttools/default.nix | 16 - .../libraries/qt-5/5.9/qttools/series | 1 - .../libraries/qt-5/5.9/qtwayland.nix | 13 - .../libraries/qt-5/5.9/qtwebchannel.nix | 11 - .../qtwebengine-paxmark-mksnapshot.patch | 0 .../libraries/qt-5/5.9/qtwebkit.patch | 77 ++ .../5.9/qtwebkit/qtwebkit-dlopen-gtk.patch | 64 - .../5.9/qtwebkit/qtwebkit-dlopen-udev.patch | 0 .../qtwebkit/qtwebkit-icucore-darwin.patch | 13 - .../libraries/qt-5/5.9/qtwebkit/series | 3 - .../libraries/qt-5/5.9/qtwebsockets.nix | 10 - .../libraries/qt-5/5.9/qtxmlpatterns.nix | 6 - .../qt-5/hooks/fix-qt-builtin-paths.sh | 64 + .../qt-5/hooks/fix-qt-module-paths.sh | 43 + .../qt-5/hooks/fix-qt-static-libs.sh | 32 + .../libraries/qt-5/hooks/move-qt-dev-tools.sh | 34 + .../libraries/qt-5/hooks/qmake-hook.sh | 18 + .../libraries/qt-5/hooks/qtbase-setup-hook.sh | 87 ++ .../qt-5/hooks/qttools-setup-hook.sh | 1 + .../libraries/qt-5/mkDerivation.nix | 29 + .../qtbase/default.nix => modules/qtbase.nix} | 151 ++- .../libraries/qt-5/modules/qtcharts.nix | 7 + .../libraries/qt-5/modules/qtconnectivity.nix | 8 + .../libraries/qt-5/modules/qtdeclarative.nix | 25 + .../libraries/qt-5/{5.9 => modules}/qtdoc.nix | 4 +- .../{5.9 => modules}/qtgraphicaleffects.nix | 5 +- .../qt-5/{5.9 => modules}/qtimageformats.nix | 4 +- .../libraries/qt-5/modules/qtlocation.nix | 9 + .../qt-5/{5.9 => modules}/qtmacextras.nix | 4 +- .../qt-5/{5.9 => modules}/qtmultimedia.nix | 8 +- .../qt-5/{5.9 => modules}/qtquickcontrols.nix | 4 +- .../qt-5/modules/qtquickcontrols2.nix | 7 + .../libraries/qt-5/modules/qtscript.nix | 6 + .../libraries/qt-5/modules/qtsensors.nix | 7 + .../default.nix => modules/qtserialport.nix} | 5 +- .../libraries/qt-5/modules/qtsvg.nix | 7 + .../libraries/qt-5/modules/qttools.nix | 34 + .../qt-5/{5.9 => modules}/qttranslations.nix | 4 +- .../libraries/qt-5/modules/qtwayland.nix | 9 + .../libraries/qt-5/modules/qtwebchannel.nix | 8 + .../default.nix => modules/qtwebengine.nix} | 20 +- .../default.nix => modules/qtwebkit.nix} | 15 +- .../libraries/qt-5/modules/qtwebsockets.nix | 7 + .../qt-5/{5.9 => modules}/qtx11extras.nix | 4 +- .../libraries/qt-5/modules/qtxmlpatterns.nix | 7 + pkgs/development/libraries/qt-5/qmake-hook.sh | 47 - pkgs/development/libraries/qt-5/qtModule.nix | 59 + .../qt-5/qtbase-setup-hook-darwin.sh | 192 --- .../libraries/qt-5/qtbase-setup-hook.sh | 155 --- .../libraries/qt-5/qtsubmodule-setup-hook.sh | 2 - 92 files changed, 2985 insertions(+), 1967 deletions(-) create mode 100644 pkgs/development/libraries/qt-5/5.6/qtbase.patch rename pkgs/development/libraries/qt-5/{5.9/qtdeclarative/import-paths.patch => 5.6/qtdeclarative.patch} (67%) rename pkgs/development/libraries/qt-5/{5.9/qtscript/0001-glib-2.32.patch => 5.6/qtscript.patch} (61%) rename pkgs/development/libraries/qt-5/{5.9/qtserialport/qtserialport-dlopen-udev.patch => 5.6/qtserialport.patch} (69%) create mode 100644 pkgs/development/libraries/qt-5/5.6/qttools.patch rename pkgs/development/libraries/qt-5/5.6/{qtwebengine => }/qtwebengine-paxmark-mksnapshot.patch (100%) rename pkgs/development/libraries/qt-5/5.6/{qtwebengine/chromium-clang-update-py.patch => qtwebengine.patch} (100%) create mode 100644 pkgs/development/libraries/qt-5/5.6/qtwebkit.patch create mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/cmake-paths.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/compose-search-path.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/darwin-cf.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/darwin-series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gl.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-gtkstyle.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-libXcursor.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/dlopen-resolv.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/library-paths.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/libressl.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-common-mac.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/mkspecs-features-mac.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/qgtk-env.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/qnativesocketengine-type-pun.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtbase/tzdir.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtcharts.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtconnectivity.nix create mode 100644 pkgs/development/libraries/qt-5/5.9/qtdeclarative.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtdeclarative/default.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtdeclarative/series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtlocation.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtquickcontrols2.nix create mode 100644 pkgs/development/libraries/qt-5/5.9/qtscript.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtscript/default.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtsensors.nix create mode 100644 pkgs/development/libraries/qt-5/5.9/qtserialport.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtserialport/series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtsvg.nix create mode 100644 pkgs/development/libraries/qt-5/5.9/qttools.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qttools/cmake-paths.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qttools/default.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qttools/series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwayland.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebchannel.nix rename pkgs/development/libraries/qt-5/5.9/{qtwebengine => }/qtwebengine-paxmark-mksnapshot.patch (100%) create mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebkit.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-gtk.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-dlopen-udev.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebkit/qtwebkit-icucore-darwin.patch delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebkit/series delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtwebsockets.nix delete mode 100644 pkgs/development/libraries/qt-5/5.9/qtxmlpatterns.nix create mode 100644 pkgs/development/libraries/qt-5/hooks/fix-qt-builtin-paths.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/fix-qt-module-paths.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/fix-qt-static-libs.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/move-qt-dev-tools.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/qmake-hook.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/qtbase-setup-hook.sh create mode 100644 pkgs/development/libraries/qt-5/hooks/qttools-setup-hook.sh create mode 100644 pkgs/development/libraries/qt-5/mkDerivation.nix rename pkgs/development/libraries/qt-5/{5.9/qtbase/default.nix => modules/qtbase.nix} (75%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtcharts.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qtconnectivity.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qtdeclarative.nix rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtdoc.nix (62%) rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtgraphicaleffects.nix (51%) rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtimageformats.nix (58%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtlocation.nix rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtmacextras.nix (78%) rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtmultimedia.nix (70%) rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtquickcontrols.nix (57%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtquickcontrols2.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qtscript.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qtsensors.nix rename pkgs/development/libraries/qt-5/{5.9/qtserialport/default.nix => modules/qtserialport.nix} (55%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtsvg.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qttools.nix rename pkgs/development/libraries/qt-5/{5.9 => modules}/qttranslations.nix (58%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtwayland.nix create mode 100644 pkgs/development/libraries/qt-5/modules/qtwebchannel.nix rename pkgs/development/libraries/qt-5/{5.9/qtwebengine/default.nix => modules/qtwebengine.nix} (84%) rename pkgs/development/libraries/qt-5/{5.9/qtwebkit/default.nix => modules/qtwebkit.nix} (73%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtwebsockets.nix rename pkgs/development/libraries/qt-5/{5.9 => modules}/qtx11extras.nix (57%) create mode 100644 pkgs/development/libraries/qt-5/modules/qtxmlpatterns.nix delete mode 100644 pkgs/development/libraries/qt-5/qmake-hook.sh create mode 100644 pkgs/development/libraries/qt-5/qtModule.nix delete mode 100644 pkgs/development/libraries/qt-5/qtbase-setup-hook-darwin.sh delete mode 100644 pkgs/development/libraries/qt-5/qtbase-setup-hook.sh delete mode 100644 pkgs/development/libraries/qt-5/qtsubmodule-setup-hook.sh 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/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/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 eee55dbded3..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, # 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,7 +72,8 @@ 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 @@ -76,14 +83,31 @@ stdenv.mkDerivation { [ 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 ce1dada0c47..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 | xargs rm -} - -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@" From 1f5b6a2f60fd86ee641fe5e1c0de473d503bb288 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:41:09 -0500 Subject: [PATCH 20/85] kdenlive: missing dependencies --- pkgs/applications/kde/kdenlive.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 From d13bfc0c457c89a3b552705eb751a12781b41a90 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:41:20 -0500 Subject: [PATCH 21/85] lyx: remove obsolete pkg-config hack --- pkgs/applications/misc/lyx/default.nix | 5 ----- 1 file changed, 5 deletions(-) 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" From 0b4564fdb1eef306e36af7bb1db10f761d6fdb50 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:41:33 -0500 Subject: [PATCH 22/85] qbittorrent: no longer need to set QT_QMAKE --- pkgs/applications/networking/p2p/qbittorrent/default.nix | 4 ---- 1 file changed, 4 deletions(-) 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}" From afac78334337fde00a26626a4907cd9b13a38b7a Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:44:07 -0500 Subject: [PATCH 23/85] mlt: extra CFLAGS for QtSvg --- pkgs/development/libraries/mlt/qt-5.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pkgs/development/libraries/mlt/qt-5.nix b/pkgs/development/libraries/mlt/qt-5.nix index 1d56d58c68d..60ed5ef8ac8 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"; @@ -27,6 +29,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; From d817095208c1fb66c269345f575caf24e8135adf Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:45:08 -0500 Subject: [PATCH 24/85] qoauth: fix Qt mkspecs install path --- pkgs/development/libraries/qoauth/default.nix | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) 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 ]; From abb3479fcb70e768e6eaf13ba73ab0a5eeb3d5fc Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:45:23 -0500 Subject: [PATCH 25/85] qscintilla: fix qmake install paths --- pkgs/development/libraries/qscintilla/default.nix | 12 ++++++++++++ 1 file changed, 12 insertions(+) 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; { From bf117e3205f9f38914f22651573792bf28e1afd0 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:45:39 -0500 Subject: [PATCH 26/85] qtstyleplugins: remove obsolete install prefix hack --- pkgs/development/libraries/qtstyleplugins/default.nix | 5 ----- 1 file changed, 5 deletions(-) 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/; From 4ee379278feca9c628c1ead47bfa58f346fb4ae3 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:45:59 -0500 Subject: [PATCH 27/85] pyqt5: no need to set --qmake in configure --- pkgs/development/python-modules/pyqt/5.x.nix | 1 - 1 file changed, 1 deletion(-) 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} \ From 2522a72caf0add70cb841f5148afdfa095ac46b7 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:46:14 -0500 Subject: [PATCH 28/85] phantomjs2: remove obsolete RPATH hack --- pkgs/development/tools/phantomjs2/default.nix | 4 ---- 1 file changed, 4 deletions(-) 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 = '' From d3c11c512c5afd93665177a3fd4de747690db0b0 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:46:29 -0500 Subject: [PATCH 29/85] qt5ct: fix path to lrelease --- pkgs/tools/misc/qt5ct/default.nix | 4 ++++ 1 file changed, 4 insertions(+) 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" ''; From a055cee512434aa7ce8b95c17a6f767c60059191 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Tue, 24 Oct 2017 06:46:49 -0500 Subject: [PATCH 30/85] rockbox_utility: fix path to lrelease --- pkgs/tools/misc/rockbox-utility/default.nix | 7 +++++++ 1 file changed, 7 insertions(+) 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 ''; From ae6ac0ed3e197ebffa2c2194e0cacf602e499882 Mon Sep 17 00:00:00 2001 From: Thomas Tuegel Date: Sun, 5 Nov 2017 10:45:35 -0600 Subject: [PATCH 31/85] qt5: Add instructions for updating and patching --- pkgs/development/libraries/qt-5/README.md | 81 +++++++++++++++++++++++ 1 file changed, 81 insertions(+) create mode 100644 pkgs/development/libraries/qt-5/README.md 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. From fe4907c9d0e89c22b709695c282246c5e5a9a7b7 Mon Sep 17 00:00:00 2001 From: dywedir Date: Tue, 7 Nov 2017 23:16:50 +0200 Subject: [PATCH 32/85] sway: 0.14.0 -> 0.15.0 --- pkgs/applications/window-managers/sway/default.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) 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 = [ From 4531ec59551fa3f3c9dfb442dff2ec669c467922 Mon Sep 17 00:00:00 2001 From: lassulus Date: Thu, 2 Nov 2017 17:06:31 +0100 Subject: [PATCH 33/85] nixos/test-instrumentation: softcode DISPLAY --- nixos/lib/test-driver/Machine.pm | 5 ++++- nixos/modules/testing/test-instrumentation.nix | 9 +++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm index a7ed5d1faa3..dbed242eb86 100644 --- a/nixos/lib/test-driver/Machine.pm +++ b/nixos/lib/test-driver/Machine.pm @@ -602,8 +602,11 @@ sub waitForX { $self->nest("waiting for the X11 server", sub { retry sub { my ($status, $out) = $self->execute("journalctl -b SYSLOG_IDENTIFIER=systemd | grep 'session opened'"); + my $display = $ENV{'DISPLAY'}; + $display =~ s/://; + return 0 if $status != 0; - ($status, $out) = $self->execute("[ -e /tmp/.X11-unix/X0 ]"); + ($status, $out) = $self->execute("[ -e /tmp/.X11-unix/X$display ]"); return 1 if $status == 0; } }); diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix index 7f5b55d5cca..2465e99e9c1 100644 --- a/nixos/modules/testing/test-instrumentation.nix +++ b/nixos/modules/testing/test-instrumentation.nix @@ -5,9 +5,10 @@ with lib; -let kernel = config.boot.kernelPackages.kernel; in - -{ +let + display = (d: if d == null then 0 else d) config.services.xserver.display; + kernel = config.boot.kernelPackages.kernel; +in { # This option is a dummy that if used in conjunction with # modules/virtualisation/qemu-vm.nix gets merged with the same option defined @@ -28,7 +29,7 @@ let kernel = config.boot.kernelPackages.kernel; in '' export USER=root export HOME=/root - export DISPLAY=:0.0 + export DISPLAY=:${toString display} source /etc/profile From cd722e1678864f019096f2dcceca4afabe6ff87c Mon Sep 17 00:00:00 2001 From: Joachim Fasting Date: Tue, 7 Nov 2017 23:38:38 +0100 Subject: [PATCH 34/85] surf: use https --- pkgs/applications/networking/browsers/surf/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 ]; From 0f68e1328bebdcfd6e15fd393a6ed969e5efffc9 Mon Sep 17 00:00:00 2001 From: Peter Hoeg Date: Wed, 8 Nov 2017 10:33:13 +0800 Subject: [PATCH 35/85] syncthing: 0.14.39 -> 0.14.40 --- pkgs/applications/networking/syncthing/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 ]; From 3429d8cbbfd5cb15ab57ee1bbd173411fbee7328 Mon Sep 17 00:00:00 2001 From: aszlig Date: Tue, 7 Nov 2017 22:42:54 +0100 Subject: [PATCH 36/85] uqm: Clean up package expression style The only functional change here is that I've dropped unzip, because that dependency doesn't seem to be necessary at all. Despite the broken build state I've tried building and running The Ur-Quan Masters with an older nixpkgs revision and it works fine. Other than that there are no references in the source code for unzip except in the binary installer and some of the INSTALL files. The reason why I'm removing the "with pkgs.lib;" is that it makes it easier to quickly check for errors with "nix-instantiate --parse". Signed-off-by: aszlig Cc: @jcumming --- pkgs/games/uqm/3dovideo.nix | 7 +++--- pkgs/games/uqm/default.nix | 43 +++++++++++++++++-------------------- 2 files changed, 24 insertions(+), 26 deletions(-) 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..22a0418d4ca 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,13 @@ 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"; + /* 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 +64,14 @@ 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'. */ - + # 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; }; } From 442e238234faf512e12a1d5d9cc70fba0dd4804b Mon Sep 17 00:00:00 2001 From: "Jonathan C. Otsuka" Date: Tue, 7 Nov 2017 23:36:13 -0600 Subject: [PATCH 37/85] erlang: 20.0 -> 20.1 --- pkgs/development/interpreters/erlang/R20.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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' From 7603da33decd2f3777306729d2a95c091b7801ab Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 06:33:21 +0100 Subject: [PATCH 38/85] uqm: Fix build against glibc 2.26 I've bisected the introduction of the build failure to be the glibc 2.26 upgrade with commit 9bb67d5c1e546968fa3d195f0bcad82414243566. At first I was somewhat stumped why an glibc update could cause undeclared identifiers, but after looking at the changes of glibc and the source code of The Ur-Quan Masters the problem quickly turned out to be this very change: https://sourceware.org/git/?p=glibc.git;a=commit;h=7b037c095e31c2396d0a9b0e6356bc566ee4812f So string.h now in turn includes strings.h, which in theory wouldn't be a problem. However, both strings.h and the strings.h in the uqm source code use constant _STRINGS_H, which causes the glibc strings.h to be included but the one from uqm basically includes an empty file. Signed-off-by: aszlig --- pkgs/games/uqm/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkgs/games/uqm/default.nix b/pkgs/games/uqm/default.nix index 22a0418d4ca..1a2afa29f8f 100644 --- a/pkgs/games/uqm/default.nix +++ b/pkgs/games/uqm/default.nix @@ -70,6 +70,11 @@ in stdenv.mkDerivation rec { ln -s "${videos}" "uqm-${version}/content/addons/3dovideo" ''; + # 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 = '' From b9b5942e2b1e3c9e81119eb748764afa7c934810 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 06:48:57 +0100 Subject: [PATCH 39/85] uqm: Remove the -lgcc_s hack This is no longer needed and I've verified this by building and running the game. Signed-off-by: aszlig --- pkgs/games/uqm/default.nix | 5 ----- 1 file changed, 5 deletions(-) diff --git a/pkgs/games/uqm/default.nix b/pkgs/games/uqm/default.nix index 1a2afa29f8f..d8dcdf6b7b6 100644 --- a/pkgs/games/uqm/default.nix +++ b/pkgs/games/uqm/default.nix @@ -50,11 +50,6 @@ 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 mesa ]; From 6d23ec7c3f4b97a47a7135c9cdcdb19d3a578e0a Mon Sep 17 00:00:00 2001 From: adisbladis Date: Wed, 8 Nov 2017 15:05:43 +0800 Subject: [PATCH 40/85] plasma: 5.11.2 -> 5.11.3 --- pkgs/desktops/plasma-5/fetch.sh | 2 +- .../plasma-workspace/plasma-workspace.patch | 152 ++++---- pkgs/desktops/plasma-5/srcs.nix | 352 +++++++++--------- 3 files changed, 253 insertions(+), 253 deletions(-) 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"; }; }; } From ba86c9f27b5b62395a8a866e138e34b2851445ad Mon Sep 17 00:00:00 2001 From: Orivej Desh Date: Wed, 8 Nov 2017 07:19:37 +0000 Subject: [PATCH 41/85] hex-packages: delete transitively unbuildable packages Fixes #26279 --- .../development/beam-modules/hex-packages.nix | 1331 +---------------- 1 file changed, 43 insertions(+), 1288 deletions(-) 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 }: From 7390087b781f374005c2eada2ddeab15d5850b93 Mon Sep 17 00:00:00 2001 From: Will Dietz Date: Wed, 8 Nov 2017 01:48:40 -0600 Subject: [PATCH 42/85] gnuplot: 5.2.0 -> 5.2.1 --- pkgs/tools/graphics/gnuplot/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 = From 6c7c3beea3ae91aed7a417a6af3ddc953d0f4df3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Tue, 7 Nov 2017 16:54:01 +0100 Subject: [PATCH 43/85] keepassxc: rename from keepassx-community I think the new name is more appropriate, see https://keepassxc.org/. --- pkgs/applications/misc/keepassx/community.nix | 2 +- pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) 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/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..04300e3507e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -14497,7 +14497,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; From ffa60968a33437b70db9b39230d2b58eb5b7ef8e Mon Sep 17 00:00:00 2001 From: dywedir Date: Wed, 8 Nov 2017 10:40:00 +0200 Subject: [PATCH 44/85] wlc: 0.0.10 -> 0.0.11 --- pkgs/development/libraries/wlc/default.nix | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) 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 = [ From 27f7999280c1f48885ea886edd4d8355b6f06ac1 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 8 Nov 2017 09:55:15 +0100 Subject: [PATCH 45/85] glucose, glucose-syrup: 4.0 -> 4.1 --- pkgs/applications/science/logic/glucose/default.nix | 10 ++++++---- pkgs/applications/science/logic/glucose/syrup.nix | 13 ++++++------- 2 files changed, 12 insertions(+), 11 deletions(-) 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; { From 18aada9c4ce7a7d0eabffdbfea458d1c80b577a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 8 Nov 2017 09:44:57 +0100 Subject: [PATCH 46/85] virtualbox: fixup build with glibc-2.26 Explanation: https://www.linuxquestions.org/questions/slackware-14/sbo-scripts-not-building-on-current-read-1st-post-pls-4175561999/page46.html#post5753698 --- pkgs/applications/virtualization/virtualbox/default.nix | 8 ++++++++ 1 file changed, 8 insertions(+) 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 From f4562ba8c350bf72a4fe692c5d07e5943cbc6f68 Mon Sep 17 00:00:00 2001 From: Marti Serra Date: Wed, 8 Nov 2017 10:20:14 +0100 Subject: [PATCH 47/85] pythonPakages.meliae fix version --- pkgs/development/python-modules/meliae/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/meliae/default.nix b/pkgs/development/python-modules/meliae/default.nix index 9fa46ce6863..3f77a15e043 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 { From c2b9ab578de944f336c905ebc0ea1820472b2f25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20=C4=8Cun=C3=A1t?= Date: Wed, 8 Nov 2017 10:27:39 +0100 Subject: [PATCH 48/85] nfs-utils: fixup includes with glibc-2.26 --- pkgs/os-specific/linux/nfs-utils/default.nix | 2 ++ 1 file changed, 2 insertions(+) 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 = [ From 5bfeeef8502e971a86d2c57ccd5aeb547f7daaf3 Mon Sep 17 00:00:00 2001 From: devhell Date: Wed, 8 Nov 2017 10:06:57 +0000 Subject: [PATCH 49/85] {lib-}mediainfo{-gui},libzen: 0.7.99 -> 17.10, 0.4.35 -> 0.4.37 Update to the latest version (note versioning change). From the changelog for 'mediainfo' (libzen changelog is unavailable): === Version 17.10, 2017-11-02 -------------- + We need your support! Visit https://mediaarea.net/SupportUs + Version scheme is now YY.MM (year dot month, 2 digits each) + New MediaInfo XML output, with XSD, more suitable for automatic parsing. Use Option("Inform", "OLDXML") for keeping previous behavior + New "Info_OutputFormats" option for listing supported output formats + Universal Ad ID: refactored display, better display of value and registry, XML name slightly modified + MOV: support of HDR metadata (MasteringDisplayColorVolume, MaxCLL, MaxFALL) + BWF: display of UMID and loudness info + AAC: show program_config_element in trace + MPEG Audio: frame rate info + PCM in WAV and Matroska: Support of ValidBitsPerSample + I197, EBUCore: 1.8 output uses now final version of XSD and final XSD location + Matroska: tweaking frame rate empirical detection for some corner cases x I1070, LAME 3.100 info tag was incorrectly parsed x B1068, MPEG Audio: Incoherent duration between General and Audio parts, Audio part duration fixed x Matroska: showing "A_MS/ACM" Matroska CodecID x MXF: Fix crash with some buggy files x MXF: was not well supporting MXF referencing only 1 file x PCM in WAV: 8-bit content is unsigned and without endianess x PCM in WAV and Matroska: More coherency between Wave info and ExtensibleWave Info (bitdepth, sign) x WAV: GUID display was with first 8 bytes in wrong order x Several crash fixes --- pkgs/applications/misc/mediainfo-gui/default.nix | 4 ++-- pkgs/applications/misc/mediainfo/default.nix | 4 ++-- pkgs/development/libraries/libmediainfo/default.nix | 4 ++-- pkgs/development/libraries/libzen/default.nix | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix index fc702f249de..b6851eec6a5 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 ]; diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix index 84fef1b3983..45b00c11356 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 ]; diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix index 9e4b23a0919..2c556e120c1 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 ]; diff --git a/pkgs/development/libraries/libzen/default.nix b/pkgs/development/libraries/libzen/default.nix index ab473bbe85c..fafaace4591 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 ]; From 39015dbe4b34da4aa91143a9c36d34adb61cad15 Mon Sep 17 00:00:00 2001 From: Sander van der Burg Date: Wed, 8 Nov 2017 11:25:02 +0100 Subject: [PATCH 50/85] nixui: do not copy node-env.nix on regeneration --- pkgs/tools/package-management/nixui/generate.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 From 82973dfc041c4d7fe3745450da899b0d632208e4 Mon Sep 17 00:00:00 2001 From: Orivej Desh Date: Wed, 8 Nov 2017 10:33:04 +0000 Subject: [PATCH 51/85] mediainfo: enable parallel building --- pkgs/applications/misc/mediainfo-gui/default.nix | 2 ++ pkgs/applications/misc/mediainfo/default.nix | 2 ++ pkgs/development/libraries/libmediainfo/default.nix | 2 ++ pkgs/development/libraries/libzen/default.nix | 2 ++ 4 files changed, 8 insertions(+) diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix index b6851eec6a5..0167132db78 100644 --- a/pkgs/applications/misc/mediainfo-gui/default.nix +++ b/pkgs/applications/misc/mediainfo-gui/default.nix @@ -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 45b00c11356..e6175356348 100644 --- a/pkgs/applications/misc/mediainfo/default.nix +++ b/pkgs/applications/misc/mediainfo/default.nix @@ -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/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix index 2c556e120c1..25a597ea4da 100644 --- a/pkgs/development/libraries/libmediainfo/default.nix +++ b/pkgs/development/libraries/libmediainfo/default.nix @@ -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/libzen/default.nix b/pkgs/development/libraries/libzen/default.nix index fafaace4591..afa7696aca9 100644 --- a/pkgs/development/libraries/libzen/default.nix +++ b/pkgs/development/libraries/libzen/default.nix @@ -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/; From 292f60504ca8758188cf646686231e44b7d76b96 Mon Sep 17 00:00:00 2001 From: makefu Date: Tue, 7 Nov 2017 15:48:06 +0100 Subject: [PATCH 52/85] linux.kernel: enable build of stk1160 modules --- pkgs/os-specific/linux/kernel/common-config.nix | 5 +++++ 1 file changed, 5 insertions(+) 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 From 81154d929a071ecd1944e267e6b532e28fbc387a Mon Sep 17 00:00:00 2001 From: Joerg Thalheim Date: Wed, 8 Nov 2017 12:28:32 +0000 Subject: [PATCH 53/85] dbench: fix compilation with glibc 2.6 stdint is needed for intptr_t --- pkgs/development/tools/misc/dbench/default.nix | 5 +++++ .../tools/misc/dbench/fix-missing-stdint.patch | 10 ++++++++++ 2 files changed, 15 insertions(+) create mode 100644 pkgs/development/tools/misc/dbench/fix-missing-stdint.patch 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))) + From 3edc01d5d76ffe21101eea43e2b89c1fdbd5556a Mon Sep 17 00:00:00 2001 From: Robert Helgesson Date: Wed, 8 Nov 2017 13:42:51 +0100 Subject: [PATCH 54/85] eclipse/plugins: remove `phases` fields --- pkgs/applications/editors/eclipse/plugins.nix | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) 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}" From 503ddcf0256ece07a3c79d01cebd091da0ab8877 Mon Sep 17 00:00:00 2001 From: Robert Helgesson Date: Wed, 8 Nov 2017 14:21:14 +0100 Subject: [PATCH 55/85] perl-String-ShellQuote: add license field --- pkgs/top-level/perl-packages.nix | 3 +++ 1 file changed, 3 insertions(+) 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 ]; }; }; From 8bc70c892a4941d6d158dc1ec52ac28fd14a8b4b Mon Sep 17 00:00:00 2001 From: Yegor Timoshenko Date: Wed, 8 Nov 2017 07:54:47 +0000 Subject: [PATCH 56/85] COPYING: there are no more bootstrap binaries in Nixpkgs tree --- COPYING | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) 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. From c4dbbbd890519fb791c51b9dc985a445df0806e2 Mon Sep 17 00:00:00 2001 From: Michael Weiss Date: Wed, 8 Nov 2017 14:48:31 +0100 Subject: [PATCH 57/85] gns3Packages.{server,gui}Preview: 2.1.0rc3 -> 2.1.0rc4 --- pkgs/applications/networking/gns3/default.nix | 6 ++-- pkgs/applications/networking/gns3/server.nix | 36 +++++++++++++++++-- 2 files changed, 36 insertions(+), 6 deletions(-) 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"; From 845aae9c1028a4e95a0ea300bda961056072b8d8 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 15:21:09 +0100 Subject: [PATCH 58/85] clisp: Add patch to remove reference to cfree Fixes the build failure after the upgrade to glibc 2.26 in 9bb67d5c1e546968fa3d195f0bcad82414243566. From the cfree(3) manpage: This function should never be used. Use free(3) instead. Starting with version 2.26, it has been removed from glibc. From the glibc 2.26 release notes[1]: * The obsolete function cfree has been removed. Applications should use free instead. [1]: https://sourceware.org/ml/libc-alpha/2017-08/msg00010.html Signed-off-by: aszlig Cc: @7c6f434c, @tohl --- pkgs/development/interpreters/clisp/default.nix | 6 +++++- .../interpreters/clisp/remove-cfree-binding.patch | 12 ++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/interpreters/clisp/remove-cfree-binding.patch 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)) From e9bf6c4104e9836582ac40baf0c04dfc8545d256 Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Wed, 8 Nov 2017 07:08:20 +0100 Subject: [PATCH 59/85] zed: replace npm2nix with node2nix --- pkgs/applications/editors/zed/default.nix | 24 +- pkgs/applications/editors/zed/deps.json | 6 + pkgs/applications/editors/zed/deps.sh | 7 + .../editors/zed/node-packages.nix | 877 ++++++++ pkgs/applications/editors/zed/node.nix | 1839 +---------------- 5 files changed, 914 insertions(+), 1839 deletions(-) create mode 100644 pkgs/applications/editors/zed/deps.json create mode 100755 pkgs/applications/editors/zed/deps.sh create mode 100644 pkgs/applications/editors/zed/node-packages.nix 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 From bb0b0822ef39d987952a04ae61fb8071eca45454 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 16:05:19 +0100 Subject: [PATCH 60/85] neko: Fix build against glibc 2.26 The header file xlocale.h has been removed in glibc 2.26. Quoting the release notes[1]: * The nonstandard header has been removed. Most programs should use instead. If you have a specific need for the definition of locale_t with no other declarations, please contact libc-alpha@sourceware.org and explain. I've backported HaxeFoundation/neko@e286c8f3301fa443255a3101d14b73924670 against version 2.1.0 and the build now succeeds. Signed-off-by: aszlig --- pkgs/development/compilers/neko/default.nix | 3 + .../compilers/neko/xlocale-fix.patch | 59 +++++++++++++++++++ 2 files changed, 62 insertions(+) create mode 100644 pkgs/development/compilers/neko/xlocale-fix.patch 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@ From 2b409cc7c3cd2d71f6890b93c3c40e83c3cc52fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Balzarotti?= Date: Wed, 8 Nov 2017 17:42:41 +0100 Subject: [PATCH 61/85] reaver-wps-t6x: 1.5.2 -> 1.6.3 --- .../networking/reaver-wps-t6x/default.nix | 21 ++++++------------- 1 file changed, 6 insertions(+), 15 deletions(-) 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; { From 00344162a7d1a4ed438e863b99652cf298b2ad00 Mon Sep 17 00:00:00 2001 From: Joerg Thalheim Date: Wed, 8 Nov 2017 17:03:59 +0000 Subject: [PATCH 62/85] Revert "nixos/test-instrumentation: softcode DISPLAY" This reverts commit 4531ec59551fa3f3c9dfb442dff2ec669c467922. This broke waitForX: https://github.com/NixOS/nixpkgs/commit/b11ac5d29dcccdb7474a23ac1d8a6c40553adcd5#commitcomment-25486347 cc @Lassulus --- nixos/lib/test-driver/Machine.pm | 5 +---- nixos/modules/testing/test-instrumentation.nix | 9 ++++----- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/nixos/lib/test-driver/Machine.pm b/nixos/lib/test-driver/Machine.pm index dbed242eb86..a7ed5d1faa3 100644 --- a/nixos/lib/test-driver/Machine.pm +++ b/nixos/lib/test-driver/Machine.pm @@ -602,11 +602,8 @@ sub waitForX { $self->nest("waiting for the X11 server", sub { retry sub { my ($status, $out) = $self->execute("journalctl -b SYSLOG_IDENTIFIER=systemd | grep 'session opened'"); - my $display = $ENV{'DISPLAY'}; - $display =~ s/://; - return 0 if $status != 0; - ($status, $out) = $self->execute("[ -e /tmp/.X11-unix/X$display ]"); + ($status, $out) = $self->execute("[ -e /tmp/.X11-unix/X0 ]"); return 1 if $status == 0; } }); diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix index 2465e99e9c1..7f5b55d5cca 100644 --- a/nixos/modules/testing/test-instrumentation.nix +++ b/nixos/modules/testing/test-instrumentation.nix @@ -5,10 +5,9 @@ with lib; -let - display = (d: if d == null then 0 else d) config.services.xserver.display; - kernel = config.boot.kernelPackages.kernel; -in { +let kernel = config.boot.kernelPackages.kernel; in + +{ # This option is a dummy that if used in conjunction with # modules/virtualisation/qemu-vm.nix gets merged with the same option defined @@ -29,7 +28,7 @@ in { '' export USER=root export HOME=/root - export DISPLAY=:${toString display} + export DISPLAY=:0.0 source /etc/profile From a53462ea8518b44db725ce51f3ac7bf872679226 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maxime=20D=C3=A9n=C3=A8s?= Date: Wed, 8 Nov 2017 09:33:35 +0100 Subject: [PATCH 63/85] psc-package: 0.2.0 -> 0.2.4 --- pkgs/development/compilers/purescript/psc-package/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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; From 2704fdd710c69381f69ab435eadc5ea7d09f2bec Mon Sep 17 00:00:00 2001 From: Piotr Bogdan Date: Wed, 8 Nov 2017 16:53:36 +0000 Subject: [PATCH 64/85] mlt: fix build with glibc-2.26 see https://github.com/mltframework/mlt/pull/248 --- pkgs/development/libraries/mlt/default.nix | 15 ++++++++++++++- pkgs/development/libraries/mlt/qt-5.nix | 12 ++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) 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..35221c91aa7 100644 --- a/pkgs/development/libraries/mlt/qt-5.nix +++ b/pkgs/development/libraries/mlt/qt-5.nix @@ -11,6 +11,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 From 1e78b48666273da16915fd251de505d6103a13dd Mon Sep 17 00:00:00 2001 From: Piotr Bogdan Date: Wed, 8 Nov 2017 17:35:07 +0000 Subject: [PATCH 65/85] ffado: fix build with glibc-2.26 see https://sourceforge.net/p/ffado/mailman/message/36008067/ --- pkgs/os-specific/linux/ffado/default.nix | 5 ++++- pkgs/os-specific/linux/ffado/glibc226.patch | 10 ++++++++++ 2 files changed, 14 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/linux/ffado/glibc226.patch 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 From e9965b5b1970b70ecdba3a725aa723703377f5d9 Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Wed, 8 Nov 2017 18:42:11 +0100 Subject: [PATCH 66/85] julia_06: fix libgit2 tests by updating the literal strings searched in the error messages --- pkgs/development/compilers/julia/0.6.nix | 3 +++ 1 file changed, 3 insertions(+) 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 = [ From df94f7bf7697168dfd25c5023124f37267818b06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Wed, 8 Nov 2017 17:23:49 -0200 Subject: [PATCH 67/85] pygmentex: update src --- pkgs/tools/typesetting/pygmentex/default.nix | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) 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 ]; }; } From bd4b9062ea74cb2fb0681dc91585b0159ecdf5a5 Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Wed, 8 Nov 2017 14:32:45 -0500 Subject: [PATCH 68/85] linux: 4.4.96 -> 4.4.97 --- pkgs/os-specific/linux/kernel/linux-4.4.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 {})) From db1e2444a56b014e408b32aac34782aaec3f229d Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Wed, 8 Nov 2017 14:33:01 -0500 Subject: [PATCH 69/85] linux: 4.9.60 -> 4.9.61 --- pkgs/os-specific/linux/kernel/linux-4.9.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 {})) From 087d1e8d363c37fe90e1c6c292591944825d233c Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Wed, 8 Nov 2017 14:33:15 -0500 Subject: [PATCH 70/85] linux: 4.13.11 -> 4.13.12 --- pkgs/os-specific/linux/kernel/linux-4.13.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 {})) From 4cb8c5dc3c24f86476d21aab2e31862b8d5fba5f Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Wed, 8 Nov 2017 14:33:35 -0500 Subject: [PATCH 71/85] linux-copperhead: 4.13.11.a -> 4.13.12.a --- pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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"))); From a2045e029af174b37e4a2828b0e7febaf9559b14 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 20:45:32 +0100 Subject: [PATCH 72/85] libstdc++5: Add patch to fix type for ucontext_t Since glibc 2.26, struct ucontext no longer exists but is wrapped in a typedef ucontext_t. This is basically a backport of the patch to gcc version 4.5 which was introduced by @vcunat in f04b64c1e97fcacf6a6272de5a0562ced97db436. Building against x86_64-linux and i686-linux now succeeds. Signed-off-by: aszlig Cc: @abbradar --- .../libraries/libstdc++5/default.nix | 2 + .../libstdc++5/struct-ucontext.patch | 61 +++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 pkgs/development/libraries/libstdc++5/struct-ucontext.patch 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; From 33b0b5ed1dab27514e2b211508b710a8df16d764 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 21:08:53 +0100 Subject: [PATCH 73/85] anki: Fix hash of the source tarball Searching the web for the base-16 encoded hash of the one we have in the Nix expression didn't give any results and I also couldn't find the older tarball anywhere (even the mirrors I've checked don't have it). So checking the updated hash I've found that other distros use this, so I'd bet it's safe to do this. I've tested building the package but I didn't do any runtime test. Signed-off-by: aszlig Cc: @the-kenny --- pkgs/games/anki/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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 ] From 55e6a5a4da2d5411fec0a8d38be78e6e4bea307d Mon Sep 17 00:00:00 2001 From: Joerg Thalheim Date: Wed, 8 Nov 2017 20:23:02 +0000 Subject: [PATCH 74/85] android-udev-rules: 20171031 -> 20171107 --- pkgs/os-specific/linux/android-udev-rules/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 = '' From 4d2c2d8d9f90ce174a29a82041d7d050a3a199ad Mon Sep 17 00:00:00 2001 From: Joerg Thalheim Date: Wed, 8 Nov 2017 20:24:34 +0000 Subject: [PATCH 75/85] openafs: add patch for glibc 2.26 --- pkgs/servers/openafs-client/default.nix | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/openafs-client/default.nix b/pkgs/servers/openafs-client/default.nix index 263df09ebb5..ce7bbdaca86 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,13 @@ stdenv.mkDerivation rec { hardeningDisable = [ "pic" ]; + patches = [ + (fetchpatch { + url = "https://github.com/openafs/openafs/commit/c4dfc48b9a1294b3484ced632968da20552cc0c4.patch"; + sha256 = "1yc4gygcazwsslf6mzk1ai92as5jbsjv7212jcbb2dw83jydhc09"; + }) + ]; + preConfigure = '' ln -s "${kernel.dev}/lib/modules/"*/build $TMP/linux From 03e8bed8b33c3078e78b57abb0bad5b1bd9aea28 Mon Sep 17 00:00:00 2001 From: Joerg Thalheim Date: Wed, 8 Nov 2017 20:46:46 +0000 Subject: [PATCH 76/85] openafs-client: prefer patch provided by upstream --- pkgs/servers/openafs-client/default.nix | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkgs/servers/openafs-client/default.nix b/pkgs/servers/openafs-client/default.nix index ce7bbdaca86..d7ed2849d60 100644 --- a/pkgs/servers/openafs-client/default.nix +++ b/pkgs/servers/openafs-client/default.nix @@ -18,7 +18,8 @@ stdenv.mkDerivation rec { patches = [ (fetchpatch { - url = "https://github.com/openafs/openafs/commit/c4dfc48b9a1294b3484ced632968da20552cc0c4.patch"; + name = "fix-stdint-include.patch"; + url = "http://git.openafs.org/?p=openafs.git;a=patch;h=c193e5cba18273a062d4162118c7055b54f7eb5e"; sha256 = "1yc4gygcazwsslf6mzk1ai92as5jbsjv7212jcbb2dw83jydhc09"; }) ]; From 44cb95a23460707cb100720c23aae6e497177268 Mon Sep 17 00:00:00 2001 From: aszlig Date: Wed, 8 Nov 2017 22:01:20 +0100 Subject: [PATCH 77/85] llvmPackages/libc++: Fix build against glibc 2.26 This is very similar to what we had in bb0b0822ef39d987952a04ae61fb8071. The xlocale.h header is no longer existing in glibc version 2.26, so we need to avoid including it. I've tested building against all of the libcxx attributes of LLVM 3.5, 3.7, 3.8, 3.9, 4 and 5. All of them succeeded except version 3.5, which failed because of an unrelated issue (build of libc++abi has failed, one of its dependencies), so I only verified whether the patch applies cleanly. Signed-off-by: aszlig Cc: @vcunat --- .../compilers/llvm/3.5/libc++/default.nix | 6 +++++- .../llvm/3.5/libc++/xlocale-glibc-2.26.patch | 17 +++++++++++++++++ .../compilers/llvm/3.7/libc++/default.nix | 2 ++ .../llvm/3.7/libc++/xlocale-glibc-2.26.patch | 17 +++++++++++++++++ .../compilers/llvm/3.8/libc++/default.nix | 5 ++++- .../compilers/llvm/3.9/libc++/default.nix | 5 ++++- .../llvm/3.9/libc++/xlocale-glibc-2.26.patch | 19 +++++++++++++++++++ .../compilers/llvm/4/libc++/default.nix | 8 ++++++-- .../llvm/4/libc++/xlocale-glibc-2.26.patch | 19 +++++++++++++++++++ 9 files changed, 93 insertions(+), 5 deletions(-) create mode 100644 pkgs/development/compilers/llvm/3.5/libc++/xlocale-glibc-2.26.patch create mode 100644 pkgs/development/compilers/llvm/3.7/libc++/xlocale-glibc-2.26.patch create mode 100644 pkgs/development/compilers/llvm/3.9/libc++/xlocale-glibc-2.26.patch create mode 100644 pkgs/development/compilers/llvm/4/libc++/xlocale-glibc-2.26.patch 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 From 1f5c2833e945fb8999a75a1e0f1a0b1a920186d7 Mon Sep 17 00:00:00 2001 From: Sergey Alexandrov Date: Wed, 8 Nov 2017 22:28:53 +0100 Subject: [PATCH 78/85] mpdas: init at 0.4.4 (#31398) * mpdas: init at 0.4.4 * mpdas: read config from /etc instead from nix store --- lib/maintainers.nix | 1 + pkgs/tools/audio/mpdas/default.nix | 27 +++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 30 insertions(+) create mode 100644 pkgs/tools/audio/mpdas/default.nix 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/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/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8b888c534da..e37442940da 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 { }; From 1425d4436cc74055f726345f6a82016fa89922ac Mon Sep 17 00:00:00 2001 From: Ruben Maher Date: Thu, 9 Nov 2017 10:43:25 +1030 Subject: [PATCH 79/85] flow: 0.58.0 -> 0.59.0 --- pkgs/development/tools/analysis/flow/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) 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 = '' From e5bda9399db0e5fdcf0982f7752419055d68e2eb Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 01:31:08 +0100 Subject: [PATCH 80/85] netsniff-ng: Fix build against glibc 2.26 The build fails first of all because it cannot find the function body for __builtin_memset. In glibc 2.26 this is available via inclusion of string.h. Another failure was that UINT64_MAX wasn't available in staging/tools.c, which is fixed again by inclusion of stdint.h. Signed-off-by: aszlig Cc: @nckx --- pkgs/tools/networking/netsniff-ng/default.nix | 2 ++ .../networking/netsniff-ng/glibc-2.26.patch | 24 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 pkgs/tools/networking/netsniff-ng/glibc-2.26.patch 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") From 2a894cd2d14e0858d4942cf3d15c188372c3a121 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 02:21:00 +0100 Subject: [PATCH 81/85] lxc: Fix build error with glibc 2.26 This issue doesn't necessarily have to do with glibc 2.26 and it could have been fixed if we'd replace -Werror with -Wall. The error in question was: storage/overlay.c:808:13: error: 'dirlen' may be used uninitialized in this function [-Werror=maybe-uninitialized] After looking at the code in overlay.c it indeed might use dirlen unitialized. Unrelated to the glibc upgrade which brought the problem to the surface, this also has been fixed upstream at lxc/lxc@180c477a326ce85632249ff169. The reason however, that led to the upstream fix was a segfault which has been reported at lxc/lxc#1802. Signed-off-by: aszlig Cc: @wkennington, @globin, @fpletz --- pkgs/os-specific/linux/lxc/default.nix | 6 ++++++ 1 file changed, 6 insertions(+) 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 = '' From 63a47699f7a5358c0c4dac045d04ca0ae5a92424 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 06:01:37 +0100 Subject: [PATCH 82/85] cuneiform: Fix build against glibc 2.26 Since glibc 2.26 the string.h file includes , which in case of cuneiform will include the strings.h found in Kern/hhh/tigerh/h, because of the search path order. Fortunately for us the strings.h in cuneiform are completely unused and no files reference or include it. I even checked various references to types within strings.h and the only occurences are in cf_strings.h, which is also included by other files. Signed-off-by: aszlig Cc: @7c6f434c --- pkgs/tools/graphics/cuneiform/default.nix | 4 ++++ 1 file changed, 4 insertions(+) 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 ]; From e13c6645b16bcbacbf5ca09c10f4da643a0bab61 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 06:42:01 +0100 Subject: [PATCH 83/85] python/natsort: Skip some tests with Python 3.[56] Since the update to Python 3.6.3 in f906d6d18e87f4e2ee8a47d4f6040c77fd6 some of the Hypothesis tests in natsort suddenly begin to fail with errors like this one: res = '\x00\x00', f = > return partial(reduce, lambda res, f: f(res), functions) E ValueError: embedded null character The tests didn't fail with Python 3.6.2, but they did fail with Python 3.5 already. I didn't dig through what the exact problem was, but I'd guess that the problem could lie in Hypothesis itself. Unfortunately updating to the latest version of Hypothesis didn't turn out to be that easy as well, because the newer versions have a circular dependency on pytest and a few other libraries. So I opted against updating Hypothesis for now and just mark the tests as "expected to fail" on purpose so that whenever we someday have a newer version of Hypothesis, the build for natsort will fail and we can remove this patch again. Tested against Python 2.7, 3.4, 3.5 and 3.6 and all of the builds now succeed. Signed-off-by: aszlig Cc: @jluttine, @FRidh --- .../python-modules/natsort/default.nix | 5 ++- .../natsort/python-3.6.3-test-failures.patch | 37 +++++++++++++++++++ 2 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/python-modules/natsort/python-3.6.3-test-failures.patch 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) From c1d12e11200cb383491d6f6cd1d53d2d6dc15aca Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 07:31:26 +0100 Subject: [PATCH 84/85] python/pyinsane2: 2.0.9 -> 2.0.10 Upstream changes: * Now works with 'setup.py develop' (thanks to Matthieu Coudron) * WIA: Some drivers (Lexmark for instance) returns WIA_ERROR_PAPER_EMPTY when calling transfer->Download() instead of returning a shorted image (like HP) * MacOSX + Sane: disable dedicated process workaround (doesn't work) * WIA: Minor optimisation (Use collections.deque() instead of list.pop()) * Sane/exit(): Exit gracefully Full changelog can be found at: https://github.com/openpaperwork/pyinsane/blob/2.0.10/ChangeLog Tested by building and running a few scans. Signed-off-by: aszlig --- pkgs/top-level/python-packages.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c1578987570..c9edff833f5 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -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 From 1b1cc34020a09c740bf8263daa9cc07d8ae52424 Mon Sep 17 00:00:00 2001 From: aszlig Date: Thu, 9 Nov 2017 07:08:56 +0100 Subject: [PATCH 85/85] paperwork(-backend): 1.2 -> 1.2.1 Upstream changes: Paperwork-GUI 1.2.1: * Add source code of Windows installer (NSIS installer) generator * Scanner support / Multi-scan: Cancel also successful scan session. Otherwise some scanner won't allow new scan sessions later. * Remove gi version warnings when starting (thanks to Matthieu Coudron) * Documentation: Add missing stdeb dependencies (thanks to Notkea) * paperwork-shell: Fix command 'scan' * paperwork-shell install: add docstring * Fix dialog 'about' Paperwork-backend 1.2.1: * paperwork-shell: improve help string of 'paperwork-shell chkdeps' * Fix label deletion / renaming * Windows: Fix FS.safe() when used for PDF import * Windows: Fix FS.unsafe() (used for PDF export) Full upstream changelog can be found at: https://github.com/openpaperwork/paperwork/releases/tag/1.2.1 Successfully tested building and running Paperwork with a few test scans. Signed-off-by: aszlig --- pkgs/applications/office/paperwork/default.nix | 13 ++++++++----- pkgs/top-level/python-packages.nix | 6 +++--- 2 files changed, 11 insertions(+), 8 deletions(-) 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/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c9edff833f5..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.