about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2018-02-20 20:33:17 +0100
committerVladimír Čunát <vcunat@gmail.com>2018-02-20 20:33:40 +0100
commit1d15dadbec4f3d0a1f98e877e77518afe9245148 (patch)
tree76b034c0dbd376b7e588802a9946154499631258 /pkgs
parent43a88e3d8a68a008abea0bca0b17805aa4910764 (diff)
parentb60ef32617383e78c32ca3d69754df5a5f550183 (diff)
Merge branch 'master' into staging
Larger rebuilds from master.
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/go-ethereum.nix4
-rw-r--r--pkgs/applications/audio/radiotray-ng/default.nix13
-rw-r--r--pkgs/applications/audio/sayonara/default.nix45
-rw-r--r--pkgs/applications/audio/zam-plugins/default.nix10
-rw-r--r--pkgs/applications/backup/crashplan/crashplan-small-business.nix102
-rw-r--r--pkgs/applications/editors/kakoune/default.nix8
-rw-r--r--pkgs/applications/misc/dockbarx/default.nix4
-rw-r--r--pkgs/applications/misc/jekyll/Gemfile7
-rw-r--r--pkgs/applications/misc/jekyll/Gemfile.lock59
-rw-r--r--pkgs/applications/misc/jekyll/basic/Gemfile10
-rw-r--r--pkgs/applications/misc/jekyll/basic/Gemfile.lock101
-rw-r--r--pkgs/applications/misc/jekyll/basic/gemset.nix326
-rw-r--r--pkgs/applications/misc/jekyll/default.nix33
-rw-r--r--pkgs/applications/misc/jekyll/full/Gemfile30
-rw-r--r--pkgs/applications/misc/jekyll/full/Gemfile.lock160
-rw-r--r--pkgs/applications/misc/jekyll/full/gemset.nix547
-rw-r--r--pkgs/applications/misc/jekyll/gemset.nix183
-rw-r--r--pkgs/applications/networking/cluster/flink/default.nix9
-rw-r--r--pkgs/applications/networking/cluster/helm/default.nix6
-rw-r--r--pkgs/applications/networking/remote/xrdp/default.nix8
-rw-r--r--pkgs/applications/virtualization/qemu/riscv-initrd.patch98
-rw-r--r--pkgs/applications/virtualization/qemu/riscv.nix2
-rw-r--r--pkgs/build-support/fetchurl/default.nix33
-rw-r--r--pkgs/build-support/release/debian-build.nix2
-rw-r--r--pkgs/build-support/rust/build-rust-crate.nix296
-rw-r--r--pkgs/build-support/rust/carnix.nix16
-rw-r--r--pkgs/build-support/rust/default.nix30
-rw-r--r--pkgs/data/fonts/babelstone-han/default.nix6
-rw-r--r--pkgs/data/misc/hackage/default.nix4
-rw-r--r--pkgs/development/compilers/haxe/default.nix4
-rw-r--r--pkgs/development/compilers/llvm/4/clang/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/4/dynamiclibrary-musl.patch33
-rw-r--r--pkgs/development/compilers/llvm/4/libc++/default.nix12
-rw-r--r--pkgs/development/compilers/llvm/4/libc++/max_align_t.patch54
-rw-r--r--pkgs/development/compilers/llvm/4/libc++abi.nix3
-rw-r--r--pkgs/development/compilers/llvm/4/llvm.nix11
-rw-r--r--pkgs/development/compilers/llvm/5/clang/default.nix2
-rw-r--r--pkgs/development/compilers/llvm/5/libc++/default.nix15
-rw-r--r--pkgs/development/compilers/llvm/5/libc++abi.nix2
-rw-r--r--pkgs/development/compilers/llvm/5/llvm.nix13
-rw-r--r--pkgs/development/compilers/llvm/TLI-musl.patch35
-rw-r--r--pkgs/development/compilers/llvm/libcxx-0001-musl-hacks.patch39
-rw-r--r--pkgs/development/compilers/mono/5.8.nix8
-rw-r--r--pkgs/development/compilers/rust/binaryBuild.nix14
-rw-r--r--pkgs/development/compilers/rust/bootstrap.nix16
-rw-r--r--pkgs/development/compilers/rust/cargo.nix20
-rw-r--r--pkgs/development/compilers/rust/default.nix23
-rw-r--r--pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch6
-rw-r--r--pkgs/development/compilers/rust/rustc.nix19
-rw-r--r--pkgs/development/compilers/solc/default.nix14
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix3
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix429
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml32
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix3408
-rw-r--r--pkgs/development/interpreters/dart/default.nix53
-rw-r--r--pkgs/development/interpreters/ruby/default.nix7
-rw-r--r--pkgs/development/interpreters/ruby/rubygems-src.nix4
-rw-r--r--pkgs/development/libraries/aspell/dictionaries.nix152
-rw-r--r--pkgs/development/libraries/mbedtls/darwin_dylib.patch28
-rw-r--r--pkgs/development/libraries/mbedtls/default.nix24
-rw-r--r--pkgs/development/libraries/quickder/default.nix53
-rw-r--r--pkgs/development/ocaml-modules/bitv/default.nix27
-rw-r--r--pkgs/development/python-modules/asn1ate/default.nix11
-rw-r--r--pkgs/development/python-modules/faulthandler/default.nix14
-rw-r--r--pkgs/development/python-modules/pynacl/default.nix8
-rw-r--r--pkgs/development/python-modules/pypandoc/default.nix3
-rw-r--r--pkgs/development/python-modules/pyrtlsdr/default.nix22
-rw-r--r--pkgs/development/ruby-modules/gem-config/default.nix8
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/asn2quickder/default.nix29
-rw-r--r--pkgs/development/tools/build-managers/arpa2cm/default.nix22
-rw-r--r--pkgs/development/tools/build-managers/gnumake/4.2/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/gnumake/4.2/head.nix69
-rw-r--r--pkgs/development/tools/build-managers/gnumake/4.2/impure-dirs-head.patch31
-rw-r--r--pkgs/development/tools/misc/binutils/2.30.nix131
-rw-r--r--pkgs/games/multimc/default.nix46
-rw-r--r--pkgs/games/xjump/darwin.patch21
-rw-r--r--pkgs/games/xjump/default.nix27
-rw-r--r--pkgs/misc/drivers/foo2zjs/default.nix4
-rw-r--r--pkgs/misc/riscv-pk/default.nix11
-rw-r--r--pkgs/misc/vim-plugins/default.nix10
-rw-r--r--pkgs/os-specific/linux/kernel/linux-riscv.nix18
-rw-r--r--pkgs/os-specific/linux/kernel/manual-config.nix10
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix30
-rw-r--r--pkgs/os-specific/linux/kernel/perf.nix13
-rw-r--r--pkgs/os-specific/linux/kernel/riscv-initrd-free.patch21
-rw-r--r--pkgs/os-specific/linux/kernel/riscv-initrd.patch48
-rw-r--r--pkgs/os-specific/linux/kernel/riscv-install.patch65
-rw-r--r--pkgs/os-specific/linux/kernel/riscv-irq-busy.patch42
-rw-r--r--pkgs/os-specific/linux/kernel/riscv-modules.patch11
-rw-r--r--pkgs/os-specific/linux/powertop/default.nix2
-rw-r--r--pkgs/os-specific/linux/systemd/cryptsetup-generator.nix14
-rw-r--r--pkgs/servers/matrix-synapse/default.nix10
-rw-r--r--pkgs/servers/varnish/default.nix8
-rw-r--r--pkgs/servers/varnish/modules.nix6
-rw-r--r--pkgs/servers/varnish/rtstatus.nix1
-rw-r--r--pkgs/stdenv/darwin/default.nix1
-rw-r--r--pkgs/stdenv/freebsd/default.nix3
-rw-r--r--pkgs/stdenv/generic/check-meta.nix2
-rw-r--r--pkgs/stdenv/generic/make-derivation.nix4
-rw-r--r--pkgs/stdenv/native/default.nix2
-rw-r--r--pkgs/tools/admin/docker-credential-gcr/default.nix28
-rw-r--r--pkgs/tools/backup/attic/default.nix56
-rw-r--r--pkgs/tools/backup/restic/default.nix4
-rw-r--r--pkgs/tools/cd-dvd/ecm-tools/default.nix29
-rw-r--r--pkgs/tools/filesystems/idsk/default.nix30
-rw-r--r--pkgs/tools/graphics/pngquant/default.nix4
-rw-r--r--pkgs/tools/misc/watchexec/default.nix25
-rw-r--r--pkgs/tools/networking/acme-client/default.nix38
-rw-r--r--pkgs/tools/package-management/nix/default.nix6
-rw-r--r--pkgs/tools/security/afl/default.nix7
-rw-r--r--pkgs/tools/security/secp256k1/default.nix7
-rw-r--r--pkgs/tools/text/replace/default.nix2
-rw-r--r--pkgs/top-level/all-packages.nix74
-rw-r--r--pkgs/top-level/ocaml-packages.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix39
-rw-r--r--pkgs/top-level/release.nix8
117 files changed, 5365 insertions, 2497 deletions
diff --git a/pkgs/applications/altcoins/go-ethereum.nix b/pkgs/applications/altcoins/go-ethereum.nix
index ca28dfb76b80a..f35213a085b17 100644
--- a/pkgs/applications/altcoins/go-ethereum.nix
+++ b/pkgs/applications/altcoins/go-ethereum.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "go-ethereum-${version}";
-  version = "1.7.3";
+  version = "1.8.1";
   goPackagePath = "github.com/ethereum/go-ethereum";
 
   # Fix for usb-related segmentation faults on darwin
@@ -16,7 +16,7 @@ buildGoPackage rec {
     owner = "ethereum";
     repo = "go-ethereum";
     rev = "v${version}";
-    sha256 = "1w6rbq2qpjyf2v9mr18yiv2af1h2sgyvgrdk4bd8ixgl3qcd5b11";
+    sha256 = "0k7ly9cw68ranksa1fdn7v2lncmlqgabw3qiiyqya2xz3s4aazlf";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/audio/radiotray-ng/default.nix b/pkgs/applications/audio/radiotray-ng/default.nix
index e075d68cd285e..88db09fac86b8 100644
--- a/pkgs/applications/audio/radiotray-ng/default.nix
+++ b/pkgs/applications/audio/radiotray-ng/default.nix
@@ -40,13 +40,13 @@ let
 in
 stdenv.mkDerivation rec {
   name = "radiotray-ng-${version}";
-  version = "0.2.0";
+  version = "0.2.1";
 
   src = fetchFromGitHub {
     owner = "ebruck";
     repo = "radiotray-ng";
     rev = "v${version}";
-    sha256 = "12mhi0q137cjdpmpczvrcr7szq1ja1r8bm0gh03b925y8xyrqp5z";
+    sha256 = "0hqg6vn8hv5pic96klf1d9vj8fibrgiqnqb5vwrg3wvakx0y32kr";
   };
 
   nativeBuildInputs = [ cmake pkgconfig wrapGAppsHook makeWrapper ];
@@ -63,10 +63,9 @@ stdenv.mkDerivation rec {
     ++ pythonInputs;
 
   prePatch = ''
-    substituteInPlace debian/CMakeLists.txt \
-      --replace /usr $out
-    substituteInPlace include/radiotray-ng/common.hpp \
-      --replace /usr $out
+    for x in debian/CMakeLists.txt include/radiotray-ng/common.hpp data/*.desktop; do
+      substituteInPlace $x --replace /usr $out
+    done
 
     # We don't find the radiotray-ng-notification icon otherwise
     substituteInPlace data/radiotray-ng.desktop \
@@ -75,6 +74,8 @@ stdenv.mkDerivation rec {
       --replace radiotray-ng-notification radiotray-ng-on
   '';
 
+  cmakeFlags = stdenv.lib.optional doCheck "-DBUILD_TESTS=ON";
+
   enableParallelBuilding = true;
 
   doCheck = true;
diff --git a/pkgs/applications/audio/sayonara/default.nix b/pkgs/applications/audio/sayonara/default.nix
new file mode 100644
index 0000000000000..1bf1a8b2c49e2
--- /dev/null
+++ b/pkgs/applications/audio/sayonara/default.nix
@@ -0,0 +1,45 @@
+{ stdenv, fetchurl, cmake, qt5, zlib, taglib, pkgconfig, pcre, gst_all_1 }:
+
+let
+  version = "1.0.0-git5-20180115";
+in
+stdenv.mkDerivation {
+  name = "sayonara-player-${version}";
+
+  src = fetchurl {
+    url = "https://sayonara-player.com/sw/sayonara-player-${version}.tar.gz";
+    sha256 = "1fl7zplnrrvbv1xm4g348bpd46jj39jvbm808hyjjq92i64wqg37";
+  };
+
+  nativeBuildInputs = [ cmake pkgconfig ];
+  buildInputs = with qt5; with gst_all_1;
+      [ gstreamer gst-plugins-base gst-plugins-good gst-plugins-ugly
+        pcre qtbase qttools taglib zlib
+      ];
+
+  # CMake Error at src/GUI/Resources/Icons/cmake_install.cmake:49 (file):
+  #   file cannot create directory: /usr/share/icons.  Maybe need administrative
+  #   privileges.
+  # Call Stack (most recent call first):
+  #   src/GUI/Resources/cmake_install.cmake:50 (include)
+  #   src/GUI/cmake_install.cmake:50 (include)
+  #   src/cmake_install.cmake:59 (include)
+  #   cmake_install.cmake:42 (include)
+  postPatch = ''
+    substituteInPlace src/GUI/Resources/Icons/CMakeLists.txt \
+      --replace "/usr/share" "$out/share"
+  '';
+
+  # [ 65%] Building CXX object src/Components/Engine/CMakeFiles/say_comp_engine.dir/AbstractPipeline.cpp.o
+  # /tmp/nix-build-sayonara-player-1.0.0-git5-20180115.drv-0/sayonara-player/src/Components/Engine/AbstractPipeline.cpp:28:32: fatal error: gst/app/gstappsink.h: No such file or directory
+  #  #include <gst/app/gstappsink.h>
+  NIX_CFLAGS_COMPILE = "-I${gst_all_1.gst-plugins-base.dev}/include/gstreamer-1.0";
+
+  meta = with stdenv.lib;
+    { description = "Sayonara music player";
+      homepage = https://sayonara-player.com/;
+      license = licenses.gpl3;
+      platforms = qt5.qtbase.meta.platforms;
+      maintainers = [ maintainers.deepfire ];
+    };
+}
diff --git a/pkgs/applications/audio/zam-plugins/default.nix b/pkgs/applications/audio/zam-plugins/default.nix
index f81aad4e2af18..e9a445ec14275 100644
--- a/pkgs/applications/audio/zam-plugins/default.nix
+++ b/pkgs/applications/audio/zam-plugins/default.nix
@@ -1,18 +1,18 @@
-{ stdenv, fetchgit , boost, libX11, mesa, liblo, libjack2, ladspaH, lv2, pkgconfig, rubberband, libsndfile }:
+{ stdenv, fetchgit , boost, libX11, mesa, liblo, libjack2, ladspaH, lv2, pkgconfig, rubberband, libsndfile, fftwFloat, libsamplerate }:
 
 stdenv.mkDerivation rec {
   name = "zam-plugins-${version}";
-  version = "3.9";
+  version = "3.10";
 
   src = fetchgit {
     url = "https://github.com/zamaudio/zam-plugins.git";
     deepClone = true;
-    rev = "4976cf204074c1dfaf344821e83e8d896b35107d";
-    sha256 = "1xgwl51sf2hgc5ikcnycyxaw9vy82lrcswn07b6av6i67qclm8f8";
+    rev = "a3321af1892a6994d64fb705e48ae8adf8d7df20";
+    sha256 = "0yqrs21ph2lx00p0jlc70qkmzfrnf9ihg1r3i9j5n2r903ljdg5p";
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 rubberband libsndfile ];
+  buildInputs = [ boost libX11 mesa liblo libjack2 ladspaH lv2 rubberband libsndfile fftwFloat libsamplerate ];
 
   patchPhase = ''
     patchShebangs ./dpf/utils/generate-ttl.sh
diff --git a/pkgs/applications/backup/crashplan/crashplan-small-business.nix b/pkgs/applications/backup/crashplan/crashplan-small-business.nix
new file mode 100644
index 0000000000000..cfcab1eea3178
--- /dev/null
+++ b/pkgs/applications/backup/crashplan/crashplan-small-business.nix
@@ -0,0 +1,102 @@
+{ stdenv, fetchurl, makeWrapper, getopt, jre, cpio, gawk, gnugrep, gnused, 
+  procps, which, gtk2, atk, glib, pango, gdk_pixbuf, cairo, freetype, 
+  fontconfig, dbus, gconf, nss, nspr, alsaLib, cups, expat, libudev, 
+  libX11, libxcb, libXi, libXcursor, libXdamage, libXrandr, libXcomposite, 
+  libXext, libXfixes, libXrender, libXtst, libXScrnSaver, nodePackages,
+  maxRam ? "1024m" }:
+
+stdenv.mkDerivation rec {
+  version = "6.6.0";
+  rev = "1506661200660_4347";
+  pname = "CrashPlanSmb";
+  name = "${pname}_${version}_${rev}";
+  
+  src = fetchurl {
+    url = "https://web-eam-msp.crashplanpro.com/client/installers/${name}_Linux.tgz";
+    sha256 = "1zzx60fpmi2nlzpq80x4hfgspsrgd7ycfcvc6w391wxr0qzf2i9k";
+  };
+
+  nativeBuildInputs = [ makeWrapper cpio nodePackages.asar ];
+  buildInputs = [ getopt which ];
+
+  vardir = "/var/lib/crashplan";
+  manifestdir = "${vardir}/manifest";
+  
+  postPatch = ''
+    # patch scripts/CrashPlanEngine
+    substituteInPlace scripts/CrashPlanEngine \
+      --replace /bin/ps ${procps}/bin/ps \
+      --replace awk ${gawk}/bin/awk \
+      --replace '`sed' '`${gnused}/bin/sed' \
+      --replace grep ${gnugrep}/bin/grep \
+      --replace TARGETDIR/log VARDIR/log \
+      --replace TARGETDIR/\''${NAME} VARDIR/\''${NAME} \
+      --replace \$TARGETDIR/bin/run.conf $out/bin/run.conf \
+      --replace \$VARDIR ${vardir}
+
+    # patch scripts/CrashPlanDesktop
+    substituteInPlace scripts/CrashPlanDesktop \
+      --replace awk ${gawk}/bin/awk \
+      --replace "\"\$SCRIPTDIR/..\"" "$out" \
+      --replace "\$(dirname \$SCRIPT)" "$out" \
+      --replace "\''${TARGETDIR}/log" ${vardir}/log \
+      --replace "\''${TARGETDIR}" "$out"
+  '';
+
+  installPhase = ''
+    mkdir $out
+    zcat -v ${pname}_${version}.cpi | (cd $out; cpio -i -d -v --no-preserve-owner)
+
+    install -D -m 755 scripts/CrashPlanDesktop $out/bin/CrashPlanDesktop
+    install -D -m 755 scripts/CrashPlanEngine $out/bin/CrashPlanEngine
+    install -D -m 644 scripts/run.conf $out/bin/run.conf
+    install -D -m 644 scripts/CrashPlan.desktop $out/share/applications/CrashPlan.desktop
+
+    # unpack, patch and repack app.asar to stop electron from creating /usr/local/crashplan/log to store the ui logs.
+    asar e $out/app.asar $out/app.asar-unpacked
+    rm -v $out/app.asar
+    substituteInPlace $out/app.asar-unpacked/shared_modules/shell/platform_paths.js \
+      --replace "getLogFileParentPath();" "\"$vardir/log\";"
+    asar p $out/app.asar-unpacked $out/app.asar
+
+    mv -v $out/*.asar $out/electron/resources
+    chmod 755 "$out/electron/crashplan"
+
+    rm -r $out/log
+    mv -v $out/conf $out/conf.template
+    ln -s $vardir/log $out/log
+    ln -s $vardir/cache $out/cache
+    ln -s $vardir/conf $out/conf
+
+    substituteInPlace $out/bin/run.conf \
+      --replace "-Xmx1024m" "-Xmx${maxRam}"
+
+    echo "JAVACOMMON=${jre}/bin/java" > $out/install.vars
+    echo "APP_BASENAME=CrashPlan" >> $out/install.vars
+    echo "TARGETDIR=$out" >> $out/install.vars
+    echo "BINSDIR=$out/bin" >> $out/install.vars
+    echo "MANIFESTDIR=${manifestdir}" >> $out/install.vars
+    echo "VARDIR=${vardir}" >> $out/install.vars
+    echo "INITDIR=" >> $out/install.vars
+    echo "RUNLVLDIR=" >> $out/install.vars
+    echo "INSTALLDATE=" >> $out/install.vars
+
+  '';
+
+  postFixup = ''
+    patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 $out/electron/crashplan
+    wrapProgram $out/bin/CrashPlanDesktop --prefix LD_LIBRARY_PATH ":" "${stdenv.lib.makeLibraryPath [ 
+      stdenv.cc.cc.lib gtk2 atk glib pango gdk_pixbuf cairo freetype 
+      fontconfig dbus gconf nss nspr alsaLib cups expat libudev 
+      libX11 libxcb libXi libXcursor libXdamage libXrandr libXcomposite 
+      libXext libXfixes libXrender libXtst libXScrnSaver]}"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "An online backup solution";
+    homepage = http://www.crashplan.com/business/;
+    license = licenses.unfree;
+    maintainers = with maintainers; [ xvapx ];
+  };
+
+}
\ No newline at end of file
diff --git a/pkgs/applications/editors/kakoune/default.nix b/pkgs/applications/editors/kakoune/default.nix
index dae30c5ac0c25..404160668b459 100644
--- a/pkgs/applications/editors/kakoune/default.nix
+++ b/pkgs/applications/editors/kakoune/default.nix
@@ -4,15 +4,15 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "kakoune-unstable-${version}";
-  version = "2017-04-12";
+  version = "2018-02-15";
   src = fetchFromGitHub {
     repo = "kakoune";
     owner = "mawww";
-    rev = "7482d117cc85523e840dff595134dcb9cdc62207";
-    sha256 = "08j611y192n9vln9i94ldlvz3k0sg79dkmfc0b1vczrmaxhpgpfh";
+    rev = "f5e39972eb525166dc5b1d963067f79990991a75";
+    sha256 = "160a302xg6nfzx49dkis6ij20kyzr63kxvcv8ld3l07l8k69g80r";
   };
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ ncurses boost asciidoc docbook_xsl libxslt ];
+  buildInputs = [ ncurses asciidoc docbook_xsl libxslt ];
 
   postPatch = ''
     export PREFIX=$out
diff --git a/pkgs/applications/misc/dockbarx/default.nix b/pkgs/applications/misc/dockbarx/default.nix
index cfe76701cebbd..3888c4ce0a0db 100644
--- a/pkgs/applications/misc/dockbarx/default.nix
+++ b/pkgs/applications/misc/dockbarx/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchFromGitHub, pythonPackages, gnome2, keybinder }:
 
 pythonPackages.buildPythonApplication rec {
-  ver = "0.92";
+  ver = "0.93";
   name = "dockbarx-${ver}";
 
   src = fetchFromGitHub {
     owner = "M7S";
     repo = "dockbarx";
     rev = ver;
-    sha256 = "17n7jc3bk3f2i0i1ddpp05bakifc8y5xppads7ihpkj3qw9g35vl";
+    sha256 = "1h1g2vag5vnx87sa1f0qi8rq7wlr2ymvkrdr08kk7cma4wk0x6hg";
   };
 
   postPatch = ''
diff --git a/pkgs/applications/misc/jekyll/Gemfile b/pkgs/applications/misc/jekyll/Gemfile
deleted file mode 100644
index 97ebb9705bd68..0000000000000
--- a/pkgs/applications/misc/jekyll/Gemfile
+++ /dev/null
@@ -1,7 +0,0 @@
-source 'https://rubygems.org'
-gem 'jekyll'
-gem 'jekyll-feed'
-gem 'jekyll-paginate'
-gem 'rdiscount'
-gem 'RedCloth'
-gem 'minima'
diff --git a/pkgs/applications/misc/jekyll/Gemfile.lock b/pkgs/applications/misc/jekyll/Gemfile.lock
deleted file mode 100644
index da4be83382fb3..0000000000000
--- a/pkgs/applications/misc/jekyll/Gemfile.lock
+++ /dev/null
@@ -1,59 +0,0 @@
-GEM
-  remote: https://rubygems.org/
-  specs:
-    RedCloth (4.3.2)
-    addressable (2.5.0)
-      public_suffix (~> 2.0, >= 2.0.2)
-    colorator (1.1.0)
-    ffi (1.9.18)
-    forwardable-extended (2.6.0)
-    jekyll (3.4.1)
-      addressable (~> 2.4)
-      colorator (~> 1.0)
-      jekyll-sass-converter (~> 1.0)
-      jekyll-watch (~> 1.1)
-      kramdown (~> 1.3)
-      liquid (~> 3.0)
-      mercenary (~> 0.3.3)
-      pathutil (~> 0.9)
-      rouge (~> 1.7)
-      safe_yaml (~> 1.0)
-    jekyll-feed (0.9.1)
-      jekyll (~> 3.3)
-    jekyll-paginate (1.1.0)
-    jekyll-sass-converter (1.5.0)
-      sass (~> 3.4)
-    jekyll-watch (1.5.0)
-      listen (~> 3.0, < 3.1)
-    kramdown (1.13.2)
-    liquid (3.0.6)
-    listen (3.0.8)
-      rb-fsevent (~> 0.9, >= 0.9.4)
-      rb-inotify (~> 0.9, >= 0.9.7)
-    mercenary (0.3.6)
-    minima (2.1.0)
-      jekyll (~> 3.3)
-    pathutil (0.14.0)
-      forwardable-extended (~> 2.6)
-    public_suffix (2.0.5)
-    rb-fsevent (0.9.8)
-    rb-inotify (0.9.8)
-      ffi (>= 0.5.0)
-    rdiscount (2.2.0.1)
-    rouge (1.11.1)
-    safe_yaml (1.0.4)
-    sass (3.4.23)
-
-PLATFORMS
-  ruby
-
-DEPENDENCIES
-  RedCloth
-  jekyll
-  jekyll-feed
-  jekyll-paginate
-  minima
-  rdiscount
-
-BUNDLED WITH
-   1.14.4
diff --git a/pkgs/applications/misc/jekyll/basic/Gemfile b/pkgs/applications/misc/jekyll/basic/Gemfile
new file mode 100644
index 0000000000000..2d3446a811346
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/basic/Gemfile
@@ -0,0 +1,10 @@
+source "https://rubygems.org"
+gem "jekyll"
+# jekyll alone might be enough for most use-cases
+gem "rouge"
+gem "activesupport", "~> 4.2"
+gem "jekyll-avatar"
+gem "jekyll-mentions"
+gem "jekyll-seo-tag"
+gem "jekyll-sitemap"
+gem "jemoji"
diff --git a/pkgs/applications/misc/jekyll/basic/Gemfile.lock b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
new file mode 100644
index 0000000000000..972403a47544b
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/basic/Gemfile.lock
@@ -0,0 +1,101 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    activesupport (4.2.10)
+      i18n (~> 0.7)
+      minitest (~> 5.1)
+      thread_safe (~> 0.3, >= 0.3.4)
+      tzinfo (~> 1.1)
+    addressable (2.5.2)
+      public_suffix (>= 2.0.2, < 4.0)
+    colorator (1.1.0)
+    concurrent-ruby (1.0.5)
+    em-websocket (0.5.1)
+      eventmachine (>= 0.12.9)
+      http_parser.rb (~> 0.6.0)
+    eventmachine (1.2.5)
+    ffi (1.9.21)
+    forwardable-extended (2.6.0)
+    gemoji (3.0.0)
+    html-pipeline (2.7.1)
+      activesupport (>= 2)
+      nokogiri (>= 1.4)
+    http_parser.rb (0.6.0)
+    i18n (0.9.5)
+      concurrent-ruby (~> 1.0)
+    jekyll (3.7.2)
+      addressable (~> 2.4)
+      colorator (~> 1.0)
+      em-websocket (~> 0.5)
+      i18n (~> 0.7)
+      jekyll-sass-converter (~> 1.0)
+      jekyll-watch (~> 2.0)
+      kramdown (~> 1.14)
+      liquid (~> 4.0)
+      mercenary (~> 0.3.3)
+      pathutil (~> 0.9)
+      rouge (>= 1.7, < 4)
+      safe_yaml (~> 1.0)
+    jekyll-avatar (0.5.0)
+      jekyll (~> 3.0)
+    jekyll-mentions (1.2.0)
+      activesupport (~> 4.0)
+      html-pipeline (~> 2.3)
+      jekyll (~> 3.0)
+    jekyll-sass-converter (1.5.2)
+      sass (~> 3.4)
+    jekyll-seo-tag (2.4.0)
+      jekyll (~> 3.3)
+    jekyll-sitemap (1.2.0)
+      jekyll (~> 3.3)
+    jekyll-watch (2.0.0)
+      listen (~> 3.0)
+    jemoji (0.9.0)
+      activesupport (~> 4.0, >= 4.2.9)
+      gemoji (~> 3.0)
+      html-pipeline (~> 2.2)
+      jekyll (~> 3.0)
+    kramdown (1.16.2)
+    liquid (4.0.0)
+    listen (3.1.5)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+      ruby_dep (~> 1.2)
+    mercenary (0.3.6)
+    mini_portile2 (2.3.0)
+    minitest (5.11.3)
+    nokogiri (1.8.2)
+      mini_portile2 (~> 2.3.0)
+    pathutil (0.16.1)
+      forwardable-extended (~> 2.6)
+    public_suffix (3.0.2)
+    rb-fsevent (0.10.2)
+    rb-inotify (0.9.10)
+      ffi (>= 0.5.0, < 2)
+    rouge (3.1.1)
+    ruby_dep (1.5.0)
+    safe_yaml (1.0.4)
+    sass (3.5.5)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    thread_safe (0.3.6)
+    tzinfo (1.2.5)
+      thread_safe (~> 0.1)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  activesupport (~> 4.2)
+  jekyll
+  jekyll-avatar
+  jekyll-mentions
+  jekyll-seo-tag
+  jekyll-sitemap
+  jemoji
+  rouge
+
+BUNDLED WITH
+   1.14.6
diff --git a/pkgs/applications/misc/jekyll/basic/gemset.nix b/pkgs/applications/misc/jekyll/basic/gemset.nix
new file mode 100644
index 0000000000000..32e90b07a2633
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/basic/gemset.nix
@@ -0,0 +1,326 @@
+{
+  activesupport = {
+    dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s12j8vl8vrxfngkdlz9g8bpz9akq1z42d57mx5r537b2pji8nr7";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+      type = "gem";
+    };
+    version = "2.5.2";
+  };
+  colorator = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f7wvpam948cglrciyqd798gdc6z3cfijciavd0dfixgaypmvy72";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  concurrent-ruby = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  em-websocket = {
+    dependencies = ["eventmachine" "http_parser.rb"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bsw8vjz0z267j40nhbmrvfz7dvacq4p0pagvyp17jif6mj6v7n3";
+      type = "gem";
+    };
+    version = "0.5.1";
+  };
+  eventmachine = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+  ffi = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c2dl10pi6a30kcvx2s6p2v1wb4kbm48iv38kmz2ff600nirhpb8";
+      type = "gem";
+    };
+    version = "1.9.21";
+  };
+  forwardable-extended = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15zcqfxfvsnprwm8agia85x64vjzr2w0xn9vxfnxzgcv8s699v0v";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  gemoji = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h85qpn2xbmsn8ssf2fqzlqg181j000m5z4l3g26r7vblncg162d";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  html-pipeline = {
+    dependencies = ["activesupport" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hkx70z9ijgnncmrna9qdh9ajn9m7v146k91j257lrzyq2f6jdjd";
+      type = "gem";
+    };
+    version = "2.7.1";
+  };
+  "http_parser.rb" = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "038qvz7kd3cfxk8bvagqhakx68pfbnmghpdkx7573wbf0maqp9a3";
+      type = "gem";
+    };
+    version = "0.9.5";
+  };
+  jekyll = {
+    dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05f61rqwz1isci7by34zyz38ah2rv5b8i5h618cxcl97hwqps8n2";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  jekyll-avatar = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y2w7pnahkm3ddxrq589wv1w53ay7p1pvfs6khcmh6wq85r6wpsf";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  jekyll-mentions = {
+    dependencies = ["activesupport" "html-pipeline" "jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00nqm1ng4iiibmv4vx0ayzq7fqm2sm1af98r4ykvld6asqj5qkyd";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  jekyll-sass-converter = {
+    dependencies = ["sass"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "008ikh5fk0n6ri54mylcl8jn0mq8p2nfyfqif2q3pp0lwilkcxsk";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  jekyll-seo-tag = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f9b2mvmx57zj49afb3x8cmzdmb1kh4rbpbv3v7w5bh47g2c9big";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  jekyll-sitemap = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xy93ysl1q8r4xhbnffycvsslja0dskh2z2pl1jnykwsy27dc89n";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  jekyll-watch = {
+    dependencies = ["listen"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m7scvj3ki8bmyx5v8pzibpg6my10nycnc28lip98dskf8iakprp";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  jemoji = {
+    dependencies = ["activesupport" "gemoji" "html-pipeline" "jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0acmi7mgr844dmzgfi9flcqkkb0jh5l21h579cidxwf1409w588b";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  kramdown = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mkrqpp01rrfn3rx6wwsjizyqmafp0vgg8ja1dvbjs185r5zw3za";
+      type = "gem";
+    };
+    version = "1.16.2";
+  };
+  liquid = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17fa0jgwm9a935fyvzy8bysz7j5n1vf1x2wzqkdfd5k08dbw3x2y";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  listen = {
+    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
+      type = "gem";
+    };
+    version = "3.1.5";
+  };
+  mercenary = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10la0xw82dh5mqab8bl0dk21zld63cqxb1g16fk8cb39ylc4n21a";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  minitest = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
+      type = "gem";
+    };
+    version = "5.11.3";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  pathutil = {
+    dependencies = ["forwardable-extended"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wc18ms1rzi44lpjychyw2a96jcmgxqdvy2949r4vvb5f4p0lgvz";
+      type = "gem";
+    };
+    version = "0.16.1";
+  };
+  public_suffix = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x5h1dh1i3gwc01jbg01rly2g6a1qwhynb1s8a30ic507z1nh09s";
+      type = "gem";
+    };
+    version = "3.0.2";
+  };
+  rb-fsevent = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
+      type = "gem";
+    };
+    version = "0.9.10";
+  };
+  rouge = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sfhy0xxqjnzqa7qxmpz1bmy0mzcr55qyvi410gsb6d6i4ialbw3";
+      type = "gem";
+    };
+    version = "3.1.1";
+  };
+  ruby_dep = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  safe_yaml = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
+      type = "gem";
+    };
+    version = "3.5.5";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  thread_safe = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/jekyll/default.nix b/pkgs/applications/misc/jekyll/default.nix
index ad8b7b262e55f..418b4ea466ea7 100644
--- a/pkgs/applications/misc/jekyll/default.nix
+++ b/pkgs/applications/misc/jekyll/default.nix
@@ -1,19 +1,34 @@
-{ stdenv, lib, bundlerEnv, ruby }:
+{ lib, bundlerEnv, ruby
+, withOptionalDependencies ? false
+}:
 
 bundlerEnv rec {
-  name = "jekyll-${version}";
+  name = pname + "-" + version;
+  pname = "jekyll";
+  version = (import
+    (if withOptionalDependencies
+      then ./full/gemset.nix
+      else ./basic/gemset.nix))
+    .jekyll.version;
 
-  version = (import gemset).jekyll.version;
   inherit ruby;
-  gemfile = ./Gemfile;
-  lockfile = ./Gemfile.lock;
-  gemset = ./gemset.nix;
+  gemdir = if withOptionalDependencies
+    then ./full
+    else ./basic;
 
   meta = with lib; {
-    description = "Simple, blog aware, static site generator";
-    homepage    =  https://jekyllrb.com/;
+    description = "A blog-aware, static site generator, written in Ruby";
+    longDescription = ''
+      Jekyll is a simple, blog-aware, static site generator, written in Ruby.
+      Think of it like a file-based CMS, without all the complexity. Jekyll
+      takes your content, renders Markdown and Liquid templates, and spits out a
+      complete, static website ready to be served by Apache, Nginx or another
+      web server. Jekyll is the engine behind GitHub Pages, which you can use to
+      host sites right from your GitHub repositories.
+    '';
+    homepage    = https://jekyllrb.com/;
     license     = licenses.mit;
-    maintainers = with maintainers; [ pesterhazy ];
+    maintainers = with maintainers; [ primeos pesterhazy ];
     platforms   = platforms.unix;
   };
 }
diff --git a/pkgs/applications/misc/jekyll/full/Gemfile b/pkgs/applications/misc/jekyll/full/Gemfile
new file mode 100644
index 0000000000000..41f33c6e9ea73
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/full/Gemfile
@@ -0,0 +1,30 @@
+source "https://rubygems.org"
+gem "jekyll"
+gem "rouge"
+gem "activesupport", "~> 4.2"
+gem "jekyll-avatar"
+gem "jekyll-mentions"
+gem "jekyll-seo-tag"
+gem "jekyll-sitemap"
+gem "jemoji"
+# Optional dependencies:
+gem "coderay", "~> 1.1.0"
+gem "jekyll-coffeescript"
+gem "jekyll-docs"
+gem "jekyll-feed", "~> 0.9"
+gem "jekyll-gist"
+gem "jekyll-paginate"
+gem "jekyll-redirect-from"
+gem "kramdown", "~> 1.14"
+gem "mime-types", "~> 3.0"
+gem "rdoc", RUBY_VERSION >= "2.2.2" ? "~> 6.0" : "~> 5.1"
+gem "tomlrb", "~> 1.2"
+
+platform :ruby, :mswin, :mingw, :x64_mingw do
+  gem "classifier-reborn", "~> 2.2.0"
+  gem "liquid-c", "~> 3.0"
+  gem "pygments.rb", "~> 1.0"
+  gem "rdiscount", "~> 2.0"
+  gem "redcarpet", "~> 3.2", ">= 3.2.3"
+  gem "yajl-ruby", "~> 1.3.1"
+end
diff --git a/pkgs/applications/misc/jekyll/full/Gemfile.lock b/pkgs/applications/misc/jekyll/full/Gemfile.lock
new file mode 100644
index 0000000000000..d070ad66f65c2
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/full/Gemfile.lock
@@ -0,0 +1,160 @@
+GEM
+  remote: https://rubygems.org/
+  specs:
+    activesupport (4.2.10)
+      i18n (~> 0.7)
+      minitest (~> 5.1)
+      thread_safe (~> 0.3, >= 0.3.4)
+      tzinfo (~> 1.1)
+    addressable (2.5.2)
+      public_suffix (>= 2.0.2, < 4.0)
+    classifier-reborn (2.2.0)
+      fast-stemmer (~> 1.0)
+    coderay (1.1.2)
+    coffee-script (2.4.1)
+      coffee-script-source
+      execjs
+    coffee-script-source (1.11.1)
+    colorator (1.1.0)
+    concurrent-ruby (1.0.5)
+    em-websocket (0.5.1)
+      eventmachine (>= 0.12.9)
+      http_parser.rb (~> 0.6.0)
+    eventmachine (1.2.5)
+    execjs (2.7.0)
+    faraday (0.14.0)
+      multipart-post (>= 1.2, < 3)
+    fast-stemmer (1.0.2)
+    ffi (1.9.21)
+    forwardable-extended (2.6.0)
+    gemoji (3.0.0)
+    html-pipeline (2.7.1)
+      activesupport (>= 2)
+      nokogiri (>= 1.4)
+    http_parser.rb (0.6.0)
+    i18n (0.9.5)
+      concurrent-ruby (~> 1.0)
+    jekyll (3.7.2)
+      addressable (~> 2.4)
+      colorator (~> 1.0)
+      em-websocket (~> 0.5)
+      i18n (~> 0.7)
+      jekyll-sass-converter (~> 1.0)
+      jekyll-watch (~> 2.0)
+      kramdown (~> 1.14)
+      liquid (~> 4.0)
+      mercenary (~> 0.3.3)
+      pathutil (~> 0.9)
+      rouge (>= 1.7, < 4)
+      safe_yaml (~> 1.0)
+    jekyll-avatar (0.5.0)
+      jekyll (~> 3.0)
+    jekyll-coffeescript (1.1.1)
+      coffee-script (~> 2.2)
+      coffee-script-source (~> 1.11.1)
+    jekyll-docs (3.7.2)
+      jekyll (= 3.7.2)
+    jekyll-feed (0.9.3)
+      jekyll (~> 3.3)
+    jekyll-gist (1.5.0)
+      octokit (~> 4.2)
+    jekyll-mentions (1.2.0)
+      activesupport (~> 4.0)
+      html-pipeline (~> 2.3)
+      jekyll (~> 3.0)
+    jekyll-paginate (1.1.0)
+    jekyll-redirect-from (0.13.0)
+      jekyll (~> 3.3)
+    jekyll-sass-converter (1.5.2)
+      sass (~> 3.4)
+    jekyll-seo-tag (2.4.0)
+      jekyll (~> 3.3)
+    jekyll-sitemap (1.2.0)
+      jekyll (~> 3.3)
+    jekyll-watch (2.0.0)
+      listen (~> 3.0)
+    jemoji (0.9.0)
+      activesupport (~> 4.0, >= 4.2.9)
+      gemoji (~> 3.0)
+      html-pipeline (~> 2.2)
+      jekyll (~> 3.0)
+    kramdown (1.16.2)
+    liquid (4.0.0)
+    liquid-c (3.0.0)
+      liquid (>= 3.0.0)
+    listen (3.1.5)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+      ruby_dep (~> 1.2)
+    mercenary (0.3.6)
+    mime-types (3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2016.0521)
+    mini_portile2 (2.3.0)
+    minitest (5.11.3)
+    multi_json (1.13.1)
+    multipart-post (2.0.0)
+    nokogiri (1.8.2)
+      mini_portile2 (~> 2.3.0)
+    octokit (4.8.0)
+      sawyer (~> 0.8.0, >= 0.5.3)
+    pathutil (0.16.1)
+      forwardable-extended (~> 2.6)
+    public_suffix (3.0.2)
+    pygments.rb (1.2.1)
+      multi_json (>= 1.0.0)
+    rb-fsevent (0.10.2)
+    rb-inotify (0.9.10)
+      ffi (>= 0.5.0, < 2)
+    rdiscount (2.2.0.1)
+    rdoc (6.0.1)
+    redcarpet (3.4.0)
+    rouge (3.1.1)
+    ruby_dep (1.5.0)
+    safe_yaml (1.0.4)
+    sass (3.5.5)
+      sass-listen (~> 4.0.0)
+    sass-listen (4.0.0)
+      rb-fsevent (~> 0.9, >= 0.9.4)
+      rb-inotify (~> 0.9, >= 0.9.7)
+    sawyer (0.8.1)
+      addressable (>= 2.3.5, < 2.6)
+      faraday (~> 0.8, < 1.0)
+    thread_safe (0.3.6)
+    tomlrb (1.2.6)
+    tzinfo (1.2.5)
+      thread_safe (~> 0.1)
+    yajl-ruby (1.3.1)
+
+PLATFORMS
+  ruby
+
+DEPENDENCIES
+  activesupport (~> 4.2)
+  classifier-reborn (~> 2.2.0)
+  coderay (~> 1.1.0)
+  jekyll
+  jekyll-avatar
+  jekyll-coffeescript
+  jekyll-docs
+  jekyll-feed (~> 0.9)
+  jekyll-gist
+  jekyll-mentions
+  jekyll-paginate
+  jekyll-redirect-from
+  jekyll-seo-tag
+  jekyll-sitemap
+  jemoji
+  kramdown (~> 1.14)
+  liquid-c (~> 3.0)
+  mime-types (~> 3.0)
+  pygments.rb (~> 1.0)
+  rdiscount (~> 2.0)
+  rdoc (~> 6.0)
+  redcarpet (~> 3.2, >= 3.2.3)
+  rouge
+  tomlrb (~> 1.2)
+  yajl-ruby (~> 1.3.1)
+
+BUNDLED WITH
+   1.14.6
diff --git a/pkgs/applications/misc/jekyll/full/gemset.nix b/pkgs/applications/misc/jekyll/full/gemset.nix
new file mode 100644
index 0000000000000..f41acb6619100
--- /dev/null
+++ b/pkgs/applications/misc/jekyll/full/gemset.nix
@@ -0,0 +1,547 @@
+{
+  activesupport = {
+    dependencies = ["i18n" "minitest" "thread_safe" "tzinfo"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0s12j8vl8vrxfngkdlz9g8bpz9akq1z42d57mx5r537b2pji8nr7";
+      type = "gem";
+    };
+    version = "4.2.10";
+  };
+  addressable = {
+    dependencies = ["public_suffix"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
+      type = "gem";
+    };
+    version = "2.5.2";
+  };
+  classifier-reborn = {
+    dependencies = ["fast-stemmer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04nxmm5b7j7r0ij9pcpdr7xqpig559gfzrw042ycxcfyav2pv6ij";
+      type = "gem";
+    };
+    version = "2.2.0";
+  };
+  coderay = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15vav4bhcc2x3jmi3izb11l4d9f3xv8hp2fszb7iqmpsccv1pz4y";
+      type = "gem";
+    };
+    version = "1.1.2";
+  };
+  coffee-script = {
+    dependencies = ["coffee-script-source" "execjs"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0rc7scyk7mnpfxqv5yy4y5q1hx3i7q3ahplcp4bq2g5r24g2izl2";
+      type = "gem";
+    };
+    version = "2.4.1";
+  };
+  coffee-script-source = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xfshhlz808f8639wc88wgls1mww35sid8rd55vn0a4yqajf4vh9";
+      type = "gem";
+    };
+    version = "1.11.1";
+  };
+  colorator = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f7wvpam948cglrciyqd798gdc6z3cfijciavd0dfixgaypmvy72";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  concurrent-ruby = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "183lszf5gx84kcpb779v6a2y0mx9sssy8dgppng1z9a505nj1qcf";
+      type = "gem";
+    };
+    version = "1.0.5";
+  };
+  em-websocket = {
+    dependencies = ["eventmachine" "http_parser.rb"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1bsw8vjz0z267j40nhbmrvfz7dvacq4p0pagvyp17jif6mj6v7n3";
+      type = "gem";
+    };
+    version = "0.5.1";
+  };
+  eventmachine = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+  execjs = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1";
+      type = "gem";
+    };
+    version = "2.7.0";
+  };
+  faraday = {
+    dependencies = ["multipart-post"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c3x3s8vb5nf7inyfvhdxwa4q3swmnacpxby6pish5fgmhws7zrr";
+      type = "gem";
+    };
+    version = "0.14.0";
+  };
+  fast-stemmer = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0688clyk4xxh3kdb18vi089k90mca8ji5fwaknh3da5wrzcrzanh";
+      type = "gem";
+    };
+    version = "1.0.2";
+  };
+  ffi = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0c2dl10pi6a30kcvx2s6p2v1wb4kbm48iv38kmz2ff600nirhpb8";
+      type = "gem";
+    };
+    version = "1.9.21";
+  };
+  forwardable-extended = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15zcqfxfvsnprwm8agia85x64vjzr2w0xn9vxfnxzgcv8s699v0v";
+      type = "gem";
+    };
+    version = "2.6.0";
+  };
+  gemoji = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1h85qpn2xbmsn8ssf2fqzlqg181j000m5z4l3g26r7vblncg162d";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  html-pipeline = {
+    dependencies = ["activesupport" "nokogiri"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0hkx70z9ijgnncmrna9qdh9ajn9m7v146k91j257lrzyq2f6jdjd";
+      type = "gem";
+    };
+    version = "2.7.1";
+  };
+  "http_parser.rb" = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
+      type = "gem";
+    };
+    version = "0.6.0";
+  };
+  i18n = {
+    dependencies = ["concurrent-ruby"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "038qvz7kd3cfxk8bvagqhakx68pfbnmghpdkx7573wbf0maqp9a3";
+      type = "gem";
+    };
+    version = "0.9.5";
+  };
+  jekyll = {
+    dependencies = ["addressable" "colorator" "em-websocket" "i18n" "jekyll-sass-converter" "jekyll-watch" "kramdown" "liquid" "mercenary" "pathutil" "rouge" "safe_yaml"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05f61rqwz1isci7by34zyz38ah2rv5b8i5h618cxcl97hwqps8n2";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  jekyll-avatar = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0y2w7pnahkm3ddxrq589wv1w53ay7p1pvfs6khcmh6wq85r6wpsf";
+      type = "gem";
+    };
+    version = "0.5.0";
+  };
+  jekyll-coffeescript = {
+    dependencies = ["coffee-script" "coffee-script-source"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "06qf4j9f6ysjb4bq6gsdaiz2ksmhc5yb484v458ra3s6ybccqvvy";
+      type = "gem";
+    };
+    version = "1.1.1";
+  };
+  jekyll-docs = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0dw8pvxr0q02rivc0n0v4w6151zi6s212xwl27iam6pjc8skbg9b";
+      type = "gem";
+    };
+    version = "3.7.2";
+  };
+  jekyll-feed = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0kr3kyaq4z3jixn6ay8h16bxxlv6slvvp7nqnl05jdymhkl0bmm9";
+      type = "gem";
+    };
+    version = "0.9.3";
+  };
+  jekyll-gist = {
+    dependencies = ["octokit"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "03wz9j6yq3552nzf4g71qrdm9pfdgbm68abml9sjjgiaan1n8ns9";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  jekyll-mentions = {
+    dependencies = ["activesupport" "html-pipeline" "jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "00nqm1ng4iiibmv4vx0ayzq7fqm2sm1af98r4ykvld6asqj5qkyd";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  jekyll-paginate = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8";
+      type = "gem";
+    };
+    version = "1.1.0";
+  };
+  jekyll-redirect-from = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1crm5xqgv5asbbbaxfgky4ppib5rih59yzpa3yc94gh8b9cjixrj";
+      type = "gem";
+    };
+    version = "0.13.0";
+  };
+  jekyll-sass-converter = {
+    dependencies = ["sass"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "008ikh5fk0n6ri54mylcl8jn0mq8p2nfyfqif2q3pp0lwilkcxsk";
+      type = "gem";
+    };
+    version = "1.5.2";
+  };
+  jekyll-seo-tag = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0f9b2mvmx57zj49afb3x8cmzdmb1kh4rbpbv3v7w5bh47g2c9big";
+      type = "gem";
+    };
+    version = "2.4.0";
+  };
+  jekyll-sitemap = {
+    dependencies = ["jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xy93ysl1q8r4xhbnffycvsslja0dskh2z2pl1jnykwsy27dc89n";
+      type = "gem";
+    };
+    version = "1.2.0";
+  };
+  jekyll-watch = {
+    dependencies = ["listen"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0m7scvj3ki8bmyx5v8pzibpg6my10nycnc28lip98dskf8iakprp";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  jemoji = {
+    dependencies = ["activesupport" "gemoji" "html-pipeline" "jekyll"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0acmi7mgr844dmzgfi9flcqkkb0jh5l21h579cidxwf1409w588b";
+      type = "gem";
+    };
+    version = "0.9.0";
+  };
+  kramdown = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0mkrqpp01rrfn3rx6wwsjizyqmafp0vgg8ja1dvbjs185r5zw3za";
+      type = "gem";
+    };
+    version = "1.16.2";
+  };
+  liquid = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "17fa0jgwm9a935fyvzy8bysz7j5n1vf1x2wzqkdfd5k08dbw3x2y";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  liquid-c = {
+    dependencies = ["liquid"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0a5n7q314ma32y7v9a1g6ps60b14zfn2q4nip4j5aknblz51v7gi";
+      type = "gem";
+    };
+    version = "3.0.0";
+  };
+  listen = {
+    dependencies = ["rb-fsevent" "rb-inotify" "ruby_dep"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "01v5mrnfqm6sgm8xn2v5swxsn1wlmq7rzh2i48d4jzjsc7qvb6mx";
+      type = "gem";
+    };
+    version = "3.1.5";
+  };
+  mercenary = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10la0xw82dh5mqab8bl0dk21zld63cqxb1g16fk8cb39ylc4n21a";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  mime-types = {
+    dependencies = ["mime-types-data"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
+      type = "gem";
+    };
+    version = "3.1";
+  };
+  mime-types-data = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      type = "gem";
+    };
+    version = "3.2016.0521";
+  };
+  mini_portile2 = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
+      type = "gem";
+    };
+    version = "2.3.0";
+  };
+  minitest = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0icglrhghgwdlnzzp4jf76b0mbc71s80njn5afyfjn4wqji8mqbq";
+      type = "gem";
+    };
+    version = "5.11.3";
+  };
+  multi_json = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
+      type = "gem";
+    };
+    version = "1.13.1";
+  };
+  multipart-post = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
+      type = "gem";
+    };
+    version = "2.0.0";
+  };
+  nokogiri = {
+    dependencies = ["mini_portile2"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "05fm3xh462glvs0rwnfmc1spmgl4ljg2giifynbmwwqvl42zaaiq";
+      type = "gem";
+    };
+    version = "1.8.2";
+  };
+  octokit = {
+    dependencies = ["sawyer"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hp77svmpxcwnfajb324i1g2b7jazg23fn4ccjr5y3lww0rnj1dg";
+      type = "gem";
+    };
+    version = "4.8.0";
+  };
+  pathutil = {
+    dependencies = ["forwardable-extended"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0wc18ms1rzi44lpjychyw2a96jcmgxqdvy2949r4vvb5f4p0lgvz";
+      type = "gem";
+    };
+    version = "0.16.1";
+  };
+  public_suffix = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1x5h1dh1i3gwc01jbg01rly2g6a1qwhynb1s8a30ic507z1nh09s";
+      type = "gem";
+    };
+    version = "3.0.2";
+  };
+  "pygments.rb" = {
+    dependencies = ["multi_json"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0lbvnwvz770ambm4d6lxgc2097rydn5rcc5d6986bnkzyxfqqjnv";
+      type = "gem";
+    };
+    version = "1.2.1";
+  };
+  rb-fsevent = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf";
+      type = "gem";
+    };
+    version = "0.10.2";
+  };
+  rb-inotify = {
+    dependencies = ["ffi"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0yfsgw5n7pkpyky6a9wkf1g9jafxb0ja7gz0qw0y14fd2jnzfh71";
+      type = "gem";
+    };
+    version = "0.9.10";
+  };
+  rdiscount = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1arvk3k06prxasq1djbj065ixar4zl171340g7wr1ww4gj9makx3";
+      type = "gem";
+    };
+    version = "2.2.0.1";
+  };
+  rdoc = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1vzhv04lp76iax258dh47zsxhjg34r9sg76vgikbyfywjzflvfyj";
+      type = "gem";
+    };
+    version = "6.0.1";
+  };
+  redcarpet = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0h9qz2hik4s9knpmbwrzb3jcp3vc5vygp9ya8lcpl7f1l9khmcd7";
+      type = "gem";
+    };
+    version = "3.4.0";
+  };
+  rouge = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1sfhy0xxqjnzqa7qxmpz1bmy0mzcr55qyvi410gsb6d6i4ialbw3";
+      type = "gem";
+    };
+    version = "3.1.1";
+  };
+  ruby_dep = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1c1bkl97i9mkcvkn1jks346ksnvnnp84cs22gwl0vd7radybrgy5";
+      type = "gem";
+    };
+    version = "1.5.0";
+  };
+  safe_yaml = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
+      type = "gem";
+    };
+    version = "1.0.4";
+  };
+  sass = {
+    dependencies = ["sass-listen"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "10401m2xlv6vaxfwzy4xxmk51ddcnkvwi918cw3jkki0qqdl7d8v";
+      type = "gem";
+    };
+    version = "3.5.5";
+  };
+  sass-listen = {
+    dependencies = ["rb-fsevent" "rb-inotify"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0xw3q46cmahkgyldid5hwyiwacp590zj2vmswlll68ryvmvcp7df";
+      type = "gem";
+    };
+    version = "4.0.0";
+  };
+  sawyer = {
+    dependencies = ["addressable" "faraday"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0sv1463r7bqzvx4drqdmd36m7rrv6sf1v3c6vswpnq3k6vdw2dvd";
+      type = "gem";
+    };
+    version = "0.8.1";
+  };
+  thread_safe = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
+      type = "gem";
+    };
+    version = "0.3.6";
+  };
+  tomlrb = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "09gh67v8s1pr7c37490sjp782gi4wf9k9cadp4l926h1sp27bcgz";
+      type = "gem";
+    };
+    version = "1.2.6";
+  };
+  tzinfo = {
+    dependencies = ["thread_safe"];
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1fjx9j327xpkkdlxwmkl3a8wqj7i4l4jwlrv3z13mg95z9wl253z";
+      type = "gem";
+    };
+    version = "1.2.5";
+  };
+  yajl-ruby = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "1rn4kc9fha990yd252wglh6rcyh35cavm1vpyfj8krlcwph09g30";
+      type = "gem";
+    };
+    version = "1.3.1";
+  };
+}
\ No newline at end of file
diff --git a/pkgs/applications/misc/jekyll/gemset.nix b/pkgs/applications/misc/jekyll/gemset.nix
deleted file mode 100644
index 5b1a35209aebb..0000000000000
--- a/pkgs/applications/misc/jekyll/gemset.nix
+++ /dev/null
@@ -1,183 +0,0 @@
-{
-  addressable = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1j5r0anj8m4qlf2psnldip4b8ha2bsscv11lpdgnfh4nnchzjnxw";
-      type = "gem";
-    };
-    version = "2.5.0";
-  };
-  colorator = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0f7wvpam948cglrciyqd798gdc6z3cfijciavd0dfixgaypmvy72";
-      type = "gem";
-    };
-    version = "1.1.0";
-  };
-  ffi = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0";
-      type = "gem";
-    };
-    version = "1.9.18";
-  };
-  forwardable-extended = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "15zcqfxfvsnprwm8agia85x64vjzr2w0xn9vxfnxzgcv8s699v0v";
-      type = "gem";
-    };
-    version = "2.6.0";
-  };
-  jekyll = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0qbnjx7bpshbcam6p9ss2g6gpd3gxz6h4w9yszphj3ip335yhawb";
-      type = "gem";
-    };
-    version = "3.4.1";
-  };
-  jekyll-feed = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1dj62gy1jskkn703mi5h0bkg1psbpkdm2qqdw3bhjfid9358qvay";
-      type = "gem";
-    };
-    version = "0.9.1";
-  };
-  jekyll-paginate = {
-    source = {
-      sha256 = "0r7bcs8fq98zldih4787zk5i9w24nz5wa26m84ssja95n3sas2l8";
-      type = "gem";
-    };
-    version = "1.1.0";
-  };
-  jekyll-sass-converter = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "01m921763yfgx1gc33k5ixqz623f4c4azgnpqhgsc2q61fyfk3q1";
-      type = "gem";
-    };
-    version = "1.5.0";
-  };
-  jekyll-watch = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "02rg3wi95w2l0bg1igl5k6pza723vn2b2gj975gycz1cpmhdjn6z";
-      type = "gem";
-    };
-    version = "1.5.0";
-  };
-  kramdown = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1isiqc40q44zg57bd6cfnw1a2l0s2j5skw2awn2cz3gcm7wsf49d";
-      type = "gem";
-    };
-    version = "1.13.2";
-  };
-  liquid = {
-    source = {
-      sha256 = "033png37ym4jrjz5bi7zb4ic4yxacwvnllm1xxmrnr4swgyyygc2";
-      type = "gem";
-    };
-    version = "3.0.6";
-  };
-  listen = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1l0y7hbyfiwpvk172r28hsdqsifq1ls39hsfmzi1vy4ll0smd14i";
-      type = "gem";
-    };
-    version = "3.0.8";
-  };
-  mercenary = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "10la0xw82dh5mqab8bl0dk21zld63cqxb1g16fk8cb39ylc4n21a";
-      type = "gem";
-    };
-    version = "0.3.6";
-  };
-  minima = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1s7ks9fqfvqx7qicnkrg76wavg9mjas52f7iyhr89lz9mqiy7p39";
-      type = "gem";
-    };
-    version = "2.1.0";
-  };
-  pathutil = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0f444wx6vjd30lkkb2zn1k5a6g33lidrpyy7lmgy66n1gsiipzn7";
-      type = "gem";
-    };
-    version = "0.14.0";
-  };
-  public_suffix = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "040jf98jpp6w140ghkhw2hvc1qx41zvywx5gj7r2ylr1148qnj7q";
-      type = "gem";
-    };
-    version = "2.0.5";
-  };
-  rb-fsevent = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1pdiasp9zlr306yld19szapi6kdjk38rpv1hih9x0ry40x6mb63n";
-      type = "gem";
-    };
-    version = "0.9.8";
-  };
-  rb-inotify = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0bq14f3md5nm00kgxgf0r9lcbn0vgbwljgajif0slxcwv622fjg9";
-      type = "gem";
-    };
-    version = "0.9.8";
-  };
-  rdiscount = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "1arvk3k06prxasq1djbj065ixar4zl171340g7wr1ww4gj9makx3";
-      type = "gem";
-    };
-    version = "2.2.0.1";
-  };
-  RedCloth = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0m9dv7ya9q93r8x1pg2gi15rxlbck8m178j1fz7r5v6wr1avrrqy";
-      type = "gem";
-    };
-    version = "4.3.2";
-  };
-  rouge = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "13amckbdknnc5491ag28y8pqbyfpbzx5n4rlmadxhd3wkrhp92c8";
-      type = "gem";
-    };
-    version = "1.11.1";
-  };
-  safe_yaml = {
-    source = {
-      sha256 = "1hly915584hyi9q9vgd968x2nsi5yag9jyf5kq60lwzi5scr7094";
-      type = "gem";
-    };
-    version = "1.0.4";
-  };
-  sass = {
-    source = {
-      remotes = ["https://rubygems.org"];
-      sha256 = "0da4mn3n60cm1ss1pw1rrpa7fxagglxiwcgvz1asf1qgf4mvcwyr";
-      type = "gem";
-    };
-    version = "3.4.23";
-  };
-}
\ No newline at end of file
diff --git a/pkgs/applications/networking/cluster/flink/default.nix b/pkgs/applications/networking/cluster/flink/default.nix
index bc8684da76799..48308d3a2012d 100644
--- a/pkgs/applications/networking/cluster/flink/default.nix
+++ b/pkgs/applications/networking/cluster/flink/default.nix
@@ -7,6 +7,13 @@ let
       flinkVersion = "1.3.2";
       scalaVersion = "2.11";
       sha256 = "0mf4qz0963bflzidgslvwpdlvj9za9sj20dfybplw9lhd4sf52rp";
+      hadoopBundle = "-hadoop27";
+    };
+    "1.4" = {
+      flinkVersion = "1.4.0";
+      scalaVersion = "2.11";
+      sha256 = "0d80djx1im3h8mf60qzi12km1bbik8a5l3nks85jzi0r0xzfgkm6";
+      hadoopBundle = "";
     };
   };
 in
@@ -17,7 +24,7 @@ stdenv.mkDerivation rec {
   name = "flink-${flinkVersion}";
 
   src = fetchurl {
-    url = "mirror://apache/flink/${name}/${name}-bin-hadoop27-scala_${scalaVersion}.tgz";
+    url = "mirror://apache/flink/${name}/${name}-bin${hadoopBundle}-scala_${scalaVersion}.tgz";
     inherit sha256;
   };
 
diff --git a/pkgs/applications/networking/cluster/helm/default.nix b/pkgs/applications/networking/cluster/helm/default.nix
index 173402144ccc6..082b23afcbd0c 100644
--- a/pkgs/applications/networking/cluster/helm/default.nix
+++ b/pkgs/applications/networking/cluster/helm/default.nix
@@ -4,10 +4,10 @@ let
          then "linux-amd64"
          else "darwin-amd64";
   checksum = if stdenv.isLinux
-             then "19sbvpll947y4dxn2dj26by2bwhcxa5nbkrq7x3cikn7z5bmj7vf"
-             else "0jllj13jv8yil6iqi4xcs5v4z388h7i7hcnv98gc14spkyjshf3d";
+             then "07bgny8mfdgv9f6zmk31hxhkwy90wr22js21jz679pkz3gmykxvx"
+             else "1f6h96gyhsdb03am586kdqn619h4niwlj29j4bypf3yg2sar4p6x";
   pname = "helm";
-  version = "2.8.0";
+  version = "2.8.1";
 in
 stdenv.mkDerivation {
   name = "${pname}-${version}";
diff --git a/pkgs/applications/networking/remote/xrdp/default.nix b/pkgs/applications/networking/remote/xrdp/default.nix
index b6b1f6542af30..ed1abfcba99de 100644
--- a/pkgs/applications/networking/remote/xrdp/default.nix
+++ b/pkgs/applications/networking/remote/xrdp/default.nix
@@ -3,13 +3,13 @@
 let
   xorgxrdp = stdenv.mkDerivation rec {
     name = "xorgxrdp-${version}";
-    version = "0.2.3";
+    version = "0.2.5";
 
     src = fetchFromGitHub {
       owner = "neutrinolabs";
       repo = "xorgxrdp";
       rev = "v${version}";
-      sha256 = "0l1b38j3q9mxyb8ffpdplbqs6rnabj92i8wngrwlkhfh2c88szn1";
+      sha256 = "05ix0bvbgpg0l0f6pyxp64a4785yv16dxf522y7k84b0rag4bxr7";
     };
 
     nativeBuildInputs = [ pkgconfig autoconf automake which libtool nasm ];
@@ -34,7 +34,7 @@ let
   };
 
   xrdp = stdenv.mkDerivation rec {
-    version = "0.9.3";
+    version = "0.9.5";
     name = "xrdp-${version}";
 
     src = fetchFromGitHub {
@@ -42,7 +42,7 @@ let
       repo = "xrdp";
       rev = "refs/heads/runtime-cfg-path-${version}";  # Fixes https://github.com/neutrinolabs/xrdp/issues/609; not a patch on top of the official repo because "xorgxrdp.configureFlags" above includes "xrdp.src" which must be patched already
       fetchSubmodules = true;
-      sha256 = "0xqyg3m688fj442zgg9fqmbz7nnzvqpd7a9ki2cwh1hyibacpmz7";
+      sha256 = "1sm994dic72zvxgwxw9z6an6050976nlnnn2my42pnzj9l5842d8";
     };
 
     nativeBuildInputs = [ pkgconfig autoconf automake which libtool nasm ];
diff --git a/pkgs/applications/virtualization/qemu/riscv-initrd.patch b/pkgs/applications/virtualization/qemu/riscv-initrd.patch
new file mode 100644
index 0000000000000..a7e5b28cfd5ec
--- /dev/null
+++ b/pkgs/applications/virtualization/qemu/riscv-initrd.patch
@@ -0,0 +1,98 @@
+From 44b0f612499764dad425d467aadacb01fbd4a920 Mon Sep 17 00:00:00 2001
+From: Shea Levy <shea@shealevy.com>
+Date: Tue, 20 Feb 2018 07:59:43 -0500
+Subject: [PATCH] riscv: Respect the -initrd flag.
+
+Logic for initrd start address borrowed from arm/boot.c
+---
+ hw/riscv/virt.c | 49 ++++++++++++++++++++++++++++++++++++++++++++++---
+ 1 file changed, 46 insertions(+), 3 deletions(-)
+
+diff --git a/hw/riscv/virt.c b/hw/riscv/virt.c
+index 46d95b2b79..5c7d191a3f 100644
+--- a/hw/riscv/virt.c
++++ b/hw/riscv/virt.c
+@@ -77,7 +77,35 @@ static uint64_t load_kernel(const char *kernel_filename)
+     return kernel_entry;
+ }
+ 
+-static void create_fdt(RISCVVirtState *s, const struct MemmapEntry *memmap,
++static hwaddr load_initrd(const char *filename, uint64_t mem_size,
++                          uint64_t kernel_entry, hwaddr *start)
++{
++    int size;
++
++    /* We want to put the initrd far enough into RAM that when the
++     * kernel is uncompressed it will not clobber the initrd. However
++     * on boards without much RAM we must ensure that we still leave
++     * enough room for a decent sized initrd, and on boards with large
++     * amounts of RAM we must avoid the initrd being so far up in RAM
++     * that it is outside lowmem and inaccessible to the kernel.
++     * So for boards with less  than 256MB of RAM we put the initrd
++     * halfway into RAM, and for boards with 256MB of RAM or more we put
++     * the initrd at 128MB.
++     */
++    *start = kernel_entry + MIN(mem_size / 2, 128 * 1024 * 1024);
++
++    size = load_ramdisk(filename, *start, mem_size - *start);
++    if (size == -1) {
++        size = load_image_targphys(filename, *start, mem_size - *start);
++        if (size == -1) {
++          error_report("qemu: could not load ramdisk '%s'", filename);
++          exit(1);
++        }
++    }
++    return *start + size;
++}
++
++static void *create_fdt(RISCVVirtState *s, const struct MemmapEntry *memmap,
+     uint64_t mem_size, const char *cmdline)
+ {
+     void *fdt;
+@@ -233,6 +261,8 @@ static void create_fdt(RISCVVirtState *s, const struct MemmapEntry *memmap,
+     qemu_fdt_setprop_string(fdt, "/chosen", "stdout-path", nodename);
+     qemu_fdt_setprop_string(fdt, "/chosen", "bootargs", cmdline);
+     g_free(nodename);
++
++    return fdt;
+ }
+ 
+ static void riscv_virt_board_init(MachineState *machine)
+@@ -246,6 +276,7 @@ static void riscv_virt_board_init(MachineState *machine)
+     char *plic_hart_config;
+     size_t plic_hart_config_len;
+     int i;
++    void *fdt;
+ 
+     /* Initialize SOC */
+     object_initialize(&s->soc, sizeof(s->soc), TYPE_RISCV_HART_ARRAY);
+@@ -265,7 +296,8 @@ static void riscv_virt_board_init(MachineState *machine)
+         main_mem);
+ 
+     /* create device tree */
+-    create_fdt(s, memmap, machine->ram_size, machine->kernel_cmdline);
++    fdt = create_fdt(s, memmap, machine->ram_size,
++                     machine->kernel_cmdline);
+ 
+     /* boot rom */
+     memory_region_init_ram(boot_rom, NULL, "riscv_virt_board.bootrom",
+@@ -273,7 +305,18 @@ static void riscv_virt_board_init(MachineState *machine)
+     memory_region_add_subregion(system_memory, 0x0, boot_rom);
+ 
+     if (machine->kernel_filename) {
+-        load_kernel(machine->kernel_filename);
++        uint64_t kernel_entry = load_kernel(machine->kernel_filename);
++
++        if (machine->initrd_filename) {
++            hwaddr start;
++            hwaddr end = load_initrd(machine->initrd_filename,
++                                     machine->ram_size, kernel_entry,
++                                     &start);
++            qemu_fdt_setprop_cell(fdt, "/chosen",
++                                  "linux,initrd-start", start);
++            qemu_fdt_setprop_cell(fdt, "/chosen", "linux,initrd-end",
++                                  end);
++        }
+     }
+ 
+     /* reset vector */
diff --git a/pkgs/applications/virtualization/qemu/riscv.nix b/pkgs/applications/virtualization/qemu/riscv.nix
index a900d943dabf3..5e234dcb89359 100644
--- a/pkgs/applications/virtualization/qemu/riscv.nix
+++ b/pkgs/applications/virtualization/qemu/riscv.nix
@@ -15,6 +15,8 @@
 in lib.overrideDerivation qemu (orig: {
   name = "${(builtins.parseDrvName qemu.name).name}-${version}pre${revCount}_${shortRev}";
   inherit src;
+  # https://github.com/riscv/riscv-qemu/pull/109
+  patches = orig.patches ++ [ ./riscv-initrd.patch ];
   configureFlags = orig.configureFlags ++ [ "--target-list=${lib.concatStringsSep "," targets}" ];
   postInstall = null;
 })
diff --git a/pkgs/build-support/fetchurl/default.nix b/pkgs/build-support/fetchurl/default.nix
index 3e47d4a4b6837..0bf529caa75ec 100644
--- a/pkgs/build-support/fetchurl/default.nix
+++ b/pkgs/build-support/fetchurl/default.nix
@@ -1,4 +1,4 @@
-{ stdenvNoCC, curl }: # Note that `curl' may be `null', in case of the native stdenvNoCC.
+{ lib, stdenvNoCC, curl }: # Note that `curl' may be `null', in case of the native stdenvNoCC.
 
 let
 
@@ -20,7 +20,7 @@ let
   # "gnu", etc.).
   sites = builtins.attrNames mirrors;
 
-  impureEnvVars = stdenvNoCC.lib.fetchers.proxyImpureEnvVars ++ [
+  impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
     # This variable allows the user to pass additional options to curl
     "NIX_CURL_FLAGS"
 
@@ -89,22 +89,28 @@ in
 , passthru ? {}
 }:
 
-assert builtins.isList urls;
-assert (urls == []) != (url == "");
 assert sha512 != "" -> builtins.compareVersions "1.11" builtins.nixVersion <= 0;
 
-
 let
 
-  hasHash = showURLs || (outputHash != "" && outputHashAlgo != "")
-    || sha1 != "" || sha256 != "" || sha512 != "";
-  urls_ = if urls != [] then urls else [url];
+  urls_ =
+    if urls != [] && url == "" then
+      (if lib.isList urls then urls
+       else throw "`urls` is not a list")
+    else if urls == [] && url != "" then [url]
+    else throw "fetchurl requires either `url` or `urls` to be set";
+
+  hash_ =
+    if md5 != "" then throw "fetchurl does not support md5 anymore, please use sha256 or sha512"
+    else if (outputHash != "" && outputHashAlgo != "") then { inherit outputHashAlgo outputHash; }
+    else if sha512 != "" then { outputHashAlgo = "sha512"; outputHash = sha512; }
+    else if sha256 != "" then { outputHashAlgo = "sha256"; outputHash = sha256; }
+    else if sha1   != "" then { outputHashAlgo = "sha1";   outputHash = sha1; }
+    else throw "fetchurl requires a hash for fixed-output derivation: ${lib.concatStringsSep ", " urls_}";
 
 in
 
-if md5 != "" then throw "fetchurl does not support md5 anymore, please use sha256 or sha512"
-else if (!hasHash) then throw "Specify hash for fetchurl fixed-output derivation: ${stdenvNoCC.lib.concatStringsSep ", " urls_}"
-else stdenvNoCC.mkDerivation {
+stdenvNoCC.mkDerivation {
   name =
     if showURLs then "urls"
     else if name != "" then name
@@ -121,10 +127,7 @@ else stdenvNoCC.mkDerivation {
   preferHashedMirrors = true;
 
   # New-style output content requirements.
-  outputHashAlgo = if outputHashAlgo != "" then outputHashAlgo else
-      if sha512 != "" then "sha512" else if sha256 != "" then "sha256" else "sha1";
-  outputHash = if outputHash != "" then outputHash else
-      if sha512 != "" then sha512 else if sha256 != "" then sha256 else sha1;
+  inherit (hash_) outputHashAlgo outputHash;
 
   outputHashMode = if (recursiveHash || executable) then "recursive" else "flat";
 
diff --git a/pkgs/build-support/release/debian-build.nix b/pkgs/build-support/release/debian-build.nix
index f4bc3e73056dc..354d929c9b652 100644
--- a/pkgs/build-support/release/debian-build.nix
+++ b/pkgs/build-support/release/debian-build.nix
@@ -78,10 +78,10 @@ vmTools.runInLinuxImage (stdenv.mkDerivation (
         header "Generated DEB package: $i"
         dpkg-deb --info "$i"
         pkgName=$(dpkg-deb -W "$i" | awk '{print $1}')
-        dpkg -i "$i"
         echo "file deb $i" >> $out/nix-support/hydra-build-products
         stopNest
       done
+      dpkg -i $out/debs/*.deb
 
       for i in $extraDebs; do
         echo "file deb-extra $(ls $i/debs/*.deb | sort | head -1)" >> $out/nix-support/hydra-build-products
diff --git a/pkgs/build-support/rust/build-rust-crate.nix b/pkgs/build-support/rust/build-rust-crate.nix
index f1f344ca3c7dd..8a9a07fd7a8ff 100644
--- a/pkgs/build-support/rust/build-rust-crate.nix
+++ b/pkgs/build-support/rust/build-rust-crate.nix
@@ -6,44 +6,16 @@
 
 { lib, buildPlatform, stdenv, defaultCrateOverrides, fetchCrate, ncurses, rustc  }:
 
-let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
-                   dependencies, completeDeps, completeBuildDeps,
-                   crateFeatures, libName, build, release, libPath,
-                   crateType, metadata, crateBin, finalBins,
-                   verbose, colors }:
-
-      let depsDir = lib.concatStringsSep " " dependencies;
-          completeDepsDir = lib.concatStringsSep " " completeDeps;
-          completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
-          makeDeps = dependencies:
-            (lib.concatMapStringsSep " " (dep:
-              let extern = lib.strings.replaceStrings ["-"] ["_"] dep.libName; in
-              (if dep.crateType == "lib" then
-                 " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib"
-              else
-                 " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${buildPlatform.extensions.sharedLibrary}")
-            ) dependencies);
-          deps = makeDeps dependencies;
-          buildDeps = makeDeps buildDependencies;
-          optLevel = if release then 3 else 0;
-          rustcOpts = (if release then "-C opt-level=3" else "-C debuginfo=2");
-          rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
-          version_ = lib.splitString "-" crateVersion;
-          versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
-          version = lib.splitString "." (lib.head version_);
-          authors = lib.concatStringsSep ":" crateAuthors;
-      in ''
-      norm=""
-      bold=""
-      green=""
-      boldgreen=""
-      if [[ "${colors}" -eq "always" ]]; then
-        norm="$(printf '\033[0m')" #returns to "normal"
-        bold="$(printf '\033[0;1m')" #set bold
-        green="$(printf '\033[0;32m')" #set green
-        boldgreen="$(printf '\033[0;1;32m')" #set bold, and set green.
-      fi
-
+let makeDeps = dependencies:
+      (lib.concatMapStringsSep " " (dep:
+        let extern = lib.strings.replaceStrings ["-"] ["_"] dep.libName; in
+        (if dep.crateType == "lib" then
+           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}.rlib"
+         else
+           " --extern ${extern}=${dep.out}/lib/lib${extern}-${dep.metadata}${buildPlatform.extensions.sharedLibrary}")
+      ) dependencies);
+
+    echo_build_heading = colors: ''
       echo_build_heading() {
        start=""
        end=""
@@ -57,7 +29,8 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
          echo "$start""Building $1 ($2)""$end"
        fi
       }
-
+    '';
+    noisily = colors: verbose: ''
       noisily() {
         start=""
         end=""
@@ -71,18 +44,29 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
 	''}
 	$@
       }
+    '';
 
+    configureCrate =
+      { crateName, crateVersion, crateAuthors, build, libName, crateFeatures, colors, libPath, release, buildDependencies, completeDeps, completeBuildDeps, verbose, dependencies }:
+      let version_ = lib.splitString "-" crateVersion;
+          versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
+          version = lib.splitString "." (lib.head version_);
+          rustcOpts = (if release then "-C opt-level=3" else "-C debuginfo=2");
+          buildDeps = makeDeps buildDependencies;
+          authors = lib.concatStringsSep ":" crateAuthors;
+          optLevel = if release then 3 else 0;
+          completeDepsDir = lib.concatStringsSep " " completeDeps;
+          completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
+      in ''
+      runHook preConfigure
+      ${echo_build_heading colors}
+      ${noisily colors verbose}
       symlink_dependency() {
-      # $1 is the nix-store path of a dependency
+        # $1 is the nix-store path of a dependency
+        # $2 is the target path
         i=$1
-	dest=target/deps
-	if [ ! -z $2 ]; then
-           if [ "$2" = "--buildDep" ]; then
-             dest=target/buildDeps
-           fi
-	fi
-        ln -s -f $i/lib/*.rlib $dest #*/
-        ln -s -f $i/lib/*.so $i/lib/*.dylib $dest #*/
+        ln -s -f $i/lib/*.rlib $2 #*/
+        ln -s -f $i/lib/*.so $i/lib/*.dylib $2 #*/
         if [ -e "$i/lib/link" ]; then
             cat $i/lib/link >> target/link
             cat $i/lib/link >> target/link.final
@@ -92,48 +76,15 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
         fi
       }
 
-      build_lib() {
-         lib_src=$1
-         echo_build_heading $lib_src ${libName}
-
-         noisily rustc --crate-name $CRATE_NAME $lib_src --crate-type ${crateType} \
-           ${rustcOpts} ${rustcMeta} ${crateFeatures} --out-dir target/lib \
-           --emit=dep-info,link -L dependency=target/deps ${deps} --cap-lints allow \
-           $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
-
-         EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib"
-         if [ -e target/deps/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary} ]; then
-            EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary}"
-         fi
-      }
-
-      build_bin() {
-        crate_name=$1
-        crate_name_=$(echo $crate_name | sed -e "s/-/_/g")
-	main_file=""
-	if [[ ! -z $2 ]]; then
-          main_file=$2
-	fi
-	echo_build_heading $@
-	noisily rustc --crate-name $crate_name_ $main_file --crate-type bin ${rustcOpts}\
-          ${crateFeatures} --out-dir target/bin --emit=dep-info,link -L dependency=target/deps \
-          $LINK ${deps}$EXTRA_LIB --cap-lints allow \
-          $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
-        if [ "$crate_name_" -ne "$crate_name" ]; then
-          mv target/bin/$crate_name_ target/bin/$crate_name
-        fi
-      }
-
-      runHook preBuild
       mkdir -p target/{deps,lib,build,buildDeps}
       chmod uga+w target -R
       for i in ${completeDepsDir}; do
-        symlink_dependency $i
+        symlink_dependency $i target/deps
       done
       for i in ${completeBuildDepsDir}; do
-         symlink_dependency $i --buildDep
+         symlink_dependency $i target/buildDeps
       done
-      if [ -e target/link ]; then
+      if [[ -e target/link ]]; then
         sort -u target/link > target/link.sorted
         mv target/link.sorted target/link
         sort -u target/link.final > target/link.final.sorted
@@ -145,10 +96,16 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
       export CARGO_PKG_NAME=${crateName}
       export CARGO_PKG_VERSION=${crateVersion}
       export CARGO_PKG_AUTHORS="${authors}"
+
       export CARGO_CFG_TARGET_ARCH=${buildPlatform.parsed.cpu.name}
       export CARGO_CFG_TARGET_OS=${buildPlatform.parsed.kernel.name}
-
+      export CARGO_CFG_TARGET_FAMILY="unix"
+      export CARGO_CFG_UNIX=1
       export CARGO_CFG_TARGET_ENV="gnu"
+      export CARGO_CFG_TARGET_ENDIAN=${if buildPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"}
+      export CARGO_CFG_TARGET_POINTER_WIDTH=${toString buildPlatform.parsed.cpu.bits}
+      export CARGO_CFG_TARGET_VENDOR=${buildPlatform.parsed.vendor.name}
+
       export CARGO_MANIFEST_DIR="."
       export DEBUG="${toString (!release)}"
       export OPT_LEVEL="${toString optLevel}"
@@ -159,7 +116,7 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
       export CARGO_PKG_VERSION_MAJOR=${builtins.elemAt version 0}
       export CARGO_PKG_VERSION_MINOR=${builtins.elemAt version 1}
       export CARGO_PKG_VERSION_PATCH=${builtins.elemAt version 2}
-      if [ -n "${versionPre}" ]; then
+      if [[ -n "${versionPre}" ]]; then
         export CARGO_PKG_VERSION_PRE="${versionPre}"
       fi
 
@@ -180,8 +137,8 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
            EXTRA_BUILD_FLAGS="$EXTRA_BUILD_FLAGS $(cat target/link.build)"
          fi
          noisily rustc --crate-name build_script_build $BUILD --crate-type bin ${rustcOpts} \
-          ${crateFeatures} --out-dir target/build/${crateName} --emit=dep-info,link \
-          -L dependency=target/buildDeps ${buildDeps} --cap-lints allow $EXTRA_BUILD_FLAGS --color ${colors}
+           ${crateFeatures} --out-dir target/build/${crateName} --emit=dep-info,link \
+           -L dependency=target/buildDeps ${buildDeps} --cap-lints allow $EXTRA_BUILD_FLAGS --color ${colors}
 
          mkdir -p target/build/${crateName}.out
          export RUST_BACKTRACE=1
@@ -198,33 +155,104 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
            | sed -e "s/cargo:\([^=]*\)=\(.*\)/export DEP_$(echo $CRATENAME)_\U\1\E=\2/" > target/env
 
          set -e
-         if [ -n "$(ls target/build/${crateName}.out)" ]; then
+         if [[ -n "$(ls target/build/${crateName}.out)" ]]; then
 
-            if [ -e "${libPath}" ] ; then
+            if [[ -e "${libPath}" ]]; then
                cp -r target/build/${crateName}.out/* $(dirname ${libPath}) #*/
             else
                cp -r target/build/${crateName}.out/* src #*/
             fi
          fi
       fi
+      runHook postConfigure
+    '';
+
+    buildCrate = { crateName, crateVersion, crateAuthors,
+                   dependencies, completeDeps, completeBuildDeps,
+                   crateFeatures, libName, build, release, libPath,
+                   crateType, metadata, crateBin, finalBins,
+                   extraRustcOpts,
+                   verbose, colors }:
+
+      let depsDir = lib.concatStringsSep " " dependencies;
+          completeDepsDir = lib.concatStringsSep " " completeDeps;
+          completeBuildDepsDir = lib.concatStringsSep " " completeBuildDeps;
+          deps = makeDeps dependencies;
+          optLevel = if release then 3 else 0;
+          rustcOpts =
+            lib.lists.foldl' (opts: opt: opts + " " + opt)
+              (if release then "-C opt-level=3" else "-C debuginfo=2")
+              extraRustcOpts;
+          rustcMeta = "-C metadata=${metadata} -C extra-filename=-${metadata}";
+          version_ = lib.splitString "-" crateVersion;
+          versionPre = if lib.tail version_ == [] then "" else builtins.elemAt version_ 1;
+          version = lib.splitString "." (lib.head version_);
+          authors = lib.concatStringsSep ":" crateAuthors;
+      in ''
+      runHook preBuild
+      norm=""
+      bold=""
+      green=""
+      boldgreen=""
+      if [[ "${colors}" -eq "always" ]]; then
+        norm="$(printf '\033[0m')" #returns to "normal"
+        bold="$(printf '\033[0;1m')" #set bold
+        green="$(printf '\033[0;32m')" #set green
+        boldgreen="$(printf '\033[0;1;32m')" #set bold, and set green.
+      fi
+      ${echo_build_heading colors}
+      ${noisily colors verbose}
+
+      build_lib() {
+         lib_src=$1
+         echo_build_heading $lib_src ${libName}
+
+         noisily rustc --crate-name $CRATE_NAME $lib_src --crate-type ${crateType} \
+           ${rustcOpts} ${rustcMeta} ${crateFeatures} --out-dir target/lib \
+           --emit=dep-info,link -L dependency=target/deps ${deps} --cap-lints allow \
+           $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+
+         EXTRA_LIB=" --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}.rlib"
+         if [ -e target/deps/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary} ]; then
+            EXTRA_LIB="$EXTRA_LIB --extern $CRATE_NAME=target/lib/lib$CRATE_NAME-${metadata}${buildPlatform.extensions.sharedLibrary}"
+         fi
+      }
+
+      build_bin() {
+        crate_name=$1
+        crate_name_=$(echo $crate_name | sed -e "s/-/_/g")
+	main_file=""
+	if [[ ! -z $2 ]]; then
+          main_file=$2
+	fi
+	echo_build_heading $@
+	noisily rustc --crate-name $crate_name_ $main_file --crate-type bin ${rustcOpts}\
+          ${crateFeatures} --out-dir target/bin --emit=dep-info,link -L dependency=target/deps \
+          $LINK ${deps}$EXTRA_LIB --cap-lints allow \
+          $BUILD_OUT_DIR $EXTRA_BUILD $EXTRA_FEATURES --color ${colors}
+        if [ "$crate_name_" -ne "$crate_name" ]; then
+          mv target/bin/$crate_name_ target/bin/$crate_name
+        fi
+      }
+
 
       EXTRA_LIB=""
       CRATE_NAME=$(echo ${libName} | sed -e "s/-/_/g")
 
-      if [ -e target/link_ ]; then
+      if [[ -e target/link_ ]]; then
         EXTRA_BUILD="$(cat target/link_) $EXTRA_BUILD"
       fi
 
-      if [ -e "${libPath}" ] ; then
+      if [[ -e "${libPath}" ]]; then
          build_lib ${libPath}
-      elif [ -e src/lib.rs ] ; then
+      elif [[ -e src/lib.rs ]]; then
          build_lib src/lib.rs
-      elif [ -e src/${libName}.rs ] ; then
+      elif [[ -e src/${libName}.rs ]]; then
          build_lib src/${libName}.rs
       fi
 
       echo "$EXTRA_LINK_SEARCH" | while read i; do
-         if [ ! -z "$i" ]; then
+         if [[ ! -z "$i" ]]; then
            for lib in $i; do
              echo "-L $lib" >> target/link
              L=$(echo $lib | sed -e "s#$(pwd)/target/build#$out/lib#")
@@ -233,7 +261,7 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
          fi
       done
       echo "$EXTRA_LINK" | while read i; do
-         if [ ! -z "$i" ]; then
+         if [[ ! -z "$i" ]]; then
            for lib in $i; do
              echo "-l $lib" >> target/link
              echo "-l $lib" >> target/link.final
@@ -241,7 +269,7 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
          fi
       done
 
-      if [ -e target/link ]; then
+      if [[ -e target/link ]]; then
          sort -u target/link.final > target/link.final.sorted
          mv target/link.final.sorted target/link.final
          sort -u target/link > target/link.sorted
@@ -253,7 +281,7 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
 
       mkdir -p target/bin
       echo "${crateBin}" | sed -n 1'p' | tr ',' '\n' | while read BIN; do
-         if [ ! -z "$BIN" ]; then
+         if [[ ! -z "$BIN" ]]; then
            build_bin $BIN
          fi
       done
@@ -267,27 +295,32 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
       ''}
       # Remove object files to avoid "wrong ELF type"
       find target -type f -name "*.o" -print0 | xargs -0 rm -f
+    '' + finalBins + ''
       runHook postBuild
-    '' + finalBins;
+    '';
 
-    installCrate = crateName: ''
+    installCrate = crateName: metadata: ''
+      runHook preInstall
       mkdir -p $out
-      if [ -s target/env ]; then
+      if [[ -s target/env ]]; then
         cp target/env $out/env
       fi
-      if [ -s target/link.final ]; then
+      if [[ -s target/link.final ]]; then
         mkdir -p $out/lib
         cp target/link.final $out/lib/link
       fi
-      if [ "$(ls -A target/lib)" ]; then
+      if [[ "$(ls -A target/lib)" ]]; then
         mkdir -p $out/lib
         cp target/lib/* $out/lib #*/
+        for lib in $out/lib/*.so $out/lib/*.dylib; do #*/
+          ln -s $lib $(echo $lib | sed -e "s/-${metadata}//")
+        done
       fi
-      if [ "$(ls -A target/build)" ]; then # */
+      if [[ "$(ls -A target/build)" ]]; then # */
         mkdir -p $out/lib
         cp -r target/build/* $out/lib # */
       fi
-      if [ "$(ls -A target/bin)" ]; then
+      if [[ "$(ls -A target/bin)" ]]; then
         mkdir -p $out/bin
         cp -P target/bin/* $out/bin # */
       fi
@@ -295,9 +328,16 @@ let buildCrate = { crateName, crateVersion, crateAuthors, buildDependencies,
     '';
 in
 
-crate_: lib.makeOverridable ({ rust, release, verbose, features, buildInputs, crateOverrides }:
+crate_: lib.makeOverridable ({ rust, release, verbose, features, buildInputs, crateOverrides,
+  dependencies, buildDependencies,
+  extraRustcOpts,
+  preUnpack, postUnpack, prePatch, patches, postPatch,
+  preConfigure, postConfigure, preBuild, postBuild, preInstall, postInstall }:
 
 let crate = crate_ // (lib.attrByPath [ crate_.crateName ] (attr: {}) crateOverrides crate_);
+    release_ = release;
+    dependencies_ = dependencies;
+    buildDependencies_ = buildDependencies;
     processedAttrs = [
       "src" "buildInputs" "crateBin" "crateLib" "libName" "libPath"
       "buildDependencies" "dependencies" "features"
@@ -309,6 +349,7 @@ in
 stdenv.mkDerivation (rec {
 
     inherit (crate) crateName;
+    inherit preUnpack postUnpack prePatch patches postPatch preConfigure postConfigure preBuild postBuild preInstall postInstall;
 
     src = if lib.hasAttr "src" crate then
         crate.src
@@ -319,12 +360,12 @@ stdenv.mkDerivation (rec {
     dependencies =
       builtins.map
         (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
-        (crate.dependencies or []);
+        dependencies_;
 
     buildDependencies =
       builtins.map
         (dep: dep.override { rust = rust; release = release; verbose = verbose; crateOverrides = crateOverrides; })
-        (crate.buildDependencies or []);
+        buildDependencies_;
 
     completeDeps = lib.lists.unique (dependencies ++ lib.lists.concatMap (dep: dep.completeDeps) dependencies);
     completeBuildDeps = lib.lists.unique (
@@ -339,7 +380,8 @@ stdenv.mkDerivation (rec {
     libName = if crate ? libName then crate.libName else crate.crateName;
     libPath = if crate ? libPath then crate.libPath else "";
 
-    metadata = builtins.substring 0 10 (builtins.hashString "sha256" (crateName + "-" + crateVersion));
+    depsMetadata = builtins.foldl' (str: dep: str + dep.metadata) "" (dependencies ++ buildDependencies);
+    metadata = builtins.substring 0 10 (builtins.hashString "sha256" (crateName + "-" + crateVersion + "___" + toString crateFeatures + "___" + depsMetadata ));
 
     crateBin = if crate ? crateBin then
        builtins.foldl' (bins: bin:
@@ -370,20 +412,42 @@ stdenv.mkDerivation (rec {
     crateAuthors = if crate ? authors && lib.isList crate.authors then crate.authors else [];
     crateType =
       if lib.attrByPath ["procMacro"] false crate then "proc-macro" else
-      if lib.attrByPath ["plugin"] false crate then "dylib" else "lib";
+      if lib.attrByPath ["plugin"] false crate then "dylib" else
+      if crate ? type then crate.type else "lib";
     colors = lib.attrByPath [ "colors" ] "always" crate;
-    buildPhase = buildCrate {
+    configurePhase = configureCrate {
       inherit crateName dependencies buildDependencies completeDeps completeBuildDeps
+              crateFeatures libName build release libPath crateVersion
+              crateAuthors verbose colors;
+    };
+    extraRustcOpts = if crate ? extraRustcOpts then crate.extraRustcOpts else [];
+    buildPhase = buildCrate {
+      inherit crateName dependencies completeDeps completeBuildDeps
               crateFeatures libName build release libPath crateType crateVersion
-              crateAuthors metadata crateBin finalBins verbose colors;
+              crateAuthors metadata crateBin finalBins verbose colors extraRustcOpts;
     };
-    installPhase = installCrate crateName;
+    installPhase = installCrate crateName metadata;
 
-} // extraDerivationAttrs)) {
+} // extraDerivationAttrs
+)) {
   rust = rustc;
-  release = true;
-  verbose = true;
+  release = crate_.release or true;
+  verbose = crate_.verbose or true;
+  extraRustcOpts = [];
   features = [];
   buildInputs = [];
   crateOverrides = defaultCrateOverrides;
+  preUnpack = crate_.preUnpack or "";
+  postUnpack = crate_.postUnpack or "";
+  prePatch = crate_.prePatch or "";
+  patches = crate_.patches or [];
+  postPatch = crate_.postPatch or "";
+  preConfigure = crate_.preConfigure or "";
+  postConfigure = crate_.postConfigure or "";
+  preBuild = crate_.preBuild or "";
+  postBuild = crate_.postBuild or "";
+  preInstall = crate_.preInstall or "";
+  postInstall = crate_.postInstall or "";
+  dependencies = crate_.dependencies or [];
+  buildDependencies = crate_.buildDependencies or [];
 }
diff --git a/pkgs/build-support/rust/carnix.nix b/pkgs/build-support/rust/carnix.nix
index 8b0af499c8f12..ebb46b0f59211 100644
--- a/pkgs/build-support/rust/carnix.nix
+++ b/pkgs/build-support/rust/carnix.nix
@@ -1,4 +1,4 @@
-# Generated by carnix 0.6.5: carnix -o carnix.nix Cargo.lock --src ./.
+# Generated by carnix 0.6.5: carnix -o carnix.nix Cargo.lock
 { lib, buildPlatform, buildRustCrate, fetchgit }:
 let kernel = buildPlatform.parsed.kernel.name;
     abi = buildPlatform.parsed.abi.name;
@@ -18,7 +18,7 @@ let kernel = buildPlatform.parsed.kernel.name;
     ) [] (builtins.attrNames feat);
 in
 rec {
-  carnix = f: carnix_0_6_5 { features = carnix_0_6_5_features { carnix_0_6_5 = f; }; };
+  carnix = f: carnix_0_6_6 { features = carnix_0_6_6_features { carnix_0_6_6 = f; }; };
   aho_corasick_0_6_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
     crateName = "aho-corasick";
     version = "0.6.3";
@@ -71,11 +71,11 @@ rec {
     sha256 = "0p4b3nr0s5nda2qmm7xdhnvh4lkqk3xd8l9ffmwbvqw137vx7mj1";
     inherit dependencies buildDependencies features;
   };
-  carnix_0_6_5_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
+  carnix_0_6_6_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
     crateName = "carnix";
-    version = "0.6.5";
+    version = "0.6.6";
     authors = [ "pe@pijul.org <pe@pijul.org>" ];
-    sha256 = "0r952s5az5mhw7z2r421i5lr0w5h436hah61md2bdb3204c2pl9c";
+    sha256 = "1ai2r52j6vlrclhb7cvifx3lsg9naiy3jpsrbi3mmfmr6zbi7rdw";
     inherit dependencies buildDependencies features;
   };
   cc_1_0_3_ = { dependencies?[], buildDependencies?[], features?[] }: buildRustCrate {
@@ -623,11 +623,11 @@ rec {
       (f.bitflags_1_0_1.default or false) ||
       (bitflags_1_0_1.default or false);
   }) [];
-  carnix_0_6_5 = { features?(carnix_0_6_5_features {}) }: carnix_0_6_5_ {
+  carnix_0_6_6 = { features?(carnix_0_6_6_features {}) }: carnix_0_6_6_ {
     dependencies = mapFeatures features ([ clap_2_28_0 env_logger_0_5_3 error_chain_0_11_0 itertools_0_7_3 log_0_4_1 nom_3_2_1 regex_0_2_2 rusqlite_0_13_0 serde_1_0_21 serde_derive_1_0_21 serde_json_1_0_6 tempdir_0_3_5 toml_0_4_5 ]);
   };
-  carnix_0_6_5_features = f: updateFeatures f (rec {
-    carnix_0_6_5.default = (f.carnix_0_6_5.default or true);
+  carnix_0_6_6_features = f: updateFeatures f (rec {
+    carnix_0_6_6.default = (f.carnix_0_6_6.default or true);
     clap_2_28_0.default = true;
     env_logger_0_5_3.default = true;
     error_chain_0_11_0.default = true;
diff --git a/pkgs/build-support/rust/default.nix b/pkgs/build-support/rust/default.nix
index 63d08e1d03114..83ef146de5f8a 100644
--- a/pkgs/build-support/rust/default.nix
+++ b/pkgs/build-support/rust/default.nix
@@ -4,7 +4,7 @@ let
     inherit stdenv cacert git rust cargo-vendor;
   };
 in
-{ name, cargoSha256
+{ name, cargoSha256 ? null
 , src ? null
 , srcs ? null
 , sourceRoot ? null
@@ -13,15 +13,31 @@ in
 , cargoUpdateHook ? ""
 , cargoDepsHook ? ""
 , cargoBuildFlags ? []
+
+, cargoVendorDir ? null
 , ... } @ args:
 
+assert cargoVendorDir == null -> cargoSha256 != null;
+
 let
   lib = stdenv.lib;
 
-  cargoDeps = fetchcargo {
-    inherit name src srcs sourceRoot cargoUpdateHook;
-    sha256 = cargoSha256;
-  };
+  cargoDeps = if cargoVendorDir == null
+    then fetchcargo {
+        inherit name src srcs sourceRoot cargoUpdateHook;
+        sha256 = cargoSha256;
+      }
+    else null;
+
+  setupVendorDir = if cargoVendorDir == null
+    then ''
+      unpackFile "$cargoDeps"
+      cargoDepsCopy=$(stripHash $(basename $cargoDeps))
+      chmod -R +w "$cargoDepsCopy"
+    ''
+    else ''
+      cargoDepsCopy="$sourceRoot/${cargoVendorDir}"
+    '';
 
 in stdenv.mkDerivation (args // {
   inherit cargoDeps;
@@ -39,9 +55,7 @@ in stdenv.mkDerivation (args // {
   postUnpack = ''
     eval "$cargoDepsHook"
 
-    unpackFile "$cargoDeps"
-    cargoDepsCopy=$(stripHash $(basename $cargoDeps))
-    chmod -R +w "$cargoDepsCopy"
+    ${setupVendorDir}
 
     mkdir .cargo
     cat >.cargo/config <<-EOF
diff --git a/pkgs/data/fonts/babelstone-han/default.nix b/pkgs/data/fonts/babelstone-han/default.nix
index 97333f7d953a2..b33295f89b2c2 100644
--- a/pkgs/data/fonts/babelstone-han/default.nix
+++ b/pkgs/data/fonts/babelstone-han/default.nix
@@ -1,16 +1,16 @@
 {stdenv, fetchzip}:
 
 let
-  version = "10.0.0";
+  version = "10.0.2";
 in fetchzip {
   name = "babelstone-han-${version}";
 
-  url = http://www.babelstone.co.uk/Fonts/0816/BabelStoneHan.zip;
+  url = http://www.babelstone.co.uk/Fonts/7932/BabelStoneHan.zip;
   postFetch = ''
     mkdir -p $out/share/fonts/truetype
     unzip $downloadedFile '*.ttf' -d $out/share/fonts/truetype
   '';
-  sha256 = "0648hv5c1hq3bq7mlk7bnmflzzqj4wh137bjqyrwj5hy3nqzvl5r";
+  sha256 = "17r5cf028v66yzjf9qbncn4rchv2xxkl2adxr35ppg1l7zssz9v6";
 
   meta = with stdenv.lib; {
     description = "Unicode CJK font with over 32600 Han characters";
diff --git a/pkgs/data/misc/hackage/default.nix b/pkgs/data/misc/hackage/default.nix
index bdf2abf9b6f84..7f7932d01b4f0 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/00012ce23948b9547fe6609d595109741e0f58cf.tar.gz";
-  sha256 = "1swgfx7b41jxq0pyws2wipdiyvy8nn6cp54yj3ip3r9l3gdv3f7b";
+  url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/4c8b3501ea6fc9f41cd192ddc08e2d9583a1e679.tar.gz";
+  sha256 = "0aa4pimgllqgn8bcy2p2cdwbpz6s6wk8j41w35jvzaqfj15gysnq";
 }
diff --git a/pkgs/development/compilers/haxe/default.nix b/pkgs/development/compilers/haxe/default.nix
index c6b4913c62364..a420949711e04 100644
--- a/pkgs/development/compilers/haxe/default.nix
+++ b/pkgs/development/compilers/haxe/default.nix
@@ -72,8 +72,8 @@ in {
     '';
   };
   haxe_3_4 = generic {
-    version = "3.4.4";
-    sha256 = "057psarsmz8q2y9pqv5221vpdya241gcy8xnl2wg9wyscn6z1lx6";
+    version = "3.4.6";
+    sha256 = "1myc4b8fwp0f9vky17wv45n34a583f5sjvajsc93f5gm1wanp4if";
     prePatch = ''
       sed -i -e 's|"/usr/lib/haxe/std/";|"'"$out/lib/haxe/std/"'";\n&|g' src/main.ml
       sed -i -e 's|"neko"|"${neko}/bin/neko"|g' extra/haxelib_src/src/haxelib/client/Main.hx
diff --git a/pkgs/development/compilers/llvm/4/clang/default.nix b/pkgs/development/compilers/llvm/4/clang/default.nix
index 77863ab4f1eae..5531fd2ab77e4 100644
--- a/pkgs/development/compilers/llvm/4/clang/default.nix
+++ b/pkgs/development/compilers/llvm/4/clang/default.nix
@@ -43,6 +43,8 @@ let
 
       # Patch for standalone doc building
       sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
+    '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/Tools.cpp
     '';
 
     outputs = [ "out" "lib" "python" ];
diff --git a/pkgs/development/compilers/llvm/4/dynamiclibrary-musl.patch b/pkgs/development/compilers/llvm/4/dynamiclibrary-musl.patch
new file mode 100644
index 0000000000000..d5d7f07b5e113
--- /dev/null
+++ b/pkgs/development/compilers/llvm/4/dynamiclibrary-musl.patch
@@ -0,0 +1,33 @@
+From d12ecb83d01dcb580dd94f4d57828f33d3eb4c35 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 18 Feb 2016 15:33:21 +0100
+Subject: [PATCH 3/3] Fix DynamicLibrary to build with musl libc
+
+stdin/out/err is part of the libc and not the kernel so we check for the
+specific libc that does the unexpected instead of linux.
+
+This is needed for making it build with musl libc.
+---
+ lib/Support/DynamicLibrary.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/lib/Support/DynamicLibrary.cpp b/lib/Support/DynamicLibrary.cpp
+index 9a7aeb5..0c1c8f8 100644
+--- a/lib/Support/DynamicLibrary.cpp
++++ b/lib/Support/DynamicLibrary.cpp
+@@ -140,10 +140,10 @@ void* DynamicLibrary::SearchForAddressOfSymbol(const char *symbolName) {
+ #define EXPLICIT_SYMBOL(SYM) \
+    if (!strcmp(symbolName, #SYM)) return &SYM
+ 
+-// On linux we have a weird situation. The stderr/out/in symbols are both
++// On GNU libc we have a weird situation. The stderr/out/in symbols are both
+ // macros and global variables because of standards requirements. So, we
+ // boldly use the EXPLICIT_SYMBOL macro without checking for a #define first.
+-#if defined(__linux__) and !defined(__ANDROID__)
++#if defined(__GLIBC__)
+   {
+     EXPLICIT_SYMBOL(stderr);
+     EXPLICIT_SYMBOL(stdout);
+-- 
+2.7.3
+
diff --git a/pkgs/development/compilers/llvm/4/libc++/default.nix b/pkgs/development/compilers/llvm/4/libc++/default.nix
index db751bcffd424..f28957c351856 100644
--- a/pkgs/development/compilers/llvm/4/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/4/libc++/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetch, cmake, llvm, libcxxabi, fixDarwinDylibNames, version }:
+{ lib, stdenv, fetch, cmake, python, llvm, libcxxabi, fixDarwinDylibNames, version }:
 
 stdenv.mkDerivation rec {
   name = "libc++-${version}";
@@ -15,6 +15,9 @@ stdenv.mkDerivation rec {
     ./pthread_mach_thread_np.patch
     # glibc 2.26 fix
     ./xlocale-glibc-2.26.patch
+  ] ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
+    ../../libcxx-0001-musl-hacks.patch
+    ./max_align_t.patch
   ];
 
   prePatch = ''
@@ -24,9 +27,10 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
     cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
+  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
+    patchShebangs utils/cat_files.py
   '';
-
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl python;
 
   buildInputs = [ libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
@@ -34,7 +38,7 @@ stdenv.mkDerivation rec {
     "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
     "-DLIBCXX_LIBCPPABI_VERSION=2"
     "-DLIBCXX_CXX_ABI=libcxxabi"
-  ];
+  ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "-DLIBCXX_HAS_MUSL_LIBC=1";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/compilers/llvm/4/libc++/max_align_t.patch b/pkgs/development/compilers/llvm/4/libc++/max_align_t.patch
new file mode 100644
index 0000000000000..060be5b23de82
--- /dev/null
+++ b/pkgs/development/compilers/llvm/4/libc++/max_align_t.patch
@@ -0,0 +1,54 @@
+From 917331c88bd2afce0cf0fdbcab55a64541b5bcf0 Mon Sep 17 00:00:00 2001
+From: "David L. Jones" <dlj@google.com>
+Date: Fri, 10 Feb 2017 01:27:42 +0000
+Subject: [PATCH] Check for musl-libc's max_align_t in addition to other
+ variants.
+
+Summary:
+Libcxx will define its own max_align_t when it is not available. However, the
+availability checks today only check for Clang's definition and GCC's
+definition. In particular, it does not check for musl's definition, which is the
+same as GCC's but guarded with a different macro.
+
+Reviewers: mclow.lists, EricWF
+
+Reviewed By: EricWF
+
+Subscribers: chandlerc, cfe-commits
+
+Differential Revision: https://reviews.llvm.org/D28478
+
+git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@294683 91177308-0d34-0410-b5e6-96231b3b80d8
+---
+ include/cstddef  | 3 ++-
+ include/stddef.h | 3 ++-
+ 2 files changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/include/cstddef b/include/cstddef
+index edd106c00..103898b7d 100644
+--- a/include/cstddef
++++ b/include/cstddef
+@@ -48,7 +48,8 @@ _LIBCPP_BEGIN_NAMESPACE_STD
+ using ::ptrdiff_t;
+ using ::size_t;
+ 
+-#if defined(__CLANG_MAX_ALIGN_T_DEFINED) || defined(_GCC_MAX_ALIGN_T)
++#if defined(__CLANG_MAX_ALIGN_T_DEFINED) || defined(_GCC_MAX_ALIGN_T) || \
++    defined(__DEFINED_max_align_t)
+ // Re-use the compiler's <stddef.h> max_align_t where possible.
+ using ::max_align_t;
+ #else
+diff --git a/include/stddef.h b/include/stddef.h
+index 8841bbea2..faf8552d8 100644
+--- a/include/stddef.h
++++ b/include/stddef.h
+@@ -53,7 +53,8 @@ using std::nullptr_t;
+ }
+ 
+ // Re-use the compiler's <stddef.h> max_align_t where possible.
+-#if !defined(__CLANG_MAX_ALIGN_T_DEFINED) && !defined(_GCC_MAX_ALIGN_T)
++#if !defined(__CLANG_MAX_ALIGN_T_DEFINED) && !defined(_GCC_MAX_ALIGN_T) && \
++    !defined(__DEFINED_max_align_t)
+ typedef long double max_align_t;
+ #endif
+ 
diff --git a/pkgs/development/compilers/llvm/4/libc++abi.nix b/pkgs/development/compilers/llvm/4/libc++abi.nix
index 6a3d91101360b..41eb40e124eb0 100644
--- a/pkgs/development/compilers/llvm/4/libc++abi.nix
+++ b/pkgs/development/compilers/llvm/4/libc++abi.nix
@@ -14,6 +14,9 @@ stdenv.mkDerivation {
     export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
     export TRIPLE=x86_64-apple-darwin
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch}
+    patch -p1 -d $(ls -d libcxx-*) -i ${./libc++/max_align_t.patch}
   '';
 
   installPhase = if stdenv.isDarwin
diff --git a/pkgs/development/compilers/llvm/4/llvm.nix b/pkgs/development/compilers/llvm/4/llvm.nix
index ceaa45fe8d730..7fd94316d738e 100644
--- a/pkgs/development/compilers/llvm/4/llvm.nix
+++ b/pkgs/development/compilers/llvm/4/llvm.nix
@@ -80,6 +80,9 @@ in stdenv.mkDerivation (rec {
     )
   '' + stdenv.lib.optionalString stdenv.isAarch64 ''
     patch -p0 < ${../aarch64.patch}
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -i ${../TLI-musl.patch}
+    patch -p1 -i ${./dynamiclibrary-musl.patch}
   '';
 
   # hacky fix: created binaries need to be run before installation
@@ -110,6 +113,14 @@ in stdenv.mkDerivation (rec {
   ++ stdenv.lib.optionals (isDarwin) [
     "-DLLVM_ENABLE_LIBCXX=ON"
     "-DCAN_TARGET_i386=false"
+  ]
+  ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
+
+    "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
+    "-DCOMPILER_RT_BUILD_XRAY=OFF"
   ];
 
   postBuild = ''
diff --git a/pkgs/development/compilers/llvm/5/clang/default.nix b/pkgs/development/compilers/llvm/5/clang/default.nix
index c8eafce4e3960..b5aea54b57715 100644
--- a/pkgs/development/compilers/llvm/5/clang/default.nix
+++ b/pkgs/development/compilers/llvm/5/clang/default.nix
@@ -44,6 +44,8 @@ let
 
       # Patch for standalone doc building
       sed -i '1s,^,find_package(Sphinx REQUIRED)\n,' docs/CMakeLists.txt
+    '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+      sed -i -e 's/lgcc_s/lgcc_eh/' lib/Driver/ToolChains/*.cpp
     '';
 
     outputs = [ "out" "lib" "python" ];
diff --git a/pkgs/development/compilers/llvm/5/libc++/default.nix b/pkgs/development/compilers/llvm/5/libc++/default.nix
index 6f03e225ad658..9ddeea7ef79a6 100644
--- a/pkgs/development/compilers/llvm/5/libc++/default.nix
+++ b/pkgs/development/compilers/llvm/5/libc++/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetch, cmake, llvm, libcxxabi, fixDarwinDylibNames, version }:
+{ lib, stdenv, fetch, cmake, python, llvm, libcxxabi, fixDarwinDylibNames, version }:
 
 stdenv.mkDerivation rec {
   name = "libc++-${version}";
@@ -10,6 +10,12 @@ stdenv.mkDerivation rec {
     export LIBCXXABI_INCLUDE_DIR="$PWD/$(ls -d libcxxabi-${version}*)/include"
   '';
 
+  # on next rebuild, this can be replaced with optionals; for now set to null to avoid
+  # patches = stdenv.lib.optionals stdenv.hostPlatform.isMusl [
+  patches = if stdenv.hostPlatform.isMusl then [
+    ../../libcxx-0001-musl-hacks.patch
+  ] else null;
+
   prePatch = ''
     substituteInPlace lib/CMakeLists.txt --replace "/usr/lib/libc++" "\''${LIBCXX_LIBCXXABI_LIB_PATH}/libc++"
   '';
@@ -17,9 +23,10 @@ stdenv.mkDerivation rec {
   preConfigure = ''
     # Get headers from the cxxabi source so we can see private headers not installed by the cxxabi package
     cmakeFlagsArray=($cmakeFlagsArray -DLIBCXX_CXX_ABI_INCLUDE_PATHS="$LIBCXXABI_INCLUDE_DIR")
+  '' + lib.optionalString stdenv.hostPlatform.isMusl ''
+    patchShebangs utils/cat_files.py
   '';
-
-  nativeBuildInputs = [ cmake ];
+  nativeBuildInputs = [ cmake ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl python;
 
   buildInputs = [ libcxxabi ] ++ lib.optional stdenv.isDarwin fixDarwinDylibNames;
 
@@ -27,7 +34,7 @@ stdenv.mkDerivation rec {
     "-DLIBCXX_LIBCXXABI_LIB_PATH=${libcxxabi}/lib"
     "-DLIBCXX_LIBCPPABI_VERSION=2"
     "-DLIBCXX_CXX_ABI=libcxxabi"
-  ];
+  ] ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "-DLIBCXX_HAS_MUSL_LIBC=1";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/compilers/llvm/5/libc++abi.nix b/pkgs/development/compilers/llvm/5/libc++abi.nix
index 166f4260291ff..6d27dcd47b0b9 100644
--- a/pkgs/development/compilers/llvm/5/libc++abi.nix
+++ b/pkgs/development/compilers/llvm/5/libc++abi.nix
@@ -14,6 +14,8 @@ stdenv.mkDerivation {
     export cmakeFlags="-DLLVM_PATH=$PWD/$(ls -d llvm-*) -DLIBCXXABI_LIBCXX_PATH=$PWD/$(ls -d libcxx-*)"
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
     export TRIPLE=x86_64-apple-darwin
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -d $(ls -d libcxx-*) -i ${../libcxx-0001-musl-hacks.patch}
   '';
 
   installPhase = if stdenv.isDarwin
diff --git a/pkgs/development/compilers/llvm/5/llvm.nix b/pkgs/development/compilers/llvm/5/llvm.nix
index 1067fa886bcb9..f574eb05f92bb 100644
--- a/pkgs/development/compilers/llvm/5/llvm.nix
+++ b/pkgs/development/compilers/llvm/5/llvm.nix
@@ -74,6 +74,11 @@ in stdenv.mkDerivation (rec {
     patch -p1 -i ${./compiler-rt-codesign.patch} -d projects/compiler-rt
   '' + stdenv.lib.optionalString stdenv.isAarch64 ''
     patch -p0 < ${../aarch64.patch}
+  '' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
+    patch -p1 -i ${../TLI-musl.patch}
+    substituteInPlace unittests/Support/CMakeLists.txt \
+      --replace "add_subdirectory(DynamicLibrary)" ""
+    rm unittests/Support/DynamicLibrary/DynamicLibraryTest.cpp
   '';
 
   # hacky fix: created binaries need to be run before installation
@@ -104,6 +109,14 @@ in stdenv.mkDerivation (rec {
   ++ stdenv.lib.optionals (isDarwin) [
     "-DLLVM_ENABLE_LIBCXX=ON"
     "-DCAN_TARGET_i386=false"
+  ]
+  ++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
+    "-DLLVM_HOST_TRIPLE=${stdenv.hostPlatform.config}"
+    "-DLLVM_DEFAULT_TARGET_TRIPLE=${stdenv.targetPlatform.config}"
+    "-DTARGET_TRIPLE=${stdenv.targetPlatform.config}"
+
+    "-DCOMPILER_RT_BUILD_SANITIZERS=OFF"
+    "-DCOMPILER_RT_BUILD_XRAY=OFF"
   ];
 
   postBuild = ''
diff --git a/pkgs/development/compilers/llvm/TLI-musl.patch b/pkgs/development/compilers/llvm/TLI-musl.patch
new file mode 100644
index 0000000000000..1a69080866372
--- /dev/null
+++ b/pkgs/development/compilers/llvm/TLI-musl.patch
@@ -0,0 +1,35 @@
+From 5c571082fdaf61f6df19d9b7137dc26d71334058 Mon Sep 17 00:00:00 2001
+From: Natanael Copa <ncopa@alpinelinux.org>
+Date: Thu, 18 Feb 2016 10:33:04 +0100
+Subject: [PATCH 2/3] Fix build with musl libc
+
+On musl libc the fopen64 and fopen are the same thing, but for
+compatibility they have a `#define fopen64 fopen`. Same applies for
+fseek64, fstat64, fstatvfs64, ftello64, lstat64, stat64 and tmpfile64.
+---
+ include/llvm/Analysis/TargetLibraryInfo.h | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git a/include/llvm/Analysis/TargetLibraryInfo.h b/include/llvm/Analysis/TargetLibraryInfo.h
+index 7becdf0..7f14427 100644
+--- a/include/llvm/Analysis/TargetLibraryInfo.h
++++ b/include/llvm/Analysis/TargetLibraryInfo.h
+@@ -18,6 +18,15 @@
+ #include "llvm/IR/Module.h"
+ #include "llvm/Pass.h"
+ 
++#undef fopen64
++#undef fseeko64
++#undef fstat64
++#undef fstatvfs64
++#undef ftello64
++#undef lstat64
++#undef stat64
++#undef tmpfile64
++
+ namespace llvm {
+ /// VecDesc - Describes a possible vectorization of a function.
+ /// Function 'VectorFnName' is equivalent to 'ScalarFnName' vectorized
+-- 
+2.7.3
+
diff --git a/pkgs/development/compilers/llvm/libcxx-0001-musl-hacks.patch b/pkgs/development/compilers/llvm/libcxx-0001-musl-hacks.patch
new file mode 100644
index 0000000000000..bcb5ad8cfb87d
--- /dev/null
+++ b/pkgs/development/compilers/llvm/libcxx-0001-musl-hacks.patch
@@ -0,0 +1,39 @@
+From 1c936d7fda3275265e37f93697232a1ed652390f Mon Sep 17 00:00:00 2001
+From: Will Dietz <w@wdtz.org>
+Date: Sat, 9 Jul 2016 19:22:54 -0500
+Subject: [PATCH] musl fixes/hacks
+
+Conflicts:
+
+	include/__config
+	include/locale
+	src/locale.cpp
+---
+ include/locale |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/include/locale b/include/locale
+index 3d804e8..9b01f5b 100644
+--- a/include/locale
++++ b/include/locale
+@@ -695,7 +695,7 @@ __num_get_signed_integral(const char* __a, const char* __a_end,
+         typename remove_reference<decltype(errno)>::type __save_errno = errno;
+         errno = 0;
+         char *__p2;
+-        long long __ll = strtoll_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
++        long long __ll = strtoll(__a, &__p2, __base);
+         typename remove_reference<decltype(errno)>::type __current_errno = errno;
+         if (__current_errno == 0)
+             errno = __save_errno;
+@@ -735,7 +735,7 @@ __num_get_unsigned_integral(const char* __a, const char* __a_end,
+         typename remove_reference<decltype(errno)>::type __save_errno = errno;
+         errno = 0;
+         char *__p2;
+-        unsigned long long __ll = strtoull_l(__a, &__p2, __base, _LIBCPP_GET_C_LOCALE);
++        unsigned long long __ll = strtoull(__a, &__p2, __base);
+         typename remove_reference<decltype(errno)>::type __current_errno = errno;
+         if (__current_errno == 0)
+             errno = __save_errno;
+-- 
+1.7.1
+
diff --git a/pkgs/development/compilers/mono/5.8.nix b/pkgs/development/compilers/mono/5.8.nix
new file mode 100644
index 0000000000000..6db9e19807bbc
--- /dev/null
+++ b/pkgs/development/compilers/mono/5.8.nix
@@ -0,0 +1,8 @@
+{ stdenv, callPackage, Foundation, libobjc }:
+
+callPackage ./generic-cmake.nix (rec {
+  inherit Foundation libobjc;
+  version = "5.8.0.108";
+  sha256 = "177khb06dfll0pcncr84vvibni7f8m5fgb30ndgsdjk25xfcbmzc";
+  enableParallelBuilding = false;
+})
diff --git a/pkgs/development/compilers/rust/binaryBuild.nix b/pkgs/development/compilers/rust/binaryBuild.nix
index 6c6f6b55e1e6f..1904c12dfdc14 100644
--- a/pkgs/development/compilers/rust/binaryBuild.nix
+++ b/pkgs/development/compilers/rust/binaryBuild.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, makeWrapper, cacert, zlib, buildRustPackage, curl, darwin
+{ stdenv, fetchurl, makeWrapper, bash, cacert, zlib, buildRustPackage, curl, darwin
 , version
 , src
 , platform
@@ -34,9 +34,11 @@ rec {
       license = [ licenses.mit licenses.asl20 ];
     };
 
-    phases = ["unpackPhase" "installPhase" "fixupPhase"];
+    buildInputs = [ bash ] ++ stdenv.lib.optional stdenv.isDarwin Security;
 
-    buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
+    postPatch = ''
+      patchShebangs .
+    '';
 
     installPhase = ''
       ./install.sh --prefix=$out \
@@ -86,9 +88,11 @@ rec {
       license = [ licenses.mit licenses.asl20 ];
     };
 
-    phases = ["unpackPhase" "installPhase" "fixupPhase"];
+    buildInputs = [ makeWrapper bash ] ++ stdenv.lib.optional stdenv.isDarwin Security;
 
-    buildInputs = [ makeWrapper ] ++ stdenv.lib.optional stdenv.isDarwin Security;
+    postPatch = ''
+      patchShebangs .
+    '';
 
     installPhase = ''
       patchShebangs ./install.sh
diff --git a/pkgs/development/compilers/rust/bootstrap.nix b/pkgs/development/compilers/rust/bootstrap.nix
index 034334f58500b..9b488bab5b3bd 100644
--- a/pkgs/development/compilers/rust/bootstrap.nix
+++ b/pkgs/development/compilers/rust/bootstrap.nix
@@ -3,16 +3,16 @@
 let
   # Note: the version MUST be one version prior to the version we're
   # building
-  version = "1.21.0";
+  version = "1.23.0";
 
-  # fetch hashes by running `print-hashes.sh 1.21.0`
+  # fetch hashes by running `print-hashes.sh 1.23.0`
   hashes = {
-    i686-unknown-linux-gnu = "b7caed0f602cdb8ef22e0bfa9125a65bec411e15c0b8901d937e43303ec7dbee";
-    x86_64-unknown-linux-gnu = "b41e70e018402bc04d02fde82f91bea24428e6be432f0df12ac400cfb03108e8";
-    armv7-unknown-linux-gnueabihf = "416fa6f107ad9e386002e6af1aec495472e2ee489c842183dd429a25b07488d6";
-    aarch64-unknown-linux-gnu = "491ee6c43cc672006968d665bd34c94cc2219ef3592d93d38097c97eaaa864c3";
-    i686-apple-darwin = "c8b0fabeebcde66b683f3a871187e614e07305adda414c2862cb332aecb2b3bf";
-    x86_64-apple-darwin = "75a7f4bd7c72948030bb9e421df27e8a650dea826fb5b836cf59d23d6f985a0d";
+    i686-unknown-linux-gnu = "dc5bd0ef47e1036c8ca64676d8967102cb86ce4bf50b90a9845951c3e940423f";
+    x86_64-unknown-linux-gnu = "9a34b23a82d7f3c91637e10ceefb424539dcfa327c2dcd292ff10c047b1fdc7e";
+    armv7-unknown-linux-gnueabihf = "587027899267f1961520438c2c7f6775fe224160d43ddf07332b9b943a26b08e";
+    aarch64-unknown-linux-gnu = "38379fbd976d2286cb73f21466db40a636a583b9f8a80af5eea73617c7912bc7";
+    i686-apple-darwin = "4709eb1ad2fb871fdaee4b3449569cef366b0d170453cf17484a12286564f2ad";
+    x86_64-apple-darwin = "9274e977322bb4b153f092255ac9bd85041142c73eaabf900cb2ef3d3abb2eba";
   };
 
   platform =
diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix
index 4c397c8c1a485..fecf80a448532 100644
--- a/pkgs/development/compilers/rust/cargo.nix
+++ b/pkgs/development/compilers/rust/cargo.nix
@@ -1,7 +1,8 @@
 { stdenv, fetchFromGitHub, file, curl, pkgconfig, python, openssl, cmake, zlib
 , makeWrapper, libiconv, cacert, rustPlatform, rustc, libgit2, darwin
-, version, srcSha, cargoSha256
-, patches ? [] }:
+, version
+, patches ? []
+, src }:
 
 let
   inherit (darwin.apple_sdk.frameworks) CoreFoundation;
@@ -9,17 +10,12 @@ in
 
 rustPlatform.buildRustPackage rec {
   name = "cargo-${version}";
-  inherit version;
+  inherit version src patches;
 
-  src = fetchFromGitHub {
-    owner  = "rust-lang";
-    repo   = "cargo";
-    rev    = version;
-    sha256 = srcSha;
-  };
-
-  inherit cargoSha256;
-  inherit patches;
+  # the rust source tarball already has all the dependencies vendored, no need to fetch them again
+  cargoVendorDir = "src/vendor";
+  preBuild = "cd src; pushd tools/cargo";
+  postBuild = "popd";
 
   passthru.rustc = rustc;
 
diff --git a/pkgs/development/compilers/rust/default.nix b/pkgs/development/compilers/rust/default.nix
index 413751cf25518..dd15580c11b83 100644
--- a/pkgs/development/compilers/rust/default.nix
+++ b/pkgs/development/compilers/rust/default.nix
@@ -6,21 +6,20 @@
 
 let
   rustPlatform = recurseIntoAttrs (makeRustPlatform (callPackage ./bootstrap.nix {}));
-  version = "1.22.1";
-in
-rec {
+  version = "1.24.0";
+  cargoVersion = "0.24.0";
+  src = fetchurl {
+    url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz";
+    sha256 = "17v3jpyky8vkkgai5yd2zr8zl87qpgj6dx99gx27x1sf0kv7d0mv";
+  };
+in rec {
   rustc = callPackage ./rustc.nix {
-    inherit stdenv llvm targets targetPatches targetToolchains rustPlatform version;
+    inherit stdenv llvm targets targetPatches targetToolchains rustPlatform version src;
 
     forceBundledLLVM = true;
 
     configureFlags = [ "--release-channel=stable" ];
 
-    src = fetchurl {
-      url = "https://static.rust-lang.org/dist/rustc-${version}-src.tar.gz";
-      sha256 = "1lrzzp0nh7s61wgfs2h6ilaqi6iq89f1pd1yaf65l87bssyl4ylb";
-    };
-
     patches = [
       ./patches/0001-Disable-fragile-tests-libstd-net-tcp-on-Darwin-Linux.patch
     ] ++ stdenv.lib.optional stdenv.needsPax ./patches/grsec.patch
@@ -30,10 +29,8 @@ rec {
   };
 
   cargo = callPackage ./cargo.nix rec {
-    version = "0.23.0";
-    srcSha = "14b2n1msxma19ydchj54hd7f2zdsr524fg133dkmdn7j65f1x6aj";
-    cargoSha256 = "1sj59z0w172qvjwg1ma5fr5am9dgw27086xwdnrvlrk4hffcr7y7";
-
+    version = cargoVersion;
+    inherit src;
     inherit stdenv;
     inherit rustc; # the rustc that will be wrapped by cargo
     inherit rustPlatform; # used to build cargo
diff --git a/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch b/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch
index d29eb16cfe55b..bafab0e9ef714 100644
--- a/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch
+++ b/pkgs/development/compilers/rust/patches/aarch64-disable-test_loading_cosine.patch
@@ -1,7 +1,7 @@
-diff --git a/src/librustc_back/dynamic_lib.rs b/src/librustc_back/dynamic_lib.rs
+diff --git a/src/librustc_metadata/dynamic_lib.rs b/src/librustc_metadata/dynamic_lib.rs
 index 1b42fa0..92256dc 100644
---- a/src/librustc_back/dynamic_lib.rs
-+++ b/src/librustc_back/dynamic_lib.rs
+--- a/src/librustc_metadata/dynamic_lib.rs
++++ b/src/librustc_metadata/dynamic_lib.rs
 @@ -80,6 +80,7 @@ mod tests {
      use std::mem;
  
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index efed388ce4ca1..92b149865fa24 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -57,9 +57,9 @@ stdenv.mkDerivation {
   # We need rust to build rust. If we don't provide it, configure will try to download it.
   configureFlags = configureFlags
                 ++ [ "--enable-local-rust" "--local-rust-root=${rustPlatform.rust.rustc}" "--enable-rpath" ]
-                ++ [ "--enable-vendor" "--disable-locked-deps" ]
+                ++ [ "--enable-vendor" ]
                 # ++ [ "--jemalloc-root=${jemalloc}/lib"
-                ++ [ "--default-linker=${targetPackages.stdenv.cc}/bin/cc" "--default-ar=${targetPackages.stdenv.cc.bintools}/bin/ar" ]
+                ++ [ "--default-linker=${targetPackages.stdenv.cc}/bin/cc" ]
                 ++ optional (!forceBundledLLVM) [ "--enable-llvm-link-shared" ]
                 ++ optional (targets != []) "--target=${target}"
                 ++ optional (!forceBundledLLVM) "--llvm-root=${llvmShared}";
@@ -72,6 +72,8 @@ stdenv.mkDerivation {
   passthru.target = target;
 
   postPatch = ''
+    patchShebangs src/etc
+
     # Fix dynamic linking against llvm
     #${optionalString (!forceBundledLLVM) ''sed -i 's/, kind = \\"static\\"//g' src/etc/mklldeps.py''}
 
@@ -98,19 +100,6 @@ stdenv.mkDerivation {
     # On Hydra: `TcpListener::bind(&addr)`: Address already in use (os error 98)'
     sed '/^ *fn fast_rebind()/i#[ignore]' -i src/libstd/net/tcp.rs
 
-    # Disable some failing gdb tests. Try re-enabling these when gdb
-    # is updated past version 7.12.
-    rm src/test/debuginfo/basic-types-globals.rs
-    rm src/test/debuginfo/basic-types-mut-globals.rs
-    rm src/test/debuginfo/c-style-enum.rs
-    rm src/test/debuginfo/lexical-scopes-in-block-expression.rs
-    rm src/test/debuginfo/limited-debuginfo.rs
-    rm src/test/debuginfo/simple-struct.rs
-    rm src/test/debuginfo/simple-tuple.rs
-    rm src/test/debuginfo/union-smoke.rs
-    rm src/test/debuginfo/vec-slices.rs
-    rm src/test/debuginfo/vec.rs
-
     # Useful debugging parameter
     # export VERBOSE=1
   ''
diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix
index cd8c839cf4fe9..4c79fb15c5cb9 100644
--- a/pkgs/development/compilers/solc/default.nix
+++ b/pkgs/development/compilers/solc/default.nix
@@ -1,9 +1,7 @@
-{ stdenv, fetchzip, fetchgit, boost, cmake, z3 }:
+{ stdenv, fetchzip, fetchurl, boost, cmake, z3 }:
 
 let
-  version = "0.4.19";
-  rev = "c4cbbb054b5ed3b8ceaa21ee5b47b0704762ff40";
-  sha256 = "1h2ziwdswghj4aa3vd3k3y2ckfiwjk6x38w2kp4m324k2ydxd15c";
+  version = "0.4.20";
   jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.7.7.tar.gz;
   jsoncpp = fetchzip {
     url = jsoncppURL;
@@ -15,14 +13,12 @@ stdenv.mkDerivation {
   name = "solc-${version}";
 
   # Cannot use `fetchFromGitHub' because of submodules
-  src = fetchgit {
-    url = "https://github.com/ethereum/solidity";
-    inherit rev sha256;
+  src = fetchurl {
+    url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz";
+    sha256 = "0jyqnykj537ksfsf2m6ww9vganmpa6yd5fmlfpa5qm1076kq7zd6";
   };
 
   patchPhase = ''
-    echo >commit_hash.txt '${rev}'
-    echo >prerelease.txt
     substituteInPlace cmake/jsoncpp.cmake \
       --replace '${jsoncppURL}' ${jsoncpp}
     substituteInPlace cmake/EthCompilerSettings.cmake \
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 86daa60817dcb..535f962c661a8 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -1006,7 +1006,4 @@ self: super: {
   # Needs older hlint
   hpio = dontCheck super.hpio;
 
-  # https://github.com/ucsd-progsys/liquidhaskell/issues/1238
-  liquidhaskell = dontHaddock super.liquidhaskell;
-
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
index b3990fab76158..663f1b6863995 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -42,6 +42,20 @@ self: super: {
   unix = null;
   xhtml = null;
 
+  # Use more recent doctest version to fix build errors.
+  doctest = self.doctest_0_14_0;
+  doctest_0_14_0 = dontCheck super.doctest_0_14_0; # https://github.com/sol/doctest/issues/189
+  QuickCheck = self.QuickCheck_2_11_3;             # needed by doctest-0.14.0
+
+  # https://github.com/tmhedberg/here/pull/22
+  here = doJailbreak super.here;
+
+  # https://github.com/pcapriotti/optparse-applicative/issues/288
+  optparse-applicative = dontCheck super.optparse-applicative;
+
+  # https://github.com/haskell/test-framework/issues/35
+  test-framework-quickcheck2 = doJailbreak super.test-framework-quickcheck2;
+
   # GHC 8.4.x needs newer versions than LTS-10.x offers by default.
   ## haddock: panic! (the 'impossible' happened)
   ##   (GHC version 8.4.20180122 for x86_64-unknown-linux):
@@ -82,133 +96,137 @@ self: super: {
   ## Shadowed:
 
   ## Needs bump to a versioned attribute
-  ## 
+  ##
   ##     • Could not deduce (Semigroup (Dict a))
   ##         arising from the superclasses of an instance declaration
   ##       from the context: a
   constraints = super.constraints_0_10;
 
+  ## Needs bump to a versioned attribute
+  ##
+  ##     • Could not deduce (Semigroup (IterT m a))
+  ##         arising from the superclasses of an instance declaration
+  ##       from the context: (Monad m, Monoid a)
+  free = super.free_5;
+
+  funcmp = overrideCabal super.funcmp_1_9 (drv: {
+    ## Needs bump to a versioned attribute
+    ##
+    ## Needed for (<>) in prelude
+    ## Setup: Encountered missing dependencies:
+    ## base >=3 && <4.11
+    jailbreak       = true;
+  });
+
   hspec-core = overrideCabal super.hspec-core_2_4_8 (drv: {
     ## Needs bump to a versioned attribute
-    ## 
+    ##
     ##     • No instance for (Semigroup Summary)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid Summary’
+    ## error: while evaluating the attribute ‘buildInputs’ of the derivation ‘hspec-core-2.4.8’ at /home/deepfire/src/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
+    ## while evaluating the attribute ‘buildInputs’ of the derivation ‘silently-1.2.5’ at /home/deepfire/src/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
+    ## while evaluating the attribute ‘buildInputs’ of the derivation ‘temporary-1.2.1.1’ at /home/deepfire/src/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
+    ## while evaluating the attribute ‘buildInputs’ of the derivation ‘base-compat-0.9.3’ at /home/deepfire/src/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
+    ## while evaluating the attribute ‘propagatedBuildInputs’ of the derivation ‘hspec-2.4.8’ at /home/deepfire/src/nixpkgs/pkgs/stdenv/generic/make-derivation.nix:148:11:
+    ## infinite recursion encountered, at undefined position
     doCheck         = false;
   });
 
   ## Needs bump to a versioned attribute
-  ## 
+  ##
   ## breaks hspec:
   ## Setup: Encountered missing dependencies:
   ## hspec-discover ==2.4.7
   hspec-discover = super.hspec-discover_2_4_8;
 
-  ## Needs bump to a versioned attribute
-  ## 
-  ##     • Could not deduce (Semigroup (a :->: b))
-  ##         arising from the superclasses of an instance declaration
-  ##       from the context: (HasTrie a, Monoid b)
-  MemoTrie = super.MemoTrie_0_6_9;
+  lens = overrideCabal super.lens_4_16 (drv: {
+    ## Needs bump to a versioned attribute
+    ##
+    ##     • Could not deduce (Apply f)
+    ##         arising from the superclasses of an instance declaration
+    ##       from the context: (Contravariant f, Applicative f)
+    ## Setup: Encountered missing dependencies:
+    ## ghc >=7.0 && <8.4
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
+    doCheck         = false;
+  });
 
   semigroupoids = overrideCabal super.semigroupoids_5_2_2 (drv: {
     ## Needs bump to a versioned attribute
-    ## 
+    ##
     ##     • Variable not in scope: mappend :: Seq a -> Seq a -> Seq a
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   ## Needs bump to a versioned attribute
-  ## 
-  ##     • Could not deduce (Semigroup (Traversal f))
+  ##
+  ##     • No instance for (Semigroup Builder)
   ##         arising from the superclasses of an instance declaration
-  ##       from the context: Applicative f
-  tasty = super.tasty_1_0_1;
+  ##     • In the instance declaration for ‘Monoid Builder’
+  stringbuilder = super.stringbuilder_0_5_1;
+
+  ## Needs bump to a versioned attribute
+  ##
+  ##     Module ‘Data.Semigroup’ does not export ‘Monoid(..)’
+  ##    |
+  ## 80 | import Data.Semigroup (Semigroup(..), Monoid(..))
+  unordered-containers = super.unordered-containers_0_2_9_0;
+
 
   ## On Hackage:
 
-  happy = overrideCabal super.happy (drv: {
+  tasty = overrideCabal super.tasty (drv: {
     ## On Hackage, awaiting for import
-    ## 
-    ##     Ambiguous occurrence ‘<>’
-    ##     It could refer to either ‘Prelude.<>’,
-    ##                              imported from ‘Prelude’ at src/PrettyGrammar.hs:1:8-20
-    version         = "1.19.9";
-    sha256          = "138xpxdb7x62lpmgmb6b3v3vgdqqvqn4273jaap3mjmc2gla709y";
+    ##
+    ##     • No instance for (Semigroup OptionSet)
+    ##         arising from the superclasses of an instance declaration
+    ##     • In the instance declaration for ‘Monoid OptionSet’
+    version         = "1.0.0.1";
+    sha256          = "0ggqffw9kbb6nlq1pplk131qzxndqqzqyf4s2p7576nljx11a7qf";
   });
 
 
   ## Upstreamed
 
-  free = overrideCabal super.free (drv: {
-    ## Upstreamed, awaiting a Hackage release
-    ## 
-    ##     • Could not deduce (Semigroup (IterT m a))
-    ##         arising from the superclasses of an instance declaration
-    ##       from the context: (Monad m, Monoid a)
-    src = pkgs.fetchFromGitHub {
-      owner  = "ekmett";
-      repo   = "free";
-      rev    = "fcefc71ed302f2eaf60f020046bad392338b3109";
-      sha256 = "0mfrd7y97pgqmb2i66jn5xwjpcrgnfcqq8dzkxqgx1b5wjdydq70";
-    };
-    ## Setup: Encountered missing dependencies:
-    ## transformers-base <0.5
-    ## builder for ‘/nix/store/3yvaqx5qcg1fb3nnyc273fkhgfh73pgv-free-4.12.4.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/3yvaqx5qcg1fb3nnyc273fkhgfh73pgv-free-4.12.4.drv’ failed
-    libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.transformers-base ];
-  });
-
   haskell-gi = overrideCabal super.haskell-gi (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ## Setup: Encountered missing dependencies:
     ## haskell-gi-base ==0.20.*
-    ## builder for ‘/nix/store/q0qkq2gzmdnkvdz6xl7svv5305chbr4b-haskell-gi-0.20.3.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/q0qkq2gzmdnkvdz6xl7svv5305chbr4b-haskell-gi-0.20.3.drv’ failed
     src = pkgs.fetchFromGitHub {
       owner  = "haskell-gi";
       repo   = "haskell-gi";
       rev    = "30d2e6415c5b57760f8754cd3003eb07483d60e6";
       sha256 = "1l3qm97gcjih695hhj80rbpnd72prnc81lg5y373yj8jk9f6ypbr";
     };
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   haskell-gi-base = overrideCabal super.haskell-gi-base (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
-    ## breaks haskell-gi:
+    ##
     ## Setup: Encountered missing dependencies:
     ## haskell-gi-base ==0.21.*
+    ## cannot build derivation ‘/nix/store/b3d6yr1rzk4hpzg87yk4n5i4321i824f-gi-cairo-1.0.14.drv’: 1 dependencies couldn't be built
     src = pkgs.fetchFromGitHub {
       owner  = "haskell-gi";
       repo   = "haskell-gi";
       rev    = "30d2e6415c5b57760f8754cd3003eb07483d60e6";
       sha256 = "1l3qm97gcjih695hhj80rbpnd72prnc81lg5y373yj8jk9f6ypbr";
     };
-    ## Setup: Encountered missing dependencies:
-    ## attoparsec ==0.13.*,
-    ## doctest >=0.8,
-    ## haskell-gi-base ==0.21.*,
-    ## pretty-show -any,
-    ## regex-tdfa >=1.2,
     prePatch        = "cd base; ";
   });
 
   haskell-src-exts = overrideCabal super.haskell-src-exts (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ##     • Could not deduce (Semigroup (ParseResult m))
     ##         arising from the superclasses of an instance declaration
     ##       from the context: Monoid m
@@ -220,23 +238,9 @@ self: super: {
     };
   });
 
-  hedgehog = overrideCabal super.hedgehog (drv: {
-    ## Upstreamed, awaiting a Hackage release
-    ## 
-    ## /nix/store/78sxg2kvl2klplqfx22s6b42lds7qq23-stdenv/setup: line 99: cd: hedgehog: No such file or directory
-    src = pkgs.fetchFromGitHub {
-      owner  = "hedgehogqa";
-      repo   = "haskell-hedgehog";
-      rev    = "7a4fab73670bc33838f2b5f25eb824ee550079ce";
-      sha256 = "1l8maassmklf6wgairk7llxvlbwxngv0dzx0fwnqx6hsb32sms05";
-    };
-    ## jailbreak-cabal: dieVerbatim: user error (jailbreak-cabal: Error Parsing: file "hedgehog.cabal" doesn't exist. Cannot
-    prePatch        = "cd hedgehog; ";
-  });
-
   lambdacube-compiler = overrideCabal super.lambdacube-compiler (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ## Setup: Encountered missing dependencies:
     ## aeson >=0.9 && <0.12,
     ## base >=4.7 && <4.10,
@@ -253,46 +257,21 @@ self: super: {
 
   lambdacube-ir = overrideCabal super.lambdacube-ir (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
-    ## /nix/store/78sxg2kvl2klplqfx22s6b42lds7qq23-stdenv/setup: line 99: cd: lambdacube-ir.haskell: No such file or directory
+    ##
+    ## Setup: Encountered missing dependencies:
+    ## aeson >=0.9 && <0.12, base >=4.8 && <4.10, vector ==0.11.*
     src = pkgs.fetchFromGitHub {
       owner  = "lambdacube3d";
       repo   = "lambdacube-ir";
       rev    = "b86318b510ef59606c5b7c882cad33af52ce257c";
       sha256 = "0j4r6b32lcm6jg653xzg9ijxkfjahlb4x026mv5dhs18kvgqhr8x";
     };
-    ## Setup: No cabal file found.
     prePatch        = "cd lambdacube-ir.haskell; ";
   });
 
-  lens = overrideCabal super.lens (drv: {
-    ## Upstreamed, awaiting a Hackage release
-    ## 
-    ##     • Could not deduce (Apply f)
-    ##         arising from the superclasses of an instance declaration
-    ##       from the context: (Contravariant f, Applicative f)
-    src = pkgs.fetchFromGitHub {
-      owner  = "ekmett";
-      repo   = "lens";
-      rev    = "4ad49eaf2448d856f0433fe5a4232f1e8fa87eb0";
-      sha256 = "0sd08v6syadplhk5d21yi7qffbjncn8z1bqlwz9nyyb0xja8s8wa";
-    };
-    ## CABAL-MISSING-DEPS
-    ## Setup: Encountered missing dependencies:
-    ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
-    doCheck         = false;
-    ## Setup: Encountered missing dependencies:
-    ## template-haskell >=2.4 && <2.13
-    ## builder for ‘/nix/store/fvrc4s96ym33i74y794nap7xai9p69fa-lens-4.15.4.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/fvrc4s96ym33i74y794nap7xai9p69fa-lens-4.15.4.drv’ failed
-    jailbreak       = true;
-  });
-
   simple-reflect = overrideCabal super.simple-reflect (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ##     • No instance for (Semigroup Expr)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid Expr’
@@ -306,11 +285,9 @@ self: super: {
 
   singletons = overrideCabal super.singletons (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ## Setup: Encountered missing dependencies:
     ## th-desugar ==1.7.*
-    ## builder for ‘/nix/store/g5jl22kpq8fnrg8ldphxndri759nxwzf-singletons-2.3.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/g5jl22kpq8fnrg8ldphxndri759nxwzf-singletons-2.3.1.drv’ failed
     src = pkgs.fetchFromGitHub {
       owner  = "goldfirere";
       repo   = "singletons";
@@ -319,23 +296,9 @@ self: super: {
     };
   });
 
-  stringbuilder = overrideCabal super.stringbuilder (drv: {
-    ## Upstreamed, awaiting a Hackage release
-    ## 
-    ##     • No instance for (Semigroup Builder)
-    ##         arising from the superclasses of an instance declaration
-    ##     • In the instance declaration for ‘Monoid Builder’
-    src = pkgs.fetchFromGitHub {
-      owner  = "sol";
-      repo   = "stringbuilder";
-      rev    = "4a1b689d3c8a462b28e0d21224b96165f622e6f7";
-      sha256 = "0h3nva4mwxkdg7hh7b7a3v561wi1bvmj0pshhd3sl7dy3lpvnrah";
-    };
-  });
-
   th-desugar = overrideCabal super.th-desugar (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ##     • Could not deduce (MonadIO (DsM q))
     ##         arising from the 'deriving' clause of a data type declaration
     ##       from the context: Quasi q
@@ -347,23 +310,9 @@ self: super: {
     };
   });
 
-  unordered-containers = overrideCabal super.unordered-containers (drv: {
-    ## Upstreamed, awaiting a Hackage release
-    ## 
-    ##     Module ‘Data.Semigroup’ does not export ‘Monoid(..)’
-    ##    |
-    ## 80 | import Data.Semigroup (Semigroup(..), Monoid(..))
-    src = pkgs.fetchFromGitHub {
-      owner  = "tibbe";
-      repo   = "unordered-containers";
-      rev    = "0a6b84ec103e28b73458f385ef846a7e2d3ea42f";
-      sha256 = "128q8k4py2wr1v0gmyvqvzikk6sksl9aqj0lxzf46763lis8x9my";
-    };
-  });
-
   websockets = overrideCabal super.websockets (drv: {
     ## Upstreamed, awaiting a Hackage release
-    ## 
+    ##
     ##     • No instance for (Semigroup SizeLimit)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid SizeLimit’
@@ -380,7 +329,7 @@ self: super: {
 
   blaze-builder = overrideCabal super.blaze-builder (drv: {
     ## Unmerged.  PR: https://github.com/lpsmith/blaze-builder/pull/10
-    ## 
+    ##
     ##     • No instance for (Semigroup Poke)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid Poke’
@@ -394,7 +343,7 @@ self: super: {
 
   bytestring-trie = overrideCabal super.bytestring-trie (drv: {
     ## Unmerged.  PR: https://github.com/wrengr/bytestring-trie/pull/3
-    ## 
+    ##
     ##     • Could not deduce (Semigroup (Trie a))
     ##         arising from the superclasses of an instance declaration
     ##       from the context: Monoid a
@@ -412,28 +361,26 @@ self: super: {
     doCheck         = false;
     ## Setup: Encountered missing dependencies:
     ## data-or ==1.0.*
-    ## builder for ‘/nix/store/iw3xsljnygsv9q2jglcv54mqd94fig7n-bytestring-trie-0.2.4.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/iw3xsljnygsv9q2jglcv54mqd94fig7n-bytestring-trie-0.2.4.1.drv’ failed
     libraryHaskellDepends = drv.libraryHaskellDepends ++ [ self.data-or ];
   });
 
   gtk2hs-buildtools = overrideCabal super.gtk2hs-buildtools (drv: {
     ## Unmerged.  PR: https://github.com/gtk2hs/gtk2hs/pull/233
-    ## 
-    ## /nix/store/78sxg2kvl2klplqfx22s6b42lds7qq23-stdenv/setup: line 99: cd: tools: No such file or directory
+    ##
+    ## Setup: Encountered missing dependencies:
+    ## Cabal >=1.24.0.0 && <2.1
     src = pkgs.fetchFromGitHub {
       owner  = "deepfire";
       repo   = "gtk2hs";
       rev    = "08c68d5afc22dd5761ec2c92ebf49c6d252e545b";
       sha256 = "06prn5wqq8x225n9wlbyk60f50jyjj8fm2hf181dyqjpf8wq75xa";
     };
-    ## Setup: No cabal file found.
     prePatch        = "cd tools; ";
   });
 
   hashtables = overrideCabal super.hashtables (drv: {
     ## Unmerged.  PR: https://github.com/gregorycollins/hashtables/pull/46
-    ## 
+    ##
     ##     • No instance for (Semigroup Slot)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid Slot’
@@ -447,7 +394,7 @@ self: super: {
 
   language-c = overrideCabal super.language-c (drv: {
     ## Unmerged.  PR: https://github.com/visq/language-c/pull/45
-    ## 
+    ##
     ##     Ambiguous occurrence ‘<>’
     ##     It could refer to either ‘Prelude.<>’,
     ##                              imported from ‘Prelude’ at src/Language/C/Pretty.hs:15:8-24
@@ -463,7 +410,7 @@ self: super: {
 
   language-c_0_7_0 = overrideCabal super.language-c_0_7_0 (drv: {
     ## Unmerged.  PR: https://github.com/visq/language-c/pull/45
-    ## 
+    ##
     ##     Ambiguous occurrence ‘<>’
     ##     It could refer to either ‘Prelude.<>’,
     ##                              imported from ‘Prelude’ at src/Language/C/Pretty.hs:15:8-24
@@ -479,7 +426,7 @@ self: super: {
 
   monadplus = overrideCabal super.monadplus (drv: {
     ## Unmerged.  PR: https://github.com/hanshoglund/monadplus/pull/3
-    ## 
+    ##
     ##     • No instance for (Semigroup (Partial a b))
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid (Partial a b)’
@@ -493,7 +440,7 @@ self: super: {
 
   reflex = overrideCabal super.reflex (drv: {
     ## Unmerged.  PR: https://github.com/reflex-frp/reflex/pull/158
-    ## 
+    ##
     ##     • Could not deduce (Semigroup (Event t a))
     ##         arising from the superclasses of an instance declaration
     ##       from the context: (Semigroup a, Reflex t)
@@ -503,41 +450,12 @@ self: super: {
       rev    = "4fb50139db45a37493b91973eeaad9885b4c63ca";
       sha256 = "0i7pp6cw394m2vbwcqv9z5ngdarp01sabqr1jkkgchxdkkii94nx";
     };
-    ##       mergeIncrementalWithMove ::
-    ##         GCompare k =>
-    ##         Incremental t (PatchDMapWithMove k (Event t))
-    ##         -> Event t (DMap k Identity)
-    ##       currentIncremental ::
-    ##         Patch p => Incremental t p -> Behavior t (PatchTarget p)
-    ##       updatedIncremental :: Patch p => Incremental t p -> Event t p
-    ##       incrementalToDynamic ::
-    ##         Patch p => Incremental t p -> Dynamic t (PatchTarget p)
-    ##       behaviorCoercion ::
-    ##         Coercion a b -> Coercion (Behavior t a) (Behavior t b)
-    ##       eventCoercion :: Coercion a b -> Coercion (Event t a) (Event t b)
-    ##       dynamicCoercion ::
-    ##         Coercion a b -> Coercion (Dynamic t a) (Dynamic t b)
-    ##       mergeIntIncremental ::
-    ##         Incremental t (PatchIntMap (Event t a)) -> Event t (IntMap a)
-    ##       fanInt :: Event t (IntMap a) -> EventSelectorInt t a
-    ##       {-# MINIMAL never, constant, push, pushCheap, pull, merge, fan,
-    ##                   switch, coincidence, current, updated, unsafeBuildDynamic,
-    ##                   unsafeBuildIncremental, mergeIncremental, mergeIncrementalWithMove,
-    ##                   currentIncremental, updatedIncremental, incrementalToDynamic,
-    ##                   behaviorCoercion, eventCoercion, dynamicCoercion,
-    ##                   mergeIntIncremental, fanInt #-}
-    ## Matches:
-    ##     []
-    ## Call stack:
-    ##     CallStack (from HasCallStack):
-    ##       callStackDoc, called at compiler/utils/Outputable.hs:1150:37 in ghc:Outputable
-    ##       pprPanic, called at utils/haddock/haddock-api/src/Haddock/Interface/Create.hs:1013:16 in main:Haddock.Interface.Create
-    ## Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
+    ## haddock: internal error: internal: extractDecl (ClsInstD)
+    ## CallStack (from HasCallStack):
+    ##   error, called at utils/haddock/haddock-api/src/Haddock/Interface/Create.hs:1058:16 in main:Haddock.Interface.Create
     doHaddock       = false;
     ## Setup: Encountered missing dependencies:
     ## base >=4.7 && <4.11, bifunctors >=5.2 && <5.5
-    ## builder for ‘/nix/store/93ka24600m4mipsgn2cq8fwk124q97ca-reflex-0.4.0.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/93ka24600m4mipsgn2cq8fwk124q97ca-reflex-0.4.0.1.drv’ failed
     jailbreak       = true;
     ## Setup: Encountered missing dependencies:
     ## data-default -any,
@@ -550,7 +468,7 @@ self: super: {
 
   regex-tdfa = overrideCabal super.regex-tdfa (drv: {
     ## Unmerged.  PR: https://github.com/ChrisKuklewicz/regex-tdfa/pull/13
-    ## 
+    ##
     ##     • No instance for (Semigroup (CharMap a))
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid (CharMap a)’
@@ -562,9 +480,23 @@ self: super: {
     };
   });
 
+  securemem = overrideCabal super.securemem (drv: {
+    ## Unmerged.  PR: https://github.com/vincenthz/hs-securemem/pull/12
+    ##
+    ##     • No instance for (Semigroup SecureMem)
+    ##         arising from the superclasses of an instance declaration
+    ##     • In the instance declaration for ‘Monoid SecureMem’
+    src = pkgs.fetchFromGitHub {
+      owner  = "shlevy";
+      repo   = "hs-securemem";
+      rev    = "6168d90b00bfc6a559d3b9160732343644ef60fb";
+      sha256 = "06dhx1z44j5gshpdlsb4aryr3g4was3x4c2sgv1px8j57zrvlypx";
+    };
+  });
+
   text-format = overrideCabal super.text-format (drv: {
     ## Unmerged.  PR: https://github.com/bos/text-format/pull/21
-    ## 
+    ##
     ##     • No instance for (Semigroup Format)
     ##         arising from the superclasses of an instance declaration
     ##     • In the instance declaration for ‘Monoid Format’
@@ -578,7 +510,7 @@ self: super: {
 
   wl-pprint-text = overrideCabal super.wl-pprint-text (drv: {
     ## Unmerged.  PR: https://github.com/ivan-m/wl-pprint-text/pull/17
-    ## 
+    ##
     ##     Ambiguous occurrence ‘<>’
     ##     It could refer to either ‘PP.<>’,
     ##                              imported from ‘Prelude.Compat’ at Text/PrettyPrint/Leijen/Text/Monadic.hs:73:1-36
@@ -596,237 +528,153 @@ self: super: {
   adjunctions = overrideCabal super.adjunctions (drv: {
     ## Setup: Encountered missing dependencies:
     ## free ==4.*
-    ## builder for ‘/nix/store/64pvqslahgby4jlg9rpz29n8w4njb670-adjunctions-4.3.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/64pvqslahgby4jlg9rpz29n8w4njb670-adjunctions-4.3.drv’ failed
     jailbreak       = true;
   });
 
   async = overrideCabal super.async (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.3 && <4.11
-    ## builder for ‘/nix/store/2xf491hgsmckz2akrn765kvvy2k8crbd-async-2.1.1.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/2xf491hgsmckz2akrn765kvvy2k8crbd-async-2.1.1.1.drv’ failed
     jailbreak       = true;
   });
 
   bifunctors = overrideCabal super.bifunctors (drv: {
     ## Setup: Encountered missing dependencies:
     ## template-haskell >=2.4 && <2.13
-    ## builder for ‘/nix/store/dy1hzdy14pz96cvx37yggbv6a88sgxq4-bifunctors-5.5.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/dy1hzdy14pz96cvx37yggbv6a88sgxq4-bifunctors-5.5.drv’ failed
     jailbreak       = true;
   });
 
   bindings-GLFW = overrideCabal super.bindings-GLFW (drv: {
     ## Setup: Encountered missing dependencies:
     ## template-haskell >=2.10 && <2.13
-    ## builder for ‘/nix/store/ykc786r2bby5kkbpqjg0y10wb9jhmsa9-bindings-GLFW-3.1.2.3.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/ykc786r2bby5kkbpqjg0y10wb9jhmsa9-bindings-GLFW-3.1.2.3.drv’ failed
     jailbreak       = true;
   });
 
   bytes = overrideCabal super.bytes (drv: {
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   cabal-doctest = overrideCabal super.cabal-doctest (drv: {
     ## Setup: Encountered missing dependencies:
     ## Cabal >=1.10 && <2.1, base >=4.3 && <4.11
-    ## builder for ‘/nix/store/zy3l0ll0r9dq29lgxajv12rz1jzjdkrn-cabal-doctest-1.0.5.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/zy3l0ll0r9dq29lgxajv12rz1jzjdkrn-cabal-doctest-1.0.5.drv’ failed
     jailbreak       = true;
   });
 
   ChasingBottoms = overrideCabal super.ChasingBottoms (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.2 && <4.11
-    ## builder for ‘/nix/store/wsyjjf4x6pmx84kxnjaka7zwakyrca03-ChasingBottoms-1.3.1.3.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/wsyjjf4x6pmx84kxnjaka7zwakyrca03-ChasingBottoms-1.3.1.3.drv’ failed
     jailbreak       = true;
   });
 
   comonad = overrideCabal super.comonad (drv: {
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
+  deepseq-generics = overrideCabal super.deepseq-generics (drv: {
+    ## https://github.com/haskell-hvr/deepseq-generics/pull/4
+    jailbreak       = true;
+  });
+
   distributive = overrideCabal super.distributive (drv: {
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   exception-transformers = overrideCabal super.exception-transformers (drv: {
     ## Setup: Encountered missing dependencies:
     ## HUnit >=1.2 && <1.6
-    ## builder for ‘/nix/store/qs4g7lzq1ixcgg5rw4xb5545g7r34md8-exception-transformers-0.4.0.5.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/qs4g7lzq1ixcgg5rw4xb5545g7r34md8-exception-transformers-0.4.0.5.drv’ failed
     jailbreak       = true;
   });
 
   hashable = overrideCabal super.hashable (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.4 && <4.11
-    ## builder for ‘/nix/store/4qlxxypfhbwcv227cmsja1asgqnq37gf-hashable-1.2.6.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/4qlxxypfhbwcv227cmsja1asgqnq37gf-hashable-1.2.6.1.drv’ failed
     jailbreak       = true;
   });
 
   hashable-time = overrideCabal super.hashable-time (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.7 && <4.11
-    ## builder for ‘/nix/store/38dllcgxpmkd2fgvs6wd7ji86py0wbnh-hashable-time-0.2.0.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/38dllcgxpmkd2fgvs6wd7ji86py0wbnh-hashable-time-0.2.0.1.drv’ failed
     jailbreak       = true;
   });
 
   haskell-src-meta = overrideCabal super.haskell-src-meta (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.6 && <4.11, template-haskell >=2.8 && <2.13
-    ## builder for ‘/nix/store/g5wkb14sydvyv484agvaa7hxl84a0wr9-haskell-src-meta-0.8.0.2.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/g5wkb14sydvyv484agvaa7hxl84a0wr9-haskell-src-meta-0.8.0.2.drv’ failed
     jailbreak       = true;
   });
 
-  hspec-meta = overrideCabal super.hspec-meta (drv: {
-    ## Linking dist/build/hspec-meta-discover/hspec-meta-discover ...
-    ## running tests
-    ## Package has no test suites.
-    ## haddockPhase
-    ## Running hscolour for hspec-meta-2.4.6...
-    ## Preprocessing library for hspec-meta-2.4.6..
-    ## Preprocessing executable 'hspec-meta-discover' for hspec-meta-2.4.6..
-    ## Preprocessing library for hspec-meta-2.4.6..
-    ## Running Haddock on library for hspec-meta-2.4.6..
-    ## Haddock coverage:
-    ## haddock: panic! (the 'impossible' happened)
-    ##   (GHC version 8.4.20180122 for x86_64-unknown-linux):
-    ## 	extractDecl
-    ## Ambiguous decl for Arg in class:
-    ##     class Example e where
-    ##       type Arg e
-    ##       type Arg e = ()
-    ##       evaluateExample ::
-    ##         e
-    ##         -> Params
-    ##            -> (ActionWith (Arg e) -> IO ()) -> ProgressCallback -> IO Result
-    ##       {-# MINIMAL evaluateExample #-}
-    ## Matches:
-    ##     []
-    ## Call stack:
-    ##     CallStack (from HasCallStack):
-    ##       callStackDoc, called at compiler/utils/Outputable.hs:1150:37 in ghc:Outputable
-    ##       pprPanic, called at utils/haddock/haddock-api/src/Haddock/Interface/Create.hs:1013:16 in main:Haddock.Interface.Create
-    ## Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
-    doHaddock       = false;
-  });
-
   integer-logarithms = overrideCabal super.integer-logarithms (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.3 && <4.11
-    ## builder for ‘/nix/store/zdiicv0jmjsw6bprs8wxxaq5m0z0a75f-integer-logarithms-1.0.2.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/zdiicv0jmjsw6bprs8wxxaq5m0z0a75f-integer-logarithms-1.0.2.drv’ failed
     jailbreak       = true;
   });
 
   kan-extensions = overrideCabal super.kan-extensions (drv: {
     ## Setup: Encountered missing dependencies:
     ## free ==4.*
-    ## builder for ‘/nix/store/kvnlcj6zdqi2d2yq988l784hswjwkk4c-kan-extensions-5.0.2.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/kvnlcj6zdqi2d2yq988l784hswjwkk4c-kan-extensions-5.0.2.drv’ failed
     jailbreak       = true;
   });
 
   keys = overrideCabal super.keys (drv: {
     ## Setup: Encountered missing dependencies:
     ## free ==4.*
-    ## builder for ‘/nix/store/khkbn7wmjr10nyq0wwkmn888bj1l4fmh-keys-3.11.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/khkbn7wmjr10nyq0wwkmn888bj1l4fmh-keys-3.11.drv’ failed
     jailbreak       = true;
   });
 
   lambdacube-gl = overrideCabal super.lambdacube-gl (drv: {
     ## Setup: Encountered missing dependencies:
     ## vector ==0.11.*
-    ## builder for ‘/nix/store/a98830jm4yywfg1d6264p4yngbiyvssp-lambdacube-gl-0.5.2.4.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/a98830jm4yywfg1d6264p4yngbiyvssp-lambdacube-gl-0.5.2.4.drv’ failed
     jailbreak       = true;
   });
 
   lifted-async = overrideCabal super.lifted-async (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.5 && <4.11
-    ## builder for ‘/nix/store/l3000vil24jyq66a5kfqvxfdmy7agwic-lifted-async-0.9.3.3.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/l3000vil24jyq66a5kfqvxfdmy7agwic-lifted-async-0.9.3.3.drv’ failed
     jailbreak       = true;
   });
 
   linear = overrideCabal super.linear (drv: {
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   newtype-generics = overrideCabal super.newtype-generics (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.6 && <4.11
-    ## builder for ‘/nix/store/l3rzsjbwys4rjrpv1703iv5zwbd4bwy6-newtype-generics-0.5.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/l3rzsjbwys4rjrpv1703iv5zwbd4bwy6-newtype-generics-0.5.1.drv’ failed
-    jailbreak       = true;
-  });
-
-  parallel = overrideCabal super.parallel (drv: {
-    ## Setup: Encountered missing dependencies:
-    ## base >=4.3 && <4.11
-    ## builder for ‘/nix/store/c16gcgn7d7gql8bbjqngx7wbw907hnwb-parallel-3.2.1.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/c16gcgn7d7gql8bbjqngx7wbw907hnwb-parallel-3.2.1.1.drv’ failed
     jailbreak       = true;
   });
 
   quickcheck-instances = overrideCabal super.quickcheck-instances (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.5 && <4.11
-    ## builder for ‘/nix/store/r3fx9f7ksp41wfn6cp4id3mzgv04pwij-quickcheck-instances-0.3.16.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/r3fx9f7ksp41wfn6cp4id3mzgv04pwij-quickcheck-instances-0.3.16.1.drv’ failed
     jailbreak       = true;
   });
 
-  tasty-ant-xml = overrideCabal super.tasty-ant-xml (drv: {
+  rapid = overrideCabal super.rapid (drv: {
     ## Setup: Encountered missing dependencies:
-    ## tasty >=0.10 && <1.0
-    ## builder for ‘/nix/store/86dlb96cdw9jpq95xbndf4axj1z542d6-tasty-ant-xml-1.1.2.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/86dlb96cdw9jpq95xbndf4axj1z542d6-tasty-ant-xml-1.1.2.drv’ failed
+    ## base >=4.8 && <4.11
     jailbreak       = true;
   });
 
   tasty-expected-failure = overrideCabal super.tasty-expected-failure (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.5 && <4.11
-    ## builder for ‘/nix/store/gdm01qb8ppxgrl6dgzhlj8fzmk4x8dj3-tasty-expected-failure-0.11.0.4.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/gdm01qb8ppxgrl6dgzhlj8fzmk4x8dj3-tasty-expected-failure-0.11.0.4.drv’ failed
     jailbreak       = true;
   });
 
   tasty-hedgehog = overrideCabal super.tasty-hedgehog (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.8 && <4.11, tasty ==0.11.*
-    ## builder for ‘/nix/store/bpxyzzbmb03n88l4xz4k2rllj4227fwv-tasty-hedgehog-0.1.0.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/bpxyzzbmb03n88l4xz4k2rllj4227fwv-tasty-hedgehog-0.1.0.1.drv’ failed
     jailbreak       = true;
   });
 
@@ -842,33 +690,25 @@ self: super: {
   th-abstraction = overrideCabal super.th-abstraction (drv: {
     ## Setup: Encountered missing dependencies:
     ## template-haskell >=2.5 && <2.13
-    ## builder for ‘/nix/store/la3zdphp3nqzl590n25zyrgj62ga8cl6-th-abstraction-0.2.6.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/la3zdphp3nqzl590n25zyrgj62ga8cl6-th-abstraction-0.2.6.0.drv’ failed
     jailbreak       = true;
   });
 
   these = overrideCabal super.these (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.5 && <4.11
-    ## builder for ‘/nix/store/1wwqq67pinjj95fgqg13bchh0kbyrb83-these-0.7.4.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/1wwqq67pinjj95fgqg13bchh0kbyrb83-these-0.7.4.drv’ failed
     jailbreak       = true;
   });
 
   trifecta = overrideCabal super.trifecta (drv: {
-    ## CABAL-MISSING-DEPS
     ## Setup: Encountered missing dependencies:
     ## ghc >=7.0 && <8.4
-    ## builder for ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/yklyv4lw4d02316p31x7a2pni1z6gjgk-doctest-0.13.0.drv’ failed
+    ## /run/current-system/sw/bin/nix-shell: failed to build all dependencies
     doCheck         = false;
   });
 
   unliftio-core = overrideCabal super.unliftio-core (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.5 && <4.11
-    ## builder for ‘/nix/store/bn8w06wlq7zzli0858hfwlai7wbj6dmq-unliftio-core-0.1.1.0.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/bn8w06wlq7zzli0858hfwlai7wbj6dmq-unliftio-core-0.1.1.0.drv’ failed
     jailbreak       = true;
   });
 
@@ -880,23 +720,6 @@ self: super: {
   wavefront = overrideCabal super.wavefront (drv: {
     ## Setup: Encountered missing dependencies:
     ## base >=4.8 && <4.11
-    ## builder for ‘/nix/store/iy6ccxh4dvp6plalx4ww81qrnhxm7jgr-wavefront-0.7.1.1.drv’ failed with exit code 1
-    ## error: build of ‘/nix/store/iy6ccxh4dvp6plalx4ww81qrnhxm7jgr-wavefront-0.7.1.1.drv’ failed
     jailbreak       = true;
   });
-
-  # Needed for (<>) in prelude
-  funcmp = super.funcmp_1_9;
-
-  # https://github.com/haskell-hvr/deepseq-generics/pull/4
-  deepseq-generics = doJailbreak super.deepseq-generics;
-
-  # SMP compat
-  # https://github.com/vincenthz/hs-securemem/pull/12
-  securemem =
-    let patch = pkgs.fetchpatch
-          { url = https://github.com/vincenthz/hs-securemem/commit/6168d90b00bfc6a559d3b9160732343644ef60fb.patch;
-            sha256 = "0pfjmq57kcvxq7mhljd40whg2g77vdlvjyycdqmxxzz1crb6pipf";
-          };
-    in appendPatch super.securemem patch;
 }
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 02286e7762aef..9eed0a0577776 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -3227,6 +3227,7 @@ dont-distribute-packages:
   barrier-monad:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   base-generics:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   base-io-access:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  base64-bytestring-type:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   base64-conduit:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   basic-sop:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   BASIC:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3401,6 +3402,9 @@ dont-distribute-packages:
   breve:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   brians-brain:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   brick-skylighting:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  bricks-parsec:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  bricks-rendering:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
+  bricks-syntax:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   bricks:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   brillig:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   brittany:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -3792,6 +3796,7 @@ dont-distribute-packages:
   conduit-audio-samplerate:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   conduit-find:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   conduit-network-stream:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  conduit-zstd:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   conf:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   conffmt:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   config-parser:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4833,6 +4838,7 @@ dont-distribute-packages:
   gist:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   git-all:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   git-checklist:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  git-config:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   git-date:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   git-fmt:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   git-freq:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -4899,6 +4905,7 @@ dont-distribute-packages:
   goatee:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   gochan:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   gofer-prelude:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  goggles-gcs:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   gogol-servicemanagement:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   gooey:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   google-drive:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5087,6 +5094,7 @@ dont-distribute-packages:
   hakyll-contrib-links:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   hakyll-contrib:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hakyll-convert:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hakyll-dir-list:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   hakyll-filestore:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   hakyll-ogmarkup:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   hakyll-R:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5554,6 +5562,7 @@ dont-distribute-packages:
   HMap:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmark:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmarkup:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hmatrix-backprop:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmatrix-banded:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmatrix-mmap:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   hmatrix-morpheus:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5695,6 +5704,7 @@ dont-distribute-packages:
   hs-pgms:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   hs-pkpass:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hs-re:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hs-rs-notify:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   hs-scrape:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   hs-twitter:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   hs-twitterarchiver:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5763,6 +5773,7 @@ dont-distribute-packages:
   hsluv-haskell:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsmagick:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   HSmarty:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hsmodetweaks:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   Hsmtlib:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsmtpclient:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   hsnock:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -5884,6 +5895,8 @@ dont-distribute-packages:
   huzzy:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   hVOIDP:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   hw-kafka-avro:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hw-kafka-client:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
+  hw-kafka-conduit:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   hwall-auth-iitk:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   hweblib:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   hwhile:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6025,6 +6038,7 @@ dont-distribute-packages:
   interleavableIO:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   interlude-l:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   internetmarke:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  intero:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   interpol:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   interpolatedstring-qq-mwotton:                [ i686-linux, x86_64-linux, x86_64-darwin ]
   interpolatedstring-qq:                        [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6281,6 +6295,7 @@ dont-distribute-packages:
   lambdiff:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   lame-tester:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   lame:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
+  language-ats:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-bash:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-boogie:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   language-c-comments:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6342,6 +6357,7 @@ dont-distribute-packages:
   leapseconds:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   learn-physics-examples:                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   learn-physics:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Learning:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   leetify:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   legion-discovery-client:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   legion-discovery:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6591,7 +6607,9 @@ dont-distribute-packages:
   mandulia:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   mangopay:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   map-exts:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  Mapping:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   mappy:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mapquest-api:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   marionetta:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   markdown-kate:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   markdown2svg:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6767,6 +6785,7 @@ dont-distribute-packages:
   MonadLab:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   monadLib-compose:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   monadloc-pp:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
+  monadlog:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   monads-fd:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   MonadStack:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   monarch:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6872,6 +6891,7 @@ dont-distribute-packages:
   mvc:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   mvclient:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   mxnet-examples:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
+  mxnet-nn:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   mxnet-nnvm:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   mxnet:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   myanimelist-export:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -6987,6 +7007,7 @@ dont-distribute-packages:
   nikepub:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   nimber:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   Ninjas:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
+  nirum:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   nitro:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   nix-deploy:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   nix-diff:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7315,6 +7336,7 @@ dont-distribute-packages:
   pipes-files:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   pipes-illumina:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   pipes-io:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  pipes-kafka:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   pipes-key-value-csv:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   pipes-lzma:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   pipes-network-tls:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -7890,6 +7912,7 @@ dont-distribute-packages:
   runtime-arbitrary:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
   rws:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   RxHaskell:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
+  s-cargot-letbind:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   SableCC2Hs:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   safe-freeze:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   safe-globals:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8038,6 +8061,7 @@ dont-distribute-packages:
   servant-proto-lens:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-pushbullet-client:                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-py:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  servant-quickcheck:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-router:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-ruby:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   servant-scotty:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8470,6 +8494,7 @@ dont-distribute-packages:
   supercollider-midi:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   superconstraints:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   superdoc:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  superevent:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   supero:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   superrecord:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   supervisor:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8510,8 +8535,10 @@ dont-distribute-packages:
   syntax:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   SyntaxMacros:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   syntaxnet-haskell:                            [ i686-linux, x86_64-linux, x86_64-darwin ]
+  synthesizer-alsa:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   synthesizer-filter:                           [ i686-linux, x86_64-linux, x86_64-darwin ]
   synthesizer-llvm:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
+  synthesizer-midi:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   synthesizer:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   sys-process:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   Sysmon:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8737,6 +8764,7 @@ dont-distribute-packages:
   tofromxml:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   toilet:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokenify:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  tokenizer-monad:                              [ i686-linux, x86_64-linux, x86_64-darwin ]
   toktok:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokyocabinet-haskell:                         [ i686-linux, x86_64-linux, x86_64-darwin ]
   tokyotyrant-haskell:                          [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8746,6 +8774,7 @@ dont-distribute-packages:
   Top:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   topkata:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   torch:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  TORCS:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   touched:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   Tournament:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   toxcore:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -8992,6 +9021,7 @@ dont-distribute-packages:
   Vec-Boolean:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
   Vec-OpenGLRaw:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   Vec-Transform:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
+  vec:                                          [ i686-linux, x86_64-linux, x86_64-darwin ]
   vect-floating-accelerate:                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   vect-floating:                                [ i686-linux, x86_64-linux, x86_64-darwin ]
   vect-opengl:                                  [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9014,6 +9044,7 @@ dont-distribute-packages:
   verdict:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   verilog:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   vgrep:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  vicinity:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   views:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
   vigilance:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   Villefort:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
@@ -9284,6 +9315,7 @@ dont-distribute-packages:
   yampa-canvas:                                 [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa-glfw:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa-glut:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
+  yampa-sdl2:                                   [ i686-linux, x86_64-linux, x86_64-darwin ]
   yampa2048:                                    [ i686-linux, x86_64-linux, x86_64-darwin ]
   yandex-translate:                             [ i686-linux, x86_64-linux, x86_64-darwin ]
   yaop:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 8a9e0470b19ff..5382e63bce612 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -505,9 +505,7 @@ self: {
      }) {};
 
   "ALUT" = callPackage
-    ({ mkDerivation, base, freealut, OpenAL, pretty, StateVar
-     , transformers
-     }:
+    ({ mkDerivation, base, freealut, OpenAL, StateVar, transformers }:
      mkDerivation {
        pname = "ALUT";
        version = "2.4.0.2";
@@ -516,7 +514,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base OpenAL StateVar transformers ];
        librarySystemDepends = [ freealut ];
-       executableHaskellDepends = [ base pretty ];
        homepage = "https://github.com/haskell-openal/ALUT";
        description = "A binding for the OpenAL Utility Toolkit";
        license = stdenv.lib.licenses.bsd3;
@@ -977,12 +974,11 @@ self: {
      }) {};
 
   "AppleScript" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation }:
      mkDerivation {
        pname = "AppleScript";
        version = "0.2.0.1";
        sha256 = "1jmwixyv5msb3lmza7dljvm3l0x5mx8r93zr607sx9m5x9yhlsvr";
-       libraryHaskellDepends = [ base ];
        doHaddock = false;
        homepage = "https://github.com/reinerp/haskell-AppleScript";
        description = "Call AppleScript from Haskell, and then call back into Haskell";
@@ -1850,8 +1846,8 @@ self: {
      }:
      mkDerivation {
        pname = "BlogLiterately-diagrams";
-       version = "0.2.0.5";
-       sha256 = "0j0rs26c6w895k2vhamziqjh8pzc2zjrqd8s6giw7pdxyp7lv94s";
+       version = "0.2.0.6";
+       sha256 = "1ps9k7x0s7w0pbf8v7fphm1nyfh5dbxjm3zc1bfjxry4ciqljfyq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -2250,13 +2246,14 @@ self: {
     ({ mkDerivation, array, base, containers, mtl, parsec, readline }:
      mkDerivation {
        pname = "CPL";
-       version = "0.0.8";
-       sha256 = "0f4lkqrqbvsx7hhjprfirqkianw10978d83xy2hbhl421pv69lr0";
+       version = "0.0.9";
+       sha256 = "0pa0iqaflj8h0w3wcwrc27vmg4k7n0x8ck5sjscxvxdbbrwjg6z1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
          array base containers mtl parsec readline
        ];
+       homepage = "https://github.com/msakai/cpl";
        description = "An interpreter of Hagino's Categorical Programming Language (CPL)";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -2497,7 +2494,7 @@ self: {
   "Cabal_2_0_1_1" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , deepseq, directory, filepath, pretty, process, QuickCheck, tagged
-     , tar, tasty, tasty-hunit, tasty-quickcheck, time, unix
+     , tasty, tasty-hunit, tasty-quickcheck, time, unix
      }:
      mkDerivation {
        pname = "Cabal";
@@ -2508,8 +2505,8 @@ self: {
          pretty process time unix
        ];
        testHaskellDepends = [
-         array base bytestring containers directory filepath pretty
-         QuickCheck tagged tar tasty tasty-hunit tasty-quickcheck
+         array base containers directory filepath pretty QuickCheck tagged
+         tasty tasty-hunit tasty-quickcheck
        ];
        doCheck = false;
        homepage = "http://www.haskell.org/cabal/";
@@ -2652,8 +2649,8 @@ self: {
        pname = "Cassava";
        version = "0.5.1.0";
        sha256 = "1z9y8vzsb0qxfx72w0nb77n0ibha48dv4sg3wv02xrrbz95nwlrh";
-       revision = "1";
-       editedCabalFile = "1ijb77wqccqgjq0g04m3rk3iygm6hwbmrc50svah19vpl3mkz102";
+       revision = "3";
+       editedCabalFile = "15wwzmp1000jrg3kpyk2zh3k8ja21pdrqj2ghrwwish6lzpsk3v0";
        libraryHaskellDepends = [
          array attoparsec base bytestring bytestring-builder containers
          deepseq hashable Only scientific text unordered-containers vector
@@ -2663,7 +2660,7 @@ self: {
          quickcheck-instances scientific test-framework test-framework-hunit
          test-framework-quickcheck2 text unordered-containers vector
        ];
-       homepage = "https://github.com/hvr/cassava";
+       homepage = "https://github.com/tfausak/cassava";
        description = "A CSV parsing and encoding library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -2723,6 +2720,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Chart_1_8_3" = callPackage
+    ({ mkDerivation, array, base, colour, data-default-class, lens, mtl
+     , old-locale, operational, time, vector
+     }:
+     mkDerivation {
+       pname = "Chart";
+       version = "1.8.3";
+       sha256 = "13s64fhb2pmkdmx5bkgbgcn25qjihs364fvr47a1dw25f804kiy1";
+       libraryHaskellDepends = [
+         array base colour data-default-class lens mtl old-locale
+         operational time vector
+       ];
+       homepage = "https://github.com/timbod7/haskell-chart/wiki";
+       description = "A library for generating 2D Charts and Plots";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "Chart-cairo" = callPackage
     ({ mkDerivation, array, base, cairo, Chart, colour
      , data-default-class, lens, mtl, old-locale, operational, time
@@ -2740,6 +2755,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Chart-cairo_1_8_3" = callPackage
+    ({ mkDerivation, array, base, cairo, Chart, colour
+     , data-default-class, lens, mtl, old-locale, operational, time
+     }:
+     mkDerivation {
+       pname = "Chart-cairo";
+       version = "1.8.3";
+       sha256 = "1581k1nkvv28a078mc32fwxh98daxqsn3424k1frbrgsppwvlm94";
+       libraryHaskellDepends = [
+         array base cairo Chart colour data-default-class lens mtl
+         old-locale operational time
+       ];
+       homepage = "https://github.com/timbod7/haskell-chart/wiki";
+       description = "Cairo backend for Charts";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "Chart-diagrams" = callPackage
     ({ mkDerivation, base, blaze-markup, bytestring, Chart, colour
      , containers, data-default-class, diagrams-core, diagrams-lib
@@ -2762,14 +2795,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Chart-diagrams_1_8_3" = callPackage
+    ({ mkDerivation, base, blaze-markup, bytestring, Chart, colour
+     , containers, data-default-class, diagrams-core, diagrams-lib
+     , diagrams-postscript, diagrams-svg, lens, mtl, old-locale
+     , operational, svg-builder, SVGFonts, text, time
+     }:
+     mkDerivation {
+       pname = "Chart-diagrams";
+       version = "1.8.3";
+       sha256 = "1p1spkx1xkwfiqjkji9wxca1ar0h6n6vqn6h45ly4szr9qyixvdy";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base blaze-markup bytestring Chart colour containers
+         data-default-class diagrams-core diagrams-lib diagrams-postscript
+         diagrams-svg lens mtl old-locale operational svg-builder SVGFonts
+         text time
+       ];
+       homepage = "https://github.com/timbod7/haskell-chart/wiki";
+       description = "Diagrams backend for Charts";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "Chart-gtk" = callPackage
     ({ mkDerivation, array, base, cairo, Chart, Chart-cairo, colour
      , data-default-class, gtk, mtl, old-locale, time
      }:
      mkDerivation {
        pname = "Chart-gtk";
-       version = "1.8.2";
-       sha256 = "1jbl482fd1a4hx56za6xyxi15fz1jg2rdq977spq62aylccpij90";
+       version = "1.8.3";
+       sha256 = "051w4ik5174502z6d4va84hv7a57y31iy94w09gl5qwihzfs7wz4";
        libraryHaskellDepends = [
          array base cairo Chart Chart-cairo colour data-default-class gtk
          mtl old-locale time
@@ -3596,21 +3652,14 @@ self: {
      }) {};
 
   "DMuCheck" = callPackage
-    ({ mkDerivation, base, binary, directory, distributed-process
-     , distributed-process-simplelocalnet, hint, MuCheck
-     , network-transport-tcp, unix
-     }:
+    ({ mkDerivation, base, MuCheck }:
      mkDerivation {
        pname = "DMuCheck";
        version = "0.3.0.2";
        sha256 = "00dhky0hnda85lvrs155jgwxnpqfm36cqakj3wp0yrn2xlz383ad";
        isLibrary = false;
        isExecutable = true;
-       executableHaskellDepends = [
-         base binary directory distributed-process
-         distributed-process-simplelocalnet hint MuCheck
-         network-transport-tcp unix
-       ];
+       executableHaskellDepends = [ base MuCheck ];
        homepage = "https://bitbucket.com/osu-testing/d-mucheck";
        description = "Distributed Mutation Analysis framework for MuCheck";
        license = stdenv.lib.licenses.gpl2;
@@ -3689,7 +3738,7 @@ self: {
          regex-posix split syb time unix
        ];
        libraryToolDepends = [ alex happy ];
-       executableHaskellDepends = [ array base bytestring HTF ];
+       executableHaskellDepends = [ base ];
        description = "Darcs Patch Manager";
        license = "GPL";
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -4672,7 +4721,6 @@ self: {
   "Earley" = callPackage
     ({ mkDerivation, base, criterion, deepseq, ListLike, parsec
      , QuickCheck, tasty, tasty-hunit, tasty-quickcheck
-     , unordered-containers
      }:
      mkDerivation {
        pname = "Earley";
@@ -4681,7 +4729,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ListLike ];
-       executableHaskellDepends = [ base unordered-containers ];
        testHaskellDepends = [
          base QuickCheck tasty tasty-hunit tasty-quickcheck
        ];
@@ -6131,8 +6178,8 @@ self: {
      }) {inherit (pkgs) freeglut; inherit (pkgs) mesa;};
 
   "GLUT" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, OpenGL
-     , OpenGLRaw, random, StateVar, transformers
+    ({ mkDerivation, array, base, containers, OpenGL, StateVar
+     , transformers
      }:
      mkDerivation {
        pname = "GLUT";
@@ -6143,9 +6190,6 @@ self: {
        libraryHaskellDepends = [
          array base containers OpenGL StateVar transformers
        ];
-       executableHaskellDepends = [
-         array base bytestring OpenGLRaw random
-       ];
        homepage = "http://www.haskell.org/haskellwiki/Opengl";
        description = "A binding for the OpenGL Utility Toolkit";
        license = stdenv.lib.licenses.bsd3;
@@ -7328,7 +7372,6 @@ self: {
          utf8-string
        ];
        librarySystemDepends = [ postgresql ];
-       executableSystemDepends = [ postgresql ];
        homepage = "http://github.com/hdbc/hdbc-postgresql";
        description = "PostgreSQL driver for HDBC";
        license = stdenv.lib.licenses.bsd3;
@@ -7370,7 +7413,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring HDBC mtl utf8-string ];
        librarySystemDepends = [ sqlite ];
-       executableSystemDepends = [ sqlite ];
        homepage = "https://github.com/hdbc/hdbc-sqlite3";
        description = "Sqlite v3 driver for HDBC";
        license = stdenv.lib.licenses.bsd3;
@@ -8027,21 +8069,22 @@ self: {
 
   "HList" = callPackage
     ({ mkDerivation, array, base, base-orphans, cmdargs, directory
-     , doctest, filepath, ghc-prim, hspec, lens, mtl, process
-     , profunctors, QuickCheck, syb, tagged, template-haskell
+     , filepath, ghc-prim, hspec, hspec-expectations, lens, mtl, process
+     , profunctors, QuickCheck, semigroups, syb, tagged
+     , template-haskell
      }:
      mkDerivation {
        pname = "HList";
-       version = "0.4.2.0";
-       sha256 = "15bpglqj33n4y68mg8l2g0rllrcisg2f94wsl3n7rpy43md596fd";
+       version = "0.5.0.0";
+       sha256 = "16qf076p66caf3cabajbz0lgqzffqzcg0jr6lb4af18kpnpq4zqb";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         array base base-orphans ghc-prim mtl profunctors tagged
+         array base base-orphans ghc-prim mtl profunctors semigroups tagged
          template-haskell
        ];
        testHaskellDepends = [
-         array base cmdargs directory doctest filepath hspec lens mtl
-         process QuickCheck syb template-haskell
+         array base cmdargs directory filepath hspec hspec-expectations lens
+         mtl process QuickCheck semigroups syb template-haskell
        ];
        description = "Heterogeneous lists";
        license = stdenv.lib.licenses.mit;
@@ -9133,7 +9176,6 @@ self: {
          base containers HTTP hxt hxt-http mtl network network-uri parsec
          transformers
        ];
-       executableHaskellDepends = [ base hxt ];
        testHaskellDepends = [ base hspec hxt ];
        homepage = "https://github.com/egonSchiele/HandsomeSoup";
        description = "Work with HTML more easily in HXT";
@@ -10671,10 +10713,6 @@ self: {
          attoparsec base bytestring bytestring-nums bytestring-trie
          containers utf8-string
        ];
-       executableHaskellDepends = [
-         attoparsec base bytestring bytestring-nums bytestring-trie
-         containers utf8-string
-       ];
        homepage = "http://github.com/solidsnack/JSONb/";
        description = "JSON parser that uses byte strings";
        license = stdenv.lib.licenses.bsd3;
@@ -11225,7 +11263,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ openldap ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [ base HUnit ];
        testSystemDepends = [ openldap ];
        homepage = "https://github.com/ezyang/ldap-haskell";
@@ -11569,6 +11606,7 @@ self: {
        homepage = "https://github.com/masterdezign/Learning#readme";
        description = "The most frequently used machine learning tools";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "Level0" = callPackage
@@ -11852,9 +11890,6 @@ self: {
          mtl multiset old-locale operational prefix-units pretty PSQueue
          sequential-index split stm time transformers void yjtools
        ];
-       executableHaskellDepends = [
-         base cereal cmdtheline containers transformers
-       ];
        testHaskellDepends = [
          base bytestring cereal composition containers data-ivar directory
          hslogger hslogger-template HUnit lens MonadCatchIO-transformers
@@ -11885,10 +11920,6 @@ self: {
          MonadCatchIO-transformers stm transformers
        ];
        librarySystemDepends = [ openmpi ];
-       executableHaskellDepends = [
-         base cereal cmdtheline hslogger LogicGrowsOnTrees
-       ];
-       executableSystemDepends = [ openmpi ];
        description = "an adapter for LogicGrowsOnTrees that uses MPI";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -11911,9 +11942,6 @@ self: {
          hslogger-template lens LogicGrowsOnTrees MonadCatchIO-transformers
          mtl network pretty transformers
        ];
-       executableHaskellDepends = [
-         base cereal cmdtheline LogicGrowsOnTrees
-       ];
        testHaskellDepends = [
          base hslogger hslogger-template HUnit LogicGrowsOnTrees network
          random stm test-framework test-framework-hunit transformers
@@ -11940,9 +11968,6 @@ self: {
          hslogger hslogger-template LogicGrowsOnTrees
          MonadCatchIO-transformers process transformers
        ];
-       executableHaskellDepends = [
-         base cereal cmdtheline LogicGrowsOnTrees
-       ];
        testHaskellDepends = [
          base cereal hslogger hslogger-template HUnit LogicGrowsOnTrees
          random test-framework test-framework-hunit transformers
@@ -12188,6 +12213,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "Mapping" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "Mapping";
+       version = "0.1.0.1";
+       sha256 = "14gjly5dlz5bdi9niqdg6gzf9hin87xnl9hsqlzdpgbk6hzg0az8";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/zaoqi/Mapping.hs";
+       description = "Mapping";
+       license = stdenv.lib.licenses.agpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "MaybeT" = callPackage
     ({ mkDerivation, base, mtl }:
      mkDerivation {
@@ -12305,7 +12343,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base newtype-generics ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/conal/MemoTrie";
        description = "Trie-based memo functions";
        license = stdenv.lib.licenses.bsd3;
@@ -13119,7 +13156,7 @@ self: {
      }) {};
 
   "NaturalSort" = callPackage
-    ({ mkDerivation, base, bytestring, QuickCheck, strict }:
+    ({ mkDerivation, base, bytestring, strict }:
      mkDerivation {
        pname = "NaturalSort";
        version = "0.2.1";
@@ -13127,7 +13164,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring strict ];
-       executableHaskellDepends = [ base bytestring QuickCheck strict ];
        homepage = "http://github.com/joachifm/natsort";
        description = "Natural sorting for strings";
        license = stdenv.lib.licenses.bsd3;
@@ -13831,7 +13867,6 @@ self: {
          base ObjectName OpenGL StateVar transformers
        ];
        librarySystemDepends = [ openal ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/haskell-openal/ALUT";
        description = "A binding to the OpenAL cross-platform 3D audio API";
        license = stdenv.lib.licenses.bsd3;
@@ -14670,21 +14705,21 @@ self: {
 
   "Plot-ho-matic" = callPackage
     ({ mkDerivation, base, bytestring, cairo, cereal, Chart
-     , Chart-cairo, containers, data-default-class, generic-accessors
-     , glib, gtk3, lens, text, time, transformers, vector
+     , Chart-cairo, colour, containers, data-default-class
+     , generic-accessors, glib, gtk3, lens, text, time, transformers
+     , vector
      }:
      mkDerivation {
        pname = "Plot-ho-matic";
-       version = "0.12.2.0";
-       sha256 = "1hy641q1qjjlig5xs2v3l2nj3mc10zrxsipr24x6b2750lhakbr4";
+       version = "0.12.2.1";
+       sha256 = "0wxz9skscs72bxb2fac82pyn1wkcxc666l40s42q32rbq17d9x44";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring cairo cereal Chart Chart-cairo containers
+         base bytestring cairo cereal Chart Chart-cairo colour containers
          data-default-class generic-accessors glib gtk3 lens text time
          transformers vector
        ];
-       executableHaskellDepends = [ base containers generic-accessors ];
        description = "Real-time line plotter for generic data";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -16129,8 +16164,8 @@ self: {
      }) {};
 
   "SHA" = callPackage
-    ({ mkDerivation, array, base, binary, bytestring, directory
-     , QuickCheck, test-framework, test-framework-quickcheck2
+    ({ mkDerivation, array, base, binary, bytestring, QuickCheck
+     , test-framework, test-framework-quickcheck2
      }:
      mkDerivation {
        pname = "SHA";
@@ -16139,7 +16174,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base binary bytestring ];
-       executableHaskellDepends = [ base bytestring directory ];
        testHaskellDepends = [
          array base binary bytestring QuickCheck test-framework
          test-framework-quickcheck2
@@ -17735,6 +17769,7 @@ self: {
        executableHaskellDepends = [ base bytestring Yampa ];
        description = "Bindings to the TORCS vehicle simulator";
        license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "TTTAS" = callPackage
@@ -17863,7 +17898,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl old-time time ];
-       executableHaskellDepends = [ base mtl old-time ];
        description = "Database library with left-fold interface, for PostgreSQL, Oracle, SQLite, ODBC";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -19149,24 +19183,16 @@ self: {
          winmm = null;};
 
   "Win32_2_6_2_0" = callPackage
-    ({ mkDerivation, advapi32, base, bytestring, filepath, gdi32, imm32
-     , msimg32, shell32, shfolder, shlwapi, unbuildable, user32, winmm
-     }:
+    ({ mkDerivation }:
      mkDerivation {
        pname = "Win32";
        version = "2.6.2.0";
        sha256 = "0rfp3yivwycp988rp01zgx61m7csrr7v449ksjrym1bb06ksxgjr";
-       libraryHaskellDepends = [ base bytestring filepath unbuildable ];
-       librarySystemDepends = [
-         advapi32 gdi32 imm32 msimg32 shell32 shfolder shlwapi user32 winmm
-       ];
        homepage = "https://github.com/haskell/win32";
        description = "A binding to Windows Win32 API";
        license = stdenv.lib.licenses.bsd3;
        platforms = stdenv.lib.platforms.none;
-     }) {advapi32 = null; gdi32 = null; imm32 = null; msimg32 = null; 
-         shell32 = null; shfolder = null; shlwapi = null; user32 = null; 
-         winmm = null;};
+     }) {};
 
   "Win32-console" = callPackage
     ({ mkDerivation, base, Win32 }:
@@ -19244,7 +19270,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers directory Win32 ];
-       executableHaskellDepends = [ base directory ];
        description = "A binding to part of the Win32 library for file notification";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -19816,8 +19841,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base deepseq random vector-space ];
-       executableHaskellDepends = [ base ];
-       testHaskellDepends = [ base ];
        homepage = "https://github.com/ony/Yampa-core";
        description = "Library for programming hybrid systems";
        license = stdenv.lib.licenses.bsd3;
@@ -20061,7 +20084,6 @@ self: {
        ];
        librarySystemDepends = [ abc ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [ base base-compat ];
        testHaskellDepends = [
          aig base base-compat directory QuickCheck tasty tasty-ant-xml
          tasty-hunit tasty-quickcheck vector
@@ -22107,8 +22129,8 @@ self: {
     ({ mkDerivation, aeson, base, iproute, text }:
      mkDerivation {
        pname = "aeson-iproute";
-       version = "0.1.1";
-       sha256 = "1bsrq5mvxbqyrs3jyryy0rh88dzkh8zaf0q07arnjznlwz5k7iwz";
+       version = "0.1.2";
+       sha256 = "09l1q44869hl6pknrrkg7ccwfj4w3mhr3k43j9a7sg7961lnqnsz";
        libraryHaskellDepends = [ aeson base iproute text ];
        homepage = "https://github.com/greydot/aeson-iproute";
        description = "Aeson instances for iproute types";
@@ -22689,11 +22711,6 @@ self: {
          fclabels mtl network pipes pipes-concurrency pipes-network safe
          snmp time transformers unix
        ];
-       executableHaskellDepends = [
-         base binary bitwise bytestring containers data-default Diff
-         fclabels mtl network pipes pipes-concurrency pipes-network safe
-         snmp time transformers unix
-       ];
        description = "AgentX protocol for write SNMP subagents";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -22958,8 +22975,8 @@ self: {
      }:
      mkDerivation {
        pname = "aivika-distributed";
-       version = "1.1.1";
-       sha256 = "0xwbyh1q32xl6xcv8fl49n98b40ma0ycfls21x0l9fjx15wk95ac";
+       version = "1.1.2";
+       sha256 = "15ixv4zzb03wiijx5g7l9csawfihklsh1jnphnwb6j8d1kpmmh5v";
        libraryHaskellDepends = [
          aivika aivika-transformers array base binary containers
          distributed-process exceptions mtl mwc-random random stm time
@@ -23446,7 +23463,6 @@ self: {
        libraryHaskellDepends = [
          algebra base basic-prelude lens semigroups
        ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/konn/algebraic-prelude#readme";
        description = "Algebraically structured Prelude";
        license = stdenv.lib.licenses.bsd3;
@@ -25608,14 +25624,13 @@ self: {
 
   "amazonka-s3-streaming" = callPackage
     ({ mkDerivation, amazonka, amazonka-core, amazonka-s3, base
-     , bytestring, conduit, conduit-extra, deepseq, dlist, exceptions
-     , http-client, lens, lifted-async, mmap, mmorph, mtl, resourcet
-     , text
+     , bytestring, conduit, deepseq, dlist, exceptions, http-client
+     , lens, lifted-async, mmap, mmorph, mtl, resourcet
      }:
      mkDerivation {
        pname = "amazonka-s3-streaming";
-       version = "0.2.0.4";
-       sha256 = "1lz9a4ra6mjk19spm4i014n076f9x557ax6dsjdg8kn868hqcj56";
+       version = "0.2.0.5";
+       sha256 = "1j9jp409gjq7gnwx163i7qpk4ih3rff7z2icsfmzakiarwmg2ff2";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -25623,10 +25638,6 @@ self: {
          dlist exceptions http-client lens lifted-async mmap mmorph mtl
          resourcet
        ];
-       executableHaskellDepends = [
-         amazonka amazonka-core amazonka-s3 base bytestring conduit
-         conduit-extra text
-       ];
        homepage = "https://github.com/Axman6/amazonka-s3-streaming#readme";
        description = "Provides conduits to upload data to S3 using the Multipart API";
        license = stdenv.lib.licenses.bsd3;
@@ -26586,7 +26597,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base colour ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/feuerbach/ansi-terminal";
        description = "Simple ANSI terminal support, with Windows compatibility";
        license = stdenv.lib.licenses.bsd3;
@@ -26601,7 +26611,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base colour ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/feuerbach/ansi-terminal";
        description = "Simple ANSI terminal support, with Windows compatibility";
        license = stdenv.lib.licenses.bsd3;
@@ -26816,7 +26825,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers MissingH mtl ];
-       executableHaskellDepends = [ base containers MissingH mtl ];
        homepage = "http://software.complete.org/anydbm";
        description = "Interface for DBM-like database systems";
        license = "GPL";
@@ -28403,9 +28411,9 @@ self: {
      }) {};
 
   "arrowp-qq" = callPackage
-    ({ mkDerivation, arrows, base, containers, data-default
-     , haskell-src-exts, haskell-src-exts-util, haskell-src-meta, NoHoed
-     , template-haskell, transformers, uniplate
+    ({ mkDerivation, base, containers, data-default, haskell-src-exts
+     , haskell-src-exts-util, haskell-src-meta, NoHoed, template-haskell
+     , transformers, uniplate
      }:
      mkDerivation {
        pname = "arrowp-qq";
@@ -28418,7 +28426,6 @@ self: {
          haskell-src-meta NoHoed template-haskell transformers uniplate
        ];
        executableHaskellDepends = [ base haskell-src-exts NoHoed ];
-       testHaskellDepends = [ arrows base template-haskell ];
        homepage = "https://github.com/pepeiborra/arrowp";
        description = "A preprocessor and quasiquoter for translating arrow notation";
        license = "GPL";
@@ -29025,7 +29032,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hashable stm ];
-       executableHaskellDepends = [ base stm ];
        testHaskellDepends = [
          base HUnit stm test-framework test-framework-hunit
        ];
@@ -29427,7 +29433,7 @@ self: {
 
   "atom-conduit" = callPackage
     ({ mkDerivation, base, blaze-builder, conduit, conduit-combinators
-     , data-default, hlint, lens-simple, mono-traversable, parsers
+     , data-default, lens-simple, mono-traversable, parsers
      , quickcheck-instances, resourcet, safe-exceptions, tasty
      , tasty-hunit, tasty-quickcheck, text, time, timerep
      , uri-bytestring, xml-conduit, xml-types
@@ -29442,7 +29448,7 @@ self: {
          uri-bytestring xml-conduit xml-types
        ];
        testHaskellDepends = [
-         base blaze-builder conduit conduit-combinators data-default hlint
+         base blaze-builder conduit conduit-combinators data-default
          lens-simple mono-traversable parsers quickcheck-instances resourcet
          safe-exceptions tasty tasty-hunit tasty-quickcheck text time
          uri-bytestring xml-conduit xml-types
@@ -29647,8 +29653,8 @@ self: {
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "2.4.1.0";
-       sha256 = "098bnm6s52jkyhxrf3bi04mws6rnzjc3j12g4dpirpgvkm3f1r1z";
+       version = "2.4.2.19";
+       sha256 = "0l8lrr4b99csr5wd4r9lxcax8b9jh8ij80hxsmwzs777fl295yjf";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
@@ -31890,8 +31896,8 @@ self: {
      }) {};
 
   "bamse" = callPackage
-    ({ mkDerivation, base, com, directory, filepath, HUnit, old-time
-     , pretty, process, QuickCheck, regex-compat
+    ({ mkDerivation, base, com, directory, filepath, old-time, pretty
+     , process, regex-compat
      }:
      mkDerivation {
        pname = "bamse";
@@ -31902,7 +31908,6 @@ self: {
        libraryHaskellDepends = [
          base com directory filepath old-time pretty process regex-compat
        ];
-       executableHaskellDepends = [ HUnit QuickCheck ];
        description = "A Windows Installer (MSI) generator framework";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -32329,6 +32334,7 @@ self: {
        homepage = "https://github.com/futurice/haskell-base64-bytestring-type#readme";
        description = "A newtype around ByteString, for base64 encoding";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "base64-conduit" = callPackage
@@ -32608,18 +32614,18 @@ self: {
   "battleship-combinatorics" = callPackage
     ({ mkDerivation, base, combinatorial, containers, deepseq
      , directory, filepath, non-empty, pooled-io, prelude-compat
-     , QuickCheck, random, set-cover, storable-record, storablevector
-     , temporary, transformers, utility-ht
+     , QuickCheck, random, semigroups, set-cover, storable-record
+     , storablevector, temporary, transformers, utility-ht
      }:
      mkDerivation {
        pname = "battleship-combinatorics";
-       version = "0.0";
-       sha256 = "19yc53w1n2clml8gv6h48235kgjzxmg98d8bkjm33k6hcfbx6897";
+       version = "0.0.0.1";
+       sha256 = "00zr3798y5h640rdhls4xkaqmj6n90qnxglq7bq8bvxl68a8ibxd";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base combinatorial containers deepseq directory filepath non-empty
-         pooled-io prelude-compat QuickCheck random set-cover
+         pooled-io prelude-compat QuickCheck random semigroups set-cover
          storable-record storablevector temporary transformers utility-ht
        ];
        executableHaskellDepends = [ base containers ];
@@ -35156,8 +35162,7 @@ self: {
 
   "bio" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
-     , directory, mtl, old-time, parallel, parsec, process, QuickCheck
-     , random, tagsoup
+     , directory, mtl, parallel, parsec, QuickCheck, random, tagsoup
      }:
      mkDerivation {
        pname = "bio";
@@ -35170,9 +35175,7 @@ self: {
          array base binary bytestring containers directory mtl parallel
          parsec QuickCheck tagsoup
        ];
-       executableHaskellDepends = [
-         base bytestring containers old-time process QuickCheck random
-       ];
+       executableHaskellDepends = [ base bytestring random ];
        homepage = "http://biohaskell.org/Libraries/Bio";
        description = "A bioinformatics library";
        license = "LGPL";
@@ -35492,7 +35495,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ghc-prim vector ];
-       executableHaskellDepends = [ base vector ];
        testHaskellDepends = [
          base QuickCheck tasty tasty-hunit tasty-quickcheck tasty-smallcheck
          vector
@@ -37739,7 +37741,7 @@ self: {
      }) {};
 
   "boring-window-switcher" = callPackage
-    ({ mkDerivation, base, gtk, hspec, transformers, X11 }:
+    ({ mkDerivation, base, gtk, transformers, X11 }:
      mkDerivation {
        pname = "boring-window-switcher";
        version = "0.1.0.4";
@@ -37748,7 +37750,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base gtk transformers X11 ];
        executableHaskellDepends = [ base ];
-       testHaskellDepends = [ base hspec ];
        homepage = "https://github.com/debug-ito/boring-window-switcher";
        description = "A boring window switcher";
        license = stdenv.lib.licenses.bsd3;
@@ -38105,9 +38106,6 @@ self: {
          microlens microlens-mtl microlens-th stm template-haskell text
          text-zipper transformers vector vty word-wrap
        ];
-       executableHaskellDepends = [
-         base microlens microlens-th text text-zipper vector vty word-wrap
-       ];
        homepage = "https://github.com/jtdaugherty/brick/";
        description = "A declarative terminal user interface library";
        license = stdenv.lib.licenses.bsd3;
@@ -38130,9 +38128,6 @@ self: {
          microlens microlens-mtl microlens-th stm template-haskell text
          text-zipper transformers vector vty word-wrap
        ];
-       executableHaskellDepends = [
-         base microlens microlens-th text text-zipper vector vty word-wrap
-       ];
        homepage = "https://github.com/jtdaugherty/brick/";
        description = "A declarative terminal user interface library";
        license = stdenv.lib.licenses.bsd3;
@@ -38150,7 +38145,6 @@ self: {
        libraryHaskellDepends = [
          base brick containers skylighting text vty
        ];
-       executableHaskellDepends = [ base brick skylighting text vty ];
        homepage = "https://github.com/jtdaugherty/brick-skylighting/";
        description = "Show syntax-highlighted text in your Brick UI";
        license = stdenv.lib.licenses.bsd3;
@@ -38236,6 +38230,7 @@ self: {
        homepage = "https://github.com/chris-martin/bricks#readme";
        description = "...";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bricks-rendering" = callPackage
@@ -38257,6 +38252,7 @@ self: {
        homepage = "https://github.com/chris-martin/bricks#readme";
        description = "...";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bricks-syntax" = callPackage
@@ -38278,6 +38274,7 @@ self: {
        homepage = "https://github.com/chris-martin/bricks#readme";
        description = "...";
        license = stdenv.lib.licenses.asl20;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "brillig" = callPackage
@@ -38792,7 +38789,6 @@ self: {
          data-default http-conduit http-types iso8601-time resourcet text
          time transformers unordered-containers vector
        ];
-       executableHaskellDepends = [ base containers text time ];
        homepage = "https://github.com/sethfowler/hsbugzilla";
        description = "A Haskell interface to the Bugzilla native REST API";
        license = stdenv.lib.licenses.bsd3;
@@ -39086,10 +39082,6 @@ self: {
          base bifunctors containers deque either extra free microlens
          microlens-th mtl multistate pretty transformers unsafe void
        ];
-       testHaskellDepends = [
-         base containers deque either extra free microlens microlens-th mtl
-         multistate pretty transformers unsafe
-       ];
        homepage = "https://github.com/lspitzner/butcher/";
        description = "Chops a command or program invocation into digestable pieces";
        license = stdenv.lib.licenses.bsd3;
@@ -39108,10 +39100,6 @@ self: {
          base bifunctors containers deque extra free microlens microlens-th
          mtl multistate pretty transformers unsafe void
        ];
-       testHaskellDepends = [
-         base containers deque extra free microlens microlens-th mtl
-         multistate pretty transformers unsafe
-       ];
        homepage = "https://github.com/lspitzner/butcher/";
        description = "Chops a command or program invocation into digestable pieces";
        license = stdenv.lib.licenses.bsd3;
@@ -39168,7 +39156,6 @@ self: {
          ansi-terminal base colour containers exceptions haskeline mtl
          terminfo-hs text transformers
        ];
-       executableHaskellDepends = [ base text ];
        homepage = "http://github.com/pjones/byline";
        description = "Library for creating command-line interfaces (colors, menus, etc.)";
        license = stdenv.lib.licenses.bsd2;
@@ -39302,6 +39289,8 @@ self: {
        pname = "bytestring-arbitrary";
        version = "0.1.1";
        sha256 = "1zbf0liaf071ify0rdyazxqnxdkrfl236innqipwz3kqx4vqvrxv";
+       revision = "1";
+       editedCabalFile = "165v7l6j6n7zlzlbl4q8lkaknxnhz4a9lazv4vr4kkln4z0l3i73";
        libraryHaskellDepends = [ base bytestring cryptohash QuickCheck ];
        testHaskellDepends = [ base bytestring cryptohash QuickCheck ];
        benchmarkHaskellDepends = [
@@ -39820,8 +39809,8 @@ self: {
      }:
      mkDerivation {
        pname = "c-mosquitto";
-       version = "0.1.4.0";
-       sha256 = "12mx7ms24ri1aymapykzm4sfazdsziq3hrr3b61ay3h5j287jw16";
+       version = "0.1.4.1";
+       sha256 = "0adb0sjdvdl3i2mqrpcvdqbi9w7bwcwc7y33ibcsyrgx542jf831";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -40139,10 +40128,6 @@ self: {
        executableHaskellDepends = [
          base Cabal debian lens mtl pretty Unixutils
        ];
-       testHaskellDepends = [
-         base Cabal containers debian Diff directory filepath hsemail HUnit
-         lens pretty process text
-       ];
        homepage = "https://github.com/ddssff/cabal-debian";
        description = "Create a Debianization for a Cabal package";
        license = stdenv.lib.licenses.bsd3;
@@ -40281,10 +40266,10 @@ self: {
      }) {};
 
   "cabal-helper" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, cabal-install, containers
-     , directory, exceptions, filepath, ghc, ghc-paths, ghc-prim, mtl
-     , process, semigroupoids, template-haskell, temporary, transformers
-     , unix, unix-compat, utf8-string
+    ({ mkDerivation, base, bytestring, Cabal, cabal-install, directory
+     , exceptions, filepath, ghc, ghc-paths, ghc-prim, mtl, process
+     , semigroupoids, template-haskell, temporary, transformers, unix
+     , unix-compat, utf8-string
      }:
      mkDerivation {
        pname = "cabal-helper";
@@ -40298,9 +40283,9 @@ self: {
          transformers unix unix-compat
        ];
        executableHaskellDepends = [
-         base bytestring Cabal containers directory exceptions filepath
-         ghc-prim mtl process template-haskell temporary transformers unix
-         unix-compat utf8-string
+         base bytestring Cabal directory exceptions filepath ghc-prim mtl
+         process template-haskell temporary transformers unix unix-compat
+         utf8-string
        ];
        executableToolDepends = [ cabal-install ];
        testHaskellDepends = [
@@ -41483,7 +41468,6 @@ self: {
          OpenGL OpenGLRaw random template-haskell text transformers vector
          WAVE
        ];
-       executableHaskellDepends = [ base lens ];
        homepage = "https://github.com/fumieval/call";
        description = "The call game engine";
        license = stdenv.lib.licenses.bsd3;
@@ -42525,7 +42509,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring cassava template-haskell vector
        ];
-       executableHaskellDepends = [ base cassava template-haskell ];
        homepage = "https://github.com/typeable/cassava-embed#readme";
        description = "CSV-file embedding library";
        license = stdenv.lib.licenses.bsd3;
@@ -43634,7 +43617,6 @@ self: {
          array base binary bytestring Codec-Image-DevIL containers
          data-reify directory GLUT OpenGLRaw process time
        ];
-       executableHaskellDepends = [ base ];
        homepage = "http://www.ittc.ku.edu/csdl/fpg/ChalkBoard";
        description = "Combinators for building and processing 2D images";
        license = stdenv.lib.licenses.bsd3;
@@ -43811,6 +43793,39 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "chart-unit_0_6_0_2" = callPackage
+    ({ mkDerivation, base, colour, data-default, diagrams-lib
+     , diagrams-svg, doctest, foldl, formatting, generic-lens
+     , generic-lens-labels, lens, linear, mwc-probability, mwc-random
+     , numhask, numhask-histogram, numhask-range, palette, primitive
+     , protolude, scientific, svg-builder, SVGFonts, tasty, tasty-hspec
+     , text, time
+     }:
+     mkDerivation {
+       pname = "chart-unit";
+       version = "0.6.0.2";
+       sha256 = "1xdnjdhm20nfp6gypz01rj7i0dz9f3ds5sdacynsmvvj3gi2zimr";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base colour data-default diagrams-lib diagrams-svg foldl formatting
+         generic-lens lens linear numhask numhask-range palette protolude
+         scientific svg-builder SVGFonts text time
+       ];
+       executableHaskellDepends = [
+         base diagrams-lib formatting generic-lens-labels lens
+         mwc-probability mwc-random numhask numhask-histogram numhask-range
+         primitive protolude text time
+       ];
+       testHaskellDepends = [
+         base doctest numhask numhask-range tasty tasty-hspec
+       ];
+       homepage = "https://github.com/tonyday567/chart-unit#readme";
+       description = "Native haskell charts";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "chaselev-deque" = callPackage
     ({ mkDerivation, abstract-deque, abstract-deque-tests, array
      , atomic-primops, base, containers, ghc-prim, HUnit, test-framework
@@ -45188,8 +45203,8 @@ self: {
 
   "clang-pure" = callPackage
     ({ mkDerivation, base, bytestring, clang, containers, contravariant
-     , hashable, inline-c, lens, microlens, microlens-contra, singletons
-     , stm, template-haskell, unordered-containers, vector
+     , inline-c, microlens, microlens-contra, singletons, stm
+     , template-haskell, vector
      }:
      mkDerivation {
        pname = "clang-pure";
@@ -45202,9 +45217,6 @@ self: {
          microlens-contra singletons stm template-haskell vector
        ];
        librarySystemDepends = [ clang ];
-       executableHaskellDepends = [
-         base bytestring hashable lens unordered-containers
-       ];
        description = "Pure C++ code analysis with libclang";
        license = stdenv.lib.licenses.asl20;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -46899,9 +46911,6 @@ self: {
        libraryHaskellDepends = [
          base filepath process template-haskell transformers
        ];
-       executableHaskellDepends = [
-         base filepath process template-haskell transformers
-       ];
        homepage = "https://github.com/ndmitchell/cmdargs#readme";
        description = "Command line argument processing";
        license = stdenv.lib.licenses.bsd3;
@@ -47271,15 +47280,15 @@ self: {
 
   "codeworld-api" = callPackage
     ({ mkDerivation, base, blank-canvas, cereal, cereal-text
-     , containers, hashable, mtl, random, text, time
+     , containers, hashable, mtl, random, random-shuffle, text, time
      }:
      mkDerivation {
        pname = "codeworld-api";
-       version = "0.2.1.0";
-       sha256 = "0llvmw7p5csjfky4ajmwwkb4k5i2pb1vcpla94y3xydlm8pwpn4i";
+       version = "0.2.2.0";
+       sha256 = "14q4aqmp2q4jf1w1j071lypysj3b6fxd7k8n4hwi81c8g6n67r81";
        libraryHaskellDepends = [
          base blank-canvas cereal cereal-text containers hashable mtl random
-         text time
+         random-shuffle text time
        ];
        description = "Graphics library for CodeWorld";
        license = stdenv.lib.licenses.asl20;
@@ -48041,6 +48050,8 @@ self: {
        pname = "combinatorial";
        version = "0.0";
        sha256 = "0v0djq8kiiam8fd0057skny3dkqn3y138nf5cqbyqp52wzs2lvs6";
+       revision = "1";
+       editedCabalFile = "18aykjlggxkwn3cl46i2vznvag5kkw2kslf69yxvf4sg34bi7yfz";
        libraryHaskellDepends = [
          array base containers transformers utility-ht
        ];
@@ -48058,6 +48069,8 @@ self: {
        pname = "combinatorial";
        version = "0.1";
        sha256 = "1a5l4iixjhvqca8dvwkx3zvlaimp6ggr3fcm7vk7r77rv6n6svh9";
+       revision = "1";
+       editedCabalFile = "1bqcg04w48dqk4n1n36j9ykajrmwqdd4qpcjjjfhzvm83z5ypsh7";
        libraryHaskellDepends = [
          array base containers transformers utility-ht
        ];
@@ -48135,6 +48148,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "comfort-graph_0_0_3" = callPackage
+    ({ mkDerivation, base, containers, QuickCheck, semigroups
+     , transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "comfort-graph";
+       version = "0.0.3";
+       sha256 = "11s3ag5skk07vs4h6xl20hbmlrbxqcwrj54wfpz2fk73347prmmr";
+       libraryHaskellDepends = [
+         base containers QuickCheck semigroups transformers utility-ht
+       ];
+       testHaskellDepends = [
+         base containers QuickCheck transformers utility-ht
+       ];
+       homepage = "http://hub.darcs.net/thielema/comfort-graph";
+       description = "Graph structure with type parameters for nodes and edges";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "comic" = callPackage
     ({ mkDerivation, aeson, base, text }:
      mkDerivation {
@@ -48455,12 +48488,15 @@ self: {
      }) {};
 
   "compactable" = callPackage
-    ({ mkDerivation, base, containers, transformers, vector }:
+    ({ mkDerivation, base, bifunctors, containers, transformers, vector
+     }:
      mkDerivation {
        pname = "compactable";
-       version = "0.1.0.4";
-       sha256 = "1xf13k0syj8ssjgf2snddkgljwxpb4gpl0di9hsf1iy1wcx6pgh6";
-       libraryHaskellDepends = [ base containers transformers vector ];
+       version = "0.1.1.1";
+       sha256 = "0dbjwsbn5wgwwzl90wvcqf2c6968j5bkg1nzdll03nxklqnv3m9b";
+       libraryHaskellDepends = [
+         base bifunctors containers transformers vector
+       ];
        description = "A typeclass for structures which can be catMaybed, filtered, and partitioned";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -48979,18 +49015,17 @@ self: {
 
   "computational-algebra" = callPackage
     ({ mkDerivation, algebra, algebraic-prelude, arithmoi, base
-     , constraint, constraints, containers, control-monad-loop
-     , convertible, criterion, deepseq, dlist, entropy
-     , equational-reasoning, ghc-typelits-knownnat
-     , ghc-typelits-natnormalise, ghc-typelits-presburger, hashable
-     , heaps, hmatrix, hspec, HUnit, hybrid-vectors, integer-logarithms
-     , lazysmallcheck, lens, ListLike, matrix, monad-loops, MonadRandom
-     , mono-traversable, monomorphic, mtl, parallel, primes, process
-     , QuickCheck, quickcheck-instances, random, reflection, semigroups
-     , singletons, sized, smallcheck, tagged, template-haskell
-     , test-framework, test-framework-hunit, text, transformers
-     , type-natural, unamb, unordered-containers, vector
-     , vector-algorithms
+     , constraints, containers, control-monad-loop, convertible
+     , criterion, deepseq, dlist, entropy, equational-reasoning
+     , ghc-typelits-knownnat, ghc-typelits-natnormalise
+     , ghc-typelits-presburger, hashable, heaps, hmatrix, hspec, HUnit
+     , hybrid-vectors, integer-logarithms, lens, ListLike, matrix
+     , monad-loops, MonadRandom, mono-traversable, monomorphic, mtl
+     , parallel, primes, process, QuickCheck, quickcheck-instances
+     , random, reflection, semigroups, singletons, sized, smallcheck
+     , tagged, template-haskell, test-framework, test-framework-hunit
+     , text, transformers, type-natural, unamb, unordered-containers
+     , vector, vector-algorithms
      }:
      mkDerivation {
        pname = "computational-algebra";
@@ -49011,21 +49046,15 @@ self: {
          template-haskell text type-natural unamb unordered-containers
          vector vector-algorithms
        ];
-       executableHaskellDepends = [
-         algebra algebraic-prelude base constraints convertible criterion
-         deepseq equational-reasoning hmatrix lens matrix MonadRandom
-         parallel random reflection semigroups singletons sized type-natural
-         vector
-       ];
        testHaskellDepends = [
          algebra base constraints containers convertible deepseq
-         equational-reasoning hspec HUnit lazysmallcheck lens matrix
-         MonadRandom monomorphic process QuickCheck quickcheck-instances
-         reflection singletons sized smallcheck tagged test-framework
-         test-framework-hunit text transformers type-natural vector
+         equational-reasoning hspec HUnit lens matrix MonadRandom
+         monomorphic process QuickCheck quickcheck-instances reflection
+         singletons sized smallcheck tagged test-framework
+         test-framework-hunit text type-natural vector
        ];
        benchmarkHaskellDepends = [
-         algebra base constraint constraints containers criterion deepseq
+         algebra base constraints containers criterion deepseq
          equational-reasoning hspec HUnit lens matrix MonadRandom
          monomorphic parallel process QuickCheck quickcheck-instances random
          reflection singletons sized smallcheck tagged test-framework
@@ -49729,6 +49758,34 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "conduit-algorithms_0_0_7_2" = callPackage
+    ({ mkDerivation, async, base, bytestring, bzlib-conduit, conduit
+     , conduit-combinators, conduit-extra, containers, deepseq
+     , directory, HUnit, lzma-conduit, mtl, resourcet, stm, stm-conduit
+     , streaming-commons, test-framework, test-framework-hunit
+     , test-framework-th, transformers, vector
+     }:
+     mkDerivation {
+       pname = "conduit-algorithms";
+       version = "0.0.7.2";
+       sha256 = "19lamsddxvj8m47f97wlmk3phzf2rjdaxjbz064wc96r763mnigy";
+       libraryHaskellDepends = [
+         async base bytestring bzlib-conduit conduit conduit-combinators
+         conduit-extra containers deepseq lzma-conduit mtl resourcet stm
+         stm-conduit streaming-commons transformers vector
+       ];
+       testHaskellDepends = [
+         async base bytestring bzlib-conduit conduit conduit-combinators
+         conduit-extra containers deepseq directory HUnit lzma-conduit mtl
+         resourcet stm stm-conduit streaming-commons test-framework
+         test-framework-hunit test-framework-th transformers vector
+       ];
+       homepage = "https://github.com/luispedro/conduit-algorithms#readme";
+       description = "Conduit-based algorithms";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "conduit-audio" = callPackage
     ({ mkDerivation, base, conduit, vector }:
      mkDerivation {
@@ -50006,9 +50063,9 @@ self: {
      }) {};
 
   "conduit-parse" = callPackage
-    ({ mkDerivation, base, conduit, conduit-combinators, dlist, hlint
-     , mtl, parsers, resourcet, safe, safe-exceptions, tasty
-     , tasty-hunit, text, transformers
+    ({ mkDerivation, base, conduit, conduit-combinators, dlist, mtl
+     , parsers, resourcet, safe, safe-exceptions, tasty, tasty-hunit
+     , text, transformers
      }:
      mkDerivation {
        pname = "conduit-parse";
@@ -50019,7 +50076,7 @@ self: {
          safe-exceptions text transformers
        ];
        testHaskellDepends = [
-         base conduit hlint mtl parsers resourcet safe-exceptions tasty
+         base conduit mtl parsers resourcet safe-exceptions tasty
          tasty-hunit
        ];
        homepage = "https://github.com/k0ral/conduit-parse";
@@ -50105,6 +50162,7 @@ self: {
        homepage = "https://github.com/luispedro/conduit-zstd#readme";
        description = "Conduit-based ZStd Compression";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "conf" = callPackage
@@ -50163,9 +50221,8 @@ self: {
      }) {};
 
   "config-ini" = callPackage
-    ({ mkDerivation, base, containers, directory, doctest, hedgehog
-     , ini, megaparsec, microlens, text, transformers
-     , unordered-containers
+    ({ mkDerivation, base, containers, directory, hedgehog, ini
+     , megaparsec, text, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "config-ini";
@@ -50175,8 +50232,7 @@ self: {
          base containers megaparsec text transformers unordered-containers
        ];
        testHaskellDepends = [
-         base containers directory doctest hedgehog ini microlens text
-         unordered-containers
+         base containers directory hedgehog ini text unordered-containers
        ];
        homepage = "https://github.com/aisamanra/config-ini";
        description = "A library for simple INI-based configuration files";
@@ -50284,7 +50340,7 @@ self: {
     ({ mkDerivation, aeson, aeson-pretty, base, bytestring
      , case-insensitive, containers, directory, either, functor-infix
      , hspec, hspec-discover, mtl, pretty-show, QuickCheck, safe
-     , scientific, string-conversions, template-haskell, text
+     , scientific, string-conversions, template-haskell
      , unordered-containers, vector, yaml
      }:
      mkDerivation {
@@ -50298,9 +50354,6 @@ self: {
          functor-infix mtl safe string-conversions template-haskell
          unordered-containers vector yaml
        ];
-       executableHaskellDepends = [
-         base bytestring mtl pretty-show string-conversions text yaml
-       ];
        testHaskellDepends = [
          aeson aeson-pretty base case-insensitive hspec hspec-discover mtl
          pretty-show QuickCheck scientific string-conversions
@@ -51074,10 +51127,8 @@ self: {
      }) {};
 
   "continuum" = callPackage
-    ({ mkDerivation, base, bytestring, cereal, containers, data-default
-     , foldl, hyperleveldb, leveldb-haskell-fork, mtl, nanomsg-haskell
-     , parallel-io, resourcet, stm, suspend, time, timers, transformers
-     , transformers-base
+    ({ mkDerivation, base, bytestring, cereal, containers, mtl
+     , nanomsg-haskell, time
      }:
      mkDerivation {
        pname = "continuum";
@@ -51088,15 +51139,9 @@ self: {
        libraryHaskellDepends = [
          base bytestring cereal containers mtl nanomsg-haskell time
        ];
-       executableHaskellDepends = [
-         base bytestring cereal containers data-default foldl
-         leveldb-haskell-fork mtl nanomsg-haskell parallel-io resourcet stm
-         suspend time timers transformers transformers-base
-       ];
-       executableSystemDepends = [ hyperleveldb ];
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {hyperleveldb = null;};
+     }) {};
 
   "continuum-client" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, mtl
@@ -52073,9 +52118,7 @@ self: {
      }) {};
 
   "country-codes" = callPackage
-    ({ mkDerivation, aeson, base, HTF, HUnit, shakespeare, tagsoup
-     , text
-     }:
+    ({ mkDerivation, aeson, base, HTF, HUnit, shakespeare, text }:
      mkDerivation {
        pname = "country-codes";
        version = "0.1.3";
@@ -52083,7 +52126,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ aeson base shakespeare text ];
-       executableHaskellDepends = [ base tagsoup text ];
        testHaskellDepends = [ aeson base HTF HUnit ];
        homepage = "https://github.com/prowdsponsor/country-codes";
        description = "ISO 3166 country codes and i18n names";
@@ -52802,22 +52844,16 @@ self: {
 
   "crdt" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, Diff
-     , hashable, mtl, network-info, QuickCheck, QuickCheck-GenT
-     , quickcheck-instances, safe, stm, tasty, tasty-discover
-     , tasty-quickcheck, time, vector
+     , hashable, mtl, network-info, safe, stm, time, vector
      }:
      mkDerivation {
        pname = "crdt";
-       version = "9.0";
-       sha256 = "099rpmwwla68vyw366xmzpdyv39hxcpidpkg1l0lx2mjz2jxm6zc";
+       version = "9.1";
+       sha256 = "1rhwbwhaxx15jpy9jacdxcrqfxh8nm84w5jadsrb947nhjjwczj6";
        libraryHaskellDepends = [
          base binary bytestring containers Diff hashable mtl network-info
          safe stm time vector
        ];
-       testHaskellDepends = [
-         base containers mtl QuickCheck QuickCheck-GenT quickcheck-instances
-         tasty tasty-discover tasty-quickcheck vector
-       ];
        homepage = "https://github.com/cblp/crdt#readme";
        description = "Conflict-free replicated data types";
        license = stdenv.lib.licenses.bsd3;
@@ -54308,10 +54344,6 @@ self: {
          mtl primitive resourcet text transformers unordered-containers
          vector
        ];
-       executableHaskellDepends = [
-         base bytestring containers directory mtl primitive text
-         transformers vector
-       ];
        testHaskellDepends = [
          base bytestring containers directory HUnit mtl primitive
          test-framework test-framework-hunit text transformers vector
@@ -54464,9 +54496,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring cereal containers STL ];
-       executableHaskellDepends = [
-         base bytestring cereal containers hspec STL
-       ];
        testHaskellDepends = [
          base bytestring cereal containers hspec STL
        ];
@@ -54575,6 +54604,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "cuda_0_9_0_1" = callPackage
+    ({ mkDerivation, base, bytestring, c2hs, Cabal, directory, filepath
+     , pretty, template-haskell
+     }:
+     mkDerivation {
+       pname = "cuda";
+       version = "0.9.0.1";
+       sha256 = "1ldn1jd12kisx6dgz5q50l6hx5aqakwj9vq2fbnx21ri309vlyq8";
+       isLibrary = true;
+       isExecutable = true;
+       setupHaskellDepends = [ base Cabal directory filepath ];
+       libraryHaskellDepends = [
+         base bytestring filepath template-haskell
+       ];
+       libraryToolDepends = [ c2hs ];
+       executableHaskellDepends = [ base pretty ];
+       homepage = "https://github.com/tmcdonell/cuda";
+       description = "FFI binding to the CUDA interface for programming NVIDIA GPUs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "cudd" = callPackage
     ({ mkDerivation, array, base, c2hs, cudd, mtl, transformers }:
      mkDerivation {
@@ -57009,7 +57060,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
-       executableHaskellDepends = [ base ];
        homepage = "http://ku-fpg.github.io/software/data-reify/";
        description = "Reify a recursive data structure into an explicit graph";
        license = stdenv.lib.licenses.bsd3;
@@ -58439,6 +58489,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "debug_0_1" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, clock, containers
+     , deepseq, directory, extra, filepath, ghc-prim, hashable, Hoed
+     , js-jquery, libgraph, monoidal-containers, open-browser
+     , prettyprinter, prettyprinter-compat-ansi-wl-pprint
+     , template-haskell, text, uniplate, unordered-containers, vector
+     , yaml
+     }:
+     mkDerivation {
+       pname = "debug";
+       version = "0.1";
+       sha256 = "05wnaz5p5szba0r6sqz5c0db63wpscmip635v1x35nv3crb2j1r0";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson base bytestring clock containers deepseq directory extra
+         ghc-prim hashable Hoed js-jquery libgraph monoidal-containers
+         open-browser prettyprinter prettyprinter-compat-ansi-wl-pprint
+         template-haskell text uniplate unordered-containers vector
+       ];
+       executableHaskellDepends = [ aeson base directory filepath yaml ];
+       testHaskellDepends = [
+         aeson base bytestring containers directory extra filepath text
+       ];
+       homepage = "https://github.com/ndmitchell/debug";
+       description = "Simple trace-based debugger";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "debug-diff" = callPackage
     ({ mkDerivation, base, groom, process, temporary }:
      mkDerivation {
@@ -58977,14 +59058,14 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "dejafu_1_0_0_1" = callPackage
+  "dejafu_1_0_0_2" = callPackage
     ({ mkDerivation, base, concurrency, containers, deepseq, exceptions
      , leancheck, profunctors, random, ref-fd, transformers
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "1.0.0.1";
-       sha256 = "1v2hizvwf4clvqwwaab6ijlmwv7n97h8ag7dw9a63w4lipfl2anf";
+       version = "1.0.0.2";
+       sha256 = "0j98kvqi746swpw6jsg8vfjw16y7d0nmiysxfsl7yrnqzma9nyx6";
        libraryHaskellDepends = [
          base concurrency containers deepseq exceptions leancheck
          profunctors random ref-fd transformers
@@ -59226,15 +59307,16 @@ self: {
 
   "dependency" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, binary, containers
-     , criterion, deepseq, hspec, microlens, recursion-schemes
+     , criterion, deepseq, hspec, microlens, recursion-schemes, tardis
+     , transformers
      }:
      mkDerivation {
        pname = "dependency";
-       version = "0.1.0.7";
-       sha256 = "1jyx99iz522an33yq0knnplpinlzrs6609mv9brbbi2mmr28cjkm";
+       version = "0.1.0.9";
+       sha256 = "02xlq32xpww584ng5wzzlxmh8d15dqc342mlnfiysh2lfdwqydzk";
        libraryHaskellDepends = [
          ansi-wl-pprint base binary containers deepseq microlens
-         recursion-schemes
+         recursion-schemes tardis transformers
        ];
        testHaskellDepends = [ base containers hspec ];
        benchmarkHaskellDepends = [ base containers criterion ];
@@ -62359,8 +62441,8 @@ self: {
      }:
      mkDerivation {
        pname = "distributed-process-p2p";
-       version = "0.1.3.2";
-       sha256 = "13m283cwlas0xzqxlrmnwmwimwy29hbvymavyqffd1b0k2m6ag31";
+       version = "0.1.4.0";
+       sha256 = "0wl5cnh2swymj3h4hrvkkfl7d5hrmxl1ayiyv9yjbr6gm72i11vj";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -62598,7 +62680,6 @@ self: {
          base binary bytestring containers deepseq distributed-process hzk
          mtl network network-transport network-transport-tcp transformers
        ];
-       executableHaskellDepends = [ base distributed-process ];
        testHaskellDepends = [
          base bytestring deepseq distributed-process
          distributed-process-monad-control enclosed-exceptions hspec hzk
@@ -63415,6 +63496,30 @@ self: {
        license = stdenv.lib.licenses.publicDomain;
      }) {};
 
+  "doctest-discover_0_1_0_8" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory, doctest
+     , filepath
+     }:
+     mkDerivation {
+       pname = "doctest-discover";
+       version = "0.1.0.8";
+       sha256 = "1ilmrc173d5xr7yphrbgg4kmkilyj1a89c67q4zrs4b6xfd5pa2x";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring directory doctest filepath
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring directory doctest filepath
+       ];
+       testHaskellDepends = [ base doctest ];
+       doHaddock = false;
+       homepage = "http://github.com/karun012/doctest-discover";
+       description = "Easy way to run doctests via cabal";
+       license = stdenv.lib.licenses.publicDomain;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "doctest-discover-configurator" = callPackage
     ({ mkDerivation, base, bytestring, configurator, directory, doctest
      , filepath
@@ -63792,7 +63897,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/ku-fpg/dotgen";
        description = "A simple interface for building .dot graph files.";
        license = stdenv.lib.licenses.bsd3;
@@ -64646,7 +64750,7 @@ self: {
 
   "dublincore-xml-conduit" = callPackage
     ({ mkDerivation, base, bytestring, conduit, conduit-combinators
-     , data-default, hlint, QuickCheck, quickcheck-instances, resourcet
+     , data-default, QuickCheck, quickcheck-instances, resourcet
      , safe-exceptions, tasty, tasty-hunit, tasty-quickcheck, text, time
      , timerep, uri-bytestring, xml-conduit, xml-types
      }:
@@ -64659,10 +64763,9 @@ self: {
          uri-bytestring xml-conduit xml-types
        ];
        testHaskellDepends = [
-         base bytestring conduit conduit-combinators data-default hlint
-         QuickCheck quickcheck-instances resourcet safe-exceptions tasty
-         tasty-hunit tasty-quickcheck text time uri-bytestring xml-conduit
-         xml-types
+         base bytestring conduit conduit-combinators data-default QuickCheck
+         quickcheck-instances resourcet safe-exceptions tasty tasty-hunit
+         tasty-quickcheck text time uri-bytestring xml-conduit xml-types
        ];
        homepage = "https://github.com/k0ral/dublincore-xml-conduit";
        description = "XML streaming parser/renderer for the Dublin Core standard elements";
@@ -65205,15 +65308,13 @@ self: {
      }) {};
 
   "dynobud" = callPackage
-    ({ mkDerivation, aeson, base, binary, bytestring, casadi-bindings
-     , casadi-bindings-core, cereal, Chart, Chart-gtk, cmdargs, colour
-     , containers, data-default-class, directory, distributive, doctest
-     , generic-accessors, hmatrix, hmatrix-gsl, HUnit, jacobi-roots
-     , lens, linear, mtl, mwc-random, not-gloss, Plot-ho-matic, process
-     , QuickCheck, reflection, semigroups, spatial-math, stm
+    ({ mkDerivation, aeson, base, binary, casadi-bindings
+     , casadi-bindings-core, cereal, containers, data-default-class
+     , directory, distributive, doctest, generic-accessors, hmatrix
+     , hmatrix-gsl, HUnit, jacobi-roots, lens, linear, mtl, mwc-random
+     , Plot-ho-matic, process, QuickCheck, reflection, spatial-math
      , test-framework, test-framework-hunit, test-framework-quickcheck2
-     , time, unordered-containers, vector, vector-binary-instances
-     , zeromq4-haskell
+     , time, vector, vector-binary-instances
      }:
      mkDerivation {
        pname = "dynobud";
@@ -65228,12 +65329,6 @@ self: {
          mwc-random Plot-ho-matic process reflection spatial-math time
          vector vector-binary-instances
        ];
-       executableHaskellDepends = [
-         base bytestring casadi-bindings casadi-bindings-core cereal Chart
-         Chart-gtk cmdargs colour containers data-default-class
-         generic-accessors lens linear mtl not-gloss Plot-ho-matic
-         semigroups stm time unordered-containers vector zeromq4-haskell
-       ];
        testHaskellDepends = [
          base binary casadi-bindings cereal containers doctest hmatrix
          hmatrix-gsl HUnit linear QuickCheck test-framework
@@ -65582,7 +65677,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base process ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/RyanGlScott/echo";
        description = "A cross-platform, cross-console way to handle echoing terminal input";
        license = stdenv.lib.licenses.bsd3;
@@ -65612,8 +65706,8 @@ self: {
     ({ mkDerivation, base, containers, mtl, transformers }:
      mkDerivation {
        pname = "ecstasy";
-       version = "0.1.0.1";
-       sha256 = "1xaril40m8yi4lg4489v1rqs3b6d6k23xhh27fv9ibkvy78qdkdc";
+       version = "0.1.1.0";
+       sha256 = "06j5fpgrcf8nwwvs52gwdd55g7pxxv3ygsz5g08g8ap7wl2i9mby";
        libraryHaskellDepends = [ base containers mtl transformers ];
        homepage = "http://github.com/isovector/ecstasy/";
        description = "A GHC.Generics based entity component system.";
@@ -66132,7 +66226,7 @@ self: {
 
   "ehs" = callPackage
     ({ mkDerivation, base, bytestring, haskell-src-meta, parsec
-     , template-haskell, text, time, transformers
+     , template-haskell, text, transformers
      }:
      mkDerivation {
        pname = "ehs";
@@ -66146,7 +66240,6 @@ self: {
          base bytestring haskell-src-meta parsec template-haskell text
          transformers
        ];
-       executableHaskellDepends = [ base bytestring text time ];
        homepage = "http://github.com/minpou/ehs/";
        description = "Embedded haskell template using quasiquotes";
        license = stdenv.lib.licenses.mit;
@@ -66476,7 +66569,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring ekg-core text time unordered-containers
        ];
-       executableHaskellDepends = [ base ekg-core ];
        homepage = "https://github.com/adarqui/ekg-push";
        description = "Small framework to push metric deltas to a broadcast channel using the ekg-core library";
        license = stdenv.lib.licenses.bsd3;
@@ -67859,6 +67951,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "enumset_0_0_4_1" = callPackage
+    ({ mkDerivation, base, data-accessor, semigroups, storable-record
+     }:
+     mkDerivation {
+       pname = "enumset";
+       version = "0.0.4.1";
+       sha256 = "0m6ha4m9hvmzkgnwani3z3vgcllzgv6n578g56x4sb9bgxgi37az";
+       libraryHaskellDepends = [
+         base data-accessor semigroups storable-record
+       ];
+       description = "Sets of enumeration values represented by machine words";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "env-locale" = callPackage
     ({ mkDerivation, base, old-locale, time }:
      mkDerivation {
@@ -68999,7 +69106,7 @@ self: {
      }) {};
 
   "euler-tour-tree" = callPackage
-    ({ mkDerivation, base, containers, fingertree, hlint, keys, mtl
+    ({ mkDerivation, base, containers, fingertree, keys, mtl
      , parser-combinators, QuickCheck, sequence, tasty, tasty-hunit
      , tasty-quickcheck, transformers, Unique
      }:
@@ -69012,7 +69119,7 @@ self: {
          Unique
        ];
        testHaskellDepends = [
-         base containers hlint keys QuickCheck sequence tasty tasty-hunit
+         base containers keys QuickCheck sequence tasty tasty-hunit
          tasty-quickcheck
        ];
        homepage = "https://github.com/k0ral/euler-tour-tree";
@@ -69139,6 +69246,27 @@ self: {
        license = "GPL";
      }) {};
 
+  "event-list_0_1_2" = callPackage
+    ({ mkDerivation, base, non-negative, QuickCheck, random, semigroups
+     , transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "event-list";
+       version = "0.1.2";
+       sha256 = "177q99iswmanh34wlgklw1djvv5v1c0b5ysyi7mdmb70fsw30kk2";
+       libraryHaskellDepends = [
+         base non-negative QuickCheck semigroups transformers utility-ht
+       ];
+       testHaskellDepends = [
+         base non-negative QuickCheck random semigroups transformers
+         utility-ht
+       ];
+       homepage = "http://code.haskell.org/~thielema/event-list/";
+       description = "Event lists with relative or absolute time stamps";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "event-monad" = callPackage
     ({ mkDerivation, base, containers, event-handlers, haskell98
      , monad-loops, mtl, pretty, prettyclass, priority-queue, stateref
@@ -69666,9 +69794,7 @@ self: {
      }) {};
 
   "exact-cover" = callPackage
-    ({ mkDerivation, base, boxes, containers, safe, tasty, tasty-hunit
-     , vector
-     }:
+    ({ mkDerivation, base, containers, tasty, tasty-hunit }:
      mkDerivation {
        pname = "exact-cover";
        version = "0.1.0.0";
@@ -69676,7 +69802,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
-       executableHaskellDepends = [ base boxes containers safe vector ];
        testHaskellDepends = [ base containers tasty tasty-hunit ];
        homepage = "https://github.com/arthurl/exact-cover";
        description = "Efficient exact cover solver";
@@ -70314,6 +70439,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "explicit-exception_0_1_9_2" = callPackage
+    ({ mkDerivation, base, deepseq, semigroups, transformers }:
+     mkDerivation {
+       pname = "explicit-exception";
+       version = "0.1.9.2";
+       sha256 = "1xj9fqh28br5xyzzc28zl23jj913ayhikvwcw9ccj3pqfybh5xk0";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base deepseq semigroups transformers ];
+       homepage = "http://www.haskell.org/haskellwiki/Exception";
+       description = "Exceptions which are explicit in the type signature";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "explicit-iomodes" = callPackage
     ({ mkDerivation, base, base-unicode-symbols, tagged }:
      mkDerivation {
@@ -71889,6 +72029,23 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "fedora-haskell-tools_0_5_1" = callPackage
+    ({ mkDerivation, base, directory, filepath, process, time, unix }:
+     mkDerivation {
+       pname = "fedora-haskell-tools";
+       version = "0.5.1";
+       sha256 = "1543i2lxzplqmx1cpggp5773qvqc6jzn4960c1cgyhg9mjd13adr";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base directory filepath process time unix
+       ];
+       homepage = "https://github.com/fedora-haskell/fedora-haskell-tools";
+       description = "Building and managing tools for Fedora Haskell";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "fedora-packages" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, hlint
      , HsOpenSSL, hspec, http-streams, io-streams, lens, text
@@ -72332,7 +72489,7 @@ self: {
   "ffmpeg-light" = callPackage
     ({ mkDerivation, base, bytestring, either, exceptions, ffmpeg
      , JuicyPixels, libavcodec, libavdevice, libavformat, libswscale
-     , monad-loops, mtl, text, transformers, vector
+     , mtl, transformers, vector
      }:
      mkDerivation {
        pname = "ffmpeg-light";
@@ -72347,10 +72504,6 @@ self: {
        libraryPkgconfigDepends = [
          ffmpeg libavcodec libavdevice libavformat libswscale
        ];
-       executableHaskellDepends = [
-         base bytestring JuicyPixels monad-loops mtl text transformers
-         vector
-       ];
        homepage = "http://github.com/acowley/ffmpeg-light";
        description = "Minimal bindings to the FFmpeg library";
        license = stdenv.lib.licenses.bsd3;
@@ -72739,6 +72892,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "filecache_0_3_0" = callPackage
+    ({ mkDerivation, base, containers, directory, exceptions, filepath
+     , fsnotify, hspec, mtl, stm, strict-base-types, temporary, time
+     }:
+     mkDerivation {
+       pname = "filecache";
+       version = "0.3.0";
+       sha256 = "0lizyqksip8vw7gf0zi4ggfh07ql43avim25dwdlk9blv7kyxng4";
+       libraryHaskellDepends = [
+         base containers directory exceptions filepath fsnotify mtl stm
+         strict-base-types time
+       ];
+       testHaskellDepends = [
+         base containers directory filepath hspec stm temporary
+       ];
+       homepage = "http://lpuppet.banquise.net/";
+       description = "A cache system associating values to files";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "filediff" = callPackage
     ({ mkDerivation, base, bytestring, data-default
      , data-memocombinators, directory, either, hashmap, mtl, rainbow
@@ -74405,7 +74579,7 @@ self: {
 
   "fltkhs" = callPackage
     ({ mkDerivation, base, bytestring, c2hs, Cabal, directory, filepath
-     , mtl, OpenGLRaw, parsec, text
+     , mtl, parsec, text
      }:
      mkDerivation {
        pname = "fltkhs";
@@ -74416,9 +74590,7 @@ self: {
        setupHaskellDepends = [ base Cabal directory filepath ];
        libraryHaskellDepends = [ base bytestring text ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [
-         base directory filepath mtl OpenGLRaw parsec text
-       ];
+       executableHaskellDepends = [ base directory filepath mtl parsec ];
        homepage = "http://github.com/deech/fltkhs";
        description = "FLTK bindings";
        license = stdenv.lib.licenses.mit;
@@ -75567,7 +75739,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ ansi-terminal base text ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [ async base doctest hspec process ];
        homepage = "https://github.com/gianlucaguarini/fortytwo#readme";
        description = "Interactive terminal prompt";
@@ -76459,7 +76630,7 @@ self: {
      }) {};
 
   "freetype2" = callPackage
-    ({ mkDerivation, array, base }:
+    ({ mkDerivation, base }:
      mkDerivation {
        pname = "freetype2";
        version = "0.1.2";
@@ -76467,7 +76638,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
-       executableHaskellDepends = [ array base ];
        description = "Haskell binding for FreeType 2 library";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -77083,8 +77253,8 @@ self: {
      }) {};
 
   "full-text-search" = callPackage
-    ({ mkDerivation, alex, array, base, containers, happy, QuickCheck
-     , tasty, tasty-quickcheck, text, vector
+    ({ mkDerivation, array, base, containers, QuickCheck, tasty
+     , tasty-quickcheck, text, vector
      }:
      mkDerivation {
        pname = "full-text-search";
@@ -77093,7 +77263,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ array base containers text vector ];
-       executableToolDepends = [ alex happy ];
        testHaskellDepends = [
          array base containers QuickCheck tasty tasty-quickcheck text vector
        ];
@@ -79846,9 +80015,9 @@ self: {
   "gf" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, Cabal, cgi
      , containers, directory, exceptions, filepath, happy, haskeline
-     , HTF, httpd-shed, HUnit, json, lifted-base, mtl, network
-     , network-uri, old-locale, parallel, pretty, process, random
-     , terminfo, time, time-compat, unix, utf8-string
+     , HTF, httpd-shed, HUnit, json, mtl, network, network-uri
+     , old-locale, parallel, pretty, process, random, terminfo, time
+     , time-compat, unix, utf8-string
      }:
      mkDerivation {
        pname = "gf";
@@ -79864,7 +80033,7 @@ self: {
          utf8-string
        ];
        libraryToolDepends = [ alex happy ];
-       executableHaskellDepends = [ base containers lifted-base mtl ];
+       executableHaskellDepends = [ base ];
        testHaskellDepends = [
          base Cabal directory filepath HTF HUnit process
        ];
@@ -80118,9 +80287,29 @@ self: {
          array base binary bytestring containers text vector
        ];
        executableHaskellDepends = [ base containers ];
-       testHaskellDepends = [ base bytestring ];
+       testHaskellDepends = [ base ];
+       description = "Library and tool for parsing .eventlog files from GHC";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "ghc-events_0_7_1" = callPackage
+    ({ mkDerivation, array, base, binary, bytestring, containers, text
+     , vector
+     }:
+     mkDerivation {
+       pname = "ghc-events";
+       version = "0.7.1";
+       sha256 = "0cpmc107rhy28700qa2jixdp78jw7hsmni40v90z5is9b048mk3i";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base binary bytestring containers text vector
+       ];
+       executableHaskellDepends = [ base containers ];
+       testHaskellDepends = [ base ];
        description = "Library and tool for parsing .eventlog files from GHC";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ghc-events-analyze" = callPackage
@@ -80348,9 +80537,8 @@ self: {
      , extra, fclabels, filepath, ghc, ghc-boot, ghc-paths
      , ghc-syb-utils, haskell-src-exts, hlint, hspec, monad-control
      , monad-journal, mtl, old-time, optparse-applicative, pipes
-     , process, safe, semigroups, shelltest, split, syb
-     , template-haskell, temporary, text, time, transformers
-     , transformers-base
+     , process, safe, semigroups, split, syb, template-haskell
+     , temporary, text, time, transformers, transformers-base
      }:
      mkDerivation {
        pname = "ghc-mod";
@@ -80382,7 +80570,6 @@ self: {
          ghc ghc-boot hspec monad-journal mtl process split temporary
          transformers
        ];
-       testToolDepends = [ shelltest ];
        benchmarkHaskellDepends = [
          base criterion directory filepath temporary
        ];
@@ -80390,7 +80577,7 @@ self: {
        description = "Happy Haskell Hacking";
        license = stdenv.lib.licenses.agpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {shelltest = null;};
+     }) {};
 
   "ghc-mtl" = callPackage
     ({ mkDerivation, base, exceptions, extensible-exceptions, ghc, mtl
@@ -80545,7 +80732,6 @@ self: {
        libraryHaskellDepends = [
          attoparsec base containers scientific text time
        ];
-       executableHaskellDepends = [ base containers scientific text ];
        testHaskellDepends = [
          attoparsec base containers directory filepath process tasty
          tasty-hunit temporary text
@@ -80692,7 +80878,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ attoparsec base containers text time ];
-       executableHaskellDepends = [ attoparsec base containers text ];
        testHaskellDepends = [
          attoparsec base directory filepath process tasty tasty-hunit
          temporary text
@@ -80776,7 +80961,7 @@ self: {
 
   "ghc-typelits-presburger" = callPackage
     ({ mkDerivation, base, equational-reasoning, ghc
-     , ghc-tcplugins-extra, presburger, reflection, singletons
+     , ghc-tcplugins-extra, presburger, reflection
      }:
      mkDerivation {
        pname = "ghc-typelits-presburger";
@@ -80790,9 +80975,6 @@ self: {
          base equational-reasoning ghc ghc-tcplugins-extra presburger
          reflection
        ];
-       executableHaskellDepends = [
-         base equational-reasoning singletons
-       ];
        homepage = "https://github.com/konn/ghc-typelits-presburger#readme";
        description = "Presburger Arithmetic Solver for GHC Type-level natural numbers";
        license = stdenv.lib.licenses.bsd3;
@@ -81029,7 +81211,7 @@ self: {
 
   "ghcjs-dom-hello" = callPackage
     ({ mkDerivation, base, ghcjs-dom, jsaddle, jsaddle-warp
-     , jsaddle-webkit2gtk, jsaddle-wkwebview, mtl
+     , jsaddle-webkit2gtk, mtl
      }:
      mkDerivation {
        pname = "ghcjs-dom-hello";
@@ -81042,8 +81224,7 @@ self: {
          base ghcjs-dom jsaddle jsaddle-warp mtl
        ];
        executableHaskellDepends = [
-         base ghcjs-dom jsaddle-warp jsaddle-webkit2gtk jsaddle-wkwebview
-         mtl
+         base ghcjs-dom jsaddle-warp jsaddle-webkit2gtk mtl
        ];
        homepage = "https://github.com/ghcjs/ghcjs-dom-hello";
        description = "GHCJS DOM Hello World, an example package";
@@ -81064,16 +81245,11 @@ self: {
      }) {};
 
   "ghcjs-dom-jsffi" = callPackage
-    ({ mkDerivation, base, ghc-prim, ghcjs-base, ghcjs-prim, text
-     , transformers
-     }:
+    ({ mkDerivation }:
      mkDerivation {
        pname = "ghcjs-dom-jsffi";
        version = "0.9.2.0";
        sha256 = "1xj94izrypxnb91lgsq0lfzqqs11sxbs24nkw8sn2wkmmh5pd8vd";
-       libraryHaskellDepends = [
-         base ghc-prim ghcjs-base ghcjs-prim text transformers
-       ];
        description = "DOM library using JSFFI and GHCJS";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -81166,9 +81342,6 @@ self: {
          base containers ghc-prim ghcjs-base ghcjs-ffiqq ghcjs-prim split
          template-haskell
        ];
-       executableHaskellDepends = [
-         base containers ghcjs-base ghcjs-ffiqq
-       ];
        description = "Virtual-dom bindings for GHCJS";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -82295,7 +82468,6 @@ self: {
          microlens microlens-th mtl network-uri servant servant-client text
          transformers
        ];
-       executableHaskellDepends = [ base network-uri text ];
        testHaskellDepends = [
          aeson base basic-prelude bytestring containers directory hspec lens
          network-uri text
@@ -82463,6 +82635,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "git-config" = callPackage
+    ({ mkDerivation, base, megaparsec, smallcheck, smallcheck-series
+     , tasty, tasty-discover, tasty-hunit, tasty-smallcheck
+     , tasty-travis, text, unordered-containers
+     }:
+     mkDerivation {
+       pname = "git-config";
+       version = "0.1.1";
+       sha256 = "0vspjqscw02x3hr6n0d0d4kyjfh5lij4wy58fp4z301vmyv77vgl";
+       libraryHaskellDepends = [
+         base megaparsec text unordered-containers
+       ];
+       testHaskellDepends = [
+         base megaparsec smallcheck smallcheck-series tasty tasty-discover
+         tasty-hunit tasty-smallcheck tasty-travis text unordered-containers
+       ];
+       homepage = "https://github.com/dogonthehorizon/git-config#readme";
+       description = "A simple parser for Git configuration files";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "git-date" = callPackage
     ({ mkDerivation, base, bytestring, old-locale, QuickCheck
      , test-framework, test-framework-quickcheck2, time, utf8-string
@@ -82821,6 +83015,39 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "github_0_19" = callPackage
+    ({ mkDerivation, aeson, aeson-compat, base, base-compat
+     , base16-bytestring, binary, binary-orphans, byteable, bytestring
+     , containers, cryptohash, deepseq, deepseq-generics, exceptions
+     , file-embed, hashable, hspec, hspec-discover, http-client
+     , http-client-tls, http-link-header, http-types, iso8601-time, mtl
+     , network-uri, semigroups, text, time, tls, transformers
+     , transformers-compat, unordered-containers, vector
+     , vector-instances
+     }:
+     mkDerivation {
+       pname = "github";
+       version = "0.19";
+       sha256 = "1523p2rv4jwsbsqjc9g3qff4cy5dhdy5wzp382x5nr11rmbrpsph";
+       libraryHaskellDepends = [
+         aeson aeson-compat base base-compat base16-bytestring binary
+         binary-orphans byteable bytestring containers cryptohash deepseq
+         deepseq-generics exceptions hashable http-client http-client-tls
+         http-link-header http-types iso8601-time mtl network-uri semigroups
+         text time tls transformers transformers-compat unordered-containers
+         vector vector-instances
+       ];
+       testHaskellDepends = [
+         aeson-compat base base-compat bytestring file-embed hspec
+         unordered-containers vector
+       ];
+       testToolDepends = [ hspec-discover ];
+       homepage = "https://github.com/phadej/github";
+       description = "Access to the GitHub API, v3";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "github-backup" = callPackage
     ({ mkDerivation, base, bytestring, Cabal, containers, directory
      , exceptions, filepath, git, github, hslogger, IfElse, mtl, network
@@ -84361,6 +84588,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "gnuplot_0_5_5_1" = callPackage
+    ({ mkDerivation, array, base, containers, data-accessor
+     , data-accessor-transformers, deepseq, filepath, process
+     , semigroups, temporary, time, transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "gnuplot";
+       version = "0.5.5.1";
+       sha256 = "1i0rlmk6kqv1lj71s1av64qc14qmaaplp6z9mxd9hkwjpwzyqdma";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base containers data-accessor data-accessor-transformers
+         deepseq filepath process semigroups temporary time transformers
+         utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/Gnuplot";
+       description = "2D and 3D plots using gnuplot";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gnutls" = callPackage
     ({ mkDerivation, base, bytestring, gnutls, monads-tf, transformers
      }:
@@ -84588,6 +84838,48 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "goggles_0_3_2" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, base64-bytestring, binary
+     , bytestring, containers, cryptonite, exceptions, filepath, hspec
+     , http-client, http-client-tls, http-types, memory, mtl, pem
+     , QuickCheck, req, scientific, stm, text, time, transformers
+     , unix-time, x509, x509-store
+     }:
+     mkDerivation {
+       pname = "goggles";
+       version = "0.3.2";
+       sha256 = "0g798gvxyqr08digpb61cvfcwg626iwmz9dqyg32w5vba332akd6";
+       libraryHaskellDepends = [
+         aeson attoparsec base base64-bytestring binary bytestring
+         containers cryptonite exceptions filepath http-client
+         http-client-tls http-types memory mtl pem req scientific stm text
+         time transformers unix-time x509 x509-store
+       ];
+       testHaskellDepends = [ base hspec QuickCheck ];
+       homepage = "https://github.com/ocramz/goggles";
+       description = "Extensible interface to Web APIs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "goggles-gcs" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, cryptonite, exceptions
+     , goggles, memory, mtl, req, text, unix-time
+     }:
+     mkDerivation {
+       pname = "goggles-gcs";
+       version = "0.1.0.0";
+       sha256 = "0g23z852g7f1h8s49q4nj0y2lnm4fa0ycs4d633937i3f18bsl74";
+       libraryHaskellDepends = [
+         aeson base bytestring cryptonite exceptions goggles memory mtl req
+         text unix-time
+       ];
+       homepage = "https://github.com/ocramz/goggles-gcs";
+       description = "`goggles` interface to Google Cloud Storage";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "gogol" = callPackage
     ({ mkDerivation, aeson, base, bytestring, case-insensitive, conduit
      , conduit-extra, cryptonite, directory, exceptions, filepath
@@ -86316,10 +86608,9 @@ self: {
      }) {};
 
   "gore-and-ash-lambdacube" = callPackage
-    ({ mkDerivation, base, containers, deepseq, exceptions, GLFW-b
-     , gore-and-ash, gore-and-ash-glfw, hashable, JuicyPixels
-     , lambdacube-compiler, lambdacube-gl, lambdacube-ir, linear, mtl
-     , text, transformers, unordered-containers, vector
+    ({ mkDerivation, base, containers, deepseq, exceptions
+     , gore-and-ash, hashable, lambdacube-compiler, lambdacube-gl, mtl
+     , text, unordered-containers
      }:
      mkDerivation {
        pname = "gore-and-ash-lambdacube";
@@ -86331,11 +86622,6 @@ self: {
          base containers deepseq exceptions gore-and-ash hashable
          lambdacube-compiler lambdacube-gl mtl text unordered-containers
        ];
-       executableHaskellDepends = [
-         base containers deepseq exceptions GLFW-b gore-and-ash
-         gore-and-ash-glfw JuicyPixels lambdacube-compiler lambdacube-gl
-         lambdacube-ir linear mtl text transformers vector
-       ];
        homepage = "https://github.com/TeaspotStudio/gore-and-ash-lambdacube#readme";
        description = "Core module for Gore&Ash engine that do something";
        license = stdenv.lib.licenses.bsd3;
@@ -87304,9 +87590,6 @@ self: {
          base bytestring colour containers directory dlist fgl filepath
          polyparse process temporary text transformers wl-pprint-text
        ];
-       executableHaskellDepends = [
-         base bytestring directory filepath text
-       ];
        testHaskellDepends = [
          base containers fgl fgl-arbitrary filepath QuickCheck text
        ];
@@ -88481,8 +88764,7 @@ self: {
 
   "gtk3" = callPackage
     ({ mkDerivation, array, base, bytestring, Cabal, cairo, containers
-     , gio, glib, gtk2hs-buildtools, gtk3, mtl, pango, text, time
-     , transformers
+     , gio, glib, gtk2hs-buildtools, gtk3, mtl, pango, text
      }:
      mkDerivation {
        pname = "gtk3";
@@ -88496,9 +88778,6 @@ self: {
          array base bytestring cairo containers gio glib mtl pango text
        ];
        libraryPkgconfigDepends = [ gtk3 ];
-       executableHaskellDepends = [
-         array base cairo text time transformers
-       ];
        homepage = "http://projects.haskell.org/gtk2hs/";
        description = "Binding to the Gtk+ 3 graphical user interface library";
        license = stdenv.lib.licenses.lgpl21;
@@ -90059,8 +90338,8 @@ self: {
      }) {};
 
   "hackage-server" = callPackage
-    ({ mkDerivation, acid-state, aeson, alex, array, async, attoparsec
-     , base, base16-bytestring, base64-bytestring, binary, blaze-builder
+    ({ mkDerivation, acid-state, aeson, alex, array, async, base
+     , base16-bytestring, base64-bytestring, binary, blaze-builder
      , bytestring, Cabal, cereal, containers, crypto-api, csv, deepseq
      , directory, filepath, happstack-server, happy, HaXml, hscolour
      , hslogger, HStringTemplate, HTTP, lifted-base, mime-mail, mtl
@@ -90077,7 +90356,7 @@ self: {
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         acid-state aeson array async attoparsec base base16-bytestring
+         acid-state aeson array async base base16-bytestring
          base64-bytestring binary blaze-builder bytestring Cabal cereal
          containers crypto-api csv deepseq directory filepath
          happstack-server HaXml hscolour hslogger HStringTemplate HTTP
@@ -90615,25 +90894,27 @@ self: {
      }) {};
 
   "hadolint" = callPackage
-    ({ mkDerivation, base, bytestring, directory, filepath, gitrev
-     , hspec, HUnit, language-docker, optparse-applicative, parsec
-     , ShellCheck, split, yaml
+    ({ mkDerivation, aeson, base, bytestring, directory, dlist
+     , filepath, gitrev, hspec, HUnit, language-docker
+     , optparse-applicative, parsec, ShellCheck, split, text, yaml
      }:
      mkDerivation {
        pname = "hadolint";
-       version = "1.4.0";
-       sha256 = "006mg9i15ldksydkr6c9wd7p7a3j0ia1bcxi96y9l66wp31hg36w";
+       version = "1.5.0";
+       sha256 = "05xhiwrq6v8v0hy08mhxbslj3ncvyi1jm8m5lv8xqngwcn3yax44";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring language-docker parsec ShellCheck split
+         aeson base bytestring dlist language-docker parsec ShellCheck split
+         text
        ];
        executableHaskellDepends = [
          base directory filepath gitrev language-docker optparse-applicative
          parsec yaml
        ];
        testHaskellDepends = [
-         base bytestring hspec HUnit language-docker parsec ShellCheck split
+         aeson base bytestring hspec HUnit language-docker parsec ShellCheck
+         split
        ];
        homepage = "https://github.com/hadolint/hadolint";
        description = "Dockerfile Linter JavaScript API";
@@ -91139,7 +91420,7 @@ self: {
          time-locale-compat unordered-containers vector wai wai-app-static
          warp yaml
        ];
-       executableHaskellDepends = [ base directory filepath pandoc ];
+       executableHaskellDepends = [ base directory filepath ];
        testHaskellDepends = [
          base binary blaze-html blaze-markup bytestring containers
          cryptohash data-default deepseq directory filepath fsnotify
@@ -91323,6 +91604,7 @@ self: {
        homepage = "http://github.com/freylax/hakyll-dir-list";
        description = "Allow Hakyll to create hierarchical menues from directories";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hakyll-elm" = callPackage
@@ -92104,7 +92386,7 @@ self: {
      }) {inherit (pkgs) libappindicator-gtk2;};
 
   "happindicator3" = callPackage
-    ({ mkDerivation, base, glib, gtk3, libappindicator-gtk3, text }:
+    ({ mkDerivation, base, glib, gtk3, libappindicator-gtk3 }:
      mkDerivation {
        pname = "happindicator3";
        version = "0.2.1";
@@ -92113,7 +92395,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base glib gtk3 ];
        libraryPkgconfigDepends = [ libappindicator-gtk3 ];
-       executableHaskellDepends = [ base gtk3 text ];
        homepage = "https://github.com/mlacorte/happindicator3";
        description = "Binding to the appindicator library";
        license = stdenv.lib.licenses.lgpl21;
@@ -92278,7 +92559,7 @@ self: {
   "happstack-contrib" = callPackage
     ({ mkDerivation, base, bytestring, directory, happstack-data
      , happstack-ixset, happstack-server, happstack-state
-     , happstack-util, HTTP, HUnit, mtl, network, old-time, syb, unix
+     , happstack-util, HTTP, mtl, network, old-time, syb, unix
      }:
      mkDerivation {
        pname = "happstack-contrib";
@@ -92291,7 +92572,6 @@ self: {
          happstack-server happstack-state happstack-util HTTP mtl network
          old-time syb unix
        ];
-       executableHaskellDepends = [ HUnit ];
        homepage = "http://happstack.com";
        description = "Web related tools and services";
        license = stdenv.lib.licenses.bsd3;
@@ -92345,8 +92625,8 @@ self: {
      , filepath, happstack, happstack-data, happstack-hsp
      , happstack-ixset, happstack-server, happstack-state
      , happstack-util, harp, hsp, hsx, html, HTTP, json, mtl, network
-     , old-time, random, RJson, syb, text, time, trhsx, utf8-string
-     , web-routes, web-routes-mtl
+     , old-time, random, RJson, syb, text, time, utf8-string, web-routes
+     , web-routes-mtl
      }:
      mkDerivation {
        pname = "happstack-facebook";
@@ -92361,7 +92641,6 @@ self: {
          network old-time random RJson syb text time utf8-string web-routes
          web-routes-mtl
        ];
-       executableToolDepends = [ trhsx ];
        homepage = "http://src.seereason.com/happstack-facebook/";
        description = "A package for building Facebook applications using Happstack";
        license = stdenv.lib.licenses.bsd3;
@@ -94689,8 +94968,6 @@ self: {
        ];
        librarySystemDepends = [ open-pal open-rte openmpi ];
        libraryToolDepends = [ c2hs ];
-       executableSystemDepends = [ open-pal open-rte openmpi ];
-       executableToolDepends = [ c2hs ];
        homepage = "http://github.com/bjpop/haskell-mpi";
        description = "Distributed parallel programming in Haskell using MPI";
        license = stdenv.lib.licenses.bsd3;
@@ -95108,7 +95385,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base haskell-src-exts ];
-       executableHaskellDepends = [ base haskell-src-exts ];
        homepage = "https://github.com/achirkin/haskell-src-exts-sc#readme";
        description = "Pretty print haskell code with comments";
        license = stdenv.lib.licenses.bsd3;
@@ -96730,7 +97006,6 @@ self: {
          base data-accessor event-list haskore non-negative numeric-prelude
          random synthesizer-core synthesizer-filter utility-ht
        ];
-       executableHaskellDepends = [ base synthesizer-core utility-ht ];
        homepage = "http://www.haskell.org/haskellwiki/Synthesizer";
        description = "Music rendering coded in Haskell";
        license = "GPL";
@@ -96909,8 +97184,8 @@ self: {
        pname = "hasmin";
        version = "1.0.1";
        sha256 = "1h5ygl9qmzmbhqfb58hhm2zw850dqfkp4b8cp3bhsnangg4lgbjk";
-       revision = "2";
-       editedCabalFile = "0hav8khv14k41rf4lmh79w6ym4basrmmsjwfc5bww2qya7889d5k";
+       revision = "3";
+       editedCabalFile = "0v410xlx9riyhzxbqi2fx8qnw9i3k9cc6q24f0cz2ympl86f4019";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -98852,14 +99127,14 @@ self: {
      }) {};
 
   "heapsort" = callPackage
-    ({ mkDerivation, array, base, QuickCheck }:
+    ({ mkDerivation, array, base }:
      mkDerivation {
        pname = "heapsort";
        version = "0.1.0";
        sha256 = "0fzws9fjhqsygsbwj7nvj786j16264vqvqzc97dr73y72538k9qa";
        isLibrary = true;
        isExecutable = true;
-       executableHaskellDepends = [ array base QuickCheck ];
+       executableHaskellDepends = [ array base ];
        homepage = "http://wiki.cs.pdx.edu/bartforge/heapsort";
        description = "Heapsort of MArrays as a demo of imperative programming";
        license = stdenv.lib.licenses.bsd3;
@@ -100512,8 +100787,6 @@ self: {
        libraryHaskellDepends = [ base ];
        librarySystemDepends = [ doublefann ];
        libraryPkgconfigDepends = [ fann ];
-       executableHaskellDepends = [ base ];
-       executableSystemDepends = [ doublefann ];
        description = "Haskell binding to the FANN library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -100568,7 +100841,7 @@ self: {
      }) {};
 
   "hfmt" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, bytestring, Cabal
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, Cabal, conduit
      , conduit-combinators, Diff, directory, exceptions, filepath
      , haskell-src-exts, hindent, hlint, HUnit, optparse-applicative
      , path, path-io, pretty, stylish-haskell, test-framework
@@ -100576,17 +100849,17 @@ self: {
      }:
      mkDerivation {
        pname = "hfmt";
-       version = "0.2.0";
-       sha256 = "1d62kby9mzld7lnfvrvhkri8lf2wgijb972wzrarbcbnkahhjnps";
+       version = "0.2.1";
+       sha256 = "06g3l0qbj1bdrxis9ryl3cgmhs129l1lfiah5kpn0xbv1h3p3id5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring Cabal conduit-combinators Diff directory exceptions
-         filepath haskell-src-exts hindent hlint HUnit path path-io pretty
-         stylish-haskell text transformers yaml
+         base bytestring Cabal conduit conduit-combinators Diff directory
+         exceptions filepath haskell-src-exts hindent hlint HUnit path
+         path-io pretty stylish-haskell text transformers yaml
        ];
        executableHaskellDepends = [
-         ansi-wl-pprint base conduit-combinators directory
+         ansi-wl-pprint base conduit conduit-combinators directory
          optparse-applicative
        ];
        testHaskellDepends = [
@@ -100670,13 +100943,13 @@ self: {
 
   "hfsevents" = callPackage
     ({ mkDerivation, base, bytestring, cereal, Cocoa, CoreServices, mtl
-     , text, unix
+     , text
      }:
      mkDerivation {
        pname = "hfsevents";
        version = "0.1.6";
        sha256 = "019zbnvfd866ch49gax0c1c93zv92142saim1hrgypz5lprz7hvl";
-       libraryHaskellDepends = [ base bytestring cereal mtl text unix ];
+       libraryHaskellDepends = [ base bytestring cereal mtl text ];
        librarySystemDepends = [ Cocoa ];
        libraryToolDepends = [ CoreServices ];
        homepage = "http://github.com/luite/hfsevents";
@@ -101047,7 +101320,6 @@ self: {
        libraryHaskellDepends = [ base transformers ];
        librarySystemDepends = [ grib_api ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [ base directory hspec ];
        homepage = "https://github.com/mjakob/hgrib";
        description = "Unofficial bindings for GRIB API";
@@ -101519,16 +101791,13 @@ self: {
        libraryHaskellDepends = [
          base blaze-html bytestring filepath mtl pcre-light text
        ];
-       executableHaskellDepends = [
-         base blaze-html bytestring filepath mtl pcre-light text
-       ];
        description = "source code highlighting";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "highlighter2" = callPackage
-    ({ mkDerivation, base, blaze-html, blaze-markup, bytestring
-     , containers, filepath, mtl, pcre-light, text
+    ({ mkDerivation, base, blaze-html, bytestring, containers, filepath
+     , mtl, pcre-light, text
      }:
      mkDerivation {
        pname = "highlighter2";
@@ -101539,10 +101808,6 @@ self: {
        libraryHaskellDepends = [
          base blaze-html bytestring containers filepath mtl pcre-light text
        ];
-       executableHaskellDepends = [
-         base blaze-html blaze-markup bytestring containers filepath mtl
-         pcre-light text
-       ];
        description = "source code highlighting";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -101563,7 +101828,6 @@ self: {
          base blaze-html bytestring containers mtl parsec pcre-light
          utf8-string
        ];
-       executableHaskellDepends = [ base blaze-html containers filepath ];
        testHaskellDepends = [
          base blaze-html containers Diff directory filepath process
        ];
@@ -102494,8 +102758,8 @@ self: {
 
   "hlatex" = callPackage
     ({ mkDerivation, base, base-unicode-symbols, containers, derive
-     , directory, filepath, frquotes, mtl, process, template-haskell
-     , transformers, uniplate, utf8-string
+     , directory, filepath, mtl, process, template-haskell, transformers
+     , uniplate, utf8-string
      }:
      mkDerivation {
        pname = "hlatex";
@@ -102507,9 +102771,6 @@ self: {
          base base-unicode-symbols containers derive directory filepath mtl
          process template-haskell transformers uniplate utf8-string
        ];
-       executableHaskellDepends = [
-         base base-unicode-symbols containers frquotes mtl transformers
-       ];
        description = "A library to build valid LaTeX files";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -103071,7 +103332,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base stm transformers unix X11 ];
-       executableHaskellDepends = [ base stm transformers unix X11 ];
        homepage = "https://github.com/hpdeifel/hlwm-haskell";
        description = "Bindings to the herbstluftwm window manager";
        license = stdenv.lib.licenses.bsd2;
@@ -103169,6 +103429,7 @@ self: {
        homepage = "https://github.com/mstksg/hmatrix-backprop#readme";
        description = "hmatrix operations lifted for backprop";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hmatrix-banded" = callPackage
@@ -103884,9 +104145,9 @@ self: {
      }) {};
 
   "hoauth2" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, exceptions
-     , http-conduit, http-types, microlens, text, unordered-containers
-     , uri-bytestring, uri-bytestring-aeson, wai, warp
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-conduit
+     , http-types, microlens, text, unordered-containers, uri-bytestring
+     , uri-bytestring-aeson
      }:
      mkDerivation {
        pname = "hoauth2";
@@ -103898,19 +104159,15 @@ self: {
          aeson base bytestring exceptions http-conduit http-types microlens
          text unordered-containers uri-bytestring uri-bytestring-aeson
        ];
-       executableHaskellDepends = [
-         aeson base bytestring containers http-conduit http-types text
-         uri-bytestring wai warp
-       ];
        homepage = "https://github.com/freizl/hoauth2";
        description = "Haskell OAuth2 authentication client";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "hoauth2_1_6_3" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, containers, exceptions
-     , http-conduit, http-types, microlens, text, unordered-containers
-     , uri-bytestring, uri-bytestring-aeson, wai, warp
+    ({ mkDerivation, aeson, base, bytestring, exceptions, http-conduit
+     , http-types, microlens, text, unordered-containers, uri-bytestring
+     , uri-bytestring-aeson
      }:
      mkDerivation {
        pname = "hoauth2";
@@ -103922,10 +104179,6 @@ self: {
          aeson base bytestring exceptions http-conduit http-types microlens
          text unordered-containers uri-bytestring uri-bytestring-aeson
        ];
-       executableHaskellDepends = [
-         aeson base bytestring containers http-conduit http-types text
-         uri-bytestring wai warp
-       ];
        homepage = "https://github.com/freizl/hoauth2";
        description = "Haskell OAuth2 authentication client";
        license = stdenv.lib.licenses.bsd3;
@@ -106965,6 +107218,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hs-rs-notify" = callPackage
+    ({ mkDerivation, base, filepath, notifier, process, protolude, text
+     , unix
+     }:
+     mkDerivation {
+       pname = "hs-rs-notify";
+       version = "0.1.0.3";
+       sha256 = "0nrhks103kcj8m0f20gp3bgg21pvi4v1vaif275pra4bv0bzl3nh";
+       libraryHaskellDepends = [
+         base filepath process protolude text unix
+       ];
+       librarySystemDepends = [ notifier ];
+       testHaskellDepends = [ base protolude ];
+       homepage = "https://github.com/NoRedInk/hs-rs-notify#readme";
+       description = "Experimental! Wraps this awesome rust library so you can use it in haskell. https://docs.rs/crate/notify";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {notifier = null;};
+
   "hs-scrape" = callPackage
     ({ mkDerivation, base, bytestring, containers, data-default
      , exceptions, hspec, html-conduit, lens, retry, safe, tasty
@@ -106988,8 +107260,7 @@ self: {
      }) {};
 
   "hs-server-starter" = callPackage
-    ({ mkDerivation, base, directory, http-types, HUnit, network
-     , temporary, unix, wai, warp
+    ({ mkDerivation, base, directory, HUnit, network, temporary, unix
      }:
      mkDerivation {
        pname = "hs-server-starter";
@@ -106998,7 +107269,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory network ];
-       executableHaskellDepends = [ base http-types network wai warp ];
        testHaskellDepends = [ base HUnit network temporary unix ];
        homepage = "https://github.com/hiratara/hs-server-starter";
        description = "Write a server supporting Server::Starter's protocol in Haskell";
@@ -107524,10 +107794,9 @@ self: {
 
   "hsc3-graphs" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, cairo, containers
-     , data-default, directory, filepath, hashable, hls, hmt, hosc, hps
-     , hsc3, hsc3-cairo, hsc3-lang, hsc3-sf, hsc3-unsafe, hsc3-utils
-     , hsharc, MonadRandom, primes, process, random, random-shuffle
-     , sc3-rdu, she, split
+     , data-default, directory, filepath, hls, hmt, hosc, hps, hsc3
+     , hsc3-cairo, hsc3-lang, hsc3-sf, hsc3-unsafe, hsc3-utils, hsharc
+     , MonadRandom, primes, random, random-shuffle, sc3-rdu, she, split
      }:
      mkDerivation {
        pname = "hsc3-graphs";
@@ -107542,12 +107811,7 @@ self: {
          hsc3-sf hsc3-unsafe hsc3-utils hsharc MonadRandom primes random
          random-shuffle sc3-rdu she split
        ];
-       executableHaskellDepends = [
-         array base binary bytestring cairo containers directory filepath
-         hashable hls hmt hosc hps hsc3 hsc3-cairo hsc3-lang hsc3-sf
-         hsc3-unsafe hsharc MonadRandom primes process random random-shuffle
-         sc3-rdu split
-       ];
+       executableHaskellDepends = [ base ];
        homepage = "http://rd.slavepianos.org/t/hsc3-graphs";
        description = "Haskell SuperCollider Graphs";
        license = "GPL";
@@ -107631,7 +107895,6 @@ self: {
          base bytestring containers data-default directory filepath hosc
          hsc3 process time time-compat transformers
        ];
-       executableHaskellDepends = [ base data-default hosc hsc3 ];
        homepage = "https://github.com/kaoskorobase/hsc3-process";
        description = "Create and control scsynth processes";
        license = "GPL";
@@ -107675,7 +107938,7 @@ self: {
      , failure, hashtables, hosc, hsc3, hsc3-process, lifted-base
      , ListZipper, monad-control, QuickCheck, random, resourcet
      , test-framework, test-framework-quickcheck2, transformers
-     , transformers-base, unix
+     , transformers-base
      }:
      mkDerivation {
        pname = "hsc3-server";
@@ -107688,9 +107951,6 @@ self: {
          hosc hsc3 hsc3-process lifted-base ListZipper monad-control
          resourcet transformers transformers-base
        ];
-       executableHaskellDepends = [
-         base hosc hsc3 random transformers unix
-       ];
        testHaskellDepends = [
          base failure QuickCheck random test-framework
          test-framework-quickcheck2 transformers
@@ -108484,7 +108744,7 @@ self: {
      }) {};
 
   "hslogger" = callPackage
-    ({ mkDerivation, base, containers, directory, HUnit, mtl, network
+    ({ mkDerivation, base, containers, directory, mtl, network
      , old-locale, process, time, unix
      }:
      mkDerivation {
@@ -108494,7 +108754,6 @@ self: {
        libraryHaskellDepends = [
          base containers directory mtl network old-locale process time unix
        ];
-       testHaskellDepends = [ base HUnit ];
        homepage = "http://software.complete.org/hslogger";
        description = "Versatile logging framework";
        license = stdenv.lib.licenses.bsd3;
@@ -108704,6 +108963,7 @@ self: {
        homepage = "https://github.com/mwotton/scriptable/#hsmodetweaks";
        description = "Tool for generating .dir-locals.el for intero";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hsmtpclient" = callPackage
@@ -111756,18 +112016,18 @@ self: {
 
   "http-monad" = callPackage
     ({ mkDerivation, base, bytestring, containers, explicit-exception
-     , HTTP, lazyio, network, network-uri, parsec, transformers
-     , utility-ht
+     , HTTP, lazyio, network, network-uri, parsec, semigroups
+     , transformers, utility-ht
      }:
      mkDerivation {
        pname = "http-monad";
-       version = "0.1.1.1";
-       sha256 = "0mb34zkixyrp0bmw1q8s8g6rprq6k7wq946n8as6dkwm9aya0gmd";
+       version = "0.1.1.2";
+       sha256 = "0s2ajy2iwi7k5zrs6asp5ncyy06jnphp4ncc130cg2kpnf32yyfz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          base bytestring containers explicit-exception HTTP lazyio network
-         network-uri parsec transformers utility-ht
+         network-uri parsec semigroups transformers utility-ht
        ];
        description = "Monad abstraction for HTTP allowing lazy transfer and non-I/O simulation";
        license = stdenv.lib.licenses.bsd3;
@@ -112149,11 +112409,6 @@ self: {
          array base bytestring bytestring-builder case-insensitive
          containers psqueues stm
        ];
-       executableHaskellDepends = [
-         aeson aeson-pretty array base bytestring bytestring-builder
-         case-insensitive containers directory filepath hex text
-         unordered-containers vector word8
-       ];
        testHaskellDepends = [
          aeson aeson-pretty array base bytestring bytestring-builder
          case-insensitive containers directory doctest filepath Glob hex
@@ -113194,11 +113449,6 @@ self: {
          http-client http-types mtl pure-zlib semigroups servant
          servant-client text transformers unordered-containers
        ];
-       executableHaskellDepends = [
-         aeson avro base binary bytestring cache containers errors hashable
-         http-client mtl pure-zlib semigroups servant servant-client text
-         transformers unordered-containers
-       ];
        testHaskellDepends = [
          aeson avro base binary bytestring cache containers errors hashable
          hspec http-client mtl pure-zlib QuickCheck semigroups servant
@@ -113226,15 +113476,13 @@ self: {
        ];
        librarySystemDepends = [ rdkafka ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [
-         base bifunctors bytestring containers temporary transformers unix
-       ];
        testHaskellDepends = [
          base bifunctors bytestring containers either hspec monad-loops
        ];
        homepage = "https://github.com/haskell-works/hw-kafka-client";
        description = "Kafka bindings for Haskell";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) rdkafka;};
 
   "hw-kafka-conduit" = callPackage
@@ -113252,9 +113500,6 @@ self: {
          base bifunctors bytestring conduit conduit-extra containers
          exceptions hw-kafka-client mtl resourcet transformers
        ];
-       executableHaskellDepends = [
-         base bifunctors bytestring conduit containers resourcet
-       ];
        testHaskellDepends = [
          base bifunctors bytestring conduit conduit-extra containers extra
          hspec hw-kafka-client mtl QuickCheck resourcet transformers
@@ -113262,6 +113507,7 @@ self: {
        homepage = "https://github.com/haskell-works/hw-kafka-conduit";
        description = "Conduit bindings for hw-kafka-client";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hw-mquery" = callPackage
@@ -115838,7 +116084,6 @@ self: {
          base bytestring filepath resourcet text transformers vector
        ];
        libraryPkgconfigDepends = [ imagemagick ];
-       executablePkgconfigDepends = [ imagemagick ];
        testHaskellDepends = [
          base bytestring directory filepath lifted-base QuickCheck resourcet
          tasty tasty-hunit text transformers vector
@@ -116936,9 +117181,9 @@ self: {
   "influxdb" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, clock
      , containers, foldl, http-client, http-types, HUnit, lens, mtl
-     , mwc-random, network, optional-args, scientific, tasty
-     , tasty-hunit, tasty-quickcheck, tasty-th, text, time
-     , unordered-containers, vector
+     , network, optional-args, scientific, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-th, text, time, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "influxdb";
@@ -116951,10 +117196,6 @@ self: {
          http-types lens network optional-args scientific text time
          unordered-containers vector
        ];
-       executableHaskellDepends = [
-         aeson base bytestring containers foldl http-client lens mwc-random
-         network optional-args text time vector
-       ];
        testHaskellDepends = [
          base http-client HUnit mtl tasty tasty-hunit tasty-quickcheck
          tasty-th text vector
@@ -117075,10 +117316,9 @@ self: {
 
   "inline-c_0_5_6_1" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring
-     , containers, cryptohash, directory, filepath, gsl, gslcblas
-     , hashable, hspec, mtl, parsec, parsers, QuickCheck, raw-strings-qq
-     , regex-posix, template-haskell, transformers, unordered-containers
-     , vector
+     , containers, cryptohash, directory, filepath, hashable, hspec, mtl
+     , parsec, parsers, QuickCheck, raw-strings-qq, regex-posix
+     , template-haskell, transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "inline-c";
@@ -117091,7 +117331,6 @@ self: {
          directory filepath hashable mtl parsec parsers QuickCheck
          template-haskell transformers unordered-containers vector
        ];
-       executableSystemDepends = [ gsl gslcblas ];
        testHaskellDepends = [
          ansi-wl-pprint base containers hashable hspec parsers QuickCheck
          raw-strings-qq regex-posix template-haskell transformers
@@ -117100,13 +117339,13 @@ self: {
        description = "Write Haskell source files including C code inline. No FFI required.";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {inherit (pkgs) gsl; gslcblas = null;};
+     }) {};
 
   "inline-c" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers, gsl
-     , gslcblas, hashable, hspec, mtl, parsec, parsers, QuickCheck
-     , raw-strings-qq, regex-posix, template-haskell, transformers
-     , unordered-containers, vector
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers
+     , hashable, hspec, mtl, parsec, parsers, QuickCheck, raw-strings-qq
+     , regex-posix, template-haskell, transformers, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "inline-c";
@@ -117118,7 +117357,6 @@ self: {
          ansi-wl-pprint base bytestring containers hashable mtl parsec
          parsers template-haskell transformers unordered-containers vector
        ];
-       executableSystemDepends = [ gsl gslcblas ];
        testHaskellDepends = [
          ansi-wl-pprint base containers hashable hspec parsers QuickCheck
          raw-strings-qq regex-posix template-haskell transformers
@@ -117126,7 +117364,7 @@ self: {
        ];
        description = "Write Haskell source files including C code inline. No FFI required.";
        license = stdenv.lib.licenses.mit;
-     }) {inherit (pkgs) gsl; gslcblas = null;};
+     }) {};
 
   "inline-c-cpp_0_1_0_0" = callPackage
     ({ mkDerivation, base, inline-c, template-haskell }:
@@ -117242,7 +117480,7 @@ self: {
          lucid-extras plotlyhs text time
        ];
        executableHaskellDepends = [ base text ];
-       testHaskellDepends = [ base text time ];
+       testHaskellDepends = [ base text ];
        homepage = "https://github.com/diffusionkinetics/open/inliterate";
        description = "Interactive literate programming";
        license = stdenv.lib.licenses.mit;
@@ -117752,19 +117990,19 @@ self: {
   "intero" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , filepath, ghc, ghc-boot-th, ghc-paths, ghci, haskeline, hspec
-     , network, process, random, regex-compat, syb, temporary, time
+     , mtl, network, process, random, regex-compat, syb, temporary, time
      , transformers, unix
      }:
      mkDerivation {
        pname = "intero";
-       version = "0.1.26";
-       sha256 = "1f00ma72hmhb3cd9pfhkcks3878ni690bcqw53lrbp6f6b4r5p5v";
+       version = "0.1.28";
+       sha256 = "0c9hlbqjisb8y96s2rhgklc93g0jmawq3v80ksdvg9asdyfsmafs";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
          array base bytestring containers directory filepath ghc ghc-boot-th
-         ghc-paths ghci haskeline network process random syb time
+         ghc-paths ghci haskeline mtl network process random syb time
          transformers unix
        ];
        testHaskellDepends = [
@@ -117774,6 +118012,7 @@ self: {
        homepage = "https://github.com/commercialhaskell/intero";
        description = "Complete interactive development program for Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "interpol" = callPackage
@@ -118074,21 +118313,12 @@ self: {
      }) {};
 
   "intset" = callPackage
-    ({ mkDerivation, base, bits-extras, bytestring, containers
-     , criterion, deepseq, QuickCheck, test-framework
-     , test-framework-quickcheck2
-     }:
+    ({ mkDerivation, base, bits-extras, bytestring, deepseq }:
      mkDerivation {
        pname = "intset";
        version = "0.1.1.0";
        sha256 = "044nw8z2ga46mal9pr64vsc714n4dibx0k2lwgnrkk49729c7lk0";
        libraryHaskellDepends = [ base bits-extras bytestring deepseq ];
-       testHaskellDepends = [
-         base QuickCheck test-framework test-framework-quickcheck2
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring containers criterion deepseq
-       ];
        homepage = "https://github.com/pxqr/intset";
        description = "Pure, mergeable, succinct Int sets";
        license = stdenv.lib.licenses.bsd3;
@@ -118637,6 +118867,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "iproute_1_7_2" = callPackage
+    ({ mkDerivation, appar, base, byteorder, containers, doctest, hspec
+     , network, QuickCheck, safe
+     }:
+     mkDerivation {
+       pname = "iproute";
+       version = "1.7.2";
+       sha256 = "15w56dia70hbqdmd16bbl68sjr0y3195hhykr4vb21krlr821dlp";
+       libraryHaskellDepends = [
+         appar base byteorder containers network
+       ];
+       testHaskellDepends = [
+         appar base byteorder containers doctest hspec network QuickCheck
+         safe
+       ];
+       homepage = "http://www.mew.org/~kazu/proj/iproute/";
+       description = "IP Routing Table";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "iptables-helpers" = callPackage
     ({ mkDerivation, base, containers, mtl, parsec, QuickCheck, safe
      , syb, utf8-string
@@ -118684,7 +118935,7 @@ self: {
 
   "ipython-kernel" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cereal, containers
-     , directory, filepath, mtl, parsec, process, SHA, temporary, text
+     , directory, filepath, mtl, process, SHA, temporary, text
      , transformers, unordered-containers, uuid, zeromq4-haskell
      }:
      mkDerivation {
@@ -118699,9 +118950,6 @@ self: {
          process SHA temporary text transformers unordered-containers uuid
          zeromq4-haskell
        ];
-       executableHaskellDepends = [
-         base filepath mtl parsec text transformers
-       ];
        homepage = "http://github.com/gibiansky/IHaskell";
        description = "A library for creating kernels for IPython frontends";
        license = stdenv.lib.licenses.mit;
@@ -119022,8 +119270,8 @@ self: {
      }:
      mkDerivation {
        pname = "iri";
-       version = "0.3.3";
-       sha256 = "10apl3d1rxc36i50zvfigwqfdk79rg15ir0ga7x9bxa8kjy6szp1";
+       version = "0.3.4";
+       sha256 = "071vg01q5swwscvfsqqyk6ysqbl1yqpwnwklhj0h985sxv9zdkm6";
        libraryHaskellDepends = [
          attoparsec base base-prelude bug bytestring contravariant hashable
          ip profunctors ptr punycode semigroups template-haskell text
@@ -119494,7 +119742,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring containers ListLike MonadCatchIO-mtl mtl unix
        ];
-       executableHaskellDepends = [ base ];
        homepage = "http://inmachina.net/~jwlato/haskell/iteratee";
        description = "Iteratee-based I/O";
        license = stdenv.lib.licenses.bsd3;
@@ -119980,6 +120227,28 @@ self: {
        license = "GPL";
      }) {inherit (pkgs) libjack2;};
 
+  "jack_0_7_1_3" = callPackage
+    ({ mkDerivation, array, base, bytestring, enumset, event-list
+     , explicit-exception, libjack2, midi, non-negative, semigroups
+     , transformers
+     }:
+     mkDerivation {
+       pname = "jack";
+       version = "0.7.1.3";
+       sha256 = "1n0znnk3q8vic47k1vlv6mdqghrklagcwalvz1arsdfvpy74ig4c";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base bytestring enumset event-list explicit-exception midi
+         non-negative semigroups transformers
+       ];
+       libraryPkgconfigDepends = [ libjack2 ];
+       homepage = "http://www.haskell.org/haskellwiki/JACK";
+       description = "Bindings for the JACK Audio Connection Kit";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) libjack2;};
+
   "jack-bindings" = callPackage
     ({ mkDerivation, base, c2hs, libjack2, mtl }:
      mkDerivation {
@@ -120986,9 +121255,8 @@ self: {
      }) {};
 
   "jsc" = callPackage
-    ({ mkDerivation, base, glib, gtk3, hslogger, jmacro, lens
-     , template-haskell, text, transformers, webkitgtk3
-     , webkitgtk3-javascriptcore
+    ({ mkDerivation, base, jmacro, lens, template-haskell, text
+     , transformers, webkitgtk3, webkitgtk3-javascriptcore
      }:
      mkDerivation {
        pname = "jsc";
@@ -120998,10 +121266,6 @@ self: {
          base jmacro lens template-haskell text transformers webkitgtk3
          webkitgtk3-javascriptcore
        ];
-       testHaskellDepends = [
-         base glib gtk3 hslogger jmacro lens template-haskell text
-         transformers webkitgtk3 webkitgtk3-javascriptcore
-       ];
        description = "High level interface for webkit-javascriptcore";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -121599,7 +121863,7 @@ self: {
      }) {};
 
   "json-stream" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, directory, doctest, hspec
+    ({ mkDerivation, aeson, base, bytestring, directory, hspec
      , QuickCheck, quickcheck-unicode, scientific, text
      , unordered-containers, vector
      }:
@@ -121611,8 +121875,8 @@ self: {
          aeson base bytestring scientific text unordered-containers vector
        ];
        testHaskellDepends = [
-         aeson base bytestring directory doctest hspec QuickCheck
-         quickcheck-unicode scientific text unordered-containers vector
+         aeson base bytestring directory hspec QuickCheck quickcheck-unicode
+         scientific text unordered-containers vector
        ];
        homepage = "https://github.com/ondrap/json-stream";
        description = "Incremental applicative JSON parser";
@@ -122276,9 +122540,8 @@ self: {
      }) {};
 
   "kafka-client" = callPackage
-    ({ mkDerivation, base, bytestring, cereal, containers, digest
-     , dlist, hspec, hspec-discover, network, process, QuickCheck
-     , snappy, temporary, time, zlib
+    ({ mkDerivation, base, bytestring, cereal, digest, dlist, hspec
+     , hspec-discover, network, QuickCheck, snappy, time, zlib
      }:
      mkDerivation {
        pname = "kafka-client";
@@ -122288,8 +122551,7 @@ self: {
          base bytestring cereal digest dlist network snappy time zlib
        ];
        testHaskellDepends = [
-         base bytestring cereal containers hspec hspec-discover network
-         process QuickCheck temporary time
+         base bytestring cereal hspec hspec-discover QuickCheck time
        ];
        homepage = "https://github.com/abhinav/kafka-client";
        description = "Low-level Haskell client library for Apache Kafka 0.7.";
@@ -122563,7 +122825,6 @@ self: {
          directory dotgen filepath netlist netlist-to-vhdl process random
          sized-types strict template-haskell
        ];
-       executableHaskellDepends = [ base ];
        homepage = "http://ittc.ku.edu/csdl/fpg/Tools/KansasLava";
        description = "Kansas Lava is a hardware simulator and VHDL generator";
        license = stdenv.lib.licenses.bsd3;
@@ -122585,7 +122846,6 @@ self: {
          ansi-terminal base bytestring data-default directory filepath
          kansas-lava network sized-types
        ];
-       executableHaskellDepends = [ base ];
        homepage = "http://ittc.ku.edu/csdl/fpg/Tools/KansasLava";
        description = "FPGA Cores Written in Kansas Lava";
        license = stdenv.lib.licenses.bsd3;
@@ -122757,6 +123017,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "katip-rollbar" = callPackage
+    ({ mkDerivation, aeson, async, base, hostname, http-client, katip
+     , rollbar-hs, stm-chans, text, time
+     }:
+     mkDerivation {
+       pname = "katip-rollbar";
+       version = "0.3.0.1";
+       sha256 = "1phci2x12qmih9aaly0j1g1a07wcd80rrkwqgfy3pxnbjx6d6817";
+       libraryHaskellDepends = [
+         aeson async base hostname http-client katip rollbar-hs stm-chans
+         text time
+       ];
+       homepage = "https://github.com/joneshf/katip-rollbar#readme";
+       description = "Katip scribe that logs to Rollbar";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "katip-syslog" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hsyslog, katip
      , string-conv, text
@@ -123485,7 +123762,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base udbus ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/lunaryorn/haskell-keyring";
        description = "Keyring access";
        license = stdenv.lib.licenses.mit;
@@ -124882,12 +125158,10 @@ self: {
      }) {};
 
   "lambdacube-compiler" = callPackage
-    ({ mkDerivation, aeson, ansi-wl-pprint, async, base
-     , base64-bytestring, bytestring, containers, deepseq, directory
-     , exceptions, filepath, JuicyPixels, lambdacube-ir, megaparsec
-     , monad-control, mtl, optparse-applicative, patience, pretty-show
-     , process, QuickCheck, semigroups, tasty, tasty-quickcheck, text
-     , time, vect, vector, websockets
+    ({ mkDerivation, aeson, ansi-wl-pprint, base, bytestring
+     , containers, directory, exceptions, filepath, lambdacube-ir
+     , megaparsec, mtl, optparse-applicative, pretty-show, semigroups
+     , text, vector
      }:
      mkDerivation {
        pname = "lambdacube-compiler";
@@ -124901,11 +125175,7 @@ self: {
          lambdacube-ir megaparsec mtl pretty-show semigroups text vector
        ];
        executableHaskellDepends = [
-         aeson ansi-wl-pprint async base base64-bytestring bytestring
-         containers deepseq directory exceptions filepath JuicyPixels
-         lambdacube-ir megaparsec monad-control mtl optparse-applicative
-         patience pretty-show process QuickCheck semigroups tasty
-         tasty-quickcheck text time vect vector websockets
+         aeson base bytestring filepath optparse-applicative
        ];
        homepage = "http://lambdacube3d.com";
        description = "LambdaCube 3D is a DSL to program GPUs";
@@ -124988,10 +125258,8 @@ self: {
      }) {};
 
   "lambdacube-gl" = callPackage
-    ({ mkDerivation, aeson, base, base64-bytestring, bytestring
-     , containers, exceptions, GLFW-b, JuicyPixels, lambdacube-ir, mtl
-     , network, OpenGLRaw, text, time, vector, vector-algorithms
-     , wavefront, websockets
+    ({ mkDerivation, base, bytestring, containers, JuicyPixels
+     , lambdacube-ir, mtl, OpenGLRaw, vector, vector-algorithms
      }:
      mkDerivation {
        pname = "lambdacube-gl";
@@ -125003,11 +125271,6 @@ self: {
          base bytestring containers JuicyPixels lambdacube-ir mtl OpenGLRaw
          vector vector-algorithms
        ];
-       executableHaskellDepends = [
-         aeson base base64-bytestring bytestring containers exceptions
-         GLFW-b JuicyPixels lambdacube-ir mtl network OpenGLRaw text time
-         vector wavefront websockets
-       ];
        homepage = "http://lambdacube3d.com";
        description = "OpenGL 3.3 Core Profile backend for LambdaCube 3D";
        license = stdenv.lib.licenses.bsd3;
@@ -125191,16 +125454,15 @@ self: {
     ({ mkDerivation, alex, ansi-terminal, ansi-wl-pprint, array, base
      , composition-prelude, criterion, deepseq, happy, hspec
      , hspec-dirstream, lens, recursion-schemes, system-filepath
-     , unordered-containers
      }:
      mkDerivation {
        pname = "language-ats";
-       version = "0.3.0.1";
-       sha256 = "0afp2r77h8z0fx5qxxadb4vxnrj76varfisr12p7r0nm4ljy6vmz";
+       version = "0.3.0.7";
+       sha256 = "0q1nap6277w13f389jlvyp62018ywzay7rc04j6n5wmcs240inff";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-terminal ansi-wl-pprint array base composition-prelude deepseq
-         lens recursion-schemes unordered-containers
+         lens recursion-schemes
        ];
        libraryToolDepends = [ alex happy ];
        testHaskellDepends = [
@@ -125209,6 +125471,7 @@ self: {
        benchmarkHaskellDepends = [ base criterion ];
        description = "Parser and pretty-printer for ATS";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "language-bash" = callPackage
@@ -125232,9 +125495,8 @@ self: {
      }) {};
 
   "language-boogie" = callPackage
-    ({ mkDerivation, ansi-terminal, base, cmdargs, containers, filepath
-     , HUnit, lens, mtl, parsec, pretty, random, stream-monad, time
-     , transformers
+    ({ mkDerivation, ansi-terminal, base, cmdargs, containers, lens
+     , mtl, parsec, pretty, random, stream-monad, time, transformers
      }:
      mkDerivation {
        pname = "language-boogie";
@@ -125247,8 +125509,8 @@ self: {
          transformers
        ];
        executableHaskellDepends = [
-         ansi-terminal base cmdargs containers filepath HUnit lens mtl
-         parsec pretty random stream-monad time transformers
+         ansi-terminal base cmdargs containers lens mtl parsec pretty random
+         stream-monad time transformers
        ];
        homepage = "https://bitbucket.org/nadiapolikarpova/boogaloo";
        description = "Interpreter and language infrastructure for Boogie";
@@ -125295,6 +125557,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "language-c_0_7_2" = callPackage
+    ({ mkDerivation, alex, array, base, bytestring, containers
+     , directory, filepath, happy, pretty, process, syb
+     }:
+     mkDerivation {
+       pname = "language-c";
+       version = "0.7.2";
+       sha256 = "1ra9spagayal2iw996qc0vafglxgyjf04fa2sv44f5z5v3fj5bb3";
+       libraryHaskellDepends = [
+         array base bytestring containers directory filepath pretty process
+         syb
+       ];
+       libraryToolDepends = [ alex happy ];
+       testHaskellDepends = [ base directory filepath process ];
+       homepage = "http://visq.github.io/language-c/";
+       description = "Analysis and generation of C code";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "language-c-comments" = callPackage
     ({ mkDerivation, alex, array, base, language-c }:
      mkDerivation {
@@ -125322,7 +125604,6 @@ self: {
          array base containers filepath language-c-quote mainland-pretty
          template-haskell
        ];
-       testHaskellDepends = [ base language-c-quote ];
        homepage = "https://github.com/mchakravarty/language-c-inline/";
        description = "Inline C & Objective-C code in Haskell for language interoperability";
        license = stdenv.lib.licenses.bsd3;
@@ -125368,10 +125649,9 @@ self: {
      }) {};
 
   "language-conf" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, deepseq, directory
-     , filepath, hspec, hspec-megaparsec, megaparsec
-     , optparse-applicative, pretty, QuickCheck, scientific, semigroups
-     , text, transformers, unordered-containers, vector, yaml
+    ({ mkDerivation, aeson, base, deepseq, directory, filepath, hspec
+     , hspec-megaparsec, megaparsec, pretty, QuickCheck, scientific
+     , semigroups, text, transformers, unordered-containers, vector
      }:
      mkDerivation {
        pname = "language-conf";
@@ -125383,10 +125663,6 @@ self: {
          aeson base deepseq directory filepath megaparsec pretty scientific
          semigroups text unordered-containers vector
        ];
-       executableHaskellDepends = [
-         aeson base bytestring filepath megaparsec optparse-applicative
-         pretty text yaml
-       ];
        testHaskellDepends = [
          aeson base directory filepath hspec hspec-megaparsec megaparsec
          pretty QuickCheck semigroups text transformers
@@ -125491,11 +125767,6 @@ self: {
          pretty ShellCheck split template-haskell text th-lift
          th-lift-instances transformers unordered-containers yaml
        ];
-       executableHaskellDepends = [
-         aeson base bytestring directory filepath free Glob mtl parsec
-         pretty ShellCheck split template-haskell text th-lift
-         th-lift-instances transformers unordered-containers yaml
-       ];
        testHaskellDepends = [
          aeson base bytestring directory filepath free Glob hspec HUnit mtl
          parsec pretty process QuickCheck ShellCheck split template-haskell
@@ -125847,9 +126118,9 @@ self: {
 
   "language-lua2" = callPackage
     ({ mkDerivation, base, containers, deepseq, Earley
-     , lexer-applicative, microlens, optparse-applicative, QuickCheck
-     , regex-applicative, semigroups, srcloc, tasty, tasty-hunit
-     , tasty-quickcheck, transformers, unordered-containers, wl-pprint
+     , lexer-applicative, microlens, QuickCheck, regex-applicative
+     , semigroups, srcloc, tasty, tasty-hunit, tasty-quickcheck
+     , transformers, unordered-containers, wl-pprint
      }:
      mkDerivation {
        pname = "language-lua2";
@@ -125862,9 +126133,6 @@ self: {
          regex-applicative semigroups srcloc transformers
          unordered-containers wl-pprint
        ];
-       executableHaskellDepends = [
-         base Earley lexer-applicative optparse-applicative srcloc wl-pprint
-       ];
        testHaskellDepends = [
          base deepseq lexer-applicative QuickCheck semigroups srcloc tasty
          tasty-hunit tasty-quickcheck unordered-containers
@@ -126057,6 +126325,54 @@ self: {
        hydraPlatforms = [ "x86_64-linux" ];
      }) {};
 
+  "language-puppet_1_3_15" = callPackage
+    ({ mkDerivation, aeson, ansi-wl-pprint, attoparsec, base
+     , base16-bytestring, bytestring, case-insensitive, containers
+     , cryptonite, directory, exceptions, filecache, filepath
+     , formatting, Glob, hashable, hruby, hslogger, hspec
+     , hspec-megaparsec, http-api-data, http-client, HUnit, lens
+     , lens-aeson, megaparsec, memory, mtl, neat-interpolation
+     , operational, optparse-applicative, parallel-io, parsec
+     , pcre-utils, process, protolude, random, regex-pcre-builtin
+     , scientific, servant, servant-client, split, stm
+     , strict-base-types, temporary, text, time, transformers, unix
+     , unordered-containers, vector, yaml
+     }:
+     mkDerivation {
+       pname = "language-puppet";
+       version = "1.3.15";
+       sha256 = "0irlm003kkddxv26a9vjs4b6xwkjz7m2himxvz500yykmv3l0ajv";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         aeson ansi-wl-pprint attoparsec base base16-bytestring bytestring
+         case-insensitive containers cryptonite directory exceptions
+         filecache filepath formatting hashable hruby hslogger hspec
+         http-api-data http-client lens lens-aeson megaparsec memory mtl
+         operational parsec pcre-utils process protolude random
+         regex-pcre-builtin scientific servant servant-client split stm
+         strict-base-types text time transformers unix unordered-containers
+         vector yaml
+       ];
+       executableHaskellDepends = [
+         aeson ansi-wl-pprint base bytestring containers Glob hslogger
+         http-client lens megaparsec mtl optparse-applicative parallel-io
+         regex-pcre-builtin strict-base-types text transformers
+         unordered-containers vector yaml
+       ];
+       testHaskellDepends = [
+         ansi-wl-pprint base Glob hslogger hspec hspec-megaparsec HUnit lens
+         megaparsec mtl neat-interpolation protolude scientific
+         strict-base-types temporary text transformers unix
+         unordered-containers vector
+       ];
+       homepage = "http://lpuppet.banquise.net/";
+       description = "Tools to parse and evaluate the Puppet DSL";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "language-python" = callPackage
     ({ mkDerivation, alex, array, base, containers, happy, monads-tf
      , pretty, transformers, utf8-string
@@ -127861,7 +128177,7 @@ self: {
      }) {};
 
   "leveldb-haskell" = callPackage
-    ({ mkDerivation, async, base, bytestring, data-default, directory
+    ({ mkDerivation, base, bytestring, data-default, directory
      , exceptions, filepath, leveldb, mtl, QuickCheck, resourcet, tasty
      , tasty-quickcheck, temporary, transformers
      }:
@@ -127876,9 +128192,6 @@ self: {
          transformers
        ];
        librarySystemDepends = [ leveldb ];
-       executableHaskellDepends = [
-         async base bytestring data-default resourcet transformers
-       ];
        testHaskellDepends = [
          base bytestring data-default directory exceptions mtl QuickCheck
          tasty tasty-quickcheck temporary transformers
@@ -127889,9 +128202,9 @@ self: {
      }) {inherit (pkgs) leveldb;};
 
   "leveldb-haskell-fork" = callPackage
-    ({ mkDerivation, async, base, bytestring, data-default, filepath
-     , hspec, hspec-expectations, leveldb, mtl, process, QuickCheck
-     , resourcet, transformers
+    ({ mkDerivation, base, bytestring, data-default, filepath, hspec
+     , hspec-expectations, leveldb, mtl, process, QuickCheck, resourcet
+     , transformers
      }:
      mkDerivation {
        pname = "leveldb-haskell-fork";
@@ -127903,9 +128216,6 @@ self: {
          base bytestring data-default filepath resourcet transformers
        ];
        librarySystemDepends = [ leveldb ];
-       executableHaskellDepends = [
-         async base bytestring data-default resourcet transformers
-       ];
        testHaskellDepends = [
          base bytestring data-default hspec hspec-expectations mtl process
          QuickCheck transformers
@@ -127930,8 +128240,7 @@ self: {
      }) {};
 
   "levmar-chart" = callPackage
-    ({ mkDerivation, base, Chart, colour, data-accessor, levmar, random
-     }:
+    ({ mkDerivation, base, Chart, colour, data-accessor, levmar }:
      mkDerivation {
        pname = "levmar-chart";
        version = "0.2";
@@ -127939,9 +128248,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Chart colour data-accessor levmar ];
-       executableHaskellDepends = [
-         base Chart colour data-accessor levmar random
-       ];
        description = "Plots the results of the Levenberg-Marquardt algorithm in a chart";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -128042,13 +128348,7 @@ self: {
      }) {};
 
   "lhc" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring
-     , bytestring-trie, Cabal, containers, core, derive, digest
-     , directory, extensible-exceptions, filepath, haskell98, HUnit, mtl
-     , parallel, pretty, process, QuickCheck, test-framework
-     , test-framework-hunit, test-framework-quickcheck, time, unix
-     , xhtml
-     }:
+    ({ mkDerivation }:
      mkDerivation {
        pname = "lhc";
        version = "0.10";
@@ -128056,13 +128356,6 @@ self: {
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
-       executableHaskellDepends = [
-         ansi-wl-pprint base binary bytestring bytestring-trie Cabal
-         containers core derive digest directory extensible-exceptions
-         filepath haskell98 HUnit mtl parallel pretty process QuickCheck
-         test-framework test-framework-hunit test-framework-quickcheck time
-         unix xhtml
-       ];
        homepage = "http://lhc.seize.it/";
        description = "LHC Haskell Compiler";
        license = stdenv.lib.licenses.publicDomain;
@@ -128359,8 +128652,8 @@ self: {
   "liblastfm" = callPackage
     ({ mkDerivation, aeson, base, bytestring, cereal, containers
      , cryptonite, hspec, hspec-expectations-lens, http-client
-     , http-client-tls, HUnit, lens, lens-aeson, network-uri
-     , profunctors, semigroups, text, transformers, xml-conduit
+     , http-client-tls, lens, lens-aeson, network-uri, profunctors
+     , semigroups, text, transformers, xml-conduit
      , xml-html-conduit-lens
      }:
      mkDerivation {
@@ -128374,8 +128667,8 @@ self: {
        ];
        testHaskellDepends = [
          aeson base bytestring cereal containers cryptonite hspec
-         hspec-expectations-lens http-client http-client-tls HUnit lens
-         lens-aeson network-uri profunctors text transformers xml-conduit
+         hspec-expectations-lens http-client http-client-tls lens lens-aeson
+         network-uri profunctors text transformers xml-conduit
          xml-html-conduit-lens
        ];
        description = "Lastfm API interface";
@@ -128444,7 +128737,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/mainland/libltdl";
        description = "FFI interface to libltdl";
        license = stdenv.lib.licenses.bsd3;
@@ -129129,8 +129421,7 @@ self: {
          transformers
        ];
        testHaskellDepends = [
-         aeson api-builder base bytestring hspec http-client http-client-tls
-         http-types network text transformers
+         aeson api-builder base bytestring hspec text transformers
        ];
        homepage = "https://github.com/cmoresid/lightning-haskell#readme";
        description = "Haskell client for lightning-viz REST API";
@@ -130110,8 +130401,8 @@ self: {
      }:
      mkDerivation {
        pname = "liquidhaskell";
-       version = "0.8.2.3";
-       sha256 = "1lqqna0ypl1r52miqr0bjhjmi38m4wip0v6y8qbi965jh2p5wzqy";
+       version = "0.8.2.4";
+       sha256 = "07cbw14301pa2h4faxrjb1kfp2r5zdwpv5slm491kldzm53y8ry3";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -130241,9 +130532,6 @@ self: {
        libraryHaskellDepends = [
          ansi-terminal base data-default stm terminal-size vty
        ];
-       executableHaskellDepends = [
-         ansi-terminal base data-default stm terminal-size vty
-       ];
        testHaskellDepends = [
          ansi-terminal base data-default hspec stm terminal-size vty
        ];
@@ -130536,13 +130824,13 @@ self: {
      , concurrent-split, containers, data-accessor
      , data-accessor-transformers, event-list, explicit-exception, html
      , httpd-shed, midi, midi-alsa, network, network-uri, non-empty
-     , non-negative, parsec, pathtype, pretty, process, stm, stm-split
-     , strict, transformers, unix, utility-ht, wx, wxcore
+     , non-negative, parsec, pathtype, pretty, process, semigroups, stm
+     , stm-split, strict, transformers, unix, utility-ht, wx, wxcore
      }:
      mkDerivation {
        pname = "live-sequencer";
-       version = "0.0.6.1";
-       sha256 = "0g099sm4q7n0aiqc8qznqfcqvlnc25kzvz31qf49xblah89dzx0n";
+       version = "0.0.6.2";
+       sha256 = "12v1xfsi1cnnfakd5pzvligrpv5pfzl3vkr1gxvrigawipsj4b9f";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -130551,8 +130839,8 @@ self: {
          alsa-core alsa-seq base bytestring cgi concurrent-split containers
          data-accessor data-accessor-transformers explicit-exception html
          httpd-shed midi midi-alsa network network-uri non-empty parsec
-         pathtype pretty process stm stm-split strict transformers unix
-         utility-ht wx wxcore
+         pathtype pretty process semigroups stm stm-split strict
+         transformers unix utility-ht wx wxcore
        ];
        homepage = "http://www.haskell.org/haskellwiki/Live-Sequencer";
        description = "Live coding of MIDI music";
@@ -130992,10 +131280,9 @@ self: {
      }) {};
 
   "llvm-pretty-bc-parser" = callPackage
-    ({ mkDerivation, abstract-par, array, base, bytestring, cereal
-     , containers, deepseq, directory, fgl, fgl-visualize, filepath
-     , llvm-pretty, monad-par, monadLib, pretty, process, random
-     , temporary, time, transformers, xml
+    ({ mkDerivation, array, base, bytestring, cereal, containers
+     , directory, fgl, fgl-visualize, filepath, llvm-pretty, monadLib
+     , pretty, process
      }:
      mkDerivation {
        pname = "llvm-pretty-bc-parser";
@@ -131008,9 +131295,8 @@ self: {
          pretty
        ];
        executableHaskellDepends = [
-         abstract-par array base bytestring cereal containers deepseq
-         directory fgl fgl-visualize filepath llvm-pretty monad-par monadLib
-         pretty process random temporary time transformers xml
+         array base bytestring cereal containers fgl fgl-visualize
+         llvm-pretty monadLib pretty
        ];
        testHaskellDepends = [
          base bytestring directory filepath llvm-pretty process
@@ -131021,16 +131307,17 @@ self: {
 
   "llvm-tf" = callPackage
     ({ mkDerivation, base, containers, enumset, fixed-length, llvm-ffi
-     , non-empty, storable-record, tfp, transformers, utility-ht
+     , non-empty, semigroups, storable-record, tfp, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "llvm-tf";
-       version = "3.1.0.2";
-       sha256 = "165zz8mgygc5q8ck4s3jc26bi79pf6m42wr8g1xahr6vkjc1csjn";
+       version = "3.1.1";
+       sha256 = "0mhlz1jv81rl353qp0vbm39qz15yms9n0xlb0s27jj88yf66zks1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers enumset fixed-length llvm-ffi non-empty
+         base containers enumset fixed-length llvm-ffi non-empty semigroups
          storable-record tfp transformers utility-ht
        ];
        description = "Bindings to the LLVM compiler toolkit using type families";
@@ -132557,9 +132844,6 @@ self: {
          base containers FontyFruity gasp JuicyPixels lens linear
          lp-diagrams lucid-svg mtl optparse-applicative svg-tree text vector
        ];
-       executableHaskellDepends = [
-         base containers FontyFruity gasp lens lp-diagrams
-       ];
        description = "SVG Backend for lp-diagrams";
        license = "GPL";
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -134828,17 +135112,20 @@ self: {
      }) {};
 
   "mapquest-api" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, exceptions, req, text }:
+    ({ mkDerivation, aeson, base, bytestring, exceptions, goggles, mtl
+     , req, text
+     }:
      mkDerivation {
        pname = "mapquest-api";
-       version = "0.2.0.0";
-       sha256 = "1x48lv6grbs34iv994yj2bhz3hi86lqa01vwx7bvxlbfn7jn3jqk";
+       version = "0.3.1";
+       sha256 = "11bvba2yyif31srkpwc8hzgfks4528l4v2m9jgvyh5hqp4hr4cs3";
        libraryHaskellDepends = [
-         aeson base bytestring exceptions req text
+         aeson base bytestring exceptions goggles mtl req text
        ];
        homepage = "https://github.com/ocramz/mapquest-api";
        description = "Bindings to the MapQuest API";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "marionetta" = callPackage
@@ -135075,10 +135362,10 @@ self: {
      }) {};
 
   "marmalade-upload" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, Cabal, data-default
-     , directory, exceptions, filepath, http-client, http-client-tls
-     , http-types, keyring, mtl, network, optparse-applicative, process
-     , shake, split, tasty, tasty-hunit, text, transformers, zip-archive
+    ({ mkDerivation, aeson, base, bytestring, data-default, directory
+     , exceptions, filepath, http-client, http-client-tls, http-types
+     , keyring, mtl, network, optparse-applicative, tasty, tasty-hunit
+     , text, transformers
      }:
      mkDerivation {
        pname = "marmalade-upload";
@@ -135091,9 +135378,8 @@ self: {
          http-types mtl network text transformers
        ];
        executableHaskellDepends = [
-         aeson base bytestring Cabal data-default directory filepath keyring
-         optparse-applicative process shake split text transformers
-         zip-archive
+         aeson base bytestring data-default directory filepath keyring
+         optparse-applicative text transformers
        ];
        testHaskellDepends = [
          aeson base exceptions tasty tasty-hunit text transformers
@@ -135211,8 +135497,8 @@ self: {
 
   "marxup" = callPackage
     ({ mkDerivation, base, configurator, containers, directory, dlist
-     , filepath, graphviz, haskell-src-exts, labeled-tree, lens
-     , lp-diagrams, mtl, parsek, pretty, process, text
+     , filepath, haskell-src-exts, labeled-tree, lens, lp-diagrams, mtl
+     , parsek, pretty, process, text
      }:
      mkDerivation {
        pname = "marxup";
@@ -135226,7 +135512,7 @@ self: {
          lens lp-diagrams mtl process text
        ];
        executableHaskellDepends = [
-         base configurator dlist graphviz lens lp-diagrams parsek pretty
+         base configurator dlist parsek pretty
        ];
        description = "Markup language preprocessor for Haskell";
        license = stdenv.lib.licenses.gpl2;
@@ -135256,6 +135542,44 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "massiv" = callPackage
+    ({ mkDerivation, base, data-default, data-default-class, deepseq
+     , ghc-prim, hspec, primitive, QuickCheck, safe-exceptions, vector
+     }:
+     mkDerivation {
+       pname = "massiv";
+       version = "0.1.0.0";
+       sha256 = "1hy87l8jv06jmgws7r28qh44ja1a4swpaki9z8dn9lviddlhiz3d";
+       libraryHaskellDepends = [
+         base data-default-class deepseq ghc-prim primitive vector
+       ];
+       testHaskellDepends = [
+         base data-default deepseq hspec QuickCheck safe-exceptions vector
+       ];
+       homepage = "https://github.com/lehins/massiv";
+       description = "Massiv (Массив) is an Array Library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "massiv-io" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, deepseq, directory
+     , filepath, JuicyPixels, massiv, netpbm, process, vector
+     }:
+     mkDerivation {
+       pname = "massiv-io";
+       version = "0.1.0.0";
+       sha256 = "1qj94ypn5yzl3pjdnpddjv926d1wjcvm1n673mg4i0x5pr71w7lw";
+       revision = "1";
+       editedCabalFile = "1k6hg12q6m6gi6w6km04r6hx7zq7xfdhxz90arlm1izag3dv1ic2";
+       libraryHaskellDepends = [
+         base bytestring data-default deepseq directory filepath JuicyPixels
+         massiv netpbm process vector
+       ];
+       homepage = "https://github.com/lehins/massiv";
+       description = "Import/export of Image files into massiv Arrays";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "master-plan" = callPackage
     ({ mkDerivation, base, diagrams, diagrams-lib, diagrams-rasterific
      , hspec, megaparsec, mtl, optparse-applicative, QuickCheck
@@ -135661,9 +135985,6 @@ self: {
          HTTP memory microlens microlens-th network-uri pretty-show process
          stm template-haskell text time unordered-containers websockets
        ];
-       executableHaskellDepends = [
-         aeson base connection pretty-show process text unordered-containers
-       ];
        testHaskellDepends = [
          aeson base containers HUnit mtl pretty-show stm tasty tasty-hunit
          text unordered-containers
@@ -135857,7 +136178,7 @@ self: {
 
   "mbox-tools" = callPackage
     ({ mkDerivation, base, bytestring, codec-mbox, containers, fclabels
-     , hsemail, mtl, parsec, process, pureMD5, random
+     , hsemail, mtl, parsec, process, pureMD5
      }:
      mkDerivation {
        pname = "mbox-tools";
@@ -135867,7 +136188,7 @@ self: {
        isExecutable = true;
        executableHaskellDepends = [
          base bytestring codec-mbox containers fclabels hsemail mtl parsec
-         process pureMD5 random
+         process pureMD5
        ];
        homepage = "https://github.com/np/mbox-tools";
        description = "A collection of tools to process mbox files";
@@ -136019,7 +136340,7 @@ self: {
      }) {};
 
   "mcpi" = callPackage
-    ({ mkDerivation, base, network, pipes, split, transformers }:
+    ({ mkDerivation, base, network, split, transformers }:
      mkDerivation {
        pname = "mcpi";
        version = "0.0.1.2";
@@ -136027,7 +136348,7 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base network split transformers ];
-       executableHaskellDepends = [ base network pipes transformers ];
+       executableHaskellDepends = [ base transformers ];
        homepage = "https://github.com/DougBurke/hmcpi";
        description = "Connect to MineCraft running on a Raspberry PI";
        license = stdenv.lib.licenses.publicDomain;
@@ -136635,8 +136956,8 @@ self: {
 
   "memcache-conduit" = callPackage
     ({ mkDerivation, attoparsec, attoparsec-binary, base, bytestring
-     , conduit, conduit-extra, containers, hashtables, memcache-haskell
-     , monad-control, mtl, network, resourcet, split, stm, transformers
+     , conduit, conduit-extra, memcache-haskell, mtl, network, resourcet
+     , split
      }:
      mkDerivation {
        pname = "memcache-conduit";
@@ -136648,20 +136969,14 @@ self: {
          attoparsec attoparsec-binary base bytestring conduit conduit-extra
          memcache-haskell mtl network resourcet split
        ];
-       executableHaskellDepends = [
-         base bytestring conduit conduit-extra containers hashtables
-         memcache-haskell monad-control mtl network resourcet stm
-         transformers
-       ];
        description = "Conduit library for memcache procotol";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "memcache-haskell" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, conduit-extra
-     , containers, hashable, hashtables, HUnit, mtl, network, QuickCheck
-     , resourcet, split, stm, test-framework, test-framework-hunit
+    ({ mkDerivation, attoparsec, base, bytestring, hashable, HUnit
+     , network, QuickCheck, split, test-framework, test-framework-hunit
      , test-framework-quickcheck2, test-framework-th, transformers
      }:
      mkDerivation {
@@ -136673,10 +136988,6 @@ self: {
        libraryHaskellDepends = [
          attoparsec base bytestring hashable network split transformers
        ];
-       executableHaskellDepends = [
-         base bytestring conduit-extra containers hashtables mtl resourcet
-         stm transformers
-       ];
        testHaskellDepends = [
          base bytestring HUnit network QuickCheck split test-framework
          test-framework-hunit test-framework-quickcheck2 test-framework-th
@@ -137427,12 +137738,12 @@ self: {
     ({ mkDerivation, base, primitive, vector }:
      mkDerivation {
        pname = "microgroove";
-       version = "0.1.0.0";
-       sha256 = "0mzgx3ljf7k7b0c6kdryamcyvahhr2q1j836ghhsk58r4j67qh13";
+       version = "0.2.1.0";
+       sha256 = "1dfkiiiksb4wnf6kgxmla37w1xmmxpzim4ribjckvn58pd2hn2a0";
        libraryHaskellDepends = [ base primitive vector ];
-       homepage = "https://github.com/daig/microgroove";
+       homepage = "https://github.com/daig/microgroove#readme";
        description = "Array-backed extensible records";
-       license = stdenv.lib.licenses.bsd3;
+       license = stdenv.lib.licenses.mit;
      }) {};
 
   "microlens" = callPackage
@@ -137706,6 +138017,30 @@ self: {
        license = "GPL";
      }) {};
 
+  "midi_0_2_2_2" = callPackage
+    ({ mkDerivation, base, binary, bytestring, event-list
+     , explicit-exception, monoid-transformer, non-negative, QuickCheck
+     , random, semigroups, transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "midi";
+       version = "0.2.2.2";
+       sha256 = "0fv9980k35qv9qk73g2mp88xvhchyq0lq37cl7i26gx4f64vaz6y";
+       libraryHaskellDepends = [
+         base binary bytestring event-list explicit-exception
+         monoid-transformer non-negative QuickCheck random semigroups
+         transformers utility-ht
+       ];
+       testHaskellDepends = [
+         base bytestring event-list explicit-exception non-negative
+         QuickCheck transformers utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/MIDI";
+       description = "Handling of MIDI messages and files";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "midi-alsa" = callPackage
     ({ mkDerivation, alsa-seq, base, data-accessor, midi, utility-ht }:
      mkDerivation {
@@ -138531,15 +138866,15 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "miso_0_12_0_0" = callPackage
+  "miso_0_13_0_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, http-api-data
      , http-types, lucid, network-uri, servant, servant-lucid, text
      , transformers, vector
      }:
      mkDerivation {
        pname = "miso";
-       version = "0.12.0.0";
-       sha256 = "08d50apwcyym4crdnly97j1vwl85p9a5fr606x1mj8729pd0pwjb";
+       version = "0.13.0.0";
+       sha256 = "1sv8q5f1nkvsxk365k8njmaggi1hyp47q539is2n2xhwmsysxwla";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -140180,8 +140515,8 @@ self: {
     ({ mkDerivation, base, mmorph, mtl, transformers }:
      mkDerivation {
        pname = "monad-resumption";
-       version = "0.1.2.0";
-       sha256 = "09yz5cbvjlmqdlr25adxggpdz52jxyryyyrzix1pkdjr6aqpidkr";
+       version = "0.1.3.0";
+       sha256 = "0zi4p8v02shw0m471xsq1d3wbskz6jd2j92wpdi3qcd8fx4i283q";
        libraryHaskellDepends = [ base mmorph mtl transformers ];
        homepage = "https://github.com/igraves/resumption_monads";
        description = "Resumption and reactive resumption monads for Haskell";
@@ -140651,6 +140986,7 @@ self: {
        ];
        description = "A simple and fast logging monad";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "monadoid" = callPackage
@@ -140713,10 +141049,9 @@ self: {
      }) {};
 
   "monarch" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, criterion
-     , doctest, hspec, lifted-base, monad-control, mtl, network
-     , pool-conduit, stm, tokyotyrant-haskell, transformers
-     , transformers-base
+    ({ mkDerivation, base, binary, bytestring, containers, doctest
+     , lifted-base, monad-control, mtl, network, pool-conduit, stm
+     , transformers, transformers-base
      }:
      mkDerivation {
        pname = "monarch";
@@ -140726,12 +141061,7 @@ self: {
          base binary bytestring containers lifted-base monad-control mtl
          network pool-conduit stm transformers transformers-base
        ];
-       testHaskellDepends = [
-         base bytestring doctest hspec transformers
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring criterion tokyotyrant-haskell
-       ];
+       testHaskellDepends = [ base doctest ];
        homepage = "https://github.com/notogawa/monarch";
        description = "Monadic interface for TokyoTyrant";
        license = stdenv.lib.licenses.bsd3;
@@ -141097,6 +141427,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "monoid-transformer_0_0_4" = callPackage
+    ({ mkDerivation, base, semigroups }:
+     mkDerivation {
+       pname = "monoid-transformer";
+       version = "0.0.4";
+       sha256 = "1243r77m5ywphwyhw7kn9vb2ha5m5zj375bd61fprdfiwi3z3as3";
+       libraryHaskellDepends = [ base semigroups ];
+       description = "Monoid counterparts to some ubiquitous monad transformers";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "monoidal-containers" = callPackage
     ({ mkDerivation, base, containers, deepseq, hashable, lens, newtype
      , unordered-containers
@@ -141407,6 +141749,39 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "morte_1_6_15" = callPackage
+    ({ mkDerivation, alex, array, base, binary, code-page, containers
+     , criterion, deepseq, Earley, http-client, http-client-tls
+     , microlens, microlens-mtl, mtl, optparse-applicative, pipes
+     , QuickCheck, system-fileio, system-filepath, tasty, tasty-hunit
+     , tasty-quickcheck, text, text-format, transformers
+     }:
+     mkDerivation {
+       pname = "morte";
+       version = "1.6.15";
+       sha256 = "04s58nb4ycfp679saj50wmxgszjrp479dp378wd982534jrglxyh";
+       isLibrary = true;
+       isExecutable = true;
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         array base binary containers deepseq Earley http-client
+         http-client-tls microlens microlens-mtl pipes system-fileio
+         system-filepath text text-format transformers
+       ];
+       libraryToolDepends = [ alex ];
+       executableHaskellDepends = [
+         base code-page optparse-applicative text text-format
+       ];
+       testHaskellDepends = [
+         base mtl QuickCheck system-filepath tasty tasty-hunit
+         tasty-quickcheck text transformers
+       ];
+       benchmarkHaskellDepends = [ base criterion system-filepath text ];
+       description = "A bare-bones calculus of constructions";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mosaico-lib" = callPackage
     ({ mkDerivation, base, base-unicode-symbols, colour, diagrams-cairo
      , diagrams-core, diagrams-gtk, diagrams-lib, glib, gtk, JuicyPixels
@@ -143394,10 +143769,7 @@ self: {
      }) {};
 
   "mwc-random" = callPackage
-    ({ mkDerivation, base, HUnit, math-functions, primitive, QuickCheck
-     , statistics, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, time, vector
-     }:
+    ({ mkDerivation, base, math-functions, primitive, time, vector }:
      mkDerivation {
        pname = "mwc-random";
        version = "0.13.6.0";
@@ -143405,10 +143777,6 @@ self: {
        libraryHaskellDepends = [
          base math-functions primitive time vector
        ];
-       testHaskellDepends = [
-         base HUnit QuickCheck statistics test-framework
-         test-framework-hunit test-framework-quickcheck2 vector
-       ];
        doCheck = false;
        homepage = "https://github.com/bos/mwc-random";
        description = "Fast, high quality pseudo random number generation";
@@ -143503,6 +143871,7 @@ self: {
        homepage = "http://github.com/pierric/mxnet-nn";
        description = "Train a neural network with MXNet in Haskell";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mxnet-nnvm" = callPackage
@@ -143988,33 +144357,38 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "nakadi-client_0_4_1_0" = callPackage
+  "nakadi-client_0_5_0_0" = callPackage
     ({ mkDerivation, aeson, aeson-casing, async, base, bytestring
      , classy-prelude, conduit, conduit-combinators, conduit-extra
-     , containers, hashable, http-client, http-client-tls, http-conduit
-     , http-types, iso8601-time, lens, lens-aeson, monad-logger, mtl
+     , containers, exceptions, fast-logger, hashable, http-client
+     , http-client-tls, http-conduit, http-types, iso8601-time, lens
+     , lens-aeson, lifted-async, monad-control, monad-logger, mtl
      , random, resourcet, retry, safe-exceptions, say, scientific, split
-     , stm, tasty, tasty-hunit, template-haskell, text, time
-     , transformers, unordered-containers, uuid, vector, wai, warp
+     , stm, stm-chans, stm-conduit, tasty, tasty-hunit, template-haskell
+     , text, time, transformers, transformers-base, unliftio
+     , unliftio-core, unordered-containers, uuid, vector, wai, warp
      }:
      mkDerivation {
        pname = "nakadi-client";
-       version = "0.4.1.0";
-       sha256 = "08f2gp9fvc6dlsqb6z50rpfb8rjnlwv2001q5aixlkslhhh0jhr7";
+       version = "0.5.0.0";
+       sha256 = "10n278iqy8kp6vdx1d5rdlsbsk74m9s0fyi3w1vprrs0va92a06b";
        libraryHaskellDepends = [
          aeson aeson-casing base bytestring conduit conduit-combinators
-         conduit-extra containers hashable http-client http-client-tls
-         http-conduit http-types iso8601-time lens monad-logger mtl
-         resourcet retry safe-exceptions scientific split template-haskell
-         text time transformers unordered-containers uuid vector
+         conduit-extra containers exceptions hashable http-client
+         http-client-tls http-conduit http-types iso8601-time lens
+         monad-control monad-logger mtl resourcet retry safe-exceptions
+         scientific split template-haskell text time transformers
+         transformers-base unliftio-core unordered-containers uuid vector
        ];
        testHaskellDepends = [
          aeson aeson-casing async base bytestring classy-prelude conduit
-         conduit-combinators conduit-extra containers hashable http-client
-         http-client-tls http-conduit http-types iso8601-time lens
-         lens-aeson monad-logger mtl random resourcet retry safe-exceptions
-         say scientific split stm tasty tasty-hunit template-haskell text
-         time transformers unordered-containers uuid vector wai warp
+         conduit-combinators conduit-extra containers exceptions fast-logger
+         hashable http-client http-client-tls http-conduit http-types
+         iso8601-time lens lens-aeson lifted-async monad-control
+         monad-logger mtl random resourcet retry safe-exceptions say
+         scientific split stm stm-chans stm-conduit tasty tasty-hunit
+         template-haskell text time transformers transformers-base unliftio
+         unliftio-core unordered-containers uuid vector wai warp
        ];
        homepage = "https://github.com/mtesseract/nakadi-haskell#readme";
        description = "Client library for the Nakadi Event Broker";
@@ -144454,6 +144828,33 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "nats-client" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, containers
+     , criterion, data-default, exceptions, hedgehog, hslogger
+     , monad-control, mtl, network, random, resource-pool
+     , test-framework, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "nats-client";
+       version = "0.1.0.0";
+       sha256 = "0xpxsz0y3f7mgqbbhk33yd9n7q260h3lf7brynmvqwmfbbkplkrg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson attoparsec base bytestring containers data-default exceptions
+         hslogger monad-control network random resource-pool text
+         transformers
+       ];
+       executableHaskellDepends = [ base bytestring network ];
+       testHaskellDepends = [
+         aeson base bytestring hedgehog mtl test-framework
+       ];
+       benchmarkHaskellDepends = [ base criterion time ];
+       homepage = "https://bitbucket.org/jpgneves/nats-client#readme";
+       description = "Another Haskell client for NATS (https://nats.io)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "nats-queue" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , dequeue, hspec, network, network-uri, random, text
@@ -144955,7 +145356,7 @@ self: {
      , monad-control-aligned, mtl, poly-arity, pred-set, pred-trie
      , regex-compat, semigroups, tasty, tasty-hspec, text, transformers
      , tries, unordered-containers, wai-middleware-content-type
-     , wai-middleware-verbs, wai-transformers, warp
+     , wai-middleware-verbs, wai-transformers
      }:
      mkDerivation {
        pname = "nested-routes";
@@ -144970,13 +145371,6 @@ self: {
          transformers tries unordered-containers wai-middleware-content-type
          wai-middleware-verbs wai-transformers
        ];
-       executableHaskellDepends = [
-         attoparsec base bytestring composition-extra errors exceptions
-         hashable hashtables HSet http-types mtl poly-arity pred-set
-         pred-trie regex-compat semigroups text transformers tries
-         unordered-containers wai-middleware-content-type
-         wai-middleware-verbs wai-transformers warp
-       ];
        testHaskellDepends = [
          attoparsec base bytestring composition-extra errors exceptions
          hashable hashtables HSet hspec hspec-wai http-types mtl poly-arity
@@ -145415,9 +145809,7 @@ self: {
      }) {};
 
   "netwire-input-glfw" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, directory
-     , filepath, GLFW-b, mtl, netwire, netwire-input, OpenGL, stm
-     , transformers
+    ({ mkDerivation, base, containers, GLFW-b, mtl, netwire-input, stm
      }:
      mkDerivation {
        pname = "netwire-input-glfw";
@@ -145428,13 +145820,27 @@ self: {
        libraryHaskellDepends = [
          base containers GLFW-b mtl netwire-input stm
        ];
-       executableHaskellDepends = [
-         array base bytestring containers directory filepath GLFW-b mtl
-         netwire netwire-input OpenGL transformers
+       homepage = "https://www.github.com/Mokosha/netwire-input-glfw";
+       description = "GLFW instance of netwire-input";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "netwire-input-glfw_0_0_8" = callPackage
+    ({ mkDerivation, base, containers, GLFW-b, mtl, netwire-input, stm
+     }:
+     mkDerivation {
+       pname = "netwire-input-glfw";
+       version = "0.0.8";
+       sha256 = "1nf0ikx6cfsm9xh4zmz64iwq4w92g0g3zalsk3zzd0a7pq74cdz9";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers GLFW-b mtl netwire-input stm
        ];
        homepage = "https://www.github.com/Mokosha/netwire-input-glfw";
        description = "GLFW instance of netwire-input";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "netwire-input-javascript" = callPackage
@@ -145515,7 +145921,7 @@ self: {
      }) {};
 
   "network-address" = callPackage
-    ({ mkDerivation, base, Cabal, criterion, QuickCheck, test-framework
+    ({ mkDerivation, base, Cabal, QuickCheck, test-framework
      , test-framework-quickcheck2
      }:
      mkDerivation {
@@ -145525,7 +145931,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Cabal ];
-       executableHaskellDepends = [ base Cabal criterion ];
        testHaskellDepends = [
          base Cabal QuickCheck test-framework test-framework-quickcheck2
        ];
@@ -146118,9 +146523,7 @@ self: {
      }) {};
 
   "network-service" = callPackage
-    ({ mkDerivation, base, base64-bytestring, bytestring, network
-     , network-simple
-     }:
+    ({ mkDerivation, base, base64-bytestring, bytestring, network }:
      mkDerivation {
        pname = "network-service";
        version = "0.1.0.0";
@@ -146130,9 +146533,6 @@ self: {
        libraryHaskellDepends = [
          base base64-bytestring bytestring network
        ];
-       executableHaskellDepends = [
-         base base64-bytestring bytestring network network-simple
-       ];
        homepage = "https://github.com/angerman/network-service";
        description = "Provide a service at the data type level";
        license = stdenv.lib.licenses.mit;
@@ -146355,10 +146755,9 @@ self: {
 
   "network-transport-zeromq" = callPackage
     ({ mkDerivation, async, base, binary, bytestring, containers
-     , criterion, data-accessor, distributed-process
-     , distributed-process-tests, exceptions, network, network-transport
-     , network-transport-tests, random, semigroups, stm, stm-chans
-     , tasty, tasty-hunit, test-framework, transformers, zeromq4-haskell
+     , criterion, data-accessor, distributed-process, exceptions
+     , network-transport, network-transport-tests, random, semigroups
+     , stm, stm-chans, tasty, tasty-hunit, transformers, zeromq4-haskell
      }:
      mkDerivation {
        pname = "network-transport-zeromq";
@@ -146371,13 +146770,9 @@ self: {
          network-transport random semigroups stm stm-chans transformers
          zeromq4-haskell
        ];
-       executableHaskellDepends = [
-         base binary bytestring criterion distributed-process
-       ];
        testHaskellDepends = [
-         base bytestring containers distributed-process-tests network
-         network-transport network-transport-tests stm stm-chans tasty
-         tasty-hunit test-framework zeromq4-haskell
+         base network-transport network-transport-tests tasty tasty-hunit
+         zeromq4-haskell
        ];
        benchmarkHaskellDepends = [
          base binary bytestring criterion distributed-process
@@ -146640,9 +147035,8 @@ self: {
 
   "newt" = callPackage
     ({ mkDerivation, array, base, bytestring, cmdargs, containers
-     , directory, filemanip, filepath, HUnit, mtl, process, QuickCheck
-     , safe, test-framework, test-framework-hunit
-     , test-framework-quickcheck2, text, Unixutils, uuid
+     , directory, filemanip, filepath, mtl, process, safe, text
+     , Unixutils
      }:
      mkDerivation {
        pname = "newt";
@@ -146654,11 +147048,7 @@ self: {
          array base bytestring cmdargs containers directory filemanip
          filepath mtl process safe text Unixutils
        ];
-       executableHaskellDepends = [
-         base cmdargs containers directory filepath HUnit mtl process
-         QuickCheck safe test-framework test-framework-hunit
-         test-framework-quickcheck2 Unixutils uuid
-       ];
+       executableHaskellDepends = [ base cmdargs containers mtl ];
        description = "A trivially simple app to create things from simple templates";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -146707,6 +147097,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "newtype-generics_0_5_2_1" = callPackage
+    ({ mkDerivation, base, criterion, hspec, hspec-discover, HUnit
+     , semigroups, transformers
+     }:
+     mkDerivation {
+       pname = "newtype-generics";
+       version = "0.5.2.1";
+       sha256 = "1wdm6mg78a5cipbvqinbh33266rgk0axxzdchpzfdxw1iz4xs4nk";
+       libraryHaskellDepends = [ base transformers ];
+       testHaskellDepends = [ base hspec HUnit ];
+       testToolDepends = [ hspec-discover ];
+       benchmarkHaskellDepends = [ base criterion semigroups ];
+       description = "A typeclass and set of functions for working with newtypes, with generics support";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "newtype-th" = callPackage
     ({ mkDerivation, base, haskell-src-meta, newtype, syb
      , template-haskell
@@ -146774,7 +147181,7 @@ self: {
      }) {};
 
   "nfc" = callPackage
-    ({ mkDerivation, base, base16-bytestring, bytestring, c2hs, nfc }:
+    ({ mkDerivation, base, bytestring, c2hs, nfc }:
      mkDerivation {
        pname = "nfc";
        version = "0.1.0";
@@ -146784,7 +147191,6 @@ self: {
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ nfc ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [ base base16-bytestring bytestring ];
        homepage = "https://github.com/centromere/nfc#readme";
        description = "libnfc bindings";
        license = stdenv.lib.licenses.publicDomain;
@@ -146817,8 +147223,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export";
-       version = "1.2.0";
-       sha256 = "0yfhipk0d7cap44ydva2aww72csz68j3rxn5kb664gc1wg5dp58a";
+       version = "1.3.0";
+       sha256 = "1x4na14387sr26lnjmxdnk8gl41pfi4xq3r5a37yl45l4gdhr5hs";
        libraryHaskellDepends = [
          async base binary bytestring deepseq monad-loops template-haskell
          unix
@@ -146976,29 +147382,43 @@ self: {
      }) {};
 
   "nirum" = callPackage
-    ({ mkDerivation, base, cmdargs, containers, directory, filepath
-     , hlint, hspec, hspec-core, hspec-meta, interpolatedstring-perl6
-     , megaparsec, mtl, process, semigroups, semver, temporary, text
+    ({ mkDerivation, base, blaze-html, blaze-markup, bytestring, cmark
+     , containers, directory, email-validate, filepath, fsnotify
+     , heterocephalus, hlint, hspec, hspec-core, hspec-meta, htoml
+     , interpolatedstring-perl6, megaparsec, mtl, optparse-applicative
+     , parsec, pretty, process, semigroups, semver, shakespeare, stm
+     , string-qq, template-haskell, temporary, text, turtle
+     , unordered-containers, uri
      }:
      mkDerivation {
        pname = "nirum";
-       version = "0.2.0";
-       sha256 = "1bn9sifnp4m7jd4ps27j1rniwb9v7wrycdb8mabimn7n7ir7hjkw";
+       version = "0.3.0";
+       sha256 = "1s9yk0gjly0camg3crk0nk2943maizgija415lrd0b8ykgm97ax6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base cmdargs containers directory filepath interpolatedstring-perl6
-         megaparsec mtl semver text
+         base blaze-html blaze-markup bytestring cmark containers directory
+         email-validate filepath fsnotify heterocephalus htoml
+         interpolatedstring-perl6 megaparsec mtl optparse-applicative parsec
+         pretty semver shakespeare stm template-haskell text
+         unordered-containers uri
+       ];
+       executableHaskellDepends = [
+         base blaze-html bytestring containers directory email-validate
+         filepath htoml interpolatedstring-perl6 megaparsec mtl parsec
+         pretty semver text unordered-containers
        ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base containers directory filepath hlint hspec hspec-core
-         hspec-meta interpolatedstring-perl6 megaparsec mtl process
-         semigroups semver temporary text
+         base blaze-html bytestring containers directory email-validate
+         filepath hlint hspec hspec-core hspec-meta htoml
+         interpolatedstring-perl6 megaparsec mtl parsec pretty process
+         semigroups semver string-qq temporary text turtle
+         unordered-containers
        ];
-       homepage = "https://github.com/spoqa/nirum";
+       homepage = "http://nirum.org/";
        description = "IDL compiler and RPC/distributed object framework for microservices";
        license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "nist-beacon" = callPackage
@@ -147619,6 +148039,20 @@ self: {
        license = "GPL";
      }) {};
 
+  "non-negative_0_1_2" = callPackage
+    ({ mkDerivation, base, QuickCheck, semigroups, utility-ht }:
+     mkDerivation {
+       pname = "non-negative";
+       version = "0.1.2";
+       sha256 = "0f01q916dzkl1i0v15qrw9cviycki5g3fgi6x8gs45iwbzssq52n";
+       libraryHaskellDepends = [ base QuickCheck semigroups utility-ht ];
+       testHaskellDepends = [ base QuickCheck semigroups utility-ht ];
+       homepage = "http://code.haskell.org/~thielema/non-negative/";
+       description = "Non-negative numbers";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "nonce" = callPackage
     ({ mkDerivation, base, base64-bytestring, bytestring, entropy, text
      , transformers, unliftio, unliftio-core
@@ -147685,7 +148119,7 @@ self: {
      }) {};
 
   "nonlinear-optimization-ad" = callPackage
-    ({ mkDerivation, ad, base, csv, nonlinear-optimization, primitive
+    ({ mkDerivation, ad, base, nonlinear-optimization, primitive
      , reflection, vector
      }:
      mkDerivation {
@@ -147699,7 +148133,6 @@ self: {
        libraryHaskellDepends = [
          ad base nonlinear-optimization primitive reflection vector
        ];
-       executableHaskellDepends = [ base csv ];
        homepage = "https://github.com/msakai/nonlinear-optimization-ad";
        description = "Wrapper of nonlinear-optimization package for using with AD package";
        license = stdenv.lib.licenses.gpl3;
@@ -148342,6 +148775,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "numeric-prelude_0_4_3" = callPackage
+    ({ mkDerivation, array, base, containers, deepseq, non-negative
+     , parsec, QuickCheck, random, semigroups, storable-record
+     , utility-ht
+     }:
+     mkDerivation {
+       pname = "numeric-prelude";
+       version = "0.4.3";
+       sha256 = "0bc937gblm8rz68fr3q2ms19hqjwi20wkmn1k1c0b675c2kgky5q";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         array base containers deepseq non-negative parsec QuickCheck random
+         semigroups storable-record utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/Numeric_Prelude";
+       description = "An experimental alternative hierarchy of numeric type classes";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "numeric-qq" = callPackage
     ({ mkDerivation, base, directory, doctest, filepath, loch-th
      , placeholders, template-haskell
@@ -148466,8 +148920,8 @@ self: {
      }:
      mkDerivation {
        pname = "numhask-histogram";
-       version = "0.0.0.1";
-       sha256 = "1a7kd8va59rzsfsxin5m785ihpka3al53kfv16cz9p7kw9bjpanf";
+       version = "0.0.1.0";
+       sha256 = "1s8z2fwgrnsaq0w9zda5rpf9dcrd51dqaq118r6pi2r7y1vwzd6k";
        libraryHaskellDepends = [
          base containers foldl numhask numhask-range protolude tdigest
        ];
@@ -148893,8 +149347,7 @@ self: {
 
   "oberon0" = callPackage
     ({ mkDerivation, array, AspectAG, base, containers, ghc-prim, HList
-     , language-c, mtl, murder, template-haskell, transformers
-     , uu-parsinglib, uulib
+     , mtl, murder, template-haskell, transformers, uu-parsinglib, uulib
      }:
      mkDerivation {
        pname = "oberon0";
@@ -148906,10 +149359,6 @@ self: {
          array AspectAG base containers ghc-prim HList mtl murder
          template-haskell transformers uu-parsinglib uulib
        ];
-       executableHaskellDepends = [
-         AspectAG base containers HList language-c murder uu-parsinglib
-         uulib
-       ];
        doHaddock = false;
        homepage = "http://www.cs.uu.nl/wiki/Center/CoCoCo";
        description = "Oberon0 Compiler";
@@ -150706,7 +151155,7 @@ self: {
 
   "opml-conduit" = callPackage
     ({ mkDerivation, base, bytestring, case-insensitive, conduit
-     , conduit-combinators, containers, data-default, hlint, lens-simple
+     , conduit-combinators, containers, data-default, lens-simple
      , mono-traversable, monoid-subclasses, mtl, parsers, QuickCheck
      , quickcheck-instances, resourcet, safe-exceptions, semigroups
      , tasty, tasty-hunit, tasty-quickcheck, text, time, timerep
@@ -150724,7 +151173,7 @@ self: {
        ];
        testHaskellDepends = [
          base bytestring conduit conduit-combinators containers data-default
-         hlint lens-simple mono-traversable mtl parsers QuickCheck
+         lens-simple mono-traversable mtl parsers QuickCheck
          quickcheck-instances resourcet semigroups tasty tasty-hunit
          tasty-quickcheck text time uri-bytestring xml-conduit
        ];
@@ -152198,9 +152647,8 @@ self: {
          xml-conduit yaml
        ];
        executableHaskellDepends = [
-         aeson aeson-pretty attoparsec base bytestring containers directory
-         filepath mtl pandoc pandoc-types process syb temporary text vector
-         yaml
+         aeson aeson-pretty attoparsec base bytestring filepath pandoc
+         pandoc-types syb text yaml
        ];
        testHaskellDepends = [
          aeson base bytestring containers directory filepath mtl pandoc
@@ -152212,7 +152660,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "pandoc-citeproc_0_14_1_3" = callPackage
+  "pandoc-citeproc_0_14_1_4" = 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
@@ -152221,8 +152669,8 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc-citeproc";
-       version = "0.14.1.3";
-       sha256 = "17cwa8h3jwfxrah496vlabz6mxkjys6pjl51iigllqbwj7cm34mp";
+       version = "0.14.1.4";
+       sha256 = "1agc7qh9sfhqy329w0ccbfx081001k93qk9h6br5gx2yqizwbdd0";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -152234,9 +152682,8 @@ self: {
          xml-conduit yaml
        ];
        executableHaskellDepends = [
-         aeson aeson-pretty attoparsec base bytestring containers directory
-         filepath mtl pandoc pandoc-types process syb temporary text vector
-         yaml
+         aeson aeson-pretty attoparsec base bytestring filepath pandoc
+         pandoc-types syb text yaml
        ];
        testHaskellDepends = [
          aeson base bytestring containers directory filepath mtl pandoc
@@ -153412,13 +153859,12 @@ self: {
      }) {};
 
   "parconc-examples" = callPackage
-    ({ mkDerivation, abstract-par, accelerate, accelerate-io, array
-     , async, base, binary, bytestring, containers, deepseq, directory
+    ({ mkDerivation, abstract-par, accelerate, array, async, base
+     , binary, bytestring, containers, deepseq, directory
      , distributed-process, distributed-process-simplelocalnet
-     , distributed-static, fclabels, filepath, http-conduit, monad-par
-     , network, network-uri, normaldistribution, parallel, random, repa
-     , stm, template-haskell, time, transformers, utf8-string, vector
-     , xml
+     , distributed-static, filepath, http-conduit, monad-par, network
+     , network-uri, normaldistribution, parallel, random, repa, stm
+     , template-haskell, time, transformers, utf8-string, vector, xml
      }:
      mkDerivation {
        pname = "parconc-examples";
@@ -153427,12 +153873,12 @@ self: {
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         abstract-par accelerate accelerate-io array async base binary
-         bytestring containers deepseq directory distributed-process
-         distributed-process-simplelocalnet distributed-static fclabels
-         filepath http-conduit monad-par network network-uri
-         normaldistribution parallel random repa stm template-haskell time
-         transformers utf8-string vector xml
+         abstract-par accelerate array async base binary bytestring
+         containers deepseq directory distributed-process
+         distributed-process-simplelocalnet distributed-static filepath
+         http-conduit monad-par network network-uri normaldistribution
+         parallel random repa stm template-haskell time transformers
+         utf8-string vector xml
        ];
        homepage = "http://github.com/simonmar/parconc-examples";
        description = "Examples to accompany the book \"Parallel and Concurrent Programming in Haskell\"";
@@ -154420,6 +154866,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pathtype_0_8_1" = callPackage
+    ({ mkDerivation, base, deepseq, directory, old-time, QuickCheck
+     , random, semigroups, tagged, time, transformers, utility-ht
+     }:
+     mkDerivation {
+       pname = "pathtype";
+       version = "0.8.1";
+       sha256 = "03rlj8klzxqimjv44h07xbij0acr63pddxppq9yfjlyggmaxrrnm";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base deepseq directory old-time QuickCheck semigroups tagged time
+         transformers utility-ht
+       ];
+       testHaskellDepends = [ base random ];
+       homepage = "http://hub.darcs.net/thielema/pathtype/";
+       description = "Type-safe replacement for System.FilePath etc";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "pathwalk" = callPackage
     ({ mkDerivation, base, directory, filepath, transformers }:
      mkDerivation {
@@ -155218,7 +155685,6 @@ self: {
          base hashtables haskell-src-meta ListLike monad-control mtl
          template-haskell
        ];
-       executableHaskellDepends = [ base ];
        homepage = "http://tanakh.github.com/Peggy";
        description = "The Parser Generator for Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -155516,28 +155982,29 @@ self: {
      }) {};
 
   "perfect-hash-generator" = callPackage
-    ({ mkDerivation, base, containers, data-ordlist, directory
-     , filepath, hashable, HUnit, optparse-applicative, random
-     , test-framework, test-framework-hunit, unordered-containers
-     , vector
+    ({ mkDerivation, base, binary, bytestring, containers, data-ordlist
+     , directory, filepath, hashable, HUnit, optparse-applicative
+     , random, test-framework, test-framework-hunit, text
+     , unordered-containers, vector
      }:
      mkDerivation {
        pname = "perfect-hash-generator";
-       version = "0.1.0.4";
-       sha256 = "1g3z5q3wq1rzch3l6nb9x3k828hlrmqwqwyr5iz979rm0iif7yfy";
+       version = "0.2.0.6";
+       sha256 = "045iyxjnx1yzl9xqk5fv8qxjz29sg2pfndry1v24z6a5r88pcwnz";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base containers data-ordlist directory filepath hashable
-         unordered-containers vector
+         base binary bytestring containers data-ordlist directory filepath
+         hashable text unordered-containers vector
        ];
        executableHaskellDepends = [
-         base containers hashable optparse-applicative random
-         unordered-containers vector
+         base binary bytestring containers hashable optparse-applicative
+         random text unordered-containers vector
        ];
        testHaskellDepends = [
-         base hashable HUnit optparse-applicative test-framework
-         test-framework-hunit unordered-containers vector
+         base binary bytestring hashable HUnit optparse-applicative
+         test-framework test-framework-hunit text unordered-containers
+         vector
        ];
        homepage = "https://github.com/kostmo/perfect-hash-generator#readme";
        description = "Perfect minimal hashing implementation in native Haskell";
@@ -156224,7 +156691,6 @@ self: {
          monad-logger old-locale persistent resource-pool resourcet text
          time transformers unordered-containers
        ];
-       executableHaskellDepends = [ base monad-logger ];
        testHaskellDepends = [
          base hspec persistent persistent-template temporary text time
          transformers
@@ -156252,7 +156718,6 @@ self: {
          old-locale persistent resource-pool resourcet text time
          transformers unliftio-core unordered-containers
        ];
-       executableHaskellDepends = [ base monad-logger ];
        testHaskellDepends = [
          base hspec persistent persistent-template temporary text time
          transformers
@@ -157384,12 +157849,11 @@ self: {
   "pinpon" = callPackage
     ({ mkDerivation, aeson, aeson-pretty, amazonka, amazonka-core
      , amazonka-sns, base, bytestring, containers, doctest, exceptions
-     , hpio, hspec, http-client, http-client-tls, http-types, lens
-     , lucid, mtl, network, optparse-applicative, optparse-text
-     , protolude, QuickCheck, quickcheck-instances, resourcet, servant
-     , servant-client, servant-docs, servant-lucid, servant-server
-     , servant-swagger, servant-swagger-ui, swagger2, text, time
-     , transformers, transformers-base, wai, warp
+     , hpio, http-client, http-client-tls, http-types, lens, lucid, mtl
+     , network, optparse-applicative, optparse-text, protolude
+     , resourcet, servant, servant-client, servant-docs, servant-lucid
+     , servant-server, servant-swagger, servant-swagger-ui, swagger2
+     , text, time, transformers, transformers-base, wai, warp
      }:
      mkDerivation {
        pname = "pinpon";
@@ -157411,10 +157875,7 @@ self: {
          optparse-applicative optparse-text protolude servant-client text
          time transformers warp
        ];
-       testHaskellDepends = [
-         aeson base bytestring doctest exceptions hspec protolude QuickCheck
-         quickcheck-instances servant-swagger
-       ];
+       testHaskellDepends = [ base doctest protolude ];
        homepage = "https://github.com/quixoftic/pinpon#readme";
        description = "A gateway for various cloud notification services";
        license = stdenv.lib.licenses.bsd3;
@@ -158069,6 +158530,7 @@ self: {
        homepage = "https://github.com/boothead/pipes-kafka";
        description = "Kafka in the Pipes ecosystem";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "pipes-key-value-csv" = callPackage
@@ -158507,9 +158969,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring pipes pipes-safe semigroups zeromq4-haskell
        ];
-       executableHaskellDepends = [
-         base bytestring pipes pipes-safe semigroups zeromq4-haskell
-       ];
        homepage = "https://github.com/peddie/pipes-zeromq4";
        description = "Pipes integration for ZeroMQ messaging";
        license = stdenv.lib.licenses.bsd3;
@@ -159682,6 +160141,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "poll_0_0_0_1" = callPackage
+    ({ mkDerivation, base, enumset, utility-ht }:
+     mkDerivation {
+       pname = "poll";
+       version = "0.0.0.1";
+       sha256 = "0agdl2bxw7ca05kqyc8dix4kvjdh67i91hn1scmcngjd3gz8gzmr";
+       libraryHaskellDepends = [ base enumset utility-ht ];
+       description = "Bindings to poll.h";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "poly-arity" = callPackage
     ({ mkDerivation, base, constraints }:
      mkDerivation {
@@ -160531,8 +161002,8 @@ self: {
      }:
      mkDerivation {
        pname = "postgres-embedded";
-       version = "0.1.8";
-       sha256 = "06jxpf42rkw3yasknabp6zkns9y06pakkfrazqiwq2xk6kaj8h0n";
+       version = "0.2.0";
+       sha256 = "1xaf6iqlv1adg0xcmzj6ynfq3r43qafs98z9lfk2hms28g03a71y";
        libraryHaskellDepends = [
          base directory filepath network process
        ];
@@ -161140,8 +161611,8 @@ self: {
 
   "postie" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, cprng-aes
-     , data-default-class, mtl, network, pipes, pipes-bytestring
-     , pipes-parse, stringsearch, tls, transformers, uuid
+     , data-default-class, mtl, network, pipes, pipes-parse
+     , stringsearch, tls, transformers, uuid
      }:
      mkDerivation {
        pname = "postie";
@@ -161153,9 +161624,6 @@ self: {
          attoparsec base bytestring cprng-aes data-default-class mtl network
          pipes pipes-parse stringsearch tls transformers uuid
        ];
-       executableHaskellDepends = [
-         base bytestring data-default-class pipes pipes-bytestring tls
-       ];
        description = "SMTP server library to receive emails from within Haskell programs";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -161175,7 +161643,6 @@ self: {
          aeson attoparsec base bytestring containers http-client-tls
          http-types network-api-support text
        ];
-       executableHaskellDepends = [ base text ];
        homepage = "https://github.com/apiengine/postmark";
        description = "Library for postmarkapp.com HTTP Api";
        license = stdenv.lib.licenses.bsd3;
@@ -161459,13 +161926,12 @@ self: {
      }) {};
 
   "pqc" = callPackage
-    ({ mkDerivation, base, ChasingBottoms, QuickCheck, random, stm }:
+    ({ mkDerivation, base, QuickCheck, random, stm }:
      mkDerivation {
        pname = "pqc";
        version = "0.8";
        sha256 = "1n71qhlxn9js5cizyqdq9f7m08m5j0354871r8b47bnzdi2kqkc4";
        libraryHaskellDepends = [ base QuickCheck random stm ];
-       testHaskellDepends = [ base ChasingBottoms ];
        homepage = "http://hub.darcs.net/shelarcy/pqc";
        description = "Parallel batch driver for QuickCheck";
        license = stdenv.lib.licenses.bsd3;
@@ -161751,8 +162217,8 @@ self: {
     ({ mkDerivation, base, hspec, regex-pcre-builtin }:
      mkDerivation {
        pname = "prefix-expression";
-       version = "1.2.3";
-       sha256 = "0hcp7wfgqcbqlkg60zy5c1b9gyvzkr678m4qpjxsv07x33h0xgnr";
+       version = "1.2.4";
+       sha256 = "03gnfh84vpd66i8mnnx5y1ci20p7ykic9cnnsvz3bddfvwp4silr";
        libraryHaskellDepends = [ base regex-pcre-builtin ];
        testHaskellDepends = [ base hspec ];
        homepage = "https://github.com/VonFry/prefix-expression";
@@ -161778,10 +162244,9 @@ self: {
      }) {};
 
   "prefork" = callPackage
-    ({ mkDerivation, async, base, blaze-builder, bytestring, cab
-     , cmdargs, containers, data-default, directory, filepath, hspec
-     , http-types, network, process, stm, system-argv0, system-filepath
-     , unix, wai, warp
+    ({ mkDerivation, base, cab, containers, data-default, directory
+     , filepath, hspec, process, stm, system-argv0, system-filepath
+     , unix
      }:
      mkDerivation {
        pname = "prefork";
@@ -161793,10 +162258,6 @@ self: {
          base containers data-default process stm system-argv0
          system-filepath unix
        ];
-       executableHaskellDepends = [
-         async base blaze-builder bytestring cmdargs containers http-types
-         network stm unix wai warp
-       ];
        testHaskellDepends = [
          base cab containers directory filepath hspec process stm unix
        ];
@@ -162207,8 +162668,8 @@ self: {
      }) {};
 
   "pretty-simple" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, bytestring, containers
-     , criterion, doctest, Glob, mtl, parsec, text, transformers
+    ({ mkDerivation, ansi-terminal, base, containers, criterion
+     , doctest, Glob, mtl, parsec, text, transformers
      }:
      mkDerivation {
        pname = "pretty-simple";
@@ -162219,7 +162680,6 @@ self: {
        libraryHaskellDepends = [
          ansi-terminal base containers mtl parsec text transformers
        ];
-       executableHaskellDepends = [ aeson base bytestring text ];
        testHaskellDepends = [ base doctest Glob ];
        benchmarkHaskellDepends = [ base criterion ];
        homepage = "https://github.com/cdepillabout/pretty-simple";
@@ -162302,8 +162762,7 @@ self: {
   "prettyprinter" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers
      , criterion, deepseq, doctest, mtl, pgp-wordlist, QuickCheck
-     , random, tasty, tasty-hunit, tasty-quickcheck, template-haskell
-     , text, transformers
+     , random, tasty, tasty-hunit, tasty-quickcheck, text, transformers
      }:
      mkDerivation {
        pname = "prettyprinter";
@@ -162312,7 +162771,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base text ];
-       executableHaskellDepends = [ base template-haskell text ];
        testHaskellDepends = [
          base bytestring doctest pgp-wordlist tasty tasty-hunit
          tasty-quickcheck text
@@ -162326,6 +162784,32 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "prettyprinter_1_2_0_1" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, bytestring, containers
+     , criterion, deepseq, doctest, mtl, pgp-wordlist, QuickCheck
+     , random, tasty, tasty-hunit, tasty-quickcheck, text, transformers
+     }:
+     mkDerivation {
+       pname = "prettyprinter";
+       version = "1.2.0.1";
+       sha256 = "0rh5bb6inq4yvv6r53sc1q3msmpvjcq8fw4sn3vwivrq44c7nf8i";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base text ];
+       testHaskellDepends = [
+         base bytestring doctest pgp-wordlist tasty tasty-hunit
+         tasty-quickcheck text
+       ];
+       benchmarkHaskellDepends = [
+         ansi-wl-pprint base containers criterion deepseq mtl QuickCheck
+         random text transformers
+       ];
+       homepage = "http://github.com/quchen/prettyprinter";
+       description = "A modern, easy to use, well-documented, extensible prettyprinter";
+       license = stdenv.lib.licenses.bsd2;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "prettyprinter-ansi-terminal" = callPackage
     ({ mkDerivation, ansi-terminal, base, doctest, prettyprinter, text
      }:
@@ -162348,8 +162832,8 @@ self: {
        pname = "prettyprinter-compat-annotated-wl-pprint";
        version = "1";
        sha256 = "0zpmpbpnyxqswfb7gdj0kwz7hw606fj1iwkpl1qv0xcxk6n9n99c";
-       revision = "2";
-       editedCabalFile = "175bchsbx8vws1gx83z9f0l30p95353l0gyds5b0k5b5sj4fzw13";
+       revision = "3";
+       editedCabalFile = "0vzi7id60pfj35xp61akzvfx9x6py45r5b8343i48ljpir91rvgw";
        libraryHaskellDepends = [ base prettyprinter text ];
        homepage = "http://github.com/quchen/prettyprinter";
        description = "Prettyprinter compatibility module for previous users of the annotated-wl-pprint package";
@@ -162364,6 +162848,8 @@ self: {
        pname = "prettyprinter-compat-ansi-wl-pprint";
        version = "1.0.1";
        sha256 = "0gzpjddnxl4z8pvb0lyal13jbr94dk900k8g4qwcq9fs26vnnb81";
+       revision = "1";
+       editedCabalFile = "0rzvap56ygygzs95091ipmcdc7n76sczc2dk88g4nr7zskb2nf1k";
        libraryHaskellDepends = [
          base prettyprinter prettyprinter-ansi-terminal text
        ];
@@ -162378,8 +162864,8 @@ self: {
        pname = "prettyprinter-compat-wl-pprint";
        version = "1.0.0.1";
        sha256 = "17jj8m9s3cp1s1szpy67g7wni9ssid78jqksh3aym7p6ci81y8km";
-       revision = "2";
-       editedCabalFile = "0j495j9crv6qi7rq044x6bx8688zqybx5w02cbv54w208ii1pzcl";
+       revision = "3";
+       editedCabalFile = "0cb1i1hmr6wl8lacy3w822h273lapqhp537snxgbmhf9xvfckbpr";
        libraryHaskellDepends = [ base prettyprinter text ];
        homepage = "http://github.com/quchen/prettyprinter";
        description = "Prettyprinter compatibility module for previous users of the wl-pprint package";
@@ -163356,7 +163842,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base io-reactive ];
-       executableHaskellDepends = [ base ];
        description = "Progressbar API";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -163773,8 +164258,8 @@ self: {
      }:
      mkDerivation {
        pname = "propellor";
-       version = "5.3.1";
-       sha256 = "1mcs593ynn5x4i5qcdkbkqx3cyqmza0jz6vl8q5a3x8fydmq6n98";
+       version = "5.3.2";
+       sha256 = "1jv4yzls8l4blnvmrrbwljx999g92gklpj52pn1r48sh40sqa7l1";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -163871,7 +164356,7 @@ self: {
      }) {};
 
   "proteaaudio" = callPackage
-    ({ mkDerivation, base, bytestring, c2hs, filepath, libpulseaudio }:
+    ({ mkDerivation, base, bytestring, c2hs, libpulseaudio }:
      mkDerivation {
        pname = "proteaaudio";
        version = "0.7.0.1";
@@ -163881,7 +164366,6 @@ self: {
        libraryHaskellDepends = [ base bytestring ];
        librarySystemDepends = [ libpulseaudio ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [ base bytestring filepath ];
        description = "Simple audio library for Windows, Linux, OSX";
        license = stdenv.lib.licenses.bsd3;
      }) {inherit (pkgs) libpulseaudio;};
@@ -164830,7 +165314,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base containers stm unix ];
        librarySystemDepends = [ libpulseaudio ];
-       executableHaskellDepends = [ base ];
        description = "A low-level (incomplete) wrapper around the pulseaudio client asynchronous api";
        license = stdenv.lib.licenses.lgpl3;
      }) {inherit (pkgs) libpulseaudio;};
@@ -165115,6 +165598,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "purescript-tsd-gen" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , filepath, mtl, optparse-applicative, purescript, text
+     }:
+     mkDerivation {
+       pname = "purescript-tsd-gen";
+       version = "0.1.0.0";
+       sha256 = "0wnj2gvibwcdpbwz9hbn773ircp8rm85klb318933s27fl2z0zfb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers directory filepath mtl purescript
+         text
+       ];
+       executableHaskellDepends = [
+         aeson base bytestring containers directory filepath mtl
+         optparse-applicative purescript text
+       ];
+       homepage = "https://github.com/minoki/purescript-tsd-gen#readme";
+       description = "TypeScript Declaration File (.d.ts) generator for PureScript";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pursuit-client" = callPackage
     ({ mkDerivation, base, http-client, lens, taggy-lens, text, wreq }:
      mkDerivation {
@@ -166250,7 +166756,6 @@ self: {
        libraryHaskellDepends = [
          ansi-terminal base readline terminal-size
        ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/yamadapc/haskell-questioner.git";
        description = "A package for prompting values from the command-line";
        license = stdenv.lib.licenses.mit;
@@ -166336,9 +166841,8 @@ self: {
 
   "quickbooks" = callPackage
     ({ mkDerivation, aeson, authenticate-oauth, base, bytestring
-     , doctest, email-validate, fast-logger, http-client
-     , http-client-tls, http-types, interpolate, old-locale, text, thyme
-     , yaml
+     , email-validate, fast-logger, http-client, http-client-tls
+     , http-types, interpolate, old-locale, text, thyme, yaml
      }:
      mkDerivation {
        pname = "quickbooks";
@@ -166349,7 +166853,6 @@ self: {
          http-client http-client-tls http-types interpolate old-locale text
          thyme yaml
        ];
-       testHaskellDepends = [ base doctest ];
        description = "QuickBooks API binding";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -166527,17 +167030,12 @@ self: {
      }) {};
 
   "quickcheck-property-monad" = callPackage
-    ({ mkDerivation, base, directory, doctest, either, filepath
-     , QuickCheck, transformers
-     }:
+    ({ mkDerivation, base, either, QuickCheck, transformers }:
      mkDerivation {
        pname = "quickcheck-property-monad";
        version = "0.2.4";
        sha256 = "0sp7592jfh6i8xsykl2lv8bspnp755fnpqvqa09dhwq6hm0r1r9c";
        libraryHaskellDepends = [ base either QuickCheck transformers ];
-       testHaskellDepends = [
-         base directory doctest filepath QuickCheck
-       ];
        homepage = "http://github.com/bennofs/quickcheck-property-monad/";
        description = "A monad for generating QuickCheck properties without Arbitrary instances";
        license = stdenv.lib.licenses.bsd3;
@@ -166756,8 +167254,7 @@ self: {
      }) {};
 
   "quickpull" = callPackage
-    ({ mkDerivation, barecheck, base, directory, filepath, QuickCheck
-     }:
+    ({ mkDerivation, base, directory, filepath, QuickCheck }:
      mkDerivation {
        pname = "quickpull";
        version = "0.4.2.2";
@@ -166765,9 +167262,7 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base directory filepath QuickCheck ];
-       executableHaskellDepends = [
-         barecheck base directory filepath QuickCheck
-       ];
+       executableHaskellDepends = [ base directory filepath QuickCheck ];
        testHaskellDepends = [ base directory filepath QuickCheck ];
        homepage = "http://www.github.com/massysett/quickpull";
        description = "Generate Main module with QuickCheck tests";
@@ -168900,7 +169395,6 @@ self: {
          aeson base bytestring deepseq mtl template-haskell text time
          unordered-containers
        ];
-       executableHaskellDepends = [ aeson base deepseq text time ];
        homepage = "https://bitbucket.org/wuzzeb/react-flux";
        description = "A binding to React based on the Flux application architecture for GHCJS";
        license = stdenv.lib.licenses.bsd3;
@@ -169209,16 +169703,17 @@ self: {
     ({ mkDerivation, base, containers, data-accessor, event-list
      , explicit-exception, extensible-exceptions, jack, midi
      , non-negative, random, reactive-banana-bunch, reactive-midyim
-     , transformers, utility-ht
+     , semigroups, transformers, utility-ht
      }:
      mkDerivation {
        pname = "reactive-jack";
-       version = "0.4";
-       sha256 = "13j51qg9ph4vq5v4z94q8i5lfd8sr3v6ln1740g24v90j28gh87i";
+       version = "0.4.1";
+       sha256 = "124fpfv486dm8cpgfdnrmckkk8y6ia4nwzapvnfghkslizzlbfab";
        libraryHaskellDepends = [
          base containers data-accessor event-list explicit-exception
          extensible-exceptions jack midi non-negative random
-         reactive-banana-bunch reactive-midyim transformers utility-ht
+         reactive-banana-bunch reactive-midyim semigroups transformers
+         utility-ht
        ];
        homepage = "http://www.haskell.org/haskellwiki/Reactive-balsa";
        description = "Process MIDI events via reactive-banana and JACK";
@@ -169228,16 +169723,17 @@ self: {
   "reactive-midyim" = callPackage
     ({ mkDerivation, base, containers, data-accessor
      , data-accessor-transformers, event-list, midi, non-negative
-     , random, reactive-banana-bunch, transformers, utility-ht
+     , random, reactive-banana-bunch, semigroups, transformers
+     , utility-ht
      }:
      mkDerivation {
        pname = "reactive-midyim";
-       version = "0.4.0.1";
-       sha256 = "1ck2f8nhlhcw9vyh42svp94xrnd4jcvic2kzxikw50vjcd4w6rrf";
+       version = "0.4.1";
+       sha256 = "1dx07c4d4sw7a797d1ap9ja48lhx37hbizhajgcf1qpilxgd4lvv";
        libraryHaskellDepends = [
          base containers data-accessor data-accessor-transformers event-list
-         midi non-negative random reactive-banana-bunch transformers
-         utility-ht
+         midi non-negative random reactive-banana-bunch semigroups
+         transformers utility-ht
        ];
        homepage = "http://www.haskell.org/haskellwiki/Reactive-balsa";
        description = "Process MIDI events via reactive-banana";
@@ -170607,9 +171103,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base data-default exceptions lens mtl ];
-       executableHaskellDepends = [
-         base data-default exceptions lens mtl
-       ];
        homepage = "https://github.com/konn/refresht#readme";
        description = "Environment Monad with automatic resource refreshment";
        license = stdenv.lib.licenses.bsd3;
@@ -171642,8 +172135,8 @@ self: {
 
   "relational-record-examples" = callPackage
     ({ mkDerivation, base, HDBC, HDBC-session, HDBC-sqlite3
-     , persistable-record, product-isomorphic, relational-query
-     , relational-query-HDBC, relational-schemas, template-haskell, time
+     , persistable-record, relational-query, relational-query-HDBC
+     , relational-schemas, template-haskell
      }:
      mkDerivation {
        pname = "relational-record-examples";
@@ -171656,9 +172149,6 @@ self: {
          relational-query relational-query-HDBC relational-schemas
          template-haskell
        ];
-       executableHaskellDepends = [
-         base product-isomorphic relational-query template-haskell time
-       ];
        description = "Examples of Haskell Relationa Record";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -172256,9 +172746,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base hsndfile repa ];
-       executableHaskellDepends = [
-         base hsndfile hsndfile-vector repa vector
-       ];
        testHaskellDepends = [
          base directory filepath hsndfile hsndfile-vector repa vector
        ];
@@ -172572,6 +173059,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "req-url-extra" = callPackage
+    ({ mkDerivation, aeson, base, data-default-class, hspec, modern-uri
+     , req, text
+     }:
+     mkDerivation {
+       pname = "req-url-extra";
+       version = "0.1.0.0";
+       sha256 = "113xsf37kra3k3jhf2wh37rsgphxz24rsn3dy8zw1cwzsim2dpmk";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base modern-uri req ];
+       executableHaskellDepends = [
+         aeson base data-default-class modern-uri req text
+       ];
+       testHaskellDepends = [ base hspec modern-uri req ];
+       homepage = "https://github.com/rcook/req-url-extra#readme";
+       description = "Provides URI/URL helper functions for use with Req";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "reqcatcher" = callPackage
     ({ mkDerivation, base, http-client, http-types, HUnit, lens
      , network, tasty, tasty-hunit, text, wai, warp, wreq
@@ -173238,9 +173745,9 @@ self: {
      }) {};
 
   "rethinkdb" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, base64-bytestring
-     , binary, bytestring, containers, criterion, data-default, doctest
-     , mtl, network, scientific, text, time, unordered-containers
+    ({ mkDerivation, aeson, async, base, base64-bytestring, binary
+     , bytestring, containers, criterion, data-default, doctest, mtl
+     , network, scientific, text, time, unordered-containers
      , utf8-string, vector
      }:
      mkDerivation {
@@ -173254,7 +173761,6 @@ self: {
          data-default mtl network scientific text time unordered-containers
          utf8-string vector
        ];
-       executableHaskellDepends = [ attoparsec base text ];
        testHaskellDepends = [ base doctest ];
        benchmarkHaskellDepends = [ aeson async base criterion text ];
        homepage = "http://github.com/atnnn/haskell-rethinkdb";
@@ -173517,22 +174023,22 @@ self: {
      , blaze-html, classy-prelude, containers, data-default
      , freer-simple, hedis, http-api-data, http-client, http-client-tls
      , http-types, lens, lifted-async, markdown, monad-control
-     , natural-transformation, postgresql-simple, resource-pool, servant
-     , servant-blaze, servant-client, servant-docs, servant-server
-     , servant-swagger, simple-logger, string-conversions, swagger2
-     , temporary, text, time-units, unliftio, unliftio-core
-     , unordered-containers, url, uuid-types, vector, wai, wai-cors
-     , wai-extra, wreq
+     , natural-transformation, network-uri, postgresql-simple
+     , resource-pool, servant, servant-blaze, servant-client
+     , servant-docs, servant-server, servant-swagger, simple-logger
+     , string-conversions, swagger2, temporary, text, time-units
+     , unliftio, unliftio-core, unordered-containers, url, uuid-types
+     , vector, wai, wai-cors, wai-extra, wreq
      }:
      mkDerivation {
        pname = "rfc";
-       version = "0.0.0.22";
-       sha256 = "0k3xicw8q135pnw5k4kgzyz44kvkp9c38gkvp0lfxfjdrrps0ymn";
+       version = "0.0.0.24";
+       sha256 = "05spf71r2zyc9pyx5kr2jsamyzga1y46831n6fmhad98bjswgr6q";
        libraryHaskellDepends = [
          aeson aeson-diff base bifunctors binary blaze-html classy-prelude
          containers data-default freer-simple hedis http-api-data
          http-client http-client-tls http-types lens lifted-async markdown
-         monad-control natural-transformation postgresql-simple
+         monad-control natural-transformation network-uri postgresql-simple
          resource-pool servant servant-blaze servant-client servant-docs
          servant-server servant-swagger simple-logger string-conversions
          swagger2 temporary text time-units unliftio unliftio-core
@@ -173590,7 +174096,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring containers ];
-       executableHaskellDepends = [ base bytestring containers ];
        description = "Simple unicode collation as per RFC5051";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -174517,6 +175022,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rollbar-hs" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, case-insensitive
+     , containers, hostname, hspec, hspec-golden-aeson, http-client
+     , http-conduit, http-types, lens, lens-aeson, network, QuickCheck
+     , text, time, unordered-containers, uuid
+     }:
+     mkDerivation {
+       pname = "rollbar-hs";
+       version = "0.2.0.0";
+       sha256 = "0w4a0bl0vyzb094car4zh599j5g4zknlqia1ja0jpr62bblrkmw5";
+       libraryHaskellDepends = [
+         aeson base bytestring case-insensitive hostname http-client
+         http-conduit http-types network text time unordered-containers uuid
+       ];
+       testHaskellDepends = [
+         aeson base bytestring case-insensitive containers hspec
+         hspec-golden-aeson lens lens-aeson QuickCheck text
+       ];
+       homepage = "https://github.com/joneshf/rollbar-hs#readme";
+       description = "Core Rollbar data types and APIs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "roller" = callPackage
     ({ mkDerivation, base, optparse-applicative, random
      , regex-applicative
@@ -175182,11 +175710,10 @@ self: {
   "rss-conduit" = callPackage
     ({ mkDerivation, atom-conduit, base, blaze-builder, bytestring
      , conduit, conduit-combinators, containers, data-default
-     , dublincore-xml-conduit, hlint, lens-simple, mono-traversable
-     , QuickCheck, quickcheck-instances, resourcet, safe
-     , safe-exceptions, singletons, tasty, tasty-hunit, tasty-quickcheck
-     , text, time, timerep, uri-bytestring, vinyl, xml-conduit
-     , xml-types
+     , dublincore-xml-conduit, lens-simple, mono-traversable, QuickCheck
+     , quickcheck-instances, resourcet, safe, safe-exceptions
+     , singletons, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , timerep, uri-bytestring, vinyl, xml-conduit, xml-types
      }:
      mkDerivation {
        pname = "rss-conduit";
@@ -175199,11 +175726,10 @@ self: {
        ];
        testHaskellDepends = [
          atom-conduit base blaze-builder bytestring conduit
-         conduit-combinators data-default dublincore-xml-conduit hlint
-         lens-simple mono-traversable QuickCheck quickcheck-instances
-         resourcet safe-exceptions singletons tasty tasty-hunit
-         tasty-quickcheck text time uri-bytestring vinyl xml-conduit
-         xml-types
+         conduit-combinators data-default dublincore-xml-conduit lens-simple
+         mono-traversable QuickCheck quickcheck-instances resourcet
+         safe-exceptions singletons tasty tasty-hunit tasty-quickcheck text
+         time uri-bytestring vinyl xml-conduit xml-types
        ];
        description = "Streaming parser/renderer for the RSS standard";
        license = stdenv.lib.licenses.publicDomain;
@@ -175638,7 +176164,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers parsec text ];
-       executableHaskellDepends = [ base containers parsec text ];
        testHaskellDepends = [ base parsec QuickCheck text ];
        homepage = "https://github.com/aisamanra/s-cargot";
        description = "A flexible, extensible s-expression library";
@@ -175649,13 +176174,14 @@ self: {
     ({ mkDerivation, base, HUnit, parsec, s-cargot, text }:
      mkDerivation {
        pname = "s-cargot-letbind";
-       version = "0.1.0.0";
-       sha256 = "0mr55jh7jqmf8f15q4nnpk2bhynvc79ky844bh63dnirh15vmip7";
+       version = "0.2.0.0";
+       sha256 = "17ll1vlx70wmzbigzk2klsd8vzkzhwi7amq6a27wpad6xcz8lm98";
        libraryHaskellDepends = [ base s-cargot text ];
        testHaskellDepends = [ base HUnit parsec s-cargot text ];
        homepage = "https://github.com/GaloisInc/s-cargot-letbind";
        description = "Enables let-binding and let-expansion for s-cargot defined S-expressions";
        license = stdenv.lib.licenses.isc;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "s-expression" = callPackage
@@ -176362,9 +176888,7 @@ self: {
      }) {};
 
   "samtools" = callPackage
-    ({ mkDerivation, base, bytestring, c2hs, filepath, process, seqloc
-     , vector, zlib
-     }:
+    ({ mkDerivation, base, bytestring, c2hs, seqloc, vector, zlib }:
      mkDerivation {
        pname = "samtools";
        version = "0.2.4.3";
@@ -176374,11 +176898,6 @@ self: {
        libraryHaskellDepends = [ base bytestring seqloc vector ];
        librarySystemDepends = [ zlib ];
        libraryToolDepends = [ c2hs ];
-       executableHaskellDepends = [
-         base bytestring filepath process seqloc vector
-       ];
-       executableSystemDepends = [ zlib ];
-       executableToolDepends = [ c2hs ];
        homepage = "http://www.ingolia-lab.org/samtools-tutorial.html";
        description = "Binding to the C samtools library";
        license = stdenv.lib.licenses.mit;
@@ -176422,8 +176941,7 @@ self: {
      }) {};
 
   "samtools-iteratee" = callPackage
-    ({ mkDerivation, base, bytestring, iteratee, monads-tf, samtools
-     , transformers
+    ({ mkDerivation, base, bytestring, iteratee, samtools, transformers
      }:
      mkDerivation {
        pname = "samtools-iteratee";
@@ -176434,9 +176952,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring iteratee samtools transformers
        ];
-       executableHaskellDepends = [
-         base bytestring iteratee monads-tf samtools transformers
-       ];
        description = "Iteratee interface to SamTools library";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -177307,9 +177822,8 @@ self: {
          split syb tagsoup text time vector xml-conduit yaml
        ];
        executableHaskellDepends = [
-         aeson aeson-pretty attoparsec base bytestring containers directory
-         filepath process scholdoc scholdoc-types syb temporary text vector
-         yaml
+         aeson aeson-pretty attoparsec base bytestring filepath
+         scholdoc-types syb text yaml
        ];
        testHaskellDepends = [
          aeson base bytestring directory filepath process scholdoc
@@ -177323,8 +177837,8 @@ self: {
 
   "scholdoc-texmath" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
-     , mtl, network-uri, parsec, process, scholdoc-types, split, syb
-     , temporary, text, utf8-string, xml
+     , mtl, parsec, process, scholdoc-types, split, syb, temporary, text
+     , utf8-string, xml
      }:
      mkDerivation {
        pname = "scholdoc-texmath";
@@ -177335,7 +177849,6 @@ self: {
        libraryHaskellDepends = [
          base containers mtl parsec scholdoc-types syb xml
        ];
-       executableHaskellDepends = [ network-uri ];
        testHaskellDepends = [
          base bytestring directory filepath process split temporary text
          utf8-string xml
@@ -177753,10 +178266,10 @@ self: {
      }) {};
 
   "scotty-rest" = callPackage
-    ({ mkDerivation, aeson, base, base-prelude, bytestring, convertible
-     , hspec, hspec-wai, http-date, http-media, http-types, mtl
-     , QuickCheck, scotty, sqlite-simple, string-conversions, text, time
-     , transformers, wai, wai-extra
+    ({ mkDerivation, base, base-prelude, bytestring, convertible, hspec
+     , hspec-wai, http-date, http-media, http-types, mtl, QuickCheck
+     , scotty, string-conversions, text, time, transformers, wai
+     , wai-extra
      }:
      mkDerivation {
        pname = "scotty-rest";
@@ -177769,9 +178282,6 @@ self: {
          http-types mtl scotty string-conversions text time transformers wai
          wai-extra
        ];
-       executableHaskellDepends = [
-         aeson base mtl scotty sqlite-simple text wai-extra
-       ];
        testHaskellDepends = [
          base bytestring hspec hspec-wai mtl QuickCheck scotty
          string-conversions text wai
@@ -178944,10 +179454,7 @@ self: {
      }) {};
 
   "semiring" = callPackage
-    ({ mkDerivation, base, Boolean, containers, HUnit, monoids
-     , QuickCheck, test-framework, test-framework-hunit
-     , test-framework-quickcheck2
-     }:
+    ({ mkDerivation, base, Boolean, containers, monoids }:
      mkDerivation {
        pname = "semiring";
        version = "0.3";
@@ -178955,10 +179462,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base Boolean containers monoids ];
-       executableHaskellDepends = [
-         base Boolean containers HUnit monoids QuickCheck test-framework
-         test-framework-hunit test-framework-quickcheck2
-       ];
        homepage = "http://github.com/srush/SemiRings/tree/master";
        description = "Semirings, ring-like structures used for dynamic programming applications";
        license = stdenv.lib.licenses.bsd3;
@@ -179354,7 +179857,7 @@ self: {
          attoparsec base biocore bytestring cmdtheline conduit conduit-extra
          filepath hashable iteratee lifted-base monads-tf pretty QuickCheck
          random resourcet seqloc transformers transformers-base
-         unordered-containers vector
+         unordered-containers
        ];
        testHaskellDepends = [
          attoparsec base biocore bytestring conduit conduit-extra directory
@@ -179391,7 +179894,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring containers ghc transformers
        ];
-       executableHaskellDepends = [ base bytestring containers ];
        homepage = "https://github.com/lukemaurer/sequent-core";
        description = "Alternative Core language for GHC plugins";
        license = stdenv.lib.licenses.bsd3;
@@ -179972,8 +180474,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token";
-       version = "0.5.2.0";
-       sha256 = "1rgv88yh91v7b6kq28agijqx7ds9ghwla0npdi5i194p6w7c2mla";
+       version = "0.5.3.0";
+       sha256 = "04zg9a2brpca39gx0hk1s2mnccw8d5n3gxd082w31f3axji6rm3a";
        libraryHaskellDepends = [
          aeson-injector base bytestring containers http-api-data mtl
          pwstore-fast servant servant-auth-token-api servant-server text
@@ -179994,8 +180496,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-acid";
-       version = "0.5.2.0";
-       sha256 = "1gv054fvjnx52c5l6bljf1dk3cgi9283nkqxwmg6s968y73z8pxf";
+       version = "0.5.3.0";
+       sha256 = "1fwzsx13lvqaaxh8cfs7zi8l2a0c7kgz8gnnwgssrasnk27jsc20";
        libraryHaskellDepends = [
          acid-state aeson-injector base bytestring containers ghc-prim
          monad-control mtl safe safecopy servant-auth-token
@@ -180014,8 +180516,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-api";
-       version = "0.5.1.0";
-       sha256 = "0kn25ldc774zx8r5hnrd7ibdm4g3769f99g8vl99x0miplpz0v0a";
+       version = "0.5.2.0";
+       sha256 = "1cb04lcqlb0iw729l97dm3xxxhwzinlsf4ipgda2dix8j29v7h5b";
        libraryHaskellDepends = [
          aeson aeson-injector base lens raw-strings-qq servant servant-docs
          servant-swagger swagger2 text
@@ -180035,8 +180537,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-leveldb";
-       version = "0.5.2.0";
-       sha256 = "1xzrrmpvwvba9xwgvvrbwxkhiqg6cs2vp9fbk1as1zfas1sk2kiy";
+       version = "0.5.3.0";
+       sha256 = "0jj7px9w67d2kmcvap02ccmw6y4x9fz1mmwndhb4rjxyr1kkwkja";
        libraryHaskellDepends = [
          aeson-injector base bytestring concurrent-extra containers
          exceptions lens leveldb-haskell monad-control mtl resourcet safe
@@ -180058,8 +180560,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-persistent";
-       version = "0.6.2.0";
-       sha256 = "08z15sfpn6rsws80rdnh7yifkyq994gx6a9l2yhb1pqxl6g2vf2c";
+       version = "0.6.3.0";
+       sha256 = "1rxcmccfj0rirjngqm3p5azrwlrcf8bfr3fm7m046b6w031cfh9y";
        libraryHaskellDepends = [
          aeson-injector base bytestring containers monad-control mtl
          persistent persistent-template servant-auth-token
@@ -180081,8 +180583,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-auth-token-rocksdb";
-       version = "0.5.2.0";
-       sha256 = "13fcjqbw30rcf123d47hjy8xinrqnii0yyj9zdnfn14yi9gk2lr1";
+       version = "0.5.3.0";
+       sha256 = "01nx1aj15kjg9g2k5vl0b0zrvih951sm06qybl28mm97kgcdiam1";
        libraryHaskellDepends = [
          aeson-injector base bytestring concurrent-extra containers
          exceptions lens monad-control mtl resourcet rocksdb-haskell safe
@@ -180150,10 +180652,9 @@ self: {
 
   "servant-checked-exceptions" = callPackage
     ({ mkDerivation, aeson, base, bytestring, deepseq, doctest, Glob
-     , hspec-wai, http-api-data, http-client, http-media
-     , natural-transformation, optparse-applicative, profunctors
-     , servant, servant-client, servant-docs, servant-server, tagged
-     , tasty, tasty-hspec, tasty-hunit, text, wai, warp
+     , hspec-wai, http-media, profunctors, servant, servant-client
+     , servant-docs, servant-server, tagged, tasty, tasty-hspec
+     , tasty-hunit, text, wai
      }:
      mkDerivation {
        pname = "servant-checked-exceptions";
@@ -180167,11 +180668,6 @@ self: {
          aeson base bytestring deepseq http-media profunctors servant
          servant-client servant-docs servant-server tagged text
        ];
-       executableHaskellDepends = [
-         aeson base http-api-data http-client natural-transformation
-         optparse-applicative servant servant-client servant-docs
-         servant-server text wai warp
-       ];
        testHaskellDepends = [
          base bytestring doctest Glob hspec-wai servant servant-server tasty
          tasty-hspec tasty-hunit wai
@@ -180183,10 +180679,9 @@ self: {
 
   "servant-checked-exceptions_1_0_0_0" = callPackage
     ({ mkDerivation, aeson, base, bytestring, deepseq, doctest, Glob
-     , hspec-wai, http-api-data, http-client, http-media, http-types
-     , natural-transformation, optparse-applicative, profunctors
-     , servant, servant-client, servant-docs, servant-server, tagged
-     , tasty, tasty-hspec, tasty-hunit, text, wai, warp
+     , hspec-wai, http-media, http-types, profunctors, servant
+     , servant-client, servant-docs, servant-server, tagged, tasty
+     , tasty-hspec, tasty-hunit, text, wai
      }:
      mkDerivation {
        pname = "servant-checked-exceptions";
@@ -180198,11 +180693,6 @@ self: {
          aeson base bytestring deepseq http-media http-types profunctors
          servant servant-client servant-docs servant-server tagged text wai
        ];
-       executableHaskellDepends = [
-         aeson base http-api-data http-client http-types
-         natural-transformation optparse-applicative servant servant-client
-         servant-docs servant-server text wai warp
-       ];
        testHaskellDepends = [
          base bytestring doctest Glob hspec-wai http-types servant
          servant-server tasty tasty-hspec tasty-hunit wai
@@ -180350,10 +180840,6 @@ self: {
          base bytestring containers postgresql-query postgresql-simple
          servant servant-db text
        ];
-       executableHaskellDepends = [
-         base bytestring monad-logger postgresql-query servant-db time
-         transformers-base
-       ];
        testHaskellDepends = [
          base bytestring derive hspec HUnit monad-logger
          optparse-applicative postgresql-query QuickCheck
@@ -180474,9 +180960,8 @@ self: {
      }) {};
 
   "servant-elm" = callPackage
-    ({ mkDerivation, aeson, base, Diff, directory, elm-export, hspec
-     , HUnit, interpolate, lens, mockery, process, servant
-     , servant-foreign, text, wl-pprint-text
+    ({ mkDerivation, aeson, base, Diff, elm-export, hspec, HUnit, lens
+     , servant, servant-foreign, text, wl-pprint-text
      }:
      mkDerivation {
        pname = "servant-elm";
@@ -180487,10 +180972,8 @@ self: {
        libraryHaskellDepends = [
          base elm-export lens servant servant-foreign text wl-pprint-text
        ];
-       executableHaskellDepends = [ base elm-export servant text ];
        testHaskellDepends = [
-         aeson base Diff directory elm-export hspec HUnit interpolate
-         mockery process servant text
+         aeson base Diff elm-export hspec HUnit servant text
        ];
        homepage = "http://github.com/mattjbray/servant-elm#readme";
        description = "Automatically derive Elm functions to query servant webservices";
@@ -180684,9 +181167,8 @@ self: {
      }) {};
 
   "servant-jquery" = callPackage
-    ({ mkDerivation, aeson, base, charset, filepath, hspec
-     , hspec-expectations, language-ecmascript, lens, servant
-     , servant-server, stm, text, transformers, warp
+    ({ mkDerivation, base, charset, hspec, hspec-expectations
+     , language-ecmascript, lens, servant, text
      }:
      mkDerivation {
        pname = "servant-jquery";
@@ -180695,9 +181177,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base charset lens servant text ];
-       executableHaskellDepends = [
-         aeson base filepath servant servant-server stm transformers warp
-       ];
        testHaskellDepends = [
          base hspec hspec-expectations language-ecmascript lens servant
        ];
@@ -180708,10 +181187,9 @@ self: {
      }) {};
 
   "servant-js" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, charset, filepath, hspec
-     , hspec-discover, hspec-expectations, language-ecmascript, lens
-     , QuickCheck, servant, servant-foreign, servant-server, stm, text
-     , transformers, warp
+    ({ mkDerivation, base, base-compat, charset, hspec, hspec-discover
+     , hspec-expectations, language-ecmascript, lens, QuickCheck
+     , servant, servant-foreign, text
      }:
      mkDerivation {
        pname = "servant-js";
@@ -180722,10 +181200,6 @@ self: {
        libraryHaskellDepends = [
          base base-compat charset lens servant servant-foreign text
        ];
-       executableHaskellDepends = [
-         aeson base filepath lens servant servant-server stm transformers
-         warp
-       ];
        testHaskellDepends = [
          base base-compat hspec hspec-expectations language-ecmascript lens
          QuickCheck servant text
@@ -180737,10 +181211,9 @@ self: {
      }) {};
 
   "servant-js_0_9_3_2" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, charset, filepath, hspec
-     , hspec-discover, hspec-expectations, language-ecmascript, lens
-     , QuickCheck, servant, servant-foreign, servant-server, stm, text
-     , transformers, warp
+    ({ mkDerivation, base, base-compat, charset, hspec, hspec-discover
+     , hspec-expectations, language-ecmascript, lens, QuickCheck
+     , servant, servant-foreign, text
      }:
      mkDerivation {
        pname = "servant-js";
@@ -180751,10 +181224,6 @@ self: {
        libraryHaskellDepends = [
          base base-compat charset lens servant servant-foreign text
        ];
-       executableHaskellDepends = [
-         aeson base filepath lens servant servant-server stm transformers
-         warp
-       ];
        testHaskellDepends = [
          base base-compat hspec hspec-expectations language-ecmascript lens
          QuickCheck servant text
@@ -180982,9 +181451,7 @@ self: {
      }) {};
 
   "servant-pagination" = callPackage
-    ({ mkDerivation, aeson, base, safe, servant, servant-server, text
-     , warp
-     }:
+    ({ mkDerivation, base, safe, servant, servant-server, text }:
      mkDerivation {
        pname = "servant-pagination";
        version = "1.0.0";
@@ -180994,9 +181461,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base safe servant servant-server text ];
-       executableHaskellDepends = [
-         aeson base servant servant-server warp
-       ];
        homepage = "https://github.com/chordify/haskell-servant-pagination";
        description = "Type-safe pagination for Servant APIs";
        license = stdenv.lib.licenses.lgpl3;
@@ -181139,10 +181603,9 @@ self: {
      }) {};
 
   "servant-py" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, blaze-html, bytestring
-     , charset, filepath, hspec, hspec-expectations, lens, QuickCheck
-     , servant, servant-blaze, servant-foreign, servant-server, stm
-     , text, wai, warp
+    ({ mkDerivation, aeson, base, base-compat, bytestring, charset
+     , hspec, hspec-expectations, lens, QuickCheck, servant
+     , servant-foreign, text
      }:
      mkDerivation {
        pname = "servant-py";
@@ -181153,10 +181616,6 @@ self: {
        libraryHaskellDepends = [
          aeson base bytestring charset lens servant servant-foreign text
        ];
-       executableHaskellDepends = [
-         aeson base blaze-html bytestring filepath servant servant-blaze
-         servant-foreign servant-server stm text wai warp
-       ];
        testHaskellDepends = [
          aeson base base-compat bytestring hspec hspec-expectations lens
          QuickCheck servant servant-foreign text
@@ -181193,14 +181652,14 @@ self: {
        testToolDepends = [ hspec-discover ];
        description = "QuickCheck entire APIs";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "servant-rawm" = callPackage
     ({ mkDerivation, base, bytestring, doctest, filepath, Glob
      , hspec-wai, http-client, http-media, http-types, lens, resourcet
      , servant, servant-client, servant-docs, servant-server, tasty
-     , tasty-hspec, tasty-hunit, text, transformers, wai, wai-app-static
-     , warp
+     , tasty-hspec, tasty-hunit, transformers, wai, wai-app-static, warp
      }:
      mkDerivation {
        pname = "servant-rawm";
@@ -181213,11 +181672,6 @@ self: {
          resourcet servant-client servant-docs servant-server wai
          wai-app-static
        ];
-       executableHaskellDepends = [
-         base bytestring http-client http-media http-types servant
-         servant-client servant-docs servant-server text transformers wai
-         warp
-       ];
        testHaskellDepends = [
          base bytestring doctest Glob hspec-wai http-client http-media
          http-types servant servant-client servant-server tasty tasty-hspec
@@ -181279,14 +181733,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "servant-ruby_0_6_0_0" = callPackage
+  "servant-ruby_0_7_0_0" = callPackage
     ({ mkDerivation, base, casing, doctest, lens, QuickCheck
      , servant-foreign, text
      }:
      mkDerivation {
        pname = "servant-ruby";
-       version = "0.6.0.0";
-       sha256 = "0cm0s44x71vbfzl5ky7s1ml88gnympr4n0lfg6w0z17lr95myrm8";
+       version = "0.7.0.0";
+       sha256 = "0r39ixsmqslbygd38bvz61a7n0r7g54zfrcgjfn506599ybianm9";
        libraryHaskellDepends = [ base casing lens servant-foreign text ];
        testHaskellDepends = [ base doctest QuickCheck ];
        homepage = "https://github.com/joneshf/servant-ruby#readme";
@@ -181461,7 +181915,7 @@ self: {
     ({ mkDerivation, base, blaze-html, bytestring, containers
      , directory, doctest, filepath, Glob, hspec-wai, http-media
      , semigroups, servant, servant-blaze, servant-server, tasty
-     , tasty-hspec, tasty-hunit, template-haskell, text, wai, warp
+     , tasty-hspec, tasty-hunit, template-haskell, text, wai
      }:
      mkDerivation {
        pname = "servant-static-th";
@@ -181474,7 +181928,6 @@ self: {
          semigroups servant servant-blaze servant-server template-haskell
          text
        ];
-       executableHaskellDepends = [ base servant-server wai warp ];
        testHaskellDepends = [
          base blaze-html bytestring directory doctest filepath Glob
          hspec-wai servant servant-blaze servant-server tasty tasty-hspec
@@ -182126,6 +182579,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "set-cover_0_0_9" = callPackage
+    ({ mkDerivation, base, containers, enummapset, psqueues, semigroups
+     , utility-ht
+     }:
+     mkDerivation {
+       pname = "set-cover";
+       version = "0.0.9";
+       sha256 = "1qbk5y2pg6jlclszd2nras5240r0ahapsibykkcqrxhgq0hgvsxg";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers enummapset psqueues semigroups utility-ht
+       ];
+       homepage = "http://hub.darcs.net/thielema/set-cover/";
+       description = "Solve exact set cover problems like Sudoku, 8 Queens, Soma Cube, Tetris Cube";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "set-extra" = callPackage
     ({ mkDerivation, base, containers, mtl, syb }:
      mkDerivation {
@@ -182405,9 +182877,7 @@ self: {
      }) {};
 
   "sexpr" = callPackage
-    ({ mkDerivation, base, base64-string, binary, bytestring, pretty
-     , QuickCheck, random
-     }:
+    ({ mkDerivation, base, base64-string, binary, bytestring, pretty }:
      mkDerivation {
        pname = "sexpr";
        version = "0.2.1";
@@ -182417,7 +182887,6 @@ self: {
        libraryHaskellDepends = [
          base base64-string binary bytestring pretty
        ];
-       executableHaskellDepends = [ QuickCheck random ];
        description = "S-expression printer and parser";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -182730,15 +183199,15 @@ self: {
 
   "shake-ats" = callPackage
     ({ mkDerivation, base, binary, dependency, directory, hs2ats
-     , language-ats, microlens, shake, shake-ext, text
+     , language-ats, lens, shake, shake-ext, text
      }:
      mkDerivation {
        pname = "shake-ats";
-       version = "1.4.1.2";
-       sha256 = "0bjgk2avcvqys8x4nxq5wsydar7wvxsqsiips2zbkydclahj9p30";
+       version = "1.5.0.1";
+       sha256 = "0gyaysqi2hxa782g34njpsjm6kpxixmqqd7v5pwna5bri9pwykmq";
        libraryHaskellDepends = [
-         base binary dependency directory hs2ats language-ats microlens
-         shake shake-ext text
+         base binary dependency directory hs2ats language-ats lens shake
+         shake-ext text
        ];
        homepage = "https://github.com/vmchale/shake-ats#readme";
        description = "Utilities for building ATS projects with shake";
@@ -183474,6 +183943,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "shimmer" = callPackage
+    ({ mkDerivation, base, bytestring, containers, filepath, haskeline
+     , text, vector
+     }:
+     mkDerivation {
+       pname = "shimmer";
+       version = "0.1.1";
+       sha256 = "10n9dq9445anb2n85xasl1l8qx40p5bnm12xj47n6wbmxhd75fvh";
+       libraryHaskellDepends = [
+         base bytestring containers filepath haskeline text vector
+       ];
+       description = "The Reflective Lambda Machine";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "shine" = callPackage
     ({ mkDerivation, base, ghcjs-dom, ghcjs-prim, keycode, mtl, time
      , transformers
@@ -184658,7 +185142,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base mtl parsec pretty ];
-       executableHaskellDepends = [ base mtl parsec pretty ];
        testHaskellDepends = [
          base HUnit mtl parsec pretty test-framework test-framework-hunit
        ];
@@ -184756,8 +185239,8 @@ self: {
      }:
      mkDerivation {
        pname = "simple-vec3";
-       version = "0.2";
-       sha256 = "107nw2dw3f3famp1msqzf7d8v8kpiw1xza024yf53zzbx1z9ia35";
+       version = "0.3.1";
+       sha256 = "0csmwaqb3slvh0bqlh2pcjvl5rswaq92lx5d8glzznn0chxnpns4";
        libraryHaskellDepends = [ base QuickCheck vector vector-th-unbox ];
        testHaskellDepends = [
          base QuickCheck tasty tasty-quickcheck tasty-th vector
@@ -185353,8 +185836,7 @@ self: {
      }) {};
 
   "sized-types" = callPackage
-    ({ mkDerivation, array, base, base-compat, containers, QuickCheck
-     , singletons
+    ({ mkDerivation, array, base, base-compat, containers, singletons
      }:
      mkDerivation {
        pname = "sized-types";
@@ -185367,8 +185849,6 @@ self: {
        libraryHaskellDepends = [
          array base base-compat containers singletons
        ];
-       executableHaskellDepends = [ base base-compat ];
-       testHaskellDepends = [ base QuickCheck ];
        homepage = "http://www.ittc.ku.edu/csdl/fpg/Tools";
        description = "Sized types in Haskell using the GHC Nat kind";
        license = stdenv.lib.licenses.bsd3;
@@ -185600,11 +186080,6 @@ self: {
          bytestring case-insensitive containers directory filepath hxt mtl
          regex-pcre-builtin safe text utf8-string
        ];
-       executableHaskellDepends = [
-         aeson base base64-bytestring binary blaze-html bytestring
-         case-insensitive containers directory filepath hxt pretty-show
-         regex-pcre-builtin safe text utf8-string
-       ];
        testHaskellDepends = [
          aeson base bytestring containers Diff directory filepath HUnit
          pretty-show QuickCheck random tasty tasty-golden tasty-hunit
@@ -185637,11 +186112,6 @@ self: {
          blaze-html bytestring case-insensitive colour containers directory
          filepath hxt mtl regex-pcre-builtin safe text utf8-string
        ];
-       executableHaskellDepends = [
-         aeson ansi-terminal base base64-bytestring binary blaze-html
-         bytestring case-insensitive colour containers directory filepath
-         hxt pretty-show regex-pcre-builtin safe text utf8-string
-       ];
        testHaskellDepends = [
          aeson base bytestring containers Diff directory filepath HUnit
          pretty-show QuickCheck random tasty tasty-golden tasty-hunit
@@ -186865,13 +187335,6 @@ self: {
          io-streams-haproxy lifted-base mtl network old-locale
          openssl-streams snap-core text time unix unix-compat vector
        ];
-       executableHaskellDepends = [
-         attoparsec base blaze-builder bytestring bytestring-builder
-         case-insensitive clock containers directory HsOpenSSL io-streams
-         io-streams-haproxy lifted-base mtl network old-locale
-         openssl-streams snap-core text time transformers unix unix-compat
-         vector
-       ];
        testHaskellDepends = [
          attoparsec base base16-bytestring blaze-builder bytestring
          bytestring-builder case-insensitive clock containers deepseq
@@ -187487,10 +187950,9 @@ self: {
      }) {};
 
   "snaplet-redis" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, cereal, clientsession
-     , configurator, hedis, heist, lens, monad-control, mtl, network
-     , snap, snap-core, snap-server, text, time, transformers
-     , unordered-containers, xmlhtml
+    ({ mkDerivation, base, bytestring, cereal, clientsession
+     , configurator, hedis, lens, mtl, network, snap, snap-core, text
+     , time, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "snaplet-redis";
@@ -187502,10 +187964,6 @@ self: {
          base bytestring cereal clientsession configurator hedis lens mtl
          network snap snap-core text time transformers unordered-containers
        ];
-       executableHaskellDepends = [
-         aeson base bytestring hedis heist lens monad-control mtl snap
-         snap-core snap-server text time xmlhtml
-       ];
        homepage = "https://github.com/dzhus/snaplet-redis#readme";
        description = "Redis support for Snap Framework";
        license = stdenv.lib.licenses.bsd3;
@@ -188715,6 +189173,25 @@ self: {
        license = "GPL";
      }) {};
 
+  "sox_0_2_3" = callPackage
+    ({ mkDerivation, base, containers, explicit-exception
+     , extensible-exceptions, process, sample-frame, semigroups
+     , transformers, unix, utility-ht
+     }:
+     mkDerivation {
+       pname = "sox";
+       version = "0.2.3";
+       sha256 = "145dmcj9vj58wrndidarnr7bbkybvzyda88awrxw4p3iqy8s2xb0";
+       libraryHaskellDepends = [
+         base containers explicit-exception extensible-exceptions process
+         sample-frame semigroups transformers unix utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/Sox";
+       description = "Play, write, read, convert audio signals using Sox";
+       license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "soxlib" = callPackage
     ({ mkDerivation, base, bytestring, containers, explicit-exception
      , extensible-exceptions, sample-frame, sox, storablevector
@@ -188983,6 +189460,30 @@ self: {
        license = stdenv.lib.licenses.gpl3;
      }) {};
 
+  "sparse-linear-algebra_0_2_9_9" = callPackage
+    ({ mkDerivation, base, containers, exceptions, hspec
+     , matrix-market-attoparsec, mtl, mwc-random, primitive, QuickCheck
+     , scientific, transformers, vector, vector-algorithms
+     }:
+     mkDerivation {
+       pname = "sparse-linear-algebra";
+       version = "0.2.9.9";
+       sha256 = "1n3cxrmj5v0l5g1x1zb017sd59whpr6kfkzw3pckl1f93yh0jhf1";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base containers exceptions hspec mtl primitive QuickCheck
+         transformers vector vector-algorithms
+       ];
+       testHaskellDepends = [
+         base containers exceptions hspec matrix-market-attoparsec mtl
+         mwc-random primitive QuickCheck scientific
+       ];
+       homepage = "https://github.com/ocramz/sparse-linear-algebra";
+       description = "Numerical computing in native Haskell";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "sparsebit" = callPackage
     ({ mkDerivation, base, haskell98 }:
      mkDerivation {
@@ -190342,7 +190843,6 @@ self: {
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [ base iproute text ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [
          base HUnit iproute QuickCheck test-framework test-framework-hunit
          test-framework-quickcheck2 text unix
@@ -190610,10 +191110,10 @@ self: {
      }:
      mkDerivation {
        pname = "stack";
-       version = "1.6.3";
-       sha256 = "0ylika6qf7agj07wh47xjirhg74l63lx80q0xm41yd9g5ssk9cbj";
-       revision = "3";
-       editedCabalFile = "0sqhg84iyh8rmsls5lgk0and68rxkp6m4668z42y5zzy810xgd4i";
+       version = "1.6.5";
+       sha256 = "0f5a0znxwmib03vhqkw0yiv89a82z43wlm7zwfyx30gfz6iqqp7f";
+       revision = "1";
+       editedCabalFile = "11bmzlf3gxbz2gij0l2999a296z4c12l27f7jfyfka8l1k15d6b1";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal filepath ];
@@ -191622,6 +192122,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "static-text" = callPackage
+    ({ mkDerivation, base, bytestring, doctest, doctest-discover, tasty
+     , tasty-hunit, template-haskell, text, vector
+     }:
+     mkDerivation {
+       pname = "static-text";
+       version = "0.2";
+       sha256 = "1rilg9izmw29s33abz5prhzkfay1c482n3y7zbcxjbssvc5c2vhz";
+       libraryHaskellDepends = [
+         base bytestring template-haskell text vector
+       ];
+       testHaskellDepends = [
+         base bytestring doctest doctest-discover tasty tasty-hunit
+         template-haskell
+       ];
+       homepage = "https://github.com/dzhus/static-text#readme";
+       description = "Lists, Texts, ByteStrings and Vectors of statically known length";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "staticanalysis" = callPackage
     ({ mkDerivation, base, MissingH }:
      mkDerivation {
@@ -191820,8 +192340,7 @@ self: {
        ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [
-         base bytestring Cabal filepath hspec http-client http-client-tls
-         QuickCheck semigroups text
+         base bytestring Cabal filepath hspec QuickCheck semigroups text
        ];
        homepage = "https://github.com/debug-ito/staversion";
        description = "What version is the package X in stackage lts-Y.ZZ?";
@@ -192018,11 +192537,10 @@ self: {
 
   "stgi" = callPackage
     ({ mkDerivation, ansi-terminal, ansi-wl-pprint, base, containers
-     , deepseq, doctest, parsers, prettyprinter
-     , prettyprinter-ansi-terminal, QuickCheck, semigroups, smallcheck
-     , tasty, tasty-html, tasty-hunit, tasty-quickcheck, tasty-rerun
-     , tasty-smallcheck, template-haskell, text, th-lift, transformers
-     , trifecta
+     , deepseq, parsers, prettyprinter, prettyprinter-ansi-terminal
+     , QuickCheck, semigroups, smallcheck, tasty, tasty-html
+     , tasty-hunit, tasty-quickcheck, tasty-rerun, tasty-smallcheck
+     , template-haskell, text, th-lift, transformers, trifecta
      }:
      mkDerivation {
        pname = "stgi";
@@ -192037,9 +192555,9 @@ self: {
        ];
        executableHaskellDepends = [ ansi-terminal base semigroups text ];
        testHaskellDepends = [
-         ansi-wl-pprint base containers deepseq doctest prettyprinter
-         QuickCheck semigroups smallcheck tasty tasty-html tasty-hunit
-         tasty-quickcheck tasty-rerun tasty-smallcheck template-haskell text
+         ansi-wl-pprint base containers deepseq prettyprinter QuickCheck
+         semigroups smallcheck tasty tasty-html tasty-hunit tasty-quickcheck
+         tasty-rerun tasty-smallcheck template-haskell text
        ];
        homepage = "https://github.com/quchen/stgi#readme";
        description = "Educational implementation of the STG (Spineless Tagless G-machine)";
@@ -192549,6 +193067,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "storable-record_0_0_4" = callPackage
+    ({ mkDerivation, base, semigroups, transformers, utility-ht }:
+     mkDerivation {
+       pname = "storable-record";
+       version = "0.0.4";
+       sha256 = "0hjs1km0fc9ch0i1rbycxia5w3939hk4p4md73ikgg4aipqb5zyf";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base semigroups transformers utility-ht
+       ];
+       homepage = "http://code.haskell.org/~thielema/storable-record/";
+       description = "Elegant definition of Storable instances for records";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "storable-static-array" = callPackage
     ({ mkDerivation, array, base, tagged, vector }:
      mkDerivation {
@@ -192599,6 +193134,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "storablevector_0_2_13" = callPackage
+    ({ mkDerivation, base, bytestring, deepseq, non-negative
+     , QuickCheck, random, sample-frame, semigroups, syb, transformers
+     , unsafe, utility-ht
+     }:
+     mkDerivation {
+       pname = "storablevector";
+       version = "0.2.13";
+       sha256 = "1zmr738vwnhnyxbikayqnaz31ilv2qlmscp6iqgl7adcfbal4dzq";
+       libraryHaskellDepends = [
+         base deepseq non-negative QuickCheck semigroups syb transformers
+         unsafe utility-ht
+       ];
+       testHaskellDepends = [
+         base bytestring QuickCheck random utility-ht
+       ];
+       benchmarkHaskellDepends = [
+         base deepseq sample-frame unsafe utility-ht
+       ];
+       homepage = "http://www.haskell.org/haskellwiki/Storable_Vector";
+       description = "Fast, packed, strict storable arrays with a list interface like ByteString";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "storablevector-carray" = callPackage
     ({ mkDerivation, base, carray, storablevector, utility-ht }:
      mkDerivation {
@@ -192612,9 +193172,7 @@ self: {
      }) {};
 
   "storablevector-streamfusion" = callPackage
-    ({ mkDerivation, base, binary, bytestring, old-time, storablevector
-     , stream-fusion, utility-ht
-     }:
+    ({ mkDerivation, base, storablevector, stream-fusion, utility-ht }:
      mkDerivation {
        pname = "storablevector-streamfusion";
        version = "0.0";
@@ -192624,9 +193182,6 @@ self: {
        libraryHaskellDepends = [
          base storablevector stream-fusion utility-ht
        ];
-       executableHaskellDepends = [
-         base binary bytestring old-time stream-fusion
-       ];
        homepage = "http://www.haskell.org/haskellwiki/Storable_Vector";
        description = "Conversion between storablevector and stream-fusion lists with fusion";
        license = stdenv.lib.licenses.bsd3;
@@ -192734,10 +193289,6 @@ self: {
          aeson aeson-pretty base bytestring hashable lens template-haskell
          text unordered-containers
        ];
-       executableHaskellDepends = [
-         aeson aeson-pretty base bytestring hashable lens template-haskell
-         text unordered-containers
-       ];
        testHaskellDepends = [
          aeson aeson-pretty base bytestring hashable hspec hspec-discover
          lens template-haskell text unordered-containers
@@ -192762,10 +193313,6 @@ self: {
          aeson aeson-pretty base bytestring containers hashable lens
          template-haskell text unordered-containers
        ];
-       executableHaskellDepends = [
-         aeson aeson-pretty base bytestring containers hashable lens
-         template-haskell text unordered-containers
-       ];
        testHaskellDepends = [
          aeson aeson-pretty base bytestring containers hashable hspec
          hspec-discover lens template-haskell text unordered-containers
@@ -194243,9 +194790,9 @@ self: {
     ({ mkDerivation, array, base, bytestring, containers, contravariant
      , criterion, deepseq, directory, doctest, filepath, free, ghc
      , ghc-prim, hashable, hlint, hybrid-vectors, lens, monad-st
-     , MonadRandom, mwc-random, parallel, primitive, QuickCheck
-     , semigroups, tasty, tasty-quickcheck, tasty-th, transformers
-     , unordered-containers, vector, vector-algorithms
+     , MonadRandom, parallel, primitive, QuickCheck, semigroups, tasty
+     , tasty-quickcheck, tasty-th, transformers, unordered-containers
+     , vector, vector-algorithms
      }:
      mkDerivation {
        pname = "structures";
@@ -194262,7 +194809,7 @@ self: {
          unordered-containers
        ];
        benchmarkHaskellDepends = [
-         array base containers criterion deepseq MonadRandom mwc-random
+         array base containers criterion deepseq MonadRandom
          unordered-containers vector
        ];
        homepage = "http://github.com/ekmett/structures";
@@ -194362,6 +194909,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "stylish-cabal" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, Cabal, containers, deepseq
+     , hlint, hspec, hspec-core, hspec-expectations-pretty-diff
+     , optparse-applicative, split
+     }:
+     mkDerivation {
+       pname = "stylish-cabal";
+       version = "0.1.0.0";
+       sha256 = "131qvb6cdfmxzxvz3mxxnapc5826ybxs62zz439cjz29n1r6p0bd";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         ansi-wl-pprint base Cabal deepseq split
+       ];
+       executableHaskellDepends = [
+         ansi-wl-pprint base optparse-applicative
+       ];
+       testHaskellDepends = [
+         ansi-wl-pprint base Cabal containers hlint hspec hspec-core
+         hspec-expectations-pretty-diff
+       ];
+       description = "Format Cabal files";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "stylish-haskell" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, haskell-src-exts, HUnit, mtl, optparse-applicative
@@ -195026,6 +195598,7 @@ self: {
        homepage = "https://github.com/agrafix/superevent#readme";
        description = "A simple opinionated event store implementation";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "supermonad" = callPackage
@@ -196123,10 +196696,9 @@ self: {
 
   "synthesizer" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
-     , directory, event-list, filepath, gnuplot, non-negative
-     , numeric-prelude, numeric-quest, old-time, process, QuickCheck
-     , random, sox, storable-record, storablevector, transformers
-     , utility-ht
+     , event-list, filepath, gnuplot, non-negative, numeric-prelude
+     , numeric-quest, process, QuickCheck, random, sox, storable-record
+     , storablevector, transformers, utility-ht
      }:
      mkDerivation {
        pname = "synthesizer";
@@ -196139,7 +196711,6 @@ self: {
          non-negative numeric-prelude numeric-quest process QuickCheck
          random sox storable-record storablevector transformers utility-ht
        ];
-       executableHaskellDepends = [ directory old-time ];
        homepage = "http://www.haskell.org/haskellwiki/Synthesizer";
        description = "Audio signal processing coded in Haskell";
        license = "GPL";
@@ -196167,25 +196738,26 @@ self: {
        homepage = "http://www.haskell.org/haskellwiki/Synthesizer";
        description = "Control synthesizer effects via ALSA/MIDI";
        license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "synthesizer-core" = callPackage
     ({ mkDerivation, array, base, binary, bytestring, containers
      , deepseq, directory, event-list, explicit-exception, filepath
      , non-empty, non-negative, numeric-prelude, numeric-quest, old-time
-     , process, QuickCheck, random, sample-frame-np, sox
+     , process, QuickCheck, random, sample-frame-np, semigroups, sox
      , storable-record, storable-tuple, storablevector, timeit
      , transformers, utility-ht
      }:
      mkDerivation {
        pname = "synthesizer-core";
-       version = "0.8.1.2";
-       sha256 = "0ii0nd76l9la9j148wvaxxzh12269ajmy314v1bk737mz5n126dk";
+       version = "0.8.2";
+       sha256 = "0r8lik2gmaxn1ay0wyjvq2r51jb8vy99hypvrnhbc6hsjybdh8aa";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq event-list
          explicit-exception filepath non-empty non-negative numeric-prelude
-         numeric-quest process QuickCheck random sample-frame-np sox
-         storable-record storable-tuple storablevector transformers
+         numeric-quest process QuickCheck random sample-frame-np semigroups
+         sox storable-record storable-tuple storablevector transformers
          utility-ht
        ];
        testHaskellDepends = [
@@ -196204,19 +196776,19 @@ self: {
 
   "synthesizer-dimensional" = callPackage
     ({ mkDerivation, base, bytestring, event-list, non-negative
-     , numeric-prelude, random, sox, storable-record, storablevector
-     , synthesizer-core, transformers, utility-ht
+     , numeric-prelude, random, semigroups, sox, storable-record
+     , storablevector, synthesizer-core, transformers, utility-ht
      }:
      mkDerivation {
        pname = "synthesizer-dimensional";
-       version = "0.8.0.2";
-       sha256 = "17d1q57bs7qkd0688qn47fh5m22nfamihdh35sahdl9jf68cb1yn";
+       version = "0.8.1";
+       sha256 = "0a8frn0k4dc0kh71arcqpc1z4dilr8c7yqpp6j80llh12lrcp6f4";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bytestring event-list non-negative numeric-prelude random sox
-         storable-record storablevector synthesizer-core transformers
-         utility-ht
+         base bytestring event-list non-negative numeric-prelude random
+         semigroups sox storable-record storablevector synthesizer-core
+         transformers utility-ht
        ];
        homepage = "http://www.haskell.org/haskellwiki/Synthesizer";
        description = "Audio signal processing with static physical dimensions";
@@ -196294,19 +196866,19 @@ self: {
   "synthesizer-midi" = callPackage
     ({ mkDerivation, array, base, containers, data-accessor
      , data-accessor-transformers, deepseq, event-list, midi
-     , non-negative, numeric-prelude, sox, storable-record
+     , non-negative, numeric-prelude, semigroups, sox, storable-record
      , storablevector, synthesizer-core, synthesizer-dimensional
      , transformers, utility-ht
      }:
      mkDerivation {
        pname = "synthesizer-midi";
-       version = "0.6.0.4";
-       sha256 = "1xbzqhshhqa8i29gmj503p2bgxzm4sm7rz3kkbw2i4l0vpas2zb0";
+       version = "0.6.1";
+       sha256 = "02z6sywk047vn2is9fq9nr4agdy9xis9ydbl15pmrb0vlmvpx3qr";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          array base containers data-accessor data-accessor-transformers
-         deepseq event-list midi non-negative numeric-prelude sox
+         deepseq event-list midi non-negative numeric-prelude semigroups sox
          storable-record storablevector synthesizer-core
          synthesizer-dimensional transformers utility-ht
        ];
@@ -196317,6 +196889,7 @@ self: {
        homepage = "http://www.haskell.org/haskellwiki/Synthesizer";
        description = "Render audio signals from MIDI files or realtime messages";
        license = "GPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "sys-auth-smbclient" = callPackage
@@ -196670,11 +197243,6 @@ self: {
          template-haskell
        ];
        librarySystemDepends = [ libossp_uuid ];
-       executableHaskellDepends = [
-         base binary bytestring containers murmur-hash parsec
-         template-haskell
-       ];
-       executableSystemDepends = [ libossp_uuid ];
        homepage = "http://github.com/solidsnack/system-uuid/";
        description = "Bindings to system UUID functions";
        license = stdenv.lib.licenses.bsd3;
@@ -197072,7 +197640,6 @@ self: {
          base bytestring containers data-accessor explicit-exception
          non-empty transformers utility-ht xml-basic
        ];
-       executableHaskellDepends = [ base xml-basic ];
        testHaskellDepends = [ base xml-basic ];
        benchmarkHaskellDepends = [
          base bytestring containers data-accessor explicit-exception
@@ -197545,9 +198112,7 @@ self: {
      }) {};
 
   "takusen-oracle" = callPackage
-    ({ mkDerivation, base, clntsh, mtl, old-time, QuickCheck, random
-     , time
-     }:
+    ({ mkDerivation, base, clntsh, mtl, old-time, time }:
      mkDerivation {
        pname = "takusen-oracle";
        version = "0.9.4.1";
@@ -197556,9 +198121,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base mtl old-time time ];
        librarySystemDepends = [ clntsh ];
-       executableHaskellDepends = [
-         base mtl old-time QuickCheck random time
-       ];
        homepage = "https://github.com/paulrzcz/takusen-oracle.git";
        description = "Database library with left-fold interface for Oracle";
        license = stdenv.lib.licenses.bsd3;
@@ -198632,7 +199194,6 @@ self: {
          base bytestring containers inline-c repa sdl2 vector
        ];
        librarySystemDepends = [ tcod ];
-       executableHaskellDepends = [ base ];
        homepage = "https://github.com/ncrashed/tcod-haskell#readme";
        description = "Bindings to libtcod roguelike engine";
        license = stdenv.lib.licenses.bsd3;
@@ -200248,8 +200809,8 @@ self: {
      }) {};
 
   "testbench" = callPackage
-    ({ mkDerivation, base, bytestring, cassava, containers, criterion
-     , deepseq, dlist, HUnit, optparse-applicative, process, statistics
+    ({ mkDerivation, base, bytestring, cassava, criterion, deepseq
+     , dlist, HUnit, optparse-applicative, process, statistics
      , streaming, streaming-cassava, streaming-with, temporary
      , transformers, weigh
      }:
@@ -200264,9 +200825,6 @@ self: {
          optparse-applicative process statistics streaming streaming-cassava
          streaming-with temporary transformers weigh
        ];
-       executableHaskellDepends = [
-         base bytestring containers criterion HUnit
-       ];
        description = "Create tests and benchmarks together";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -200422,8 +200980,8 @@ self: {
 
   "texmath" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
-     , mtl, network-uri, pandoc-types, parsec, process, split, syb
-     , temporary, text, utf8-string, xml
+     , mtl, pandoc-types, parsec, process, split, syb, temporary, text
+     , utf8-string, xml
      }:
      mkDerivation {
        pname = "texmath";
@@ -200434,7 +200992,6 @@ self: {
        libraryHaskellDepends = [
          base containers mtl pandoc-types parsec syb xml
        ];
-       executableHaskellDepends = [ network-uri ];
        testHaskellDepends = [
          base bytestring directory filepath process split temporary text
          utf8-string xml
@@ -201080,8 +201637,8 @@ self: {
      }:
      mkDerivation {
        pname = "text-replace";
-       version = "0.0.0.1";
-       sha256 = "15qf0pwjhaa2zwdzixil5q1iqs5cwlazggzsgwwq553jlggbf063";
+       version = "0.0.0.2";
+       sha256 = "1qd3i8sj6z0vgb2yn345wh16w0lvmqdvywrkpcdsmbc00j8cwkjq";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
@@ -202372,8 +202929,8 @@ self: {
      }:
      mkDerivation {
        pname = "threadscope";
-       version = "0.2.9";
-       sha256 = "1ayn5ahfkdh367m8x0xwr8f5pqy8z41wmc60b78a1d3p44j86aq7";
+       version = "0.2.10";
+       sha256 = "1wmj5a7kfyj8msi9gfvd48rr4vpl4ggd251yrj09ly5la98zs8pv";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -202419,10 +202976,6 @@ self: {
          base bifunctors casing containers generics-sop profunctors text
          threepenny-gui
        ];
-       executableHaskellDepends = [
-         base bifunctors casing containers generics-sop profunctors text
-         threepenny-gui
-       ];
        homepage = "https://github.com/pepeiborra/threepenny-editors";
        description = "Composable algebraic editors";
        license = stdenv.lib.licenses.bsd3;
@@ -203340,14 +203893,14 @@ self: {
   "time-warp" = callPackage
     ({ mkDerivation, ansi-terminal, array, async, attoparsec, base
      , binary, binary-conduit, bytestring, conduit, conduit-extra
-     , containers, data-default, data-msgpack, deepseq, directory
-     , exceptions, extra, formatting, hashable, hslogger, hspec, lens
-     , lifted-base, log-warper, mmorph, monad-control, monad-loops
-     , MonadRandom, mtl, network, optparse-simple, pqueue, QuickCheck
-     , quickcheck-instances, random, resourcet, safe, semigroups
-     , serokell-util, slave-thread, stm, stm-chans, stm-conduit
-     , streaming-commons, template-haskell, text, text-format, time
-     , time-units, transformers, transformers-base, unordered-containers
+     , containers, data-default, data-msgpack, deepseq, exceptions
+     , extra, formatting, hashable, hspec, lens, lifted-base, log-warper
+     , mmorph, monad-control, monad-loops, MonadRandom, mtl, network
+     , pqueue, QuickCheck, quickcheck-instances, random, safe
+     , semigroups, serokell-util, slave-thread, stm, stm-chans
+     , stm-conduit, streaming-commons, template-haskell, text
+     , text-format, time, time-units, transformers, transformers-base
+     , unordered-containers
      }:
      mkDerivation {
        pname = "time-warp";
@@ -203365,14 +203918,6 @@ self: {
          streaming-commons template-haskell text text-format time time-units
          transformers transformers-base unordered-containers
        ];
-       executableHaskellDepends = [
-         async attoparsec base binary binary-conduit bytestring conduit
-         conduit-extra containers data-default data-msgpack directory
-         exceptions extra formatting hslogger hspec lens log-warper
-         monad-control monad-loops MonadRandom mtl optparse-simple
-         QuickCheck random resourcet serokell-util stm text text-format time
-         time-units transformers unordered-containers
-       ];
        testHaskellDepends = [
          async base data-default data-msgpack exceptions hspec lens
          log-warper mtl QuickCheck random serokell-util stm text text-format
@@ -203423,6 +203968,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "timeit_2_0" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "timeit";
+       version = "2.0";
+       sha256 = "1sliqpvl501rlcj6s0lhmsf5ym24j4h881wzc1f1wdyvg3jz8kd1";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/merijn/timeit";
+       description = "Time monadic computations with an IO base";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "timelens" = callPackage
     ({ mkDerivation, base, lens, time }:
      mkDerivation {
@@ -203515,10 +204073,6 @@ self: {
          base containers focus hashable list-t stm stm-containers time
          unordered-containers
        ];
-       executableHaskellDepends = [
-         base containers focus hashable list-t stm stm-containers time
-         unordered-containers
-       ];
        testHaskellDepends = [
          base containers focus hashable list-t QuickCheck
          quickcheck-instances stm stm-containers tasty tasty-hunit
@@ -203871,8 +204425,8 @@ self: {
     ({ mkDerivation, base, c2hs, text }:
      mkDerivation {
        pname = "tinyfiledialogs";
-       version = "0.2.0.0";
-       sha256 = "16vzn532204vs39lfsf7q20zkhncqgk1vzqls9x2cy8kzdzrqlm4";
+       version = "0.2.1.0";
+       sha256 = "1nbsbzh33q4py5164lsif08ll98ysiz5d2ysvz4lcrf4jh9vgggg";
        libraryHaskellDepends = [ base text ];
        libraryToolDepends = [ c2hs ];
        homepage = "https://github.com/mtolly/tinyfiledialogs";
@@ -204032,12 +204586,12 @@ self: {
      }) {};
 
   "tkyprof" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
-     , cmdargs, conduit, conduit-extra, containers, data-default
-     , directory, exceptions, filepath, http-types, mtl, resourcet
-     , rosezipper, shakespeare, stm, template-haskell, text, time
-     , transformers, unordered-containers, vector, wai, wai-extra, warp
-     , web-routes, yesod, yesod-core, yesod-form, yesod-static
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, cmdargs
+     , conduit, conduit-extra, containers, data-default, directory
+     , exceptions, filepath, http-types, mtl, resourcet, rosezipper
+     , shakespeare, stm, template-haskell, text, time, transformers
+     , unordered-containers, vector, wai, wai-extra, warp, web-routes
+     , yesod, yesod-core, yesod-form, yesod-static
      }:
      mkDerivation {
        pname = "tkyprof";
@@ -204047,12 +204601,11 @@ self: {
        isExecutable = true;
        enableSeparateDataOutput = true;
        executableHaskellDepends = [
-         aeson attoparsec base blaze-builder bytestring cmdargs conduit
-         conduit-extra containers data-default directory exceptions filepath
-         http-types mtl resourcet rosezipper shakespeare stm
-         template-haskell text time transformers unordered-containers vector
-         wai wai-extra warp web-routes yesod yesod-core yesod-form
-         yesod-static
+         aeson attoparsec base bytestring cmdargs conduit conduit-extra
+         containers data-default directory exceptions filepath http-types
+         mtl resourcet rosezipper shakespeare stm template-haskell text time
+         transformers unordered-containers vector wai wai-extra warp
+         web-routes yesod yesod-core yesod-form yesod-static
        ];
        homepage = "https://github.com/maoe/tkyprof";
        description = "A web-based visualizer for GHC Profiling Reports";
@@ -204491,9 +205044,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "tokenizer-monad" = callPackage
+    ({ mkDerivation, base, text }:
+     mkDerivation {
+       pname = "tokenizer-monad";
+       version = "0.1.0.0";
+       sha256 = "1n31n3wql93ljjgzfxpl5qd7kdb3dmr00yw0sz0wkkfgh2id1m99";
+       libraryHaskellDepends = [ base text ];
+       description = "An efficient and easy-to-use tokenizer monad";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "toktok" = callPackage
-    ({ mkDerivation, base, bytestring, containers, criterion, filepath
-     , gf, haskell98, HUnit, iconv, progression, QuickCheck
+    ({ mkDerivation, base, bytestring, containers, gf, haskell98, iconv
      }:
      mkDerivation {
        pname = "toktok";
@@ -204502,10 +205066,7 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers haskell98 ];
-       executableHaskellDepends = [
-         base bytestring criterion filepath gf HUnit iconv progression
-         QuickCheck
-       ];
+       executableHaskellDepends = [ base bytestring gf iconv ];
        license = "GPL";
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -204824,18 +205385,17 @@ self: {
      }) {toxcore = null;};
 
   "toysolver" = callPackage
-    ({ mkDerivation, array, attoparsec, base, bytestring
-     , bytestring-builder, clock, containers, criterion, data-default
-     , data-default-class, data-interval, deepseq, directory
-     , extended-reals, filepath, finite-field, ghc-prim, hashable
-     , hashtables, haskeline, heaps, intern, lattices, log-domain, loop
-     , megaparsec, mtl, multiset, mwc-random, OptDir, parsec
-     , prettyclass, primes, primitive, process, pseudo-boolean, queue
-     , QuickCheck, scientific, semigroups, sign, split, stm, tasty
-     , tasty-hunit, tasty-quickcheck, tasty-th, template-haskell
-     , temporary, text, time, transformers, transformers-compat
-     , unbounded-delays, unordered-containers, vector, vector-space
-     , xml-conduit
+    ({ mkDerivation, array, base, bytestring, bytestring-builder, clock
+     , containers, criterion, data-default, data-default-class
+     , data-interval, deepseq, directory, extended-reals, filepath
+     , finite-field, ghc-prim, hashable, hashtables, haskeline, heaps
+     , intern, lattices, log-domain, loop, megaparsec, mtl, multiset
+     , mwc-random, OptDir, parsec, prettyclass, primes, primitive
+     , process, pseudo-boolean, queue, QuickCheck, scientific
+     , semigroups, sign, stm, tasty, tasty-hunit, tasty-quickcheck
+     , tasty-th, template-haskell, temporary, text, time, transformers
+     , transformers-compat, unbounded-delays, unordered-containers
+     , vector, vector-space, xml-conduit
      }:
      mkDerivation {
        pname = "toysolver";
@@ -204854,11 +205414,11 @@ self: {
          vector-space xml-conduit
        ];
        executableHaskellDepends = [
-         array attoparsec base bytestring bytestring-builder clock
-         containers data-default data-default-class directory filepath
-         haskeline intern megaparsec mtl mwc-random OptDir parsec process
-         pseudo-boolean scientific split temporary text time transformers
-         transformers-compat unbounded-delays unordered-containers vector
+         array base bytestring bytestring-builder clock containers
+         data-default data-default-class directory filepath haskeline intern
+         megaparsec mtl mwc-random OptDir parsec process pseudo-boolean
+         scientific temporary text time transformers transformers-compat
+         unbounded-delays vector
        ];
        testHaskellDepends = [
          array base bytestring bytestring-builder containers
@@ -205865,10 +206425,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers mtl QuickCheck random ];
-       executableHaskellDepends = [
-         base containers mtl QuickCheck random
-       ];
-       testHaskellDepends = [ base containers mtl QuickCheck random ];
        homepage = "http://www.haskell.org/haskellwiki/Treeviz";
        description = "Visualization of computation decomposition trees";
        license = stdenv.lib.licenses.bsd3;
@@ -206274,8 +206830,8 @@ self: {
      }) {};
 
   "tsparse" = callPackage
-    ({ mkDerivation, base, Decimal, parsec, pretty, process, random
-     , split, time
+    ({ mkDerivation, base, Decimal, parsec, pretty, process, split
+     , time
      }:
      mkDerivation {
        pname = "tsparse";
@@ -206286,9 +206842,6 @@ self: {
        libraryHaskellDepends = [
          base Decimal parsec pretty process split time
        ];
-       executableHaskellDepends = [
-         base Decimal parsec pretty process random split time
-       ];
        homepage = "http://www.github.com/massysett/tsparse";
        description = "Parses U.S. federal Thrift Savings Plan PDF quarterly statements";
        license = stdenv.lib.licenses.bsd3;
@@ -206804,8 +207357,8 @@ self: {
      }:
      mkDerivation {
        pname = "twee";
-       version = "2.1";
-       sha256 = "0g73siwd6hrqsfnvhy51d3q20whad130ai356qv9kv8myi2z8ii4";
+       version = "2.1.1";
+       sha256 = "08mhq7yr66hgs6p01wx935xr59pm427qxyz8qd9f00lbgkhjbvzc";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -206823,8 +207376,8 @@ self: {
      }:
      mkDerivation {
        pname = "twee-lib";
-       version = "2.1";
-       sha256 = "0h1wb1jiqd9xcyjg0mdp7kb45bsk3q3mksz4jv8kiqpxi3gjk2fl";
+       version = "2.1.1";
+       sha256 = "00c9qwx27qsljpvvywljssncw805qd2aq8vwcyqqawjcpbyrxf0d";
        libraryHaskellDepends = [
          base containers dlist ghc-prim pretty primitive transformers vector
        ];
@@ -208727,9 +209280,7 @@ self: {
      }) {};
 
   "udev" = callPackage
-    ({ mkDerivation, base, bytestring, libudev, posix-paths, select
-     , unix
-     }:
+    ({ mkDerivation, base, bytestring, libudev, posix-paths, unix }:
      mkDerivation {
        pname = "udev";
        version = "0.1.0.0";
@@ -208738,7 +209289,6 @@ self: {
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring posix-paths unix ];
        libraryPkgconfigDepends = [ libudev ];
-       executableHaskellDepends = [ base bytestring select ];
        homepage = "https://github.com/pxqr/udev";
        description = "libudev bindings";
        license = stdenv.lib.licenses.bsd3;
@@ -209346,6 +209896,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "unicode_0_0_1" = callPackage
+    ({ mkDerivation, base, containers, semigroups, utility-ht }:
+     mkDerivation {
+       pname = "unicode";
+       version = "0.0.1";
+       sha256 = "10cv8kk3c028bylkjz8jx0xhmkzrjbmhm1hhbdsyvszl9mfykga9";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base containers semigroups ];
+       testHaskellDepends = [ base containers utility-ht ];
+       homepage = "http://hub.darcs.net/thielema/unicode/";
+       description = "Construct and transform unicode characters";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "unicode-names" = callPackage
     ({ mkDerivation, array, base, containers, unicode-properties }:
      mkDerivation {
@@ -209630,38 +210196,40 @@ self: {
      }) {};
 
   "unique-logic" = callPackage
-    ({ mkDerivation, base, non-empty, QuickCheck, transformers
-     , utility-ht
+    ({ mkDerivation, base, explicit-exception, non-empty, QuickCheck
+     , semigroups, transformers, utility-ht
      }:
      mkDerivation {
        pname = "unique-logic";
-       version = "0.3";
-       sha256 = "0pjkqvam73d6xy528r9zf75km2yr997in902174raj6kw3kgdl41";
-       libraryHaskellDepends = [ base transformers utility-ht ];
+       version = "0.4";
+       sha256 = "0lza0g7mvij6fj07nfyrgl7vy6hpqmmmzbnxylq71jb4a90sn28j";
+       libraryHaskellDepends = [
+         base explicit-exception transformers utility-ht
+       ];
        testHaskellDepends = [
-         base non-empty QuickCheck transformers utility-ht
+         base non-empty QuickCheck semigroups transformers utility-ht
        ];
-       homepage = "http://code.haskell.org/~thielema/unique-logic/";
+       homepage = "http://hub.darcs.net/thielema/unique-logic/";
        description = "Solve simple simultaneous equations";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "unique-logic-tf" = callPackage
-    ({ mkDerivation, base, containers, explicit-exception, non-empty
-     , QuickCheck, transformers, utility-ht
+    ({ mkDerivation, base, containers, data-ref, non-empty, QuickCheck
+     , semigroups, transformers, utility-ht
      }:
      mkDerivation {
        pname = "unique-logic-tf";
-       version = "0.4.1.2";
-       sha256 = "1gdcp5fh5krhpcmzsbzkd8sk7y41cjdcfvv5zcaafw19pbrh81nh";
+       version = "0.5";
+       sha256 = "05v9ky3lrh4yzjsfgxa2sz44l7dlsvi5iv4h9rnsj2sd3hj2xcsa";
        libraryHaskellDepends = [
-         base containers explicit-exception transformers utility-ht
+         base containers data-ref semigroups transformers utility-ht
        ];
        testHaskellDepends = [
          base non-empty QuickCheck transformers utility-ht
        ];
-       homepage = "http://code.haskell.org/~thielema/unique-logic-tf/";
+       homepage = "http://hub.darcs.net/thielema/unique-logic-tf/";
        description = "Solve simple simultaneous equations";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -210002,22 +210570,21 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "universum_1_0_4_1" = callPackage
+  "universum_1_0_1" = callPackage
     ({ mkDerivation, base, bytestring, containers, criterion, deepseq
-     , doctest, ghc-prim, Glob, hashable, microlens, microlens-mtl, mtl
+     , ghc-prim, hashable, microlens, microlens-mtl, mtl
      , safe-exceptions, semigroups, stm, text, text-format, transformers
      , type-operators, unordered-containers, utf8-string, vector
      }:
      mkDerivation {
        pname = "universum";
-       version = "1.0.4.1";
-       sha256 = "1xsachyf52km3awrpqmqhlwncz55mbc29xjwvsci01vrd6swz9c0";
+       version = "1.0.1";
+       sha256 = "1pa8qnr9px5qfwhpxj15wnqaf5x063ih87mx78fcks95xaqf648k";
        libraryHaskellDepends = [
          base bytestring containers deepseq ghc-prim hashable microlens
          microlens-mtl mtl safe-exceptions stm text text-format transformers
          type-operators unordered-containers utf8-string vector
        ];
-       testHaskellDepends = [ base doctest Glob ];
        benchmarkHaskellDepends = [
          base containers criterion deepseq hashable mtl semigroups text
          unordered-containers
@@ -210066,7 +210633,7 @@ self: {
      }) {};
 
   "unix-fcntl" = callPackage
-    ({ mkDerivation, base, foreign-var, unix }:
+    ({ mkDerivation, base, foreign-var }:
      mkDerivation {
        pname = "unix-fcntl";
        version = "0.0.0";
@@ -210074,7 +210641,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base foreign-var ];
-       executableHaskellDepends = [ base foreign-var unix ];
        homepage = "https://github.com/maoe/unix-fcntl";
        description = "Comprehensive bindings to fcntl(2)";
        license = stdenv.lib.licenses.bsd3;
@@ -210450,7 +211016,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base ];
-       executableHaskellDepends = [ base ];
        homepage = "http://github.com/konn/unsafely";
        description = "Flexible access control for unsafe operations and instances";
        license = stdenv.lib.licenses.bsd3;
@@ -212381,6 +212946,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "vault_0_3_1_0" = callPackage
+    ({ mkDerivation, base, containers, hashable, semigroups
+     , unordered-containers
+     }:
+     mkDerivation {
+       pname = "vault";
+       version = "0.3.1.0";
+       sha256 = "17wp9i64k5ms4bqwjwqjj7llcbmyvgf81sah7w3zdqfsqd1shq6r";
+       libraryHaskellDepends = [
+         base containers hashable semigroups unordered-containers
+       ];
+       homepage = "https://github.com/HeinrichApfelmus/vault";
+       description = "a persistent store for values of arbitrary types";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "vault-tool" = callPackage
     ({ mkDerivation, aeson, base, bytestring, http-client
      , http-client-tls, http-types, text, unordered-containers
@@ -212626,6 +213208,7 @@ self: {
        homepage = "https://github.com/phadej/vec";
        description = "Vec: length-indexed (sized) list";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "vect" = callPackage
@@ -212716,8 +213299,8 @@ self: {
      }) {};
 
   "vector-algorithms" = callPackage
-    ({ mkDerivation, base, bytestring, containers, mtl, mwc-random
-     , primitive, QuickCheck, vector
+    ({ mkDerivation, base, bytestring, containers, primitive
+     , QuickCheck, vector
      }:
      mkDerivation {
        pname = "vector-algorithms";
@@ -212728,7 +213311,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bytestring primitive vector ];
-       executableHaskellDepends = [ base mtl mwc-random vector ];
        testHaskellDepends = [
          base bytestring containers QuickCheck vector
        ];
@@ -212813,8 +213395,8 @@ self: {
      }) {};
 
   "vector-bytestring" = callPackage
-    ({ mkDerivation, base, bytestring, criterion, deepseq, directory
-     , ghc-prim, primitive, QuickCheck, random, vector
+    ({ mkDerivation, base, bytestring, deepseq, directory, ghc-prim
+     , primitive, QuickCheck, random, vector
      }:
      mkDerivation {
        pname = "vector-bytestring";
@@ -212825,7 +213407,6 @@ self: {
        libraryHaskellDepends = [
          base bytestring deepseq ghc-prim primitive vector
        ];
-       executableHaskellDepends = [ base bytestring criterion deepseq ];
        testHaskellDepends = [ base directory QuickCheck random ];
        homepage = "https://github.com/basvandijk/vector-bytestring";
        description = "ByteStrings as type synonyms of Storable Vectors of Word8s";
@@ -213062,8 +213643,8 @@ self: {
        pname = "vector-space-points";
        version = "0.2.1.2";
        sha256 = "0jqiy7b3hy21c0imqxbzvcx0hxy33bh97bv47bpv099dx32d7spy";
-       revision = "2";
-       editedCabalFile = "0jnnzhwkc82flvaxqc1vv30d8vpdwnyi82614c34j79m51wcmvya";
+       revision = "3";
+       editedCabalFile = "07jrxmjw7yzrgkncam4axy3b3j5iha1d632kyd24n805b6p7vym3";
        libraryHaskellDepends = [ base vector-space ];
        description = "A type for points, as distinct from vectors";
        license = stdenv.lib.licenses.bsd3;
@@ -213236,7 +213817,6 @@ self: {
        libraryHaskellDepends = [
          aeson base containers text unordered-containers vector verdict
        ];
-       executableHaskellDepends = [ aeson base containers verdict ];
        testHaskellDepends = [
          aeson base containers hspec unordered-containers vector verdict
        ];
@@ -213380,6 +213960,7 @@ self: {
        ];
        homepage = "https://github.com/andrewthad/vicinity#readme";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "viewprof" = callPackage
@@ -214097,9 +214678,9 @@ self: {
      }) {};
 
   "vty-ui" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers, data-default
-     , directory, filepath, mtl, QuickCheck, random, regex-base, stm
-     , text, time, unix, vector, vty
+    ({ mkDerivation, array, base, containers, data-default, directory
+     , filepath, mtl, QuickCheck, random, regex-base, stm, text, unix
+     , vector, vty
      }:
      mkDerivation {
        pname = "vty-ui";
@@ -214112,9 +214693,7 @@ self: {
          array base containers data-default directory filepath mtl
          regex-base stm text unix vector vty
        ];
-       executableHaskellDepends = [
-         base bytestring mtl QuickCheck random text time vty
-       ];
+       executableHaskellDepends = [ base QuickCheck random text vty ];
        homepage = "http://jtdaugherty.github.com/vty-ui/";
        description = "An interactive terminal user interface library for Vty";
        license = stdenv.lib.licenses.bsd3;
@@ -214991,8 +215570,7 @@ self: {
     ({ mkDerivation, async, base, base-prelude, bytestring, conduit
      , conduit-extra, consul-haskell, enclosed-exceptions, http-client
      , http-types, monad-control, monad-logger, network, process
-     , resourcet, text, transformers, void, wai, wai-app-static
-     , wai-conduit, wai-extra, warp
+     , resourcet, text, transformers, void, wai, wai-conduit
      }:
      mkDerivation {
        pname = "wai-middleware-consul";
@@ -215006,10 +215584,6 @@ self: {
          monad-control monad-logger network process resourcet text
          transformers void wai wai-conduit
        ];
-       executableHaskellDepends = [
-         async base base-prelude monad-logger transformers wai
-         wai-app-static wai-extra warp
-       ];
        homepage = "https://github.com/fpco/wai-middleware-consul";
        description = "Wai Middleware for Consul";
        license = stdenv.lib.licenses.mit;
@@ -215166,9 +215740,6 @@ self: {
          cryptohash http-client http-types mtl old-locale time transformers
          word8
        ];
-       executableHaskellDepends = [
-         base bytestring http-client transformers
-       ];
        description = "WAI HMAC Authentication Middleware Client";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -215278,24 +215849,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "wai-middleware-rollbar_0_8_4" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, case-insensitive
-     , containers, hostname, hspec, hspec-golden-aeson, http-client
-     , http-conduit, http-types, lens, lens-aeson, network, QuickCheck
-     , text, time, unordered-containers, uuid, wai
+  "wai-middleware-rollbar_0_10_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, hostname, http-client
+     , http-conduit, http-types, rollbar-hs, text, time, uuid, wai
      }:
      mkDerivation {
        pname = "wai-middleware-rollbar";
-       version = "0.8.4";
-       sha256 = "1yycbkcc7jq8mlv6jslnq2j0w8yhv4859fds34pg2k1fg7ccb1iw";
+       version = "0.10.0";
+       sha256 = "1905cgmcgmsy0v2c84q33aharlklffqxhr6bwr1zvi138c9bivd6";
        libraryHaskellDepends = [
-         aeson base bytestring case-insensitive hostname http-client
-         http-conduit http-types network text time unordered-containers uuid
-         wai
-       ];
-       testHaskellDepends = [
-         aeson base bytestring case-insensitive containers hspec
-         hspec-golden-aeson lens lens-aeson QuickCheck text
+         aeson base bytestring hostname http-client http-conduit http-types
+         rollbar-hs text time uuid wai
        ];
        homepage = "https://github.com/joneshf/wai-middleware-rollbar#readme";
        description = "Middleware that communicates to Rollbar";
@@ -215410,9 +215974,8 @@ self: {
 
   "wai-middleware-verbs" = callPackage
     ({ mkDerivation, base, errors, exceptions, hashable, http-types
-     , mmorph, monad-logger, mtl, resourcet, text, transformers
+     , mmorph, monad-logger, mtl, resourcet, transformers
      , transformers-base, unordered-containers, wai
-     , wai-middleware-content-type, wai-transformers, warp
      }:
      mkDerivation {
        pname = "wai-middleware-verbs";
@@ -215424,11 +215987,6 @@ self: {
          base errors exceptions hashable http-types mmorph monad-logger mtl
          resourcet transformers transformers-base unordered-containers wai
        ];
-       executableHaskellDepends = [
-         base errors exceptions hashable http-types mmorph monad-logger mtl
-         resourcet text transformers transformers-base unordered-containers
-         wai wai-middleware-content-type wai-transformers warp
-       ];
        description = "Route different middleware responses based on the incoming HTTP verb";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -215886,7 +216444,7 @@ self: {
   "waitra" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, filepath
      , http-types, regex-applicative, tasty, tasty-hunit
-     , template-haskell, text, wai, wai-app-static, wai-extra, warp
+     , template-haskell, text, wai, wai-extra
      }:
      mkDerivation {
        pname = "waitra";
@@ -215900,7 +216458,6 @@ self: {
          aeson base bytestring directory filepath http-types
          regex-applicative template-haskell text wai
        ];
-       executableHaskellDepends = [ aeson base wai wai-app-static warp ];
        testHaskellDepends = [
          aeson base http-types tasty tasty-hunit wai wai-extra
        ];
@@ -216031,7 +216588,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "warp_3_2_16" = callPackage
+  "warp_3_2_17" = callPackage
     ({ mkDerivation, array, async, auto-update, base, blaze-builder
      , bytestring, case-insensitive, containers, directory, doctest
      , gauge, ghc-prim, hashable, hspec, http-client, http-date
@@ -216041,8 +216598,8 @@ self: {
      }:
      mkDerivation {
        pname = "warp";
-       version = "3.2.16";
-       sha256 = "111jwk9z3r4m14lmvlczpk8qhg31i2m01qy4lyawmsispy3fhr1i";
+       version = "3.2.17";
+       sha256 = "1frdwc7icadizbwlp0b1gxq95h9a6ds9cdq9rzqqsn4yq2jcbirb";
        libraryHaskellDepends = [
          array async auto-update base blaze-builder bytestring
          case-insensitive containers ghc-prim hashable http-date http-types
@@ -216124,10 +216681,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "warp-tls_3_2_4_2" = callPackage
+    ({ mkDerivation, base, bytestring, cryptonite, data-default-class
+     , network, streaming-commons, tls, tls-session-manager, wai, warp
+     }:
+     mkDerivation {
+       pname = "warp-tls";
+       version = "3.2.4.2";
+       sha256 = "08g74490mpaghrvkb5z6pa6b6bby1a83js52pg5jlm9b5zfwcj2w";
+       libraryHaskellDepends = [
+         base bytestring cryptonite data-default-class network
+         streaming-commons tls tls-session-manager wai warp
+       ];
+       homepage = "http://github.com/yesodweb/wai";
+       description = "HTTP over TLS support for Warp via the TLS package";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "warp-tls-uid" = callPackage
     ({ mkDerivation, base, bytestring, certificate, conduit
-     , crypto-random, http-types, network, network-conduit, pem, tls
-     , tls-extra, unix, wai, warp
+     , crypto-random, network, network-conduit, pem, tls, tls-extra
+     , unix, wai, warp
      }:
      mkDerivation {
        pname = "warp-tls-uid";
@@ -216139,10 +216714,6 @@ self: {
          base bytestring certificate conduit crypto-random network
          network-conduit pem tls tls-extra unix wai warp
        ];
-       executableHaskellDepends = [
-         base bytestring certificate conduit crypto-random http-types
-         network network-conduit pem tls tls-extra unix wai warp
-       ];
        description = "set group and user id before running server";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -216339,9 +216910,7 @@ self: {
      }) {};
 
   "wcwidth" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, containers
-     , setlocale, utf8-string
-     }:
+    ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "wcwidth";
        version = "0.0.2";
@@ -216349,9 +216918,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers ];
-       executableHaskellDepends = [
-         attoparsec base bytestring containers setlocale utf8-string
-       ];
        homepage = "http://github.com/solidsnack/wcwidth/";
        description = "Native wcwidth";
        license = stdenv.lib.licenses.bsd3;
@@ -217164,10 +217730,6 @@ self: {
          case-insensitive containers entropy network random SHA
          streaming-commons text
        ];
-       executableHaskellDepends = [
-         attoparsec base base64-bytestring binary blaze-builder bytestring
-         case-insensitive containers entropy network random SHA text
-       ];
        testHaskellDepends = [
          attoparsec base base64-bytestring binary blaze-builder bytestring
          case-insensitive containers entropy HUnit network QuickCheck random
@@ -217187,7 +217749,7 @@ self: {
 
   "websockets-rpc" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
-     , exceptions, hashable, monad-control, MonadRandom, mtl, QuickCheck
+     , exceptions, hashable, monad-control, mtl, QuickCheck
      , quickcheck-instances, stm, tasty, tasty-quickcheck, text
      , transformers, unordered-containers, uuid, wai-transformers
      , websockets, websockets-simple
@@ -217204,10 +217766,6 @@ self: {
          unordered-containers uuid wai-transformers websockets
          websockets-simple
        ];
-       executableHaskellDepends = [
-         aeson async base exceptions MonadRandom mtl wai-transformers
-         websockets websockets-simple
-       ];
        testHaskellDepends = [
          aeson base QuickCheck quickcheck-instances tasty tasty-quickcheck
        ];
@@ -217325,9 +217883,8 @@ self: {
      }) {};
 
   "weigh" = callPackage
-    ({ mkDerivation, base, bytestring-trie, containers, deepseq, mtl
-     , process, random, split, template-haskell, temporary
-     , unordered-containers
+    ({ mkDerivation, base, deepseq, mtl, process, split
+     , template-haskell, temporary
      }:
      mkDerivation {
        pname = "weigh";
@@ -217336,9 +217893,7 @@ self: {
        libraryHaskellDepends = [
          base deepseq mtl process split template-haskell temporary
        ];
-       testHaskellDepends = [
-         base bytestring-trie containers deepseq random unordered-containers
-       ];
+       testHaskellDepends = [ base deepseq ];
        homepage = "https://github.com/fpco/weigh#readme";
        description = "Measure allocations of a Haskell functions/values";
        license = stdenv.lib.licenses.bsd3;
@@ -218620,18 +219175,13 @@ self: {
      }) {};
 
   "workflow-windows" = callPackage
-    ({ mkDerivation, base, c-storable-deriving, doctest, free, hspec
-     , QuickCheck, StateVar, transformers, workflow-types
-     }:
+    ({ mkDerivation, base, doctest, hspec, QuickCheck }:
      mkDerivation {
        pname = "workflow-windows";
        version = "0.0.0";
        sha256 = "14pzzm7c17sg76lmxjaw0d5avgpafgj4q66diqmh502mx8k2z4jc";
        isLibrary = true;
        isExecutable = true;
-       libraryHaskellDepends = [
-         base c-storable-deriving free StateVar transformers workflow-types
-       ];
        executableHaskellDepends = [ base ];
        testHaskellDepends = [ base doctest hspec QuickCheck ];
        homepage = "http://github.com/sboosali/workflow-windows#readme";
@@ -219892,8 +220442,6 @@ self: {
        libraryHaskellDepends = [ base glib ];
        libraryPkgconfigDepends = [ libxfconf ];
        libraryToolDepends = [ gtk2hs-buildtools ];
-       executablePkgconfigDepends = [ libxfconf ];
-       executableToolDepends = [ gtk2hs-buildtools ];
        homepage = "http://patch-tag.com/r/obbele/xfconf/home";
        description = "FFI bindings to xfconf";
        license = stdenv.lib.licenses.gpl3;
@@ -220144,7 +220692,7 @@ self: {
      }) {};
 
   "xleb" = callPackage
-    ({ mkDerivation, base, containers, mtl, pretty-show, xml }:
+    ({ mkDerivation, base, containers, mtl, xml }:
      mkDerivation {
        pname = "xleb";
        version = "0.1.0";
@@ -220154,7 +220702,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers mtl xml ];
-       executableHaskellDepends = [ base pretty-show xml ];
        homepage = "https://github.com/aisamanra/xleb";
        description = "A simple monadic language for parsing XML structures";
        license = stdenv.lib.licenses.bsd3;
@@ -220346,6 +220893,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "xml-basic_0_1_3" = callPackage
+    ({ mkDerivation, base, containers, data-accessor
+     , explicit-exception, semigroups, utility-ht
+     }:
+     mkDerivation {
+       pname = "xml-basic";
+       version = "0.1.3";
+       sha256 = "0ma3bjjsvijknmdnywfk5ch9v5pymxbmkwgzzq58iiv26hkd3n4q";
+       libraryHaskellDepends = [
+         base containers data-accessor explicit-exception semigroups
+         utility-ht
+       ];
+       description = "Basics for XML/HTML representation and processing";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "xml-catalog" = callPackage
     ({ mkDerivation, base, bytestring, conduit, containers, text
      , transformers, uri-conduit, xml-conduit
@@ -220436,8 +221000,8 @@ self: {
 
   "xml-conduit-parse" = callPackage
     ({ mkDerivation, base, conduit, conduit-parse, containers
-     , data-default, exceptions, hlint, parsers, resourcet, tasty
-     , tasty-hunit, text, xml-conduit, xml-types
+     , data-default, exceptions, parsers, resourcet, tasty, tasty-hunit
+     , text, xml-conduit, xml-types
      }:
      mkDerivation {
        pname = "xml-conduit-parse";
@@ -220448,8 +221012,8 @@ self: {
          xml-conduit xml-types
        ];
        testHaskellDepends = [
-         base conduit conduit-parse data-default hlint parsers resourcet
-         tasty tasty-hunit
+         base conduit conduit-parse data-default parsers resourcet tasty
+         tasty-hunit
        ];
        homepage = "https://github.com/k0ral/xml-conduit-parse";
        description = "Streaming XML parser based on conduits";
@@ -221378,7 +221942,6 @@ self: {
          base composition-prelude containers process transformers X11 xmonad
          xmonad-contrib
        ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec xmonad ];
        homepage = "https://hub.darcs.net/vmchale/xmonad-vanessa";
        description = "Custom xmonad, which builds with stack or cabal";
@@ -222214,7 +222777,7 @@ self: {
      }) {};
 
   "yampa-canvas" = callPackage
-    ({ mkDerivation, base, blank-canvas, stm, text, time, Yampa }:
+    ({ mkDerivation, base, blank-canvas, stm, time, Yampa }:
      mkDerivation {
        pname = "yampa-canvas";
        version = "0.2.2";
@@ -222224,7 +222787,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base blank-canvas stm time Yampa ];
-       executableHaskellDepends = [ base blank-canvas text Yampa ];
        description = "blank-canvas frontend for Yampa";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -222251,7 +222813,7 @@ self: {
 
   "yampa-glut" = callPackage
     ({ mkDerivation, base, GLUT, newtype, OpenGL, vector-space
-     , vector-space-opengl, Yampa-core
+     , Yampa-core
      }:
      mkDerivation {
        pname = "yampa-glut";
@@ -222262,16 +222824,32 @@ self: {
        libraryHaskellDepends = [
          base GLUT newtype OpenGL vector-space Yampa-core
        ];
-       executableHaskellDepends = [
-         base GLUT newtype OpenGL vector-space vector-space-opengl
-         Yampa-core
-       ];
        homepage = "https://github.com/ony/yampa-glut";
        description = "Connects Yampa and GLUT";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "yampa-sdl2" = callPackage
+    ({ mkDerivation, base, colour, linear, sdl2, sdl2-gfx, StateVar
+     , text, Yampa
+     }:
+     mkDerivation {
+       pname = "yampa-sdl2";
+       version = "0.0.1.1";
+       sha256 = "0p162kaznv4mk8x3zvkb7vnjwsqn8gydblpxijqsjgzc3qbi5mwq";
+       libraryHaskellDepends = [
+         base colour linear sdl2 sdl2-gfx StateVar text Yampa
+       ];
+       testHaskellDepends = [
+         base colour linear sdl2 sdl2-gfx StateVar text Yampa
+       ];
+       homepage = "https://github.com/Simre1/YampaSDL2#readme";
+       description = "Yampa and SDL2 made easy";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "yampa2048" = callPackage
     ({ mkDerivation, base, gloss, random, Yampa }:
      mkDerivation {
@@ -222289,8 +222867,8 @@ self: {
 
   "yandex-translate" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default-class
-     , exceptions, hspec, hspec-core, lens, lens-aeson, text
-     , transformers, unordered-containers, wreq
+     , exceptions, lens, lens-aeson, text, transformers
+     , unordered-containers, wreq
      }:
      mkDerivation {
        pname = "yandex-translate";
@@ -222300,9 +222878,6 @@ self: {
          aeson base bytestring data-default-class exceptions lens lens-aeson
          text transformers unordered-containers wreq
        ];
-       testHaskellDepends = [
-         base data-default-class hspec hspec-core lens text transformers
-       ];
        description = "Bindings to Yandex translate API";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -222721,7 +223296,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "yesod-auth_1_6_0" = callPackage
+  "yesod-auth_1_6_1" = callPackage
     ({ mkDerivation, aeson, authenticate, base, base16-bytestring
      , base64-bytestring, binary, blaze-builder, blaze-html
      , blaze-markup, byteable, bytestring, conduit, conduit-extra
@@ -222734,8 +223309,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.6.0";
-       sha256 = "1whjf9hddlv2rymy5frgck6pb9l408lywdnnylnzmkrvrpvlm2nh";
+       version = "1.6.1";
+       sha256 = "09mp8kb2b1wz28ks1zc3chfm7qs5k6cp1aw84p03vrdi1rj1841i";
        libraryHaskellDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup byteable bytestring conduit
@@ -223049,11 +223624,10 @@ self: {
      }) {};
 
   "yesod-auth-oauth2" = callPackage
-    ({ mkDerivation, aeson, authenticate, base, bytestring, containers
-     , hoauth2, hspec, http-client, http-conduit, http-types
-     , lifted-base, load-env, microlens, network-uri, random, text
-     , transformers, uri-bytestring, vector, warp, yesod, yesod-auth
-     , yesod-core, yesod-form
+    ({ mkDerivation, aeson, authenticate, base, bytestring, hoauth2
+     , hspec, http-client, http-conduit, http-types, lifted-base
+     , microlens, network-uri, random, text, transformers
+     , uri-bytestring, vector, yesod-auth, yesod-core, yesod-form
      }:
      mkDerivation {
        pname = "yesod-auth-oauth2";
@@ -223066,9 +223640,6 @@ self: {
          http-types lifted-base microlens network-uri random text
          transformers uri-bytestring vector yesod-auth yesod-core yesod-form
        ];
-       executableHaskellDepends = [
-         base containers http-conduit load-env text warp yesod yesod-auth
-       ];
        testHaskellDepends = [ base hspec uri-bytestring ];
        homepage = "http://github.com/thoughtbot/yesod-auth-oauth2";
        description = "OAuth 2.0 authentication plugins";
@@ -223814,11 +224385,9 @@ self: {
      }) {};
 
   "yesod-job-queue" = callPackage
-    ({ mkDerivation, aeson, api-field-json-th, base, bytestring
-     , classy-prelude-yesod, cron, file-embed, hedis, lens
-     , monad-control, monad-logger, persistent-sqlite, resourcet, stm
-     , text, time, transformers, uuid, yesod, yesod-core
-     , yesod-persistent
+    ({ mkDerivation, aeson, api-field-json-th, base, bytestring, cron
+     , file-embed, hedis, lens, monad-control, monad-logger, stm, text
+     , time, transformers, uuid, yesod, yesod-core, yesod-persistent
      }:
      mkDerivation {
        pname = "yesod-job-queue";
@@ -223831,10 +224400,6 @@ self: {
          monad-control monad-logger stm text time transformers uuid yesod
          yesod-core yesod-persistent
        ];
-       executableHaskellDepends = [
-         base classy-prelude-yesod hedis monad-logger persistent-sqlite
-         resourcet yesod yesod-core
-       ];
        testHaskellDepends = [ base ];
        homepage = "https://github.com/nakaji-dayo/yesod-job-queue#readme";
        description = "Background jobs library for Yesod";
@@ -223879,14 +224444,9 @@ self: {
      }) {};
 
   "yesod-mangopay" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, conduit, conduit-extra
-     , containers, country-codes, data-default, directory, fast-logger
-     , hamlet, hjsmin, http-conduit, http-types, lifted-base, mangopay
-     , monad-control, monad-logger, persistent, persistent-postgresql
-     , persistent-template, resourcet, shakespeare, template-haskell
-     , text, time, wai, wai-extra, wai-logger, warp, yaml, yesod
-     , yesod-auth, yesod-core, yesod-form, yesod-persistent
-     , yesod-static
+    ({ mkDerivation, base, containers, http-conduit, http-types
+     , lifted-base, mangopay, persistent-template, text, time, yesod
+     , yesod-core
      }:
      mkDerivation {
        pname = "yesod-mangopay";
@@ -223898,15 +224458,6 @@ self: {
          base containers http-conduit http-types lifted-base mangopay
          persistent-template text time yesod yesod-core
        ];
-       executableHaskellDepends = [
-         aeson base bytestring conduit conduit-extra containers
-         country-codes data-default directory fast-logger hamlet hjsmin
-         http-conduit lifted-base mangopay monad-control monad-logger
-         persistent persistent-postgresql persistent-template resourcet
-         shakespeare template-haskell text time wai wai-extra wai-logger
-         warp yaml yesod yesod-auth yesod-core yesod-form yesod-persistent
-         yesod-static
-       ];
        homepage = "https://github.com/prowdsponsor/mangopay";
        description = "Yesod library for MangoPay API access";
        license = stdenv.lib.licenses.bsd3;
@@ -223915,16 +224466,16 @@ self: {
 
   "yesod-markdown" = callPackage
     ({ mkDerivation, base, blaze-html, blaze-markup, bytestring
-     , directory, hspec, pandoc, persistent, shakespeare, texmath, text
+     , directory, hspec, pandoc, persistent, shakespeare, text
      , xss-sanitize, yesod-core, yesod-form
      }:
      mkDerivation {
        pname = "yesod-markdown";
-       version = "0.11.4";
-       sha256 = "05m9h70s50bl1s2xbzbnfa2xy3aizq5cjsfi3rqj4fal0ralqbpa";
+       version = "0.12.0";
+       sha256 = "0hqpshgjx3agci4wxgzi6v3s8y0q5d4x18gkqlf204a3fynm0fmh";
        libraryHaskellDepends = [
          base blaze-html blaze-markup bytestring directory pandoc persistent
-         shakespeare texmath text xss-sanitize yesod-core yesod-form
+         shakespeare text xss-sanitize yesod-core yesod-form
        ];
        testHaskellDepends = [ base blaze-html hspec text ];
        homepage = "http://github.com/pbrisbin/yesod-markdown";
@@ -224020,8 +224571,7 @@ self: {
 
   "yesod-paginator" = callPackage
     ({ mkDerivation, base, data-default, hspec, persistent, resourcet
-     , text, transformers, wai-extra, warp, yesod, yesod-core
-     , yesod-test
+     , text, transformers, wai-extra, yesod, yesod-core, yesod-test
      }:
      mkDerivation {
        pname = "yesod-paginator";
@@ -224032,7 +224582,6 @@ self: {
        libraryHaskellDepends = [
          base persistent resourcet text transformers yesod
        ];
-       executableHaskellDepends = [ base warp yesod ];
        testHaskellDepends = [
          base data-default hspec wai-extra yesod-core yesod-test
        ];
@@ -224590,8 +225139,7 @@ self: {
     ({ mkDerivation, aeson, base, blaze-builder, blaze-markup
      , bytestring, data-default, directory, filepath, hamlet, hspec
      , HUnit, language-javascript, mime-types, shakespeare
-     , template-haskell, text, yesod, yesod-core, yesod-static
-     , yesod-test
+     , template-haskell, text, yesod-core, yesod-static, yesod-test
      }:
      mkDerivation {
        pname = "yesod-static-angular";
@@ -224604,9 +225152,6 @@ self: {
          directory filepath hamlet language-javascript mime-types
          shakespeare template-haskell text yesod-core yesod-static
        ];
-       executableHaskellDepends = [
-         base data-default shakespeare yesod yesod-static
-       ];
        testHaskellDepends = [
          base bytestring hamlet hspec HUnit shakespeare template-haskell
          text yesod-core yesod-static yesod-test
@@ -225482,7 +226027,6 @@ self: {
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base bindings-DSL ieee754 ];
-       executableHaskellDepends = [ base ];
        description = "Bindings to Facebook's Yoga layout library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -225756,8 +226300,8 @@ self: {
      }:
      mkDerivation {
        pname = "z3";
-       version = "4.1.2";
-       sha256 = "09wph5hp5835npfib07852x4d122p8nh35cbwyr80a83a77l7yym";
+       version = "4.2.0";
+       sha256 = "1rzdsn54508y6w965a8y2g118ylx6588gxbdi3dd9ihqh9mdzg31";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base containers mtl ];
@@ -226305,7 +226849,6 @@ self: {
          array base binary bytestring containers digest directory filepath
          mtl old-time pretty text time unix zlib
        ];
-       executableHaskellDepends = [ base bytestring directory ];
        testHaskellDepends = [
          base bytestring directory filepath HUnit old-time process temporary
          time unix
@@ -226333,7 +226876,6 @@ self: {
          mtl old-time pretty text time unix zlib
        ];
        libraryToolDepends = [ unzip ];
-       executableHaskellDepends = [ base bytestring directory ];
        testHaskellDepends = [
          base bytestring directory filepath HUnit old-time process temporary
          time unix
diff --git a/pkgs/development/interpreters/dart/default.nix b/pkgs/development/interpreters/dart/default.nix
index 3d19f7ba2911d..17f124e798906 100644
--- a/pkgs/development/interpreters/dart/default.nix
+++ b/pkgs/development/interpreters/dart/default.nix
@@ -1,26 +1,51 @@
-{ stdenv, fetchurl, unzip }:
+{ stdenv, fetchurl, unzip, version }:
 
 let
-  version = "1.16.1";
+
+  sources = let
+
+    base = "https://storage.googleapis.com/dart-archive/channels";
+    stable = "${base}/stable/release";
+    dev = "${base}/dev/release";
+
+  in {
+    "1.16.1-x86_64-linux" = fetchurl {
+      url = "${stable}/${version}/sdk/dartsdk-linux-x64-release.zip";
+      sha256 = "01cbnc8hd2wwprmivppmzvld9ps644k16wpgqv31h1596l5p82n2";
+    };
+    "1.16.1-i686-linux" = fetchurl {
+      url = "${stable}/${version}/sdk/dartsdk-linux-ia32-release.zip";
+      sha256 = "0jfwzc3jbk4n5j9ka59s9bkb25l5g85fl1nf676mvj36swcfykx3";
+    };
+    "1.24.3-x86_64-linux" = fetchurl {
+      url = "${stable}/${version}/sdk/dartsdk-linux-x64-release.zip";
+      sha256 = "e323c97c35e6bc5d955babfe2e235a5484a82bb1e4870fa24562c8b9b800559b";
+    };
+    "1.24.3-i686-linux" = fetchurl {
+      url = "${stable}/${version}/sdk/dartsdk-linux-ia32-release.zip";
+      sha256 = "d67b8f8f9186e7d460320e6bce25ab343c014b6af4b2f61369ee83755d4da528";
+    };
+    "2.0.0-dev.26.0-x86_64-linux" = fetchurl {
+      url = "${dev}/${version}/sdk/dartsdk-linux-x64-release.zip";
+      sha256 = "18360489a7914d5df09b34934393e16c7627ba673c1e9ab5cfd11cd1d58fd7df";
+    };
+    "2.0.0-dev.26.0-i686-linux" = fetchurl {
+      url = "${dev}/${version}/sdk/dartsdk-linux-ia32-release.zip";
+      sha256 = "83ba8b64c76f48d8de4e0eb887e49b7960053f570d27e7ea438cc0bac789955e";
+    };
+  };
+
 in
+
 stdenv.mkDerivation {
+
   name = "dart-${version}";
 
   nativeBuildInputs = [
     unzip
   ];
-  
-  src =
-    if stdenv.system == "x86_64-linux" then
-      fetchurl {
-        url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-x64-release.zip";
-        sha256 = "01cbnc8hd2wwprmivppmzvld9ps644k16wpgqv31h1596l5p82n2";
-      }
-    else
-      fetchurl {
-        url = "https://storage.googleapis.com/dart-archive/channels/stable/release/${version}/sdk/dartsdk-linux-ia32-release.zip";
-        sha256 = "0jfwzc3jbk4n5j9ka59s9bkb25l5g85fl1nf676mvj36swcfykx3";
-      };
+
+  src = sources."${version}-${stdenv.system}" or (throw "unsupported version/system: ${version}/${stdenv.system}");
 
   installPhase = ''
     mkdir -p $out
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index a53df02f9b9bc..4ebc488d9988f 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -136,6 +136,12 @@ let
           ++ op (stdenv.hostPlatform != stdenv.buildPlatform)
              "--with-baseruby=${buildRuby}";
 
+        preInstall = ''
+          # Ruby installs gems here itself now.
+          mkdir -pv "$out/${passthru.gemPath}"
+          export GEM_HOME="$out/${passthru.gemPath}"
+        '';
+
         installFlags = stdenv.lib.optionalString docSupport "install-doc";
         # Bundler tries to create this directory
         postInstall = ''
@@ -148,7 +154,6 @@ let
           sed -i '/NROFF/d' $out/lib/ruby/*/*/rbconfig.rb
 
           # Bundler tries to create this directory
-          mkdir -pv $out/${passthru.gemPath}
           mkdir -p $out/nix-support
           cat > $out/nix-support/setup-hook <<EOF
           addGemPath() {
diff --git a/pkgs/development/interpreters/ruby/rubygems-src.nix b/pkgs/development/interpreters/ruby/rubygems-src.nix
index 99870e6ba2ca9..cb36c96a4c52a 100644
--- a/pkgs/development/interpreters/ruby/rubygems-src.nix
+++ b/pkgs/development/interpreters/ruby/rubygems-src.nix
@@ -1,6 +1,6 @@
 { fetchurl
-, version ? "2.6.13"
-, sha256 ? "1j98ww8cz9y4wwshg7p4i4acrmls3ywkyj1nlkh4k3bywwm50hfh"
+, version ? "2.7.6"
+, sha256 ? "1sqy6z1kngq91nxmv1hw4xhw1ycwx9s76hfbpcdlgkm9haji9xv7"
 }:
 fetchurl {
   url = "http://production.cf.rubygems.org/rubygems/rubygems-${version}.tgz";
diff --git a/pkgs/development/libraries/aspell/dictionaries.nix b/pkgs/development/libraries/aspell/dictionaries.nix
index 8d97d6db2f1cb..096ac80e5a70a 100644
--- a/pkgs/development/libraries/aspell/dictionaries.nix
+++ b/pkgs/development/libraries/aspell/dictionaries.nix
@@ -1,32 +1,113 @@
-{stdenv, fetchurl, aspell, which}:
+{lib, stdenv, fetchurl, aspell, which}:
+
+with lib;
+
+/* HOWTO:
+
+   * Add some of these to your profile or systemPackages.
+
+     ~~~~
+     environment.systemPackages = [
+       aspell
+       aspellDicts.en
+       aspellDicts.en-computers
+       aspellDicts.en-science
+     ];
+     ~~~~
+
+   * Rebuild and switch to the new profile.
+   * Add something like
+
+     ~~~~
+     master en_US
+     extra-dicts en-computers.rws
+     add-extra-dicts en_US-science.rws
+     ~~~~
+
+     to `/etc/aspell.conf` or `~/.aspell.conf`.
+   * Check that `aspell -a` starts without errors.
+   * (optional) Check your config with `aspell dump config | grep -vE '^(#|$)'`.
+   * Enjoy.
+
+*/
 
 let
 
   /* Function to compile an Aspell dictionary.  Fortunately, they all
      build in the exact same way. */
   buildDict =
-    {shortName, fullName, src, postInstall ? ""}:
+    {shortName, fullName, ...}@args:
 
-    stdenv.mkDerivation {
+    stdenv.mkDerivation ({
       name = "aspell-dict-${shortName}";
 
-      inherit src;
-
       buildInputs = [aspell which];
 
       dontAddPrefix = true;
 
       preBuild = "makeFlagsArray=(dictdir=$out/lib/aspell datadir=$out/lib/aspell)";
 
-      inherit postInstall;
-
       meta = {
         description = "Aspell dictionary for ${fullName}";
         platforms = stdenv.lib.platforms.all;
-      };
-    };
-
-in {
+      } // (args.meta or {});
+    } // removeAttrs args [ "meta" ]);
+
+  /* Function to compile txt dict files into Aspell dictionaries. */
+  buildTxtDict =
+    {langInputs ? [], ...}@args:
+    buildDict ({
+      propagatedUserEnvPackages = langInputs;
+
+      preBuild = ''
+        # Aspell can't handle multiple data-dirs
+        # Copy everything we might possibly need
+        ${concatMapStringsSep "\n" (p: ''
+          cp -a ${p}/lib/aspell/* .
+        '') ([ aspell ] ++ langInputs)}
+        export ASPELL_CONF="data-dir $(pwd)"
+
+        aspell-create() {
+          target=$1
+          shift
+          echo building $target
+          aspell create "$@" master ./$target.rws
+        }
+
+        words-only() {
+          awk -F'\t' '{print $1}' | sort | uniq
+        }
+
+        # drop comments
+        aspell-affix() {
+          words-only \
+            | grep -v '#' \
+            | aspell-create "$@"
+        }
+
+        # Hack: drop comments and words with affixes
+        aspell-plain() {
+          words-only \
+            | grep -v '#' \
+            | grep -v '/' \
+            | aspell-create "$@"
+        }
+
+        aspell-install() {
+          install -d $out/lib/aspell
+          for a in "$@"; do
+            echo installing $a
+            install -t $out/lib/aspell $a.rws
+          done
+        }
+      '';
+
+      phases = [ "preBuild" "buildPhase" "installPhase" ];
+    } // args);
+
+in rec {
+
+  ### Languages
 
   ca = buildDict {
     shortName = "ca-2.1.5-1";
@@ -230,4 +311,53 @@ in {
     };
   };
 
+  ### Jargons
+
+  en-computers = buildTxtDict rec {
+    shortName = "en-computers";
+    fullName = "English Computer Jargon";
+
+    src = fetchurl {
+      url = https://mrsatterly.com/computer.dic;
+      sha256 = "1vzk7cdvcm9r1c6mgxpabrdcpvghdv9mjmnf6iq5wllcif5nsw2b";
+    };
+
+    langInputs = [ en ];
+
+    buildPhase = "cat $src | aspell-affix en-computers --dont-validate-words --lang=en";
+    installPhase = "aspell-install en-computers";
+
+    meta = {
+      homepage = https://mrsatterly.com/spelling.html;
+    };
+  };
+
+  en-science = buildTxtDict rec {
+    shortName = "en-science";
+    fullName = "English Scientific Jargon";
+
+    src1 = fetchurl {
+      url = http://jpetrie.net/wp-content/uploads/custom_scientific_US.txt;
+      sha256 = "1psqm094zl4prk2f8h18jv0d471hxykzd1zdnrlx7gzrzy6pz5r3";
+    };
+
+    src2 = fetchurl {
+      url = http://jpetrie.net/wp-content/uploads/custom_scientific_UK.txt;
+      sha256 = "17ss1sdr3k70zbyx2z9xf74345slrp41gbkpih8axrmg4x92fgm1";
+    };
+
+    langInputs = [ en ];
+
+    buildPhase = ''
+      cat $src1 | aspell-plain en_US-science --dont-validate-words --lang=en
+      cat $src2 | aspell-plain en_GB-science --dont-validate-words --lang=en
+    '';
+    installPhase = "aspell-install en_US-science en_GB-science";
+
+    meta = {
+      homepage = http://www.jpetrie.net/scientific-word-list-for-spell-checkersspelling-dictionaries/;
+    };
+
+  };
+
 }
diff --git a/pkgs/development/libraries/mbedtls/darwin_dylib.patch b/pkgs/development/libraries/mbedtls/darwin_dylib.patch
new file mode 100644
index 0000000000000..bc6992d6e779f
--- /dev/null
+++ b/pkgs/development/libraries/mbedtls/darwin_dylib.patch
@@ -0,0 +1,28 @@
+diff --git a/library/Makefile b/library/Makefile
+index 28f9231..ad9cc32 100644
+--- a/library/Makefile
++++ b/library/Makefile
+@@ -103,9 +103,9 @@ libmbedtls.so: libmbedtls.$(SOEXT_TLS)
+ 	echo "  LN    $@ -> $<"
+ 	ln -sf $< $@
+ 
+-libmbedtls.dylib: $(OBJS_TLS)
++libmbedtls.dylib: $(OBJS_TLS) libmbedx509.dylib
+ 	echo "  LD    $@"
+-	$(CC) -dynamiclib $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS_TLS)
++	$(CC) -dynamiclib -L. -lmbedcrypto -lmbedx509 $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS_TLS)
+ 
+ libmbedtls.dll: $(OBJS_TLS) libmbedx509.dll
+ 	echo "  LD    $@"
+@@ -126,9 +126,9 @@ libmbedx509.so: libmbedx509.$(SOEXT_X509)
+ 	echo "  LN    $@ -> $<"
+ 	ln -sf $< $@
+ 
+-libmbedx509.dylib: $(OBJS_X509)
++libmbedx509.dylib: $(OBJS_X509) libmbedcrypto.dylib
+ 	echo "  LD    $@"
+-	$(CC) -dynamiclib $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS_X509)
++	$(CC) -dynamiclib -L. -lmbedcrypto  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS_X509)
+ 
+ libmbedx509.dll: $(OBJS_X509) libmbedcrypto.dll
+ 	echo "  LD    $@"
diff --git a/pkgs/development/libraries/mbedtls/default.nix b/pkgs/development/libraries/mbedtls/default.nix
index 82d867fedf04a..f84e00dfadf7f 100644
--- a/pkgs/development/libraries/mbedtls/default.nix
+++ b/pkgs/development/libraries/mbedtls/default.nix
@@ -12,19 +12,21 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ perl ];
 
-  patchPhase = stdenv.lib.optionalString stdenv.isDarwin ''
+  patches = stdenv.lib.optionals stdenv.isDarwin [ ./darwin_dylib.patch ];
+
+  postPatch = ''
+    patchShebangs .
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
     substituteInPlace library/Makefile --replace "-soname" "-install_name"
     substituteInPlace tests/scripts/run-test-suites.pl --replace "LD_LIBRARY_PATH" "DYLD_LIBRARY_PATH"
     # Necessary for install_name_tool below
     echo "LOCAL_LDFLAGS += -headerpad_max_install_names" >> programs/Makefile
   '';
 
-  postPatch = ''
-    patchShebangs .
-  '';
-
   makeFlags = [
     "SHARED=1"
+  ] ++ stdenv.lib.optionals stdenv.isDarwin [
+    "DLEXT=dylib"
   ];
 
   installFlags = [
@@ -32,14 +34,14 @@ stdenv.mkDerivation rec {
   ];
 
   postInstall = stdenv.lib.optionalString stdenv.isDarwin ''
-      install_name_tool -change libmbedcrypto.so.0 $out/lib/libmbedcrypto.so.0 $out/lib/libmbedtls.so.10
-      install_name_tool -change libmbedcrypto.so.0 $out/lib/libmbedcrypto.so.0 $out/lib/libmbedx509.so.0
-      install_name_tool -change libmbedx509.so.0 $out/lib/libmbedx509.so.0 $out/lib/libmbedtls.so.10
+      install_name_tool -change libmbedcrypto.dylib $out/lib/libmbedcrypto.dylib $out/lib/libmbedtls.dylib
+      install_name_tool -change libmbedcrypto.dylib $out/lib/libmbedcrypto.dylib $out/lib/libmbedx509.dylib
+      install_name_tool -change libmbedx509.dylib $out/lib/libmbedx509.dylib $out/lib/libmbedtls.dylib
 
       for exe in $out/bin/*; do
-          install_name_tool -change libmbedtls.so.10 $out/lib/libmbedtls.so.10 $exe
-          install_name_tool -change libmbedx509.so.0 $out/lib/libmbedx509.so.0 $exe
-          install_name_tool -change libmbedcrypto.so.0 $out/lib/libmbedcrypto.so.0 $exe
+          install_name_tool -change libmbedtls.dylib $out/lib/libmbedtls.dylib $exe
+          install_name_tool -change libmbedx509.dylib $out/lib/libmbedx509.dylib $exe
+          install_name_tool -change libmbedcrypto.dylib $out/lib/libmbedcrypto.dylib $exe
       done
   '';
 
diff --git a/pkgs/development/libraries/quickder/default.nix b/pkgs/development/libraries/quickder/default.nix
index 73bd9e863cde5..77e76ad638abf 100644
--- a/pkgs/development/libraries/quickder/default.nix
+++ b/pkgs/development/libraries/quickder/default.nix
@@ -1,32 +1,53 @@
-{ stdenv, fetchFromGitHub, fetchurl, hexio, python, which, asn2quickder, bash }:
+{ stdenv, fetchFromGitHub, fetchurl, python2Packages, hexio
+, which, cmake, bash, arpa2cm, git, asn2quickder, pkgconfig }:
 
 stdenv.mkDerivation rec {
   pname = "quickder";
   name = "${pname}-${version}";
-  version = "1.0-RC2";
+  version = "1.2-6";
 
   src = fetchFromGitHub {
-    sha256 = "1nzk8x6qzpvli8bf74dc2qya63nlppqjrnkaxvjxr2dbqb8qcrqd";
+    sha256 = "00wifjydgmqw2i5vmr049visc3shjqccgzqynkmmhkjhs86ghzr6";
     rev = "version-${version}";
     owner = "vanrein";
     repo = "quick-der";
   };
 
-  buildInputs = [ which asn2quickder bash ];
+  buildInputs = with python2Packages; [
+    arpa2cm
+    asn1ate
+    bash
+    cmake
+    git
+    hexio
+    pyparsing
+    python
+    six
+    which
+    asn1ate
+    asn2quickder
+    pkgconfig
+  ];
 
-  patchPhase = ''
-    substituteInPlace Makefile \
-      --replace 'lib tool test rfc' 'lib test rfc'
-    substituteInPlace ./rfc/Makefile \
-      --replace 'ASN2QUICKDER_CMD = ' 'ASN2QUICKDER_CMD = ${asn2quickder}/bin/asn2quickder #'
-    '';
+  postPatch = ''
+    substituteInPlace ./CMakeLists.txt \
+      --replace "get_version_from_git" "set (Quick-DER_VERSION 1.2) #"
+    substituteInPlace ./CMakeLists.txt \
+      --replace \$\{ARPA2CM_TOOLCHAIN_DIR} "$out/share/ARPA2CM/toolchain/"
+    patchShebangs python/scripts/
+  '';
 
-  installFlags = "ASN2QUICKDER_DIR=${asn2quickder}/bin ASN2QUICKDER_CMD=${asn2quickder}/bin/asn2quickder";
-  installPhase = ''
-    mkdir -p $out/lib $out/man
-    make DESTDIR=$out PREFIX=/ all
-    make DESTDIR=$out PREFIX=/ install
-    '';
+  cmakeFlags = [
+    "-DNO_TESTING=ON"
+    "-DARPA2CM_TOOLCHAIN_DIR=$out/share/ARPA2CM/toolchain/"
+    "-DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON"
+    "-DCMAKE_FIND_PACKAGE_NO_PACKAGE_REGISTRY=ON"
+    "-DPACKAGE_NO_PACKAGE_REGISTRY=ON"
+  ];
+
+  preConfigure = ''
+    export PREFIX=$out
+  '';
 
   meta = with stdenv.lib; {
     description = "Quick (and Easy) DER, a Library for parsing ASN.1";
diff --git a/pkgs/development/ocaml-modules/bitv/default.nix b/pkgs/development/ocaml-modules/bitv/default.nix
new file mode 100644
index 0000000000000..359d83b4762a8
--- /dev/null
+++ b/pkgs/development/ocaml-modules/bitv/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchzip, autoreconfHook, which, ocaml, findlib }:
+
+if !stdenv.lib.versionAtLeast ocaml.version "4.02"
+then throw "bitv is not available for OCaml ${ocaml.version}"
+else
+
+stdenv.mkDerivation rec {
+  name = "ocaml${ocaml.version}-bitv-${version}";
+  version = "1.3";
+
+  src = fetchzip {
+    url = "https://github.com/backtracking/bitv/archive/${version}.tar.gz";
+    sha256 = "0vkh1w9fpi5m1sgiqg6r38j3fqglhdajmbyiyr91113lrpljm75i";
+  };
+
+  buildInputs = [ autoreconfHook which ocaml findlib ];
+
+  createFindlibDestdir = true;
+
+  meta = {
+    description = "A bit vector library for OCaml";
+    license = stdenv.lib.licenses.lgpl21;
+    homepage = "https://github.com/backtracking/bitv";
+    maintainers = [ stdenv.lib.maintainers.vbgl ];
+    inherit (ocaml.meta) platforms;
+  };
+}
diff --git a/pkgs/development/python-modules/asn1ate/default.nix b/pkgs/development/python-modules/asn1ate/default.nix
index 7605e2c308586..29dae1fd663aa 100644
--- a/pkgs/development/python-modules/asn1ate/default.nix
+++ b/pkgs/development/python-modules/asn1ate/default.nix
@@ -1,15 +1,12 @@
-{ stdenv, buildPythonPackage, fetchFromGitHub
-, pyparsing }:
+{ stdenv, buildPythonPackage, fetchFromGitHub, pyparsing }:
 
 buildPythonPackage rec {
   pname = "asn1ate";
-  date = "20160810";
-  version = "unstable-${date}";
-  name = "${pname}-${version}";
+  version= "0.6";
 
   src = fetchFromGitHub {
-    sha256 = "04pddr1mh2v9qq8fg60czwvjny5qwh4nyxszr3qc4bipiiv2xk9w";
-    rev = "c56104e8912400135509b584d84423ee05a5af6b";
+    sha256 = "1p8hv4gsyqsdr0gafcq497n52pybiqmc22di8ai4nsj60fv0km45";
+    rev = "v${version}";
     owner = "kimgr";
     repo = pname;
   };
diff --git a/pkgs/development/python-modules/faulthandler/default.nix b/pkgs/development/python-modules/faulthandler/default.nix
index ee2a65e981ca1..1fc1aea94d577 100644
--- a/pkgs/development/python-modules/faulthandler/default.nix
+++ b/pkgs/development/python-modules/faulthandler/default.nix
@@ -1,7 +1,6 @@
-{ stdenv, fetchPypi, buildPythonPackage }:
+{ stdenv, fetchPypi, buildPythonPackage, fetchpatch }:
 
 buildPythonPackage rec {
-  name = "${pname}-${version}";
   pname = "faulthandler";
   version = "3.0";
 
@@ -10,6 +9,17 @@ buildPythonPackage rec {
     sha256 = "acc10e10909f0f956ba1b42b6c450ea0bdaaa27b3942899f65931396cfcdd36a";
   };
 
+  patches = [
+    (fetchpatch {
+      url = https://github.com/vstinner/faulthandler/commit/67b661e.patch;
+      sha256 = "1nn8c9nq5qypja949hzz0n4yprsyr63wihf5g3gwrinm2nkjnnv7";
+    })
+    (fetchpatch {
+      url = https://github.com/vstinner/faulthandler/commit/07cbb7b.patch;
+      sha256 = "0fh6rjyjw7z1hsiy3sgdc8j9mncg1vlv3y0h4bplqyw18vq3srb3";
+    })
+  ];
+
   meta = {
     description = "Dump the Python traceback";
     license = stdenv.lib.licenses.bsd2;
diff --git a/pkgs/development/python-modules/pynacl/default.nix b/pkgs/development/python-modules/pynacl/default.nix
index 981427e46f338..bceb2b50cc596 100644
--- a/pkgs/development/python-modules/pynacl/default.nix
+++ b/pkgs/development/python-modules/pynacl/default.nix
@@ -11,14 +11,16 @@ buildPythonPackage rec {
     sha256 = "0z9i1z4hjzmp23igyhvg131gikbrr947506lwfb3fayf0agwfv8f";
   };
 
-  #set timeout to unlimited, remove deadline from tests, see https://github.com/pyca/pynacl/issues/370
+  # set timeout to unlimited, remove deadline from tests, see https://github.com/pyca/pynacl/issues/370
   patches = [ ./pynacl-no-timeout-and-deadline.patch ];
 
-  checkInputs = [ pytest coverage hypothesis ];
+  checkInputs = [ pytest hypothesis ];
   propagatedBuildInputs = [ libsodium cffi six ];
 
+  SODIUM_INSTALL = "system";
+
   checkPhase = ''
-    coverage run --source nacl --branch -m pytest
+    py.test
   '';
   
   meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/pypandoc/default.nix b/pkgs/development/python-modules/pypandoc/default.nix
index ba05da884d8be..3af86dabe2151 100644
--- a/pkgs/development/python-modules/pypandoc/default.nix
+++ b/pkgs/development/python-modules/pypandoc/default.nix
@@ -4,7 +4,6 @@
 buildPythonPackage rec {
   pname = "pypandoc";
   version = "1.4";
-  name = "${pname}-${version}";
 
   src = fetchPypi {
     inherit pname version;
@@ -28,5 +27,7 @@ buildPythonPackage rec {
     homepage = https://github.com/bebraw/pypandoc;
     license = licenses.mit;
     maintainers = with maintainers; [ bennofs ];
+
+    broken = true; # incompatible with pandoc v2
   };
 }
diff --git a/pkgs/development/python-modules/pyrtlsdr/default.nix b/pkgs/development/python-modules/pyrtlsdr/default.nix
index 0d50686f89242..a86badb3bca88 100644
--- a/pkgs/development/python-modules/pyrtlsdr/default.nix
+++ b/pkgs/development/python-modules/pyrtlsdr/default.nix
@@ -1,22 +1,34 @@
 { lib
 , buildPythonPackage
 , fetchPypi
+, fetchpatch
 , rtl-sdr
-, pypandoc
-, pandoc
+, m2r
 }:
 
 buildPythonPackage rec {
   pname = "pyrtlsdr";
   version = "0.2.7";
-  name = "${pname}-${version}";
 
   src = fetchPypi {
     inherit pname version;
     sha256 = "7942fe2e7821d09206002ea7e820e694094b3f964885123eb6eee1167f39b8da";
   };
 
-  buildInputs = [ pypandoc pandoc ];
+  # Replace pypandoc dependency by m2r
+  # See https://github.com/roger-/pyrtlsdr/pull/78
+  patches = [
+    (fetchpatch {
+      url = "${meta.homepage}/commit/2b7df0b.patch";
+      sha256 = "04h5z80969jgdgrf98b9ps56sybms09xacvmj6rwcfrmanli8rgf";
+    })
+    (fetchpatch {
+      url = "${meta.homepage}/commit/97dc3d0.patch";
+      sha256 = "1v1j0n91jwpsiam2j34yj71z4h39cvk4gi4565zgjrzsq6xr93i0";
+    })
+  ];
+
+  nativeBuildInputs = [ m2r ];
 
   postPatch = ''
     sed "s|driver_files =.*|driver_files = ['${rtl-sdr}/lib/librtlsdr.so']|" -i rtlsdr/librtlsdr.py
@@ -31,5 +43,5 @@ buildPythonPackage rec {
     license = licenses.gpl3;
     platforms = platforms.linux;
     maintainers = with maintainers; [ bjornfor ];
- };
+  };
 }
diff --git a/pkgs/development/ruby-modules/gem-config/default.nix b/pkgs/development/ruby-modules/gem-config/default.nix
index 5361c3ce65ebf..8da6355e00165 100644
--- a/pkgs/development/ruby-modules/gem-config/default.nix
+++ b/pkgs/development/ruby-modules/gem-config/default.nix
@@ -87,6 +87,14 @@ in
       sed -i $installPath/lib/dep-selector-libgecode.rb -e 's@VENDORED_GECODE_DIR =.*@VENDORED_GECODE_DIR = "${gecode_3}"@'
     '';
   };
+  
+  ethon = attrs: {
+    dontBuild = false;
+    postPatch = ''
+      substituteInPlace lib/ethon/curls/settings.rb \
+        --replace "libcurl" "${curl.out}/lib/libcurl${stdenv.hostPlatform.extensions.sharedLibrary}"
+    '';
+  }; 
 
   eventmachine = attrs: {
     buildInputs = [ openssl ];
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 69ca68351ba18..4a2d298495dab 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -4,14 +4,14 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  version = "0.65.0";
+  version = "0.66.0";
   name = "flow-${version}";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "flow";
     rev = "v${version}";
-    sha256 = "00m9wqfqpnv7p2kz0970254jfaqakb12lsnhk95hw47ghfyb2f7p";
+    sha256 = "0l1sdd1n0llmz8m81vym3zhcn824sr9w46h9jpb7i7wrcm4y410d";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/asn2quickder/default.nix b/pkgs/development/tools/asn2quickder/default.nix
index 812053902a57f..e0b9aec9ee156 100644
--- a/pkgs/development/tools/asn2quickder/default.nix
+++ b/pkgs/development/tools/asn2quickder/default.nix
@@ -1,30 +1,25 @@
-{ stdenv, fetchFromGitHub, python2Packages, makeWrapper }:
+{ stdenv, buildPythonApplication, fetchFromGitHub, makeWrapper, cmake
+, pytestrunner, pytest, six, pyparsing, asn1ate }:
 
-stdenv.mkDerivation rec {
+buildPythonApplication rec {
   pname = "asn2quickder";
-  name = "${pname}-${version}";
-  version = "0.7-RC1";
+  version = "1.2-6";
 
   src = fetchFromGitHub {
-    sha256 = "0ynajhbml28m4ipbj5mscjcv6g1a7frvxfimxh813rhgl0w3sgq8";
+    sha256 = "00wifjydgmqw2i5vmr049visc3shjqccgzqynkmmhkjhs86ghzr6";
     rev = "version-${version}";
     owner = "vanrein";
-    repo = "${pname}";
+    repo = "quick-der";
   };
 
-  propagatedBuildInputs = with python2Packages; [ pyparsing makeWrapper ];
+  patchPhase = ''
+    patchShebangs ./python/scripts/*
+  '';
 
-  patchPhase = with python2Packages; ''
-    substituteInPlace Makefile \
-      --replace '..' '..:$(DESTDIR)/${python.sitePackages}:${python2Packages.pyparsing}/${python.sitePackages}' \
-    '';
+  buildInputs = [ makeWrapper cmake ];
+  checkInputs = [ pytestrunner pytest ];
 
-  installPhase = ''
-    mkdir -p $out/${python2Packages.python.sitePackages}/
-    mkdir -p $out/bin $out/lib $out/sbin $out/man
-    make DESTDIR=$out PREFIX=/ all
-    make DESTDIR=$out PREFIX=/ install
-    '';
+  propagatedBuildInputs = [ pyparsing asn1ate six ];
 
   meta = with stdenv.lib; {
     description = "An ASN.1 compiler with a backend for Quick DER";
diff --git a/pkgs/development/tools/build-managers/arpa2cm/default.nix b/pkgs/development/tools/build-managers/arpa2cm/default.nix
new file mode 100644
index 0000000000000..0aec7491e4ad8
--- /dev/null
+++ b/pkgs/development/tools/build-managers/arpa2cm/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+  pname = "arpa2cm";
+  version = "0.5";
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    sha256 = "093h7njj8d8iiwnw5byfxkkzlbny60fwv1w57j8f1lsd4yn6rih4";
+    rev = "version-${version}";
+    repo = "${pname}";
+    owner = "arpa2";
+  };
+
+  buildInputs = [ cmake ];
+
+  meta = with stdenv.lib; {
+    description = "CMake Module library for the ARPA2 project";
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ leenaars ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/gnumake/4.2/default.nix b/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
index 1094cacb7af3c..e175205143fc4 100644
--- a/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
+++ b/pkgs/development/tools/build-managers/gnumake/4.2/default.nix
@@ -4,8 +4,6 @@ assert guileSupport -> ( pkgconfig != null && guile != null );
 
 let
   version = "4.2.1";
-
-  needGlibcPatch = (stdenv.cc.libc.version or "") == "2.27";
 in
 stdenv.mkDerivation {
   name = "gnumake-${version}";
@@ -22,7 +20,7 @@ stdenv.mkDerivation {
     # included Makefiles, don't look in /usr/include and friends.
     ./impure-dirs.patch
     ./pselect.patch
-  ] ++ stdenv.lib.optional needGlibcPatch ./glibc-2.27.patch;
+  ];
 
   nativeBuildInputs = stdenv.lib.optionals guileSupport [ pkgconfig ];
   buildInputs = stdenv.lib.optionals guileSupport [ guile ];
diff --git a/pkgs/development/tools/build-managers/gnumake/4.2/head.nix b/pkgs/development/tools/build-managers/gnumake/4.2/head.nix
new file mode 100644
index 0000000000000..5f3ae10c3e5b3
--- /dev/null
+++ b/pkgs/development/tools/build-managers/gnumake/4.2/head.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchurl, texinfo, guileSupport ? false, pkgconfig , guile ? null, autoreconfHook }:
+
+assert guileSupport -> ( guile != null );
+
+let
+  version = "4.2.90";
+  revision = "48c8a116a914a325a0497721f5d8b58d5bba34d4";
+  revCount = "2491";
+  shortRev = "48c8a11";
+
+  baseVersion = "4.2.1";
+  baseTarball = fetchurl {
+    url = "mirror://gnu/make/make-${baseVersion}.tar.bz2";
+    sha256 = "12f5zzyq2w56g95nni65hc0g5p7154033y2f3qmjvd016szn5qnn";
+  };
+in
+stdenv.mkDerivation {
+  name = "gnumake-${version}pre${revCount}_${shortRev}";
+
+  src = fetchurl {
+    url = "http://git.savannah.gnu.org/cgit/make.git/snapshot/make-${revision}.tar.gz";
+    sha256 = "0k6yvhr2a5lh1qhflv02dyvq5p20ikgaakm8w6gr4xmkspljwpwx";
+  };
+
+  postUnpack = ''
+    unpackFile ${baseTarball}
+    cp make-${baseVersion}/po/*.po $sourceRoot/po
+    cp make-${baseVersion}/doc/{fdl,make-stds}.texi $sourceRoot/doc
+  '';
+
+  patches = [
+    # Purity: don't look for library dependencies (of the form `-lfoo') in /lib
+    # and /usr/lib. It's a stupid feature anyway. Likewise, when searching for
+    # included Makefiles, don't look in /usr/include and friends.
+    ./impure-dirs-head.patch
+  ];
+
+  postPatch = ''
+    # These aren't in the 4.2.1 tarball yet.
+    sed -i -e 's/sr//' -e 's/zh_TW//' po/LINGUAS
+  '';
+
+  nativeBuildInputs = [ autoreconfHook pkgconfig texinfo ];
+  buildInputs = stdenv.lib.optional guileSupport guile;
+
+  configureFlags = stdenv.lib.optional guileSupport "--with-guile";
+
+  outputs = [ "out" "man" "info" ];
+
+  meta = with stdenv.lib; {
+    homepage = http://www.gnu.org/software/make/;
+    description = "A tool to control the generation of non-source files from sources";
+    license = licenses.gpl3Plus;
+
+    longDescription = ''
+      Make is a tool which controls the generation of executables and
+      other non-source files of a program from the program's source files.
+
+      Make gets its knowledge of how to build your program from a file
+      called the makefile, which lists each of the non-source files and
+      how to compute it from other files. When you write a program, you
+      should write a makefile for it, so that it is possible to use Make
+      to build and install the program.
+    '';
+
+    platforms = platforms.all;
+    maintainers = [ maintainers.vrthra ];
+  };
+}
diff --git a/pkgs/development/tools/build-managers/gnumake/4.2/impure-dirs-head.patch b/pkgs/development/tools/build-managers/gnumake/4.2/impure-dirs-head.patch
new file mode 100644
index 0000000000000..06d39e13ce39d
--- /dev/null
+++ b/pkgs/development/tools/build-managers/gnumake/4.2/impure-dirs-head.patch
@@ -0,0 +1,31 @@
+diff -Naur a/src/read.c b/src/read.c
+--- a/src/read.c	2017-11-19 15:17:47.000000000 -0500
++++ b/src/read.c	2018-02-19 08:53:51.548755213 -0500
+@@ -109,10 +109,12 @@
+ #endif
+     INCLUDEDIR,
+ #ifndef _AMIGA
++#if 0
+     "/usr/gnu/include",
+     "/usr/local/include",
+     "/usr/include",
+ #endif
++#endif
+     0
+   };
+ 
+diff -Naur a/src/remake.c b/src/remake.c
+--- a/src/remake.c	2017-11-19 15:17:47.000000000 -0500
++++ b/src/remake.c	2018-02-19 08:54:08.304101943 -0500
+@@ -1601,9 +1601,11 @@
+   static const char *dirs[] =
+     {
+ #ifndef _AMIGA
++#if 0
+       "/lib",
+       "/usr/lib",
+ #endif
++#endif
+ #if defined(WINDOWS32) && !defined(LIBDIR)
+ /*
+  * This is completely up to the user at product install time. Just define
diff --git a/pkgs/development/tools/misc/binutils/2.30.nix b/pkgs/development/tools/misc/binutils/2.30.nix
new file mode 100644
index 0000000000000..830c07330524a
--- /dev/null
+++ b/pkgs/development/tools/misc/binutils/2.30.nix
@@ -0,0 +1,131 @@
+{ stdenv, buildPackages
+, fetchurl, zlib
+, buildPlatform, hostPlatform, targetPlatform
+, noSysDirs, gold ? true, bison ? null
+}:
+
+let
+  version = "2.30";
+  basename = "binutils-${version}";
+  inherit (stdenv.lib) optional optionals optionalString;
+  # The targetPrefix prepended to binary names to allow multiple binuntils on the
+  # PATH to both be usable.
+  targetPrefix = optionalString (targetPlatform != hostPlatform) "${targetPlatform.config}-";
+in
+
+stdenv.mkDerivation rec {
+  name = targetPrefix + basename;
+
+  src = fetchurl {
+    url = "mirror://gnu/binutils/${basename}.tar.bz2";
+    sha256 = "028cklfqaab24glva1ks2aqa1zxa6w6xmc8q34zs1sb7h22dxspg";
+  };
+
+  patches = [
+    # Turn on --enable-new-dtags by default to make the linker set
+    # RUNPATH instead of RPATH on binaries.  This is important because
+    # RUNPATH can be overriden using LD_LIBRARY_PATH at runtime.
+    ./new-dtags.patch
+
+    # Since binutils 2.22, DT_NEEDED flags aren't copied for dynamic outputs.
+    # That requires upstream changes for things to work. So we can patch it to
+    # get the old behaviour by now.
+    ./dtneeded.patch
+
+    # Make binutils output deterministic by default.
+    ./deterministic.patch
+
+    # Always add PaX flags section to ELF files.
+    # This is needed, for instance, so that running "ldd" on a binary that is
+    # PaX-marked to disable mprotect doesn't fail with permission denied.
+    ./pt-pax-flags.patch
+
+    # Bfd looks in BINDIR/../lib for some plugins that don't
+    # exist. This is pointless (since users can't install plugins
+    # there) and causes a cycle between the lib and bin outputs, so
+    # get rid of it.
+    ./no-plugins.patch
+
+    # Help bfd choose between elf32-littlearm, elf32-littlearm-symbian, and
+    # elf32-littlearm-vxworks in favor of the first.
+    # https://github.com/NixOS/nixpkgs/pull/30484#issuecomment-345472766
+    ./disambiguate-arm-targets.patch
+
+    # For some reason bfd ld doesn't search DT_RPATH when cross-compiling. It's
+    # not clear why this behavior was decided upon but it has the unfortunate
+    # consequence that the linker will fail to find transitive dependencies of
+    # shared objects when cross-compiling. Consequently, we are forced to
+    # override this behavior, forcing ld to search DT_RPATH even when
+    # cross-compiling.
+    ./always-search-rpath.patch
+  ];
+
+  outputs = [ "out" "info" "man" ];
+
+  depsBuildBuild = [ buildPackages.stdenv.cc ];
+  nativeBuildInputs = [ bison ];
+  buildInputs = [ zlib ];
+
+  inherit noSysDirs;
+
+  preConfigure = ''
+    # Clear the default library search path.
+    if test "$noSysDirs" = "1"; then
+        echo 'NATIVE_LIB_DIRS=' >> ld/configure.tgt
+    fi
+
+    # Use symlinks instead of hard links to save space ("strip" in the
+    # fixup phase strips each hard link separately).
+    for i in binutils/Makefile.in gas/Makefile.in ld/Makefile.in gold/Makefile.in; do
+        sed -i "$i" -e 's|ln |ln -s |'
+    done
+  '';
+
+  # As binutils takes part in the stdenv building, we don't want references
+  # to the bootstrap-tools libgcc (as uses to happen on arm/mips)
+  NIX_CFLAGS_COMPILE = if hostPlatform.isDarwin
+    then "-Wno-string-plus-int -Wno-deprecated-declarations"
+    else "-static-libgcc";
+
+  # TODO(@Ericson2314): Always pass "--target" and always targetPrefix.
+  configurePlatforms =
+    # TODO(@Ericson2314): Figure out what's going wrong with Arm
+    if buildPlatform == hostPlatform && hostPlatform == targetPlatform && targetPlatform.isArm
+    then []
+    else [ "build" "host" ] ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
+
+  configureFlags = [
+    "--enable-targets=all" "--enable-64-bit-bfd"
+    "--disable-install-libbfd"
+    "--disable-shared" "--enable-static"
+    "--with-system-zlib"
+
+    "--enable-deterministic-archives"
+    "--disable-werror"
+    "--enable-fix-loongson2f-nop"
+  ] ++ optionals gold [ "--enable-gold" "--enable-plugins" ];
+
+  enableParallelBuilding = true;
+
+  passthru = {
+    inherit targetPrefix version;
+  };
+
+  meta = with stdenv.lib; {
+    description = "Tools for manipulating binaries (linker, assembler, etc.)";
+    longDescription = ''
+      The GNU Binutils are a collection of binary tools.  The main
+      ones are `ld' (the GNU linker) and `as' (the GNU assembler).
+      They also include the BFD (Binary File Descriptor) library,
+      `gprof', `nm', `strip', etc.
+    '';
+    homepage = http://www.gnu.org/software/binutils/;
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ ericson2314 ];
+    platforms = platforms.unix;
+
+    /* Give binutils a lower priority than gcc-wrapper to prevent a
+       collision due to the ld/as wrappers/symlinks in the latter. */
+    priority = 10;
+  };
+}
diff --git a/pkgs/games/multimc/default.nix b/pkgs/games/multimc/default.nix
index e438008b19c26..35444f82f66e8 100644
--- a/pkgs/games/multimc/default.nix
+++ b/pkgs/games/multimc/default.nix
@@ -1,46 +1,24 @@
-{ stdenv, fetchFromGitHub, cmake, jdk, zlib, file, makeWrapper, xorg, libpulseaudio, qtbase, quazip }:
+{ stdenv, fetchFromGitHub, cmake, jdk, zlib, file, makeWrapper, xorg, libpulseaudio, qtbase }:
 
 let
-  libnbt = fetchFromGitHub {
-    owner = "MultiMC";
-    repo = "libnbtplusplus";
-    rev = "4b305bb";
-    sha256 = "1zj7pxk0g5zl16hrngb4rss00hi019rylin7zgf18kaymc54nbcs";
-  };
-in
-stdenv.mkDerivation {
-  name = "multimc-0.5.1";
+  libpath = with xorg; stdenv.lib.makeLibraryPath [ libX11 libXext libXcursor libXrandr libXxf86vm libpulseaudio ];
+in stdenv.mkDerivation rec {
+  name = "multimc-${version}";
+  version = "0.6.1";
   src = fetchFromGitHub {
     owner = "MultiMC";
     repo = "MultiMC5";
-    rev = "0.5.1";
-    sha256 = "0wmlnwcq3gxrbmc53j96aa64pp1kmnlxiifhzngcb5kfmbbc8a20";
+    rev = version;
+    sha256 = "0glsf4vfir8w24bpinf3cx2ninrcp7hpq9cl463wl78dvqfg47kx";
+    fetchSubmodules = true;
   };
-  buildInputs = [ cmake qtbase jdk zlib file makeWrapper ];
-
-  libpath = with xorg; [ libX11 libXext libXcursor libXrandr libXxf86vm libpulseaudio ];
-  postUnpack = ''
-    rmdir $sourceRoot/libraries/libnbtplusplus
-    cp -r ${libnbt} $sourceRoot/libraries/libnbtplusplus
-    chmod 755 -R $sourceRoot/libraries/libnbtplusplus
-    mkdir -pv $sourceRoot/build/
-    cp -v ${quazip.src} $sourceRoot/build/quazip-0.7.1.tar.gz
-  '';
+  nativeBuildInputs = [ cmake file makeWrapper ];
+  buildInputs = [ qtbase jdk zlib ];
 
   enableParallelBuilding = true;
 
-  # the install rule tries to bundle ALL deps into the output for portability
-  installPhase = ''
-    RESULT=/run/opengl-driver/lib/
-    for x in $libpath; do
-      RESULT=$x/lib/:$RESULT
-    done
-
-    mkdir -pv $out/bin/jars $out/lib
-    cp -v MultiMC $out/bin/
-    cp -v jars/*.jar $out/bin/jars/ #*/
-    cp -v libMultiMC_rainbow.so libMultiMC_nbt++.so libMultiMC_logic.so libMultiMC_gui.so $out/lib
-    wrapProgram $out/bin/MultiMC --add-flags "-d \$HOME/.multimc/" --set GAME_LIBRARY_PATH $RESULT --prefix PATH : ${jdk}/bin/
+  postInstall = ''
+    wrapProgram $out/bin/MultiMC --add-flags "-d \$HOME/.multimc/" --set GAME_LIBRARY_PATH /run/opengl-driver/lib:${libpath} --prefix PATH : ${jdk}/bin/
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/games/xjump/darwin.patch b/pkgs/games/xjump/darwin.patch
new file mode 100644
index 0000000000000..8221677658e33
--- /dev/null
+++ b/pkgs/games/xjump/darwin.patch
@@ -0,0 +1,21 @@
+--- xjump/src/main.c	2018-02-20 09:15:15.608807657 +0100
++++ xjump-patched/src/main.c	2018-02-20 09:15:34.148949100 +0100
+@@ -604,18 +604,6 @@
+    * optimistic privilege dropping function. */
+   setgroups(0, NULL);
+ 
+-  if (setresgid(-1, realgid, realgid) != 0) {
+-    perror("Could not drop setgid privileges.  Aborting.");
+-    exit(1);
+-  }
+-
+-  /* Dropping user privileges must come last.
+-   * Otherwise we won't be able to drop group privileges anymore */
+-  if (setresuid(-1, realuid, realuid) != 0) {
+-    perror("Could not drop setuid privileges.  Aborting.");
+-    exit(1);
+-  }
+-
+   /* From now on we run with regular user privileges */
+ 
+   static XtActionsRec a_table[] = {
diff --git a/pkgs/games/xjump/default.nix b/pkgs/games/xjump/default.nix
new file mode 100644
index 0000000000000..df9ff30f21014
--- /dev/null
+++ b/pkgs/games/xjump/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPlatform, fetchFromGitHub, autoconf, automake, libX11, libXt, libXpm, libXaw, localStateDir?null }:
+
+stdenv.mkDerivation rec {
+  name = "xjump-${version}";
+  version = "2.9.3";
+  src = fetchFromGitHub {
+    owner = "hugomg";
+    repo = "xjump";
+    rev = "e7f20fb8c2c456bed70abb046c1a966462192b80";
+    sha256 = "0hq4739cvi5a47pxdc0wwkj2lmlqbf1xigq0v85qs5bq3ixmq2f7";
+  };
+  nativeBuildInputs = [ autoconf automake ];
+  buildInputs = [ libX11 libXt libXpm libXaw ];
+  preConfigure = "autoreconf --install";
+  patches = if buildPlatform.isDarwin then [ ./darwin.patch ] else [];
+  configureFlags =
+    if localStateDir != null then
+      ["--localstatedir=${localStateDir}"]
+    else
+      [];
+
+  meta = with stdenv.lib; {
+    description = "The falling tower game";
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ pmeunier ];
+  };
+}
diff --git a/pkgs/misc/drivers/foo2zjs/default.nix b/pkgs/misc/drivers/foo2zjs/default.nix
index bfc8271ad6599..8e24cf53c2f0f 100644
--- a/pkgs/misc/drivers/foo2zjs/default.nix
+++ b/pkgs/misc/drivers/foo2zjs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, foomatic-filters, bc, unzip, ghostscript, systemd, vim }:
 
 stdenv.mkDerivation rec {
-  name = "foo2zjs-20110210";
+  name = "foo2zjs-20171202";
 
   src = fetchurl {
     url = "http://www.loegria.net/mirrors/foo2zjs/${name}.tar.gz";
-    sha256 = "0vss8gdbbgxr694xw48rys2qflbnb4sp4gdb1v6z4m9ab97hs5yk";
+    sha256 = "b63c65e8e0e7c9fd8d19b9e63f7cd85048eba01a877aac1ca13a6bfc979ea182";
   };
 
   buildInputs = [ foomatic-filters bc unzip ghostscript systemd vim ];
diff --git a/pkgs/misc/riscv-pk/default.nix b/pkgs/misc/riscv-pk/default.nix
index 025d591d137a9..b605b9715d482 100644
--- a/pkgs/misc/riscv-pk/default.nix
+++ b/pkgs/misc/riscv-pk/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, autoreconfHook }: let
+{ stdenv, fetchFromGitHub, autoreconfHook, payload ? null }: let
   rev = "e5846a2bc707eaa58dc8ab6a8d20a090c6ee8570";
   sha256 = "1clynpp70fnbgsjgxx7xi0vrdrj1v0h8zpv0x26i324kp2gwylf4";
   revCount = "438";
@@ -21,8 +21,17 @@ in stdenv.mkDerivation {
 
   configureScript = "../configure";
 
+  configureFlags = stdenv.lib.optional (payload != null)
+    "--with-payload=${payload}";
+
   hardeningDisable = [ "all" ];
 
+  postInstall = ''
+    mv $out/* $out/.cleanup
+    mv $out/.cleanup/* $out
+    rmdir $out/.cleanup
+  '';
+
   meta = {
     description = "RISC-V Proxy Kernel and Bootloader.";
     homepage = https://github.com/riscv/riscv-pk;
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index 00f0995e32abd..7cf6e6b596ed1 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -3138,6 +3138,16 @@ rec {
 
   };
 
+  vim-rooter = buildVimPluginFrom2Nix {
+    name = "vim-rooter-2017-11-20";
+    src = fetchgit {
+      url = "git://github.com/airblade/vim-rooter";
+      rev = "3509dfb80d0076270a04049548738daeedf6dfb9";
+      sha256 = "03j26fw0dcvcc81fn8hx1prdwlgnd3g340pbxrzgbgxxq5kr0bwl";
+    };
+    dependencies = [];
+
+  };
 
   vim-ruby = buildVimPluginFrom2Nix { # created by nix#NixDerivation
     name = "vim-ruby-2017-06-22";
diff --git a/pkgs/os-specific/linux/kernel/linux-riscv.nix b/pkgs/os-specific/linux/kernel/linux-riscv.nix
new file mode 100644
index 0000000000000..b2eb0a69a8ec3
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-riscv.nix
@@ -0,0 +1,18 @@
+{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args:
+
+buildLinux (args // rec {
+  version = "4.16-rc1";
+  modDirVersion = "4.16.0-rc1";
+  extraMeta.branch = "4.16";
+
+  src = fetchFromGitHub {
+    owner = "riscv";
+    repo ="riscv-linux";
+    rev = "a31991a9c6ce2c86fd676cf458a0ec10edc20d37";
+    sha256 = "0n97wfbi3pnp5c70xfj7s0fk8zjjkjz6ldxh7n54kbf64l4in01f";
+  };
+
+  # Should the testing kernels ever be built on Hydra?
+  extraMeta.hydraPlatforms = [];
+
+} // (args.argsOverride or {}))
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index bd9334b8f9b71..60fb006451394 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -79,7 +79,8 @@ let
       isModular = config.isYes "MODULES";
 
       installsFirmware = (config.isEnabled "FW_LOADER") &&
-        (isModular || (config.isDisabled "FIRMWARE_IN_KERNEL"));
+        (isModular || (config.isDisabled "FIRMWARE_IN_KERNEL")) &&
+        (stdenv.lib.versionOlder version "4.14");
     in (optionalAttrs isModular { outputs = [ "out" "dev" ]; }) // {
       passthru = {
         inherit version modDirVersion config kernelPatches configfile
@@ -155,14 +156,13 @@ let
                           if platform.kernelTarget == "zImage" || platform.kernelTarget == "Image.gz" then "zinstall" else
                           "install") ];
 
-      postInstall = ''
-        mkdir -p $dev
-        cp vmlinux $dev/
-      '' + (optionalString installsFirmware ''
+      postInstall = (optionalString installsFirmware ''
         mkdir -p $out/lib/firmware
       '') + (if (platform ? kernelDTB && platform.kernelDTB) then ''
         make $makeFlags "''${makeFlagsArray[@]}" dtbs dtbs_install INSTALL_DTBS_PATH=$out/dtbs
       '' else "") + (if isModular then ''
+        mkdir -p $dev
+        cp vmlinux $dev/
         if [ -z "$dontStrip" ]; then
           installFlagsArray+=("INSTALL_MOD_STRIP=1")
         fi
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index 754a2372c6d8b..42e14ad7c40b5 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -72,4 +72,34 @@ rec {
       sha256 = "09096npxpgvlwdz3pb3m9brvxh7vy0xc9z9p8hh85xyczyzcsjhr";
     };
   };
+
+  riscv_modules = {
+    name = "riscv-modules";
+    patch = ./riscv-modules.patch;
+  };
+
+  # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000054.html
+  riscv_irq_busy = {
+    name = "riscv-irq-busy";
+    patch = ./riscv-irq-busy.patch;
+  };
+
+  # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000059.html
+  riscv_install = {
+    name = "riscv-install";
+    patch = ./riscv-install.patch;
+  };
+
+  # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000056.html
+  riscv_initrd = {
+    name = "riscv-initrd";
+    patch = ./riscv-initrd.patch;
+  };
+
+  # http://lists.infradead.org/pipermail/linux-riscv/2018-February/000058.html
+  riscv_initrd_free = {
+    name = "riscv-initrd-free";
+    patch = ./riscv-initrd-free.patch;
+  };
+
 }
diff --git a/pkgs/os-specific/linux/kernel/perf.nix b/pkgs/os-specific/linux/kernel/perf.nix
index 1936f6578b6f3..8090a7329aee9 100644
--- a/pkgs/os-specific/linux/kernel/perf.nix
+++ b/pkgs/os-specific/linux/kernel/perf.nix
@@ -1,7 +1,8 @@
 { lib, stdenv, kernel, elfutils, python, perl, newt, slang, asciidoc, xmlto, makeWrapper
 , docbook_xsl, docbook_xml_dtd_45, libxslt, flex, bison, pkgconfig, libunwind, binutils
-, libiberty, libaudit, libbfd
-, zlib, withGtk ? false, gtk2 ? null }:
+, libiberty, libaudit, libbfd, openssl, systemtap, numactl
+, zlib, withGtk ? false, gtk2 ? null
+}:
 
 with lib;
 
@@ -17,14 +18,16 @@ stdenv.mkDerivation {
     cd tools/perf
     sed -i s,/usr/include/elfutils,$elfutils/include/elfutils, Makefile
     [ -f bash_completion ] && sed -i 's,^have perf,_have perf,' bash_completion
-    export makeFlags="DESTDIR=$out $makeFlags"
+    export makeFlags="DESTDIR=$out WERROR=0 $makeFlags"
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -DTIPDIR=\"$out/share/doc/perf-tip\""
   '';
 
   # perf refers both to newt and slang
   nativeBuildInputs = [ asciidoc xmlto docbook_xsl docbook_xml_dtd_45 libxslt
       flex bison libiberty libaudit makeWrapper pkgconfig python perl ];
-  buildInputs = [ elfutils newt slang libunwind libbfd zlib ] ++
-    stdenv.lib.optional withGtk gtk2;
+  buildInputs =
+    [ elfutils newt slang libunwind libbfd zlib openssl systemtap.stapBuild numactl
+    ] ++ stdenv.lib.optional withGtk gtk2;
 
   # Note: we don't add elfutils to buildInputs, since it provides a
   # bad `ld' and other stuff.
diff --git a/pkgs/os-specific/linux/kernel/riscv-initrd-free.patch b/pkgs/os-specific/linux/kernel/riscv-initrd-free.patch
new file mode 100644
index 0000000000000..680448385246a
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/riscv-initrd-free.patch
@@ -0,0 +1,21 @@
+commit b1fbec8b74ace263ce1371e6bcfdd1dd71b52070
+Author: Shea Levy <shea@shealevy.com>
+Date:   Tue Feb 20 08:48:12 2018 -0500
+
+    riscv: Implement free_initrd_mem.
+    
+    v2: Remove incorrect page alignment.
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c
+index c77df8142be2..1b6daa5184e0 100644
+--- a/arch/riscv/mm/init.c
++++ b/arch/riscv/mm/init.c
+@@ -66,5 +66,6 @@ void free_initmem(void)
+ #ifdef CONFIG_BLK_DEV_INITRD
+ void free_initrd_mem(unsigned long start, unsigned long end)
+ {
++	free_reserved_area((void *)start, (void *)end, -1, "initrd");
+ }
+ #endif /* CONFIG_BLK_DEV_INITRD */
diff --git a/pkgs/os-specific/linux/kernel/riscv-initrd.patch b/pkgs/os-specific/linux/kernel/riscv-initrd.patch
new file mode 100644
index 0000000000000..2313e76458434
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/riscv-initrd.patch
@@ -0,0 +1,48 @@
+commit 1e5f6473492f41355289d022003a049ebf8995fa
+Author: Shea Levy <shea@shealevy.com>
+Date:   Tue Feb 20 07:52:14 2018 -0500
+
+    riscv: Respect the initrd found in the dt, if any.
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/arch/riscv/kernel/setup.c b/arch/riscv/kernel/setup.c
+index 41d34008faf6..c4ebc907af34 100644
+--- a/arch/riscv/kernel/setup.c
++++ b/arch/riscv/kernel/setup.c
+@@ -88,15 +88,20 @@ static void __init setup_initrd(void)
+ 	extern unsigned long __initramfs_size;
+ 	unsigned long size;
+ 
++	if (initrd_start)
++		goto found;
++
+ 	if (__initramfs_size > 0) {
+ 		initrd_start = (unsigned long)(&__initramfs_start);
+ 		initrd_end = initrd_start + __initramfs_size;
+ 	}
+ 
++	initrd_below_start_ok = 1;
+ 	if (initrd_start >= initrd_end) {
+ 		printk(KERN_INFO "initrd not found or empty");
+ 		goto disable;
+ 	}
++found:
+ 	if (__pa(initrd_end) > PFN_PHYS(max_low_pfn)) {
+ 		printk(KERN_ERR "initrd extends beyond end of memory");
+ 		goto disable;
+@@ -104,13 +109,13 @@ static void __init setup_initrd(void)
+ 
+ 	size =  initrd_end - initrd_start;
+ 	memblock_reserve(__pa(initrd_start), size);
+-	initrd_below_start_ok = 1;
+ 
+ 	printk(KERN_INFO "Initial ramdisk at: 0x%p (%lu bytes)\n",
+ 		(void *)(initrd_start), size);
+ 	return;
+ disable:
+ 	pr_cont(" - disabling initrd\n");
++	initrd_below_start_ok = 0;
+ 	initrd_start = 0;
+ 	initrd_end = 0;
+ }
diff --git a/pkgs/os-specific/linux/kernel/riscv-install.patch b/pkgs/os-specific/linux/kernel/riscv-install.patch
new file mode 100644
index 0000000000000..707230e9a336f
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/riscv-install.patch
@@ -0,0 +1,65 @@
+commit 365fc1312f4911bfae25c5914c398f9aca21948f
+Author: Shea Levy <shea@shealevy.com>
+Date:   Mon Feb 19 10:50:58 2018 -0500
+
+    riscv: Add install target to Makefile.
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/arch/riscv/Makefile b/arch/riscv/Makefile
+index 6719dd30ec5b..26892daefa05 100644
+--- a/arch/riscv/Makefile
++++ b/arch/riscv/Makefile
+@@ -70,3 +70,7 @@ core-y += arch/riscv/kernel/ arch/riscv/mm/
+ libs-y += arch/riscv/lib/
+ 
+ all: vmlinux
++
++PHONY += install
++install: vmlinux
++	sh $(srctree)/arch/riscv/install.sh $(KERNELRELEASE) $< System.map "$(INSTALL_PATH)"
+diff --git a/arch/riscv/install.sh b/arch/riscv/install.sh
+new file mode 100644
+index 000000000000..8b3155a11a4a
+--- /dev/null
++++ b/arch/riscv/install.sh
+@@ -0,0 +1,39 @@
++#!/bin/sh
++#
++# arch/riscv/install.sh
++#
++# This file is subject to the terms and conditions of the GNU General Public
++# License.  See the file "COPYING" in the main directory of this archive
++# for more details.
++#
++# Copyright (C) 1995 by Linus Torvalds
++#
++# Adapted from code in arch/ia64/Makefile by Shea Levy
++#
++# "make install" script for riscv architecture
++#
++# Arguments:
++#   $1 - kernel version
++#   $2 - kernel image file
++#   $3 - kernel map file
++#   $4 - default install path (blank if root directory)
++#
++
++# User may have a custom install script
++
++if [ -x ~/bin/${INSTALLKERNEL} ]; then exec ~/bin/${INSTALLKERNEL} "$@"; fi
++if [ -x /sbin/${INSTALLKERNEL} ]; then exec /sbin/${INSTALLKERNEL} "$@"; fi
++
++# Default install - no bootloader configuration (yet?)
++base=$(basename $2)
++
++if [ -f $4/$base ]; then
++	mv $4/$base $4/$base.old
++fi
++
++if [ -f $4/System.map ]; then
++	mv $4/System.map $4/System.old
++fi
++
++cat $2 > $4/$base
++cp $3 $4/System.map
diff --git a/pkgs/os-specific/linux/kernel/riscv-irq-busy.patch b/pkgs/os-specific/linux/kernel/riscv-irq-busy.patch
new file mode 100644
index 0000000000000..5f5e8f0c8b7b7
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/riscv-irq-busy.patch
@@ -0,0 +1,42 @@
+commit 2603e6087b26e9428b806b267aee6bcb919abcea
+Author: Shea Levy <shea@shealevy.com>
+Date:   Sun Feb 18 20:08:30 2018 -0500
+
+    set_handle_irq: Return EBUSY if the handler has already been registered.
+    
+    This is what's expected by the comments and at least by irq-riscv-intc.c
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/include/linux/irq.h b/include/linux/irq.h
+index 2930fd2572e4..77e97872a13e 100644
+--- a/include/linux/irq.h
++++ b/include/linux/irq.h
+@@ -1179,7 +1179,7 @@ int ipi_send_mask(unsigned int virq, const struct cpumask *dest);
+  * Returns 0 on success, or -EBUSY if an IRQ handler has already been
+  * registered.
+  */
+-void __init set_handle_irq(void (*handle_irq)(struct pt_regs *));
++int __init set_handle_irq(void (*handle_irq)(struct pt_regs *));
+ 
+ /*
+  * Allows interrupt handlers to find the irqchip that's been registered as the
+diff --git a/kernel/irq/handle.c b/kernel/irq/handle.c
+index dee4f9a172ca..3570c715c3e7 100644
+--- a/kernel/irq/handle.c
++++ b/kernel/irq/handle.c
+@@ -213,11 +213,12 @@ irqreturn_t handle_irq_event(struct irq_desc *desc)
+ }
+ 
+ #ifdef CONFIG_GENERIC_IRQ_MULTI_HANDLER
+-void __init set_handle_irq(void (*handle_irq)(struct pt_regs *))
++int __init set_handle_irq(void (*handle_irq)(struct pt_regs *))
+ {
+ 	if (handle_arch_irq)
+-		return;
++		return -EBUSY;
+ 
+ 	handle_arch_irq = handle_irq;
++	return 0;
+ }
+ #endif
diff --git a/pkgs/os-specific/linux/kernel/riscv-modules.patch b/pkgs/os-specific/linux/kernel/riscv-modules.patch
new file mode 100644
index 0000000000000..6d5356e0e46f9
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/riscv-modules.patch
@@ -0,0 +1,11 @@
+diff -Naur linux-4.15.4-orig/arch/riscv/configs/defconfig linux-4.15.4/arch/riscv/configs/defconfig
+--- linux-4.15.4-orig/arch/riscv/configs/defconfig	2018-02-16 14:07:01.000000000 -0500
++++ linux-4.15.4/arch/riscv/configs/defconfig	2018-02-18 18:33:09.488431900 -0500
+@@ -12,6 +12,7 @@
+ CONFIG_NAMESPACES=y
+ CONFIG_USER_NS=y
+ CONFIG_BLK_DEV_INITRD=y
++CONFIG_MODULES=y
+ CONFIG_EXPERT=y
+ CONFIG_CHECKPOINT_RESTORE=y
+ CONFIG_BPF_SYSCALL=y
diff --git a/pkgs/os-specific/linux/powertop/default.nix b/pkgs/os-specific/linux/powertop/default.nix
index 5a10f455ea06a..7679262a9899e 100644
--- a/pkgs/os-specific/linux/powertop/default.nix
+++ b/pkgs/os-specific/linux/powertop/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "0l4jjlf05li2mc6g8nrss3h435wjhmnqd8m7v3kha3x0x7cbfzxa";
   };
 
+  outputs = [ "out" "man" ];
+
   nativeBuildInputs = [ pkgconfig ];
   buildInputs = [ gettext libnl ncurses pciutils zlib ];
 
diff --git a/pkgs/os-specific/linux/systemd/cryptsetup-generator.nix b/pkgs/os-specific/linux/systemd/cryptsetup-generator.nix
index dc0a23be98fea..f69269347e373 100644
--- a/pkgs/os-specific/linux/systemd/cryptsetup-generator.nix
+++ b/pkgs/os-specific/linux/systemd/cryptsetup-generator.nix
@@ -10,21 +10,15 @@ stdenv.lib.overrideDerivation systemd (p: {
   outputs = [ "out" ];
 
   buildPhase = ''
-    make $makeFlags built-sources
-    make $makeFlags systemd-cryptsetup
-    make $makeFlags systemd-cryptsetup-generator
+    ninja systemd-cryptsetup systemd-cryptsetup-generator
   '';
 
-  # For some reason systemd-cryptsetup-generator is a wrapper-script
-  # with the current release of systemd. We want the real one.
-
-  # TODO: Remove `.libs` prefix when the wrapper-script is gone
   installPhase = ''
     mkdir -p $out/lib/systemd/
-    cp .libs/systemd-cryptsetup $out/lib/systemd/systemd-cryptsetup
-    cp .libs/*.so $out/lib/
+    cp systemd-cryptsetup $out/lib/systemd/systemd-cryptsetup
+    cp src/shared/*.so $out/lib/systemd/
 
     mkdir -p $out/lib/systemd/system-generators/
-    cp .libs/systemd-cryptsetup-generator $out/lib/systemd/system-generators/systemd-cryptsetup-generator
+    cp systemd-cryptsetup-generator $out/lib/systemd/system-generators/systemd-cryptsetup-generator
   '';
 })
diff --git a/pkgs/servers/matrix-synapse/default.nix b/pkgs/servers/matrix-synapse/default.nix
index 7de011e586625..d8352df3623d9 100644
--- a/pkgs/servers/matrix-synapse/default.nix
+++ b/pkgs/servers/matrix-synapse/default.nix
@@ -1,4 +1,4 @@
-{ lib, pkgs, stdenv, pythonPackages, fetchurl, fetchFromGitHub }:
+{ lib, pkgs, stdenv, pythonPackages, fetchurl, fetchFromGitHub, fetchpatch }:
 let
   matrix-angular-sdk = pythonPackages.buildPythonPackage rec {
     name = "matrix-angular-sdk-${version}";
@@ -35,7 +35,13 @@ in pythonPackages.buildPythonApplication rec {
     sha256 = "1ggdnb4c8y835j9lxsglxry6fqy7d190s70rccjrc3rj0p5vwlyj";
   };
 
-  patches = [ ./matrix-synapse.patch ];
+  patches = [
+    (fetchpatch { # Update pynacl dependency
+      url = "https://github.com/matrix-org/synapse/pull/2888.patch";
+      sha256 = "0gr9vwv02ps17d6pzassp9xmj1qbdgxwn1z4kckx4x964zzhyn4f";
+    })
+    ./matrix-synapse.patch
+  ];
 
   propagatedBuildInputs = with pythonPackages; [
     blist canonicaljson daemonize dateutil frozendict pillow pyasn1
diff --git a/pkgs/servers/varnish/default.nix b/pkgs/servers/varnish/default.nix
index 468cc86d88939..9efb4e4dfe5a3 100644
--- a/pkgs/servers/varnish/default.nix
+++ b/pkgs/servers/varnish/default.nix
@@ -2,12 +2,12 @@
 , python, pythonPackages, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  version = "5.1.3";
+  version = "5.2.1";
   name = "varnish-${version}";
 
   src = fetchurl {
-    url = "http://repo.varnish-cache.org/source/${name}.tar.gz";
-    sha256 = "0km50hzjzi1kq85lr3hq519nrp261wb91ixq48vhyd41llycjfbl";
+    url = "http://varnish-cache.org/_downloads/${name}.tgz";
+    sha256 = "1cqlj12m426c1lak1hr1fx5zcfsjjvka3hfirz47hvy1g2fjqidq";
   };
 
   nativeBuildInputs = [ pkgconfig ];
@@ -32,6 +32,6 @@ stdenv.mkDerivation rec {
     homepage = https://www.varnish-cache.org;
     license = licenses.bsd2;
     maintainers = with maintainers; [ garbas fpletz ];
-    platforms = platforms.linux ++ platforms.darwin;
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/servers/varnish/modules.nix b/pkgs/servers/varnish/modules.nix
index c37fae4ba3d26..8327b2ca51669 100644
--- a/pkgs/servers/varnish/modules.nix
+++ b/pkgs/servers/varnish/modules.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, varnish, python, docutils }:
+{ stdenv, fetchurl, pkgconfig, varnish, python, docutils, removeReferencesTo }:
 
 stdenv.mkDerivation rec {
   version = "0.10.2";
@@ -9,9 +9,11 @@ stdenv.mkDerivation rec {
     sha256 = "0inw76pm8kcidh0lq7gm3c3bh8v6yps0z7j6ar617b8wf730w1im";
   };
 
-  nativeBuildInputs = [ pkgconfig docutils ];
+  nativeBuildInputs = [ pkgconfig docutils removeReferencesTo ];
   buildInputs = [ varnish python ];
 
+  postInstall = "find $out -type f -exec remove-references-to -t ${varnish.dev} '{}' +"; # varnish.dev captured only as __FILE__ in assert messages
+
   meta = with stdenv.lib; {
     description = "Collection of Varnish Cache modules (vmods) by Varnish Software";
     homepage = https://github.com/varnish/varnish-modules;
diff --git a/pkgs/servers/varnish/rtstatus.nix b/pkgs/servers/varnish/rtstatus.nix
index 1efa6d5e79896..e92559f038d8b 100644
--- a/pkgs/servers/varnish/rtstatus.nix
+++ b/pkgs/servers/varnish/rtstatus.nix
@@ -17,5 +17,6 @@ stdenv.mkDerivation rec {
     description = "Varnish realtime status page";
     homepage = https://github.com/varnish/libvmod-rtstatus;
     inherit (varnish.meta) license platforms maintainers;
+    broken = true; # it has not ported to varnish 5.2 yet (5.1 is ok)
   };
 }
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index 28b2f203dae56..27b3c176a2a7b 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -118,6 +118,7 @@ in rec {
         initialPath  = [ bootstrapTools ];
 
         fetchurlBoot = import ../../build-support/fetchurl {
+          inherit lib;
           stdenvNoCC = stage0.stdenv;
           curl = bootstrapTools;
         };
diff --git a/pkgs/stdenv/freebsd/default.nix b/pkgs/stdenv/freebsd/default.nix
index 6ab8bf217269f..b3a6cedad8419 100644
--- a/pkgs/stdenv/freebsd/default.nix
+++ b/pkgs/stdenv/freebsd/default.nix
@@ -29,7 +29,8 @@ let inherit (localSystem) system; in
     inherit bootstrapTools;
 
     fetchurl = import ../../build-support/fetchurl {
-      inherit stdenv;
+      inherit lib;
+      stdenvNoCC = stdenv;
       curl = bootstrapTools;
     };
 
diff --git a/pkgs/stdenv/generic/check-meta.nix b/pkgs/stdenv/generic/check-meta.nix
index dc5e79fcd4f25..93d0f4cc9805f 100644
--- a/pkgs/stdenv/generic/check-meta.nix
+++ b/pkgs/stdenv/generic/check-meta.nix
@@ -159,7 +159,7 @@ let
     executables = listOf str;
     outputsToInstall = listOf str;
     position = str;
-    evaluates = bool;
+    available = bool;
     repositories = attrsOf str;
     isBuildPythonPackage = platforms;
     schedulingPriority = int;
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index e021b284a1226..e8f78d7401f1e 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -238,9 +238,9 @@ rec {
           position = pos.file + ":" + toString pos.line;
         # Expose the result of the checks for everyone to see.
         } // {
-          evaluates = validity.valid
+          available = validity.valid
                    && (if config.checkMetaRecursively or false
-                       then lib.all (d: d.meta.evaluates or true) references
+                       then lib.all (d: d.meta.available or true) references
                        else true);
         };
 
diff --git a/pkgs/stdenv/native/default.nix b/pkgs/stdenv/native/default.nix
index 558a77281edb4..19efac3700a65 100644
--- a/pkgs/stdenv/native/default.nix
+++ b/pkgs/stdenv/native/default.nix
@@ -131,7 +131,7 @@ in
     };
 
     fetchurl = import ../../build-support/fetchurl {
-      inherit stdenv;
+      inherit lib stdenvNoCC;
       # Curl should be in /usr/bin or so.
       curl = null;
     };
diff --git a/pkgs/tools/admin/docker-credential-gcr/default.nix b/pkgs/tools/admin/docker-credential-gcr/default.nix
new file mode 100644
index 0000000000000..52b68a7477cc4
--- /dev/null
+++ b/pkgs/tools/admin/docker-credential-gcr/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "docker-credential-gcr-${version}";
+  version = "1.4.3";
+
+  goPackagePath = "github.com/GoogleCloudPlatform/docker-credential-gcr";
+
+  src = fetchFromGitHub {
+    owner = "GoogleCloudPlatform";
+    repo = "docker-credential-gcr";
+    rev = "v${version}";
+    sha256 = "1xb88xjyyrdmjcgfv7fqdkv1ip3dpzsdif5vm7vkqvn83s5wj5df";
+  };
+
+  meta = with stdenv.lib; {
+    description = "A Docker credential helper for GCR (https://gcr.io) users";
+    longDescription = ''
+      docker-credential-gcr is Google Container Registry's Docker credential
+      helper. It allows for Docker clients v1.11+ to easily make
+      authenticated requests to GCR's repositories (gcr.io, eu.gcr.io, etc.).
+    '';
+    homepage = https://github.com/GoogleCloudPlatform/docker-credential-gcr;
+    license = licenses.asl20;
+    maintainers = with maintainers; [ suvash ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/tools/backup/attic/default.nix b/pkgs/tools/backup/attic/default.nix
deleted file mode 100644
index 754e12e7f776b..0000000000000
--- a/pkgs/tools/backup/attic/default.nix
+++ /dev/null
@@ -1,56 +0,0 @@
-{ stdenv, fetchzip, python3Packages, openssl, acl, fetchurl, pkgconfig, fuse, attr, which }:
-
-let
-
-  # Old version needed for attic (backup program) due to breaking change in
-  # llfuse >= 0.42.
-  llfuse-0-41 = python3Packages.buildPythonPackage rec {
-    name = "llfuse-0.41.1";
-    src = fetchurl {
-      url = "mirror://pypi/l/llfuse/${name}.tar.bz2";
-      sha256 = "1imlqw9b73086y97izr036f58pgc5akv4ihc2rrf8j5h75jbrlaa";
-    };
-  nativeBuildInputs = [ pkgconfig ];
-    buildInputs = with python3Packages; [ pytest fuse attr which ];
-    propagatedBuildInputs = with python3Packages; [ contextlib2 ];
-    checkPhase = ''
-      py.test
-    '';
-    # FileNotFoundError: [Errno 2] No such file or directory: '/usr/bin'
-    doCheck = false;
-    meta = {
-      description = "Python bindings for the low-level FUSE API";
-      homepage = https://code.google.com/p/python-llfuse/;
-      license = stdenv.lib.licenses.lgpl2Plus;
-      platforms = stdenv.lib.platforms.unix;
-      maintainers = with stdenv.lib.maintainers; [ bjornfor ];
-    };
-  };
-
-in python3Packages.buildPythonApplication rec {
-  name = "attic-${version}";
-  version = "0.16";
-  namePrefix = "";
-
-  src = fetchzip {
-    name = "${name}-src";
-    url = "https://github.com/jborg/attic/archive/${version}.tar.gz";
-    sha256 = "008566hhsd3ck70ql0fdn4vaqjfcnf493gwd49d6294f8r7qn06z";
-  };
-
-  propagatedBuildInputs = with python3Packages;
-    [ cython msgpack openssl acl llfuse-0-41 ];
-
-  preConfigure = ''
-    export ATTIC_OPENSSL_PREFIX="${openssl.dev}"
-    substituteInPlace setup.py --replace "version=versioneer.get_version()" "version='${version}'"
-  '';
-
-  meta = with stdenv.lib; {
-    description = "A deduplicating backup program";
-    homepage = https://attic-backup.org;
-    license = licenses.bsd3;
-    maintainers = [ maintainers.wscott ];
-    platforms = platforms.unix; # Darwin and FreeBSD mentioned on homepage
-  };
-}
diff --git a/pkgs/tools/backup/restic/default.nix b/pkgs/tools/backup/restic/default.nix
index b7422e311b09a..4a51a65b4065d 100644
--- a/pkgs/tools/backup/restic/default.nix
+++ b/pkgs/tools/backup/restic/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "restic-${version}";
-  version = "0.8.1";
+  version = "0.8.2";
 
   goPackagePath = "github.com/restic/restic";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     owner = "restic";
     repo = "restic";
     rev = "v${version}";
-    sha256 = "13pawz031pzyc4ap5kk229cmzj0qjx5x0j1mw7jhwhc4w4ximvl3";
+    sha256 = "1prk8r0kmcscj79fc53a0qjvik6ygjr50xwnahs0amlyh03pyb46";
   };
 
   buildPhase = ''
diff --git a/pkgs/tools/cd-dvd/ecm-tools/default.nix b/pkgs/tools/cd-dvd/ecm-tools/default.nix
new file mode 100644
index 0000000000000..ec814d97bde04
--- /dev/null
+++ b/pkgs/tools/cd-dvd/ecm-tools/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation rec {
+  name = "ecm-tools-${version}";
+  version = "1.0.3";
+
+  src = fetchFromGitHub {
+    owner = "alucryd";
+    repo = "ecm-tools";
+    rev = "v${version}";
+    sha256 = "1rvyx5gcy8lfklgj80szlz3312x45wzx0d9jsgwyvy8f6m4nnb0c";
+  };
+
+  dontConfigure = true;
+
+  installPhase = ''
+    install --directory --mode=755 $out/bin
+    install --mode=755 bin2ecm $out/bin
+    (cd $out/bin; ln -s bin2ecm ecm2bin)
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A utility to uncompress ECM files to BIN CD format";
+    homepage = https://github.com/alucryd/ecm-tools;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ AndersonTorres ];
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/tools/filesystems/idsk/default.nix b/pkgs/tools/filesystems/idsk/default.nix
new file mode 100644
index 0000000000000..617457f55b61d
--- /dev/null
+++ b/pkgs/tools/filesystems/idsk/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+
+  repo = "idsk";
+  version = "unstable-2018-02-11";
+  rev = "1846729ac3432aa8c2c0525be45cfff8a513e007";
+  name = "${repo}-${version}";
+
+  meta = with stdenv.lib; {
+    description = "Manipulating CPC dsk images and files";
+    homepage = https://github.com/cpcsdk/idsk ;
+    license = "unknown";
+    maintainers = [ maintainers.genesis ];
+    platforms = platforms.linux;
+  };
+
+  src = fetchFromGitHub {
+    inherit rev repo;
+    owner = "cpcsdk";
+    sha256 = "0d891lvf2nc8bys8kyf69k54rf3jlwqrcczbff8xi0w4wsiy5ckv";
+  };
+
+  nativeBuildInputs = [ cmake ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp iDSK $out/bin
+  '';
+}
diff --git a/pkgs/tools/graphics/pngquant/default.nix b/pkgs/tools/graphics/pngquant/default.nix
index 992e66965f8d5..b53a07bcfadfe 100644
--- a/pkgs/tools/graphics/pngquant/default.nix
+++ b/pkgs/tools/graphics/pngquant/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name = "pngquant-${version}";
-  version = "2.9.1";
+  version = "2.11.7";
 
   src = fetchgit {
     url = "https://www.github.com/pornel/pngquant.git";
     rev = "refs/tags/${version}";
-    sha256 = "0xhnrjsk55jy5q68f81y7l61c6x18i4fzkm3i4dgndrhri5g4n1q";
+    sha256 = "1qr5qr2wznzp0v9xwyz4r3982rcm9kys913w8gwmv7qd1akvx2qh";
     fetchSubmodules = true;
   };
 
diff --git a/pkgs/tools/misc/watchexec/default.nix b/pkgs/tools/misc/watchexec/default.nix
new file mode 100644
index 0000000000000..2b801bb74a420
--- /dev/null
+++ b/pkgs/tools/misc/watchexec/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, rustPlatform, fetchFromGitHub }:
+
+with rustPlatform;
+
+buildRustPackage rec {
+  name = "watchexec-${version}";
+  version = "1.8.6";
+
+  src = fetchFromGitHub {
+    owner = "mattgreen";
+    repo = "watchexec";
+    rev = "${version}";
+    sha256 = "1jib51dbr6s1iq21inm2xfsjnz1730nyd3af1x977iqivmwdisax";
+  };
+
+  cargoSha256 = "0sm1jvx1y18h7y66ilphsqmkbdxc76xly8y7kxmqwdi4lw54i9vl";
+
+  meta = with stdenv.lib; {
+    description = "Executes commands in response to file modifications";
+    homepage = https://github.com/mattgreen/watchexec;
+    license = with licenses; [ asl20 ];
+    maintainers = [ maintainers.michalrus ];
+    platforms = [ "x86_64-linux" ];
+  };
+}
diff --git a/pkgs/tools/networking/acme-client/default.nix b/pkgs/tools/networking/acme-client/default.nix
new file mode 100644
index 0000000000000..1e10529082f5c
--- /dev/null
+++ b/pkgs/tools/networking/acme-client/default.nix
@@ -0,0 +1,38 @@
+{ stdenv
+, apple_sdk ? null
+, cacert
+, defaultCaFile ? "${cacert}/etc/ssl/certs/ca-bundle.crt"
+, fetchurl
+, libbsd
+, libressl
+, pkgconfig
+}:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  name = "acme-client-${version}";
+  version = "0.1.16";
+
+  src = fetchurl {
+    url = "https://kristaps.bsd.lv/acme-client/snapshots/acme-client-portable-${version}.tgz";
+    sha256 = "00q05b3b1dfnfp7sr1nbd212n0mqrycl3cr9lbs51m7ncaihbrz9";
+  };
+
+  buildInputs = [ libbsd libressl pkgconfig ]
+    ++ optional stdenv.isDarwin apple_sdk.sdk;
+
+  CFLAGS = "-DDEFAULT_CA_FILE='\"${defaultCaFile}\"'";
+
+  preConfigure = ''
+    export PREFIX="$out"
+  '';
+
+  meta = {
+    homepage = https://kristaps.bsd.lv/acme-client/;
+    description = "Secure ACME/Let's Encrypt client";
+    platforms = platforms.unix;
+    license = licenses.isc;
+    maintainers = with maintainers; [ pmahoney ];
+  };
+}
diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix
index f6e6988270adb..e8eb3050c6d34 100644
--- a/pkgs/tools/package-management/nix/default.nix
+++ b/pkgs/tools/package-management/nix/default.nix
@@ -126,12 +126,12 @@ in rec {
 
   nixUnstable = (lib.lowPrio (common rec {
     name = "nix-2.0${suffix}";
-    suffix = "pre5951_690ac7c9";
+    suffix = "pre5968_a6c0b773";
     src = fetchFromGitHub {
       owner = "NixOS";
       repo = "nix";
-      rev = "690ac7c90b5bf3c599e210c53365c7d229c8b0ff";
-      sha256 = "1yn2p38kp1i67makbawr1rhdiwihgnvk2zwrz0gvf6q65mj2k89c";
+      rev = "a6c0b773b72d4e30690e01f1f1dcffc28f2d9ea1";
+      sha256 = "0i8wcblcjw3291ba6ki4llw3fgm8ylp9q52kajkyr58dih537346";
     };
     fromGit = true;
   })) // { perl-bindings = perl-bindings { nix = nixUnstable; }; };
diff --git a/pkgs/tools/security/afl/default.nix b/pkgs/tools/security/afl/default.nix
index 51701590b8e9d..1ff0ad6f6b686 100644
--- a/pkgs/tools/security/afl/default.nix
+++ b/pkgs/tools/security/afl/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   # Note: libcgroup isn't needed for building, just for the afl-cgroup
   # script.
-  buildInputs  = [ makeWrapper clang llvm which ];
+  buildInputs  = [ makeWrapper llvm which ];
 
   buildPhase   = ''
     make PREFIX=$out
@@ -53,8 +53,7 @@ stdenv.mkDerivation rec {
     for x in $out/bin/afl-clang-fast $out/bin/afl-clang-fast++; do
       wrapProgram $x \
         --prefix AFL_PATH : "$out/lib/afl" \
-        --prefix AFL_CC   : "${clang}/bin/clang" \
-        --prefix AFL_CXX  : "${clang}/bin/clang++"
+        --run 'export AFL_CC=''${AFL_CC:-${clang}/bin/clang} AFL_CXX=''${AFL_CXX:-${clang}/bin/clang++}'
     done
   '';
 
@@ -76,7 +75,7 @@ stdenv.mkDerivation rec {
     '';
     homepage    = "http://lcamtuf.coredump.cx/afl/";
     license     = stdenv.lib.licenses.asl20;
-    platforms   = stdenv.lib.platforms.linux;
+    platforms   = ["x86_64-linux" "i686-linux"];
     maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
   };
 }
diff --git a/pkgs/tools/security/secp256k1/default.nix b/pkgs/tools/security/secp256k1/default.nix
index 83a23744c2e9c..fd03e6bebabc1 100644
--- a/pkgs/tools/security/secp256k1/default.nix
+++ b/pkgs/tools/security/secp256k1/default.nix
@@ -20,13 +20,13 @@ stdenv.mkDerivation rec {
 
   # I can't find any version numbers, so we're just using the date of the
   # last commit.
-  version = "2016-11-27";
+  version = "2017-12-18";
 
   src = fetchFromGitHub {
     owner = "bitcoin-core";
     repo = "secp256k1";
-    rev = "2928420c1b8e1feee8c20dff4e3cc41a0de2fc22";
-    sha256 = "1djsr2vrhh88353czlwb8bwlyabf008w1f7xg0fs3q33rf42w5gm";
+    rev = "f54c6c5083307b18224c953cf5870ea7ffce070b";
+    sha256 = "0bxqmimm627g9klalg1vdbspmn52588v4a6cli3p8bn84ibsnzbm";
   };
 
   buildInputs = optionals enableJNI [ jdk ];
@@ -34,6 +34,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ autoreconfHook ];
 
   configureFlags =
+    [ "--enable-benchmark=no" "--enable-tests=no" "--enable-exhaustive-tests=no" ] ++
     optionals enableECDH [ "--enable-module-ecdh" "--enable-experimental" ] ++
     optionals enableRecovery [ "--enable-module-recovery" ] ++
     optionals enableJNI [ "--enable-jni" ];
diff --git a/pkgs/tools/text/replace/default.nix b/pkgs/tools/text/replace/default.nix
index 2719a4c81915a..9242014cdca50 100644
--- a/pkgs/tools/text/replace/default.nix
+++ b/pkgs/tools/text/replace/default.nix
@@ -8,6 +8,8 @@ stdenv.mkDerivation {
     sha256 = "1c2nkxx83vmlh1v3ib6r2xqh121gdb1rharwsimcb2h0xwc558dm";
   };
 
+  outputs = [ "out" "man" ];
+
   makeFlags = "TREE=\$(out) MANTREE=\$(TREE)/share/man";
 
   preBuild = ''
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 58783a148ec5b..0f42ad3f9e673 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -195,7 +195,7 @@ with pkgs;
 
   # `fetchurl' downloads a file from the network.
   fetchurl = import ../build-support/fetchurl {
-    inherit stdenvNoCC;
+    inherit lib stdenvNoCC;
     # On darwin, libkrb5 needs bootstrap_cmds which would require
     # converting many packages to fetchurl_boot to avoid evaluation cycles.
     curl = buildPackages.curl.override (lib.optionalAttrs stdenv.isDarwin { gssSupport = false; });
@@ -431,6 +431,8 @@ with pkgs;
 
   aescrypt = callPackage ../tools/misc/aescrypt { };
 
+  acme-client = callPackage ../tools/networking/acme-client { inherit (darwin) apple_sdk; };
+
   afew = callPackage ../applications/networking/mailreaders/afew { pythonPackages = python3Packages; };
 
   afio = callPackage ../tools/archivers/afio { };
@@ -546,10 +548,6 @@ with pkgs;
 
   atomicparsley = callPackage ../tools/video/atomicparsley { };
 
-  attic = callPackage ../tools/backup/attic {
-    python3Packages = python34Packages;
-  };
-
   autoflake = callPackage ../development/tools/analysis/autoflake { };
 
   avfs = callPackage ../tools/filesystems/avfs { };
@@ -1984,6 +1982,8 @@ with pkgs;
     # customConfig = builtins.readFile ./dvtm.config.h;
   };
 
+  ecmtools = callPackage ../tools/cd-dvd/ecm-tools { };
+
   e2tools = callPackage ../tools/filesystems/e2tools { };
 
   e2fsprogs = callPackage ../tools/filesystems/e2fsprogs { };
@@ -5199,6 +5199,8 @@ with pkgs;
 
   wal_e = callPackage ../tools/backup/wal-e { };
 
+  watchexec = callPackage ../tools/misc/watchexec { };
+
   watchman = callPackage ../development/tools/watchman { };
 
   wavefunctioncollapse = callPackage ../tools/graphics/wavefunctioncollapse {};
@@ -6508,6 +6510,11 @@ with pkgs;
     inherit (darwin.apple_sdk.frameworks) Foundation;
   });
 
+  mono58 = lowPrio (callPackage ../development/compilers/mono/5.8.nix {
+    inherit (darwin) libobjc;
+    inherit (darwin.apple_sdk.frameworks) Foundation;
+  });
+
   monoDLLFixer = callPackage ../build-support/mono-dll-fixer { };
 
   mozart-binary = callPackage ../development/compilers/mozart/binary.nix { };
@@ -7270,7 +7277,9 @@ with pkgs;
 
   kt = callPackage ../tools/misc/kt {};
 
-  asn2quickder = callPackage ../development/tools/asn2quickder {};
+  arpa2cm = callPackage ../development/tools/build-managers/arpa2cm { };
+
+  asn2quickder = python2Packages.callPackage ../development/tools/asn2quickder {};
 
   astyle = callPackage ../development/tools/misc/astyle { };
 
@@ -7317,6 +7326,8 @@ with pkgs;
   binutils =
     if targetPlatform.isDarwin
     then darwin.binutils
+    else if targetPlatform.isRiscV
+    then binutils_2_30
     else binutils-raw;
 
   binutils-unwrapped = callPackage ../development/tools/misc/binutils {
@@ -7327,6 +7338,15 @@ with pkgs;
     libc = if targetPlatform != hostPlatform then libcCross else stdenv.cc.libc;
     bintools = binutils-unwrapped;
   };
+  binutils-unwrapped_2_30 = callPackage ../development/tools/misc/binutils/2.30.nix {
+    # FHS sys dirs presumably only have stuff for the build platform
+    noSysDirs = (targetPlatform != buildPlatform) || noSysDirs;
+  };
+  binutils-raw_2_30 = wrapBintoolsWith {
+    libc = if targetPlatform != hostPlatform then libcCross else stdenv.cc.libc;
+    bintools = binutils-unwrapped_2_30;
+  };
+  binutils_2_30 = binutils-raw_2_30;
 
   binutils_nogold = lowPrio (binutils-raw.override {
     bintools = binutils-raw.bintools.override {
@@ -7645,7 +7665,10 @@ with pkgs;
   gnumake382 = callPackage ../development/tools/build-managers/gnumake/3.82 { };
   gnumake3 = gnumake382;
   gnumake42 = callPackage ../development/tools/build-managers/gnumake/4.2 { };
-  gnumake = gnumake42;
+  gnumake = if hostPlatform.isRiscV # Technically this check should be for glibc version.
+    then gnumake42HEAD
+  else gnumake42;
+  gnumake42HEAD = callPackage ../development/tools/build-managers/gnumake/4.2/head.nix { };
 
   gnustep = recurseIntoAttrs (callPackage ../desktops/gnustep {});
 
@@ -13100,6 +13123,19 @@ with pkgs;
       ];
   };
 
+  linux_riscv = callPackage ../os-specific/linux/kernel/linux-riscv.nix {
+    kernelPatches = [
+      kernelPatches.bridge_stp_helper
+      kernelPatches.modinst_arg_list_too_long
+    ] ++ lib.optionals hostPlatform.isRiscV [
+      kernelPatches.riscv_modules
+      kernelPatches.riscv_irq_busy
+      kernelPatches.riscv_install
+      kernelPatches.riscv_initrd
+      kernelPatches.riscv_initrd_free
+   ];
+  };
+
   linux_samus_4_12 = callPackage ../os-specific/linux/kernel/linux-samus-4.12.nix {
     kernelPatches =
       [ kernelPatches.bridge_stp_helper
@@ -13317,7 +13353,7 @@ with pkgs;
   linux_samus_latest = linuxPackages_samus_latest.kernel;
 
   # A function to build a manually-configured kernel
-  linuxManualConfig = pkgs.buildLinux;
+  linuxManualConfig = makeOverridable (callPackage ../os-specific/linux/kernel/manual-config.nix {});
   buildLinux = makeOverridable (callPackage ../os-specific/linux/kernel/generic.nix {});
 
   keyutils = callPackage ../os-specific/linux/keyutils { };
@@ -13551,6 +13587,10 @@ with pkgs;
 
   riscv-pk = callPackage ../misc/riscv-pk { };
 
+  riscv-pk-with-kernel = riscv-pk.override {
+    payload = "${linux_riscv}/vmlinux";
+  };
+
   rtkit = callPackage ../os-specific/linux/rtkit { };
 
   rt5677-firmware = callPackage ../os-specific/linux/firmware/rt5677 { };
@@ -14851,6 +14891,8 @@ with pkgs;
 
   docker-distribution = callPackage ../applications/virtualization/docker-distribution { };
 
+  docker-credential-gcr = callPackage ../tools/admin/docker-credential-gcr { };
+
   doodle = callPackage ../applications/search/doodle { };
 
   dr14_tmeter = callPackage ../applications/audio/dr14_tmeter { };
@@ -15208,8 +15250,9 @@ with pkgs;
 
   fldigi = callPackage ../applications/audio/fldigi { };
 
-  flink = flink_1_3;
+  flink = flink_1_4;
   flink_1_3 = callPackage ../applications/networking/cluster/flink { version = "1.3"; };
+  flink_1_4 = callPackage ../applications/networking/cluster/flink { version = "1.4"; };
 
   fluidsynth = callPackage ../applications/audio/fluidsynth {
      inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio CoreMIDI CoreServices;
@@ -17164,6 +17207,8 @@ with pkgs;
     vte = gnome3.vte;
   };
 
+  sayonara = callPackage ../applications/audio/sayonara { };
+
   sbagen = callPackage ../applications/misc/sbagen { };
 
   scantailor = callPackage ../applications/graphics/scantailor { };
@@ -19019,6 +19064,7 @@ with pkgs;
     tk = tk-8_5;
   };
 
+  xjump = callPackage ../games/xjump { };
   # TODO: the corresponding nix file is missing
   # xracer = callPackage ../games/xracer { };
 
@@ -19849,6 +19895,7 @@ with pkgs;
   cups-toshiba-estudio = callPackage ../misc/cups/drivers/estudio {};
 
   crashplan = callPackage ../applications/backup/crashplan { };
+  crashplansb = callPackage ../applications/backup/crashplan/crashplan-small-business.nix { inherit (gnome3) gconf; };
 
   colort = callPackage ../applications/misc/colort { };
 
@@ -20004,6 +20051,8 @@ with pkgs;
 
   epkowa = callPackage ../misc/drivers/epkowa { };
 
+  idsk = callPackage ../tools/filesystems/idsk { };
+
   illum = callPackage ../tools/system/illum { };
 
   # using the new configuration style proposal which is unstable
@@ -20571,7 +20620,10 @@ with pkgs;
 
   spdlog = callPackage ../development/libraries/spdlog { };
 
-  dart = callPackage ../development/interpreters/dart { };
+  dart = dart_stable;
+  dart_old = callPackage ../development/interpreters/dart { version = "1.16.1"; };
+  dart_stable = callPackage ../development/interpreters/dart { version = "1.24.3"; };
+  dart_dev = callPackage ../development/interpreters/dart { version = "2.0.0-dev.26.0"; };
 
   httrack = callPackage ../tools/backup/httrack { };
 
@@ -20661,6 +20713,8 @@ with pkgs;
     cc-wrapper-libcxx = callPackage ../test/cc-wrapper { stdenv = llvmPackages.libcxxStdenv; };
     cc-wrapper-clang-39 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_39.stdenv; };
     cc-wrapper-libcxx-39 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_39.libcxxStdenv; };
+    cc-wrapper-clang-4 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_4.stdenv; };
+    cc-wrapper-libcxx-4 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_4.libcxxStdenv; };
     cc-wrapper-clang-5 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_5.stdenv; };
     cc-wrapper-libcxx-5 = callPackage ../test/cc-wrapper { stdenv = llvmPackages_5.libcxxStdenv; };
     stdenv-inputs = callPackage ../test/stdenv-inputs { };
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 1fffa3fa800bc..10eb72da19eb0 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -60,6 +60,8 @@ let
 
     bitstring = callPackage ../development/ocaml-modules/bitstring { };
 
+    bitv = callPackage ../development/ocaml-modules/bitv { };
+
     bolt = callPackage ../development/ocaml-modules/bolt { };
 
     bos = callPackage ../development/ocaml-modules/bos { };
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index 689c088abdcba..ee87a49185fd0 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -780,6 +780,20 @@ let self = _self // overrides; _self = with self; {
     perlPreHook = "export LD=$CC";
   };
 
+  BSDResource = buildPerlPackage rec {
+    name = "BSD-Resource-1.2911";
+    src = fetchurl {
+      url = "https://cpan.metacpan.org/authors/id/J/JH/JHI/BSD-Resource-1.2911.tar.gz";
+      sha256 = "0g8c7825ng2m0yz5sy6838rvfdl8j3vm29524wjgf66ccfhgn74x";
+    };
+    buildInputs = [ TestPod TestPodCoverage ];
+    meta = {
+      maintainers = [ maintainers.limeytexan ];
+      description = "BSD process resource limit and priority functions";
+      license = stdenv.lib.licenses.artistic2;
+    };
+  };
+
   BusinessHours = buildPerlPackage rec {
     name = "Business-Hours-0.12";
     src = fetchurl {
@@ -6289,6 +6303,31 @@ let self = _self // overrides; _self = with self; {
       homepage = http://gtk2-perl.sourceforge.net/;
       description = "Perl interface to the 2.x series of the Gimp Toolkit library";
       license = stdenv.lib.licenses.lgpl21Plus;
+      platforms   = stdenv.lib.platforms.linux;
+    };
+  };
+
+  Gtk2GladeXML = buildPerlPackage rec {
+    name = "Gtk2-GladeXML-1.007";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/T/TS/TSCH/${name}.tar.gz";
+      sha256 = "50240a2bddbda807c8f8070de941823b7bf3d288a13be6d0d6563320b42c445a";
+    };
+    propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig Glib Gtk2 Pango pkgs.gnome2.libglade pkgs.gtk2 ];
+    meta = {
+      description = "Create user interfaces directly from Glade XML files";
+    };
+  };
+  
+  Gtk2TrayIcon = buildPerlPackage rec {
+    name = "Gtk2-TrayIcon-0.06";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/B/BO/BORUP/${name}.tar.gz";
+      sha256 = "cbb7632b75d7f41554dfe8ee9063dbfd1d8522291077c65d0d82e9ceb5e94ae2";
+    };
+    propagatedBuildInputs = [ ExtUtilsDepends ExtUtilsPkgConfig Glib Gtk2 Pango pkgs.gtk2 ];
+    meta = {
+      license = stdenv.lib.licenses.gpl2;
     };
   };
 
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index 5358738acb661..e7f8d3f2e4cae 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -112,6 +112,14 @@ let
               jobs.tests.cc-wrapper-clang-39.x86_64-darwin
               jobs.tests.cc-wrapper-libcxx-39.x86_64-linux
               jobs.tests.cc-wrapper-libcxx-39.x86_64-darwin
+              jobs.tests.cc-wrapper-clang-4.x86_64-linux
+              jobs.tests.cc-wrapper-clang-4.x86_64-darwin
+              jobs.tests.cc-wrapper-libcxx-4.x86_64-linux
+              jobs.tests.cc-wrapper-libcxx-4.x86_64-darwin
+              jobs.tests.cc-wrapper-clang-5.x86_64-linux
+              jobs.tests.cc-wrapper-clang-5.x86_64-darwin
+              jobs.tests.cc-wrapper-libcxx-5.x86_64-linux
+              jobs.tests.cc-wrapper-libcxx-5.x86_64-darwin
               jobs.tests.cc-multilib-gcc.x86_64-linux
               jobs.tests.cc-multilib-clang.x86_64-linux
               jobs.tests.stdenv-inputs.x86_64-linux