From 213743d4d073d373254b9ff7850a49813b5910e1 Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Tue, 17 Jul 2018 14:30:05 -0400 Subject: [PATCH 01/68] rdocker: init at unstable-2018-07-17 --- pkgs/development/tools/rdocker/default.nix | 32 ++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 34 insertions(+) create mode 100644 pkgs/development/tools/rdocker/default.nix diff --git a/pkgs/development/tools/rdocker/default.nix b/pkgs/development/tools/rdocker/default.nix new file mode 100644 index 00000000000..a5683e7a953 --- /dev/null +++ b/pkgs/development/tools/rdocker/default.nix @@ -0,0 +1,32 @@ +{ stdenv, fetchFromGitHub, makeWrapper, openssh }: + +stdenv.mkDerivation rec { + name = "rdocker-${version}"; + version = "unstable-2018-07-17"; + + src = fetchFromGitHub { + owner = "dvddarias"; + repo = "rdocker"; + rev = "949377de0154ade2d28c6d4c4ec33b65ea813b5a"; + sha256 = "1mwg9zh144q4fqk9016v2d347vzch8sxlixaxrz0ci9dxvs6ibd4"; + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + install -Dm755 rdocker.sh $out/bin/rdocker + ''; + + postInstall = '' + wrapProgram $out/bin/rdocker \ + --prefix PATH : ${stdenv.lib.makeBinPath [ openssh ]} + ''; + + meta = with stdenv.lib; { + description = "Securely control a remote docker daemon CLI using ssh forwarding, no SSL setup needed"; + homepage = https://github.com/dvddarias/rdocker; + maintainers = [ stdenv.lib.maintainers.pneumaticat ]; + license = licenses.mit; + platforms = platforms.unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c42510a5c8d..a52a0295eac 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -8450,6 +8450,8 @@ with pkgs; hammer = callPackage ../development/tools/parsing/hammer { }; + rdocker = callPackage ../development/tools/rdocker { }; + redis-dump = callPackage ../development/tools/redis-dump { }; redo = callPackage ../development/tools/build-managers/redo { }; From 09ade5d281358625562d1dc3890712e7e5ec2a75 Mon Sep 17 00:00:00 2001 From: Manuel Mendez Date: Thu, 4 Oct 2018 16:06:26 -0400 Subject: [PATCH 02/68] pythonPackages.dpath: init at 1.4.2 --- .../python-modules/dpath/default.nix | 25 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 27 insertions(+) create mode 100644 pkgs/development/python-modules/dpath/default.nix diff --git a/pkgs/development/python-modules/dpath/default.nix b/pkgs/development/python-modules/dpath/default.nix new file mode 100644 index 00000000000..3b878f7d5e4 --- /dev/null +++ b/pkgs/development/python-modules/dpath/default.nix @@ -0,0 +1,25 @@ +{ stdenv, fetchPypi, buildPythonPackage +, mock, nose +}: + +buildPythonPackage rec { + pname = "dpath"; + version = "1.4.2"; + + src = fetchPypi { + inherit pname version; + sha256 = "0gr7816pnzbyh9h1ia0qz0q1f9zfzacwb8dc36js8hw8x14myqqg"; + }; + + checkInputs = [ mock nose ]; + checkPhase = '' + nosetests + ''; + + meta = with stdenv.lib; { + homepage = https://github.com/akesterson/dpath-python; + license = [ licenses.mit ]; + description = "A python library for accessing and searching dictionaries via /slashed/paths ala xpath"; + maintainers = [ maintainers.mmlb ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 6c5870b529c..4b7ee3c2e6c 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -1482,6 +1482,8 @@ in { dopy = callPackage ../development/python-modules/dopy { }; + dpath = callPackage ../development/python-modules/dpath { }; + dpkt = callPackage ../development/python-modules/dpkt {}; urllib3 = callPackage ../development/python-modules/urllib3 {}; From 03062770972b33703f17cc016b7551d03445e34e Mon Sep 17 00:00:00 2001 From: Francesco Gazzetta Date: Tue, 30 Oct 2018 12:56:57 +0100 Subject: [PATCH 03/68] sfxr-qt: init at 1.2.0 --- pkgs/applications/audio/sfxr-qt/default.nix | 36 +++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 38 insertions(+) create mode 100644 pkgs/applications/audio/sfxr-qt/default.nix diff --git a/pkgs/applications/audio/sfxr-qt/default.nix b/pkgs/applications/audio/sfxr-qt/default.nix new file mode 100644 index 00000000000..a98d1431d65 --- /dev/null +++ b/pkgs/applications/audio/sfxr-qt/default.nix @@ -0,0 +1,36 @@ +{ stdenv, fetchFromGitHub +, cmake +, qtbase, qtquickcontrols2 +, SDL +, python3 +}: + +stdenv.mkDerivation rec { + name = "sfxr-qt-${version}"; + version = "1.2.0"; + src = fetchFromGitHub { + owner = "agateau"; + repo = "sfxr-qt"; + rev = version; + sha256 = "1ndw1dcmzvkrc6gnb0y057zb4lqlhwrv18jlbx26w3s4xrbxqr41"; + fetchSubmodules = true; + }; + nativeBuildInputs = [ + cmake + (python3.withPackages (pp: with pp; [ pyyaml jinja2 ])) + ]; + buildInputs = [ + qtbase qtquickcontrols2 + SDL + ]; + configurePhase = "cmake . -DCMAKE_INSTALL_PREFIX=$out"; + + meta = with stdenv.lib; { + homepage = https://github.com/agateau/sfxr-qt; + description = "A sound effect generator, QtQuick port of sfxr"; + license = licenses.gpl2; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.linux; + }; +} + diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 80864ab1ce6..9a8c00bad23 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -18846,6 +18846,8 @@ with pkgs; setbfree = callPackage ../applications/audio/setbfree { }; + sfxr-qt = libsForQt5.callPackage ../applications/audio/sfxr-qt { }; + shadowfox = callPackage ../tools/networking/shadowfox { }; shfmt = callPackage ../tools/text/shfmt { }; From c3668db8241c4324a935ce511a7e0519742f94f5 Mon Sep 17 00:00:00 2001 From: James Kay Date: Tue, 18 Sep 2018 18:21:26 +0100 Subject: [PATCH 04/68] python2Packages.plyplus: init at 0.7.5 --- .../python-modules/plyplus/default.nix | 21 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 23 insertions(+) create mode 100644 pkgs/development/python-modules/plyplus/default.nix diff --git a/pkgs/development/python-modules/plyplus/default.nix b/pkgs/development/python-modules/plyplus/default.nix new file mode 100644 index 00000000000..2b18d114f3f --- /dev/null +++ b/pkgs/development/python-modules/plyplus/default.nix @@ -0,0 +1,21 @@ +{ lib, fetchPypi, buildPythonPackage, ply, isPy3k }: +buildPythonPackage rec { + pname = "PlyPlus"; + version = "0.7.5"; + + src = fetchPypi { + inherit pname version; + sha256 = "0g3flgfm3jpb2d8v9z0qmbwca5gxdqr10cs3zvlfhv5cs06ahpnp"; + }; + + propagatedBuildInputs = [ ply ]; + + disabled = isPy3k; + + meta = { + homepage = https://github.com/erezsh/plyplus; + description = "A general-purpose parser built on top of PLY"; + maintainers = with lib.maintainers; [ twey ]; + license = lib.licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2ce0751069c..d0b31ef797d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3024,6 +3024,8 @@ in { ply = callPackage ../development/python-modules/ply { }; + plyplus = callPackage ../development/python-modules/plyplus { }; + plyvel = callPackage ../development/python-modules/plyvel { }; osc = callPackage ../development/python-modules/osc { }; From c9034d2399ecb3a71a023e4890beac5793976441 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Fri, 9 Nov 2018 22:37:09 +0900 Subject: [PATCH 05/68] opensmtpd-extras: 5.7.1 -> 6.4.0 Also use `enable*` flags instead of the impossible-to-discover trick of setting to `null` the dependencies. --- pkgs/servers/mail/opensmtpd/extras.nix | 37 +++++++++++++++++--------- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/pkgs/servers/mail/opensmtpd/extras.nix b/pkgs/servers/mail/opensmtpd/extras.nix index 6b63c317d78..1d4ad63c37d 100644 --- a/pkgs/servers/mail/opensmtpd/extras.nix +++ b/pkgs/servers/mail/opensmtpd/extras.nix @@ -1,13 +1,21 @@ { stdenv, fetchurl, openssl, libevent, libasr, - python2, pkgconfig, lua5, perl, mysql, postgresql, sqlite, hiredis }: + python2, pkgconfig, lua5, perl, mysql, postgresql, sqlite, hiredis, + enablePython ? true, + enableLua ? true, + enablePerl ? true, + enableMysql ? true, + enablePostgres ? true, + enableSqlite ? true, + enableRedis ? true, +}: stdenv.mkDerivation rec { name = "opensmtpd-extras-${version}"; - version = "5.7.1"; + version = "6.4.0"; src = fetchurl { url = "https://www.opensmtpd.org/archives/${name}.tar.gz"; - sha256 = "1kld4hxgz792s0cb2gl7m2n618ikzqkj88w5dhaxdrxg4x2c4vdm"; + sha256 = "09k25l7zy5ch3fk6qphni2h0rxdp8wacmfag1whi608dgimrhrnb"; }; nativeBuildInputs = [ pkgconfig ]; @@ -40,42 +48,45 @@ stdenv.mkDerivation rec { "--with-scheduler-ram" "--with-scheduler-stub" - ] ++ stdenv.lib.optional (python2 != null) [ + ] ++ stdenv.lib.optional enablePython [ "--with-python=${python2}" "--with-filter-python" "--with-queue-python" "--with-table-python" "--with-scheduler-python" - ] ++ stdenv.lib.optional (lua5 != null) [ + ] ++ stdenv.lib.optional enableLua [ "--with-lua=${pkgconfig}" "--with-filter-lua" - ] ++ stdenv.lib.optional (perl != null) [ + ] ++ stdenv.lib.optional enablePerl [ "--with-perl=${perl}" "--with-filter-perl" - ] ++ stdenv.lib.optional (mysql != null) [ + ] ++ stdenv.lib.optional enableMysql [ "--with-table-mysql" - ] ++ stdenv.lib.optional (postgresql != null) [ + ] ++ stdenv.lib.optional enablePostgres [ "--with-table-postgres" - ] ++ stdenv.lib.optional (sqlite != null) [ + ] ++ stdenv.lib.optional enableSqlite [ "--with-table-sqlite" - ] ++ stdenv.lib.optional (hiredis != null) [ + ] ++ stdenv.lib.optional enableRedis [ "--with-table-redis" ]; - NIX_CFLAGS_COMPILE = stdenv.lib.optional (hiredis != null) "-I${hiredis}/include/hiredis" ++ - stdenv.lib.optional (mysql != null) "-L${mysql.connector-c}/lib/mysql"; + NIX_CFLAGS_COMPILE = + stdenv.lib.optional enableRedis + "-I${hiredis}/include/hiredis -lhiredis" + ++ stdenv.lib.optional enableMysql + "-L${mysql.connector-c}/lib/mysql"; meta = with stdenv.lib; { homepage = https://www.opensmtpd.org/; description = "Extra plugins for the OpenSMTPD mail server"; license = licenses.isc; platforms = platforms.linux; - maintainers = with maintainers; [ gebner ]; + maintainers = with maintainers; [ gebner ekleog ]; }; } From 7cd159db1b66d343de9960f660c6128db2711ef4 Mon Sep 17 00:00:00 2001 From: "R. RyanTM" Date: Fri, 9 Nov 2018 16:35:56 -0800 Subject: [PATCH 06/68] gocr: 0.51 -> 0.52 Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/gocr/versions --- pkgs/applications/graphics/gocr/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/graphics/gocr/default.nix b/pkgs/applications/graphics/gocr/default.nix index 78772a63dfe..f5fa8ca9221 100644 --- a/pkgs/applications/graphics/gocr/default.nix +++ b/pkgs/applications/graphics/gocr/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, tk }: stdenv.mkDerivation rec { - name = "gocr-0.51"; + name = "gocr-0.52"; src = fetchurl { url = "https://www-e.uni-magdeburg.de/jschulen/ocr/${name}.tar.gz"; - sha256 = "14i6zi6q11h6d0qds2cpvgvhbxk5xaa027h8cd0wy1zblh7sxckf"; + sha256 = "11l6gds1lrm8lwrrsxnm5fjlwz8q1xbh896cprrl4psz21in946z"; }; buildFlags = [ "all" "libs" ]; From c43abffb9c1b8f38fc17d09072e1c83fa92c34fb Mon Sep 17 00:00:00 2001 From: David McFarland Date: Sat, 10 Nov 2018 15:11:15 -0400 Subject: [PATCH 07/68] androidsdk: fix monitor interpreter path --- pkgs/development/mobile/androidenv/androidsdk.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index a463adaf731..3c2e6c530d2 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -93,7 +93,7 @@ stdenv.mkDerivation rec { # The monitor requires some more patching cd lib/monitor-x86 - patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux.so.2 monitor + patchelf --set-interpreter ${stdenv_32bit.cc.libc.out}/lib/ld-linux.so.2 monitor patchelf --set-rpath ${makeLibraryPath [ libX11 libXext libXrender freetype fontconfig ]} libcairo-swt.so wrapProgram `pwd`/monitor \ From 230f71477bdd051e203d63c123b2a5cb7fed65a4 Mon Sep 17 00:00:00 2001 From: Tom Hall Date: Sat, 10 Nov 2018 18:40:12 +0000 Subject: [PATCH 08/68] qtwebglplugin: init at 5.11 Note: As with all Qt plugins, must set QT_QPA_PLATFORM_PLUGIN_PATH=~/.nix-profile/lib/qt-5.11/plugins for it to be found. --- pkgs/development/libraries/qt-5/5.11/default.nix | 1 + pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix | 6 ++++++ 2 files changed, 7 insertions(+) create mode 100644 pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix diff --git a/pkgs/development/libraries/qt-5/5.11/default.nix b/pkgs/development/libraries/qt-5/5.11/default.nix index bc4b0a8f33b..57300878e49 100644 --- a/pkgs/development/libraries/qt-5/5.11/default.nix +++ b/pkgs/development/libraries/qt-5/5.11/default.nix @@ -113,6 +113,7 @@ let qtwayland = callPackage ../modules/qtwayland.nix {}; qtwebchannel = callPackage ../modules/qtwebchannel.nix {}; qtwebengine = callPackage ../modules/qtwebengine.nix {}; + qtwebglplugin = callPackage ../modules/qtwebglplugin.nix {}; qtwebkit = callPackage ../modules/qtwebkit.nix {}; qtwebsockets = callPackage ../modules/qtwebsockets.nix {}; qtx11extras = callPackage ../modules/qtx11extras.nix {}; diff --git a/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix b/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix new file mode 100644 index 00000000000..444d0c1beae --- /dev/null +++ b/pkgs/development/libraries/qt-5/modules/qtwebglplugin.nix @@ -0,0 +1,6 @@ +{ qtModule, qtbase, qtwebsockets }: + +qtModule { + name = "qtwebglplugin"; + qtInputs = [ qtbase qtwebsockets ]; +} From b51018ed2ed174c7fa0be3d68aca2f0b51656e7d Mon Sep 17 00:00:00 2001 From: Tom Hall Date: Sat, 3 Nov 2018 20:27:41 +0000 Subject: [PATCH 09/68] R: Remove jdk dependency on aarch32/64 Add javaSupport as an argument for R. Default to false on arm as there is no free jdk on arm. --- pkgs/applications/science/math/R/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/science/math/R/default.nix b/pkgs/applications/science/math/R/default.nix index 913fac6ac12..2fa8f3e5d7b 100644 --- a/pkgs/applications/science/math/R/default.nix +++ b/pkgs/applications/science/math/R/default.nix @@ -4,6 +4,7 @@ , curl, Cocoa, Foundation, libobjc, libcxx, tzdata , withRecommendedPackages ? true , enableStrictBarrier ? false +, javaSupport ? (!stdenv.hostPlatform.isAarch32 && !stdenv.hostPlatform.isAarch64) }: stdenv.mkDerivation rec { @@ -17,9 +18,10 @@ stdenv.mkDerivation rec { buildInputs = [ bzip2 gfortran libX11 libXmu libXt libXt libjpeg libpng libtiff ncurses pango pcre perl readline texLive xz zlib less texinfo graphviz icu - pkgconfig bison imake which jdk openblas curl + pkgconfig bison imake which openblas curl ] ++ stdenv.lib.optionals (!stdenv.isDarwin) [ tcl tk ] - ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ]; + ++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa Foundation libobjc libcxx ] + ++ stdenv.lib.optional javaSupport jdk; patches = [ ./no-usr-local-search-paths.patch ]; @@ -47,7 +49,7 @@ stdenv.mkDerivation rec { CC=$(type -p cc) CXX=$(type -p c++) FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran" - JAVA_HOME="${jdk}" + ${stdenv.lib.optionalString javaSupport "JAVA_HOME=\"${jdk}\""} RANLIB=$(type -p ranlib) R_SHELL="${stdenv.shell}" '' + stdenv.lib.optionalString stdenv.isDarwin '' From a538d9982a12c5d4d1d27dca05957f5257b926ed Mon Sep 17 00:00:00 2001 From: volth Date: Sun, 11 Nov 2018 01:17:56 +0000 Subject: [PATCH 10/68] gnum4: set platforms=all; it works on Windows --- pkgs/development/tools/misc/gnum4/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index e5ea17841aa..c6dd843aac3 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { ''; license = stdenv.lib.licenses.gpl3Plus; - platforms = stdenv.lib.platforms.unix; + platforms = stdenv.lib.platforms.all; }; } From 31beea9818cb780237616d140f4dba090cd2cf44 Mon Sep 17 00:00:00 2001 From: volth Date: Sun, 11 Nov 2018 01:42:40 +0000 Subject: [PATCH 11/68] gnum4: set platforms=unix++windows --- pkgs/development/tools/misc/gnum4/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/tools/misc/gnum4/default.nix b/pkgs/development/tools/misc/gnum4/default.nix index c6dd843aac3..12a5b8f2adc 100644 --- a/pkgs/development/tools/misc/gnum4/default.nix +++ b/pkgs/development/tools/misc/gnum4/default.nix @@ -37,7 +37,7 @@ stdenv.mkDerivation rec { ''; license = stdenv.lib.licenses.gpl3Plus; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.unix ++ stdenv.lib.platforms.windows; }; } From c4cb982772f043365cb49d52c2afe2b03e791ea6 Mon Sep 17 00:00:00 2001 From: Edmund Wu Date: Sun, 4 Nov 2018 20:25:11 -0500 Subject: [PATCH 12/68] vscode-extensions.ms-python.python: 2018.9.1 -> 2018.10.1 --- pkgs/misc/vscode-extensions/python/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/misc/vscode-extensions/python/default.nix b/pkgs/misc/vscode-extensions/python/default.nix index a2d04edea19..39e1341e15e 100644 --- a/pkgs/misc/vscode-extensions/python/default.nix +++ b/pkgs/misc/vscode-extensions/python/default.nix @@ -20,8 +20,8 @@ vscode-utils.buildVscodeMarketplaceExtension { mktplcRef = { name = "python"; publisher = "ms-python"; - version = "2018.9.1"; - sha256 = "050r1rb0xyfikfa6iq741s368xz600pqdk74w6cxszxpy8kl2hng"; + version = "2018.10.1"; + sha256 = "1j9nf09v31lmrjkxf7p1d78d064x6afzh0dvssmk3sjm2c5r432k"; }; postPatch = '' From 48a3ea0f8148bffec8067bd47ebc75b16cb4bb01 Mon Sep 17 00:00:00 2001 From: worldofpeace Date: Sat, 10 Nov 2018 22:01:44 -0500 Subject: [PATCH 13/68] wire-desktop: don't explicitly set phases part of #28910 --- .../networking/instant-messengers/wire-desktop/default.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix index 193e306f228..c685a5b91c1 100644 --- a/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix +++ b/pkgs/applications/networking/instant-messengers/wire-desktop/default.nix @@ -72,7 +72,10 @@ in categories = "Network;InstantMessaging;Chat;VideoConference"; }; - phases = [ "unpackPhase" "installPhase" ]; + dontBuild = true; + dontPatchELF = true; + dontConfigure = true; + nativeBuildInputs = [ dpkg ]; unpackPhase = "dpkg-deb -x $src ."; installPhase = '' @@ -93,7 +96,7 @@ in # Desktop file mkdir -p "$out/share/applications" - cp ${desktopItem}/share/applications/* "$out/share/applications" + cp "${desktopItem}/share/applications/"* "$out/share/applications" ''; meta = with stdenv.lib; { From 53022223373ff40b45b6e4fe69720f11422d302e Mon Sep 17 00:00:00 2001 From: ryan4729 Date: Sat, 10 Nov 2018 22:41:46 -0800 Subject: [PATCH 14/68] go: make compiler usable for cross compiles --- pkgs/development/compilers/go/1.11.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/development/compilers/go/1.11.nix b/pkgs/development/compilers/go/1.11.nix index f58e0801030..59716fbcdb6 100644 --- a/pkgs/development/compilers/go/1.11.nix +++ b/pkgs/development/compilers/go/1.11.nix @@ -133,12 +133,12 @@ stdenv.mkDerivation rec { GOOS = if stdenv.isDarwin then "darwin" else "linux"; GOARCH = if stdenv.isDarwin then "amd64" - else if stdenv.targetPlatform.isi686 then "386" - else if stdenv.targetPlatform.isx86_64 then "amd64" - else if stdenv.targetPlatform.isAarch32 then "arm" - else if stdenv.targetPlatform.isAarch64 then "arm64" + else if stdenv.hostPlatform.isi686 then "386" + else if stdenv.hostPlatform.isx86_64 then "amd64" + else if stdenv.hostPlatform.isAarch32 then "arm" + else if stdenv.hostPlatform.isAarch64 then "arm64" else throw "Unsupported system"; - GOARM = toString (stdenv.lib.intersectLists [(stdenv.targetPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); + GOARM = toString (stdenv.lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); GO386 = 387; # from Arch: don't assume sse2 on i686 CGO_ENABLED = 1; GOROOT_BOOTSTRAP = "${goBootstrap}/share/go"; From 6c7ff0cca82d3759550669a1fb7a0e1d0479a38d Mon Sep 17 00:00:00 2001 From: fuwa Date: Sun, 11 Nov 2018 14:39:25 +0800 Subject: [PATCH 15/68] maintainers: add fuwa --- maintainers/maintainer-list.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 22ea07b9f11..fc9ee84c4c9 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1511,6 +1511,11 @@ github = "fuuzetsu"; name = "Mateusz Kowalczyk"; }; + fuwa = { + email = "echowss@gmail.com"; + github = "fuwa0529"; + name = "Haruka Akiyama"; + }; fuzzy-id = { email = "hacking+nixos@babibo.de"; name = "Thomas Bach"; From 931ebbc77a45fe36c55deba51de7c259666bf678 Mon Sep 17 00:00:00 2001 From: fuwa Date: Sun, 11 Nov 2018 14:40:25 +0800 Subject: [PATCH 16/68] wownero: init at 0.4.0.0 --- pkgs/applications/altcoins/default.nix | 4 ++ pkgs/applications/altcoins/wownero.nix | 51 ++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 pkgs/applications/altcoins/wownero.nix diff --git a/pkgs/applications/altcoins/default.nix b/pkgs/applications/altcoins/default.nix index 87f5d0be68a..bc55f85b10d 100644 --- a/pkgs/applications/altcoins/default.nix +++ b/pkgs/applications/altcoins/default.nix @@ -81,6 +81,10 @@ rec { sumokoin = callPackage ./sumokoin.nix { }; + wownero = callPackage ./wownero.nix { + inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC; + }; + zcash = callPackage ./zcash { withGui = false; openssl = openssl_1_1; diff --git a/pkgs/applications/altcoins/wownero.nix b/pkgs/applications/altcoins/wownero.nix new file mode 100644 index 00000000000..4b62ba759f3 --- /dev/null +++ b/pkgs/applications/altcoins/wownero.nix @@ -0,0 +1,51 @@ +{ stdenv, fetchFromGitHub, cmake, pkgconfig, git +, boost, miniupnpc, openssl, unbound, cppzmq +, zeromq, pcsclite, readline, libsodium +, CoreData, IOKit, PCSC +}: + +assert stdenv.isDarwin -> IOKit != null; + +with stdenv.lib; + +stdenv.mkDerivation rec { + name = "wownero-${version}"; + + version = "0.4.0.0"; + src = fetchFromGitHub { + owner = "wownero"; + repo = "wownero"; + fetchSubmodules = true; + rev = "v${version}"; + sha256 = "1z5fpl4gwys4v8ffrymlzwrbnrbg73x553a9lxwny7ba8yg2k14p"; + }; + + nativeBuildInputs = [ cmake pkgconfig git ]; + + buildInputs = [ + boost miniupnpc openssl unbound + cppzmq zeromq pcsclite readline libsodium + ] ++ optionals stdenv.isDarwin [ IOKit CoreData PCSC ]; + + cmakeFlags = [ + "-DReadline_ROOT_DIR=${readline.dev}" + "-DMANUAL_SUBMODULES=ON" + ] ++ optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF"; + + hardeningDisable = [ "fortify" ]; + + meta = { + description = "Wownero is a fork of the cryptocurrency Monero with primary alterations"; + longDescription = '' + Wownero’s emission is capped and supply is finite. Wownero is a fairly + launched coin with no premine. It’s not a fork of another blockchain. With + its own genesis block there is no degradation of privacy caused by ring + signatures using different participants for the same transaction outputs. + Unlike opposing forks. + ''; + homepage = http://wownero.org/; + license = licenses.bsd3; + platforms = platforms.all; + maintainers = with maintainers; [ fuwa ]; + }; +} From 9d164580ba468efb1ec1b892ee5fc49109c33112 Mon Sep 17 00:00:00 2001 From: volth Date: Sun, 11 Nov 2018 06:57:28 +0000 Subject: [PATCH 17/68] gnused: fix Windows build --- pkgs/tools/text/gnused/422.nix | 2 ++ pkgs/tools/text/gnused/default.nix | 2 +- pkgs/top-level/all-packages.nix | 5 ++++- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/text/gnused/422.nix b/pkgs/tools/text/gnused/422.nix index 037c2f17a63..16d4f20fe8e 100644 --- a/pkgs/tools/text/gnused/422.nix +++ b/pkgs/tools/text/gnused/422.nix @@ -8,6 +8,8 @@ stdenv.mkDerivation { sha256 = "f048d1838da284c8bc9753e4506b85a1e0cc1ea8999d36f6995bcb9460cddbd7"; }; + configureFlags = stdenv.lib.optional stdenv.hostPlatform.isMinGW "ac_cv_func__set_invalid_parameter_handler=no"; + outputs = [ "out" "info" ]; meta = { diff --git a/pkgs/tools/text/gnused/default.nix b/pkgs/tools/text/gnused/default.nix index af3db54e96d..4bdddb8c50b 100644 --- a/pkgs/tools/text/gnused/default.nix +++ b/pkgs/tools/text/gnused/default.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { license = stdenv.lib.licenses.gpl3Plus; - platforms = stdenv.lib.platforms.all; + platforms = stdenv.lib.platforms.unix; maintainers = [ ]; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ed395ea8d4a..222d73f4005 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2964,7 +2964,10 @@ with pkgs; gnu-pw-mgr = callPackage ../tools/security/gnu-pw-mgr { }; - gnused = callPackage ../tools/text/gnused { }; + gnused = if !stdenv.hostPlatform.isWindows then + callPackage ../tools/text/gnused { } # broken on Windows + else + gnused_422; # This is an easy work-around for [:space:] problems. gnused_422 = callPackage ../tools/text/gnused/422.nix { }; From 961180afc8ef4efd94487e2fc9d86b10a6099d93 Mon Sep 17 00:00:00 2001 From: Frederik Rietdijk Date: Sun, 11 Nov 2018 09:54:28 +0100 Subject: [PATCH 18/68] scour: call via python-packages.nix --- .../python-modules}/scour/default.nix | 12 ++++++------ pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/python-packages.nix | 2 ++ 3 files changed, 9 insertions(+), 7 deletions(-) rename pkgs/{tools/graphics => development/python-modules}/scour/default.nix (73%) diff --git a/pkgs/tools/graphics/scour/default.nix b/pkgs/development/python-modules/scour/default.nix similarity index 73% rename from pkgs/tools/graphics/scour/default.nix rename to pkgs/development/python-modules/scour/default.nix index 11932aabe0b..7c198519331 100644 --- a/pkgs/tools/graphics/scour/default.nix +++ b/pkgs/development/python-modules/scour/default.nix @@ -1,8 +1,6 @@ -{ stdenv, python3 }: +{ lib, buildPythonPackage, fetchPypi, six }: -with python3.pkgs; - -buildPythonApplication rec { +buildPythonPackage rec { pname = "scour"; version = "0.37"; @@ -13,11 +11,13 @@ buildPythonApplication rec { propagatedBuildInputs = [ six ]; - meta = with stdenv.lib; { + # No tests included in archive + doCheck = false; + + meta = with lib; { description = "An SVG Optimizer / Cleaner "; homepage = https://github.com/scour-project/scour; license = licenses.asl20; maintainers = with maintainers; [ worldofpeace ]; - platforms = platforms.unix; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ed395ea8d4a..1808dcf281e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1585,7 +1585,7 @@ with pkgs; parallel-rust = callPackage ../tools/misc/parallel-rust { }; - scour = callPackage ../tools/graphics/scour { }; + scour = with python3Packages; toPythonApplication scour; s2png = callPackage ../tools/graphics/s2png { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 33ac0b0bb69..f817cb3d061 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11076,6 +11076,8 @@ EOF inherit python; })).python; + scour = callPackage ../development/python-modules/scour { }; + }); in fix' (extends overrides packages) From 880fae6a084a66dae6d92dd5fe4416bd4eed4978 Mon Sep 17 00:00:00 2001 From: Sebastien Maret Date: Sat, 3 Nov 2018 13:40:48 +0100 Subject: [PATCH 19/68] matplotlib: 2.2.3 -> 3.0.2 Python 3 will use the new matplotlib 3.x while Python 2 will use 2.x. matplotlib: keep 2.2.3 for Python2k --- .../python-modules/matplotlib/2.nix | 91 +++++++++++++++++++ .../matplotlib/darwin-stdenv-2.2.3.patch | 10 ++ .../matplotlib/darwin-stdenv.patch | 14 +-- .../python-modules/matplotlib/default.nix | 16 ++-- pkgs/top-level/python-packages.nix | 6 +- 5 files changed, 121 insertions(+), 16 deletions(-) create mode 100644 pkgs/development/python-modules/matplotlib/2.nix create mode 100644 pkgs/development/python-modules/matplotlib/darwin-stdenv-2.2.3.patch diff --git a/pkgs/development/python-modules/matplotlib/2.nix b/pkgs/development/python-modules/matplotlib/2.nix new file mode 100644 index 00000000000..f073e7baa4e --- /dev/null +++ b/pkgs/development/python-modules/matplotlib/2.nix @@ -0,0 +1,91 @@ +{ stdenv, fetchPypi, python, buildPythonPackage, pycairo, backports_functools_lru_cache +, which, cycler, dateutil, nose, numpy, pyparsing, sphinx, tornado, kiwisolver +, freetype, libpng, pkgconfig, mock, pytz, pygobject3, functools32, subprocess32 +, enableGhostscript ? false, ghostscript ? null, gtk3 +, enableGtk2 ? false, pygtk ? null, gobjectIntrospection +, enableGtk3 ? false, cairo +, enableTk ? false, tcl ? null, tk ? null, tkinter ? null, libX11 ? null +, enableQt ? false, pyqt4 +, libcxx +, Cocoa +, pythonOlder +}: + +assert enableGhostscript -> ghostscript != null; +assert enableGtk2 -> pygtk != null; +assert enableTk -> (tcl != null) + && (tk != null) + && (tkinter != null) + && (libX11 != null) + ; +assert enableQt -> pyqt4 != null; + +buildPythonPackage rec { + version = "2.2.3"; + pname = "matplotlib"; + + src = fetchPypi { + inherit pname version; + sha256 = "7355bf757ecacd5f0ac9dd9523c8e1a1103faadf8d33c22664178e17533f8ce5"; + }; + + NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1"; + + XDG_RUNTIME_DIR = "/tmp"; + + buildInputs = [ python which sphinx stdenv ] + ++ stdenv.lib.optional enableGhostscript ghostscript + ++ stdenv.lib.optional stdenv.isDarwin [ Cocoa ]; + + propagatedBuildInputs = + [ cycler dateutil nose numpy pyparsing tornado freetype kiwisolver + libpng pkgconfig mock pytz ] + ++ stdenv.lib.optional (pythonOlder "3.3") backports_functools_lru_cache + ++ stdenv.lib.optional enableGtk2 pygtk + ++ stdenv.lib.optionals enableGtk3 [ cairo pycairo gtk3 gobjectIntrospection pygobject3 ] + ++ stdenv.lib.optionals enableTk [ tcl tk tkinter libX11 ] + ++ stdenv.lib.optionals enableQt [ pyqt4 ] + ++ stdenv.lib.optionals (builtins.hasAttr "isPy2" python) [ functools32 subprocess32 ]; + + patches = + [ ./basedirlist.patch ] ++ + stdenv.lib.optionals stdenv.isDarwin [ ./darwin-stdenv-2.2.3.patch ]; + + # Matplotlib tries to find Tcl/Tk by opening a Tk window and asking the + # corresponding interpreter object for its library paths. This fails if + # `$DISPLAY` is not set. The fallback option assumes that Tcl/Tk are both + # installed under the same path which is not true in Nix. + # With the following patch we just hard-code these paths into the install + # script. + postPatch = + let + inherit (stdenv.lib.strings) substring; + tcl_tk_cache = ''"${tk}/lib", "${tcl}/lib", "${substring 0 3 tk.version}"''; + in + stdenv.lib.optionalString enableTk + "sed -i '/self.tcl_tk_cache = None/s|None|${tcl_tk_cache}|' setupext.py"; + + checkPhase = '' + ${python.interpreter} tests.py + ''; + + # Test data is not included in the distribution (the `tests` folder + # is missing) + doCheck = false; + + prePatch = '' + # Failing test: ERROR: matplotlib.tests.test_style.test_use_url + sed -i 's/test_use_url/fails/' lib/matplotlib/tests/test_style.py + # Failing test: ERROR: test suite for + sed -i 's/TestTinyPages/fails/' lib/matplotlib/sphinxext/tests/test_tinypages.py + # Transient errors + sed -i 's/test_invisible_Line_rendering/noop/' lib/matplotlib/tests/test_lines.py + ''; + + meta = with stdenv.lib; { + description = "Python plotting library, making publication quality plots"; + homepage = "https://matplotlib.org/"; + maintainers = with maintainers; [ lovek323 ]; + }; + +} diff --git a/pkgs/development/python-modules/matplotlib/darwin-stdenv-2.2.3.patch b/pkgs/development/python-modules/matplotlib/darwin-stdenv-2.2.3.patch new file mode 100644 index 00000000000..ca399b4e684 --- /dev/null +++ b/pkgs/development/python-modules/matplotlib/darwin-stdenv-2.2.3.patch @@ -0,0 +1,10 @@ +--- a/src/_macosx.m 2015-10-30 00:46:20.000000000 +0200 ++++ b/src/_macosx.m 2015-11-01 14:52:25.000000000 +0200 +@@ -6264,6 +6264,7 @@ + + static bool verify_framework(void) + { ++ return true; /* nixpkgs darwin stdenv */ + #ifdef COMPILING_FOR_10_6 + NSRunningApplication* app = [NSRunningApplication currentApplication]; + NSApplicationActivationPolicy activationPolicy = [app activationPolicy]; diff --git a/pkgs/development/python-modules/matplotlib/darwin-stdenv.patch b/pkgs/development/python-modules/matplotlib/darwin-stdenv.patch index ca399b4e684..27ed8fc9f96 100644 --- a/pkgs/development/python-modules/matplotlib/darwin-stdenv.patch +++ b/pkgs/development/python-modules/matplotlib/darwin-stdenv.patch @@ -1,10 +1,12 @@ ---- a/src/_macosx.m 2015-10-30 00:46:20.000000000 +0200 -+++ b/src/_macosx.m 2015-11-01 14:52:25.000000000 +0200 -@@ -6264,6 +6264,7 @@ +diff -ruN matplotlib-3.0.0/src/_macosx.m matplotlib-3.0.0.patched/src/_macosx.m +--- matplotlib-3.0.0/src/_macosx.m 2018-09-16 00:35:21.000000000 +0200 ++++ matplotlib-3.0.0.patched/src/_macosx.m 2018-11-03 13:14:33.000000000 +0100 +@@ -2577,6 +2577,7 @@ static bool verify_framework(void) { + return true; /* nixpkgs darwin stdenv */ - #ifdef COMPILING_FOR_10_6 - NSRunningApplication* app = [NSRunningApplication currentApplication]; - NSApplicationActivationPolicy activationPolicy = [app activationPolicy]; + ProcessSerialNumber psn; + /* These methods are deprecated, but they don't require the app to + have started */ + diff --git a/pkgs/development/python-modules/matplotlib/default.nix b/pkgs/development/python-modules/matplotlib/default.nix index f9aa8cb2ebe..2cd7557bac7 100644 --- a/pkgs/development/python-modules/matplotlib/default.nix +++ b/pkgs/development/python-modules/matplotlib/default.nix @@ -1,7 +1,7 @@ -{ stdenv, fetchPypi, python, buildPythonPackage, pycairo, backports_functools_lru_cache +{ stdenv, fetchPypi, python, buildPythonPackage, isPy3k, pycairo, backports_functools_lru_cache , which, cycler, dateutil, nose, numpy, pyparsing, sphinx, tornado, kiwisolver , freetype, libpng, pkgconfig, mock, pytz, pygobject3, functools32, subprocess32 -, enableGhostscript ? false, ghostscript ? null, gtk3 +, enableGhostscript ? true, ghostscript ? null, gtk3 , enableGtk2 ? false, pygtk ? null, gobjectIntrospection , enableGtk3 ? false, cairo , enableTk ? false, tcl ? null, tk ? null, tkinter ? null, libX11 ? null @@ -21,12 +21,14 @@ assert enableTk -> (tcl != null) assert enableQt -> pyqt4 != null; buildPythonPackage rec { - version = "2.2.3"; + version = "3.0.2"; pname = "matplotlib"; + disabled = !isPy3k; + src = fetchPypi { inherit pname version; - sha256 = "7355bf757ecacd5f0ac9dd9523c8e1a1103faadf8d33c22664178e17533f8ce5"; + sha256 = "c94b792af431f6adb6859eb218137acd9a35f4f7442cea57e4a59c54751c36af"; }; NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-I${libcxx}/include/c++/v1"; @@ -44,8 +46,7 @@ buildPythonPackage rec { ++ stdenv.lib.optional enableGtk2 pygtk ++ stdenv.lib.optionals enableGtk3 [ cairo pycairo gtk3 gobjectIntrospection pygobject3 ] ++ stdenv.lib.optionals enableTk [ tcl tk tkinter libX11 ] - ++ stdenv.lib.optionals enableQt [ pyqt4 ] - ++ stdenv.lib.optionals (builtins.hasAttr "isPy2" python) [ functools32 subprocess32 ]; + ++ stdenv.lib.optionals enableQt [ pyqt4 ]; patches = [ ./basedirlist.patch ] ++ @@ -84,9 +85,8 @@ buildPythonPackage rec { meta = with stdenv.lib; { description = "Python plotting library, making publication quality plots"; - homepage = "http://matplotlib.sourceforge.net/"; + homepage = "https://matplotlib.org/"; maintainers = with maintainers; [ lovek323 ]; - platforms = platforms.unix; }; } diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index f817cb3d061..e4e561682bf 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2746,9 +2746,11 @@ in { mathics = callPackage ../development/python-modules/mathics { }; - matplotlib = callPackage ../development/python-modules/matplotlib { + matplotlib = let + path = if isPy3k then ../development/python-modules/matplotlib/default.nix else + ../development/python-modules/matplotlib/2.nix; + in callPackage path { stdenv = if stdenv.isDarwin then pkgs.clangStdenv else pkgs.stdenv; - enableGhostscript = true; inherit (pkgs.darwin.apple_sdk.frameworks) Cocoa; }; From fb3d15c34c8661e64ffe077b95ad04d9f638dee2 Mon Sep 17 00:00:00 2001 From: nyanloutre Date: Sun, 11 Nov 2018 10:51:06 +0100 Subject: [PATCH 20/68] spaceship-prompt: correct homepage url --- pkgs/shells/zsh/spaceship-prompt/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/shells/zsh/spaceship-prompt/default.nix b/pkgs/shells/zsh/spaceship-prompt/default.nix index 312b1e79f49..28b116523ac 100644 --- a/pkgs/shells/zsh/spaceship-prompt/default.nix +++ b/pkgs/shells/zsh/spaceship-prompt/default.nix @@ -25,7 +25,7 @@ stdenv.mkDerivation rec{ meta = with stdenv.lib; { description = "Zsh prompt for Astronauts"; - homepage = https://github.com/halfo/lambda-mod-zsh-theme/; + homepage = https://github.com/denysdovhan/spaceship-prompt/; license = licenses.mit; platforms = platforms.linux; maintainers = with maintainers; [ nyanloutre ]; From 879789666ff71bb4306ed60ecec4a6c1ac89c2fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sun, 11 Nov 2018 11:00:28 +0100 Subject: [PATCH 21/68] python.pkgs.py3status: 3.13 -> 3.14 --- pkgs/development/python-modules/py3status/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/python-modules/py3status/default.nix b/pkgs/development/python-modules/py3status/default.nix index b580ae89850..edd98020f06 100644 --- a/pkgs/development/python-modules/py3status/default.nix +++ b/pkgs/development/python-modules/py3status/default.nix @@ -19,11 +19,11 @@ buildPythonPackage rec { pname = "py3status"; - version = "3.13"; + version = "3.14"; src = fetchPypi { inherit pname version; - sha256 = "b4262db0b3b181fbf1a44679cd817c1cf0126ec34b3537550e294208f413daac"; + sha256 = "8775fb3903458a519593fc22b712ccac598464e319a12b9fdf04803fa60a1583"; }; doCheck = false; From 0a7d20ece5f0d75e22cda4e2d665aec356310707 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niklas=20Th=C3=B6rne?= Date: Sun, 11 Nov 2018 12:15:06 +0100 Subject: [PATCH 22/68] uftrace: 0.9 -> 0.9.1 (#50228) --- pkgs/development/tools/uftrace/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/development/tools/uftrace/default.nix b/pkgs/development/tools/uftrace/default.nix index fa57ce9df21..7d5569b4376 100644 --- a/pkgs/development/tools/uftrace/default.nix +++ b/pkgs/development/tools/uftrace/default.nix @@ -1,14 +1,14 @@ -{stdenv, fetchFromGitHub }: +{stdenv, fetchFromGitHub}: stdenv.mkDerivation rec { name = "uftrace-${version}"; - version = "0.9"; + version = "0.9.1"; src = fetchFromGitHub { owner = "namhyung"; repo = "uftrace"; - rev = "f0fed0b24a9727ffed04673b62f66baad21a1f99"; - sha256 = "0rn2xwd87qy5ihn5zq9pwq8cs1vfmcqqz0wl70wskkgp2ccsd9x8"; + rev = "v${version}"; + sha256 = "1jb4dp6crvfzxzmi5iflc7p13b7p2v1djyj6smbf9ns4wr515y6b"; }; postUnpack = '' @@ -23,4 +23,3 @@ stdenv.mkDerivation rec { maintainers = [stdenv.lib.maintainers.nthorne]; }; } - From 7a86bc32cb6c038313890a09a1f6f4cc13c6f542 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Sat, 10 Nov 2018 14:00:32 +0000 Subject: [PATCH 23/68] docker-compose: rename from docker_compose, python3 by default The command is called docker-compose hence the package should be called the same. Also prefer python3. --- .../virtualization/docker-compose}/default.nix | 0 pkgs/top-level/aliases.nix | 1 + pkgs/top-level/all-packages.nix | 2 +- pkgs/top-level/python-packages.nix | 2 -- 4 files changed, 2 insertions(+), 3 deletions(-) rename pkgs/{development/python-modules/docker_compose => applications/virtualization/docker-compose}/default.nix (100%) diff --git a/pkgs/development/python-modules/docker_compose/default.nix b/pkgs/applications/virtualization/docker-compose/default.nix similarity index 100% rename from pkgs/development/python-modules/docker_compose/default.nix rename to pkgs/applications/virtualization/docker-compose/default.nix diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 8767d98ad0a..505758d3af0 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -85,6 +85,7 @@ mapAliases ({ docbook5_xsl = docbook_xsl_ns; # added 2018-04-25 docbook_xml_xslt = docbook_xsl; # added 2018-04-25 double_conversion = double-conversion; # 2017-11-22 + docker_compose = docker-compose; # 2018-11-10 dwarf_fortress = dwarf-fortress; # added 2016-01-23 emacsMelpa = emacs25PackagesNg; # for backward compatibility emacsPackagesGen = emacsPackagesFor; # added 2018-08-18 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 018bba2aff8..d13bc7a3572 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -154,7 +154,7 @@ with pkgs; dockerTools = callPackage ../build-support/docker { }; - docker_compose = pythonPackages.docker_compose; + docker-compose = python3Packages.callPackage ../applications/virtualization/docker-compose {}; docker-ls = callPackage ../tools/misc/docker-ls { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e4e561682bf..668d79b3774 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2222,8 +2222,6 @@ in { pyfribidi = callPackage ../development/python-modules/pyfribidi { }; - docker_compose = callPackage ../development/python-modules/docker_compose {}; - pyftpdlib = callPackage ../development/python-modules/pyftpdlib { }; fdroidserver = callPackage ../development/python-modules/fdroidserver { }; From ba35b5971cb1f75ea79b3011c17f57bbd10b344b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 12:35:43 +0100 Subject: [PATCH 24/68] i2pd: 2.21.1 -> 2.22.0 --- pkgs/tools/networking/i2pd/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/tools/networking/i2pd/default.nix b/pkgs/tools/networking/i2pd/default.nix index 7ab77b2d2ee..6e4cf45686b 100644 --- a/pkgs/tools/networking/i2pd/default.nix +++ b/pkgs/tools/networking/i2pd/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { name = pname + "-" + version; pname = "i2pd"; - version = "2.21.1"; + version = "2.22.0"; src = fetchFromGitHub { owner = "PurpleI2P"; repo = pname; rev = version; - sha256 = "0j892s9ga9fjc2q1rw3hp5il4mw1jc0aiw60y1rfaiflyv0wd696"; + sha256 = "1c4y5y6a9kssi9qmsyqz5hw29ya1s0i21fklnz48n08b7f4f9vlz"; }; buildInputs = with stdenv.lib; [ boost zlib openssl ] From 3ba7d2ae018988212a780dc935ebfc482312dab8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 12:36:26 +0100 Subject: [PATCH 25/68] zangband: 2.7.3 -> 2.7.4b With minor fixups but marking as broken since the game doesn't progress after character generation. --- pkgs/games/zangband/default.nix | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/pkgs/games/zangband/default.nix b/pkgs/games/zangband/default.nix index cf5e41f389a..6fab4982534 100644 --- a/pkgs/games/zangband/default.nix +++ b/pkgs/games/zangband/default.nix @@ -1,28 +1,23 @@ { stdenv, fetchurl, ncurses, flex, bison, autoconf, automake, m4, coreutils }: stdenv.mkDerivation rec { - name = "zangband-${version}"; - version = "2.7.3"; + name = pname + "-" + version; + pname = "zangband"; + version = "2.7.4b"; src = fetchurl { - url = "ftp://ftp.sunet.se/pub/games/Angband/Variant/ZAngband/zangband-${version}.tar.gz"; - sha256 = "0654m8fzklsc8565sqdad76mxjsm1z9c280srq8863sd10af0bdq"; + url = "mirror://sourceforge/project/${pname}/${pname}-src/${version}/${name}.tar.gz"; + sha256 = "0kkz6f9myhjnr3308sdab8q186rd55lapvcp38w8qmakdbhc828j"; }; buildInputs = [ ncurses flex bison autoconf automake m4 ]; - # fails during chmod due to broken permissions - dontMakeSourcesWritable = true; - postUnpack = '' - chmod a+rwX -R . - ''; - preConfigure = '' sed -re 's/ch(own|grp|mod)/true/' -i lib/*/makefile.zb makefile.in sed -e '/FIXED_PATHS/d' -i src/z-config.h - ./bootstrap + autoconf ''; preInstall = '' @@ -42,8 +37,8 @@ stdenv.mkDerivation rec { cd "$ZANGBAND_PATH" for i in $(find "$ORIG_PATH" -type f); do REL_PATH="''${i#$ORIG_PATH/}" - mkdir -p "$(dirname "$REL_PATH")" - ln -s "$i" "$REL_PATH" &>/dev/null + mkdir -p "$(dirname "$REL_PATH")" + ln -s "$i" "$REL_PATH" &>/dev/null done mkdir -p lib/user lib/save for i in lib/*/*.raw; do @@ -59,5 +54,6 @@ stdenv.mkDerivation rec { meta = { description = "Rogue-like game"; license = stdenv.lib.licenses.unfree; + broken = true; # broken in runtime, will not get pass character generation }; } From 8ff9e78dc1fe30f613c035ae08ca59a89d236396 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 12:38:02 +0100 Subject: [PATCH 26/68] minetest: 0.4.16 -> 0.4.17 --- pkgs/games/minetest/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/games/minetest/default.nix b/pkgs/games/minetest/default.nix index fee8919bb23..28616fe845f 100644 --- a/pkgs/games/minetest/default.nix +++ b/pkgs/games/minetest/default.nix @@ -4,19 +4,19 @@ }: let - version = "0.4.16"; + version = "0.4.17"; sources = { src = fetchFromGitHub { owner = "minetest"; repo = "minetest"; rev = "${version}"; - sha256 = "048m8as01bw4pnwfxx04wfnyljxq7ivk88l214zi18prrrkfamj3"; + sha256 = "0ri9hyhvcnyyy2k83qvv543s10476g9fn3vcbjwvxjfqap9mkc5m"; }; data = fetchFromGitHub { owner = "minetest"; repo = "minetest_game"; rev = "${version}"; - sha256 = "0alikzyjvj9hd8s3dd6ghpz0y982w2j0yd2zgd7a047mxw21hrcn"; + sha256 = "1g8iw2pya32ifljbdx6z6rpcinmzm81i9minhi2bi1d500ailn7s"; }; }; in stdenv.mkDerivation { From d5986720203b9ef5b603c741cffe798120bfbc5b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 12:38:43 +0100 Subject: [PATCH 27/68] minecraft-server: 1.12.2 -> 1.13.2 --- pkgs/games/minecraft-server/default.nix | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkgs/games/minecraft-server/default.nix b/pkgs/games/minecraft-server/default.nix index 59e1144cf96..050e0126fa7 100644 --- a/pkgs/games/minecraft-server/default.nix +++ b/pkgs/games/minecraft-server/default.nix @@ -2,11 +2,13 @@ stdenv.mkDerivation rec { name = "minecraft-server-${version}"; - version = "1.12.2"; + version = "1.13.2"; src = fetchurl { - url = "https://s3.amazonaws.com/Minecraft.Download/versions/${version}/minecraft_server.${version}.jar"; - sha256 = "0zhnac6yvkdgdaag0gb0fgrkgizbwrpf7s76yqdiknfswrs947zy"; + # Old url + # https://s3.amazonaws.com/Minecraft.Download/versions/${version}/minecraft_server.${version}.jar + url = "https://launcher.mojang.com/v1/objects/3737db93722a9e39eeada7c27e7aca28b144ffa7/server.jar"; + sha256 = "13h8dxrrgqa1g6sd7aaw26779hcsqsyjm7xm0sknifn54lnamlzz"; }; preferLocalBuild = true; From 888d01da4811c5ebc1c6a841c6b475d5b6224098 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 12:41:27 +0100 Subject: [PATCH 28/68] nixos/minetest fix: add missing uid/gid for minetest --- nixos/modules/misc/ids.nix | 2 ++ nixos/modules/services/games/minetest-server.nix | 3 +++ 2 files changed, 5 insertions(+) diff --git a/nixos/modules/misc/ids.nix b/nixos/modules/misc/ids.nix index 446a311807c..aff562c00eb 100644 --- a/nixos/modules/misc/ids.nix +++ b/nixos/modules/misc/ids.nix @@ -335,6 +335,7 @@ kapacitor = 308; solr = 309; alerta = 310; + minetest = 311; # When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399! @@ -630,6 +631,7 @@ kapacitor = 308; solr = 309; alerta = 310; + minetest = 311; # When adding a gid, make sure it doesn't match an existing # uid. Users and groups with the same name should have equal diff --git a/nixos/modules/services/games/minetest-server.nix b/nixos/modules/services/games/minetest-server.nix index 2de42f20f6c..98e69c6dc0e 100644 --- a/nixos/modules/services/games/minetest-server.nix +++ b/nixos/modules/services/games/minetest-server.nix @@ -84,7 +84,9 @@ in home = "/var/lib/minetest"; createHome = true; uid = config.ids.uids.minetest; + group = "minetest"; }; + users.groups.minetest.gid = config.ids.gids.minetest; systemd.services.minetest-server = { description = "Minetest Server Service"; @@ -93,6 +95,7 @@ in serviceConfig.Restart = "always"; serviceConfig.User = "minetest"; + serviceConfig.Group = "minetest"; script = '' cd /var/lib/minetest From 4fc8527697a81aa387dbfb892e6f7a71944f4d47 Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Sun, 11 Nov 2018 14:01:25 +0100 Subject: [PATCH 29/68] dovecot, opensmtpd: comment out invalid meta.tests attribute See https://github.com/NixOS/nixpkgs/issues/50230 for details. --- pkgs/servers/mail/dovecot/default.nix | 9 ++++++--- pkgs/servers/mail/opensmtpd/default.nix | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index 8f60929e2f7..af1184a973b 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -68,8 +68,11 @@ stdenv.mkDerivation rec { description = "Open source IMAP and POP3 email server written with security primarily in mind"; maintainers = with stdenv.lib.maintainers; [ peti rickynils fpletz ]; platforms = stdenv.lib.platforms.unix; - tests = { - opensmtpd-interaction = nixosTests.opensmtpd; - }; + # https://github.com/NixOS/nixpkgs/issues/50230 must be resolved before + # this can be enabled. + # + # tests = { + # opensmtpd-interaction = nixosTests.opensmtpd; + # }; }; } diff --git a/pkgs/servers/mail/opensmtpd/default.nix b/pkgs/servers/mail/opensmtpd/default.nix index 0ee1c92acbd..5efaca40f6e 100644 --- a/pkgs/servers/mail/opensmtpd/default.nix +++ b/pkgs/servers/mail/opensmtpd/default.nix @@ -61,8 +61,11 @@ stdenv.mkDerivation rec { license = licenses.isc; platforms = platforms.linux; maintainers = with maintainers; [ rickynils obadz ekleog ]; - tests = { - basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd; - }; + # https://github.com/NixOS/nixpkgs/issues/50230 must be resolved before + # this can be enabled. + # + # tests = { + # basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd; + # }; }; } From 6c68fbd4e1f8beac39cb1f499ff90c78256262d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 17:41:11 +0900 Subject: [PATCH 30/68] tests: refactor to carry the package set as an argument This way, the package set will be possible to pass without re-importing all the time --- nixos/lib/build-vms.nix | 4 +--- nixos/lib/testing.nix | 4 ++-- .../installer/tools/nixos-build-vms/build-vms.nix | 6 +++++- nixos/tests/boot.nix | 7 +++++-- nixos/tests/buildbot.nix | 7 +++++-- nixos/tests/certmgr.nix | 7 +++++-- nixos/tests/chromium.nix | 5 +++-- nixos/tests/cloud-init.nix | 7 +++++-- nixos/tests/ec2.nix | 7 +++++-- nixos/tests/elk.nix | 10 ++++++++-- nixos/tests/gitea.nix | 7 +++++-- nixos/tests/installer.nix | 7 +++++-- nixos/tests/kafka.nix | 8 ++++++-- nixos/tests/keymap.nix | 7 +++++-- nixos/tests/kubernetes/base.nix | 7 +++++-- nixos/tests/make-test.nix | 8 ++++++-- nixos/tests/networking.nix | 4 +++- nixos/tests/nextcloud/default.nix | 11 +++++++---- nixos/tests/postgresql.nix | 9 +++++++-- nixos/tests/predictable-interface-names.nix | 7 +++++-- nixos/tests/rspamd.nix | 9 +++++++-- nixos/tests/rsyslogd.nix | 8 ++++++-- nixos/tests/run-in-machine.nix | 7 +++++-- nixos/tests/sddm.nix | 7 +++++-- nixos/tests/virtualbox.nix | 9 +++++++-- nixos/tests/zfs.nix | 7 +++++-- 26 files changed, 133 insertions(+), 53 deletions(-) diff --git a/nixos/lib/build-vms.nix b/nixos/lib/build-vms.nix index 4f65501f89c..933f8139249 100644 --- a/nixos/lib/build-vms.nix +++ b/nixos/lib/build-vms.nix @@ -1,6 +1,4 @@ -{ system, minimal ? false, config ? {} }: - -let pkgs = import ../.. { inherit system config; }; in +{ system, pkgs, minimal ? false, config ? {} }: with pkgs.lib; with import ../lib/qemu-flags.nix { inherit pkgs; }; diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix index 8cdf4150057..d26d4a91924 100644 --- a/nixos/lib/testing.nix +++ b/nixos/lib/testing.nix @@ -1,6 +1,6 @@ -{ system, minimal ? false, config ? {} }: +{ system, pkgs, minimal ? false, config ? {} }: -with import ./build-vms.nix { inherit system minimal config; }; +with import ./build-vms.nix { inherit system pkgs minimal config; }; with pkgs; let diff --git a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix index 4372d196261..4d6da849f23 100644 --- a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix +++ b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix @@ -1,9 +1,13 @@ { system ? builtins.currentSystem +, config ? {} , networkExpr }: let nodes = import networkExpr; in -with import ../../../../lib/testing.nix { inherit system; }; +with import ../../../../lib/testing.nix { + inherit system; + pkgs = import ../.. { inherit system config; } +}; (makeTest { inherit nodes; testScript = ""; }).driver diff --git a/nixos/tests/boot.nix b/nixos/tests/boot.nix index 301d9d0f817..c9bb1e77c6d 100644 --- a/nixos/tests/boot.nix +++ b/nixos/tests/boot.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/buildbot.nix b/nixos/tests/buildbot.nix index 399fd39005e..210ad8e91df 100644 --- a/nixos/tests/buildbot.nix +++ b/nixos/tests/buildbot.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let # Test ensures buildbot master comes up correctly and workers can connect diff --git a/nixos/tests/certmgr.nix b/nixos/tests/certmgr.nix index 8354c46b85f..fe67833808c 100644 --- a/nixos/tests/certmgr.nix +++ b/nixos/tests/certmgr.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let mkSpec = { host, service ? null, action }: { inherit action; diff --git a/nixos/tests/chromium.nix b/nixos/tests/chromium.nix index e5097609fb2..af5db2a3dbe 100644 --- a/nixos/tests/chromium.nix +++ b/nixos/tests/chromium.nix @@ -1,5 +1,6 @@ { system ? builtins.currentSystem -, pkgs ? import ../.. { inherit system; } +, config ? {} +, pkgs ? import ../.. { inherit system config; } , channelMap ? { stable = pkgs.chromium; beta = pkgs.chromiumBeta; @@ -7,7 +8,7 @@ } }: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; mapAttrs (channel: chromiumPkg: makeTest rec { diff --git a/nixos/tests/cloud-init.nix b/nixos/tests/cloud-init.nix index 303e7408646..516d29c9036 100644 --- a/nixos/tests/cloud-init.nix +++ b/nixos/tests/cloud-init.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/ec2.nix b/nixos/tests/ec2.nix index 8271747ccc6..ed6bf7da988 100644 --- a/nixos/tests/ec2.nix +++ b/nixos/tests/ec2.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/elk.nix b/nixos/tests/elk.nix index 15be72b80bb..d787ac97300 100644 --- a/nixos/tests/elk.nix +++ b/nixos/tests/elk.nix @@ -1,6 +1,12 @@ -{ system ? builtins.currentSystem, enableUnfree ? false }: -with import ../lib/testing.nix { inherit system; }; +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; }, + enableUnfree ? false +}: + +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; + let esUrl = "http://localhost:9200"; diff --git a/nixos/tests/gitea.nix b/nixos/tests/gitea.nix index 7ffe05ef3f1..35433499185 100644 --- a/nixos/tests/gitea.nix +++ b/nixos/tests/gitea.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; { diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 3f9fa0e6016..e03fc459cb8 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/kafka.nix b/nixos/tests/kafka.nix index c9fd74620ef..a833e01f9f5 100644 --- a/nixos/tests/kafka.nix +++ b/nixos/tests/kafka.nix @@ -1,5 +1,9 @@ -{ system ? builtins.currentSystem }: -with import ../lib/testing.nix { inherit system; }; +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: + +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/keymap.nix b/nixos/tests/keymap.nix index be880388314..b19da251119 100644 --- a/nixos/tests/keymap.nix +++ b/nixos/tests/keymap.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let readyFile = "/tmp/readerReady"; diff --git a/nixos/tests/kubernetes/base.nix b/nixos/tests/kubernetes/base.nix index e4bc5b326d3..b77da3414b3 100644 --- a/nixos/tests/kubernetes/base.nix +++ b/nixos/tests/kubernetes/base.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../../lib/testing.nix { inherit system; }; +with import ../../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/make-test.nix b/nixos/tests/make-test.nix index ee4ba310ad5..cee5da93454 100644 --- a/nixos/tests/make-test.nix +++ b/nixos/tests/make-test.nix @@ -1,5 +1,9 @@ -f: { system ? builtins.currentSystem, ... } @ args: +f: { + system ? builtins.currentSystem, + pkgs ? import ../.. { inherit system; config = {}; }, + ... +} @ args: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; makeTest (if pkgs.lib.isFunction f then f (args // { inherit pkgs; inherit (pkgs) lib; }) else f) diff --git a/nixos/tests/networking.nix b/nixos/tests/networking.nix index d1d4fd41dda..6843e8b2636 100644 --- a/nixos/tests/networking.nix +++ b/nixos/tests/networking.nix @@ -1,8 +1,10 @@ { system ? builtins.currentSystem +, config ? {} +, pkgs ? import ../.. { inherit system config; }, # bool: whether to use networkd in the tests , networkd }: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/nextcloud/default.nix b/nixos/tests/nextcloud/default.nix index 66da6794b96..e4c7a70606c 100644 --- a/nixos/tests/nextcloud/default.nix +++ b/nixos/tests/nextcloud/default.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../../.. { inherit system config; } +}: { - basic = import ./basic.nix { inherit system; }; - with-postgresql-and-redis = import ./with-postgresql-and-redis.nix { inherit system; }; - with-mysql-and-memcached = import ./with-mysql-and-memcached.nix { inherit system; }; + basic = import ./basic.nix { inherit system pkgs; }; + with-postgresql-and-redis = import ./with-postgresql-and-redis.nix { inherit system pkgs; }; + with-mysql-and-memcached = import ./with-mysql-and-memcached.nix { inherit system pkgs; }; } diff --git a/nixos/tests/postgresql.nix b/nixos/tests/postgresql.nix index f1f09277f34..ed54a31c8e5 100644 --- a/nixos/tests/postgresql.nix +++ b/nixos/tests/postgresql.nix @@ -1,6 +1,11 @@ -{ system ? builtins.currentSystem }: -with import ../lib/testing.nix { inherit system; }; +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: + +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; + let postgresql-versions = pkgs.callPackages ../../pkgs/servers/sql/postgresql { }; test-sql = pkgs.writeText "postgresql-test" '' diff --git a/nixos/tests/predictable-interface-names.nix b/nixos/tests/predictable-interface-names.nix index 0d73436c1c3..8306abb8c42 100644 --- a/nixos/tests/predictable-interface-names.nix +++ b/nixos/tests/predictable-interface-names.nix @@ -1,7 +1,10 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: let - inherit (import ../lib/testing.nix { inherit system; }) makeTest pkgs; + inherit (import ../lib/testing.nix { inherit system pkgs; }) makeTest; in pkgs.lib.listToAttrs (pkgs.lib.crossLists (predictable: withNetworkd: { name = pkgs.lib.optionalString (!predictable) "un" + "predictable" + pkgs.lib.optionalString withNetworkd "Networkd"; diff --git a/nixos/tests/rspamd.nix b/nixos/tests/rspamd.nix index c2175f1bc25..e16a9e6ffbc 100644 --- a/nixos/tests/rspamd.nix +++ b/nixos/tests/rspamd.nix @@ -1,6 +1,11 @@ -{ system ? builtins.currentSystem }: -with import ../lib/testing.nix { inherit system; }; +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: + +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; + let initMachine = '' startAll diff --git a/nixos/tests/rsyslogd.nix b/nixos/tests/rsyslogd.nix index 969d59e0f2c..f17e61814c5 100644 --- a/nixos/tests/rsyslogd.nix +++ b/nixos/tests/rsyslogd.nix @@ -1,7 +1,11 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; + { test1 = makeTest { name = "rsyslogd-test1"; diff --git a/nixos/tests/run-in-machine.nix b/nixos/tests/run-in-machine.nix index bd90dc3080b..116f5dc28a6 100644 --- a/nixos/tests/run-in-machine.nix +++ b/nixos/tests/run-in-machine.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let output = runInMachine { diff --git a/nixos/tests/sddm.nix b/nixos/tests/sddm.nix index 7b9fdc0b344..678bcbeab20 100644 --- a/nixos/tests/sddm.nix +++ b/nixos/tests/sddm.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let inherit (pkgs) lib; diff --git a/nixos/tests/virtualbox.nix b/nixos/tests/virtualbox.nix index ce84576edca..385e2939fe3 100644 --- a/nixos/tests/virtualbox.nix +++ b/nixos/tests/virtualbox.nix @@ -1,6 +1,11 @@ -{ system ? builtins.currentSystem, debug ? false, enableUnfree ? false }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; }, + debug ? false, + enableUnfree ? false +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let diff --git a/nixos/tests/zfs.nix b/nixos/tests/zfs.nix index 1434038e90c..d7a08268e98 100644 --- a/nixos/tests/zfs.nix +++ b/nixos/tests/zfs.nix @@ -1,6 +1,9 @@ -{ system ? builtins.currentSystem }: +{ system ? builtins.currentSystem, + config ? {}, + pkgs ? import ../.. { inherit system config; } +}: -with import ../lib/testing.nix { inherit system; }; +with import ../lib/testing.nix { inherit system pkgs; }; let From 83b27f60ceff23967e477c90bef8e78cc96d50a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 20:30:07 +0900 Subject: [PATCH 31/68] tests: split into a separate `all-tests.nix` file MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This will make the list much easier to re-use, eg. for `nixosTests` The drawback is that this approaches makes the ``` nix-build release.nix -A tests.opensmtpd.x86_64-linux ``` command about twice as slow (3s to 6s): it now has to evaluate `nixpkgs` once for each architecture, instead of just having the hardcoded list of tests that allowed to say “ok just evaluate for x86_64-linux”. On the other hand, complete evaluation of `release.nix` should be much faster because we no longer import `nixpkgs` for each test: testing with the following command went from 30s to 18s, and that's just for a few tests. ``` time nix-instantiate --eval --strict nixos/release.nix -A tests.nat ``` I initially wanted to test on the whole `release.nix`, but there are too many broken tests and it takes too long to eval them all, especially compared to the fact that the current implementation breaks some setup. Given developers can just `nix-build nixos/tests/my-test.nix`, it sounds like an overall win. --- nixos/release.nix | 230 ++--------------------------- nixos/tests/all-tests.nix | 214 +++++++++++++++++++++++++++ pkgs/stdenv/generic/check-meta.nix | 6 +- 3 files changed, 232 insertions(+), 218 deletions(-) create mode 100644 nixos/tests/all-tests.nix diff --git a/nixos/release.nix b/nixos/release.nix index c2372da23f5..e6abd003e88 100644 --- a/nixos/release.nix +++ b/nixos/release.nix @@ -14,28 +14,19 @@ let versionSuffix = (if stableBranch then "." else "pre") + "${toString nixpkgs.revCount}.${nixpkgs.shortRev}"; - importTest = fn: args: system: import fn ({ - inherit system; - } // args); - - # Note: only supportedSystems are considered. - callTestOnMatchingSystems = systems: fn: args: - forMatchingSystems - (intersectLists supportedSystems systems) - (system: hydraJob (importTest fn args system)); - callTest = callTestOnMatchingSystems supportedSystems; - - callSubTests = callSubTestsOnMatchingSystems supportedSystems; - callSubTestsOnMatchingSystems = systems: fn: args: let - discover = attrs: let - subTests = filterAttrs (const (hasAttr "test")) attrs; - in mapAttrs (const (t: hydraJob t.test)) subTests; - - discoverForSystem = system: mapAttrs (_: test: { - ${system} = test; - }) (discover (importTest fn args system)); - - in foldAttrs mergeAttrs {} (map discoverForSystem (intersectLists systems supportedSystems)); + # Run the tests for each platform. You can run a test by doing + # e.g. ‘nix-build -A tests.login.x86_64-linux’, or equivalently, + # ‘nix-build tests/login.nix -A result’. + allTestsForSystem = system: + import ./tests/all-tests.nix { + inherit system; + pkgs = import nixpkgs { inherit system; }; + callTest = t: { + ${system} = hydraJob t.test; + }; + }; + allTests = + foldAttrs recursiveUpdate {} (map allTestsForSystem supportedSystems); pkgs = import nixpkgs { system = "x86_64-linux"; }; @@ -245,200 +236,7 @@ in rec { }; */ - - # Run the tests for each platform. You can run a test by doing - # e.g. ‘nix-build -A tests.login.x86_64-linux’, or equivalently, - # ‘nix-build tests/login.nix -A result’. - tests.atd = callTest tests/atd.nix {}; - tests.acme = callTest tests/acme.nix {}; - tests.avahi = callTest tests/avahi.nix {}; - tests.beegfs = callTest tests/beegfs.nix {}; - tests.upnp = callTest tests/upnp.nix {}; - tests.bittorrent = callTest tests/bittorrent.nix {}; - tests.bind = callTest tests/bind.nix {}; - #tests.blivet = callTest tests/blivet.nix {}; # broken since 2017-07024 - tests.boot = callSubTests tests/boot.nix {}; - tests.boot-stage1 = callTest tests/boot-stage1.nix {}; - tests.borgbackup = callTest tests/borgbackup.nix {}; - tests.buildbot = callSubTests tests/buildbot.nix {}; - tests.cadvisor = callTestOnMatchingSystems ["x86_64-linux"] tests/cadvisor.nix {}; - tests.ceph = callTestOnMatchingSystems ["x86_64-linux"] tests/ceph.nix {}; - tests.certmgr = callSubTests tests/certmgr.nix {}; - tests.cfssl = callTestOnMatchingSystems ["x86_64-linux"] tests/cfssl.nix {}; - tests.chromium = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/chromium.nix {}).stable or {}; - tests.cjdns = callTest tests/cjdns.nix {}; - tests.cloud-init = callTest tests/cloud-init.nix {}; - tests.codimd = callTest tests/codimd.nix {}; - tests.containers-ipv4 = callTest tests/containers-ipv4.nix {}; - tests.containers-ipv6 = callTest tests/containers-ipv6.nix {}; - tests.containers-bridge = callTest tests/containers-bridge.nix {}; - tests.containers-imperative = callTest tests/containers-imperative.nix {}; - tests.containers-extra_veth = callTest tests/containers-extra_veth.nix {}; - tests.containers-physical_interfaces = callTest tests/containers-physical_interfaces.nix {}; - tests.containers-restart_networking = callTest tests/containers-restart_networking.nix {}; - tests.containers-tmpfs = callTest tests/containers-tmpfs.nix {}; - tests.containers-hosts = callTest tests/containers-hosts.nix {}; - tests.containers-macvlans = callTest tests/containers-macvlans.nix {}; - tests.couchdb = callTest tests/couchdb.nix {}; - tests.deluge = callTest tests/deluge.nix {}; - tests.dhparams = callTest tests/dhparams.nix {}; - tests.docker = callTestOnMatchingSystems ["x86_64-linux"] tests/docker.nix {}; - tests.docker-tools = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-tools.nix {}; - tests.docker-tools-overlay = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-tools-overlay.nix {}; - tests.docker-edge = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-edge.nix {}; - tests.docker-preloader = callTestOnMatchingSystems ["x86_64-linux"] tests/docker-preloader.nix {}; - tests.docker-registry = callTest tests/docker-registry.nix {}; - tests.dovecot = callTest tests/dovecot.nix {}; - tests.dnscrypt-proxy = callTestOnMatchingSystems ["x86_64-linux"] tests/dnscrypt-proxy.nix {}; - tests.ecryptfs = callTest tests/ecryptfs.nix {}; - tests.etcd = callTestOnMatchingSystems ["x86_64-linux"] tests/etcd.nix {}; - tests.ec2-nixops = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/ec2.nix {}).boot-ec2-nixops or {}; - # ec2-config doesn't work in a sandbox as the simulated ec2 instance needs network access - #tests.ec2-config = (callSubTestsOnMatchingSystems ["x86_64-linux"] tests/ec2.nix {}).boot-ec2-config or {}; - tests.elk = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/elk.nix {}; - tests.env = callTest tests/env.nix {}; - tests.ferm = callTest tests/ferm.nix {}; - tests.firefox = callTest tests/firefox.nix {}; - tests.flatpak = callTest tests/flatpak.nix {}; - tests.firewall = callTest tests/firewall.nix {}; - tests.fsck = callTest tests/fsck.nix {}; - tests.fwupd = callTest tests/fwupd.nix {}; - tests.gdk-pixbuf = callTest tests/gdk-pixbuf.nix {}; - tests.gitea = callSubTests tests/gitea.nix {}; - tests.gitlab = callTest tests/gitlab.nix {}; - tests.gitolite = callTest tests/gitolite.nix {}; - tests.gjs = callTest tests/gjs.nix {}; - tests.gocd-agent = callTest tests/gocd-agent.nix {}; - tests.gocd-server = callTest tests/gocd-server.nix {}; - tests.gnome3 = callTest tests/gnome3.nix {}; - tests.gnome3-gdm = callTest tests/gnome3-gdm.nix {}; - tests.grafana = callTest tests/grafana.nix {}; - tests.graphite = callTest tests/graphite.nix {}; - tests.hadoop.hdfs = callTestOnMatchingSystems [ "x86_64-linux" ] tests/hadoop/hdfs.nix {}; - tests.hadoop.yarn = callTestOnMatchingSystems [ "x86_64-linux" ] tests/hadoop/yarn.nix {}; - tests.hardened = callTest tests/hardened.nix { }; - tests.haproxy = callTest tests/haproxy.nix {}; - tests.hibernate = callTest tests/hibernate.nix {}; - tests.hitch = callTest tests/hitch {}; - tests.home-assistant = callTest tests/home-assistant.nix { }; - tests.hound = callTest tests/hound.nix {}; - tests.hocker-fetchdocker = callTest tests/hocker-fetchdocker {}; - tests.hydra = callTest tests/hydra {}; - tests.i3wm = callTest tests/i3wm.nix {}; - tests.iftop = callTest tests/iftop.nix {}; - tests.initrd-network-ssh = callTest tests/initrd-network-ssh {}; - tests.installer = callSubTests tests/installer.nix {}; - tests.influxdb = callTest tests/influxdb.nix {}; - tests.ipv6 = callTest tests/ipv6.nix {}; - tests.jenkins = callTest tests/jenkins.nix {}; - tests.ostree = callTest tests/ostree.nix {}; - tests.osquery = callTest tests/osquery.nix {}; - tests.plasma5 = callTest tests/plasma5.nix {}; - tests.plotinus = callTest tests/plotinus.nix {}; - tests.keymap = callSubTests tests/keymap.nix {}; - tests.incron = callTest tests/incron.nix {}; - tests.initrdNetwork = callTest tests/initrd-network.nix {}; - tests.kafka = callSubTests tests/kafka.nix {}; - tests.kernel-latest = callTest tests/kernel-latest.nix {}; - tests.kernel-lts = callTest tests/kernel-lts.nix {}; - tests.kubernetes.dns = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/dns.nix {}; - ## kubernetes.e2e should eventually replace kubernetes.rbac when it works - #tests.kubernetes.e2e = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/e2e.nix {}; - tests.kubernetes.rbac = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/kubernetes/rbac.nix {}; - tests.latestKernel.login = callTest tests/login.nix { latestKernel = true; }; - tests.ldap = callTest tests/ldap.nix {}; - #tests.lightdm = callTest tests/lightdm.nix {}; - tests.login = callTest tests/login.nix {}; - #tests.logstash = callTest tests/logstash.nix {}; - tests.mathics = callTest tests/mathics.nix {}; - tests.matrix-synapse = callTest tests/matrix-synapse.nix {}; - tests.memcached = callTest tests/memcached.nix {}; - tests.mesos = callTest tests/mesos.nix {}; - tests.misc = callTest tests/misc.nix {}; - tests.mongodb = callTest tests/mongodb.nix {}; - tests.mpd = callTest tests/mpd.nix {}; - tests.mumble = callTest tests/mumble.nix {}; - tests.munin = callTest tests/munin.nix {}; - tests.mutableUsers = callTest tests/mutable-users.nix {}; - tests.mysql = callTest tests/mysql.nix {}; - tests.mysqlBackup = callTest tests/mysql-backup.nix {}; - tests.mysqlReplication = callTest tests/mysql-replication.nix {}; - tests.nat.firewall = callTest tests/nat.nix { withFirewall = true; }; - tests.nat.firewall-conntrack = callTest tests/nat.nix { withFirewall = true; withConntrackHelpers = true; }; - tests.nat.standalone = callTest tests/nat.nix { withFirewall = false; }; - tests.netdata = callTest tests/netdata.nix { }; - tests.networking.networkd = callSubTests tests/networking.nix { networkd = true; }; - tests.networking.scripted = callSubTests tests/networking.nix { networkd = false; }; - tests.nextcloud = callSubTests tests/nextcloud { }; - # TODO: put in networking.nix after the test becomes more complete - tests.networkingProxy = callTest tests/networking-proxy.nix {}; - tests.nexus = callTest tests/nexus.nix { }; - tests.nfs3 = callTest tests/nfs.nix { version = 3; }; - tests.nfs4 = callTest tests/nfs.nix { version = 4; }; - tests.nginx = callTest tests/nginx.nix { }; - tests.nghttpx = callTest tests/nghttpx.nix { }; - tests.nix-ssh-serve = callTest tests/nix-ssh-serve.nix { }; - tests.novacomd = callTestOnMatchingSystems ["x86_64-linux"] tests/novacomd.nix { }; - tests.leaps = callTest tests/leaps.nix { }; - tests.nsd = callTest tests/nsd.nix {}; - tests.openssh = callTest tests/openssh.nix {}; - tests.openldap = callTest tests/openldap.nix {}; - tests.opensmtpd = callTest tests/opensmtpd.nix {}; - tests.owncloud = callTest tests/owncloud.nix {}; - tests.pam-oath-login = callTest tests/pam-oath-login.nix {}; - tests.peerflix = callTest tests/peerflix.nix {}; - tests.php-pcre = callTest tests/php-pcre.nix {}; - tests.postgresql = callSubTests tests/postgresql.nix {}; - tests.pgmanage = callTest tests/pgmanage.nix {}; - tests.postgis = callTest tests/postgis.nix {}; - tests.powerdns = callTest tests/powerdns.nix {}; - tests.pgjwt = callTest tests/pgjwt.nix {}; - tests.predictable-interface-names = callSubTests tests/predictable-interface-names.nix {}; - tests.printing = callTest tests/printing.nix {}; - tests.prometheus = callTest tests/prometheus.nix {}; - tests.prometheus-exporters = callTest tests/prometheus-exporters.nix {}; - tests.prosody = callTest tests/prosody.nix {}; - tests.proxy = callTest tests/proxy.nix {}; - tests.quagga = callTest tests/quagga.nix {}; - tests.quake3 = callTest tests/quake3.nix {}; - tests.rabbitmq = callTest tests/rabbitmq.nix {}; - tests.radicale = callTest tests/radicale.nix {}; - tests.redmine = callTest tests/redmine.nix {}; - tests.rspamd = callSubTests tests/rspamd.nix {}; - tests.rsyslogd = callSubTests tests/rsyslogd.nix {}; - tests.runInMachine = callTest tests/run-in-machine.nix {}; - tests.rxe = callTest tests/rxe.nix {}; - tests.samba = callTest tests/samba.nix {}; - tests.sddm = callSubTests tests/sddm.nix {}; - tests.simple = callTest tests/simple.nix {}; - tests.slim = callTest tests/slim.nix {}; - tests.slurm = callTest tests/slurm.nix {}; - tests.smokeping = callTest tests/smokeping.nix {}; - tests.snapper = callTest tests/snapper.nix {}; - tests.solr = callTest tests/solr.nix {}; - #tests.statsd = callTest tests/statsd.nix {}; # statsd is broken: #45946 - tests.strongswan-swanctl = callTest tests/strongswan-swanctl.nix {}; - tests.sudo = callTest tests/sudo.nix {}; - tests.systemd = callTest tests/systemd.nix {}; - tests.switchTest = callTest tests/switch-test.nix {}; - tests.taskserver = callTest tests/taskserver.nix {}; - tests.tomcat = callTest tests/tomcat.nix {}; - tests.tor = callTest tests/tor.nix {}; - tests.transmission = callTest tests/transmission.nix {}; - tests.udisks2 = callTest tests/udisks2.nix {}; - tests.vault = callTest tests/vault.nix {}; - tests.virtualbox = callSubTestsOnMatchingSystems ["x86_64-linux"] tests/virtualbox.nix {}; - tests.wordpress = callTest tests/wordpress.nix {}; - tests.xautolock = callTest tests/xautolock.nix {}; - tests.xdg-desktop-portal = callTest tests/xdg-desktop-portal.nix {}; - tests.xfce = callTest tests/xfce.nix {}; - tests.xmonad = callTest tests/xmonad.nix {}; - tests.xrdp = callTest tests/xrdp.nix {}; - tests.xss-lock = callTest tests/xss-lock.nix {}; - tests.yabar = callTest tests/yabar.nix {}; - tests.zookeeper = callTest tests/zookeeper.nix {}; - tests.morty = callTest tests/morty.nix { }; - tests.bcachefs = callTest tests/bcachefs.nix { }; + tests = allTests; /* Build a bunch of typical closures so that Hydra can keep track of the evolution of closure sizes. */ diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix new file mode 100644 index 00000000000..da87c0197d8 --- /dev/null +++ b/nixos/tests/all-tests.nix @@ -0,0 +1,214 @@ +{ system, pkgs, callTest }: +# The return value of this function will be an attrset with arbitrary depth and +# the `anything` returned by callTest at its test leafs. +# The tests not supported by `system` will be replaced with `{}`, so that +# `meta.tests` can contain links to those without breaking on architectures +# where said tests are unsupported. +# Example callTest that just extracts the derivation from the test: +# callTest = t: t.test; + +with pkgs.lib; + +let + discoverTests = val: + if !isAttrs val then val + else if hasAttr "test" val then callTest val + else mapAttrs (n: s: discoverTests s) val; + handleTest = path: args: + discoverTests (import path ({ inherit system pkgs; } // args)); + handleTestOn = systems: path: args: + if elem system systems then handleTest path args + else {}; +in +{ + acme = handleTest ./acme.nix {}; + atd = handleTest ./atd.nix {}; + avahi = handleTest ./avahi.nix {}; + bcachefs = handleTest ./bcachefs.nix {}; + beegfs = handleTest ./beegfs.nix {}; + bind = handleTest ./bind.nix {}; + bittorrent = handleTest ./bittorrent.nix {}; + #blivet = handleTest ./blivet.nix {}; # broken since 2017-07024 + boot = handleTest ./boot.nix {}; + boot-stage1 = handleTest ./boot-stage1.nix {}; + borgbackup = handleTest ./borgbackup.nix {}; + buildbot = handleTest ./buildbot.nix {}; + cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {}; + ceph = handleTestOn ["x86_64-linux"] ./ceph.nix {}; + certmgr = handleTest ./certmgr.nix {}; + cfssl = handleTestOn ["x86_64-linux"] ./cfssl.nix {}; + chromium = (handleTestOn ["x86_64-linux"] ./chromium.nix {}).stable or {}; + cjdns = handleTest ./cjdns.nix {}; + cloud-init = handleTest ./cloud-init.nix {}; + codimd = handleTest ./codimd.nix {}; + containers-bridge = handleTest ./containers-bridge.nix {}; + containers-extra_veth = handleTest ./containers-extra_veth.nix {}; + containers-hosts = handleTest ./containers-hosts.nix {}; + containers-imperative = handleTest ./containers-imperative.nix {}; + containers-ipv4 = handleTest ./containers-ipv4.nix {}; + containers-ipv6 = handleTest ./containers-ipv6.nix {}; + containers-macvlans = handleTest ./containers-macvlans.nix {}; + containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {}; + containers-restart_networking = handleTest ./containers-restart_networking.nix {}; + containers-tmpfs = handleTest ./containers-tmpfs.nix {}; + couchdb = handleTest ./couchdb.nix {}; + deluge = handleTest ./deluge.nix {}; + dhparams = handleTest ./dhparams.nix {}; + dnscrypt-proxy = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy.nix {}; + docker = handleTestOn ["x86_64-linux"] ./docker.nix {}; + docker-edge = handleTestOn ["x86_64-linux"] ./docker-edge.nix {}; + docker-preloader = handleTestOn ["x86_64-linux"] ./docker-preloader.nix {}; + docker-registry = handleTest ./docker-registry.nix {}; + docker-tools = handleTestOn ["x86_64-linux"] ./docker-tools.nix {}; + docker-tools-overlay = handleTestOn ["x86_64-linux"] ./docker-tools-overlay.nix {}; + dovecot = handleTest ./dovecot.nix {}; + # ec2-config doesn't work in a sandbox as the simulated ec2 instance needs network access + #ec2-config = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-config or {}; + ec2-nixops = (handleTestOn ["x86_64-linux"] ./ec2.nix {}).boot-ec2-nixops or {}; + ecryptfs = handleTest ./ecryptfs.nix {}; + elk = handleTestOn ["x86_64-linux"] ./elk.nix {}; + env = handleTest ./env.nix {}; + etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {}; + ferm = handleTest ./ferm.nix {}; + firefox = handleTest ./firefox.nix {}; + firewall = handleTest ./firewall.nix {}; + flatpak = handleTest ./flatpak.nix {}; + fsck = handleTest ./fsck.nix {}; + fwupd = handleTest ./fwupd.nix {}; + gdk-pixbuf = handleTest ./gdk-pixbuf.nix {}; + gitea = handleTest ./gitea.nix {}; + gitlab = handleTest ./gitlab.nix {}; + gitolite = handleTest ./gitolite.nix {}; + gjs = handleTest ./gjs.nix {}; + gnome3 = handleTest ./gnome3.nix {}; + gnome3-gdm = handleTest ./gnome3-gdm.nix {}; + gocd-agent = handleTest ./gocd-agent.nix {}; + gocd-server = handleTest ./gocd-server.nix {}; + grafana = handleTest ./grafana.nix {}; + graphite = handleTest ./graphite.nix {}; + hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {}; + hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {}; + haproxy = handleTest ./haproxy.nix {}; + hardened = handleTest ./hardened.nix {}; + hibernate = handleTest ./hibernate.nix {}; + hitch = handleTest ./hitch {}; + hocker-fetchdocker = handleTest ./hocker-fetchdocker {}; + home-assistant = handleTest ./home-assistant.nix {}; + hound = handleTest ./hound.nix {}; + hydra = handleTest ./hydra {}; + i3wm = handleTest ./i3wm.nix {}; + iftop = handleTest ./iftop.nix {}; + incron = handleTest tests/incron.nix {}; + influxdb = handleTest ./influxdb.nix {}; + initrd-network-ssh = handleTest ./initrd-network-ssh {}; + initrdNetwork = handleTest ./initrd-network.nix {}; + installer = handleTest ./installer.nix {}; + ipv6 = handleTest ./ipv6.nix {}; + jenkins = handleTest ./jenkins.nix {}; + kafka = handleTest ./kafka.nix {}; + kernel-latest = handleTest ./kernel-latest.nix {}; + kernel-lts = handleTest ./kernel-lts.nix {}; + keymap = handleTest ./keymap.nix {}; + kubernetes.dns = handleTestOn ["x86_64-linux"] ./kubernetes/dns.nix {}; + # kubernetes.e2e should eventually replace kubernetes.rbac when it works + #kubernetes.e2e = handleTestOn ["x86_64-linux"] ./kubernetes/e2e.nix {}; + kubernetes.rbac = handleTestOn ["x86_64-linux"] ./kubernetes/rbac.nix {}; + latestKernel.login = handleTest ./login.nix { latestKernel = true; }; + ldap = handleTest ./ldap.nix {}; + leaps = handleTest ./leaps.nix {}; + #lightdm = handleTest ./lightdm.nix {}; + login = handleTest ./login.nix {}; + #logstash = handleTest ./logstash.nix {}; + mathics = handleTest ./mathics.nix {}; + matrix-synapse = handleTest ./matrix-synapse.nix {}; + memcached = handleTest ./memcached.nix {}; + mesos = handleTest ./mesos.nix {}; + misc = handleTest ./misc.nix {}; + mongodb = handleTest ./mongodb.nix {}; + morty = handleTest ./morty.nix {}; + mpd = handleTest ./mpd.nix {}; + mumble = handleTest ./mumble.nix {}; + munin = handleTest ./munin.nix {}; + mutableUsers = handleTest ./mutable-users.nix {}; + mysql = handleTest ./mysql.nix {}; + mysqlBackup = handleTest ./mysql-backup.nix {}; + mysqlReplication = handleTest ./mysql-replication.nix {}; + nat.firewall = handleTest ./nat.nix { withFirewall = true; }; + nat.firewall-conntrack = handleTest ./nat.nix { withFirewall = true; withConntrackHelpers = true; }; + nat.standalone = handleTest ./nat.nix { withFirewall = false; }; + netdata = handleTest ./netdata.nix {}; + networking.networkd = handleTest ./networking.nix { networkd = true; }; + networking.scripted = handleTest ./networking.nix { networkd = false; }; + # TODO: put in networking.nix after the test becomes more complete + networkingProxy = handleTest ./networking-proxy.nix {}; + nextcloud = handleTest ./nextcloud {}; + nexus = handleTest ./nexus.nix {}; + nfs3 = handleTest ./nfs.nix { version = 3; }; + nfs4 = handleTest ./nfs.nix { version = 4; }; + nghttpx = handleTest ./nghttpx.nix {}; + nginx = handleTest ./nginx.nix {}; + nix-ssh-serve = handleTest ./nix-ssh-serve.nix {}; + novacomd = handleTestOn ["x86_64-linux"] ./novacomd.nix {}; + nsd = handleTest ./nsd.nix {}; + openldap = handleTest ./openldap.nix {}; + opensmtpd = handleTest ./opensmtpd.nix {}; + openssh = handleTest ./openssh.nix {}; + osquery = handleTest ./osquery.nix {}; + ostree = handleTest ./ostree.nix {}; + owncloud = handleTest ./owncloud.nix {}; + pam-oath-login = handleTest ./pam-oath-login.nix {}; + peerflix = handleTest ./peerflix.nix {}; + pgjwt = handleTest ./pgjwt.nix {}; + pgmanage = handleTest ./pgmanage.nix {}; + php-pcre = handleTest ./php-pcre.nix {}; + plasma5 = handleTest ./plasma5.nix {}; + plotinus = handleTest ./plotinus.nix {}; + postgis = handleTest ./postgis.nix {}; + postgresql = handleTest ./postgresql.nix {}; + powerdns = handleTest ./powerdns.nix {}; + predictable-interface-names = handleTest ./predictable-interface-names.nix {}; + printing = handleTest ./printing.nix {}; + prometheus = handleTest ./prometheus.nix {}; + prometheus-exporters = handleTest ./prometheus-exporters.nix {}; + prosody = handleTest ./prosody.nix {}; + proxy = handleTest ./proxy.nix {}; + quagga = handleTest ./quagga.nix {}; + quake3 = handleTest ./quake3.nix {}; + rabbitmq = handleTest ./rabbitmq.nix {}; + radicale = handleTest ./radicale.nix {}; + redmine = handleTest ./redmine.nix {}; + rspamd = handleTest ./rspamd.nix {}; + rsyslogd = handleTest ./rsyslogd.nix {}; + runInMachine = handleTest ./run-in-machine.nix {}; + rxe = handleTest ./rxe.nix {}; + samba = handleTest ./samba.nix {}; + sddm = handleTest ./sddm.nix {}; + simple = handleTest ./simple.nix {}; + slim = handleTest ./slim.nix {}; + slurm = handleTest ./slurm.nix {}; + smokeping = handleTest ./smokeping.nix {}; + snapper = handleTest ./snapper.nix {}; + solr = handleTest ./solr.nix {}; + #statsd = handleTest ./statsd.nix {}; # statsd is broken: #45946 + strongswan-swanctl = handleTest ./strongswan-swanctl.nix {}; + sudo = handleTest ./sudo.nix {}; + switchTest = handleTest ./switch-test.nix {}; + systemd = handleTest ./systemd.nix {}; + taskserver = handleTest ./taskserver.nix {}; + tomcat = handleTest ./tomcat.nix {}; + tor = handleTest ./tor.nix {}; + transmission = handleTest ./transmission.nix {}; + udisks2 = handleTest ./udisks2.nix {}; + upnp = handleTest ./upnp.nix {}; + vault = handleTest ./vault.nix {}; + virtualbox = handleTestOn ["x86_64-linux"] ./virtualbox.nix {}; + wordpress = handleTest ./wordpress.nix {}; + xautolock = handleTest ./xautolock.nix {}; + xdg-desktop-portal = handleTest ./xdg-desktop-portal.nix {}; + xfce = handleTest ./xfce.nix {}; + xmonad = handleTest ./xmonad.nix {}; + xrdp = handleTest ./xrdp.nix {}; + xss-lock = handleTest ./xss-lock.nix {}; + yabar = handleTest ./yabar.nix {}; + zookeeper = handleTest ./zookeeper.nix {}; +} diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 0e93df85547..359e499cc96 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -168,9 +168,11 @@ let # TODO: refactor once something like Profpatsch's types-simple will land tests = attrsOf (mkOptionType { name = "test"; - check = x: isDerivation x && + check = x: x == {} || ( # Accept {} for tests that are unsupported + isDerivation x && x ? meta.timeout && - x ? meta.needsVMSupport; + x ? meta.needsVMSupport + ); merge = lib.options.mergeOneOption; }); needsVMSupport = bool; From aade4e577bbb27f044217c51a006ab6ba544ebb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 21:27:58 +0900 Subject: [PATCH 32/68] tests: disable some broken tests and/or restrict to x86_64 --- nixos/tests/all-tests.nix | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index da87c0197d8..0d6dc48c9d6 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -21,15 +21,15 @@ let else {}; in { - acme = handleTest ./acme.nix {}; + acme = handleTestOn ["x86_64-linux"] ./acme.nix {}; atd = handleTest ./atd.nix {}; avahi = handleTest ./avahi.nix {}; - bcachefs = handleTest ./bcachefs.nix {}; - beegfs = handleTest ./beegfs.nix {}; + bcachefs = handleTestOn ["x86_64-linux"] ./bcachefs.nix {}; # linux-4.18.2018.10.12 is unsupported on aarch64 + beegfs = handleTestOn ["x86_64-linux"] ./beegfs.nix {}; # beegfs is unsupported on aarch64 bind = handleTest ./bind.nix {}; bittorrent = handleTest ./bittorrent.nix {}; #blivet = handleTest ./blivet.nix {}; # broken since 2017-07024 - boot = handleTest ./boot.nix {}; + boot = handleTestOn ["x86_64-linux"] ./boot.nix {}; # syslinux is unsupported on aarch64 boot-stage1 = handleTest ./boot-stage1.nix {}; borgbackup = handleTest ./borgbackup.nix {}; buildbot = handleTest ./buildbot.nix {}; @@ -51,7 +51,7 @@ in containers-physical_interfaces = handleTest ./containers-physical_interfaces.nix {}; containers-restart_networking = handleTest ./containers-restart_networking.nix {}; containers-tmpfs = handleTest ./containers-tmpfs.nix {}; - couchdb = handleTest ./couchdb.nix {}; + #couchdb = handleTest ./couchdb.nix {}; # spidermonkey-1.8.5 is marked as broken deluge = handleTest ./deluge.nix {}; dhparams = handleTest ./dhparams.nix {}; dnscrypt-proxy = handleTestOn ["x86_64-linux"] ./dnscrypt-proxy.nix {}; @@ -74,14 +74,14 @@ in firewall = handleTest ./firewall.nix {}; flatpak = handleTest ./flatpak.nix {}; fsck = handleTest ./fsck.nix {}; - fwupd = handleTest ./fwupd.nix {}; + fwupd = handleTestOn ["x86_64-linux"] ./fwupd.nix {}; # libsmbios is unsupported on aarch64 gdk-pixbuf = handleTest ./gdk-pixbuf.nix {}; gitea = handleTest ./gitea.nix {}; gitlab = handleTest ./gitlab.nix {}; gitolite = handleTest ./gitolite.nix {}; gjs = handleTest ./gjs.nix {}; - gnome3 = handleTest ./gnome3.nix {}; - gnome3-gdm = handleTest ./gnome3-gdm.nix {}; + gnome3 = handleTestOn ["x86_64-linux"] ./gnome3.nix {}; # libsmbios is unsupported on aarch64 + gnome3-gdm = handleTestOn ["x86_64-linux"] ./gnome3-gdm.nix {}; # libsmbios is unsupported on aarch64 gocd-agent = handleTest ./gocd-agent.nix {}; gocd-server = handleTest ./gocd-server.nix {}; grafana = handleTest ./grafana.nix {}; @@ -89,7 +89,7 @@ in hadoop.hdfs = handleTestOn [ "x86_64-linux" ] ./hadoop/hdfs.nix {}; hadoop.yarn = handleTestOn [ "x86_64-linux" ] ./hadoop/yarn.nix {}; haproxy = handleTest ./haproxy.nix {}; - hardened = handleTest ./hardened.nix {}; + #hardened = handleTest ./hardened.nix {}; # broken due useSandbox = true hibernate = handleTest ./hibernate.nix {}; hitch = handleTest ./hitch {}; hocker-fetchdocker = handleTest ./hocker-fetchdocker {}; From cae5598611e74dfebf98e67803d4935f95888500 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 22:47:49 +0900 Subject: [PATCH 33/68] meta.tests: drop `meta.needsVMSupport` Its job is already handled by `requiredSystemFeatures` --- doc/meta.xml | 16 ++-------------- nixos/lib/testing.nix | 2 -- pkgs/stdenv/generic/check-meta.nix | 4 +--- 3 files changed, 3 insertions(+), 19 deletions(-) diff --git a/doc/meta.xml b/doc/meta.xml index 51c7b2dfc88..a7e467a78cb 100644 --- a/doc/meta.xml +++ b/doc/meta.xml @@ -258,9 +258,8 @@ meta.platforms = stdenv.lib.platforms.linux; An attribute set with as values tests. A test is a derivation, which builds successfully when the test passes, and fails to build otherwise. A - derivation that is a test requires some meta elements - to be defined: needsVMSupport (automatically filled-in - for NixOS tests) and timeout. + derivation that is a test needs to have meta.timeout + defined. The NixOS tests are available as nixosTests in @@ -294,17 +293,6 @@ meta.platforms = stdenv.lib.platforms.linux; - - - needsVMSupport - - - - A boolan that states whether the derivation requires build-time support - for Virtual Machine to build successfully. - - - hydraPlatforms diff --git a/nixos/lib/testing.nix b/nixos/lib/testing.nix index d26d4a91924..f90fc9f7df0 100644 --- a/nixos/lib/testing.nix +++ b/nixos/lib/testing.nix @@ -70,8 +70,6 @@ in rec { mv $i $out/coverage-data/$(dirname $(dirname $i)) done ''; - - meta.needsVMSupport = true; }; diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 359e499cc96..301080f0f90 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -170,12 +170,10 @@ let name = "test"; check = x: x == {} || ( # Accept {} for tests that are unsupported isDerivation x && - x ? meta.timeout && - x ? meta.needsVMSupport + x ? meta.timeout ); merge = lib.options.mergeOneOption; }); - needsVMSupport = bool; timeout = int; # Weirder stuff that doesn't appear in the documentation? From 2986ce16a8012e90f0066b7bc9ccea1543644a4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 22:55:23 +0900 Subject: [PATCH 34/68] meta.tests: rename into passthru.tests Nix currently rejects derivations in `meta` values. This works around that limitation by using `passthru` instead. Closes https://github.com/NixOS/nixpkgs/issues/50230 --- doc/meta.xml | 13 ++++++++++++- nixos/tests/all-tests.nix | 2 +- pkgs/servers/mail/dovecot/default.nix | 9 +++------ pkgs/servers/mail/opensmtpd/default.nix | 9 +++------ pkgs/stdenv/generic/check-meta.nix | 1 + 5 files changed, 20 insertions(+), 14 deletions(-) diff --git a/doc/meta.xml b/doc/meta.xml index a7e467a78cb..3abfe016d70 100644 --- a/doc/meta.xml +++ b/doc/meta.xml @@ -255,6 +255,17 @@ meta.platforms = stdenv.lib.platforms.linux; tests + + + This attribute is special in that it is not actually under the + meta attribute set but rather under the + passthru attribute set. This is due to a current + limitation of Nix, and will change as soon as Nixpkgs will be able to + depend on a new enough version of Nix. See + the relevant + issue for more details. + + An attribute set with as values tests. A test is a derivation, which builds successfully when the test passes, and fails to build otherwise. A @@ -269,7 +280,7 @@ meta.platforms = stdenv.lib.platforms.linux; { /* ... */, nixosTests }: { # ... - meta.tests = { + passthru.tests = { basic-functionality-and-dovecot-integration = nixosTests.opensmtpd; }; } diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 0d6dc48c9d6..718a95dadd2 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -2,7 +2,7 @@ # The return value of this function will be an attrset with arbitrary depth and # the `anything` returned by callTest at its test leafs. # The tests not supported by `system` will be replaced with `{}`, so that -# `meta.tests` can contain links to those without breaking on architectures +# `passthru.tests` can contain links to those without breaking on architectures # where said tests are unsupported. # Example callTest that just extracts the derivation from the test: # callTest = t: t.test; diff --git a/pkgs/servers/mail/dovecot/default.nix b/pkgs/servers/mail/dovecot/default.nix index af1184a973b..f80a01e20f8 100644 --- a/pkgs/servers/mail/dovecot/default.nix +++ b/pkgs/servers/mail/dovecot/default.nix @@ -68,11 +68,8 @@ stdenv.mkDerivation rec { description = "Open source IMAP and POP3 email server written with security primarily in mind"; maintainers = with stdenv.lib.maintainers; [ peti rickynils fpletz ]; platforms = stdenv.lib.platforms.unix; - # https://github.com/NixOS/nixpkgs/issues/50230 must be resolved before - # this can be enabled. - # - # tests = { - # opensmtpd-interaction = nixosTests.opensmtpd; - # }; + }; + passthru.tests = { + opensmtpd-interaction = nixosTests.opensmtpd; }; } diff --git a/pkgs/servers/mail/opensmtpd/default.nix b/pkgs/servers/mail/opensmtpd/default.nix index 5efaca40f6e..695450f1822 100644 --- a/pkgs/servers/mail/opensmtpd/default.nix +++ b/pkgs/servers/mail/opensmtpd/default.nix @@ -61,11 +61,8 @@ stdenv.mkDerivation rec { license = licenses.isc; platforms = platforms.linux; maintainers = with maintainers; [ rickynils obadz ekleog ]; - # https://github.com/NixOS/nixpkgs/issues/50230 must be resolved before - # this can be enabled. - # - # tests = { - # basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd; - # }; + }; + passthru.tests = { + basic-functionality-and-dovecot-interaction = nixosTests.opensmtpd; }; } diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix index 301080f0f90..d09dff10b27 100644 --- a/pkgs/stdenv/generic/check-meta.nix +++ b/pkgs/stdenv/generic/check-meta.nix @@ -166,6 +166,7 @@ let hydraPlatforms = listOf str; broken = bool; # TODO: refactor once something like Profpatsch's types-simple will land + # This is currently dead code due to https://github.com/NixOS/nix/issues/2532 tests = attrsOf (mkOptionType { name = "test"; check = x: x == {} || ( # Accept {} for tests that are unsupported From 6aedf6a5c893925bf58814492d42d0b542dfabe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Sun, 11 Nov 2018 23:03:09 +0900 Subject: [PATCH 35/68] nixosTests: use the newly-extracted all-tests.nix --- pkgs/top-level/all-packages.nix | 22 +++++----------------- 1 file changed, 5 insertions(+), 17 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 018bba2aff8..f246d7febba 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -73,23 +73,11 @@ with pkgs; ### Push NixOS tests inside the fixed point - nixosTests = - let - # TODO(Ericson2314,ekleog): Check this will work correctly with cross- - system = builtins.currentSystem; - rawTests = (import ../../nixos/release.nix { - nixpkgs = pkgs; - }).tests; - testNames = builtins.attrNames rawTests; - filteredList = builtins.filter - (test: rawTests.${test} ? ${system}) - testNames; - finalList = map - (test: { name = test; value = rawTests.${test}.${system}; }) - filteredList; - finalTests = builtins.listToAttrs finalList; - in - finalTests; + nixosTests = import ../../nixos/tests/all-tests.nix { + inherit pkgs; + system = stdenv.hostPlatform.system; + callTest = t: t.test; + }; ### BUILD SUPPORT From 090bd931e1087948a29d48bf2f3b4297571af6c1 Mon Sep 17 00:00:00 2001 From: Elis Hirwing Date: Sun, 11 Nov 2018 15:26:38 +0100 Subject: [PATCH 36/68] gitea: 1.5.2 -> 1.5.3 (#50229) Changelog: https://github.com/go-gitea/gitea/releases/tag/v1.5.3 --- pkgs/applications/version-management/gitea/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/gitea/default.nix b/pkgs/applications/version-management/gitea/default.nix index a25492e4546..8ee43dc16c1 100644 --- a/pkgs/applications/version-management/gitea/default.nix +++ b/pkgs/applications/version-management/gitea/default.nix @@ -7,13 +7,13 @@ with stdenv.lib; buildGoPackage rec { name = "gitea-${version}"; - version = "1.5.2"; + version = "1.5.3"; src = fetchFromGitHub { owner = "go-gitea"; repo = "gitea"; rev = "v${version}"; - sha256 = "168pbndlh7c148p8wzkd39kd7idiba9zw7v0alp9zqcqzzayaydj"; + sha256 = "1f8cbsd3kn4v2a6c57rwh9slgvss7gnxs96yhcy2ddwyycf6i04d"; # Required to generate the same checksum on MacOS due to unicode encoding differences # More information: https://github.com/NixOS/nixpkgs/pull/48128 extraPostFetch = '' From 8c084007d555e6e21dc99cd194e876fd9b61a9ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 17:21:06 +0100 Subject: [PATCH 37/68] jetbrains.clion: 2018.2.4 -> 2018.2.5 --- pkgs/applications/editors/jetbrains/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index f5fbf1b5f03..7afd3716a2c 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -250,12 +250,12 @@ in clion = buildClion rec { name = "clion-${version}"; - version = "2018.2.4"; /* updated by script */ + version = "2018.2.5"; /* updated by script */ description = "C/C++ IDE. New. Intelligent. Cross-platform"; license = stdenv.lib.licenses.unfree; src = fetchurl { url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz"; - sha256 = "0ljzdjvlkm37gclny652nm7kw2hlyl1iiix6h44zq7fhszp5kmyr"; /* updated by script */ + sha256 = "0brbwgyjh38ix8nr176glmc3kr7ndi8wppxqkb1c890jw5d3916j"; /* updated by script */ }; wmClass = "jetbrains-clion"; update-channel = "CLion Release"; # channel's id as in http://www.jetbrains.com/updates/updates.xml From b8096a088efd3890502600143bafc52b9b43e9ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 17:21:39 +0100 Subject: [PATCH 38/68] jetbrains.phpstorm: 2018.2.3 -> 2018.2.5 --- pkgs/applications/editors/jetbrains/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index 7afd3716a2c..0d03ef2dcfe 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -315,12 +315,12 @@ in phpstorm = buildPhpStorm rec { name = "phpstorm-${version}"; - version = "2018.2.3"; /* updated by script */ + version = "2018.2.5"; /* updated by script */ description = "Professional IDE for Web and PHP developers"; license = stdenv.lib.licenses.unfree; src = fetchurl { url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz"; - sha256 = "1kdv3h749ly2sadixz3khaxrias3k72fi2ixrzniynwhgiqixz70"; /* updated by script */ + sha256 = "0crr3056hlv9x2q1i1n00aavj53xkwkfy4lgyyphk81c0gly4dg1"; /* updated by script */ }; wmClass = "jetbrains-phpstorm"; update-channel = "PhpStorm 2018.2"; From e61f19947057f57ce62397a4c1ad76c601125b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 17:22:14 +0100 Subject: [PATCH 39/68] jetbrains.ruby-mine: 2018.2.2 -> 2018.2.4 --- pkgs/applications/editors/jetbrains/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index 0d03ef2dcfe..1902f172cb2 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -367,12 +367,12 @@ in ruby-mine = buildRubyMine rec { name = "ruby-mine-${version}"; - version = "2018.2.2"; /* updated by script */ + version = "2018.2.4"; /* updated by script */ description = "The Most Intelligent Ruby and Rails IDE"; license = stdenv.lib.licenses.unfree; src = fetchurl { url = "https://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz"; - sha256 = "0585dnbvmzxnj2am6b04lfw75rdhk0fby2cbj58pzzcjz5xlrhvq"; /* updated by script */ + sha256 = "0dk3ch749ai5kyg9q8819ckrqw2jk4f656iqrkkpab9fjqfjylka"; /* updated by script */ }; wmClass = "jetbrains-rubymine"; update-channel = "RubyMine 2018.2"; From 30422aa7d0d5ab96f7c3d7bb8ebfc7434ec12dc2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 17:22:48 +0100 Subject: [PATCH 40/68] jetbrains.webstorm: 2018.2.3 -> 2018.2.5 --- pkgs/applications/editors/jetbrains/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix index 1902f172cb2..7d25b1ed39d 100644 --- a/pkgs/applications/editors/jetbrains/default.nix +++ b/pkgs/applications/editors/jetbrains/default.nix @@ -380,12 +380,12 @@ in webstorm = buildWebStorm rec { name = "webstorm-${version}"; - version = "2018.2.3"; /* updated by script */ + version = "2018.2.5"; /* updated by script */ description = "Professional IDE for Web and JavaScript development"; license = stdenv.lib.licenses.unfree; src = fetchurl { url = "https://download.jetbrains.com/webstorm/WebStorm-${version}.tar.gz"; - sha256 = "0y3a1p047knc598aamxxdmcf5nr86wk60w6nk2bhcasxjyqaw6r4"; /* updated by script */ + sha256 = "0d4l2bf87i6kv45qmbw55hvcrnxr6zxjcjicbkjs2k01lv7y605c"; /* updated by script */ }; wmClass = "jetbrains-webstorm"; update-channel = "WebStorm Release"; From 7759fe1f2253349dc0ef4185287673672ca4c84e Mon Sep 17 00:00:00 2001 From: Jason Hilton Date: Fri, 9 Nov 2018 18:26:34 -0800 Subject: [PATCH 41/68] catch2: init at 2.4.2 --- pkgs/development/libraries/catch2/default.nix | 27 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 29 insertions(+) create mode 100644 pkgs/development/libraries/catch2/default.nix diff --git a/pkgs/development/libraries/catch2/default.nix b/pkgs/development/libraries/catch2/default.nix new file mode 100644 index 00000000000..073736ce66d --- /dev/null +++ b/pkgs/development/libraries/catch2/default.nix @@ -0,0 +1,27 @@ +{ stdenv, fetchFromGitHub, cmake, python }: + +stdenv.mkDerivation rec { + name = "catch2-${version}"; + version = "2.4.2"; + + src = fetchFromGitHub { + owner = "catchorg"; + repo = "Catch2"; + rev = "v${version}"; + sha256="1105bxbvh1xxl4yxjjp6l6w6hgsh8xbdiwlnga9di5y2x92b9bjd"; + }; + + nativeBuildInputs = [ cmake ]; + + cmakeFlags = [ + "-H.." + "-DBUILD_TESTING=OFF"]; + + meta = with stdenv.lib; { + description = "A multi-paradigm automated test framework for C++ and Objective-C (and, maybe, C)"; + homepage = http://catch-lib.net; + license = licenses.boost; + maintainers = with maintainers; [ edwtjo knedlsepp ]; + platforms = with platforms; unix; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 018bba2aff8..bfddbd965d1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1108,6 +1108,8 @@ with pkgs; catch = callPackage ../development/libraries/catch { }; + catch2 = callPackage ../development/libraries/catch2 { }; + catdoc = callPackage ../tools/text/catdoc { }; catdocx = callPackage ../tools/text/catdocx { }; From 1de9c8a023a4000e250e07f18d42b900c6db6cf8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edward=20Tj=C3=B6rnhammar?= Date: Sun, 11 Nov 2018 17:28:04 +0100 Subject: [PATCH 42/68] catch: 1.12.0 -> 1.12.2 --- pkgs/development/libraries/catch/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/development/libraries/catch/default.nix b/pkgs/development/libraries/catch/default.nix index 116216d500e..d83060fc24d 100644 --- a/pkgs/development/libraries/catch/default.nix +++ b/pkgs/development/libraries/catch/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "catch-${version}"; - version = "1.12.0"; + version = "1.12.2"; src = fetchFromGitHub { owner = "catchorg"; repo = "Catch"; rev = "v${version}"; - sha256 = "0hkcmycvyyazzi9dywnyiipnmbx399iirh5xk5g957c8zl0505kd"; + sha256 = "1gdp5wm8khn02g2miz381llw3191k7309qj8s3jd6sasj01rhf23"; }; nativeBuildInputs = [ cmake ]; From 753743c37b11e263283f5dfcf408553c32051902 Mon Sep 17 00:00:00 2001 From: aszlig Date: Sun, 11 Nov 2018 19:29:12 +0100 Subject: [PATCH 43/68] libredirect: Add support for Darwin The library can be used also on Darwin using it like this: NIX_REDIRECTS='foo=bar' \ DYLD_INSERT_LIBRARIES=${libredirect}/lib/libredirect.so \ DYLD_FORCE_FLAT_NAMESPACE=1 \ some_program So let's actually not hardcade gcc and add Darwin to meta.platforms. No other changes seem to be required. Signed-off-by: aszlig --- pkgs/build-support/libredirect/default.nix | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index d13cdd681a2..389abec982e 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -5,15 +5,14 @@ stdenv.mkDerivation { unpackPhase = "cp ${./libredirect.c} libredirect.c"; - buildPhase = - '' - gcc -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl - ''; + buildPhase = '' + cc -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl + ''; installPhase = "mkdir -p $out/lib; cp libredirect.so $out/lib"; meta = { - platforms = stdenv.lib.platforms.linux; + platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls"; longDescription = '' libredirect is an LD_PRELOAD library to intercept and rewrite the paths in From e46f25addcd69bbbd1134c21b35edabafaef42f3 Mon Sep 17 00:00:00 2001 From: rht Date: Sat, 3 Nov 2018 12:01:27 +0000 Subject: [PATCH 44/68] brave: 0.25.2 -> 0.56.12 --- .../networking/browsers/brave/default.nix | 50 ++++++++++++++++--- 1 file changed, 43 insertions(+), 7 deletions(-) diff --git a/pkgs/applications/networking/browsers/brave/default.nix b/pkgs/applications/networking/browsers/brave/default.nix index d097e0b448c..3c0993d8733 100644 --- a/pkgs/applications/networking/browsers/brave/default.nix +++ b/pkgs/applications/networking/browsers/brave/default.nix @@ -30,7 +30,8 @@ pango, udev, xorg, - zlib + zlib, + xdg_utils }: let rpath = lib.makeLibraryPath [ @@ -65,32 +66,67 @@ let rpath = lib.makeLibraryPath [ udev xorg.libxcb zlib + xdg_utils ]; in stdenv.mkDerivation rec { name = "brave"; - version = "0.25.2"; + version = "0.56.12"; src = fetchurl { - url = "https://github.com/brave/browser-laptop/releases/download/v${version}dev/brave_${version}_amd64.deb"; - sha256 = "1r3rsa6szps7mvvpqyw0mg16zn36x451dxq4nmn2l5ds5cp1f017"; + url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb"; + sha256 = "1pvablwchpsm1fdhfp9kr2912yv4812r8prv5fn799qpflzxvyai"; }; - phases = [ "unpackPhase" "installPhase" ]; + dontConfigure = true; + dontBuild = true; + dontPatchELF = true; nativeBuildInputs = [ dpkg ]; - unpackPhase = "dpkg-deb -x $src ."; + unpackPhase = "dpkg-deb --fsys-tarfile $src | tar -x --no-same-permissions --no-same-owner"; installPhase = '' mkdir -p $out cp -R usr/* $out + cp -R opt/ $out/opt + + export BINARYWRAPPER=$out/opt/brave.com/brave/brave-browser + + # Fix path to bash in $BINARYWRAPPER + substituteInPlace $BINARYWRAPPER \ + --replace /bin/bash ${stdenv.shell} + + ln -sf $BINARYWRAPPER $out/bin/brave patchelf \ --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \ - --set-rpath "${rpath}" $out/bin/brave + --set-rpath "${rpath}" $out/opt/brave.com/brave/brave + + # Fix paths + substituteInPlace $out/share/applications/brave-browser.desktop \ + --replace /usr/bin/brave-browser $out/bin/brave + substituteInPlace $out/share/gnome-control-center/default-apps/brave-browser.xml \ + --replace /opt/brave.com $out/opt/brave.com + substituteInPlace $out/share/menu/brave-browser.menu \ + --replace /opt/brave.com $out/opt/brave.com + substituteInPlace $out/opt/brave.com/brave/default-app-block \ + --replace /opt/brave.com $out/opt/brave.com + + # Correct icons location + icon_sizes=("16" "22" "24" "32" "48" "64" "128" "256") + + for icon in ''${icon_sizes[*]} + do + mkdir -p $out/share/icons/hicolor/$icon\x$icon/apps + ln -s $out/opt/brave.com/brave/product_logo_$icon.png $out/share/icons/hicolor/$icon\x$icon/apps/brave-browser.png + done + + # Replace xdg-settings and xdg-mime + ln -sf ${xdg_utils}/bin/xdg-settings $out/opt/brave.com/brave/xdg-settings + ln -sf ${xdg_utils}/bin/xdg-mime $out/opt/brave.com/brave/xdg-mime ''; meta = with stdenv.lib; { From b46f5e1277d7f7226c8f7d765d8dddca8bcd615d Mon Sep 17 00:00:00 2001 From: ryan4729 Date: Sun, 11 Nov 2018 14:37:12 -0800 Subject: [PATCH 45/68] go: organize GOARCH and GOOS --- pkgs/development/compilers/go/1.11.nix | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/pkgs/development/compilers/go/1.11.nix b/pkgs/development/compilers/go/1.11.nix index 59716fbcdb6..7ae37214096 100644 --- a/pkgs/development/compilers/go/1.11.nix +++ b/pkgs/development/compilers/go/1.11.nix @@ -131,13 +131,16 @@ stdenv.mkDerivation rec { substituteInPlace "src/cmd/link/internal/ld/lib.go" --replace dsymutil ${llvm}/bin/llvm-dsymutil ''; - GOOS = if stdenv.isDarwin then "darwin" else "linux"; - GOARCH = if stdenv.isDarwin then "amd64" - else if stdenv.hostPlatform.isi686 then "386" - else if stdenv.hostPlatform.isx86_64 then "amd64" - else if stdenv.hostPlatform.isAarch32 then "arm" - else if stdenv.hostPlatform.isAarch64 then "arm64" - else throw "Unsupported system"; + GOOS = stdenv.hostPlatform.parsed.kernel.name; + GOARCH = { + "i686" = "386"; + "x86_64" = "amd64"; + "aarch64" = "arm64"; + "arm" = "arm"; + "armv5tel" = "arm"; + "armv6l" = "arm"; + "armv7l" = "arm"; + }.${stdenv.hostPlatform.parsed.cpu.name} or (throw "Unsupported system"); GOARM = toString (stdenv.lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]); GO386 = 387; # from Arch: don't assume sse2 on i686 CGO_ENABLED = 1; From d76ec523bb78af1f4c651025b27b6e9152c10662 Mon Sep 17 00:00:00 2001 From: zimbatm Date: Mon, 12 Nov 2018 00:08:18 +0100 Subject: [PATCH 46/68] use for cross-compilation --- pkgs/build-support/libredirect/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index 389abec982e..0c24dbeb207 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -6,7 +6,7 @@ stdenv.mkDerivation { unpackPhase = "cp ${./libredirect.c} libredirect.c"; buildPhase = '' - cc -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl + $CC -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl ''; installPhase = "mkdir -p $out/lib; cp libredirect.so $out/lib"; From 9ef52352bdce530e00372078e43d46dfebf5e91d Mon Sep 17 00:00:00 2001 From: zimbatm Date: Mon, 12 Nov 2018 00:09:36 +0100 Subject: [PATCH 47/68] assume that it works on all unix platforms --- pkgs/build-support/libredirect/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index 0c24dbeb207..d3de805b2f9 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -12,7 +12,7 @@ stdenv.mkDerivation { installPhase = "mkdir -p $out/lib; cp libredirect.so $out/lib"; meta = { - platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin; + platforms = stdenv.lib.platforms.unix; description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls"; longDescription = '' libredirect is an LD_PRELOAD library to intercept and rewrite the paths in From fa4aa7989228d24c2fe2bfb2e6ce2c89ea337df0 Mon Sep 17 00:00:00 2001 From: fuerbringer Date: Mon, 12 Nov 2018 00:05:53 +0100 Subject: [PATCH 48/68] diskus: init at 0.4.0 --- maintainers/maintainer-list.nix | 5 +++++ pkgs/tools/misc/diskus/default.nix | 23 +++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 3 files changed, 30 insertions(+) create mode 100644 pkgs/tools/misc/diskus/default.nix diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 08ff5e9108a..f339c93ef0b 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1527,6 +1527,11 @@ github = "ftrvxmtrx"; name = "Siarhei Zirukin"; }; + fuerbringer = { + email = "severin@fuerbringer.info"; + github = "fuerbringer"; + name = "Severin Fürbringer"; + }; funfunctor = { email = "eocallaghan@alterapraxis.com"; name = "Edward O'Callaghan"; diff --git a/pkgs/tools/misc/diskus/default.nix b/pkgs/tools/misc/diskus/default.nix new file mode 100644 index 00000000000..55489aec32a --- /dev/null +++ b/pkgs/tools/misc/diskus/default.nix @@ -0,0 +1,23 @@ +{ stdenv, fetchFromGitHub, rustPlatform }: + +rustPlatform.buildRustPackage rec { + name = "diskus-${version}"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "sharkdp"; + repo = "diskus"; + rev = "cf4a5e0dc5bf3daedabe4b25343e7eb6238930c0"; + sha256 = "1w5fnpwdsfaca2177qn0clf8j7zwgzhdckjdl2zdbs5qrdwdqrd2"; + }; + + cargoSha256 = "08wm85cs0fi03a75wp276w5hgch3kd787py51jjcxdanm2viq7zv"; + + meta = with stdenv.lib; { + description = "A minimal, fast alternative to 'du -sh'"; + homepage = https://github.com/sharkdp/diskus; + license = with licenses; [ asl20 /* or */ mit ]; + maintainers = [ maintainers.fuerbringer ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bfddbd965d1..f57921c5788 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -691,6 +691,8 @@ with pkgs; cozy = callPackage ../applications/audio/cozy-audiobooks { }; + diskus = callPackage ../tools/misc/diskus { }; + djmount = callPackage ../tools/filesystems/djmount { }; dgsh = callPackage ../shells/dgsh { }; From 55cad35506551f4f871ea520e8e7d655be80b0ab Mon Sep 17 00:00:00 2001 From: Tim Steinbach Date: Sun, 11 Nov 2018 22:08:16 -0500 Subject: [PATCH 49/68] linux: 4.20-rc1 -> 4.20-rc2 --- pkgs/os-specific/linux/kernel/linux-testing.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix index ad7e44ed0a1..9c8d4453087 100644 --- a/pkgs/os-specific/linux/kernel/linux-testing.nix +++ b/pkgs/os-specific/linux/kernel/linux-testing.nix @@ -1,13 +1,13 @@ { stdenv, buildPackages, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args: buildLinux (args // rec { - version = "4.20-rc1"; - modDirVersion = "4.20.0-rc1"; + version = "4.20-rc2"; + modDirVersion = "4.20.0-rc2"; extraMeta.branch = "4.20"; src = fetchurl { url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; - sha256 = "0nf3rk8768740smkbf2ilsm40p1pnnmrpf53pmc5k1dkj4kgc0pb"; + sha256 = "0vmzrsfdg8sjyq833szirsv83wj2lgd92hy1fw5rp7xnjavn69hc"; }; # Should the testing kernels ever be built on Hydra? From ba1fddb31535c5721cf2c3913e704f0b258f656b Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 12 Nov 2018 09:59:39 +0100 Subject: [PATCH 50/68] libredirect: Use extensions.sharedLibrary This is to make sure we get the correct shared library suffix of the target platform. While for example on Darwin it would even work with the hardcoded .so prefix it's IMHO a bit nicer to have the actual native extension. Signed-off-by: aszlig --- pkgs/build-support/libredirect/default.nix | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index d3de805b2f9..fec659ff5fd 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -5,11 +5,16 @@ stdenv.mkDerivation { unpackPhase = "cp ${./libredirect.c} libredirect.c"; + shlibext = stdenv.targetPlatform.extensions.sharedLibrary; + buildPhase = '' - $CC -Wall -std=c99 -O3 -shared libredirect.c -o libredirect.so -fPIC -ldl + $CC -Wall -std=c99 -O3 -shared libredirect.c \ + -o "libredirect$shlibext" -fPIC -ldl ''; - installPhase = "mkdir -p $out/lib; cp libredirect.so $out/lib"; + installPhase = '' + install -vD "libredirect$shlibext" "$out/lib/libredirect$shlibext" + ''; meta = { platforms = stdenv.lib.platforms.unix; From 6c3b9c359dc0f5edef08c66f747bc3a20a6d8d00 Mon Sep 17 00:00:00 2001 From: Lancelot SIX Date: Mon, 12 Nov 2018 10:28:20 +0100 Subject: [PATCH 51/68] nano: 3.1 -> 3.2 See http://lists.gnu.org/archive/html/info-gnu/2018-11/msg00008.html for release information --- pkgs/applications/editors/nano/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix index 36c400a74fa..0e313d33736 100644 --- a/pkgs/applications/editors/nano/default.nix +++ b/pkgs/applications/editors/nano/default.nix @@ -20,11 +20,11 @@ let in stdenv.mkDerivation rec { name = "nano-${version}"; - version = "3.1"; + version = "3.2"; src = fetchurl { url = "mirror://gnu/nano/${name}.tar.xz"; - sha256 = "17kinzyv6vwgyx2d0ym1kp65qbf7kxzwpyg21ic1rijv1aj2rh0l"; + sha256 = "0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi"; }; nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext; From 34dd1c68f877912290fcad4bb8d4d3c0035ef5e6 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 12 Nov 2018 10:48:15 +0100 Subject: [PATCH 52/68] libredirect: Add a small test This is just a sanity check on whether the library correctly wraps the syscalls and it's using the "true" executable for posix_spawn() and execv(). The installCheckPhase is not executed if we are cross-compiling, so this shouldn't break cross-compilation. One thing I'm not actually sure is whether ${coreutils}/bin/true is universally available on all the platforms, nor whether all the functions we use in the test are available, but we can still fix that after we've found out about that. Signed-off-by: aszlig --- pkgs/build-support/libredirect/default.nix | 22 +++++++- pkgs/build-support/libredirect/test.c | 59 ++++++++++++++++++++++ 2 files changed, 79 insertions(+), 2 deletions(-) create mode 100644 pkgs/build-support/libredirect/test.c diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix index fec659ff5fd..09a3da6729a 100644 --- a/pkgs/build-support/libredirect/default.nix +++ b/pkgs/build-support/libredirect/default.nix @@ -1,21 +1,39 @@ -{ stdenv }: +{ stdenv, coreutils }: stdenv.mkDerivation { name = "libredirect-0"; - unpackPhase = "cp ${./libredirect.c} libredirect.c"; + unpackPhase = '' + cp ${./libredirect.c} libredirect.c + cp ${./test.c} test.c + ''; shlibext = stdenv.targetPlatform.extensions.sharedLibrary; buildPhase = '' $CC -Wall -std=c99 -O3 -shared libredirect.c \ -o "libredirect$shlibext" -fPIC -ldl + + if [ -n "$doInstallCheck" ]; then + $CC -Wall -std=c99 -O3 test.c -o test + fi ''; installPhase = '' install -vD "libredirect$shlibext" "$out/lib/libredirect$shlibext" ''; + doInstallCheck = true; + + installCheckPhase = if stdenv.isDarwin then '' + NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true" \ + DYLD_INSERT_LIBRARIES="$out/lib/libredirect$shlibext" \ + DYLD_FORCE_FLAT_NAMESPACE=1 ./test + '' else '' + NIX_REDIRECTS="/foo/bar/test=${coreutils}/bin/true" \ + LD_PRELOAD="$out/lib/libredirect$shlibext" ./test + ''; + meta = { platforms = stdenv.lib.platforms.unix; description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls"; diff --git a/pkgs/build-support/libredirect/test.c b/pkgs/build-support/libredirect/test.c new file mode 100644 index 00000000000..b57664db3c1 --- /dev/null +++ b/pkgs/build-support/libredirect/test.c @@ -0,0 +1,59 @@ +#include +#include +#include +#include +#include + +#include +#include +#include + +#define TESTPATH "/foo/bar/test" + +extern char **environ; + +void test_spawn(void) { + pid_t pid; + int ret; + posix_spawn_file_actions_t file_actions; + char *argv[] = {"true", NULL}; + + assert(posix_spawn_file_actions_init(&file_actions) == 0); + + ret = posix_spawn(&pid, TESTPATH, &file_actions, NULL, argv, environ); + + assert(ret == 0); + assert(waitpid(pid, NULL, 0) != -1); +} + +void test_execv(void) { + char *argv[] = {"true", NULL}; + assert(execv(TESTPATH, argv) == 0); +} + +int main(void) +{ + FILE *testfp; + int testfd; + struct stat testsb; + + testfp = fopen(TESTPATH, "r"); + assert(testfp != NULL); + fclose(testfp); + + testfd = open(TESTPATH, O_RDONLY); + assert(testfd != -1); + close(testfd); + + assert(access(TESTPATH, X_OK) == 0); + + assert(stat(TESTPATH, &testsb) != -1); + + test_spawn(); + test_execv(); + + /* If all goes well, this is never reached because test_execv() replaces + * the current process. + */ + return 0; +} From b230ad0e293985d8f8e3ebc575cb36b9d20e686d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 10 Nov 2018 13:35:29 +0100 Subject: [PATCH 53/68] python.pkgs.protobuf3_1: drop Using the specific version of protobuf can be achieved by a simple `python.pkgs.protobuf.override { protobuf = protobuf3_1; }`. --- pkgs/applications/misc/ola/default.nix | 5 ++++- pkgs/top-level/all-packages.nix | 6 +++--- pkgs/top-level/python-packages.nix | 6 ------ 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/pkgs/applications/misc/ola/default.nix b/pkgs/applications/misc/ola/default.nix index 792cff81865..fce6b8426cb 100644 --- a/pkgs/applications/misc/ola/default.nix +++ b/pkgs/applications/misc/ola/default.nix @@ -16,7 +16,10 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook bison flex pkgconfig perl ]; buildInputs = [ libuuid cppunit protobuf3_1 zlib avahi libmicrohttpd python3 ]; - propagatedBuildInputs = [ python3Packages.protobuf3_1 python3Packages.numpy ]; + propagatedBuildInputs = [ + (python3Packages.protobuf.override { protobuf = protobuf3_1; }) + python3Packages.numpy + ]; configureFlags = [ "--enable-python-libs" ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 018bba2aff8..b62d820e35f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -21679,14 +21679,14 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo; }; - caffe2 = callPackage ../development/libraries/science/math/caffe2 { + caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec { eigen3 = eigen3_3; inherit (python3Packages) python future six numpy pydot; protobuf = protobuf3_1; - python-protobuf = python3Packages.protobuf3_1; + python-protobuf = python3Packages.protobuf.override { inherit protobuf; }; # Used only for image loading. opencv3 = opencv3WithoutCuda; - }; + }); cntk = callPackage ../applications/science/math/cntk rec { cudaSupport = pkgs.config.cudaSupport or false; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e4e561682bf..1a03ea3ad0b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -3771,12 +3771,6 @@ in { protobuf = pkgs.protobuf; }; - protobuf3_1 = callPackage ../development/python-modules/protobuf { - disabled = isPyPy; - doCheck = !isPy3k; - protobuf = pkgs.protobuf3_1; - }; - psd-tools = callPackage ../development/python-modules/psd-tools { }; psutil = callPackage ../development/python-modules/psutil { }; From 484a5c6152e908d15754260e8b7bcd8330593250 Mon Sep 17 00:00:00 2001 From: Chris Ostrouchov Date: Fri, 26 Oct 2018 12:59:52 -0400 Subject: [PATCH 54/68] pythonPackages.ruamel_yaml: refactor move to python-modules --- .../python-modules/ruamel_yaml/default.nix | 31 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 22 +------------ 2 files changed, 32 insertions(+), 21 deletions(-) create mode 100644 pkgs/development/python-modules/ruamel_yaml/default.nix diff --git a/pkgs/development/python-modules/ruamel_yaml/default.nix b/pkgs/development/python-modules/ruamel_yaml/default.nix new file mode 100644 index 00000000000..59674d82c90 --- /dev/null +++ b/pkgs/development/python-modules/ruamel_yaml/default.nix @@ -0,0 +1,31 @@ +{ stdenv +, buildPythonPackage +, fetchPypi +, ruamel_base +, typing +, ruamel_ordereddict +, isPy3k +}: + +buildPythonPackage rec { + pname = "ruamel.yaml"; + version = "0.15.35"; + + src = fetchPypi { + inherit pname version; + sha256 = "0xggyfaj6vprggahf7cq8kp9j79rb7hn8ndk3bxj2sxvwhhliiwd"; + }; + + # Tests cannot load the module to test + doCheck = false; + + propagatedBuildInputs = [ ruamel_base typing ] + ++ stdenv.lib.optional (!isPy3k) ruamel_ordereddict; + + meta = with stdenv.lib; { + description = "YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order"; + homepage = https://bitbucket.org/ruamel/yaml; + license = licenses.mit; + }; + +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 1a03ea3ad0b..2e96e23f968 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -5987,27 +5987,7 @@ in { typeguard = callPackage ../development/python-modules/typeguard { }; - ruamel_yaml = buildPythonPackage rec { - name = "ruamel.yaml-${version}"; - version = "0.15.35"; - - src = pkgs.fetchurl { - url = "mirror://pypi/r/ruamel.yaml/${name}.tar.gz"; - sha256 = "0xggyfaj6vprggahf7cq8kp9j79rb7hn8ndk3bxj2sxvwhhliiwd"; - }; - - # Tests cannot load the module to test - doCheck = false; - - propagatedBuildInputs = with self; [ ruamel_base typing ] ++ - (optional (!isPy3k) self.ruamel_ordereddict); - - meta = { - description = "YAML parser/emitter that supports roundtrip preservation of comments, seq/map flow style, and map key order"; - homepage = https://bitbucket.org/ruamel/yaml; - license = licenses.mit; - }; - }; + ruamel_yaml = callPackage ../development/python-modules/ruamel_yaml { }; runsnakerun = buildPythonPackage rec { name = "runsnakerun-2.0.4"; From 92148ea5a0ce954a850dfb57528079a4c7505d08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 10 Nov 2018 20:12:28 +0100 Subject: [PATCH 55/68] python3.pkgs.homeassistant-pyozw: init at 0.1.0 --- .../python-modules/homeassistant-pyozw/default.nix | 14 ++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 16 insertions(+) create mode 100644 pkgs/development/python-modules/homeassistant-pyozw/default.nix diff --git a/pkgs/development/python-modules/homeassistant-pyozw/default.nix b/pkgs/development/python-modules/homeassistant-pyozw/default.nix new file mode 100644 index 00000000000..c4410cfdbcf --- /dev/null +++ b/pkgs/development/python-modules/homeassistant-pyozw/default.nix @@ -0,0 +1,14 @@ +{ python_openzwave, fetchPypi }: + +python_openzwave.overridePythonAttrs (oldAttrs: rec { + pname = "homeassistant_pyozw"; + version = "0.1.0"; + + src = fetchPypi { + inherit pname version; + extension = "zip"; + sha256 = "bca4062906f65db9b4668388e6755d6ea3ee9e1b02ad3ed81738bb4d32a79342"; + }; + + meta.homepage = https://github.com/home-assistant/python-openzwave; +}) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 2e96e23f968..bd5fc273717 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2468,6 +2468,8 @@ in { hetzner = callPackage ../development/python-modules/hetzner { }; + homeassistant-pyozw = callPackage ../development/python-modules/homeassistant-pyozw { }; + htmllaundry = callPackage ../development/python-modules/htmllaundry { }; html5lib = callPackage ../development/python-modules/html5lib { }; From e58c5024f0dc96c62e71de34a2364e05ba22ac6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Mon, 12 Nov 2018 11:19:11 +0100 Subject: [PATCH 56/68] openzwave: 2018-04-04 -> 2018-11-04 Switch to Home Assistant's source (https://github.com/home-assistant/open-zwave/tree/hass) because openzwave is only used in combination with Home Assistant afaik. --- pkgs/development/libraries/openzwave/default.nix | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/pkgs/development/libraries/openzwave/default.nix b/pkgs/development/libraries/openzwave/default.nix index 087a22dd61b..4150f0f466c 100644 --- a/pkgs/development/libraries/openzwave/default.nix +++ b/pkgs/development/libraries/openzwave/default.nix @@ -3,16 +3,18 @@ , systemd }: let - version = "2018-04-04"; + version = "2018-11-04"; in stdenv.mkDerivation rec { name = "openzwave-${version}"; + # Use fork by Home Assistant because this package is mainly used for python.pkgs.homeassistant-pyozw. + # See https://github.com/OpenZWave/open-zwave/compare/master...home-assistant:hass for the difference. src = fetchFromGitHub { - owner = "OpenZWave"; + owner = "home-assistant"; repo = "open-zwave"; - rev = "ab5fe966fee882bb9e8d78a91db892a60a1863d9"; - sha256 = "0yby8ygzjn5zp5vhysxaadbzysqanwd2zakz379299qs454pr2h9"; + rev = "2cc174ad5c935d2d17828634aca2db5a60c59237"; + sha256 = "1d13maj93i6h792cbvqpx43ffss44dxmvbwj2777vzvvjib8m4n8"; }; nativeBuildInputs = [ doxygen fontconfig graphviz-nox libxml2 pkgconfig which ]; From dbceff85b94eca9e5ecea4fedadbe4db52bfdbf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert=20Sch=C3=BCtz?= Date: Sat, 10 Nov 2018 13:42:15 +0100 Subject: [PATCH 57/68] home-assistant: 0.81.5 -> 0.82.0 --- .../home-assistant/component-packages.nix | 36 +++++++++++-------- pkgs/servers/home-assistant/default.nix | 16 ++++++--- pkgs/servers/home-assistant/frontend.nix | 4 +-- .../home-assistant/parse-requirements.py | 4 +-- 4 files changed, 37 insertions(+), 23 deletions(-) diff --git a/pkgs/servers/home-assistant/component-packages.nix b/pkgs/servers/home-assistant/component-packages.nix index 7f16e24a1f7..4aba2f435ba 100644 --- a/pkgs/servers/home-assistant/component-packages.nix +++ b/pkgs/servers/home-assistant/component-packages.nix @@ -2,7 +2,7 @@ # Do not edit! { - version = "0.81.5"; + version = "0.82.0"; components = { "abode" = ps: with ps; [ ]; "ads" = ps: with ps; [ ]; @@ -137,6 +137,7 @@ "binary_sensor.rpi_gpio" = ps: with ps; [ ]; "binary_sensor.rpi_pfio" = ps: with ps; [ ]; "binary_sensor.satel_integra" = ps: with ps; [ ]; + "binary_sensor.sense" = ps: with ps; [ ]; "binary_sensor.skybell" = ps: with ps; [ ]; "binary_sensor.sleepiq" = ps: with ps; [ ]; "binary_sensor.spc" = ps: with ps; [ ]; @@ -317,18 +318,20 @@ "deconz" = ps: with ps; [ ]; "deconz.config_flow" = ps: with ps; [ ]; "deconz.const" = ps: with ps; [ ]; + "deconz.gateway" = ps: with ps; [ ]; "demo" = ps: with ps; [ aiohttp-cors ]; "device_sun_light_trigger" = ps: with ps; [ ]; "device_tracker" = ps: with ps; [ ]; "device_tracker.actiontec" = ps: with ps; [ ]; "device_tracker.aruba" = ps: with ps; [ pexpect ]; - "device_tracker.asuswrt" = ps: with ps; [ pexpect ]; + "device_tracker.asuswrt" = ps: with ps; [ ]; "device_tracker.automatic" = ps: with ps; [ aiohttp-cors ]; "device_tracker.bbox" = ps: with ps; [ ]; "device_tracker.bluetooth_le_tracker" = ps: with ps; [ ]; "device_tracker.bluetooth_tracker" = ps: with ps; [ ]; "device_tracker.bmw_connected_drive" = ps: with ps; [ ]; "device_tracker.bt_home_hub_5" = ps: with ps; [ ]; + "device_tracker.bt_smarthub" = ps: with ps; [ ]; "device_tracker.cisco_ios" = ps: with ps; [ pexpect ]; "device_tracker.ddwrt" = ps: with ps; [ ]; "device_tracker.demo" = ps: with ps; [ ]; @@ -407,6 +410,7 @@ "fan.mqtt" = ps: with ps; [ paho-mqtt ]; "fan.template" = ps: with ps; [ ]; "fan.tuya" = ps: with ps; [ ]; + "fan.wemo" = ps: with ps; [ ]; "fan.wink" = ps: with ps; [ ]; "fan.xiaomi_miio" = ps: with ps; [ construct ]; "fan.zha" = ps: with ps; [ ]; @@ -417,7 +421,7 @@ "foursquare" = ps: with ps; [ aiohttp-cors ]; "freedns" = ps: with ps; [ ]; "fritzbox" = ps: with ps; [ ]; - "frontend" = ps: with ps; [ aiohttp-cors ruamel_yaml ]; + "frontend" = ps: with ps; [ aiohttp-cors ]; "gc100" = ps: with ps; [ ]; "geo_location" = ps: with ps; [ ]; "geo_location.demo" = ps: with ps; [ ]; @@ -433,6 +437,7 @@ "google_assistant.trait" = ps: with ps; [ ]; "google_domains" = ps: with ps; [ ]; "graphite" = ps: with ps; [ ]; + "greeneye_monitor" = ps: with ps; [ ]; "group" = ps: with ps; [ ]; "habitica" = ps: with ps; [ ]; "hangouts" = ps: with ps; [ ]; @@ -492,6 +497,7 @@ "image_processing.openalpr_local" = ps: with ps; [ ]; "image_processing.opencv" = ps: with ps; [ numpy ]; "image_processing.seven_segments" = ps: with ps; [ ]; + "image_processing.tensorflow" = ps: with ps; [ numpy pillow protobuf ]; "influxdb" = ps: with ps; [ influxdb ]; "input_boolean" = ps: with ps; [ ]; "input_datetime" = ps: with ps; [ ]; @@ -611,11 +617,11 @@ "lock.wink" = ps: with ps; [ ]; "lock.xiaomi_aqara" = ps: with ps; [ ]; "lock.zwave" = ps: with ps; [ ]; - "logbook" = ps: with ps; [ aiohttp-cors ruamel_yaml sqlalchemy ]; + "logbook" = ps: with ps; [ aiohttp-cors sqlalchemy ]; "logentries" = ps: with ps; [ ]; "logger" = ps: with ps; [ ]; "logi_circle" = ps: with ps; [ ]; - "lovelace" = ps: with ps; [ ruamel_yaml ]; + "lovelace" = ps: with ps; [ ]; "lutron" = ps: with ps; [ ]; "lutron_caseta" = ps: with ps; [ ]; "mailbox" = ps: with ps; [ aiohttp-cors ]; @@ -740,7 +746,7 @@ "notify.hangouts" = ps: with ps; [ ]; "notify.hipchat" = ps: with ps; [ ]; "notify.homematic" = ps: with ps; [ pyhomematic ]; - "notify.html5" = ps: with ps; [ aiohttp-cors ruamel_yaml ]; + "notify.html5" = ps: with ps; [ aiohttp-cors ]; "notify.instapush" = ps: with ps; [ ]; "notify.ios" = ps: with ps; [ aiohttp-cors zeroconf ]; "notify.joaoapps_join" = ps: with ps; [ ]; @@ -789,8 +795,8 @@ "openuv" = ps: with ps; [ ]; "openuv.config_flow" = ps: with ps; [ ]; "openuv.const" = ps: with ps; [ ]; - "panel_custom" = ps: with ps; [ aiohttp-cors ruamel_yaml ]; - "panel_iframe" = ps: with ps; [ aiohttp-cors ruamel_yaml ]; + "panel_custom" = ps: with ps; [ aiohttp-cors ]; + "panel_iframe" = ps: with ps; [ aiohttp-cors ]; "persistent_notification" = ps: with ps; [ ]; "pilight" = ps: with ps; [ ]; "plant" = ps: with ps; [ ]; @@ -842,6 +848,7 @@ "scene.wink" = ps: with ps; [ ]; "script" = ps: with ps; [ ]; "scsgate" = ps: with ps; [ ]; + "sense" = ps: with ps; [ ]; "sensor" = ps: with ps; [ ]; "sensor.abode" = ps: with ps; [ ]; "sensor.ads" = ps: with ps; [ ]; @@ -929,12 +936,13 @@ "sensor.gearbest" = ps: with ps; [ ]; "sensor.geizhals" = ps: with ps; [ ]; "sensor.geo_rss_events" = ps: with ps; [ ]; - "sensor.gitlab_ci" = ps: with ps; [ ]; + "sensor.gitlab_ci" = ps: with ps; [ python-gitlab ]; "sensor.gitter" = ps: with ps; [ ]; "sensor.glances" = ps: with ps; [ ]; "sensor.google_travel_time" = ps: with ps; [ ]; "sensor.google_wifi" = ps: with ps; [ ]; "sensor.gpsd" = ps: with ps; [ ]; + "sensor.greeneye_monitor" = ps: with ps; [ ]; "sensor.gtfs" = ps: with ps; [ ]; "sensor.habitica" = ps: with ps; [ ]; "sensor.haveibeenpwned" = ps: with ps; [ ]; @@ -975,6 +983,7 @@ "sensor.lyft" = ps: with ps; [ ]; "sensor.magicseaweed" = ps: with ps; [ ]; "sensor.melissa" = ps: with ps; [ ]; + "sensor.meteo_france" = ps: with ps; [ ]; "sensor.metoffice" = ps: with ps; [ ]; "sensor.mfi" = ps: with ps; [ ]; "sensor.mhz19" = ps: with ps; [ ]; @@ -1017,7 +1026,7 @@ "sensor.pilight" = ps: with ps; [ ]; "sensor.plex" = ps: with ps; [ ]; "sensor.pocketcasts" = ps: with ps; [ ]; - "sensor.pollen" = ps: with ps; [ ]; + "sensor.pollen" = ps: with ps; [ numpy ]; "sensor.postnl" = ps: with ps; [ ]; "sensor.pushbullet" = ps: with ps; [ pushbullet ]; "sensor.pvoutput" = ps: with ps; [ ]; @@ -1096,7 +1105,7 @@ "sensor.twitch" = ps: with ps; [ ]; "sensor.uber" = ps: with ps; [ ]; "sensor.uk_transport" = ps: with ps; [ ]; - "sensor.upnp" = ps: with ps; [ aiohttp-cors ]; + "sensor.upnp" = ps: with ps; [ ]; "sensor.ups" = ps: with ps; [ ]; "sensor.uptime" = ps: with ps; [ ]; "sensor.uscis" = ps: with ps; [ ]; @@ -1124,7 +1133,6 @@ "sensor.xbox_live" = ps: with ps; [ ]; "sensor.xiaomi_aqara" = ps: with ps; [ ]; "sensor.xiaomi_miio" = ps: with ps; [ construct ]; - "sensor.yahoo_finance" = ps: with ps; [ ]; "sensor.yr" = ps: with ps; [ xmltodict ]; "sensor.yweather" = ps: with ps; [ yahooweather ]; "sensor.zabbix" = ps: with ps; [ ]; @@ -1298,7 +1306,7 @@ "unifi.errors" = ps: with ps; [ ]; "upcloud" = ps: with ps; [ ]; "updater" = ps: with ps; [ distro ]; - "upnp" = ps: with ps; [ aiohttp-cors ]; + "upnp" = ps: with ps; [ ]; "upnp.config_flow" = ps: with ps; [ ]; "upnp.const" = ps: with ps; [ ]; "upnp.device" = ps: with ps; [ ]; @@ -1362,7 +1370,7 @@ "zone.const" = ps: with ps; [ ]; "zone.zone" = ps: with ps; [ ]; "zoneminder" = ps: with ps; [ ]; - "zwave" = ps: with ps; [ pydispatcher python_openzwave ]; + "zwave" = ps: with ps; [ homeassistant-pyozw pydispatcher ]; "zwave.config_flow" = ps: with ps; [ ]; "zwave.const" = ps: with ps; [ ]; "zwave.discovery_schemas" = ps: with ps; [ ]; diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 427f35e2fbc..a8acf277709 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -20,8 +20,8 @@ let # Override the version of some packages pinned in Home Assistant's setup.py (mkOverride "aiohttp" "3.4.4" "51afec6ffa50a9da4cdef188971a802beb1ca8e8edb40fa429e5e529db3475fa") - (mkOverride "astral" "1.6.1" - "ab0c08f2467d35fcaeb7bad15274743d3ac1ad18b5391f64a0058a9cd192d37d") + (mkOverride "astral" "1.7.1" + "88086fd2006c946567285286464b2da3294a3b0cbba4410b7008ec2458f82a07") (mkOverride "async-timeout" "3.0.1" "0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f") (mkOverride "attrs" "18.2.0" @@ -36,11 +36,17 @@ let "bf4d9b61dce69c49e830950aa36fad194706463b0b6dfe81425b9e0bc6644d46") (mkOverride "requests" "2.20.0" "99dcfdaaeb17caf6e526f32b6a7b780461512ab3f1d992187801694cba42770c") + (mkOverride "ruamel_yaml" "0.15.72" + "97652b9e3a76958cf6684d5d963674adf345d8cc192ddd95e2a21b22cda29f40") (mkOverride "voluptuous" "0.11.5" "567a56286ef82a9d7ae0628c5842f65f516abcb496e74f3f59f1d7b28df314ef") (mkOverride "voluptuous-serialize" "2.0.0" "44be04d87aec34bd7d31ab539341fadc505205f2299031ed9be985112c21aa41") + # used by auth.mfa_modules.totp + (mkOverride "pyotp" "2.2.6" + "dd9130dd91a0340d89a0f06f887dbd76dd07fb95a8886dc4bc401239f2eebd69") + # used by check_config script # can be unpinned once https://github.com/home-assistant/home-assistant/issues/11917 is resolved (mkOverride "colorlog" "3.1.4" @@ -79,7 +85,7 @@ let extraBuildInputs = extraPackages py.pkgs; # Don't forget to run parse-requirements.py after updating - hassVersion = "0.81.5"; + hassVersion = "0.82.0"; in with py.pkgs; buildPythonApplication rec { pname = "homeassistant"; @@ -94,12 +100,12 @@ in with py.pkgs; buildPythonApplication rec { owner = "home-assistant"; repo = "home-assistant"; rev = version; - sha256 = "1fgf9hrv7q7g8s561sir951vd27a459mh3k685xzfnhkh4si47g4"; + sha256 = "1vvq6frzwmbnynpq6269ykifwmvm8zj5zraslsph3jidppx2bnd4"; }; propagatedBuildInputs = [ # From setup.py - aiohttp astral async-timeout attrs bcrypt certifi jinja2 pyjwt cryptography pip pytz pyyaml requests voluptuous voluptuous-serialize + aiohttp astral async-timeout attrs bcrypt certifi jinja2 pyjwt cryptography pip pytz pyyaml requests ruamel_yaml voluptuous voluptuous-serialize # From http, frontend and recorder components and auth.mfa_modules.totp sqlalchemy aiohttp-cors hass-frontend pyotp pyqrcode ] ++ componentBuildInputs ++ extraBuildInputs; diff --git a/pkgs/servers/home-assistant/frontend.nix b/pkgs/servers/home-assistant/frontend.nix index 89d77649d97..c51a6f0472f 100644 --- a/pkgs/servers/home-assistant/frontend.nix +++ b/pkgs/servers/home-assistant/frontend.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "home-assistant-frontend"; - version = "20181026.4"; + version = "20181103.3"; src = fetchPypi { inherit pname version; - sha256 = "b0610206eee06042847d89a581ecfcd71255b0e1ecff77e302237e8aa175b00d"; + sha256 = "b1b598f637ffc4c37a3d35aa3b912216f0340cb43fa6c50f4617536669d19499"; }; propagatedBuildInputs = [ user-agents ]; diff --git a/pkgs/servers/home-assistant/parse-requirements.py b/pkgs/servers/home-assistant/parse-requirements.py index 95b73192698..63374b01795 100755 --- a/pkgs/servers/home-assistant/parse-requirements.py +++ b/pkgs/servers/home-assistant/parse-requirements.py @@ -1,5 +1,5 @@ #! /usr/bin/env nix-shell -#! nix-shell -i python3 -p "python3.withPackages (ps: with ps; [ aiohttp astral async-timeout attrs certifi jinja2 pyjwt cryptography pip pytz pyyaml requests voluptuous ])" +#! nix-shell -i python3 -p "python3.withPackages (ps: with ps; [ aiohttp astral async-timeout attrs certifi jinja2 pyjwt cryptography pip pytz pyyaml requests ruamel_yaml voluptuous ])" # # This script downloads Home Assistant's source tarball. # Inside the homeassistant/components directory, each component has an associated .py file, @@ -93,7 +93,7 @@ def name_to_attr_path(req): except KeyError: pass # Let's hope there's only one derivation with a matching name - assert(len(attr_paths) <= 1) + assert len(attr_paths) <= 1, "{} matches more than one derivation: {}".format(req, attr_paths) if len(attr_paths) == 1: return attr_paths.pop() else: From 114581b05e1a655a17be4df41006b1387a2d6978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Romildo=20Malaquias?= Date: Mon, 12 Nov 2018 09:24:29 -0200 Subject: [PATCH 58/68] matcha: 2018-10-30 -> 2018-11-12 --- pkgs/misc/themes/matcha/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/misc/themes/matcha/default.nix b/pkgs/misc/themes/matcha/default.nix index 6e14d1587a7..d76e0ed74c5 100644 --- a/pkgs/misc/themes/matcha/default.nix +++ b/pkgs/misc/themes/matcha/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { name = "matcha-${version}"; - version = "2018-10-30"; + version = "2018-11-12"; src = fetchFromGitHub { owner = "vinceliuice"; repo = "matcha"; rev = version; - sha256 = "1ks30xm7jhyxgs0blxxnc9ygmyfwrwc9k8d0y0i6yb7608p8zxzq"; + sha256 = "04alnwb3r0546y7xk2lx8bsdm47q6j89vld3g19rfb3622iv85la"; }; buildInputs = [ gdk_pixbuf librsvg ]; From a815f53c60b95716309bd711cbc9bf6de4050bcd Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 12 Nov 2018 13:08:22 +0100 Subject: [PATCH 59/68] libredirect: Add preload wrapper for stat() Pull request #50246 was merged a bit too quickly and it was supposed to fix libredirect on Darwin. However it still failed on Darwin and this was missed by the person merging the pull request. The reason this was failing was that there is no __xstat* on Darwin. So I'm adding a wrapper for stat() as well as it works on Darwin and it still doesn't hurt on GNU/Linux. Signed-off-by: aszlig Cc: @edolstra, @zimbatm --- pkgs/build-support/libredirect/libredirect.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkgs/build-support/libredirect/libredirect.c b/pkgs/build-support/libredirect/libredirect.c index d1e8f77fb1f..ba1e6c57e12 100644 --- a/pkgs/build-support/libredirect/libredirect.c +++ b/pkgs/build-support/libredirect/libredirect.c @@ -119,6 +119,13 @@ int __xstat64(int ver, const char * path, struct stat64 * st) return __xstat64_real(ver, rewrite(path, buf), st); } +int stat(const char * path, struct stat * st) +{ + int (*__stat_real) (const char *, struct stat *) = dlsym(RTLD_NEXT, "stat"); + char buf[PATH_MAX]; + return __stat_real(rewrite(path, buf), st); +} + int * access(const char * path, int mode) { int * (*access_real) (const char *, int mode) = dlsym(RTLD_NEXT, "access"); From 2ea5e68b2418b2b4938ec59b1d536d0b44cdc61a Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 12 Nov 2018 15:40:41 +0100 Subject: [PATCH 60/68] ip2unix: 1.1.1 -> 1.2.0 Upstream changes: - Fixed: Don't fail when building the manual with AsciiDoc and xmllint. - Fixed: Some long options (--rule, --rules-file and --rules-data) were ignored. - Fixed: Manpage formatting is now more consistent. - Added: A new --version command line argument for showing version information. With the new upstream release recommending to use AsciiDoc to generate the manpage, I also switched to AsciiDoc instead of Asciidoctor. The resulting manpage looks better in some ways (for example when definition lists are used). I also added an installCheckPhase to ensure that the manpage exists in the resulting store path. Signed-off-by: aszlig --- pkgs/tools/networking/ip2unix/default.nix | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/pkgs/tools/networking/ip2unix/default.nix b/pkgs/tools/networking/ip2unix/default.nix index 18a53d02b1e..1fa1531d183 100644 --- a/pkgs/tools/networking/ip2unix/default.nix +++ b/pkgs/tools/networking/ip2unix/default.nix @@ -1,27 +1,40 @@ { stdenv, fetchFromGitHub, meson, ninja, pkgconfig, libyamlcpp, systemd -, asciidoctor, python3Packages +, python3Packages, asciidoc, libxslt, docbook_xml_dtd_45, docbook_xsl +, libxml2, docbook5 }: stdenv.mkDerivation rec { name = "ip2unix-${version}"; - version = "1.1.1"; + version = "1.2.0"; src = fetchFromGitHub { owner = "nixcloud"; repo = "ip2unix"; rev = "v${version}"; - sha256 = "0lw4f1p1frfpf5l7faqdd80d6pi9g5sx7g3wpmig9sa50k6pmc0v"; + sha256 = "0blrhcmska06ydkl15jjgblygkwrimdnbaq3hhifgmffymfk2652"; }; nativeBuildInputs = [ - meson ninja pkgconfig asciidoctor - python3Packages.pytest python3Packages.pytest-timeout + meson ninja pkgconfig asciidoc libxslt.bin docbook_xml_dtd_45 docbook_xsl + libxml2.bin docbook5 python3Packages.pytest python3Packages.pytest-timeout ]; buildInputs = [ libyamlcpp systemd ]; doCheck = true; + doInstallCheck = true; + installCheckPhase = '' + found=0 + for man in "$out/share/man/man1"/ip2unix.1*; do + test -s "$man" && found=1 + done + if [ $found -ne 1 ]; then + echo "ERROR: Manual page hasn't been generated." >&2 + exit 1 + fi + ''; + meta = { homepage = https://github.com/nixcloud/ip2unix; description = "Turn IP sockets into Unix domain sockets"; From 12d7f9a6408209390ddd1a6a31844d817768d0a0 Mon Sep 17 00:00:00 2001 From: aszlig Date: Mon, 12 Nov 2018 16:18:58 +0100 Subject: [PATCH 61/68] nixos/tests/networking: Fix syntax error Introduced by 6c68fbd4e1f8beac39cb1f499ff90c78256262d6. Signed-off-by: aszlig Cc: @Ekleog --- nixos/tests/networking.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/tests/networking.nix b/nixos/tests/networking.nix index 6843e8b2636..e689eadf1dd 100644 --- a/nixos/tests/networking.nix +++ b/nixos/tests/networking.nix @@ -1,6 +1,6 @@ { system ? builtins.currentSystem , config ? {} -, pkgs ? import ../.. { inherit system config; }, +, pkgs ? import ../.. { inherit system config; } # bool: whether to use networkd in the tests , networkd }: From bcab3daac7e1829de27f80ae18669607f6c19fdf Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 12 Nov 2018 16:21:56 +0100 Subject: [PATCH 62/68] LTS Haskell 12.18 --- .../haskell-modules/configuration-hackage2nix.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml index 97f2955d3a9..23f71d57d35 100644 --- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml +++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml @@ -45,7 +45,7 @@ default-package-overrides: - base-compat-batteries ==0.10.1 # Newer versions don't work in LTS-12.x - cassava-megaparsec < 2 - # LTS Haskell 12.17 + # LTS Haskell 12.18 - abstract-deque ==0.3 - abstract-deque-tests ==0.3 - abstract-par ==0.3.3 @@ -731,8 +731,8 @@ default-package-overrides: - fileplow ==0.1.0.0 - filter-logger ==0.6.0.0 - filtrable ==0.1.1.0 - - fin ==0.0.1 - Fin ==0.2.6.0 + - fin ==0.0.1 - FindBin ==0.0.5 - find-clumpiness ==0.2.3.1 - fingertree ==0.1.4.1 @@ -1010,8 +1010,8 @@ default-package-overrides: - hsdns ==1.7.1 - hsebaysdk ==0.4.0.0 - hsemail ==2 - - hset ==2.2.0 - HSet ==0.0.1 + - hset ==2.2.0 - hsexif ==0.6.1.6 - hs-functors ==0.1.3.0 - hs-GeoIP ==0.3 From 632fc6ba61295b701ab0a33f386f730b6d24802a Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Fri, 9 Nov 2018 02:30:45 +0100 Subject: [PATCH 63/68] hackage-packages.nix: automatic Haskell package set update This update was generated by hackage2nix v2.11.1-4-g8927afe from Hackage revision https://github.com/commercialhaskell/all-cabal-hashes/commit/1fba236a8a8f685aaf55029d20ab24d7e4cbc5ba. --- .../haskell-modules/hackage-packages.nix | 869 ++++++++++++++---- 1 file changed, 697 insertions(+), 172 deletions(-) diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix index e0324f973b7..0962443c79c 100644 --- a/pkgs/development/haskell-modules/hackage-packages.nix +++ b/pkgs/development/haskell-modules/hackage-packages.nix @@ -27130,8 +27130,8 @@ self: { }: mkDerivation { pname = "antiope-athena"; - version = "6.1.2"; - sha256 = "0af1sd3hhi2j2bsglqi5vqs7cjh719zbzkjcxi68sy4h3783vqc2"; + version = "6.1.3"; + sha256 = "00n1yj3qjlcbqjb1288h74nmlhk2851mmpkrlni48ja6hy3pnacc"; libraryHaskellDepends = [ amazonka amazonka-athena amazonka-core base lens resourcet text unliftio-core @@ -27147,8 +27147,8 @@ self: { ({ mkDerivation, aeson, antiope-s3, avro, base, bytestring, text }: mkDerivation { pname = "antiope-contract"; - version = "6.1.2"; - sha256 = "1s9xikffc3l6q7l2fmi5yz6shw90w8zgb8sc1s3d85z7kfsi87rp"; + version = "6.1.3"; + sha256 = "0jazg8jh0wcv5gzz2sxhb5z3s50fz6x83siih9xs456kzsickh9a"; libraryHaskellDepends = [ aeson antiope-s3 avro base bytestring text ]; @@ -27163,8 +27163,8 @@ self: { }: mkDerivation { pname = "antiope-core"; - version = "6.1.2"; - sha256 = "0bn975bcr1fm8w63m641iip22hw5alam28z73p3cjcx9wkzkfca4"; + version = "6.1.3"; + sha256 = "1qnbha6n0ax9gffa14dwgdklc8ilnxnccs60cfjfw8wjjfqm1wdc"; libraryHaskellDepends = [ amazonka amazonka-core base bytestring generic-lens http-client lens monad-logger mtl resourcet transformers unliftio-core @@ -27184,8 +27184,8 @@ self: { }: mkDerivation { pname = "antiope-dynamodb"; - version = "6.1.2"; - sha256 = "04ik6ms66yiq934dqhadw4fhb5js08q6czpgb8vqsv8pvm3cj30f"; + version = "6.1.3"; + sha256 = "0l8arxlxy9bb5gqfn7jp4gcfzr3c2ncbcchk635g58ac0chzgaw4"; libraryHaskellDepends = [ amazonka amazonka-core amazonka-dynamodb antiope-core base generic-lens lens text unliftio-core unordered-containers @@ -27205,8 +27205,8 @@ self: { }: mkDerivation { pname = "antiope-messages"; - version = "6.1.2"; - sha256 = "1vkjflqi2k4d74hwagfaff4gyjx5809d2yjijhmgwk5aldyydw9m"; + version = "6.1.3"; + sha256 = "0bk98ziv0ivwhbwd99pw54pf2788cva9bnqvv871wzxhqgd2vhx8"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-s3 amazonka-sqs antiope-s3 base generic-lens lens lens-aeson monad-loops network-uri text @@ -27223,25 +27223,25 @@ self: { "antiope-s3" = callPackage ({ mkDerivation, amazonka, amazonka-core, amazonka-s3, antiope-core - , base, bytestring, conduit, conduit-extra, exceptions + , attoparsec, base, bytestring, conduit, conduit-extra, exceptions , generic-lens, hedgehog, hspec, http-types, hw-hspec-hedgehog , lens, monad-logger, mtl, network-uri, resourcet, text , unliftio-core }: mkDerivation { pname = "antiope-s3"; - version = "6.1.2"; - sha256 = "1lrawihlnl1kmhqimcf59d7a2ad916ss83zjllx3x8cy6br68b4r"; + version = "6.1.3"; + sha256 = "167yc57r53yzfvyiz4z8kha820xfpwfa3mcb4kndlb650qa016ax"; libraryHaskellDepends = [ - amazonka amazonka-core amazonka-s3 antiope-core base bytestring - conduit conduit-extra exceptions generic-lens http-types lens - monad-logger mtl network-uri resourcet text unliftio-core + amazonka amazonka-core amazonka-s3 antiope-core attoparsec base + bytestring conduit conduit-extra exceptions generic-lens http-types + lens monad-logger mtl network-uri resourcet text unliftio-core ]; testHaskellDepends = [ - amazonka amazonka-core amazonka-s3 antiope-core base bytestring - conduit conduit-extra exceptions generic-lens hedgehog hspec - http-types hw-hspec-hedgehog lens monad-logger mtl network-uri - resourcet text unliftio-core + amazonka amazonka-core amazonka-s3 antiope-core attoparsec base + bytestring conduit conduit-extra exceptions generic-lens hedgehog + hspec http-types hw-hspec-hedgehog lens monad-logger mtl + network-uri resourcet text unliftio-core ]; license = stdenv.lib.licenses.mit; hydraPlatforms = stdenv.lib.platforms.none; @@ -27253,8 +27253,8 @@ self: { }: mkDerivation { pname = "antiope-sns"; - version = "6.1.2"; - sha256 = "0b6blhcc1dplc16v9k12jn9s9ii5575sj9hm4kbla8483j24rd3k"; + version = "6.1.3"; + sha256 = "1knxyvzr566qwaa6167w64v8rlnr89350cca46vcs50rcr7hdjpj"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-sns base generic-lens lens text unliftio-core @@ -27274,8 +27274,8 @@ self: { }: mkDerivation { pname = "antiope-sqs"; - version = "6.1.2"; - sha256 = "1d508kcsm1bxz768fxin5jc6y7jqskdxxpgl1z5n1579aq7wb0ia"; + version = "6.1.3"; + sha256 = "0xzcmjaniqprs2qachjiqzm4cxhgw4l6w7vg7sfp0b0l3m4kz4hh"; libraryHaskellDepends = [ aeson amazonka amazonka-core amazonka-s3 amazonka-sqs antiope-messages antiope-s3 base generic-lens lens lens-aeson @@ -27374,8 +27374,8 @@ self: { }: mkDerivation { pname = "aos-signature"; - version = "0.1.0"; - sha256 = "1nyizswc7jc6hylb57nsmpqndvqm8mk1wi2fi1l1cqgbkisrxmy5"; + version = "0.1.1"; + sha256 = "1sm925sr3ifi44wp7ndgjwwk3d3xy75ai6kgll573ngdicy3b2n3"; libraryHaskellDepends = [ base bytestring cryptonite memory mtl protolude random ]; @@ -28220,6 +28220,38 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "apply-refact_0_6_0_0" = callPackage + ({ mkDerivation, base, containers, directory, filemanip, filepath + , ghc, ghc-exactprint, mtl, optparse-applicative, process, refact + , silently, syb, tasty, tasty-expected-failure, tasty-golden + , temporary, transformers, unix-compat + }: + mkDerivation { + pname = "apply-refact"; + version = "0.6.0.0"; + sha256 = "0p2mqgjcqr1zcmk8zgr0yq7g8z1agsa6l493lkj6g3ya9lyhxgig"; + isLibrary = true; + isExecutable = true; + libraryHaskellDepends = [ + base containers directory filemanip ghc ghc-exactprint mtl process + refact syb temporary transformers unix-compat + ]; + executableHaskellDepends = [ + base containers directory filemanip filepath ghc ghc-exactprint mtl + optparse-applicative process refact syb temporary transformers + unix-compat + ]; + testHaskellDepends = [ + base containers directory filemanip filepath ghc ghc-exactprint mtl + optparse-applicative process refact silently syb tasty + tasty-expected-failure tasty-golden temporary transformers + unix-compat + ]; + description = "Perform refactorings specified by the refact library"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "apportionment" = callPackage ({ mkDerivation, base, containers, utility-ht }: mkDerivation { @@ -31868,17 +31900,18 @@ self: { "aws-easy" = callPackage ({ mkDerivation, amazonka, amazonka-dynamodb, amazonka-s3, base - , bytestring, lens, resourcet, split, template-haskell, text - , unordered-containers + , bytestring, lens, monad-control, resourcet, split + , template-haskell, text, unordered-containers }: mkDerivation { pname = "aws-easy"; - version = "0.1.0.1"; - sha256 = "0sl3whg7x02c3cph5p72rlkycsr2m3ni0kad5rs0q644wgvhqvm5"; + version = "0.1.0.2"; + sha256 = "16a0dfgd6ggm5b4g75913b5pc0s5hdh7n1h3j22d4j50knd8j5r4"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ - amazonka base bytestring lens resourcet template-haskell + amazonka base bytestring lens monad-control resourcet + template-haskell ]; executableHaskellDepends = [ amazonka amazonka-dynamodb amazonka-s3 base lens split text @@ -32431,6 +32464,24 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "azure-email" = callPackage + ({ mkDerivation, aeson, base, base64-bytestring, bytestring + , cryptonite, exceptions, http-client, http-client-tls, lens-aeson + , microlens, RSA, text, time, uuid, wreq + }: + mkDerivation { + pname = "azure-email"; + version = "0.1.0.0"; + sha256 = "108xfmq9mb8fxy06six0id7sf8rpazknqx4plk93fl34xyrwald5"; + libraryHaskellDepends = [ + aeson base base64-bytestring bytestring cryptonite exceptions + http-client http-client-tls lens-aeson microlens RSA text time uuid + wreq + ]; + description = "send email with microsoft azure"; + license = stdenv.lib.licenses.bsd3; + }) {}; + "azure-service-api" = callPackage ({ mkDerivation, base, binary, bytestring, case-insensitive , certificate, crypto-pubkey-types, http-conduit, hxt, hxt-xpath @@ -39893,14 +39944,14 @@ self: { "btree" = callPackage ({ mkDerivation, base, clock, containers, ghc-prim, hashable - , MonadRandom, primitive, smallcheck, tasty, tasty-hunit - , tasty-smallcheck, transformers + , initialize, MonadRandom, primitive, smallcheck, tasty + , tasty-hunit, tasty-smallcheck, transformers }: mkDerivation { pname = "btree"; - version = "0.3.1"; - sha256 = "071ghhjzg7c6m87nh2q53kqbff9hx782h6c1z5s9pwl2b7r8cc7g"; - libraryHaskellDepends = [ base ghc-prim primitive ]; + version = "0.4.0"; + sha256 = "04jbvd247i8bfplyljp5937fw9x85w4v613kpzyb15z7nw2xr8l9"; + libraryHaskellDepends = [ base ghc-prim initialize primitive ]; testHaskellDepends = [ base containers hashable MonadRandom primitive smallcheck tasty tasty-hunit tasty-smallcheck transformers @@ -41783,8 +41834,8 @@ self: { pname = "cabal-install"; version = "2.4.0.0"; sha256 = "1xmyl0x8wqfrnray6ky5wy0g0samv4264fbdlzxhqsvk9dbfja8k"; - revision = "1"; - editedCabalFile = "0cni9i6f6kbfl6f5gypb9ky94ib1w6d0nkd05j4lmrjadnxss49a"; + revision = "2"; + editedCabalFile = "1xil5pim6j1ckqj61zz6l7xpfxxr3rkw2hvpws2f7pr9shk645dl"; isLibrary = false; isExecutable = true; setupHaskellDepends = [ base Cabal filepath process ]; @@ -50609,8 +50660,8 @@ self: { }: mkDerivation { pname = "composite-aeson"; - version = "0.5.4.0"; - sha256 = "08rmv82v5ipkcb46pcadx1s8c1v532l8ma2qlgiflq6jnxf7y0zn"; + version = "0.5.5.0"; + sha256 = "1hmhnkfmdjm5q8lkvlyr7rzs1lfycnblz3q2y8aziy27j7pvnz6h"; libraryHaskellDepends = [ aeson aeson-better-errors base composite-base containers contravariant generic-deriving hashable lens mmorph mtl profunctors @@ -50634,8 +50685,8 @@ self: { }: mkDerivation { pname = "composite-aeson-refined"; - version = "0.5.4.0"; - sha256 = "1x5vkxzj0afar4w2djx9s7h3vy9aa5my9wfks8n4ajlv92fch1zm"; + version = "0.5.5.0"; + sha256 = "0mm0dbsxqw5m78jgdn6vnbck2icqkzgwqyc3c3ghyz46cymd7pjz"; libraryHaskellDepends = [ aeson-better-errors base composite-aeson mtl refined ]; @@ -50647,19 +50698,20 @@ self: { "composite-base" = callPackage ({ mkDerivation, base, exceptions, hspec, lens, monad-control, mtl , profunctors, QuickCheck, template-haskell, text, transformers - , transformers-base, vinyl + , transformers-base, unliftio-core, vinyl }: mkDerivation { pname = "composite-base"; - version = "0.5.4.0"; - sha256 = "0brycxdwf4051qvad4b4ak47dl27qn3izv1bcqlpva01jvb6h21j"; + version = "0.5.5.0"; + sha256 = "0qlg979cwkdlfpcwh7r0qr9fjs525b3xly0invr358h2g1lgi0fm"; libraryHaskellDepends = [ base exceptions lens monad-control mtl profunctors template-haskell - text transformers transformers-base vinyl + text transformers transformers-base unliftio-core vinyl ]; testHaskellDepends = [ base exceptions hspec lens monad-control mtl profunctors QuickCheck - template-haskell text transformers transformers-base vinyl + template-haskell text transformers transformers-base unliftio-core + vinyl ]; description = "Shared utilities for composite-* packages"; license = stdenv.lib.licenses.bsd3; @@ -50671,8 +50723,8 @@ self: { }: mkDerivation { pname = "composite-ekg"; - version = "0.5.4.0"; - sha256 = "051dw8ncpsk2k05ipvlnkwv2gy6719w69v1hhwrryy3dad0f4wc3"; + version = "0.5.5.0"; + sha256 = "0bawdcx21dd0szxnnxs2iinzz6h4w2phk7mfs26fxiqx3f375lm4"; libraryHaskellDepends = [ base composite-base ekg-core lens text vinyl ]; @@ -50688,8 +50740,8 @@ self: { }: mkDerivation { pname = "composite-opaleye"; - version = "0.5.4.0"; - sha256 = "1k71v4dz4vl70ignjp6hgw6j4c9hdgafd9x973dk7w332m2vjdpn"; + version = "0.5.5.0"; + sha256 = "0s54g9c1lm3jrdj44cvzxgbfaf7l2fdq2yy25vhqdmww50h8q1cx"; libraryHaskellDepends = [ base bytestring composite-base lens opaleye postgresql-simple product-profunctors profunctors template-haskell text vinyl @@ -50711,8 +50763,8 @@ self: { }: mkDerivation { pname = "composite-swagger"; - version = "0.5.4.0"; - sha256 = "0i2jfchl88mrk9kmf8yv7cbv006ghilqsnbic7ddsbkzrjy1vdw0"; + version = "0.5.5.0"; + sha256 = "1qisvrs93jnrrjyhzdn0xwq54jc1mc8avpzq41a39ak5xdslzf6a"; libraryHaskellDepends = [ base composite-base insert-ordered-containers lens swagger2 template-haskell text vinyl @@ -56714,23 +56766,26 @@ self: { }) {}; "cuckoo-filter" = callPackage - ({ mkDerivation, aeson, base, cereal, containers, criterion - , hashable, QuickCheck, random, tasty, tasty-hunit - , tasty-quickcheck + ({ mkDerivation, aeson, array, base, bytestring, cereal, containers + , criterion, hashable, QuickCheck, random, tasty, tasty-hunit + , tasty-quickcheck, time }: mkDerivation { pname = "cuckoo-filter"; - version = "0.1.0.2"; - sha256 = "16ql9qvf1qsbnk1wxy3d5iqyk0kyx9w27vq284gr34yqd18dpvk5"; + version = "0.2.0.1"; + sha256 = "01l1ilxdd83l60f5hmpajwszn77lfmk16aqygg1jz45zkrd3scnb"; isLibrary = true; isExecutable = true; - libraryHaskellDepends = [ aeson base cereal containers hashable ]; + libraryHaskellDepends = [ + aeson array base bytestring cereal containers hashable time + ]; executableHaskellDepends = [ - aeson base cereal containers criterion hashable random + aeson array base bytestring cereal containers criterion hashable + random time ]; testHaskellDepends = [ - aeson base cereal containers hashable QuickCheck tasty tasty-hunit - tasty-quickcheck + aeson array base bytestring cereal containers hashable QuickCheck + tasty tasty-hunit tasty-quickcheck time ]; description = "Pure and impure Cuckoo Filter"; license = stdenv.lib.licenses.mit; @@ -66526,15 +66581,15 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "dotenv_0_6_0_3" = callPackage + "dotenv_0_7_0_0" = callPackage ({ mkDerivation, base, base-compat, containers, directory , exceptions, hspec, hspec-megaparsec, megaparsec , optparse-applicative, process, text, transformers, yaml }: mkDerivation { pname = "dotenv"; - version = "0.6.0.3"; - sha256 = "0dckfs69k3hqfjrpxkk30liq52pjd2424r8gp6i8xb0zk1xlsqgk"; + version = "0.7.0.0"; + sha256 = "1rxr90jcn1swfr4sac331w44cm4c7ci87ll2d2w03hbdlysvdv8h"; isLibrary = true; isExecutable = true; enableSeparateDataOutput = true; @@ -68931,20 +68986,20 @@ self: { "egison" = callPackage ({ mkDerivation, array, base, containers, criterion, deepseq , directory, filepath, ghc, ghc-paths, Glob, hashable, haskeline - , HUnit, mtl, parallel, parsec, process, random, regex-tdfa, split - , test-framework, test-framework-hunit, text, transformers + , HUnit, lens, mtl, parallel, parsec, process, random, regex-tdfa + , split, test-framework, test-framework-hunit, text, transformers , unordered-containers, vector }: mkDerivation { pname = "egison"; - version = "3.7.12"; - sha256 = "0dmy9hxamjpp553ipkfjwh8j3bxqql99idxcxkdsj1x4ixgm2m2g"; + version = "3.7.13"; + sha256 = "1kxlg7znyv4iaygm6gk50zw4vcijfmc16vl5bwif179v3r8nrpxn"; isLibrary = true; isExecutable = true; enableSeparateDataOutput = true; libraryHaskellDepends = [ array base containers directory ghc ghc-paths hashable haskeline - mtl parallel parsec process random regex-tdfa split text + lens mtl parallel parsec process random regex-tdfa split text transformers unordered-containers vector ]; executableHaskellDepends = [ @@ -69410,8 +69465,8 @@ self: { pname = "ekg-wai"; version = "0.1.0.3"; sha256 = "1sd2fz4l4slizm179x9cskqdvrpf6w4d779kah9hrnk3nqbmklxz"; - revision = "1"; - editedCabalFile = "0crcpwrnh1pi5n4dlp9cwminj1gls9ywm4fgvisafh480097b100"; + revision = "2"; + editedCabalFile = "17kca2wzlcv8nxyq096fv57jfklhz4ibnvf5nqqdszczb03j3dnn"; enableSeparateDataOutput = true; libraryHaskellDepends = [ aeson base bytestring ekg-core ekg-json filepath http-types network @@ -73641,8 +73696,8 @@ self: { }: mkDerivation { pname = "extensible-effects"; - version = "3.1.0.1"; - sha256 = "1znqhcx5y4mpkbib18nma2c6bw4wxyxlxg3s8kafdalrx61rdhy3"; + version = "3.1.0.2"; + sha256 = "0g568pp3sxzzzcpbcrvx76msn58nn41g1r4wq8sfvvg1hb28xpf5"; libraryHaskellDepends = [ base monad-control transformers-base ]; testHaskellDepends = [ base doctest HUnit monad-control QuickCheck silently test-framework @@ -75129,6 +75184,31 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "feed_1_0_1_0" = callPackage + ({ mkDerivation, base, base-compat, bytestring, HUnit + , markdown-unlit, old-locale, old-time, safe, test-framework + , test-framework-hunit, text, time, time-locale-compat, utf8-string + , xml-conduit, xml-types + }: + mkDerivation { + pname = "feed"; + version = "1.0.1.0"; + sha256 = "076krkyvbh24s50chdw3nz6w2svwchys65ppjzlm8gy42ddhbgc7"; + enableSeparateDataOutput = true; + libraryHaskellDepends = [ + base base-compat bytestring old-locale old-time safe text time + time-locale-compat utf8-string xml-conduit xml-types + ]; + testHaskellDepends = [ + base base-compat HUnit old-time test-framework test-framework-hunit + text time xml-conduit xml-types + ]; + testToolDepends = [ markdown-unlit ]; + description = "Interfacing with RSS (v 0.9x, 2.x, 1.0) + Atom feeds."; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "feed-cli" = callPackage ({ mkDerivation, base, directory, feed, old-locale, old-time, time , xml @@ -79715,6 +79795,74 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "freer-simple-catching" = callPackage + ({ mkDerivation, base, freer-simple, hspec }: + mkDerivation { + pname = "freer-simple-catching"; + version = "0.1.0.0"; + sha256 = "140dmmcnpnvn3hhwjic6ja86qhw84k1547zfya7h1gm4sw36mq56"; + libraryHaskellDepends = [ base freer-simple ]; + testHaskellDepends = [ base freer-simple hspec ]; + description = "Checked runtime exceptions with freer-simple"; + license = stdenv.lib.licenses.mit; + }) {}; + + "freer-simple-http" = callPackage + ({ mkDerivation, aeson, base, bytestring, containers, freer-simple + , hspec, http-client, http-types + }: + mkDerivation { + pname = "freer-simple-http"; + version = "0.1.0.0"; + sha256 = "0wxqlwqgsphmzhpsbkdq9bl5vjmq598x1q20dd235bdxgggnxd57"; + libraryHaskellDepends = [ + aeson base bytestring containers freer-simple http-client + http-types + ]; + testHaskellDepends = [ + aeson base bytestring containers freer-simple hspec http-client + http-types + ]; + description = "Make HTTP requests with freer-simple!"; + license = stdenv.lib.licenses.mit; + }) {}; + + "freer-simple-profiling" = callPackage + ({ mkDerivation, base, containers, freer-simple, hspec, time }: + mkDerivation { + pname = "freer-simple-profiling"; + version = "0.1.0.0"; + sha256 = "1ll8r8z7khxlr2yix9c8m3bjdq3yncvrsg6pj03n68wsf26zgf17"; + libraryHaskellDepends = [ base containers freer-simple time ]; + testHaskellDepends = [ base containers freer-simple hspec time ]; + description = "Automatic profling of freer-simple programs"; + license = stdenv.lib.licenses.mit; + }) {}; + + "freer-simple-random" = callPackage + ({ mkDerivation, base, containers, freer-simple, hspec, random }: + mkDerivation { + pname = "freer-simple-random"; + version = "0.1.0.0"; + sha256 = "0bp0px1d7lsghaq7giaqm3xlhp0fkrf15dxpqzlglh0ysd2xg3x3"; + libraryHaskellDepends = [ base containers freer-simple random ]; + testHaskellDepends = [ base containers freer-simple hspec random ]; + description = "Random number generators using freer-simple"; + license = stdenv.lib.licenses.mit; + }) {}; + + "freer-simple-time" = callPackage + ({ mkDerivation, base, freer-simple, hspec, time }: + mkDerivation { + pname = "freer-simple-time"; + version = "0.1.0.0"; + sha256 = "08ph7nlj3f3iyvqljwn1hz4z8x0nzl19fsmb0rkk9sjbkk043ar8"; + libraryHaskellDepends = [ base freer-simple time ]; + testHaskellDepends = [ base freer-simple hspec time ]; + description = "freer-simple interface to IO based time functions"; + license = stdenv.lib.licenses.mit; + }) {}; + "freesect" = callPackage ({ mkDerivation, array, base, cpphs, directory, mtl, parallel , pretty, random, syb @@ -83548,6 +83696,26 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "getopt-generics_0_13_0_3" = callPackage + ({ mkDerivation, base, base-compat, base-orphans, filepath + , generics-sop, hspec, QuickCheck, safe, silently, tagged + }: + mkDerivation { + pname = "getopt-generics"; + version = "0.13.0.3"; + sha256 = "1202xsfvygd06h1d70v73ldwj32qv6sqadk5zl2979dgjx4841db"; + libraryHaskellDepends = [ + base base-compat base-orphans generics-sop tagged + ]; + testHaskellDepends = [ + base base-compat base-orphans filepath generics-sop hspec + QuickCheck safe silently tagged + ]; + description = "Create command line interfaces with ease"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "getopt-simple" = callPackage ({ mkDerivation, base, containers }: mkDerivation { @@ -85546,18 +85714,44 @@ self: { license = stdenv.lib.licenses.lgpl21; }) {gtk3 = pkgs.gnome3.gtk;}; + "gi-gtk_3_0_26" = callPackage + ({ mkDerivation, base, bytestring, Cabal, containers, gi-atk + , gi-cairo, gi-gdk, gi-gdkpixbuf, gi-gio, gi-glib, gi-gobject + , gi-pango, gtk3, haskell-gi, haskell-gi-base + , haskell-gi-overloading, text, transformers + }: + mkDerivation { + pname = "gi-gtk"; + version = "3.0.26"; + sha256 = "1b0sfjcjxm0kzqyhrvl4wbxqa7zdpwv13xzrpb1k1k9rijjf1anf"; + setupHaskellDepends = [ base Cabal haskell-gi ]; + libraryHaskellDepends = [ + base bytestring containers gi-atk gi-cairo gi-gdk gi-gdkpixbuf + gi-gio gi-glib gi-gobject gi-pango haskell-gi haskell-gi-base + haskell-gi-overloading text transformers + ]; + libraryPkgconfigDepends = [ gtk3 ]; + doHaddock = false; + description = "Gtk bindings"; + license = stdenv.lib.licenses.lgpl21; + hydraPlatforms = stdenv.lib.platforms.none; + }) {gtk3 = pkgs.gnome3.gtk;}; + "gi-gtk-declarative" = callPackage - ({ mkDerivation, base, gi-gobject, gi-gtk, haskell-gi - , haskell-gi-base, haskell-gi-overloading, mtl, text - , unordered-containers + ({ mkDerivation, base, criterion, gi-gdk, gi-glib, gi-gobject + , gi-gtk, haskell-gi, haskell-gi-base, haskell-gi-overloading, mtl + , random, text, unordered-containers, vector }: mkDerivation { pname = "gi-gtk-declarative"; - version = "0.1.0"; - sha256 = "1yqvqbhlgbpq5s77fvqi8f644i059gg64xdkgwr4ka6zdz4fhiaf"; + version = "0.2.0"; + sha256 = "0spp225x4acrm96gr0i1jqlhmdq52xqin6h0mma2gvjh025dywyh"; libraryHaskellDepends = [ base gi-gobject gi-gtk haskell-gi haskell-gi-base - haskell-gi-overloading mtl text unordered-containers + haskell-gi-overloading mtl text unordered-containers vector + ]; + benchmarkHaskellDepends = [ + base criterion gi-gdk gi-glib gi-gtk random text ]; description = "Declarative GTK+ programming in Haskell"; license = stdenv.lib.licenses.mpl20; @@ -85570,14 +85764,14 @@ self: { }: mkDerivation { pname = "gi-gtk-declarative-app-simple"; - version = "0.1.0"; - sha256 = "157xhfixlf545qzk9v4sav6817fdznxk0kwiin59xn9d3ldp71ak"; + version = "0.2.0"; + sha256 = "19br3alfj0ggsbwp0640pdrjz1dm59g2wv8sb38jznsrni5fb8yx"; libraryHaskellDepends = [ async base gi-gdk gi-glib gi-gobject gi-gtk gi-gtk-declarative haskell-gi haskell-gi-base haskell-gi-overloading pipes pipes-concurrency text ]; - description = "Declarative GTK+ programming in Haskell in the style of [Pux](https://github.com/alexmingoia/purescript-pux)."; + description = "Declarative GTK+ programming in Haskell in the style of Pux"; license = stdenv.lib.licenses.mpl20; }) {}; @@ -87900,20 +88094,20 @@ self: { }) {}; "gloss-export" = callPackage - ({ mkDerivation, base, GLFW-b, gloss, gloss-rendering, GLUT - , JuicyPixels, OpenGLRaw, vector + ({ mkDerivation, base, directory, filepath, GLFW-b, gloss + , gloss-rendering, GLUT, JuicyPixels, OpenGLRaw, vector }: mkDerivation { pname = "gloss-export"; - version = "0.1.0.0"; - sha256 = "0m5k8zr90wqh6sjgn5c3mrpffwkq8g42qji8ss77l97a2hcv50dq"; + version = "0.1.0.1"; + sha256 = "0f81fncs7xirnwxkidbiikcxaj82svn2cgwdhgg588sk28rbd0vz"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ base GLFW-b gloss-rendering GLUT JuicyPixels OpenGLRaw vector ]; executableHaskellDepends = [ base gloss ]; - testHaskellDepends = [ base ]; + testHaskellDepends = [ base directory filepath gloss JuicyPixels ]; description = "Export Gloss pictures to png, bmp, tga, tiff, gif and juicy-pixels-image"; license = stdenv.lib.licenses.mit; }) {}; @@ -92248,6 +92442,22 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "gscholar-rss" = callPackage + ({ mkDerivation, base, feed, http-conduit, scalpel-core, text, uri + }: + mkDerivation { + pname = "gscholar-rss"; + version = "0.1.0.0"; + sha256 = "17ki6wvrjvxl77zjpkxjq8yr4ljdrwlszrzwdv3arlq2c0mgl7yy"; + isLibrary = false; + isExecutable = true; + executableHaskellDepends = [ + base feed http-conduit scalpel-core text uri + ]; + description = "scrapes google scholar, provides RSS feed"; + license = stdenv.lib.licenses.gpl3; + }) {}; + "gsl-random" = callPackage ({ mkDerivation, base, Cabal, vector }: mkDerivation { @@ -100671,8 +100881,8 @@ self: { }: mkDerivation { pname = "haskoin-store"; - version = "0.6.1"; - sha256 = "0jgsf4f3qyq60dbyyni0d1cdphabf8ix4l0y1iiql5ii2fy50dw2"; + version = "0.6.2"; + sha256 = "0csb7rhcpc82xq5631i62rsr4s672b0jz8d2fmcga2j3a9di34xb"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -101249,8 +101459,8 @@ self: { }: mkDerivation { pname = "haskus-utils"; - version = "1.1"; - sha256 = "1grbj23545b7wxxyc4rra681k9c8xg36swlql3rgcr15m61fm647"; + version = "1.3"; + sha256 = "0gcwnhh3s3cmn7rwd31rs9rqmdpdhwk1la1pf56pcr10dy5iqbs4"; libraryHaskellDepends = [ base containers extra file-embed haskus-utils-data haskus-utils-types haskus-utils-variant list-t mtl @@ -101285,10 +101495,8 @@ self: { ({ mkDerivation, base }: mkDerivation { pname = "haskus-utils-types"; - version = "1.2"; - sha256 = "0q7i2z1l55x9pgf9bd5xng0bdx4v74356gayhdxws1gfmghgf7f0"; - revision = "1"; - editedCabalFile = "07r524gxdr3alwyns96rv2rmha96s89l2216hzrbvw6c6pqg401a"; + version = "1.3"; + sha256 = "06zfc5ivj7zx1c6inc3xkw9b3p62b2x7dr24fp1s59c9yfrihg1a"; libraryHaskellDepends = [ base ]; description = "Haskus utility modules"; license = stdenv.lib.licenses.bsd3; @@ -101296,14 +101504,15 @@ self: { "haskus-utils-variant" = callPackage ({ mkDerivation, base, haskus-utils-data, haskus-utils-types, tasty - , tasty-quickcheck, template-haskell + , tasty-quickcheck, template-haskell, transformers }: mkDerivation { pname = "haskus-utils-variant"; - version = "2.2"; - sha256 = "1h3rpk04dkqppfbw7pilc4sw0pkdxxr70zggsfn63ay4zqk6s5r7"; + version = "2.4"; + sha256 = "13yqyz1jb4qkdzjxwkpc9s2636disxldja49wmah7h71kd2sqn9r"; libraryHaskellDepends = [ base haskus-utils-data haskus-utils-types template-haskell + transformers ]; testHaskellDepends = [ base tasty tasty-quickcheck ]; description = "Variant and EADT"; @@ -108518,8 +108727,8 @@ self: { }: mkDerivation { pname = "hoauth2"; - version = "1.8.1"; - sha256 = "1b2rjqd8q0ybx26pmmsb1am9v6pnbp0xb3fzqvivxppdr5z6kl29"; + version = "1.8.2"; + sha256 = "0bh6ngq9850bxl2m1qpvnanif5nz09k697rw3sk6djqkcw3lv305"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -112436,6 +112645,87 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "hschema" = callPackage + ({ mkDerivation, base, comonad, contravariant, free, hashable + , invariant, lens, mtl, natural-transformation, profunctors, text + , unordered-containers, vector + }: + mkDerivation { + pname = "hschema"; + version = "0.0.1.0"; + sha256 = "0dm16r432rpk9r1a7nlwwbqi2sy9yg2z9w76s7wy1k67pmx19fmz"; + libraryHaskellDepends = [ + base comonad contravariant free hashable invariant lens mtl + natural-transformation profunctors text unordered-containers vector + ]; + description = "Describe schemas for your Haskell data types"; + license = stdenv.lib.licenses.lgpl3; + }) {}; + + "hschema-aeson" = callPackage + ({ mkDerivation, aeson, base, bytestring, comonad, contravariant + , convertible, directory, free, hschema, hschema-prettyprinter + , hschema-quickcheck, hspec, lens, mtl, natural-transformation + , prettyprinter, prettyprinter-ansi-terminal, QuickCheck + , quickcheck-instances, scientific, text, time + , unordered-containers, vector + }: + mkDerivation { + pname = "hschema-aeson"; + version = "0.0.1.0"; + sha256 = "1kq50rqmlhbh2ssly32gv5r6d6z4ly63hkl4lhvq0a153i7w387z"; + libraryHaskellDepends = [ + aeson base comonad contravariant free hschema hschema-prettyprinter + hschema-quickcheck lens mtl natural-transformation prettyprinter + prettyprinter-ansi-terminal QuickCheck quickcheck-instances + scientific text time unordered-containers vector + ]; + testHaskellDepends = [ + aeson base bytestring comonad contravariant convertible directory + free hschema hschema-prettyprinter hschema-quickcheck hspec lens + mtl natural-transformation prettyprinter + prettyprinter-ansi-terminal QuickCheck quickcheck-instances + scientific text time unordered-containers vector + ]; + description = "Describe schemas for your Haskell data types"; + license = stdenv.lib.licenses.lgpl3; + }) {}; + + "hschema-prettyprinter" = callPackage + ({ mkDerivation, base, contravariant, free, hschema, lens, mtl + , natural-transformation, prettyprinter + , prettyprinter-ansi-terminal, text, unordered-containers, vector + }: + mkDerivation { + pname = "hschema-prettyprinter"; + version = "0.0.1.0"; + sha256 = "064czqn3h5ql4bknagj2qp1m3pr1fcngpjmmy34dhxp0pg5xgvsw"; + libraryHaskellDepends = [ + base contravariant free hschema lens mtl natural-transformation + prettyprinter prettyprinter-ansi-terminal text unordered-containers + vector + ]; + description = "Describe schemas for your Haskell data types"; + license = stdenv.lib.licenses.lgpl3; + }) {}; + + "hschema-quickcheck" = callPackage + ({ mkDerivation, base, free, hschema, lens, mtl + , natural-transformation, QuickCheck, quickcheck-instances, text + , unordered-containers, vector + }: + mkDerivation { + pname = "hschema-quickcheck"; + version = "0.0.1.0"; + sha256 = "13hkpcj1cc4qykm8xhkzix29gbil8vz10b3ndivbxq5nk53r11s6"; + libraryHaskellDepends = [ + base free hschema lens mtl natural-transformation QuickCheck + quickcheck-instances text unordered-containers vector + ]; + description = "Describe schemas for your Haskell data types"; + license = stdenv.lib.licenses.lgpl3; + }) {}; + "hsclock" = callPackage ({ mkDerivation, base, cairo, glib, gtk, old-time }: mkDerivation { @@ -121161,6 +121451,18 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "impl" = callPackage + ({ mkDerivation, base, named, template-haskell }: + mkDerivation { + pname = "impl"; + version = "0.1.0.0"; + sha256 = "00l50mrl7g3jzixlj3z2kar61vzb152lnn485b7zdsz4vgqxs1sx"; + libraryHaskellDepends = [ base named template-haskell ]; + doHaddock = false; + description = "Framework for defaulting superclasses"; + license = stdenv.lib.licenses.mit; + }) {}; + "implicit" = callPackage ({ mkDerivation, base, blaze-builder, blaze-markup, blaze-svg , bytestring, bytestring-builder, containers, criterion, deepseq @@ -140745,6 +141047,28 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "massiv_0_2_3_0" = callPackage + ({ mkDerivation, base, bytestring, data-default, data-default-class + , deepseq, ghc-prim, hspec, primitive, QuickCheck, safe-exceptions + , vector + }: + mkDerivation { + pname = "massiv"; + version = "0.2.3.0"; + sha256 = "1wrfzlika7w82nxmmj192cbrhm769yhmichk1lpylldzvv9j0wl5"; + libraryHaskellDepends = [ + base bytestring data-default-class deepseq ghc-prim primitive + vector + ]; + testHaskellDepends = [ + base bytestring data-default deepseq hspec QuickCheck + safe-exceptions vector + ]; + description = "Massiv (Массив) is an Array Library"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "massiv-io" = callPackage ({ mkDerivation, base, bytestring, data-default, deepseq, directory , filepath, JuicyPixels, massiv, netpbm, process, vector @@ -143270,12 +143594,12 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; - "microspec_0_2_0_1" = callPackage + "microspec_0_2_1_3" = callPackage ({ mkDerivation, base, QuickCheck, time }: mkDerivation { pname = "microspec"; - version = "0.2.0.1"; - sha256 = "1ygkxsj7rm42f245qip8893lm189immmd5ajimp5d1pkzfkw4dnp"; + version = "0.2.1.3"; + sha256 = "0615gdbsk7i3w71adjp69zabw4mli965wffm2h846hp6pjj31xcb"; libraryHaskellDepends = [ base QuickCheck time ]; description = "Tiny QuickCheck test library with minimal dependencies"; license = stdenv.lib.licenses.bsd3; @@ -143351,8 +143675,8 @@ self: { ({ mkDerivation, base, containers, safe, stm }: mkDerivation { pname = "midair"; - version = "0.2.0.0"; - sha256 = "1fdii0pj3f1bskj9bnphhy9gbp58cqjk0q3cmfj3ynkqz20j49ij"; + version = "0.2.0.1"; + sha256 = "1dkja5arps41wanhv1jnkf99xrc8f5aiimp27myd595lqqdr87s2"; libraryHaskellDepends = [ base containers safe stm ]; description = "Hot-swappable FRP"; license = stdenv.lib.licenses.gpl3; @@ -144450,20 +144774,22 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "mmark-cli_0_0_4_0" = callPackage - ({ mkDerivation, aeson, base, bytestring, directory, gitrev, lucid - , megaparsec, mmark, mmark-ext, optparse-applicative, stache, text + "mmark-cli_0_0_5_0" = callPackage + ({ mkDerivation, aeson, base, bytestring, directory + , ghc-syntax-highlighter, gitrev, lucid, megaparsec, mmark + , mmark-ext, optparse-applicative, stache, text , unordered-containers }: mkDerivation { pname = "mmark-cli"; - version = "0.0.4.0"; - sha256 = "0vw1pq3iz4bbz5fgbzi8lvpscc58izh6y210jfi12h2jyzajyf5k"; + version = "0.0.5.0"; + sha256 = "15qrp2q1flx9csqvj8zx9w1jqg8pwfi0v7wpia7n7vg09jgydhby"; isLibrary = false; isExecutable = true; executableHaskellDepends = [ - aeson base bytestring directory gitrev lucid megaparsec mmark - mmark-ext optparse-applicative stache text unordered-containers + aeson base bytestring directory ghc-syntax-highlighter gitrev lucid + megaparsec mmark mmark-ext optparse-applicative stache text + unordered-containers ]; description = "Command line interface to the MMark markdown processor"; license = stdenv.lib.licenses.bsd3; @@ -144493,6 +144819,27 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "mmark-ext_0_2_1_1" = callPackage + ({ mkDerivation, base, foldl, ghc-syntax-highlighter, hspec + , hspec-discover, lucid, microlens, mmark, modern-uri, skylighting + , text + }: + mkDerivation { + pname = "mmark-ext"; + version = "0.2.1.1"; + sha256 = "01av7d9n75mg9yzkxszrvbxjbsv4n0gsdmg3n2620zn40j5lwmcq"; + enableSeparateDataOutput = true; + libraryHaskellDepends = [ + base foldl ghc-syntax-highlighter lucid microlens mmark modern-uri + skylighting text + ]; + testHaskellDepends = [ base hspec lucid mmark skylighting text ]; + testToolDepends = [ hspec-discover ]; + description = "Commonly useful extensions for the MMark markdown processor"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "mmorph" = callPackage ({ mkDerivation, base, mtl, transformers, transformers-compat }: mkDerivation { @@ -148402,8 +148749,8 @@ self: { ({ mkDerivation, base, template-haskell }: mkDerivation { pname = "multirec"; - version = "0.7.8"; - sha256 = "0n5rsjrg8b98aim1wsv1s2i17299h8g4k2gb7mgn1swzldrigjhz"; + version = "0.7.9"; + sha256 = "0a6kc3kkg7hz5wigp28fhp01pryb8gaw03fjc35mm4i2jfcjrplz"; libraryHaskellDepends = [ base template-haskell ]; testHaskellDepends = [ base ]; description = "Generic programming for families of recursive datatypes"; @@ -149959,6 +150306,8 @@ self: { pname = "named"; version = "0.2.0.0"; sha256 = "17ldvxypf099wj5phzh2aymzfwmyiyzhz24h1aj2s21nrys5n6n0"; + revision = "1"; + editedCabalFile = "0rnzxqlpxsfyvmc2i53iqspw03w2liflpy0zrc84pn6kw4v822j3"; libraryHaskellDepends = [ base ]; testHaskellDepends = [ base ]; description = "Named parameters (keyword arguments) for Haskell"; @@ -152371,8 +152720,8 @@ self: { ({ mkDerivation, base, doctest, network-uri, template-haskell }: mkDerivation { pname = "network-uri-static"; - version = "0.1.1.0"; - sha256 = "1fjw3a9ypmqf7kl8s9mgwa9jlswz98igp830f1hsyc1hdh9xlrqw"; + version = "0.1.2.0"; + sha256 = "1r1blpz313v6qacvbns53c2i1zgvadvl0ibmp2s3bv1ymm4caj74"; libraryHaskellDepends = [ base network-uri template-haskell ]; testHaskellDepends = [ base doctest ]; description = "A small utility to declare type-safe static URIs"; @@ -152748,8 +153097,8 @@ self: { }: mkDerivation { pname = "ngx-export"; - version = "1.5.0"; - sha256 = "1lw1hf2xy86n6c8426zdvk1qbm43gsk5zxjrbfqcy28qlnvwcdpa"; + version = "1.6.0"; + sha256 = "0svl195w8prf45g0pda1j6hngxpb18vdpc15cybxrzp2x689dxll"; libraryHaskellDepends = [ async base binary bytestring deepseq monad-loops template-haskell unix @@ -152764,8 +153113,8 @@ self: { }: mkDerivation { pname = "ngx-export-tools"; - version = "0.2.1.1"; - sha256 = "0z406bmfk9b1b6knpxwzkwh8n2cpfwgxdh52vghpgjf69c0yrjq1"; + version = "0.3.0.0"; + sha256 = "0dnkw5vvvdkcqqga9i4pvclvr3bh6wywdg0r60l8vwdcpi820dkl"; libraryHaskellDepends = [ aeson base binary bytestring ngx-export safe template-haskell ]; @@ -153383,6 +153732,17 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "nominal" = callPackage + ({ mkDerivation, base, containers }: + mkDerivation { + pname = "nominal"; + version = "0.2.0.0"; + sha256 = "1wd2vd0qn8ln3a5r29gikdcr4c2c2rf43p6kq3wmqm8ww30djgca"; + libraryHaskellDepends = [ base containers ]; + description = "Binders and alpha-equivalence made easy"; + license = stdenv.lib.licenses.gpl3; + }) {}; + "nomyx-api" = callPackage ({ mkDerivation, aeson, base, bytestring, containers, either , hslogger, lens, mtl, network-uri, nomyx-core, nomyx-language @@ -153634,8 +153994,8 @@ self: { ({ mkDerivation, base, containers, semigroupoids }: mkDerivation { pname = "nonemptymap"; - version = "0.0.4.0"; - sha256 = "0rkdhbg0bps8ws20xspw98fkmbcgzfir9kk5pxwir8x6pwwbfd8h"; + version = "0.0.6.0"; + sha256 = "1pzs51kmsyarv62qqbskhw2xlkjp74bwcgs9a8ri1jk96m64rg94"; libraryHaskellDepends = [ base containers semigroupoids ]; description = "A NonEmptyMap Implementation"; license = stdenv.lib.licenses.bsd3; @@ -155622,6 +155982,22 @@ self: { license = stdenv.lib.licenses.gpl3; }) {}; + "once_0_3" = callPackage + ({ mkDerivation, base, containers, hashable, template-haskell + , unordered-containers + }: + mkDerivation { + pname = "once"; + version = "0.3"; + sha256 = "1i5yf5d6c33arbrvvyk2bcp9cz8aj62zhd6sgxqz684baidn5rbc"; + libraryHaskellDepends = [ + base containers hashable template-haskell unordered-containers + ]; + description = "memoization for IO actions and functions"; + license = stdenv.lib.licenses.gpl3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "one-line-aeson-text" = callPackage ({ mkDerivation, aeson, base, doctest, text, unordered-containers }: @@ -158293,6 +158669,41 @@ self: { license = stdenv.lib.licenses.bsd3; }) {}; + "pandoc-citeproc_0_14_8_1" = callPackage + ({ mkDerivation, aeson, aeson-pretty, attoparsec, base, bytestring + , Cabal, containers, data-default, directory, filepath, hs-bibutils + , mtl, old-locale, pandoc, pandoc-types, parsec, process, rfc5051 + , setenv, split, syb, tagsoup, temporary, text, time + , unordered-containers, vector, xml-conduit, yaml + }: + mkDerivation { + pname = "pandoc-citeproc"; + version = "0.14.8.1"; + sha256 = "04cdx0b9k3xk2ss97vws21pydxcwxffsgh7xrqrnwwc3v7jn80fz"; + isLibrary = true; + isExecutable = true; + enableSeparateDataOutput = true; + setupHaskellDepends = [ base Cabal ]; + libraryHaskellDepends = [ + aeson base bytestring containers data-default directory filepath + hs-bibutils mtl old-locale pandoc pandoc-types parsec rfc5051 + setenv split syb tagsoup text time unordered-containers vector + xml-conduit yaml + ]; + executableHaskellDepends = [ + aeson aeson-pretty attoparsec base bytestring filepath pandoc + pandoc-types syb text yaml + ]; + testHaskellDepends = [ + aeson base bytestring containers directory filepath mtl pandoc + pandoc-types process temporary text yaml + ]; + doCheck = false; + description = "Supports using pandoc with citeproc"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "pandoc-citeproc-preamble" = callPackage ({ mkDerivation, base, directory, filepath, pandoc-types, process }: @@ -163595,8 +164006,8 @@ self: { }: mkDerivation { pname = "pinch"; - version = "0.3.3.0"; - sha256 = "0bhds7k9bsma1bvihvz6qf832gi2krak3yd8lnddcv87hnjsr4hq"; + version = "0.3.4.0"; + sha256 = "10rmk6f9cb2l7dyybwpbin0i5dqdg59d17m627kj9abyrlhcyf8a"; libraryHaskellDepends = [ array base bytestring containers deepseq ghc-prim hashable semigroups text unordered-containers vector @@ -165512,6 +165923,23 @@ self: { license = stdenv.lib.licenses.mit; }) {}; + "plotlyhs_0_2_1" = callPackage + ({ mkDerivation, aeson, base, blaze-html, blaze-markup, bytestring + , lucid, microlens, microlens-th, text, time + }: + mkDerivation { + pname = "plotlyhs"; + version = "0.2.1"; + sha256 = "1d7cqy22myp6r0x0b00amn64fra0lklb9jy2hd8ic9lxg0nd8pn9"; + libraryHaskellDepends = [ + aeson base blaze-html blaze-markup bytestring lucid microlens + microlens-th text time + ]; + description = "Haskell bindings to Plotly.js"; + license = stdenv.lib.licenses.mit; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "ploton" = callPackage ({ mkDerivation, base, hspec, optparse-applicative, process, split , transformers @@ -166967,18 +167395,18 @@ self: { }) {}; "postgres-websockets" = callPackage - ({ mkDerivation, aeson, ansi-wl-pprint, base, base64-bytestring - , bytestring, configurator, containers, contravariant, either - , hasql, hasql-pool, heredoc, hspec, hspec-wai, hspec-wai-json - , http-types, jose, jwt, lens, lens-aeson, optparse-applicative - , postgresql-libpq, protolude, retry, stm, stm-containers - , stringsearch, text, time, transformers, unordered-containers, wai - , wai-app-static, wai-extra, wai-websockets, warp, websockets + ({ mkDerivation, aeson, base, base64-bytestring, bytestring + , containers, contravariant, either, envparse, hasql, hasql-pool + , hspec, hspec-wai, hspec-wai-json, http-types, jose, jwt, lens + , lens-aeson, postgresql-libpq, protolude, retry, stm + , stm-containers, stringsearch, text, time, transformers + , unordered-containers, wai, wai-app-static, wai-extra + , wai-websockets, warp, websockets }: mkDerivation { pname = "postgres-websockets"; - version = "0.4.2.1"; - sha256 = "0jh4ms9lz456as24v9d4vqj2b52i9gw7svk5lzvb65nhfdpb4kfp"; + version = "0.5.0.1"; + sha256 = "0afhrzhixy0f31050jb04w8np6935wcl3j7ckbk0dm23mqz2z3zy"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -166988,9 +167416,8 @@ self: { unordered-containers wai wai-websockets websockets ]; executableHaskellDepends = [ - ansi-wl-pprint base base64-bytestring bytestring configurator hasql - hasql-pool heredoc optparse-applicative protolude text time - transformers wai wai-app-static wai-extra warp + base base64-bytestring bytestring envparse hasql hasql-pool + protolude text time transformers wai wai-app-static wai-extra warp ]; testHaskellDepends = [ aeson base containers hasql hasql-pool hspec hspec-wai @@ -170574,6 +171001,19 @@ self: { license = stdenv.lib.licenses.bsd3; }) {inherit (pkgs) libpulseaudio;}; + "proteome" = callPackage + ({ mkDerivation, base, nvim-hs }: + mkDerivation { + pname = "proteome"; + version = "0.1.0.0"; + sha256 = "13c4hrgc1vxvwmzw49djvp22y80z2cndqbqcd4fy4rm6hd6zbs81"; + isLibrary = false; + isExecutable = true; + executableHaskellDepends = [ base nvim-hs ]; + description = "neovim project manager"; + license = stdenv.lib.licenses.mit; + }) {}; + "proto-lens_0_2_2_0" = callPackage ({ mkDerivation, attoparsec, base, bytestring, containers , data-default-class, lens-family, parsec, pretty, text @@ -188842,6 +189282,8 @@ self: { pname = "servant-streaming"; version = "0.3.0.0"; sha256 = "0k2sgh7qhp54050k6xlz4zi5jf29xnar2iv02f4rg1k5fxjlh3cq"; + revision = "1"; + editedCabalFile = "1a9lg7cxbkj658hc76r5yk104q0hm3q9mkjzk17dwkwlnvdfq6m2"; libraryHaskellDepends = [ base http-types servant ]; testHaskellDepends = [ base hspec http-types QuickCheck servant ]; description = "Servant combinators for the 'streaming' package"; @@ -188858,6 +189300,8 @@ self: { pname = "servant-streaming-client"; version = "0.3.0.0"; sha256 = "1h3haws61m064zziyzn03n0450swffmr46gsv9k88lrpz8lv5qj2"; + revision = "1"; + editedCabalFile = "07xkgnhi8aspnqms5gx67ssw5m595gda8yqypdg2q59wwc6ib68d"; libraryHaskellDepends = [ base bytestring http-media http-types resourcet servant servant-client-core servant-streaming streaming @@ -188880,6 +189324,8 @@ self: { pname = "servant-streaming-docs"; version = "0.3.0.0"; sha256 = "0jy0na8cavym2vsy1a059n0yjzfb5a0xylyzxpz0i5apafv1xvlz"; + revision = "1"; + editedCabalFile = "02majkszg6d340mq07b9xyfd200xqpq9znl2j9dxqj7d9bqkrdrz"; libraryHaskellDepends = [ base lens servant servant-docs servant-streaming ]; @@ -188897,6 +189343,8 @@ self: { pname = "servant-streaming-server"; version = "0.3.0.0"; sha256 = "0lsh3x6hkbk7p095pkp7ld0m54xlkw0101x6nrxhjvhmw13aiq66"; + revision = "1"; + editedCabalFile = "1xfx22a83xwq2bzv7gm3z9drd5hiq6wz7yyvfpjz1c2dcicwflvm"; libraryHaskellDepends = [ base bytestring http-media http-types resourcet servant servant-server servant-streaming streaming streaming-wai wai @@ -190747,8 +191195,8 @@ self: { ({ mkDerivation, base, bytestring, unix }: mkDerivation { pname = "shared-memory"; - version = "0.1.0.0"; - sha256 = "15h4j81q2v97dx61pnpaqs99z4vvlw7xl1dxbh878imxj8zn4z84"; + version = "0.2.0.0"; + sha256 = "1g1s08zjpj9xaaff3qg29k6fhnpiig9fqv9i7879yhllh50kjrr6"; libraryHaskellDepends = [ base unix ]; testHaskellDepends = [ base bytestring unix ]; description = "POSIX shared memory"; @@ -200022,6 +200470,8 @@ self: { pname = "stemmer-german"; version = "0.1.1.1"; sha256 = "037dw03zb4xdfbzp8js04ymrxii7rsin7pwiansa9khb29w2jqsn"; + revision = "1"; + editedCabalFile = "0pvghdxgd56yjm33lrzk6343lklnfdw77g30vhbfddwwdx1ifx2v"; libraryHaskellDepends = [ base text ]; description = "Extract the stem of a German inflected word form"; license = stdenv.lib.licenses.mit; @@ -202350,8 +202800,8 @@ self: { }: mkDerivation { pname = "structured-cli"; - version = "2.2.1.0"; - sha256 = "1b75wnmprbb4sfnwyn5arc205ad5rlyz4hv63ai35i9iryax875s"; + version = "2.3.0.0"; + sha256 = "1qpyh9cjdxd6v5xdzp44qlpn0mskqc9qzs78rbyr1q1ylmlja6a7"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ @@ -203276,6 +203726,20 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "supervisors" = callPackage + ({ mkDerivation, async, base, containers, hspec, stm, unliftio }: + mkDerivation { + pname = "supervisors"; + version = "0.1.0.0"; + sha256 = "1sxralp0hcz2zn5byn67xq612nzmpm890gnjs827sidvr7r7h31j"; + revision = "1"; + editedCabalFile = "186a5vawnknixf4psp06cjbyby5qp4i0c8bpvisqi3pq3kag7x76"; + libraryHaskellDepends = [ async base containers stm unliftio ]; + testHaskellDepends = [ base hspec ]; + description = "Monitor groups of threads with non-hierarchical lifetimes"; + license = stdenv.lib.licenses.mit; + }) {}; + "supplemented" = callPackage ({ mkDerivation, base, base-prelude, QuickCheck , quickcheck-instances, rebase, tasty, tasty-hunit @@ -213041,30 +213505,32 @@ self: { license = stdenv.lib.licenses.mpl20; }) {}; - "tomland_0_4_0" = callPackage - ({ mkDerivation, base, hashable, hedgehog, hspec-megaparsec - , megaparsec, mtl, parser-combinators, tasty, tasty-discover - , tasty-hedgehog, tasty-hspec, text, time, transformers - , unordered-containers + "tomland_0_5_0" = callPackage + ({ mkDerivation, aeson, base, bytestring, containers, deepseq + , gauge, hashable, hedgehog, hspec-megaparsec, htoml + , htoml-megaparsec, megaparsec, mtl, parsec, parser-combinators + , tasty, tasty-discover, tasty-hedgehog, tasty-hspec, tasty-silver + , text, time, transformers, unordered-containers }: mkDerivation { pname = "tomland"; - version = "0.4.0"; - sha256 = "1rkdlq6js5ia807wh9hga6y9r92bxj8j5g7nynba1ilc3x70znfr"; - revision = "1"; - editedCabalFile = "1d02r17m15s5z4xqyy05s515lbsqxc3kcipk25xvn24inz42qg4r"; + version = "0.5.0"; + sha256 = "001gw3yj0ibg3dm4q5wz8akjpcdx6zj3jza1y6gq7m5h13fzrvgf"; isLibrary = true; isExecutable = true; libraryHaskellDepends = [ - base hashable megaparsec mtl parser-combinators text time - transformers unordered-containers + base bytestring containers deepseq hashable megaparsec mtl + parser-combinators text time transformers unordered-containers ]; executableHaskellDepends = [ base text time unordered-containers ]; testHaskellDepends = [ base hedgehog hspec-megaparsec megaparsec tasty tasty-hedgehog - tasty-hspec text time unordered-containers + tasty-hspec tasty-silver text time unordered-containers ]; testToolDepends = [ tasty-discover ]; + benchmarkHaskellDepends = [ + aeson base deepseq gauge htoml htoml-megaparsec parsec text time + ]; description = "Bidirectional TOML parser"; license = stdenv.lib.licenses.mpl20; hydraPlatforms = stdenv.lib.platforms.none; @@ -213959,8 +214425,8 @@ self: { pname = "transformers-lift"; version = "0.2.0.1"; sha256 = "17g03r5hpnygx0c9ybr9za6208ay0cjvz47rkyplv1r9zcivzn0b"; - revision = "1"; - editedCabalFile = "1dy9vg0drkm9ria80hlfx6v72ji2fwmv3ik7lryv7i7hk0bdzk8l"; + revision = "2"; + editedCabalFile = "16gpca2wfa7w2b5kzfvqsjjyd61pkv0wyi2mk5b34367p4chnsc5"; libraryHaskellDepends = [ base transformers writer-cps-transformers ]; @@ -214648,6 +215114,26 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; + "triplesec_0_2_2_0" = callPackage + ({ mkDerivation, base, bytestring, cryptonite, doctest, memory, mtl + , QuickCheck, tasty, tasty-hunit, tasty-quickcheck, transformers + }: + mkDerivation { + pname = "triplesec"; + version = "0.2.2.0"; + sha256 = "1gxks45hjr3a1lnr2v75cl0iwsmlzaq3yzd3p9s0pn5227f34zh7"; + libraryHaskellDepends = [ + base cryptonite memory mtl transformers + ]; + testHaskellDepends = [ + base bytestring doctest memory QuickCheck tasty tasty-hunit + tasty-quickcheck + ]; + description = "TripleSec is a simple, triple-paranoid, symmetric encryption library"; + license = stdenv.lib.licenses.bsd3; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "trivia" = callPackage ({ mkDerivation, base, comonad, distributive }: mkDerivation { @@ -216458,8 +216944,8 @@ self: { }: mkDerivation { pname = "type-map"; - version = "0.1.2.0"; - sha256 = "0cm2b4xkassjh71ndc5nddpmqyr5bcf3fqxs74wzd11dycmfqfaa"; + version = "0.1.3.0"; + sha256 = "146kc36z6fljcgmgl9vii1pmf3hs80v2vz21r84p823znrqjs8gc"; libraryHaskellDepends = [ base containers ghc-prim vector ]; testHaskellDepends = [ base HUnit test-framework test-framework-hunit @@ -222796,6 +223282,26 @@ self: { license = "GPL"; }) {}; + "vivid_0_4_2_3" = callPackage + ({ mkDerivation, base, binary, bytestring, containers, directory + , filepath, hashable, MonadRandom, mtl, network, process, random + , random-shuffle, split, stm, time, transformers, utf8-string + , vivid-osc, vivid-supercollider + }: + mkDerivation { + pname = "vivid"; + version = "0.4.2.3"; + sha256 = "0awm9cnjgfqx1qf6jsnwmf0kxqxwny82q1ddqna8ilqcdrbsxh0i"; + libraryHaskellDepends = [ + base binary bytestring containers directory filepath hashable + MonadRandom mtl network process random random-shuffle split stm + time transformers utf8-string vivid-osc vivid-supercollider + ]; + description = "Sound synthesis with SuperCollider"; + license = "GPL"; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "vivid-osc" = callPackage ({ mkDerivation, base, binary, bytestring, cereal, microspec, time }: @@ -222809,14 +223315,13 @@ self: { license = "GPL"; }) {}; - "vivid-osc_0_4_0_0" = callPackage - ({ mkDerivation, base, binary, bytestring, cereal, microspec, time - }: + "vivid-osc_0_5_0_0" = callPackage + ({ mkDerivation, base, bytestring, cereal, microspec, time }: mkDerivation { pname = "vivid-osc"; - version = "0.4.0.0"; - sha256 = "10wbl11xwkahjsnvy14ysvkbylh615x7i8v4hwrji81rfy2bs29n"; - libraryHaskellDepends = [ base binary bytestring cereal time ]; + version = "0.5.0.0"; + sha256 = "041m4k1aqkw35fp7l03i3ba1jyppr8lia2v2zyq7v8yzby8ngys6"; + libraryHaskellDepends = [ base bytestring cereal time ]; testHaskellDepends = [ base bytestring cereal microspec time ]; description = "Open Sound Control encode/decode"; license = "GPL"; @@ -222842,6 +223347,26 @@ self: { license = "GPL"; }) {}; + "vivid-supercollider_0_4_1_1" = callPackage + ({ mkDerivation, base, binary, bytestring, cereal, microspec + , QuickCheck, split, utf8-string, vivid-osc + }: + mkDerivation { + pname = "vivid-supercollider"; + version = "0.4.1.1"; + sha256 = "1qf4hnslcmqkahxs5d55iljiybn46is41a5kikjd2vnbns4va0fb"; + libraryHaskellDepends = [ + base binary bytestring cereal split utf8-string vivid-osc + ]; + testHaskellDepends = [ + base binary bytestring cereal microspec QuickCheck utf8-string + vivid-osc + ]; + description = "Implementation of SuperCollider server specifications"; + license = "GPL"; + hydraPlatforms = stdenv.lib.platforms.none; + }) {}; + "vk-aws-route53" = callPackage ({ mkDerivation, aws, base, bytestring, containers, http-conduit , http-types, old-locale, resourcet, text, time, xml-conduit @@ -223205,8 +223730,8 @@ self: { }: mkDerivation { pname = "waargonaut"; - version = "0.2.0.0"; - sha256 = "1qk4wg2jqzylaqq0yjq9byj3k5vj23jqvdshvyj7r9fl0f3hynni"; + version = "0.2.0.2"; + sha256 = "0sl4rhkrykd9hn1dpzzsf8hcg5jhx4f7wwysmam8apkkj0hafp17"; setupHaskellDepends = [ base Cabal cabal-doctest ]; libraryHaskellDepends = [ base bifunctors bytestring containers contravariant digit @@ -225754,7 +226279,7 @@ self: { hydraPlatforms = stdenv.lib.platforms.none; }) {}; - "web3_0_8_1_0" = callPackage + "web3_0_8_2_0" = callPackage ({ mkDerivation, aeson, async, base, basement, bytestring, cereal , cryptonite, data-default, exceptions, generics-sop, hspec , hspec-contrib, hspec-discover, hspec-expectations, http-client @@ -225765,8 +226290,8 @@ self: { }: mkDerivation { pname = "web3"; - version = "0.8.1.0"; - sha256 = "0aliq3iblnlz7waswzprb8z28v82sjq8qpc2bbcyknmpp52p2r26"; + version = "0.8.2.0"; + sha256 = "0gfz4011yflpjhg2397wq5761hq4r0g0yrkqljp1xsikq2jab72h"; libraryHaskellDepends = [ aeson async base basement bytestring cereal cryptonite data-default exceptions generics-sop http-client http-client-tls machines memory @@ -230404,8 +230929,8 @@ self: { }: mkDerivation { pname = "xmonad-extras"; - version = "0.14"; - sha256 = "1p1xc8qcrrdv3hhvlmg6l6mcywz7q2i81y6frnf3iz00n01b3d9f"; + version = "0.15"; + sha256 = "0yi6p4s9vl92bnr0sbcvm80x37n4fyglm4x3lrc9l8mapbpxjr02"; configureFlags = [ "-f-with_hlist" "-fwith_parsec" "-fwith_split" ]; @@ -235647,8 +236172,8 @@ self: { ({ mkDerivation, base, multirec }: mkDerivation { pname = "zipper"; - version = "0.4.2"; - sha256 = "1r8092amq5w9gl5szycl1r7wx87xnmkcapdzcwfa4c3pvxrhjy44"; + version = "0.4.3"; + sha256 = "1p8yn91snyv5p6bmll7d0gm0zbrhp99fl4kziq0vkbchlpcdjapf"; libraryHaskellDepends = [ base multirec ]; description = "Generic zipper for families of recursive datatypes"; license = stdenv.lib.licenses.bsd3; From 1b35b1c73a47280cffa1ab256ababdbe5b021eaa Mon Sep 17 00:00:00 2001 From: Peter Simons Date: Mon, 12 Nov 2018 16:23:47 +0100 Subject: [PATCH 64/68] all-cabal-hashes: update to Hackage at 2018-11-12T01:24:24Z --- pkgs/data/misc/hackage/default.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix index 5fac1606788..17f51e0d303 100644 --- a/pkgs/data/misc/hackage/default.nix +++ b/pkgs/data/misc/hackage/default.nix @@ -1,6 +1,6 @@ { fetchurl }: fetchurl { - url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/98ec0eee2ddef5d4a00e2ac4a95e8add46d23b69.tar.gz"; - sha256 = "0svcaaflqi5c815z3yrh61bjny1jnwp42sylmsnwryjldqvizc1a"; + url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/1fba236a8a8f685aaf55029d20ab24d7e4cbc5ba.tar.gz"; + sha256 = "0yy6ass2c0vn81pcvb0ksc1qh3hlw2q97937vp73jawghgwsy9qv"; } From 27a5427526b5544496535703ce78c7c1da1eb153 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Gaspard?= Date: Tue, 13 Nov 2018 00:40:07 +0900 Subject: [PATCH 65/68] nixos-build-vms: fix syntax error Introduced by https://github.com/NixOS/nixpkgs/commit/6c68fbd4e1f8beac39cb1f499ff90c78256262d6 --- nixos/modules/installer/tools/nixos-build-vms/build-vms.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix index 4d6da849f23..2625f7661b7 100644 --- a/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix +++ b/nixos/modules/installer/tools/nixos-build-vms/build-vms.nix @@ -7,7 +7,7 @@ let nodes = import networkExpr; in with import ../../../../lib/testing.nix { inherit system; - pkgs = import ../.. { inherit system config; } + pkgs = import ../.. { inherit system config; }; }; (makeTest { inherit nodes; testScript = ""; }).driver From b4d9f6ddca2597af0323f4546b4ae466e0280243 Mon Sep 17 00:00:00 2001 From: Clemens Fruhwirth Date: Wed, 31 Oct 2018 13:16:05 +0100 Subject: [PATCH 66/68] androidsdk: Re-add emulator that was broken out of the sdk-tools package. --- .../mobile/androidenv/androidsdk.nix | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/pkgs/development/mobile/androidenv/androidsdk.nix b/pkgs/development/mobile/androidenv/androidsdk.nix index 3c2e6c530d2..26750aed6cf 100644 --- a/pkgs/development/mobile/androidenv/androidsdk.nix +++ b/pkgs/development/mobile/androidenv/androidsdk.nix @@ -41,10 +41,16 @@ stdenv.mkDerivation rec { } else throw "platform not ${stdenv.hostPlatform.system} supported!"; + emulator = fetchurl { + url = "https://dl.google.com/android/repository/emulator-linux-4969155.zip"; + sha256 = "0iw0j6j3w9zpfalsa7xq2czz4vzgq96zk2zddjhanwwx4p8fhrfd"; + }; + buildCommand = '' mkdir -p $out/libexec cd $out/libexec unpackFile $src + unpackFile $emulator cd tools for f in monitor bin/monkeyrunner bin/uiautomatorviewer @@ -76,13 +82,16 @@ stdenv.mkDerivation rec { # The emulators need additional libraries, which are dynamically loaded => let's wrap them ${stdenv.lib.optionalString (stdenv.hostPlatform.system == "x86_64-linux") '' - for i in emulator emulator-check + cd .. + for i in emulator/emulator* emulator/qemu/linux-x86_64/qemu-system-* do + patchelf --set-interpreter ${stdenv.cc.libc.out}/lib/ld-linux-x86-64.so.2 $i wrapProgram `pwd`/$i \ --prefix PATH : ${stdenv.lib.makeBinPath [ file glxinfo ]} \ --suffix LD_LIBRARY_PATH : `pwd`/lib:${makeLibraryPath [ stdenv.cc.cc libX11 libxcb libXau libXdmcp libXext libGLU_combined alsaLib zlib libpulseaudio dbus.lib ]} \ --suffix QT_XKB_CONFIG_ROOT : ${xkeyboardconfig}/share/X11/xkb done + cd tools ''} ''} @@ -263,6 +272,14 @@ stdenv.mkDerivation rec { fi done + for i in $out/libexec/emulator/* + do + if [ ! -d $i ] && [ -x $i ] + then + ln -sf $i $out/bin/$(basename $i) + fi + done + wrapProgram $out/bin/sdkmanager \ --set JAVA_HOME ${jdk} From 208aedb9715f7c682d1617449298d73f3077222d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Th=C3=A9o=20Zimmermann?= Date: Sun, 11 Nov 2018 18:04:27 +0100 Subject: [PATCH 67/68] ocamlPackages.*: remove unnecessary unpackCmd --- doc/languages-frameworks/ocaml.xml | 8 +++----- pkgs/development/ocaml-modules/astring/default.nix | 2 -- pkgs/development/ocaml-modules/bos/default.nix | 2 -- pkgs/development/ocaml-modules/cmdliner/default.nix | 2 -- pkgs/development/ocaml-modules/cpuid/default.nix | 2 -- pkgs/development/ocaml-modules/cstruct/default.nix | 2 -- pkgs/development/ocaml-modules/cstruct/lwt.nix | 2 +- pkgs/development/ocaml-modules/cstruct/ppx.nix | 2 +- pkgs/development/ocaml-modules/cstruct/unix.nix | 2 +- pkgs/development/ocaml-modules/csv/default.nix | 2 -- pkgs/development/ocaml-modules/digestif/default.nix | 2 -- pkgs/development/ocaml-modules/dtoa/default.nix | 2 -- pkgs/development/ocaml-modules/farfadet/default.nix | 3 --- pkgs/development/ocaml-modules/fmt/default.nix | 2 -- pkgs/development/ocaml-modules/fpath/default.nix | 2 -- pkgs/development/ocaml-modules/functoria/default.nix | 2 -- pkgs/development/ocaml-modules/gg/default.nix | 2 -- pkgs/development/ocaml-modules/hex/default.nix | 2 -- pkgs/development/ocaml-modules/integers/default.nix | 2 -- pkgs/development/ocaml-modules/jsonm/default.nix | 2 -- pkgs/development/ocaml-modules/logs/default.nix | 2 -- pkgs/development/ocaml-modules/lru/default.nix | 2 -- pkgs/development/ocaml-modules/mtime/default.nix | 2 -- pkgs/development/ocaml-modules/nocrypto/default.nix | 2 -- pkgs/development/ocaml-modules/notty/default.nix | 2 -- pkgs/development/ocaml-modules/octavius/default.nix | 2 -- pkgs/development/ocaml-modules/otfm/default.nix | 2 -- pkgs/development/ocaml-modules/ppx_blob/default.nix | 2 -- pkgs/development/ocaml-modules/ppx_gen_rec/default.nix | 2 -- pkgs/development/ocaml-modules/psq/default.nix | 2 -- pkgs/development/ocaml-modules/ptime/default.nix | 2 -- pkgs/development/ocaml-modules/react/default.nix | 1 - pkgs/development/ocaml-modules/rope/default.nix | 1 - pkgs/development/ocaml-modules/rresult/default.nix | 2 -- pkgs/development/ocaml-modules/topkg/default.nix | 1 - pkgs/development/ocaml-modules/tsdl/default.nix | 2 -- pkgs/development/ocaml-modules/uchar/default.nix | 1 - pkgs/development/ocaml-modules/uri/default.nix | 2 -- pkgs/development/ocaml-modules/uucd/default.nix | 2 -- pkgs/development/ocaml-modules/uucp/default.nix | 2 -- pkgs/development/ocaml-modules/uuidm/default.nix | 4 +--- pkgs/development/ocaml-modules/uunf/default.nix | 2 -- pkgs/development/ocaml-modules/uuseg/default.nix | 2 -- pkgs/development/ocaml-modules/uutf/default.nix | 2 -- pkgs/development/ocaml-modules/vg/default.nix | 2 -- pkgs/development/ocaml-modules/wtf8/default.nix | 2 -- pkgs/development/ocaml-modules/x509/default.nix | 2 -- pkgs/development/ocaml-modules/xmlm/default.nix | 2 -- 48 files changed, 7 insertions(+), 94 deletions(-) diff --git a/doc/languages-frameworks/ocaml.xml b/doc/languages-frameworks/ocaml.xml index d1c29c72f72..ea077061680 100644 --- a/doc/languages-frameworks/ocaml.xml +++ b/doc/languages-frameworks/ocaml.xml @@ -67,9 +67,9 @@ buildDunePackage rec { Here is a second example, this time using a source archive generated with - dune-release. The unpackCmd - redefinition is necessary to be able to unpack the kind of tarball that - dune-release generates. This library does not depend + dune-release. It is a good idea to use this archive when + it is available as it will usually contain substituted variables such as a + %%VERSION%% field. This library does not depend on any other OCaml library and no tests are run after building it. @@ -87,8 +87,6 @@ buildDunePackage rec { sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq"; }; - unpackCmd = "tar xjf $src"; - meta = with stdenv.lib; { homepage = https://github.com/flowtype/ocaml-wtf8; description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates."; diff --git a/pkgs/development/ocaml-modules/astring/default.nix b/pkgs/development/ocaml-modules/astring/default.nix index 827487be69b..f5dd92422cc 100644 --- a/pkgs/development/ocaml-modules/astring/default.nix +++ b/pkgs/development/ocaml-modules/astring/default.nix @@ -9,8 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0ixjwc3plrljvj24za3l9gy0w30lsbggp8yh02lwrzw61ls4cri0"; }; - unpackCmd = "tar -xf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/bos/default.nix b/pkgs/development/ocaml-modules/bos/default.nix index a1f4c6bc564..97434811665 100644 --- a/pkgs/development/ocaml-modules/bos/default.nix +++ b/pkgs/development/ocaml-modules/bos/default.nix @@ -10,8 +10,6 @@ stdenv.mkDerivation rec { sha256 = "1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ astring fmt fpath logs rresult ]; diff --git a/pkgs/development/ocaml-modules/cmdliner/default.nix b/pkgs/development/ocaml-modules/cmdliner/default.nix index 4b055a130fd..9ba48e6ebfd 100644 --- a/pkgs/development/ocaml-modules/cmdliner/default.nix +++ b/pkgs/development/ocaml-modules/cmdliner/default.nix @@ -15,8 +15,6 @@ stdenv.mkDerivation rec { sha256 = "18jqphjiifljlh9jg8zpl6310p3iwyaqphdkmf89acyaix0s4kj1"; }; - unpackCmd = "tar xjf $src"; - nativeBuildInputs = [ ocamlbuild topkg ]; buildInputs = [ ocaml findlib ]; propagatedBuildInputs = [ result ]; diff --git a/pkgs/development/ocaml-modules/cpuid/default.nix b/pkgs/development/ocaml-modules/cpuid/default.nix index 37400856f1a..0695da7ee37 100644 --- a/pkgs/development/ocaml-modules/cpuid/default.nix +++ b/pkgs/development/ocaml-modules/cpuid/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation { sha256 = "08k2558a3dnxn8msgpz8c93sfn0y027ganfdi2yvql0fp1ixv97p"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/cstruct/default.nix b/pkgs/development/ocaml-modules/cstruct/default.nix index c3941173bff..37c7f660ca6 100644 --- a/pkgs/development/ocaml-modules/cstruct/default.nix +++ b/pkgs/development/ocaml-modules/cstruct/default.nix @@ -9,8 +9,6 @@ buildDunePackage rec { sha256 = "1x4jxsvd1lrfibnjdjrkfl7hqsc48rljnwbap6faanj9qhwwa6v2"; }; - unpackCmd = "tar -xjf $curSrc"; - propagatedBuildInputs = [ sexplib ocplib-endian ]; meta = { diff --git a/pkgs/development/ocaml-modules/cstruct/lwt.nix b/pkgs/development/ocaml-modules/cstruct/lwt.nix index 367a7fa2a44..fc621838966 100644 --- a/pkgs/development/ocaml-modules/cstruct/lwt.nix +++ b/pkgs/development/ocaml-modules/cstruct/lwt.nix @@ -2,7 +2,7 @@ buildDunePackage { pname = "cstruct-lwt"; - inherit (cstruct) version src unpackCmd meta; + inherit (cstruct) version src meta; minimumOCamlVersion = "4.02"; diff --git a/pkgs/development/ocaml-modules/cstruct/ppx.nix b/pkgs/development/ocaml-modules/cstruct/ppx.nix index 837bca370cf..5f4130dc23f 100644 --- a/pkgs/development/ocaml-modules/cstruct/ppx.nix +++ b/pkgs/development/ocaml-modules/cstruct/ppx.nix @@ -2,7 +2,7 @@ buildDunePackage { pname = "ppx_cstruct"; - inherit (cstruct) version src unpackCmd meta; + inherit (cstruct) version src meta; minimumOCamlVersion = "4.02"; diff --git a/pkgs/development/ocaml-modules/cstruct/unix.nix b/pkgs/development/ocaml-modules/cstruct/unix.nix index 6fb34ba7821..fb7612b5f05 100644 --- a/pkgs/development/ocaml-modules/cstruct/unix.nix +++ b/pkgs/development/ocaml-modules/cstruct/unix.nix @@ -2,7 +2,7 @@ buildDunePackage { pname = "cstruct-unix"; - inherit (cstruct) version src unpackCmd meta; + inherit (cstruct) version src meta; minimumOCamlVersion = "4.02"; diff --git a/pkgs/development/ocaml-modules/csv/default.nix b/pkgs/development/ocaml-modules/csv/default.nix index 8b67200f32f..e10b21286dd 100644 --- a/pkgs/development/ocaml-modules/csv/default.nix +++ b/pkgs/development/ocaml-modules/csv/default.nix @@ -9,8 +9,6 @@ buildDunePackage rec { sha256 = "0cgfb6cwhwy7ypc1i3jyfz6sdnykp75aqi6kk0g1a2d81yjwzbcg"; }; - unpackCmd = "tar -xjf $src"; - meta = { description = "A pure OCaml library to read and write CSV files"; license = stdenv.lib.licenses.lgpl21; diff --git a/pkgs/development/ocaml-modules/digestif/default.nix b/pkgs/development/ocaml-modules/digestif/default.nix index cf8b5335d59..d8089bb533f 100644 --- a/pkgs/development/ocaml-modules/digestif/default.nix +++ b/pkgs/development/ocaml-modules/digestif/default.nix @@ -13,8 +13,6 @@ stdenv.mkDerivation rec { sha256 = "0fsyfi5ps17j3wjav5176gf6z3a5xcw9aqhcr1gml9n9ayfbkhrd"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/dtoa/default.nix b/pkgs/development/ocaml-modules/dtoa/default.nix index 0e776f8e0c7..a5164ab7fa9 100644 --- a/pkgs/development/ocaml-modules/dtoa/default.nix +++ b/pkgs/development/ocaml-modules/dtoa/default.nix @@ -11,8 +11,6 @@ buildDunePackage rec { sha256 = "0rzysj07z2q6gk0yhjxnjnba01vmdb9x32wwna10qk3rrb8r2pnn"; }; - unpackCmd = "tar xjf $src"; - hardeningDisable = stdenv.lib.optional stdenv.isDarwin "strictoverflow"; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/farfadet/default.nix b/pkgs/development/ocaml-modules/farfadet/default.nix index 080cc74998d..20b6f7d0909 100644 --- a/pkgs/development/ocaml-modules/farfadet/default.nix +++ b/pkgs/development/ocaml-modules/farfadet/default.nix @@ -15,8 +15,6 @@ stdenv.mkDerivation rec { sha256 = "06wvd57c8khpq0c2hvm15zng269zvabsw1lcaqphqdcckl67nsxr"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ faraday ]; @@ -31,4 +29,3 @@ stdenv.mkDerivation rec { inherit (ocaml.meta) platforms; }; } - diff --git a/pkgs/development/ocaml-modules/fmt/default.nix b/pkgs/development/ocaml-modules/fmt/default.nix index 2aa560e5349..922f85996e1 100644 --- a/pkgs/development/ocaml-modules/fmt/default.nix +++ b/pkgs/development/ocaml-modules/fmt/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation { sha256 = "1zj9azcxcn6skmb69ykgmi9z8c50yskwg03wqgh87lypgjdcz060"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ]; propagatedBuildInputs = [ result uchar ]; diff --git a/pkgs/development/ocaml-modules/fpath/default.nix b/pkgs/development/ocaml-modules/fpath/default.nix index f812ab1d48c..9317f50717e 100644 --- a/pkgs/development/ocaml-modules/fpath/default.nix +++ b/pkgs/development/ocaml-modules/fpath/default.nix @@ -7,8 +7,6 @@ stdenv.mkDerivation { sha256 = "1hr05d8bpqmqcfdavn4rjk9rxr7v2zl84866f5knjifrm60sxqic"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ astring ]; diff --git a/pkgs/development/ocaml-modules/functoria/default.nix b/pkgs/development/ocaml-modules/functoria/default.nix index 150d8db16a0..12b24a43956 100644 --- a/pkgs/development/ocaml-modules/functoria/default.nix +++ b/pkgs/development/ocaml-modules/functoria/default.nix @@ -13,8 +13,6 @@ stdenv.mkDerivation rec { sha256 = "019rl4rir4lwgjyqj2wq3ylw4daih1kxxgbc6ld6kzcq66mwr747"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ bos cmdliner ocamlgraph ]; diff --git a/pkgs/development/ocaml-modules/gg/default.nix b/pkgs/development/ocaml-modules/gg/default.nix index 0c80f39d9d7..e32611e0c05 100644 --- a/pkgs/development/ocaml-modules/gg/default.nix +++ b/pkgs/development/ocaml-modules/gg/default.nix @@ -23,8 +23,6 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; - unpackCmd = "tar xjf $src"; - buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true"; installPhase = "opaline -libdir $OCAMLFIND_DESTDIR"; diff --git a/pkgs/development/ocaml-modules/hex/default.nix b/pkgs/development/ocaml-modules/hex/default.nix index 0131b035970..172eecbe29d 100644 --- a/pkgs/development/ocaml-modules/hex/default.nix +++ b/pkgs/development/ocaml-modules/hex/default.nix @@ -11,8 +11,6 @@ buildDunePackage rec { sha256 = "17hqf7z5afp2z2c55fk5myxkm7cm74259rqm94hcxkqlpdaqhm8h"; }; - unpackCmd = "tar -xjf $curSrc"; - propagatedBuildInputs = [ cstruct ]; doCheck = true; diff --git a/pkgs/development/ocaml-modules/integers/default.nix b/pkgs/development/ocaml-modules/integers/default.nix index f7d22baf3e9..bf2d2dd1e8b 100644 --- a/pkgs/development/ocaml-modules/integers/default.nix +++ b/pkgs/development/ocaml-modules/integers/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation { sha256 = "08b1ljw88ny3l0mdq6xmffjk8anfc77igryva5jz1p6f4f746ywk"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/jsonm/default.nix b/pkgs/development/ocaml-modules/jsonm/default.nix index 0599a5f19fe..ca286ee36f8 100644 --- a/pkgs/development/ocaml-modules/jsonm/default.nix +++ b/pkgs/development/ocaml-modules/jsonm/default.nix @@ -13,8 +13,6 @@ stdenv.mkDerivation { buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ uutf ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = { diff --git a/pkgs/development/ocaml-modules/logs/default.nix b/pkgs/development/ocaml-modules/logs/default.nix index aead4b4756f..4b67b23d97b 100644 --- a/pkgs/development/ocaml-modules/logs/default.nix +++ b/pkgs/development/ocaml-modules/logs/default.nix @@ -16,8 +16,6 @@ stdenv.mkDerivation rec { sha256 = "1khbn7jqpid83zn8rvyh1x1sirls7zc878zj4fz985m5xlsfy853"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg fmt cmdliner lwt ]; propagatedBuildInputs = [ result ]; diff --git a/pkgs/development/ocaml-modules/lru/default.nix b/pkgs/development/ocaml-modules/lru/default.nix index 3e474c5653a..d6ff1721199 100644 --- a/pkgs/development/ocaml-modules/lru/default.nix +++ b/pkgs/development/ocaml-modules/lru/default.nix @@ -9,8 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0bd7js9rrma1fjjjjc3fgr9l5fjbhgihx2nsaf96g2b35iiaimd0"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; propagatedBuildInputs = [ psq ]; diff --git a/pkgs/development/ocaml-modules/mtime/default.nix b/pkgs/development/ocaml-modules/mtime/default.nix index 69921537f5b..b067fd99ded 100644 --- a/pkgs/development/ocaml-modules/mtime/default.nix +++ b/pkgs/development/ocaml-modules/mtime/default.nix @@ -23,8 +23,6 @@ stdenv.mkDerivation { inherit (param) sha256; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ] ++ stdenv.lib.optional jsooSupport js_of_ocaml; diff --git a/pkgs/development/ocaml-modules/nocrypto/default.nix b/pkgs/development/ocaml-modules/nocrypto/default.nix index 67de1863e00..813b4d7f7a4 100644 --- a/pkgs/development/ocaml-modules/nocrypto/default.nix +++ b/pkgs/development/ocaml-modules/nocrypto/default.nix @@ -16,8 +16,6 @@ stdenv.mkDerivation rec { sha256 = "0zshi9hlhcz61n5z1k6fx6rsi0pl4xgahsyl2jp0crqkaf3hqwlg"; }; - unpackCmd = "tar xjf $curSrc"; - patches = [ (fetchpatch { url = "https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/nocrypto/nocrypto.0.5.4-1/files/0001-add-missing-runtime-dependencies-in-_tags.patch"; diff --git a/pkgs/development/ocaml-modules/notty/default.nix b/pkgs/development/ocaml-modules/notty/default.nix index 2dffb472f3e..f273f28a71e 100644 --- a/pkgs/development/ocaml-modules/notty/default.nix +++ b/pkgs/development/ocaml-modules/notty/default.nix @@ -19,8 +19,6 @@ stdenv.mkDerivation rec { sha256 = "0wdfmgx1mz77s7m451vy8r9i4iqwn7s7b39kpbpckf3w9417riq0"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ]; propagatedBuildInputs = [ result uucp uuseg uutf ] ++ optional withLwt lwt; diff --git a/pkgs/development/ocaml-modules/octavius/default.nix b/pkgs/development/ocaml-modules/octavius/default.nix index 57e3c9bfa74..6c2ee821c0d 100644 --- a/pkgs/development/ocaml-modules/octavius/default.nix +++ b/pkgs/development/ocaml-modules/octavius/default.nix @@ -10,8 +10,6 @@ stdenv.mkDerivation { sha256 = "02milzzlr4xk5aymg2fjz27f528d5pyscqvld3q0dm41zcpkz5ml"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/otfm/default.nix b/pkgs/development/ocaml-modules/otfm/default.nix index 05c25c81d5a..081876f7075 100644 --- a/pkgs/development/ocaml-modules/otfm/default.nix +++ b/pkgs/development/ocaml-modules/otfm/default.nix @@ -21,8 +21,6 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ uutf result ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/ppx_blob/default.nix b/pkgs/development/ocaml-modules/ppx_blob/default.nix index b36eaed500f..3b72853e782 100644 --- a/pkgs/development/ocaml-modules/ppx_blob/default.nix +++ b/pkgs/development/ocaml-modules/ppx_blob/default.nix @@ -9,8 +9,6 @@ buildDunePackage rec { sha256 = "1xmslk1mwdzhy1bydgsjlcb7h544c39hvxa8lywp8w72gaggjl16"; }; - unpackCmd = "tar xjf $curSrc"; - buildInputs = [ alcotest ocaml-migrate-parsetree ]; doCheck = true; diff --git a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix index 270afae754b..5d45ee90c2e 100644 --- a/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix +++ b/pkgs/development/ocaml-modules/ppx_gen_rec/default.nix @@ -11,8 +11,6 @@ buildDunePackage rec { sha256 = "0qy0wa3rd5yh1612jijadi1yddfslpsmmmf69phi2dhr3vmkhza7"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml-migrate-parsetree ]; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/psq/default.nix b/pkgs/development/ocaml-modules/psq/default.nix index fc3fa81a02a..08b9c10d982 100644 --- a/pkgs/development/ocaml-modules/psq/default.nix +++ b/pkgs/development/ocaml-modules/psq/default.nix @@ -13,8 +13,6 @@ stdenv.mkDerivation rec { sha256 = "08ghgdivbjrxnaqc3hsb69mr9s2ql5ds0fb97b7z6zimzqibz6lp"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/ptime/default.nix b/pkgs/development/ocaml-modules/ptime/default.nix index b0067d44911..4ac473fef00 100644 --- a/pkgs/development/ocaml-modules/ptime/default.nix +++ b/pkgs/development/ocaml-modules/ptime/default.nix @@ -9,8 +9,6 @@ stdenv.mkDerivation rec { sha256 = "0z2snhda8bg136xkw2msw6k2dz84vb49p8bgzrxfs8mawdlk0kkg"; }; - unpackCmd = "tar -xf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg js_of_ocaml ]; propagatedBuildInputs = [ result ]; diff --git a/pkgs/development/ocaml-modules/react/default.nix b/pkgs/development/ocaml-modules/react/default.nix index 920ee05244a..9d070b962b4 100644 --- a/pkgs/development/ocaml-modules/react/default.nix +++ b/pkgs/development/ocaml-modules/react/default.nix @@ -8,7 +8,6 @@ stdenv.mkDerivation { sha256 = "1aj8w79gdd9xnrbz7s5p8glcb4pmimi8jp9f439dqnf6ih3mqb3v"; }; - unpackCmd = "tar xjf $src"; buildInputs = [ ocaml findlib topkg ocamlbuild ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/rope/default.nix b/pkgs/development/ocaml-modules/rope/default.nix index 9e9ebea6b6a..4353c606d61 100644 --- a/pkgs/development/ocaml-modules/rope/default.nix +++ b/pkgs/development/ocaml-modules/rope/default.nix @@ -8,7 +8,6 @@ let param = sha256 = "06pkbnkad2ck50jn59ggwv154yd9vb01abblihvam6p27m4za1pc"; buildInputs = [ dune ]; extra = { - unpackCmd = "tar -xjf $curSrc"; buildPhase = "dune build -p rope"; inherit (dune) installPhase; }; diff --git a/pkgs/development/ocaml-modules/rresult/default.nix b/pkgs/development/ocaml-modules/rresult/default.nix index 2cb602973f5..270432b86e9 100644 --- a/pkgs/development/ocaml-modules/rresult/default.nix +++ b/pkgs/development/ocaml-modules/rresult/default.nix @@ -8,8 +8,6 @@ stdenv.mkDerivation rec { sha256 = "1k69a3gvrk7f2cshwjzvk7818f0bwxhacgd14wxy6d4gmrggci86"; }; - unpackCmd = "tar xjf $src"; - buildInputs = [ ocaml findlib ocamlbuild topkg ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/topkg/default.nix b/pkgs/development/ocaml-modules/topkg/default.nix index 3ff641ff93e..3e6b78a7171 100644 --- a/pkgs/development/ocaml-modules/topkg/default.nix +++ b/pkgs/development/ocaml-modules/topkg/default.nix @@ -32,7 +32,6 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib ocamlbuild ]; propagatedBuildInputs = [ result ]; - unpackCmd = "tar xjf ${src}"; buildPhase = "${run} build"; createFindlibDestdir = true; installPhase = "${opaline}/bin/opaline -prefix $out -libdir $OCAMLFIND_DESTDIR"; diff --git a/pkgs/development/ocaml-modules/tsdl/default.nix b/pkgs/development/ocaml-modules/tsdl/default.nix index 4230d098e0d..230aab2617f 100644 --- a/pkgs/development/ocaml-modules/tsdl/default.nix +++ b/pkgs/development/ocaml-modules/tsdl/default.nix @@ -22,8 +22,6 @@ stdenv.mkDerivation { buildInputs = [ ocaml findlib ocamlbuild topkg result ocb-stubblr ]; propagatedBuildInputs = [ SDL2 ctypes ]; - unpackCmd = "tar xjf $src"; - preConfigure = '' # The following is done to avoid an additional dependency (ncurses) # due to linking in the custom bytecode runtime. Instead, just diff --git a/pkgs/development/ocaml-modules/uchar/default.nix b/pkgs/development/ocaml-modules/uchar/default.nix index 8fddf883da5..c943d3ce35a 100644 --- a/pkgs/development/ocaml-modules/uchar/default.nix +++ b/pkgs/development/ocaml-modules/uchar/default.nix @@ -8,7 +8,6 @@ stdenv.mkDerivation { sha256 = "1w2saw7zanf9m9ffvz2lvcxvlm118pws2x1wym526xmydhqpyfa7"; }; - unpackCmd = "tar xjf $src"; buildInputs = [ ocaml ocamlbuild findlib opaline ]; buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true"; installPhase = "opaline -libdir $OCAMLFIND_DESTDIR"; diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix index a8b664b0720..6073411a24d 100644 --- a/pkgs/development/ocaml-modules/uri/default.nix +++ b/pkgs/development/ocaml-modules/uri/default.nix @@ -11,8 +11,6 @@ buildDunePackage rec { sha256 = "1m845rwd70wi4iijkrigyz939m1x84ba70hvv0d9sgk6971w4kz0"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ounit ]; propagatedBuildInputs = [ ppx_sexp_conv re sexplib stringext ]; doCheck = true; diff --git a/pkgs/development/ocaml-modules/uucd/default.nix b/pkgs/development/ocaml-modules/uucd/default.nix index 60429ca4b40..683ace8cbc5 100644 --- a/pkgs/development/ocaml-modules/uucd/default.nix +++ b/pkgs/development/ocaml-modules/uucd/default.nix @@ -15,8 +15,6 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib ocamlbuild topkg ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; propagatedBuildInputs = [ xmlm ]; diff --git a/pkgs/development/ocaml-modules/uucp/default.nix b/pkgs/development/ocaml-modules/uucp/default.nix index 6e61d39fe8e..1d3e9f283ce 100644 --- a/pkgs/development/ocaml-modules/uucp/default.nix +++ b/pkgs/development/ocaml-modules/uucp/default.nix @@ -21,8 +21,6 @@ stdenv.mkDerivation { propagatedBuildInputs = [ uchar ]; - unpackCmd = "tar xjf $src"; - buildPhase = "${topkg.buildPhase} --with-cmdliner false"; inherit (topkg) installPhase; diff --git a/pkgs/development/ocaml-modules/uuidm/default.nix b/pkgs/development/ocaml-modules/uuidm/default.nix index b295143c0bc..0c45e6c8af1 100644 --- a/pkgs/development/ocaml-modules/uuidm/default.nix +++ b/pkgs/development/ocaml-modules/uuidm/default.nix @@ -2,14 +2,12 @@ stdenv.mkDerivation rec { version = "0.9.6"; - name = "uuidm-${version}"; + name = "uuidm-${version}"; src = fetchurl { url = "http://erratique.ch/software/uuidm/releases/uuidm-${version}.tbz"; sha256 = "0hz4fdx0x16k0pw9995vkz5d1hmzz6b16wck9li399rcbfnv5jlc"; }; - unpackCmd = "tar -xf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ]; inherit (topkg) buildPhase installPhase; diff --git a/pkgs/development/ocaml-modules/uunf/default.nix b/pkgs/development/ocaml-modules/uunf/default.nix index 4b0ce9e899c..e6ecec3145e 100644 --- a/pkgs/development/ocaml-modules/uunf/default.nix +++ b/pkgs/development/ocaml-modules/uunf/default.nix @@ -19,8 +19,6 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ uchar ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/uuseg/default.nix b/pkgs/development/ocaml-modules/uuseg/default.nix index a0ed74f7cda..df56e904ab6 100644 --- a/pkgs/development/ocaml-modules/uuseg/default.nix +++ b/pkgs/development/ocaml-modules/uuseg/default.nix @@ -18,8 +18,6 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib ocamlbuild cmdliner topkg uutf ]; propagatedBuildInputs = [ uucp uchar ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/uutf/default.nix b/pkgs/development/ocaml-modules/uutf/default.nix index 95ec93d8584..9b6c1868ad3 100644 --- a/pkgs/development/ocaml-modules/uutf/default.nix +++ b/pkgs/development/ocaml-modules/uutf/default.nix @@ -16,8 +16,6 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ]; propagatedBuildInputs = [ uchar ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = with stdenv.lib; { diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix index 582b2dc8a2c..5e0d715b0be 100644 --- a/pkgs/development/ocaml-modules/vg/default.nix +++ b/pkgs/development/ocaml-modules/vg/default.nix @@ -32,8 +32,6 @@ stdenv.mkDerivation rec { ++ optionals pdfBackend [ uutf otfm ] ++ optionals htmlcBackend [ js_of_ocaml js_of_ocaml-ocamlbuild js_of_ocaml-ppx ]; - unpackCmd = "tar xjf $src"; - buildPhase = topkg.buildPhase + " --with-uutf ${boolToString pdfBackend}" + " --with-otfm ${boolToString pdfBackend}" diff --git a/pkgs/development/ocaml-modules/wtf8/default.nix b/pkgs/development/ocaml-modules/wtf8/default.nix index 1c105fbc025..7f3686abb51 100644 --- a/pkgs/development/ocaml-modules/wtf8/default.nix +++ b/pkgs/development/ocaml-modules/wtf8/default.nix @@ -11,8 +11,6 @@ buildDunePackage rec { sha256 = "1msg3vycd3k8qqj61sc23qks541cxpb97vrnrvrhjnqxsqnh6ygq"; }; - unpackCmd = "tar xjf $src"; - meta = with stdenv.lib; { homepage = https://github.com/flowtype/ocaml-wtf8; description = "WTF-8 is a superset of UTF-8 that allows unpaired surrogates."; diff --git a/pkgs/development/ocaml-modules/x509/default.nix b/pkgs/development/ocaml-modules/x509/default.nix index 44a25865c1a..8d4bd4c82b3 100644 --- a/pkgs/development/ocaml-modules/x509/default.nix +++ b/pkgs/development/ocaml-modules/x509/default.nix @@ -12,8 +12,6 @@ stdenv.mkDerivation rec { sha256 = "1c62mw9rnzq0rs3ihbhfs18nv4mdzwag7893hlqgji3wmaai70pk"; }; - unpackCmd = "tar -xjf $curSrc"; - buildInputs = [ ocaml findlib ocamlbuild topkg ppx_sexp_conv ounit cstruct-unix ]; propagatedBuildInputs = [ asn1-combinators astring nocrypto ]; diff --git a/pkgs/development/ocaml-modules/xmlm/default.nix b/pkgs/development/ocaml-modules/xmlm/default.nix index a1765296d57..d3166d4cd73 100644 --- a/pkgs/development/ocaml-modules/xmlm/default.nix +++ b/pkgs/development/ocaml-modules/xmlm/default.nix @@ -19,8 +19,6 @@ stdenv.mkDerivation rec { buildInputs = [ ocaml findlib ocamlbuild topkg ]; - unpackCmd = "tar xjf $src"; - inherit (topkg) buildPhase installPhase; meta = with stdenv.lib; { From c12f75649ed05815141cc208b3f2fa61e110917a Mon Sep 17 00:00:00 2001 From: Antoine Eiche Date: Mon, 30 Apr 2018 15:01:30 +0200 Subject: [PATCH 68/68] dockerTools.buildImageWithNixDb: simplifications and switch to closureInfo Since Nix 2 is now the stable Nix version, we can use closureInfo which simplifies the Nix database initialisation (size and hash are included in the "dump"). --- pkgs/build-support/docker/default.nix | 35 +++++---------------------- 1 file changed, 6 insertions(+), 29 deletions(-) diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix index 2d6d6c1fc91..890f64a9d3b 100644 --- a/pkgs/build-support/docker/default.nix +++ b/pkgs/build-support/docker/default.nix @@ -11,7 +11,6 @@ pkgs, pigz, nix, - perl, runCommand, rsync, shadow, @@ -23,6 +22,7 @@ referencesByPopularity, writeScript, writeText, + closureInfo }: # WARNING: this API is unstable and may be subject to backwards-incompatible changes in the future. @@ -261,19 +261,6 @@ rec { ${text} ''; - nixRegistration = contents: runCommand "nix-registration" { - buildInputs = [ nix perl ]; - # For obtaining the closure of `contents'. - exportReferencesGraph = - let contentsList = if builtins.isList contents then contents else [ contents ]; - in map (x: [("closure-" + baseNameOf x) x]) contentsList; - } - '' - mkdir $out - printRegistration=1 perl ${pkgs.pathsFromGraph} closure-* > $out/db.dump - perl ${pkgs.pathsFromGraph} closure-* > $out/storePaths - ''; - # Create $maxLayers worth of Docker Layers, one layer per store path # unless there are more paths than $maxLayers. In that case, create # $maxLayers-1 for the most popular layers, and smush the remainaing @@ -795,29 +782,19 @@ rec { # the container. # Be careful since this doesn't work well with multilayer. buildImageWithNixDb = args@{ contents ? null, extraCommands ? "", ... }: - buildImage (args // { + let contentsList = if builtins.isList contents then contents else [ contents ]; + in buildImage (args // { extraCommands = '' echo "Generating the nix database..." echo "Warning: only the database of the deepest Nix layer is loaded." echo " If you want to use nix commands in the container, it would" echo " be better to only have one layer that contains a nix store." - # This requires Nix 1.12 or higher - export NIX_REMOTE=local?root=$PWD - ${nix}/bin/nix-store --load-db < ${nixRegistration contents}/db.dump - # We fill the store in order to run the 'verify' command that - # generates hash and size of output paths. - # Note when Nix 1.12 is be the stable one, the database dump - # generated by the exportReferencesGraph function will - # contains sha and size. See - # https://github.com/NixOS/nix/commit/c2b0d8749f7e77afc1c4b3e8dd36b7ee9720af4a - storePaths=$(cat ${nixRegistration contents}/storePaths) - echo "Copying everything to /nix/store (will take a while)..." - cp -prd $storePaths nix/store/ - ${nix}/bin/nix-store --verify --check-contents + export NIX_REMOTE=local?root=$PWD + ${nix}/bin/nix-store --load-db < ${closureInfo {rootPaths = contentsList;}}/registration mkdir -p nix/var/nix/gcroots/docker/ - for i in ${lib.concatStringsSep " " contents}; do + for i in ${lib.concatStringsSep " " contentsList}; do ln -s $i nix/var/nix/gcroots/docker/$(basename $i) done; '' + extraCommands;