summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/altcoins/go-ethereum.nix4
-rw-r--r--pkgs/applications/altcoins/parity/beta.nix8
-rw-r--r--pkgs/applications/altcoins/parity/default.nix8
-rw-r--r--pkgs/applications/altcoins/parity/patches/vendored-sources-1.10.patch (renamed from pkgs/applications/altcoins/parity/patches/vendored-sources-1.8.patch)52
-rw-r--r--pkgs/applications/altcoins/parity/patches/vendored-sources-1.9.patch12
-rw-r--r--pkgs/applications/editors/android-studio/default.nix6
-rw-r--r--pkgs/applications/graphics/jpegoptim/default.nix4
-rw-r--r--pkgs/applications/misc/dbeaver/default.nix4
-rw-r--r--pkgs/applications/misc/rofi/default.nix6
-rw-r--r--pkgs/applications/misc/rofi/wrapper.nix17
-rw-r--r--pkgs/applications/networking/cluster/kubernetes/default.nix3
-rw-r--r--pkgs/applications/networking/corebird/default.nix2
-rw-r--r--pkgs/applications/networking/irc/weechat/default.nix10
-rw-r--r--pkgs/applications/science/logic/abella/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/default.nix5
-rw-r--r--pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix6
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix4
-rw-r--r--pkgs/applications/window-managers/i3/status-rust.nix6
-rw-r--r--pkgs/data/fonts/tex-gyre-math/default.nix71
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix32
-rw-r--r--pkgs/desktops/gnome-3/core/gnome-shell-extensions/fix_gmenu.patch24
-rw-r--r--pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix4
-rw-r--r--pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix2
-rw-r--r--pkgs/desktops/lxqt/base/libqtxdg/default.nix6
-rw-r--r--pkgs/development/compilers/gambit/build.nix70
-rw-r--r--pkgs/development/compilers/gambit/default.nix72
-rw-r--r--pkgs/development/compilers/gambit/unstable.nix11
-rw-r--r--pkgs/development/compilers/gerbil/build.nix88
-rw-r--r--pkgs/development/compilers/gerbil/default.nix94
-rw-r--r--pkgs/development/compilers/gerbil/unstable.nix12
-rw-r--r--pkgs/development/compilers/ghc/8.4.2.nix193
-rw-r--r--pkgs/development/compilers/ghcjs/default.nix1
-rw-r--r--pkgs/development/compilers/glslang/default.nix24
-rw-r--r--pkgs/development/compilers/icedtea-web/default.nix4
-rw-r--r--pkgs/development/compilers/openjdk/10.nix7
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix12
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix1
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix13
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml98
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2119
-rw-r--r--pkgs/development/interpreters/joker/default.nix4
-rw-r--r--pkgs/development/libraries/aws-sdk-cpp/default.nix4
-rw-r--r--pkgs/development/libraries/dlib/default.nix4
-rw-r--r--pkgs/development/libraries/gsl/default.nix3
-rw-r--r--pkgs/development/libraries/gstreamer/bad/default.nix35
-rw-r--r--pkgs/development/libraries/gstreamer/bad/fix_pkgconfig_includedir.patch15
-rw-r--r--pkgs/development/libraries/gstreamer/base/default.nix32
-rw-r--r--pkgs/development/libraries/gstreamer/base/fix_pkgconfig_includedir.patch15
-rw-r--r--pkgs/development/libraries/gstreamer/core/default.nix33
-rw-r--r--pkgs/development/libraries/gstreamer/core/fix_pkgconfig_includedir.patch15
-rw-r--r--pkgs/development/libraries/gstreamer/default.nix6
-rw-r--r--pkgs/development/libraries/gstreamer/ges/default.nix21
-rw-r--r--pkgs/development/libraries/gstreamer/ges/fix_pkgconfig_includedir.patch15
-rw-r--r--pkgs/development/libraries/gstreamer/gnonlin/default.nix30
-rw-r--r--pkgs/development/libraries/gstreamer/good/default.nix23
-rw-r--r--pkgs/development/libraries/gstreamer/good/fix_pkgconfig_includedir.patch15
-rw-r--r--pkgs/development/libraries/gstreamer/libav/default.nix15
-rw-r--r--pkgs/development/libraries/gstreamer/rtsp-server/default.nix10
-rw-r--r--pkgs/development/libraries/gstreamer/ugly/default.nix14
-rw-r--r--pkgs/development/libraries/gstreamer/vaapi/default.nix13
-rw-r--r--pkgs/development/libraries/gstreamer/validate/default.nix4
-rw-r--r--pkgs/development/libraries/gvfs/default.nix51
-rw-r--r--pkgs/development/libraries/lightstep-tracer-cpp/default.nix1
-rw-r--r--pkgs/development/libraries/mpfr/upstream.patch1699
-rw-r--r--pkgs/development/libraries/rocksdb/default.nix12
-rw-r--r--pkgs/development/libraries/vulkan-loader/default.nix15
-rw-r--r--pkgs/development/libraries/vulkan-loader/rev-file.patch21
-rw-r--r--pkgs/development/libraries/webkitgtk/2.20.nix6
-rw-r--r--pkgs/development/libraries/xmlrpc-c/default.nix2
-rw-r--r--pkgs/development/node-packages/node-packages-v8.json1
-rw-r--r--pkgs/development/node-packages/node-packages-v8.nix443
-rw-r--r--pkgs/development/python-modules/Rtree/default.nix29
-rw-r--r--pkgs/development/python-modules/face_recognition/default.nix10
-rw-r--r--pkgs/development/python-modules/gst-python/default.nix19
-rw-r--r--pkgs/development/python-modules/vxi11/default.nix26
-rw-r--r--pkgs/development/tools/analysis/flow/default.nix4
-rw-r--r--pkgs/development/tools/analysis/pmd/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/default.nix4
-rw-r--r--pkgs/development/tools/build-managers/doit/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/buildkite-agent/default.nix4
-rw-r--r--pkgs/development/tools/gron/default.nix32
-rw-r--r--pkgs/development/tools/gron/deps.nix35
-rw-r--r--pkgs/development/tools/jl/default.nix28
-rw-r--r--pkgs/development/tools/spirv-tools/default.nix13
-rw-r--r--pkgs/games/factorio/default.nix12
-rw-r--r--pkgs/misc/cups/filters.nix5
-rw-r--r--pkgs/os-specific/darwin/apple-sdk/frameworks.nix5
-rw-r--r--pkgs/os-specific/linux/criu/default.nix4
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix3
-rw-r--r--pkgs/os-specific/linux/spl/default.nix6
-rw-r--r--pkgs/os-specific/linux/sysvinit/default.nix4
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix12
-rw-r--r--pkgs/servers/minio/default.nix4
-rw-r--r--pkgs/servers/nosql/arangodb/default.nix4
-rw-r--r--pkgs/tools/misc/xburst-tools/default.nix2
-rw-r--r--pkgs/tools/networking/mailutils/default.nix2
-rw-r--r--pkgs/tools/networking/minio-client/default.nix4
-rw-r--r--pkgs/tools/networking/p2p/libtorrent/default.nix2
-rw-r--r--pkgs/tools/security/krunner-pass/default.nix44
-rw-r--r--pkgs/tools/security/krunner-pass/pass-path.patch13
-rw-r--r--pkgs/tools/typesetting/tectonic/default.nix5
-rw-r--r--pkgs/top-level/aliases.nix4
-rw-r--r--pkgs/top-level/all-packages.nix27
-rw-r--r--pkgs/top-level/haskell-packages.nix11
-rw-r--r--pkgs/top-level/perl-packages.nix25
-rw-r--r--pkgs/top-level/python-packages.nix4
107 files changed, 2690 insertions, 3431 deletions
diff --git a/pkgs/applications/altcoins/go-ethereum.nix b/pkgs/applications/altcoins/go-ethereum.nix
index 84e0a32e7b2e..65e1dbc9b198 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.8.2";
+  version = "1.8.3";
   goPackagePath = "github.com/ethereum/go-ethereum";
 
   # Fix for usb-related segmentation faults on darwin
@@ -27,7 +27,7 @@ buildGoPackage rec {
     owner = "ethereum";
     repo = "go-ethereum";
     rev = "v${version}";
-    sha256 = "19ryfy9dsmgk3kimkmq2hif1di4binqg9718xrmirf063rajk02a";
+    sha256 = "1vdrf3fi4arr6aivyp5myj4jy7apqbiqa6brr3jplmc07q1yijnf";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/altcoins/parity/beta.nix b/pkgs/applications/altcoins/parity/beta.nix
index ee4203fa88c9..ed78133a759c 100644
--- a/pkgs/applications/altcoins/parity/beta.nix
+++ b/pkgs/applications/altcoins/parity/beta.nix
@@ -1,7 +1,7 @@
 let
-  version     = "1.9.4";
-  sha256      = "00b6wsyc2chmdkhfhi9h1i06hpcjj2abcx3qdc6k39clgha0081f";
-  cargoSha256 = "0pyb1mpykdp6i7c30lm5fprrxg3zanak44g28cygzli3l9l3xiy3";
-  patches     = [ ./patches/vendored-sources-1.9.patch ];
+  version     = "1.10.0";
+  sha256      = "0dmdd7qa8lww5bzcdn25nkyz6334irh8hw0y1j0yc2pmd2dny99g";
+  cargoSha256 = "0whkjbaq40mqva1ayqnmz2ppqjrg35va93cypx1al41rsp1yc37m";
+  patches     = [ ./patches/vendored-sources-1.10.patch ];
 in
   import ./parity.nix { inherit version sha256 cargoSha256 patches; }
diff --git a/pkgs/applications/altcoins/parity/default.nix b/pkgs/applications/altcoins/parity/default.nix
index fe2c2c628275..991799321094 100644
--- a/pkgs/applications/altcoins/parity/default.nix
+++ b/pkgs/applications/altcoins/parity/default.nix
@@ -1,7 +1,7 @@
 let
-  version     = "1.8.11";
-  sha256      = "1vabkglmmbx9jccwsqwvwck1brdjack3sw6iwsxy01wsc2jam56k";
-  cargoSha256 = "1l5hx77glclpwd9i35rr3lxfxshsf1bsxvs2chsp2vwjy06knjmi";
-  patches     = [ ./patches/vendored-sources-1.8.patch ];
+  version     = "1.9.5";
+  sha256      = "0f2x78p5bshs3678qcybqd34k83d294mp3vadp99iqhmbkhbfyy7";
+  cargoSha256 = "1irc01sva5yyhdv79cs6jk5pbmhxyvs0ja4cly4nw639m1kx7rva";
+  patches     = [ ./patches/vendored-sources-1.9.patch ];
 in
   import ./parity.nix { inherit version sha256 cargoSha256 patches; }
diff --git a/pkgs/applications/altcoins/parity/patches/vendored-sources-1.8.patch b/pkgs/applications/altcoins/parity/patches/vendored-sources-1.10.patch
index 3239df63de30..3e8e032f30c2 100644
--- a/pkgs/applications/altcoins/parity/patches/vendored-sources-1.8.patch
+++ b/pkgs/applications/altcoins/parity/patches/vendored-sources-1.10.patch
@@ -1,17 +1,30 @@
 diff --git a/.cargo/config b/.cargo/config
-new file mode 100644
-index 000000000..8dddda426
---- /dev/null
+index 72652ad2f..b21c6aa7b 100644
+--- a/.cargo/config
 +++ b/.cargo/config
-@@ -0,0 +1,94 @@
+@@ -1,3 +1,113 @@
+ [target.x86_64-pc-windows-msvc]
+ # Link the C runtime statically ; https://github.com/paritytech/parity/issues/6643
+ rustflags = ["-Ctarget-feature=+crt-static"]
++
 +[source."https://github.com/alexcrichton/mio-named-pipes"]
 +git = "https://github.com/alexcrichton/mio-named-pipes"
-+branch = "master" 
++branch = "master"
++replace-with = "vendored-sources"
++
++[source."https://github.com/js-dist-paritytech/parity-master-1-10-shell.git"]
++git = "https://github.com/js-dist-paritytech/parity-master-1-10-shell.git"
++rev = "bd25b41cd642c6b822d820dded3aa601a29aa079"
++replace-with = "vendored-sources"
++
++[source."https://github.com/js-dist-paritytech/parity-master-1-10-wallet.git"]
++git = "https://github.com/js-dist-paritytech/parity-master-1-10-wallet.git"
++rev = "4b6f112412716cd05123d32eeb7fda448288a6c6"
 +replace-with = "vendored-sources"
 +
 +[source."https://github.com/nikvolf/parity-tokio-ipc"]
 +git = "https://github.com/nikvolf/parity-tokio-ipc"
-+branch = "master" 
++branch = "master"
 +replace-with = "vendored-sources"
 +
 +[source."https://github.com/nikvolf/tokio-named-pipes"]
@@ -19,6 +32,16 @@ index 000000000..8dddda426
 +branch = "master"
 +replace-with = "vendored-sources"
 +
++[source."https://github.com/parity-js/dapp-wallet.git"]
++git = "https://github.com/parity-js/dapp-wallet.git"
++rev = "65deb02e7c007a0fd8aab0c089c93e3fd1de6f87"
++replace-with = "vendored-sources"
++
++[source."https://github.com/parity-js/shell.git"]
++git = "https://github.com/parity-js/shell.git"
++rev = "eecaadcb9e421bce31e91680d14a20bbd38f92a2"
++replace-with = "vendored-sources"
++
 +[source."https://github.com/paritytech/bn"]
 +git = "https://github.com/paritytech/bn"
 +branch = "master"
@@ -34,14 +57,9 @@ index 000000000..8dddda426
 +branch = "master"
 +replace-with = "vendored-sources"
 +
-+[source."https://github.com/paritytech/js-precompiled.git"]
-+git = "https://github.com/paritytech/js-precompiled.git"
-+branch = "stable"
-+replace-with = "vendored-sources"
-+
 +[source."https://github.com/paritytech/jsonrpc.git"]
 +git = "https://github.com/paritytech/jsonrpc.git"
-+branch = "parity-1.8"
++branch = "parity-1.10"
 +replace-with = "vendored-sources"
 +
 +[source."https://github.com/paritytech/libusb-rs"]
@@ -54,11 +72,6 @@ index 000000000..8dddda426
 +branch = "master"
 +replace-with = "vendored-sources"
 +
-+[source."https://github.com/paritytech/nanomsg.rs.git"]
-+git = "https://github.com/paritytech/nanomsg.rs.git"
-+branch = "parity-1.7"
-+replace-with = "vendored-sources"
-+
 +[source."https://github.com/paritytech/rust-ctrlc.git"]
 +git = "https://github.com/paritytech/rust-ctrlc.git"
 +branch = "master"
@@ -89,6 +102,11 @@ index 000000000..8dddda426
 +branch = "master"
 +replace-with = "vendored-sources"
 +
++[source."https://github.com/paritytech/wasmi"]
++git = "https://github.com/paritytech/wasmi"
++branch = "master"
++replace-with = "vendored-sources"
++
 +[source."https://github.com/tailhook/rotor"]
 +git = "https://github.com/tailhook/rotor"
 +branch = "master"
diff --git a/pkgs/applications/altcoins/parity/patches/vendored-sources-1.9.patch b/pkgs/applications/altcoins/parity/patches/vendored-sources-1.9.patch
index d1f6520d706b..d91b103c6cef 100644
--- a/pkgs/applications/altcoins/parity/patches/vendored-sources-1.9.patch
+++ b/pkgs/applications/altcoins/parity/patches/vendored-sources-1.9.patch
@@ -10,13 +10,13 @@ index 000000000..0efb69724
 +branch = "master"
 +replace-with = "vendored-sources"
 +
-+[source."https://github.com/js-dist-paritytech/parity-beta-1-9-shell.git"]
-+git = "https://github.com/js-dist-paritytech/parity-beta-1-9-shell.git"
++[source."https://github.com/js-dist-paritytech/parity-stable-1-9-shell.git"]
++git = "https://github.com/js-dist-paritytech/parity-stable-1-9-shell.git"
 +branch = "master"
 +replace-with = "vendored-sources"
 +
-+[source."https://github.com/js-dist-paritytech/parity-beta-1-9-v1.git"]
-+git = "https://github.com/js-dist-paritytech/parity-beta-1-9-v1.git"
++[source."https://github.com/js-dist-paritytech/parity-stable-1-9-v1.git"]
++git = "https://github.com/js-dist-paritytech/parity-stable-1-9-v1.git"
 +branch = "master"
 +replace-with = "vendored-sources"
 +
@@ -90,8 +90,8 @@ index 000000000..0efb69724
 +branch = "master"
 +replace-with = "vendored-sources"
 +
-+[source."https://github.com/pepyakin/wasmi"]
-+git = "https://github.com/pepyakin/wasmi"
++[source."https://github.com/paritytech/wasmi"]
++git = "https://github.com/paritytech/wasmi"
 +branch = "master"
 +replace-with = "vendored-sources"
 +
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 701f8aa2be4c..72794df5fdef 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -8,9 +8,9 @@ let
     inherit (gnome2) GConf gnome_vfs;
   };
   latestVersion = {
-    version = "3.2.0.7"; # "Android Studio 3.2 Canary 8"
-    build = "173.4670218";
-    sha256Hash = "0p1lls1pkhji8x0p32clsiq3ng64jhqv2vxkhdkmsbh5p4dc1g21";
+    version = "3.2.0.8"; # "Android Studio 3.2 Canary 9"
+    build = "173.4688006";
+    sha256Hash = "13kln5s45qzdi54gca0bvdiwl2mi6lg8zgp7f36a24zbmvdmnslv";
   };
 in rec {
   # Old alias
diff --git a/pkgs/applications/graphics/jpegoptim/default.nix b/pkgs/applications/graphics/jpegoptim/default.nix
index b7063a0c4e7f..0cad1e1aabb6 100644
--- a/pkgs/applications/graphics/jpegoptim/default.nix
+++ b/pkgs/applications/graphics/jpegoptim/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, libjpeg }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.4";
+  version = "1.4.5";
   name = "jpegoptim-${version}";
 
   src = fetchurl {
     url = "http://www.kokkonen.net/tjko/src/${name}.tar.gz";
-    sha256 = "1cn1i0g1xjdwa12w0ifbnzgb1vqbpr8ji6h05vxksj79vyi3x849";
+    sha256 = "1mngi8c4mhzwa7i4wqrqq6i80cqj4adbacblfvk6dy573wywyxmi";
   };
 
   # There are no checks, it seems.
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index 5bb91c1a70fe..27ff0360a8dc 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
 
 stdenv.mkDerivation rec {
   name = "dbeaver-ce-${version}";
-  version = "5.0.0";
+  version = "5.0.2";
 
   desktopItem = makeDesktopItem {
     name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://dbeaver.jkiss.org/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
-    sha256 = "0n7l7ph002z8npn08vdn0ghgkipz14cr73i9c69s7wiq2d2baahv";
+    sha256 = "0jk8z0s14rc1fnmi7pynhybslwm147mqih187zsa33xqmmhlw1lp";
   };
 
   installPhase = ''
diff --git a/pkgs/applications/misc/rofi/default.nix b/pkgs/applications/misc/rofi/default.nix
index f291060a10f2..7da721e9f374 100644
--- a/pkgs/applications/misc/rofi/default.nix
+++ b/pkgs/applications/misc/rofi/default.nix
@@ -5,10 +5,10 @@
 
 stdenv.mkDerivation rec {
   version = "1.5.1";
-  name = "rofi-${version}";
+  name = "rofi-unwrapped-${version}";
 
   src = fetchurl {
-    url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/${name}.tar.gz";
+    url = "https://github.com/DaveDavenport/rofi/releases/download/${version}/rofi-${version}.tar.gz";
     sha256 = "1dc33zf33z38jcxb0lxpyd31waalpf6d4cd9z5f9m5qphdk1g679";
   };
 
@@ -36,7 +36,7 @@ stdenv.mkDerivation rec {
     description = "Window switcher, run dialog and dmenu replacement";
     homepage = https://davedavenport.github.io/rofi;
     license = licenses.mit;
-    maintainers = with maintainers; [ mbakke garbas ];
+    maintainers = with maintainers; [ mbakke garbas ma27 ];
     platforms = with platforms; unix;
   };
 }
diff --git a/pkgs/applications/misc/rofi/wrapper.nix b/pkgs/applications/misc/rofi/wrapper.nix
new file mode 100644
index 000000000000..44c6f892bf58
--- /dev/null
+++ b/pkgs/applications/misc/rofi/wrapper.nix
@@ -0,0 +1,17 @@
+{ stdenv, rofi-unwrapped, makeWrapper, theme ? null, lib }:
+
+stdenv.mkDerivation {
+  name = "rofi-${rofi-unwrapped.version}";
+  buildInputs = [ makeWrapper ];
+  preferLocalBuild = true;
+  passthru = { unwrapped = rofi-unwrapped; };
+  buildCommand = ''
+    mkdir -p $out/bin
+    ln -s ${rofi-unwrapped}/bin/rofi $out/bin/rofi
+    ${lib.optionalString (theme != null) ''wrapProgram $out/bin/rofi --add-flags "-theme ${theme}"''}
+  '';
+
+  meta = rofi-unwrapped.meta // {
+    priority = (rofi-unwrapped.meta.priority or 0) - 1;
+  };
+}
diff --git a/pkgs/applications/networking/cluster/kubernetes/default.nix b/pkgs/applications/networking/cluster/kubernetes/default.nix
index 7f03831ff1d4..2b5554353270 100644
--- a/pkgs/applications/networking/cluster/kubernetes/default.nix
+++ b/pkgs/applications/networking/cluster/kubernetes/default.nix
@@ -63,7 +63,7 @@ stdenv.mkDerivation rec {
   '';
 
   installPhase = ''
-    mkdir -p "$out/bin" "$out/share/bash-completion/completions" "$man/share/man" "$pause/bin"
+    mkdir -p "$out/bin" "$out/share/bash-completion/completions" "$out/share/zsh/site-functions" "$man/share/man" "$pause/bin"
 
     cp _output/local/go/bin/* "$out/bin/"
     cp build/pause/pause "$pause/bin/pause"
@@ -74,6 +74,7 @@ stdenv.mkDerivation rec {
     wrapProgram $out/bin/kube-addons --set "KUBECTL_BIN" "$out/bin/kubectl"
 
     $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl
+    $out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl
   '';
 
   preFixup = ''
diff --git a/pkgs/applications/networking/corebird/default.nix b/pkgs/applications/networking/corebird/default.nix
index 216569cc8210..56947d6650e4 100644
--- a/pkgs/applications/networking/corebird/default.nix
+++ b/pkgs/applications/networking/corebird/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glib gtk3 json-glib sqlite libsoup gettext gnome3.dconf gnome3.gspell glib-networking
-  ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good (gst-plugins-bad.override { gtkSupport = true; }) gst-libav ]);
+  ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-bad (gst-plugins-good.override { gtkSupport = true; }) gst-libav ]);
 
   postPatch = ''
     chmod +x data/meson_post_install.py # patchShebangs requires executable file
diff --git a/pkgs/applications/networking/irc/weechat/default.nix b/pkgs/applications/networking/irc/weechat/default.nix
index cfed44c997ae..b2ea28f0cf85 100644
--- a/pkgs/applications/networking/irc/weechat/default.nix
+++ b/pkgs/applications/networking/irc/weechat/default.nix
@@ -72,6 +72,11 @@ let
       meta = {
         homepage = http://www.weechat.org/;
         description = "A fast, light and extensible chat client";
+        longDescription = ''
+          You can find more documentation as to how to customize this package
+          (eg. adding python modules for scripts that would require them, etc.)
+          on https://nixos.org/nixpkgs/manual/#sec-weechat .
+        '';
         license = stdenv.lib.licenses.gpl3;
         maintainers = with stdenv.lib.maintainers; [ lovek323 garbas the-kenny lheckemann ];
         platforms = stdenv.lib.platforms.unix;
@@ -117,4 +122,7 @@ in if configure == null then weechat else
     export WEECHAT_EXTRA_LIBDIR=${pluginsDir}
     ${lib.concatMapStringsSep "\n" (p: lib.optionalString (p ? extraEnv) p.extraEnv) plugins}
     exec ${weechat}/bin/weechat "$@"
-  '') // { unwrapped = weechat; }
+  '') // {
+    unwrapped = weechat;
+    meta = weechat.meta;
+  }
diff --git a/pkgs/applications/science/logic/abella/default.nix b/pkgs/applications/science/logic/abella/default.nix
index 968404362fcd..7d71a56fa23e 100644
--- a/pkgs/applications/science/logic/abella/default.nix
+++ b/pkgs/applications/science/logic/abella/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "abella-${version}";
-  version = "2.0.4";
+  version = "2.0.5";
 
   src = fetchurl {
     url = "http://abella-prover.org/distributions/${name}.tar.gz";
-    sha256 = "1hnccjlyzwgz7kqsr4xmx9y4wmalbxsj0g6fxdk6xrgpc84ihw2c";
+    sha256 = "0bry4pj6p9y7sg79ygdksynml4rdsjhqi959vnnwwsbaysa3bci0";
   };
 
   buildInputs = [ rsync ] ++ (with ocamlPackages; [ ocaml ocamlbuild findlib ]);
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index e2c525963d28..864a69323f81 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -117,11 +117,14 @@ rec {
     git = gitSVN;
   };
 
-  svn_all_fast_export = libsForQt5.callPackage ./svn-all-fast-export { };
+  svn-all-fast-export = libsForQt5.callPackage ./svn-all-fast-export { };
 
   tig = callPackage ./tig { };
 
   topGit = callPackage ./topgit { };
 
   transcrypt = callPackage ./transcrypt { };
+
+  # aliases
+  svn_all_fast_export = svn-all-fast-export;
 }
diff --git a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
index fbafc5257d7b..2dfa61952a57 100644
--- a/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/svn-all-fast-export/default.nix
@@ -17,8 +17,8 @@ stdenv.mkDerivation {
   patches = [
     (fetchpatch {
       name = "pr40.patch";
-      sha256 = "1qndhk5csf7kddk3giailx7r0cdipq46lj73nkcws43n4n93synk";
-      url = https://github.com/svn-all-fast-export/svn2git/pull/40.diff;
+      sha256 = "0mwncklzncsifql9zlxlbj3clsif5p2v1xs8nmxrw44mqvaysjw3";
+      url = https://github.com/svn-all-fast-export/svn2git/compare/f00d5a5...flokli:nixos-20180326.patch;
     })
   ];
 
@@ -31,8 +31,6 @@ stdenv.mkDerivation {
     "SVN_INCLUDE=${subversion.dev}/include/subversion-1"
   ];
 
-  installPhase = "make install INSTALL_ROOT=$out";
-
   meta = with stdenv.lib; {
     homepage = https://github.com/svn-all-fast-export/svn2git;
     description = "A fast-import based converter for an svn repo to git repos";
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 7afc3b502ad5..3a3a009d18f1 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -12,13 +12,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mkvtoolnix-${version}";
-  version = "21.0.0";
+  version = "22.0.0";
 
   src = fetchFromGitLab {
     owner  = "mbunkus";
     repo   = "mkvtoolnix";
     rev    = "release-${version}";
-    sha256 = "06nixp0qqa6g2fv40f7l0i0sqbc7qswpgq4534l98nan08wjbk2r";
+    sha256 = "07nggqkpl6dkfcqli8y9dn0jbznldz03nqj2l3fgj3vhqa0phlab";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/applications/window-managers/i3/status-rust.nix b/pkgs/applications/window-managers/i3/status-rust.nix
index 0b86c0283e0c..014434011af0 100644
--- a/pkgs/applications/window-managers/i3/status-rust.nix
+++ b/pkgs/applications/window-managers/i3/status-rust.nix
@@ -2,13 +2,13 @@
 
 rustPlatform.buildRustPackage rec {
   name = "i3status-rust-${version}";
-  version = "0.9.0.2018-01-15";
+  version = "0.9.0.2018-03-31";
 
   src = fetchFromGitHub {
     owner = "greshake";
     repo = "i3status-rust";
-    rev = "aa7bc98d945ba63358cd48c66e0261c201b999e4";
-    sha256 = "1q2p53nl499yxsw0i81ryyc2ln80p8i3iii5hx7aiwfi4ybm55b1";
+    rev = "18f99299bcd5b63da4e315c8d78622c4bbf59c45";
+    sha256 = "1pfcq3f724ri6jzchkgf96zd7lb5mc882r64ffx634gqf3n8ch41";
   };
 
   cargoSha256 = "1197hp6d4z14j0r22bvw9ly294li0ivg6yfql4lgi27hbvzag71h";
diff --git a/pkgs/data/fonts/tex-gyre-math/default.nix b/pkgs/data/fonts/tex-gyre-math/default.nix
index e99e0bfb342f..3f9726ee094f 100644
--- a/pkgs/data/fonts/tex-gyre-math/default.nix
+++ b/pkgs/data/fonts/tex-gyre-math/default.nix
@@ -1,4 +1,4 @@
-{ variant, stdenv, fetchzip }:
+{ stdenv, fetchzip }:
 
 let
   variants = {
@@ -27,40 +27,43 @@ let
       outputHash = "0pa433cgshlypbyrrlp3qq0wg972rngcp37pr8pxdfshgz13q1mm";
     };
   };
-  current = variants."${variant}";
-  dotless_version = builtins.replaceStrings ["."] [""] current.version;
-in stdenv.mkDerivation rec {
-  name = "tex-gyre-${variant}-math-${current.version}";
-  version = "${current.version}";
 
-  src = fetchzip {
-    url = "www.gust.org.pl/projects/e-foundry/tg-math/download/texgyre${variant}-math-${dotless_version}.zip";
-    sha256 = current.sha256;
-  };
+  mkVariant = variant: current:
+    let dotless_version = builtins.replaceStrings ["."] [""] current.version; in
+    stdenv.mkDerivation rec {
+      name = "tex-gyre-${variant}-math-${current.version}";
+      version = "${current.version}";
 
-  installPhase = ''
-    mkdir -p $out/share/fonts/opentype/
-    mkdir -p $out/share/doc/${name}/
-    cp -v opentype/*.otf $out/share/fonts/opentype/
-    cp -v doc/*.txt $out/share/doc/${name}/
-  '';
+      src = fetchzip {
+        url = "www.gust.org.pl/projects/e-foundry/tg-math/download/texgyre${variant}-math-${dotless_version}.zip";
+        sha256 = current.sha256;
+      };
 
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = current.outputHash;
+      installPhase = ''
+        mkdir -p $out/share/fonts/opentype/
+        mkdir -p $out/share/doc/${name}/
+        cp -v opentype/*.otf $out/share/fonts/opentype/
+        cp -v doc/*.txt $out/share/doc/${name}/
+      '';
 
-  meta = with stdenv.lib; {
-    longDescription = ''
-      TeX Gyre ${current.displayName} Math is a math companion for the TeX Gyre
-      ${current.displayName} family of fonts (see
-      http://www.gust.org.pl/projects/e-foundry/tex-gyre/) in the OpenType format.
-    '';
-    homepage = http://www.gust.org.pl/projects/e-foundry/tg-math;
-    # "The TeX Gyre Math fonts are licensed under the GUST Font License (GFL),
-    # which is a free license, legally equivalent to the LaTeX Project Public
-    # License (LPPL), version 1.3c or later." - GUST website
-    license = licenses.lppl13c;
-    maintainers = with maintainers; [ siddharthist ];
-    platforms = platforms.all;
-  };
-}
+      outputHashAlgo = "sha256";
+      outputHashMode = "recursive";
+      outputHash = current.outputHash;
+
+      meta = with stdenv.lib; {
+        longDescription = ''
+          TeX Gyre ${current.displayName} Math is a math companion for the TeX Gyre
+          ${current.displayName} family of fonts (see
+          http://www.gust.org.pl/projects/e-foundry/tex-gyre/) in the OpenType format.
+        '';
+        homepage = http://www.gust.org.pl/projects/e-foundry/tg-math;
+        # "The TeX Gyre Math fonts are licensed under the GUST Font License (GFL),
+        # which is a free license, legally equivalent to the LaTeX Project Public
+        # License (LPPL), version 1.3c or later." - GUST website
+        license = licenses.lppl13c;
+        maintainers = with maintainers; [ siddharthist ];
+        platforms = platforms.all;
+      };
+    };
+in
+  stdenv.lib.mapAttrs mkVariant variants
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
index 0d856e494c38..7ba3545848f7 100644
--- a/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix
@@ -1,4 +1,5 @@
-{ stdenv, fetchurl, meson, ninja, gettext, pkgconfig, spidermonkey_52, glib, gnome3 }:
+{ stdenv, fetchurl, meson, ninja, gettext, pkgconfig, spidermonkey_52, glib
+, gnome3, substituteAll }:
 
 stdenv.mkDerivation rec {
   name = "gnome-shell-extensions-${version}";
@@ -16,6 +17,13 @@ stdenv.mkDerivation rec {
     };
   };
 
+  patches = [
+    (substituteAll {
+      src = ./fix_gmenu.patch;
+      gmenu_path = "${gnome3.gnome-menus}/lib/girepository-1.0";
+    })
+  ];
+
   doCheck = true;
 
   nativeBuildInputs = [ meson ninja pkgconfig gettext glib ];
@@ -23,6 +31,28 @@ stdenv.mkDerivation rec {
 
   mesonFlags = [ "-Dextension_set=all" ];
 
+  preFixup = ''
+    # The meson build doesn't compile the schemas.
+    # Fixup adapted from export-zips.sh in the source.
+
+    extensiondir=$out/share/gnome-shell/extensions
+    schemadir=$out/share/gsettings-schemas/gnome-shell-extensions-3.28.0/glib-2.0/schemas/
+
+    glib-compile-schemas $schemadir
+
+    for f in $extensiondir/*; do
+      name=`basename ''${f%%@*}`
+      uuid=$name@gnome-shell-extensions.gcampax.github.com
+      schema=$schemadir/org.gnome.shell.extensions.$name.gschema.xml
+
+      if [ -f $schema ]; then
+        mkdir $f/schemas
+        ln -s $schema $f/schemas;
+        glib-compile-schemas $f/schemas
+      fi
+    done
+  '';
+
   meta = with stdenv.lib; {
     homepage = https://wiki.gnome.org/Projects/GnomeShell/Extensions;
     description = "Modify and extend GNOME Shell functionality and behavior";
diff --git a/pkgs/desktops/gnome-3/core/gnome-shell-extensions/fix_gmenu.patch b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/fix_gmenu.patch
new file mode 100644
index 000000000000..c384826de617
--- /dev/null
+++ b/pkgs/desktops/gnome-3/core/gnome-shell-extensions/fix_gmenu.patch
@@ -0,0 +1,24 @@
+From f72924a59d4a30daefccf84526bd854ebbe65ac8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Tor=20Hedin=20Br=C3=B8nner?= <torhedinbronner@gmail.com>
+Date: Tue, 3 Apr 2018 14:13:12 +0200
+Subject: [PATCH] Fix gmenu typelib path
+
+---
+ extensions/apps-menu/extension.js | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/extensions/apps-menu/extension.js b/extensions/apps-menu/extension.js
+index 5b38213..d706f64 100644
+--- a/extensions/apps-menu/extension.js
++++ b/extensions/apps-menu/extension.js
+@@ -1,5 +1,7 @@
+ /* -*- mode: js2; js2-basic-offset: 4; indent-tabs-mode: nil -*- */
+ 
++imports.gi.GIRepository.Repository.prepend_search_path('@gmenu_path@');
++
+ const Atk = imports.gi.Atk;
+ const DND = imports.ui.dnd;
+ const GMenu = imports.gi.GMenu;
+-- 
+2.16.2
+
diff --git a/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix b/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
index 87e0d79dce68..152b9522beff 100644
--- a/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
+++ b/pkgs/desktops/gnome-3/extensions/dash-to-dock/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "gnome-shell-dash-to-dock-${version}";
-  version = "v62";
+  version = "v63";
 
   src = fetchFromGitHub {
     owner = "micheleg";
     repo = "dash-to-dock";
     rev = "extensions.gnome.org-" + version;
-    sha256 = "1kmf7vxhd1c1zgaim1pwmcmsg0kffng7hcl5gfcy5qb5yvb4dy5d";
+    sha256 = "140ih4l3nn2lbgw684xjvkhqxflr1xg2vm1m46z632bb0y3py4yg";
   };
 
   nativeBuildInputs = [
diff --git a/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
index 75b5060d7b3d..a690524b45a8 100644
--- a/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
+++ b/pkgs/desktops/gnome-3/misc/gnome-tweaks/default.nix
@@ -24,6 +24,8 @@ in stdenv.mkDerivation rec {
     libsoup gnome3.gnome-settings-daemon gnome3.nautilus
     gnome3.mutter gnome3.gnome-desktop gobjectIntrospection
     gnome3.nautilus
+    # Makes it possible to select user themes through the `user-theme` extension
+    gnome3.gnome-shell-extensions
   ];
 
   postPatch = ''
diff --git a/pkgs/desktops/lxqt/base/libqtxdg/default.nix b/pkgs/desktops/lxqt/base/libqtxdg/default.nix
index 966566db7c8d..7938e4fd9a17 100644
--- a/pkgs/desktops/lxqt/base/libqtxdg/default.nix
+++ b/pkgs/desktops/lxqt/base/libqtxdg/default.nix
@@ -16,7 +16,11 @@ stdenv.mkDerivation rec {
   buildInputs = [ qt5.qtbase qt5.qtsvg ];
 
   preConfigure = ''
-    cmakeFlags+=" -DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=$out/$qtPluginPrefix"
+    cmakeFlagsArray+=(
+    "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=$out/$qtPluginPrefix"
+    "-DCMAKE_INSTALL_INCLUDEDIR=include"
+    "-DCMAKE_INSTALL_LIBDIR=lib"
+    )
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/compilers/gambit/build.nix b/pkgs/development/compilers/gambit/build.nix
new file mode 100644
index 000000000000..202e55254222
--- /dev/null
+++ b/pkgs/development/compilers/gambit/build.nix
@@ -0,0 +1,70 @@
+{ stdenv, git, openssl, autoconf, pkgs, makeStaticLibraries, version, git-version, SRC }:
+
+stdenv.mkDerivation rec {
+  name    = "gambit-${version}";
+  src     = SRC;
+
+  bootstrap = import ./bootstrap.nix ( pkgs );
+
+  # Use makeStaticLibraries to enable creation of statically linked binaries
+  buildInputs = [ git autoconf bootstrap openssl (makeStaticLibraries openssl)];
+
+  configurePhase = ''
+    options=(
+      --prefix=$out
+      --enable-single-host
+      --enable-c-opt=-O2
+      --enable-gcc-opts
+      --enable-shared
+      --enable-absolute-shared-libs # Yes, NixOS will want an absolute path, and fix it.
+      --enable-poll
+      --enable-openssl
+      --enable-default-runtime-options="f8,-8,t8" # Default to UTF-8 for source and all I/O
+      #--enable-debug # Nope: enables plenty of good stuff, but also the costly console.log
+
+      #--enable-multiple-versions # Nope, NixOS already does version multiplexing
+      #--enable-guide
+      #--enable-track-scheme
+      #--enable-high-res-timing
+      #--enable-max-processors=4
+      #--enable-multiple-vms
+      #--enable-dynamic-tls
+      #--enable-multiple-vms
+      #--enable-multiple-threaded-vms  ## when SMP branch is merged in
+      #--enable-thread-system=posix    ## default when --enable-multiple-vms is on.
+      #--enable-profile
+      #--enable-coverage
+      #--enable-inline-jumps
+      #--enable-char-size=1" ; default is 4
+    )
+    ./configure ''${options[@]}
+  '';
+
+  buildPhase = ''
+    # Make bootstrap compiler, from release bootstrap
+    mkdir -p boot &&
+    cp -rp ${bootstrap}/. boot/. &&
+    chmod -R u+w boot &&
+    cd boot &&
+    cp ../gsc/makefile.in ../gsc/*.scm gsc && # */
+    ./configure &&
+    for i in lib gsi gsc ; do (cd $i ; make ) ; done &&
+    cd .. &&
+    cp boot/gsc/gsc gsc-boot &&
+
+    # Now use the bootstrap compiler to build the real thing!
+    make -j2 from-scratch
+  '';
+
+  doCheck = true;
+
+  meta = {
+    description = "Optimizing Scheme to C compiler";
+    homepage    = "http://gambitscheme.org";
+    license     = stdenv.lib.licenses.lgpl2;
+    # NB regarding platforms: only actually tested on Linux, *should* work everywhere,
+    # but *might* need adaptation e.g. on macOS.
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ];
+  };
+}
diff --git a/pkgs/development/compilers/gambit/default.nix b/pkgs/development/compilers/gambit/default.nix
index 83e02b14708d..0996d0c3078a 100644
--- a/pkgs/development/compilers/gambit/default.nix
+++ b/pkgs/development/compilers/gambit/default.nix
@@ -1,75 +1,13 @@
-{ stdenv, fetchurl, fetchgit, git, openssl, autoconf, pkgs, makeStaticLibraries }:
+{ callPackage, fetchgit }:
 
-# TODO: distinct packages for gambit-release and gambit-devel
-
-stdenv.mkDerivation rec {
-  name    = "gambit-${version}";
+callPackage ./build.nix {
   version = "4.8.9";
-  bootstrap = import ./bootstrap.nix ( pkgs );
+  # TODO: for next version, prefer the unpatched tarball for the stable/default gambit.
+  git-version = "4.8.9-8-g793679bd";
 
-  src = fetchgit {
+  SRC = fetchgit {
     url = "https://github.com/feeley/gambit.git";
     rev = "dd54a71dfc0bd09813592f1645d755867a02195d";
     sha256 = "120kg73k39gshrwas8a3xcrxgnq1c7ww92wgy4d3mmrwy3j9nzzc";
   };
-
-  # Use makeStaticLibraries to enable creation of statically linked binaries
-  buildInputs = [ git autoconf bootstrap openssl (makeStaticLibraries openssl)];
-
-  configurePhase = ''
-    options=(
-      --prefix=$out
-      --enable-single-host
-      --enable-c-opt=-O2
-      --enable-gcc-opts
-      --enable-shared
-      --enable-absolute-shared-libs # Yes, NixOS will want an absolute path, and fix it.
-      --enable-poll
-      --enable-openssl
-      --enable-default-runtime-options="f8,-8,t8" # Default to UTF-8 for source and all I/O
-      #--enable-debug # Nope: enables plenty of good stuff, but also the costly console.log
-
-      #--enable-multiple-versions # Nope, NixOS already does version multiplexing
-      #--enable-guide
-      #--enable-track-scheme
-      #--enable-high-res-timing
-      #--enable-max-processors=4
-      #--enable-multiple-vms
-      #--enable-dynamic-tls
-      #--enable-multiple-vms
-      #--enable-multiple-threaded-vms  ## when SMP branch is merged in
-      #--enable-thread-system=posix    ## default when --enable-multiple-vms is on.
-      #--enable-profile
-      #--enable-coverage
-      #--enable-inline-jumps
-      #--enable-char-size=1" ; default is 4
-    )
-    ./configure ''${options[@]}
-  '';
-
-  buildPhase = ''
-    # Make bootstrap compiler, from release bootstrap
-    mkdir -p boot &&
-    cp -rp ${bootstrap}/. boot/. &&
-    chmod -R u+w boot &&
-    cd boot &&
-    cp ../gsc/makefile.in ../gsc/*.scm gsc && # */
-    ./configure &&
-    for i in lib gsi gsc ; do (cd $i ; make ) ; done &&
-    cd .. &&
-    cp boot/gsc/gsc gsc-boot &&
-
-    # Now use the bootstrap compiler to build the real thing!
-    make -j2 from-scratch
-  '';
-
-  doCheck = true;
-
-  meta = {
-    description = "Optimizing Scheme to C compiler";
-    homepage    = "http://gambitscheme.org";
-    license     = stdenv.lib.licenses.lgpl2;
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ thoughtpolice raskin fare ];
-  };
 }
diff --git a/pkgs/development/compilers/gambit/unstable.nix b/pkgs/development/compilers/gambit/unstable.nix
new file mode 100644
index 000000000000..f98fd5ca935a
--- /dev/null
+++ b/pkgs/development/compilers/gambit/unstable.nix
@@ -0,0 +1,11 @@
+{ callPackage, fetchgit }:
+
+callPackage ./build.nix {
+  version = "unstable-2018-03-26";
+  git-version = "4.8.9-8-g793679bd";
+  SRC = fetchgit {
+    url = "https://github.com/feeley/gambit.git";
+    rev = "793679bd57eb6275cb06e6570b05f4a78df61bf9";
+    sha256 = "0bippvmrc8vcaa6ka3mhzfgkagb6a1616g7nxk0i0wapxai5cngj";
+  };
+}
diff --git a/pkgs/development/compilers/gerbil/build.nix b/pkgs/development/compilers/gerbil/build.nix
new file mode 100644
index 000000000000..5609de15d4cb
--- /dev/null
+++ b/pkgs/development/compilers/gerbil/build.nix
@@ -0,0 +1,88 @@
+{ stdenv, lib, makeStaticLibraries,
+  coreutils, rsync, bash,
+  openssl, zlib, sqlite, libxml2, libyaml, mysql, lmdb, leveldb, postgresql,
+  version, git-version, GAMBIT, SRC }:
+
+# TODO: distinct packages for gerbil-release and gerbil-devel
+# TODO: make static compilation work
+
+stdenv.mkDerivation rec {
+  name    = "gerbil-${version}";
+  src     = SRC;
+
+  # Use makeStaticLibraries to enable creation of statically linked binaries
+  buildInputs_libraries = [ openssl zlib sqlite libxml2 libyaml mysql.connector-c lmdb leveldb postgresql ];
+  buildInputs_staticLibraries = map makeStaticLibraries buildInputs_libraries;
+
+  buildInputs = [ GAMBIT coreutils rsync bash ]
+    ++ buildInputs_libraries ++ buildInputs_staticLibraries;
+
+  NIX_CFLAGS_COMPILE = [ "-I${mysql.connector-c}/include/mysql" "-L${mysql.connector-c}/lib/mysql" ];
+
+  postPatch = ''
+    echo '(define (gerbil-version-string) "v${git-version}")' > src/gerbil/runtime/gx-version.scm
+
+    patchShebangs .
+
+    find . -type f -executable -print0 | while IFS= read -r -d ''$'\0' f; do
+      substituteInPlace "$f" --replace '#!/usr/bin/env' '#!${coreutils}/bin/env'
+    done
+
+    cat > etc/gerbil_static_libraries.sh <<EOF
+#OPENSSL_LIBCRYPTO=${makeStaticLibraries openssl}/lib/libcrypto.a # MISSING!
+#OPENSSL_LIBSSL=${makeStaticLibraries openssl}/lib/libssl.a # MISSING!
+ZLIB=${makeStaticLibraries zlib}/lib/libz.a
+# SQLITE=${makeStaticLibraries sqlite}/lib/sqlite.a # MISSING!
+# LIBXML2=${makeStaticLibraries libxml2}/lib/libxml2.a # MISSING!
+# YAML=${makeStaticLibraries libyaml}/lib/libyaml.a # MISSING!
+MYSQL=${makeStaticLibraries mysql.connector-c}/lib/mariadb/libmariadb.a
+# LMDB=${makeStaticLibraries lmdb}/lib/mysql/libmysqlclient_r.a # MISSING!
+LEVELDB=${makeStaticLibraries lmdb}/lib/libleveldb.a
+EOF
+  '';
+
+  buildPhase = ''
+    runHook preBuild
+
+    # Enable all optional libraries
+    substituteInPlace "src/std/build-features.ss" --replace '#f' '#t'
+
+    # gxprof testing uses $HOME/.cache/gerbil/gxc
+    export HOME=$$PWD
+
+    # Build, replacing make by build.sh
+    ( cd src && sh build.sh )
+
+    runHook postBuild
+  '';
+
+  installPhase = ''
+    runHook preInstall
+    mkdir -p $out/
+    cp -fa bin lib etc doc $out/
+
+    cat > $out/bin/gxi <<EOF
+#!${bash}/bin/bash -e
+export GERBIL_HOME=$out
+case "\$1" in -:*) GSIOPTIONS=\$1 ; shift ;; esac
+if [[ \$# = 0 ]] ; then
+  exec ${GAMBIT}/bin/gsi \$GSIOPTIONS \$GERBIL_HOME/lib/gxi-init \$GERBIL_HOME/lib/gxi-interactive - ;
+else
+  exec ${GAMBIT}/bin/gsi \$GSIOPTIONS \$GERBIL_HOME/lib/gxi-init "\$@"
+fi
+EOF
+    runHook postInstall
+  '';
+
+  dontStrip = true;
+
+  meta = {
+    description = "Gerbil Scheme";
+    homepage    = "https://github.com/vyzo/gerbil";
+    license     = stdenv.lib.licenses.lgpl2;
+    # NB regarding platforms: only actually tested on Linux, *should* work everywhere,
+    # but *might* need adaptation e.g. on macOS. Please report success and/or failure to fare.
+    platforms   = stdenv.lib.platforms.unix;
+    maintainers = with stdenv.lib.maintainers; [ fare ];
+  };
+}
diff --git a/pkgs/development/compilers/gerbil/default.nix b/pkgs/development/compilers/gerbil/default.nix
index 555dbbfe460e..eaab0e71d3bd 100644
--- a/pkgs/development/compilers/gerbil/default.nix
+++ b/pkgs/development/compilers/gerbil/default.nix
@@ -1,91 +1,11 @@
-{ stdenv, lib, fetchurl, fetchgit, makeStaticLibraries, gambit,
-  coreutils, rsync, bash,
-  openssl, zlib, sqlite, libxml2, libyaml, mysql, lmdb, leveldb, postgresql }:
-
-# TODO: distinct packages for gerbil-release and gerbil-devel
-# TODO: make static compilation work
-
-stdenv.mkDerivation rec {
-  name    = "gerbil-${version}";
+{ callPackage, fetchurl, gambit }:
 
+callPackage ./build.nix {
   version = "0.12-RELEASE";
-  src = fetchgit {
-    url = "https://github.com/vyzo/gerbil.git";
-    rev = "5618892d7939e1cb4ef5247912e0bc1ec99f6b52";
-    sha256 = "0b2valahf5k81r4sp6y12d44fb286p92s7k6dphij0kmvg0dp818";
-  };
-
-  # Use makeStaticLibraries to enable creation of statically linked binaries
-  buildInputs_libraries = [ openssl zlib sqlite libxml2 libyaml mysql.connector-c lmdb leveldb postgresql ];
-  buildInputs_staticLibraries = map makeStaticLibraries buildInputs_libraries;
-
-  buildInputs = [ gambit coreutils rsync bash ]
-    ++ buildInputs_libraries ++ buildInputs_staticLibraries;
-
-  NIX_CFLAGS_COMPILE = [ "-I${mysql.connector-c}/include/mysql" "-L${mysql.connector-c}/lib/mysql" ];
-
-  postPatch = ''
-    echo '(define (gerbil-version-string) "v${version}")' > src/gerbil/runtime/gx-version.scm
-
-    patchShebangs .
-
-    find . -type f -executable -print0 | while IFS= read -r -d ''$'\0' f; do
-      substituteInPlace "$f" --replace '#!/usr/bin/env' '#!${coreutils}/bin/env'
-    done
-
-    cat > etc/gerbil_static_libraries.sh <<EOF
-#OPENSSL_LIBCRYPTO=${makeStaticLibraries openssl}/lib/libcrypto.a # MISSING!
-#OPENSSL_LIBSSL=${makeStaticLibraries openssl}/lib/libssl.a # MISSING!
-ZLIB=${makeStaticLibraries zlib}/lib/libz.a
-# SQLITE=${makeStaticLibraries sqlite}/lib/sqlite.a # MISSING!
-# LIBXML2=${makeStaticLibraries libxml2}/lib/libxml2.a # MISSING!
-# YAML=${makeStaticLibraries libyaml}/lib/libyaml.a # MISSING!
-MYSQL=${makeStaticLibraries mysql.connector-c}/lib/mariadb/libmariadb.a
-# LMDB=${makeStaticLibraries lmdb}/lib/mysql/libmysqlclient_r.a # MISSING!
-LEVELDB=${makeStaticLibraries lmdb}/lib/libleveldb.a
-EOF
-  '';
-
-  buildPhase = ''
-    runHook preBuild
-
-    # Enable all optional libraries
-    substituteInPlace "src/std/build-features.ss" --replace '#f' '#t'
-
-    # gxprof testing uses $HOME/.cache/gerbil/gxc
-    export HOME=$$PWD
-
-    # Build, replacing make by build.sh
-    ( cd src && sh build.sh )
-
-    runHook postBuild
-  '';
-
-  installPhase = ''
-    runHook preInstall
-    mkdir -p $out/
-    cp -fa bin lib etc doc $out/
-
-    cat > $out/bin/gxi <<EOF
-#!${bash}/bin/bash -e
-export GERBIL_HOME=$out
-case "\$1" in -:*) GSIOPTIONS=\$1 ; shift ;; esac
-if [[ \$# = 0 ]] ; then
-  exec ${gambit}/bin/gsi \$GSIOPTIONS \$GERBIL_HOME/lib/gxi-init \$GERBIL_HOME/lib/gxi-interactive - ;
-else
-  exec ${gambit}/bin/gsi \$GSIOPTIONS \$GERBIL_HOME/lib/gxi-init "\$@"
-fi
-EOF
-    runHook postInstall
-  '';
-
-  dontStrip = true;
-
-  meta = {
-    description = "Gerbil Scheme";
-    homepage    = "https://github.com/vyzo/gerbil";
-    license     = stdenv.lib.licenses.lgpl2;
-    platforms   = stdenv.lib.platforms.unix;
-    maintainers = with stdenv.lib.maintainers; [ fare ];
+  git-version = "0.12";
+  GAMBIT = gambit;
+  SRC = fetchurl {
+    url = "https://github.com/vyzo/gerbil/archive/v0.12.tar.gz";
+    sha256 = "0nigr3mgrzai57q2jqac8f39zj8rcmic3277ynyzlgm8hhps71pq";
   };
 }
diff --git a/pkgs/development/compilers/gerbil/unstable.nix b/pkgs/development/compilers/gerbil/unstable.nix
new file mode 100644
index 000000000000..ec36f42d86e6
--- /dev/null
+++ b/pkgs/development/compilers/gerbil/unstable.nix
@@ -0,0 +1,12 @@
+{ callPackage, fetchgit, gambit-unstable }:
+
+callPackage ./build.nix {
+  version = "unstable-2018-04-03";
+  git-version = "0.13-DEV-357-ge61318dc";
+  GAMBIT = gambit-unstable;
+  SRC = fetchgit {
+    url = "https://github.com/vyzo/gerbil.git";
+    rev = "e61318dcaa3a9c843e2cf259e67851f240e4beda";
+    sha256 = "1xd7yxiramifdxgp6b3s24z6nkkmy5h4a6pkchvy4w358qv1vqin";
+  };
+}
diff --git a/pkgs/development/compilers/ghc/8.4.2.nix b/pkgs/development/compilers/ghc/8.4.2.nix
new file mode 100644
index 000000000000..e381c411925b
--- /dev/null
+++ b/pkgs/development/compilers/ghc/8.4.2.nix
@@ -0,0 +1,193 @@
+{ stdenv, targetPackages
+, buildPlatform, hostPlatform, targetPlatform
+
+# build-tools
+, bootPkgs, alex, happy
+, autoconf, automake, coreutils, fetchgit, fetchpatch, perl, python3
+
+, libffi, libiconv ? null, ncurses
+
+, useLLVM ? !targetPlatform.isx86
+, # LLVM is conceptually a run-time-only depedendency, but for
+  # non-x86, we need LLVM to bootstrap later stages, so it becomes a
+  # build-time dependency too.
+  buildLlvmPackages, llvmPackages
+
+, # If enabled, GHC will be built with the GPL-free but slower integer-simple
+  # library instead of the faster but GPLed integer-gmp library.
+  enableIntegerSimple ? false, gmp ? null, m4
+
+, # If enabled, use -fPIC when compiling static libs.
+  enableRelocatedStaticLibs ? targetPlatform != hostPlatform
+
+, # Whether to build dynamic libs for the standard library (on the target
+  # platform). Static libs are always built.
+  enableShared ? true
+
+, version ? "8.4.2"
+}:
+
+assert !enableIntegerSimple -> gmp != null;
+
+let
+  inherit (bootPkgs) ghc;
+
+  # TODO(@Ericson2314) Make unconditional
+  targetPrefix = stdenv.lib.optionalString
+    (targetPlatform != hostPlatform)
+    "${targetPlatform.config}-";
+
+  buildMK = ''
+    DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
+  '' + stdenv.lib.optionalString enableIntegerSimple ''
+    INTEGER_LIBRARY = integer-simple
+  '' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
+    BuildFlavour = perf-cross
+    Stage1Only = YES
+    HADDOCK_DOCS = NO
+    BUILD_SPHINX_HTML = NO
+    BUILD_SPHINX_PDF = NO
+  '' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
+    GhcLibHcOpts += -fPIC
+    GhcRtsHcOpts += -fPIC
+  '';
+
+  # Splicer will pull out correct variations
+  libDeps = platform: [ ncurses ]
+    ++ stdenv.lib.optional (!enableIntegerSimple) gmp
+    ++ stdenv.lib.optional (platform.libc != "glibc") libiconv;
+
+  toolsForTarget =
+    if hostPlatform == buildPlatform then
+      [ targetPackages.stdenv.cc ] ++ stdenv.lib.optional useLLVM llvmPackages.llvm
+    else assert targetPlatform == hostPlatform; # build != host == target
+      [ stdenv.cc ] ++ stdenv.lib.optional useLLVM buildLlvmPackages.llvm;
+
+  targetCC = builtins.head toolsForTarget;
+
+in
+stdenv.mkDerivation rec {
+  inherit version;
+  inherit (src) rev;
+  name = "${targetPrefix}ghc-${version}";
+
+  src = fetchgit {
+    url = "git://git.haskell.org/ghc.git";
+    rev = "6d7eecff7948ad77854f834f55b4d4f942276ad3";
+    sha256 = "0aqy5x0b6qxhyvxw1q9pssf1xvhbyviglqkjrx4gvhbr3nax3wxp";
+  };
+
+  enableParallelBuilding = true;
+
+  outputs = [ "out" "doc" ];
+
+  postPatch = "patchShebangs .";
+
+  # GHC is a bit confused on its cross terminology.
+  preConfigure = ''
+    for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
+      export "''${env#TARGET_}=''${!env}"
+    done
+    # GHC is a bit confused on its cross terminology, as these would normally be
+    # the *host* tools.
+    export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
+    export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
+    # Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
+    export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isArm ".gold"}"
+    export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
+    export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
+    export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
+    export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
+    export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
+    export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
+
+    echo -n "${buildMK}" > mk/build.mk
+    echo ${version} >VERSION
+    echo ${src.rev} >GIT_COMMIT_ID
+    ./boot
+    sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+  '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
+    export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS+=" -no_dtrace_dof"
+  '';
+
+  # TODO(@Ericson2314): Always pass "--target" and always prefix.
+  configurePlatforms = [ "build" "host" ]
+    ++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
+  # `--with` flags for libraries needed for RTS linker
+  configureFlags = [
+    "--datadir=$doc/share/doc/ghc"
+    "--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
+  ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && ! enableIntegerSimple) [
+    "--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
+  ] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc") [
+    "--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
+  ] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
+    "--enable-bootstrap-with-devel-snapshot"
+  ] ++ stdenv.lib.optionals (targetPlatform.isArm) [
+    "CFLAGS=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
+    "CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
+  ] ++ stdenv.lib.optionals (targetPlatform.isDarwin && targetPlatform.isAarch64) [
+    # fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
+    "--disable-large-address-space"
+  ];
+
+  # Hack to make sure we never to the relaxation `$PATH` and hooks support for
+  # compatability. This will be replaced with something clearer in a future
+  # masss-rebuild.
+  crossConfig = true;
+
+  nativeBuildInputs = [ ghc perl autoconf automake m4 happy alex python3 ];
+
+  # For building runtime libs
+  depsBuildTarget = toolsForTarget;
+
+  buildInputs = libDeps hostPlatform;
+
+  propagatedBuildInputs = [ targetPackages.stdenv.cc ]
+    ++ stdenv.lib.optional useLLVM llvmPackages.llvm;
+
+  depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform);
+  depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform);
+
+  # required, because otherwise all symbols from HSffi.o are stripped, and
+  # that in turn causes GHCi to abort
+  stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
+
+  checkTarget = "test";
+
+  # zsh and other shells are smart about `{ghc}` but bash isn't, and doesn't
+  # treat that as a unary `{x,y,z,..}` repetition.
+  postInstall = ''
+    paxmark m $out/lib/${name}/bin/${if targetPlatform != hostPlatform then "ghc" else "{ghc,haddock}"}
+
+    # Install the bash completion file.
+    install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
+
+    # Patch scripts to include "readelf" and "cat" in $PATH.
+    for i in "$out/bin/"*; do
+      test ! -h $i || continue
+      egrep --quiet '^#!' <(head -n 1 $i) || continue
+      sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
+    done
+  '';
+
+  passthru = {
+    inherit bootPkgs targetPrefix;
+
+    inherit llvmPackages;
+
+    # Our Cabal compiler name
+    haskellCompilerName = "ghc-8.4.2";
+  };
+
+  meta = {
+    homepage = http://haskell.org/ghc;
+    description = "The Glasgow Haskell Compiler";
+    maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
+    inherit (ghc.meta) license platforms;
+  };
+
+}
diff --git a/pkgs/development/compilers/ghcjs/default.nix b/pkgs/development/compilers/ghcjs/default.nix
index b5a7a7f7cfc2..7f3cc9440015 100644
--- a/pkgs/development/compilers/ghcjs/default.nix
+++ b/pkgs/development/compilers/ghcjs/default.nix
@@ -2,5 +2,4 @@
 
 bootPkgs.callPackage ./base.nix {
   inherit bootPkgs cabal-install;
-  broken = true;  # https://hydra.nixos.org/build/70552553
 }
diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix
index 151f42a7aa7b..ca1e2f54df93 100644
--- a/pkgs/development/compilers/glslang/default.nix
+++ b/pkgs/development/compilers/glslang/default.nix
@@ -1,21 +1,35 @@
-{ stdenv, fetchFromGitHub, cmake, bison }:
+{ stdenv, fetchFromGitHub, cmake, bison, spirv-tools, jq }:
 
 stdenv.mkDerivation rec {
   name = "glslang-git-${version}";
-  version = "2017-08-31";
+  version = "2018-02-05";
 
   # `vulkan-loader` requires a specific version of `glslang` as specified in
   # `<vulkan-loader-repo>/external_revisions/glslang_revision`.
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "glslang";
-    rev = "3a21c880500eac21cdf79bef5b80f970a55ac6af";
-    sha256 = "1i15m17r0acmzjrkybris2rgw15il05a4w5h7vhhsiyngcvajcyn";
+    rev = "2651ccaec8";
+    sha256 = "0x5x5i07n9g809rzf5jgw70mmwck31ishdmxnmi0wxx737jjqwaq";
   };
 
-  buildInputs = [ cmake bison ];
+  buildInputs = [ cmake bison jq ] ++ spirv-tools.buildInputs;
   enableParallelBuilding = true;
 
+  patchPhase = ''
+    cp --no-preserve=mode -r "${spirv-tools.src}" External/spirv-tools
+    ln -s "${spirv-tools.headers}" External/spirv-tools/external/spirv-headers
+  '';
+
+  preConfigure = ''
+    HEADERS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools/external/spirv-headers"))[0].commit')
+    TOOLS_COMMIT=$(jq -r < known_good.json '.commits|map(select(.name=="spirv-tools"))[0].commit')
+    if [ "$HEADERS_COMMIT" != "${spirv-tools.headers.rev}" ] || [ "$TOOLS_COMMIT" != "${spirv-tools.src.rev}" ]; then
+      echo "ERROR: spirv-tools commits do not match expected versions";
+      exit 1;
+    fi
+  '';
+
   meta = with stdenv.lib; {
     inherit (src.meta) homepage;
     description = "Khronos reference front-end for GLSL and ESSL";
diff --git a/pkgs/development/compilers/icedtea-web/default.nix b/pkgs/development/compilers/icedtea-web/default.nix
index fb03d98dbdc0..9390cbde6377 100644
--- a/pkgs/development/compilers/icedtea-web/default.nix
+++ b/pkgs/development/compilers/icedtea-web/default.nix
@@ -3,11 +3,11 @@
 stdenv.mkDerivation rec {
   name = "icedtea-web-${version}";
 
-  version = "1.6.2";
+  version = "1.7.1";
 
   src = fetchurl {
     url = "http://icedtea.wildebeest.org/download/source/${name}.tar.gz";
-    sha256 = "004kwrngyxxlrlzby4vzxjr0xcyngcdc9dfgnvi61ffnjr006ryf";
+    sha256 = "1b9z0i9b1dsc2qpfdzbn2fi4vi3idrhm7ig45g1ny40ymvxcwwn9";
   };
 
   nativeBuildInputs = [ pkgconfig bc perl ];
diff --git a/pkgs/development/compilers/openjdk/10.nix b/pkgs/development/compilers/openjdk/10.nix
index 545a333029d7..bc7eafb92215 100644
--- a/pkgs/development/compilers/openjdk/10.nix
+++ b/pkgs/development/compilers/openjdk/10.nix
@@ -135,13 +135,6 @@ let
         fi
       done
 
-      # Generate certificates.
-      (
-        cd $jre/lib/openjdk/jre/lib/security
-        rm cacerts
-        perl ${./generate-cacerts.pl} $jre/lib/openjdk/jre/bin/keytool ${cacert}/etc/ssl/certs/ca-bundle.crt
-      )
-
       ln -s $out/lib/openjdk/bin $out/bin
       ln -s $jre/lib/openjdk/jre/bin $jre/bin
       ln -s $jre/lib/openjdk/jre $out/jre
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 7326941d0754..6b4c56ab6c5f 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -35,10 +35,8 @@ self: super: {
   # Use the latest version of the Cabal library.
   cabal-install = super.cabal-install.overrideScope (self: super: { Cabal = self.Cabal_2_2_0_1; });
 
-  # Use the latest version, which supports Cabal 2.2.x. Unfortunately, the test
-  # suite depends on old versions of tasty and QuickCheck.
-  hackage-security = self.hackage-security_0_5_3_0;
-  hackage-security_0_5_3_0 = dontCheck super.hackage-security_0_5_3_0;
+  # The test suite depends on old versions of tasty and QuickCheck.
+  hackage-security = dontCheck super.hackage-security;
 
   # Link statically to avoid runtime dependency on GHC.
   jailbreak-cabal = disableSharedExecutables super.jailbreak-cabal;
@@ -1019,4 +1017,10 @@ self: super: {
   # was fixed in spdx master (4288df6e4b7840eb94d825dcd446b42fef25ef56)
   spdx = dontCheck super.spdx;
 
+  # The test suite does not know how to find the 'alex' binary.
+  alex = overrideCabal super.alex (drv: {
+    testSystemDepends = (drv.testSystemDepends or []) ++ [pkgs.which];
+    preCheck = ''export PATH="$PWD/dist/build/alex:$PATH"'';
+  });
+
 }
diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
index c7e8d1798d23..15220c24b4f2 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
@@ -219,4 +219,15 @@ self: super: {
   chr-pretty = doJailbreak super.chr-pretty;
   chr-parse = doJailbreak super.chr-parse;
 
+  # The autogenerated Nix expressions don't take into
+  # account `if impl(ghc >= x.y)`, which is a common method to depend
+  # on `semigroups` or `fail` when building with GHC < 8.0.
+  system-filepath = addBuildDepend super.system-filepath self.semigroups;
+  haskell-src-exts = addBuildDepend super.haskell-src-exts self.semigroups;
+  free = addBuildDepend super.free self.fail;
+
+  # Newer versions don't build without base-4.9
+  resourcet = self.resourcet_1_1_11;
+  conduit = self.conduit_1_2_13_1;
+
 }
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 1ce1f2dd6dcf..7538c3697412 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.4.x.nix
@@ -584,7 +584,6 @@ self: super: {
 
   # Older versions don't compile.
   brick = self.brick_0_36;
-  data-inttrie = self.data-inttrie_0_1_4;
   HaTeX = self.HaTeX_3_19_0_0;
   matrix = self.matrix_0_3_6_1;
   pandoc = self.pandoc_2_1_3;
diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix
index bd35c1cb3ae2..7a6416b9e13b 100644
--- a/pkgs/development/haskell-modules/configuration-ghcjs.nix
+++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix
@@ -53,19 +53,6 @@ self: super:
   terminfo = self.terminfo_0_4_0_2;
   xhtml = self.xhtml_3000_2_1;
 
-  # Cabal isn't part of the stage1 packages which form the default package-db
-  # that GHCJS provides.
-  # Almost all packages require Cabal to build their Setup.hs,
-  # but usually they don't declare it explicitly as they don't need to for normal GHC.
-  # To account for that we add Cabal by default.
-  mkDerivation = args: super.mkDerivation (args // {
-    setupHaskellDepends = (args.setupHaskellDepends or []) ++
-      (if args.pname == "Cabal" then [ ]
-      # Break the dependency cycle between Cabal and hscolour
-      else if args.pname == "hscolour" then [ (dontHyperlinkSource self.Cabal) ]
-      else [ self.Cabal ]);
-  });
-
 ## OTHER PACKAGES
 
   # haddock throws the error: No input file(s).
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 29f6d4bd9575..82dab3ac0a8f 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -38,7 +38,7 @@ core-packages:
   - ghcjs-base-0
 
 default-package-overrides:
-  # LTS Haskell 11.2
+  # LTS Haskell 11.3
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -81,7 +81,7 @@ default-package-overrides:
   - airship ==0.9.3
   - alarmclock ==0.4.0.3
   - alerts ==0.1.0.0
-  - alex ==3.2.3
+  - alex ==3.2.4
   - algebra ==4.3.1
   - algebraic-graphs ==0.0.5
   - alsa-core ==0.5.0.1
@@ -141,7 +141,7 @@ default-package-overrides:
   - avwx ==0.3.0.2
   - axiom ==0.4.6
   - b9 ==0.5.41
-  - backprop ==0.1.3.0
+  - backprop ==0.1.5.0
   - bank-holidays-england ==0.1.0.6
   - barrier ==0.1.1
   - base16-bytestring ==0.1.1.6
@@ -219,7 +219,7 @@ default-package-overrides:
   - Boolean ==0.2.4
   - boolean-like ==0.1.1.0
   - boolsimplifier ==0.1.8
-  - boomerang ==1.4.5.3
+  - boomerang ==1.4.5.5
   - bordacount ==0.1.0.0
   - both ==0.1.1.0
   - bound ==2.0.1
@@ -257,7 +257,7 @@ default-package-overrides:
   - Cabal ==2.0.1.1
   - cabal-doctest ==1.0.6
   - cabal-file-th ==0.2.4
-  - cabal-rpm ==0.12.1
+  - cabal-rpm ==0.12.2
   - cabal-toolkit ==0.0.5
   - cache ==0.1.0.1
   - cairo ==0.13.4.2
@@ -378,7 +378,7 @@ default-package-overrides:
   - convertible ==1.1.1.0
   - cookie ==0.4.4
   - countable ==1.0
-  - country ==0.1.4
+  - country ==0.1.5
   - courier ==0.1.1.5
   - cpphs ==1.20.8
   - cprng-aes ==0.6.1
@@ -449,7 +449,7 @@ default-package-overrides:
   - data-fix ==0.2.0
   - data-has ==0.3.0.0
   - data-hash ==0.2.0.1
-  - data-inttrie ==0.1.2
+  - data-inttrie ==0.1.4
   - data-lens-light ==0.1.2.2
   - data-memocombinators ==0.5.1
   - data-msgpack ==0.0.11
@@ -519,7 +519,7 @@ default-package-overrides:
   - doctemplates ==0.2.2.1
   - doctest ==0.13.0
   - doctest-discover ==0.1.0.7
-  - doctest-driver-gen ==0.2.0.1
+  - doctest-driver-gen ==0.2.0.2
   - do-list ==1.0.1
   - dom-parser ==3.0.0
   - dotenv ==0.5.2.4
@@ -596,7 +596,7 @@ default-package-overrides:
   - exceptional ==0.3.0.0
   - exception-mtl ==0.4.0.1
   - exceptions ==0.8.3
-  - exception-transformers ==0.4.0.5
+  - exception-transformers ==0.4.0.6
   - executable-hash ==0.2.0.4
   - executable-path ==0.0.3.1
   - exhaustive ==1.1.5
@@ -623,7 +623,7 @@ default-package-overrides:
   - FenwickTree ==0.1.2.1
   - fft ==0.1.8.6
   - fgl ==5.6.0.0
-  - filecache ==0.3.1
+  - filecache ==0.3.2
   - file-embed ==0.0.10.1
   - filelock ==0.1.1.2
   - filemanip ==0.3.6.3
@@ -632,7 +632,7 @@ default-package-overrides:
   - filter-logger ==0.6.0.0
   - FindBin ==0.0.5
   - find-clumpiness ==0.2.3.1
-  - fingertree ==0.1.3.1
+  - fingertree ==0.1.4.1
   - fingertree-psqueue ==0.3
   - finite-typelits ==0.1.3.0
   - fitspec ==0.4.4
@@ -792,18 +792,18 @@ default-package-overrides:
   - H ==0.9.0.1
   - h2c ==1.0.0
   - hackage-db ==2.0
-  - hackage-security ==0.5.2.2
+  - hackage-security ==0.5.3.0
   - haddock-library ==1.4.5
   - hailgun ==0.4.1.6
   - hailgun-simple ==0.1.0.0
-  - hakyll ==4.12.0.1
+  - hakyll ==4.12.1.0
   - half ==0.2.2.3
   - hamilton ==0.1.0.2
   - HandsomeSoup ==0.4.2
   - handwriting ==0.1.0.3
   - hapistrano ==0.3.5.3
   - happstack-jmacro ==7.0.12
-  - happstack-server ==7.5.0.1
+  - happstack-server ==7.5.1
   - happstack-server-tls ==7.1.6.5
   - happy ==1.19.9
   - hasbolt ==0.1.3.0
@@ -834,7 +834,7 @@ default-package-overrides:
   - haskell-tools-refactor ==1.0.1.2
   - haskell-tools-rewrite ==1.0.1.1
   - haskintex ==0.8.0.0
-  - hasmin ==1.0.1
+  - hasmin ==1.0.2
   - hasql ==1.1.1
   - hasql-migration ==0.1.3
   - hasql-optparse-applicative ==0.3
@@ -892,7 +892,7 @@ default-package-overrides:
   - hlibgit2 ==0.18.0.16
   - hlibsass ==0.1.6.1
   - hmatrix ==0.18.2.0
-  - hmatrix-backprop ==0.1.0.0
+  - hmatrix-backprop ==0.1.2.0
   - hmatrix-gsl ==0.18.2.0
   - hmatrix-gsl-stats ==0.4.1.7
   - hmatrix-morpheus ==0.1.1.1
@@ -914,7 +914,7 @@ default-package-overrides:
   - hpc-coveralls ==1.0.10
   - HPDF ==1.4.10
   - hpio ==0.9.0.5
-  - hpp ==0.5.1
+  - hpp ==0.5.2
   - hpqtypes ==1.5.2.0
   - hquantlib ==0.0.4.0
   - hreader ==1.1.0
@@ -927,8 +927,8 @@ default-package-overrides:
   - hsdns ==1.7.1
   - hsebaysdk ==0.4.0.0
   - hsemail ==2
-  - hset ==2.2.0
   - HSet ==0.0.1
+  - hset ==2.2.0
   - hsexif ==0.6.1.5
   - hs-GeoIP ==0.3
   - hsignal ==0.2.7.5
@@ -978,7 +978,7 @@ default-package-overrides:
   - HTTP ==4000.3.11
   - http2 ==1.6.3
   - http-api-data ==0.3.7.2
-  - http-client ==0.5.11
+  - http-client ==0.5.12
   - http-client-openssl ==0.2.1.1
   - http-client-tls ==0.3.5.3
   - http-common ==0.8.2.0
@@ -1001,7 +1001,7 @@ default-package-overrides:
   - hweblib ==0.6.3
   - hw-excess ==0.2.0.0
   - hw-fingertree ==0.1.0.1
-  - hw-fingertree-strict ==0.1.0.2
+  - hw-fingertree-strict ==0.1.0.3
   - hw-hedgehog ==0.1.0.1
   - hw-hspec-hedgehog ==0.1.0.2
   - hw-int ==0.0.0.3
@@ -1014,7 +1014,7 @@ default-package-overrides:
   - hw-rankselect-base ==0.2.0.2
   - hw-string-parse ==0.0.0.4
   - hw-succinct ==0.1.0.1
-  - hw-xml ==0.1.0.1
+  - hw-xml ==0.1.0.3
   - hxt ==9.3.1.16
   - hxt-charproperties ==9.2.0.1
   - hxt-css ==0.1.0.3
@@ -1111,7 +1111,7 @@ default-package-overrides:
   - json-builder ==0.3
   - json-rpc-generic ==0.2.1.3
   - json-schema ==0.7.4.1
-  - json-stream ==0.4.2.0
+  - json-stream ==0.4.2.2
   - JuicyPixels ==3.2.9.5
   - JuicyPixels-extra ==0.3.0
   - JuicyPixels-scale-dct ==0.1.1.2
@@ -1234,7 +1234,7 @@ default-package-overrides:
   - mandrill ==0.5.3.3
   - mapquest-api ==0.3.1
   - map-syntax ==0.2.0.2
-  - markdown ==0.1.17
+  - markdown ==0.1.17.1
   - markdown-unlit ==0.5.0
   - markov-chain ==0.0.3.4
   - markup ==4.0.4
@@ -1301,13 +1301,13 @@ default-package-overrides:
   - moesocks ==1.0.0.44
   - mole ==0.0.6
   - monad-control ==1.0.2.3
-  - monad-control-aligned ==0.0.1
+  - monad-control-aligned ==0.0.1.1
   - monad-coroutine ==0.9.0.4
   - monad-extras ==0.6.0
   - monadic-arrays ==0.2.2
   - monad-journal ==0.8.1
   - monadloc ==0.7.1
-  - monad-logger ==0.3.28.2
+  - monad-logger ==0.3.28.3
   - monad-logger-json ==0.1.0.0
   - monad-logger-prefix ==0.1.9
   - monad-logger-syslog ==0.1.4.0
@@ -1374,17 +1374,17 @@ default-package-overrides:
   - netlib-ffi ==0.0.1
   - netpbm ==1.0.2
   - nettle ==0.2.0
-  - netwire ==5.0.2
+  - netwire ==5.0.3
   - netwire-input ==0.0.7
   - netwire-input-glfw ==0.0.8
-  - network ==2.6.3.4
+  - network ==2.6.3.5
   - network-anonymous-i2p ==0.10.0
   - network-anonymous-tor ==0.11.0
   - network-attoparsec ==0.12.2
   - network-carbon ==1.0.11
   - network-conduit-tls ==1.3.0
   - network-house ==0.1.0.2
-  - network-info ==0.2.0.9
+  - network-info ==0.2.0.10
   - network-ip ==0.3.0.2
   - network-multicast ==0.2.0
   - Network-NineP ==0.4.2
@@ -1442,7 +1442,7 @@ default-package-overrides:
   - openexr-write ==0.1.0.1
   - OpenGL ==3.0.2.1
   - OpenGLRaw ==3.2.7.0
-  - openpgp-asciiarmor ==0.1
+  - openpgp-asciiarmor ==0.1.1
   - opensource ==0.1.0.0
   - openssl-streams ==1.2.1.3
   - open-witness ==0.4.0.1
@@ -1501,7 +1501,7 @@ default-package-overrides:
   - pem ==0.2.4
   - perf ==0.3.1.1
   - perfect-hash-generator ==0.2.0.6
-  - persistable-record ==0.6.0.2
+  - persistable-record ==0.6.0.3
   - persistable-types-HDBC-pg ==0.0.1.5
   - persistent ==2.8.1
   - persistent-mongoDB ==2.8.0
@@ -1555,7 +1555,7 @@ default-package-overrides:
   - pomaps ==0.0.0.3
   - pooled-io ==0.0.2.1
   - PortMidi ==0.1.6.1
-  - posix-paths ==0.2.1.3
+  - posix-paths ==0.2.1.4
   - postgresql-binary ==0.12.1
   - postgresql-libpq ==0.9.4.1
   - postgresql-schema ==0.1.14
@@ -1564,7 +1564,7 @@ default-package-overrides:
   - postgresql-simple-queue ==1.0.1
   - postgresql-simple-url ==0.2.1.0
   - postgresql-transactional ==1.1.1
-  - postgresql-typed ==0.5.2
+  - postgresql-typed ==0.5.3.0
   - post-mess-age ==0.2.1.0
   - pptable ==0.2.0.0
   - pqueue ==1.4.1.1
@@ -1613,7 +1613,7 @@ default-package-overrides:
   - proto-lens-arbitrary ==0.1.1.1
   - proto-lens-descriptors ==0.2.2.0
   - proto-lens-optparse ==0.1.1.0
-  - protolude ==0.2.1
+  - protolude ==0.2.2
   - proxied ==0.3
   - psql-helpers ==0.1.0.0
   - PSQueue ==1.1
@@ -1658,7 +1658,7 @@ default-package-overrides:
   - rank1dynamic ==0.4.0
   - rank2classes ==1.0.2
   - rank-product ==0.2.0.1
-  - Rasterific ==0.7.2.3
+  - Rasterific ==0.7.3
   - rasterific-svg ==0.3.3.1
   - ratel ==1.0.3
   - ratel-wai ==1.0.2
@@ -1682,7 +1682,7 @@ default-package-overrides:
   - ref-fd ==0.4.0.1
   - refined ==0.1.2.1
   - reflection ==2.1.3
-  - reform ==0.2.7.1
+  - reform ==0.2.7.2
   - reform-blaze ==0.2.4.3
   - reform-hamlet ==0.0.5.3
   - reform-happstack ==0.2.5.2
@@ -1716,8 +1716,8 @@ default-package-overrides:
   - resourcet ==1.2.0
   - rest-core ==0.39
   - rest-snap ==0.3.0.0
-  - rest-stringmap ==0.2.0.6
-  - rest-types ==1.14.1.1
+  - rest-stringmap ==0.2.0.7
+  - rest-types ==1.14.1.2
   - result ==0.2.6.0
   - rethinkdb-client-driver ==0.0.25
   - retry ==0.7.6.2
@@ -1842,7 +1842,7 @@ default-package-overrides:
   - skein ==1.0.9.4
   - skeletons ==0.4.0
   - skylighting ==0.6
-  - slack-web ==0.2.0.3
+  - slack-web ==0.2.0.4
   - slave-thread ==1.0.2
   - slug ==0.1.7
   - smallcheck ==1.1.3.1
@@ -1883,10 +1883,10 @@ default-package-overrides:
   - Spock-lucid ==0.4.0.1
   - Spock-worker ==0.3.1.0
   - spreadsheet ==0.1.3.7
-  - sqlite-simple ==0.4.14.0
+  - sqlite-simple ==0.4.15.0
   - sql-words ==0.1.5.1
   - squeal-postgresql ==0.1.1.4
-  - srcloc ==0.5.1.1
+  - srcloc ==0.5.1.2
   - stache ==1.2.1
   - stack-type ==0.1.0.0
   - starter ==0.2.1
@@ -1922,7 +1922,7 @@ default-package-overrides:
   - streaming ==0.2.1.0
   - streaming-bytestring ==0.1.5
   - streaming-commons ==0.1.19
-  - streamly ==0.1.1
+  - streamly ==0.1.2
   - streamproc ==1.6.2
   - streams ==3.3
   - strict ==0.3.2
@@ -1950,7 +1950,7 @@ default-package-overrides:
   - swagger2 ==2.2.1
   - swish ==0.9.2.1
   - syb ==0.7
-  - syb-with-class ==0.6.1.8
+  - syb-with-class ==0.6.1.9
   - symbol ==0.2.4
   - symengine ==0.1.2.0
   - sysinfo ==0.1.1
@@ -2068,7 +2068,7 @@ default-package-overrides:
   - timespan ==0.3.0.0
   - timezone-olson ==0.1.9
   - timezone-series ==0.1.9
-  - tinylog ==0.14.0
+  - tinylog ==0.14.1
   - tinytemplate ==0.1.2.0
   - titlecase ==1.0.1
   - tldr ==0.3.0
@@ -2112,8 +2112,8 @@ default-package-overrides:
   - type-level-integers ==0.0.1
   - type-level-kv-list ==1.1.0
   - type-level-numbers ==0.1.1.1
-  - typelits-witnesses ==0.3.0.1
-  - type-of-html ==1.3.3.0
+  - typelits-witnesses ==0.3.0.2
+  - type-of-html ==1.3.3.2
   - type-operators ==0.1.0.4
   - type-spec ==0.3.0.1
   - typography-geometry ==1.0.0.1
@@ -2249,13 +2249,13 @@ default-package-overrides:
   - web-routes-boomerang ==0.28.4.2
   - web-routes-happstack ==0.23.11
   - web-routes-hsp ==0.24.6.1
-  - web-routes-th ==0.22.6.2
+  - web-routes-th ==0.22.6.3
   - web-routes-wai ==0.24.3.1
   - webrtc-vad ==0.1.0.3
   - websockets ==0.12.4.0
   - websockets-rpc ==0.6.0
   - websockets-simple ==0.0.6.3
-  - websockets-snap ==0.10.2.4
+  - websockets-snap ==0.10.2.5
   - weigh ==0.0.7
   - wide-word ==0.1.0.6
   - wikicfp-scraper ==0.1.0.9
@@ -2304,7 +2304,7 @@ default-package-overrides:
   - xenstore ==0.1.1
   - xhtml ==3000.2.2
   - xls ==0.1.1
-  - xlsx ==0.7.1
+  - xlsx ==0.7.2
   - xlsx-tabular ==0.2.2.1
   - xml ==1.3.14
   - xml-basic ==0.1.3
@@ -2328,7 +2328,7 @@ default-package-overrides:
   - xturtle ==0.2.0.0
   - xxhash ==0.0.2
   - xxhash-ffi ==0.2.0.0
-  - yaml ==0.8.28
+  - yaml ==0.8.29
   - Yampa ==0.10.7
   - YampaSynth ==0.2
   - yeshql ==3.0.1.3
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index c2cd6279c23b..ae6a334de813 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -5215,6 +5215,8 @@ self: {
        pname = "FPretty";
        version = "1.1";
        sha256 = "0hpbm11z95wfh0i1dp2c35maksnz0zxpz9vbxq6f5c13x4i03b5q";
+       revision = "1";
+       editedCabalFile = "0d6mjr7b37f5bgjijjgx4x4fgfmkbhksphzkaf0p5jyzxp45fasc";
        libraryHaskellDepends = [ base containers ];
        homepage = "http://www.cs.kent.ac.uk/~oc/pretty.html";
        description = "Efficient simple pretty printing combinators";
@@ -8711,6 +8713,40 @@ self: {
        license = "LGPL";
      }) {};
 
+  "HTF_0_13_2_4" = callPackage
+    ({ mkDerivation, aeson, aeson-pretty, array, base
+     , base64-bytestring, bytestring, containers, cpphs, Diff, directory
+     , filepath, haskell-src, HUnit, lifted-base, monad-control, mtl
+     , old-time, pretty, process, QuickCheck, random, regex-compat
+     , template-haskell, temporary, text, time, unix
+     , unordered-containers, vector, xmlgen
+     }:
+     mkDerivation {
+       pname = "HTF";
+       version = "0.13.2.4";
+       sha256 = "1xibrzs465hg9snwvl6gp6hll6g6c7m8s2ckk8vkfg386pywmi9n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson array base base64-bytestring bytestring containers cpphs Diff
+         directory haskell-src HUnit lifted-base monad-control mtl old-time
+         pretty process QuickCheck random regex-compat text time unix vector
+         xmlgen
+       ];
+       executableHaskellDepends = [
+         array base cpphs directory HUnit mtl old-time random text
+       ];
+       testHaskellDepends = [
+         aeson aeson-pretty base bytestring directory filepath HUnit mtl
+         process random regex-compat template-haskell temporary text
+         unordered-containers
+       ];
+       homepage = "https://github.com/skogsbaer/HTF/";
+       description = "The Haskell Test Framework";
+       license = stdenv.lib.licenses.lgpl21;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "HTTP" = callPackage
     ({ mkDerivation, array, base, bytestring, case-insensitive, conduit
      , conduit-extra, deepseq, http-types, httpd-shed, HUnit, mtl
@@ -13791,6 +13827,8 @@ self: {
        pname = "OneTuple";
        version = "0.2.1";
        sha256 = "1x52b68zh3k9lnps5s87kzan7dzvqp6mrwgayjq15w9dv6v78vsb";
+       revision = "1";
+       editedCabalFile = "1kb7f21n9vwwrk4kipqdwdqs94k34zai6yy0kgdn22zi442yicjh";
        libraryHaskellDepends = [ base ];
        description = "Singleton Tuple";
        license = stdenv.lib.licenses.bsd3;
@@ -15716,23 +15754,6 @@ self: {
      }:
      mkDerivation {
        pname = "Rasterific";
-       version = "0.7.2.3";
-       sha256 = "1imsk1dv5dksicnhmnzz5ldq84plbcg4qlwccsqvb6jg9j5vf6v6";
-       libraryHaskellDepends = [
-         base bytestring containers dlist FontyFruity free JuicyPixels mtl
-         primitive transformers vector vector-algorithms
-       ];
-       description = "A pure haskell drawing engine";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "Rasterific_0_7_3" = callPackage
-    ({ mkDerivation, base, bytestring, containers, dlist, FontyFruity
-     , free, JuicyPixels, mtl, primitive, transformers, vector
-     , vector-algorithms
-     }:
-     mkDerivation {
-       pname = "Rasterific";
        version = "0.7.3";
        sha256 = "0y92h3mjsr1vjcxc06lh1lvszicf53l1bzdaci5mjb5gmiq8f2px";
        libraryHaskellDepends = [
@@ -15741,7 +15762,6 @@ self: {
        ];
        description = "A pure haskell drawing engine";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ReadArgs" = callPackage
@@ -20311,6 +20331,34 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "accelerate_1_2_0_0" = callPackage
+    ({ mkDerivation, ansi-terminal, ansi-wl-pprint, base, base-orphans
+     , bytestring, Cabal, cabal-doctest, constraints, containers
+     , cryptonite, deepseq, directory, doctest, exceptions, filepath
+     , ghc-prim, half, hashable, hashtables, hedgehog, lens, mtl, tasty
+     , tasty-expected-failure, tasty-hedgehog, tasty-hunit
+     , template-haskell, terminal-size, transformers, unique, unix
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "accelerate";
+       version = "1.2.0.0";
+       sha256 = "0y8wx09smrcxkyyklrf4lrilqasbmaw1w1ga9y110bqgywkw4pmj";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         ansi-terminal ansi-wl-pprint base base-orphans bytestring
+         constraints containers cryptonite deepseq directory exceptions
+         filepath ghc-prim half hashable hashtables hedgehog lens mtl tasty
+         tasty-expected-failure tasty-hedgehog tasty-hunit template-haskell
+         terminal-size transformers unique unix unordered-containers vector
+       ];
+       testHaskellDepends = [ base doctest ];
+       homepage = "https://github.com/AccelerateHS/accelerate/";
+       description = "An embedded language for accelerated array processing";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-arithmetic" = callPackage
     ({ mkDerivation, accelerate, accelerate-utility, base, QuickCheck
      , utility-ht
@@ -20631,6 +20679,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "accelerate-llvm_1_2_0_0" = callPackage
+    ({ mkDerivation, abstract-deque, accelerate, base, bytestring
+     , chaselev-deque, containers, data-default-class, deepseq
+     , directory, dlist, exceptions, filepath, llvm-hs, llvm-hs-pure
+     , mtl, mwc-random, primitive, template-haskell
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm";
+       version = "1.2.0.0";
+       sha256 = "110zfxqi0lkhg7pk42qvd87qn442r6z264zj7q46jf8ia60l2cdq";
+       libraryHaskellDepends = [
+         abstract-deque accelerate base bytestring chaselev-deque containers
+         data-default-class deepseq directory dlist exceptions filepath
+         llvm-hs llvm-hs-pure mtl mwc-random primitive template-haskell
+         unordered-containers vector
+       ];
+       description = "Accelerate backend component generating LLVM IR";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-llvm-native" = callPackage
     ({ mkDerivation, accelerate, accelerate-llvm, base, bytestring
      , c2hs, Cabal, cereal, containers, directory, dlist, fclabels
@@ -20653,6 +20723,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "accelerate-llvm-native_1_2_0_0" = callPackage
+    ({ mkDerivation, accelerate, accelerate-llvm, base, bytestring
+     , c2hs, Cabal, cereal, containers, directory, dlist, filepath, ghc
+     , ghc-prim, hashable, libffi, llvm-hs, llvm-hs-pure, mtl
+     , template-haskell, time, unique, unix, vector
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm-native";
+       version = "1.2.0.0";
+       sha256 = "089j8ic6ns6656a55byiilrj9jvs535jvx4f2m8x1qhgz9q968vb";
+       libraryHaskellDepends = [
+         accelerate accelerate-llvm base bytestring Cabal cereal containers
+         directory dlist filepath ghc ghc-prim hashable libffi llvm-hs
+         llvm-hs-pure mtl template-haskell time unique unix vector
+       ];
+       libraryToolDepends = [ c2hs ];
+       testHaskellDepends = [ accelerate base ];
+       description = "Accelerate backend for multicore CPUs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-llvm-ptx" = callPackage
     ({ mkDerivation, accelerate, accelerate-llvm, base, bytestring
      , containers, cuda, deepseq, directory, dlist, fclabels, file-embed
@@ -20674,6 +20766,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "accelerate-llvm-ptx_1_2_0_0" = callPackage
+    ({ mkDerivation, accelerate, accelerate-llvm, base, bytestring
+     , containers, cuda, deepseq, directory, dlist, file-embed, filepath
+     , hashable, llvm-hs, llvm-hs-pure, mtl, nvvm, pretty, process
+     , template-haskell, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "accelerate-llvm-ptx";
+       version = "1.2.0.0";
+       sha256 = "1rh0kq10mwn4zd8f5sp19pah2hmmcansaqqssz79183znzfiviz5";
+       libraryHaskellDepends = [
+         accelerate accelerate-llvm base bytestring containers cuda deepseq
+         directory dlist file-embed filepath hashable llvm-hs llvm-hs-pure
+         mtl nvvm pretty process template-haskell time unordered-containers
+       ];
+       testHaskellDepends = [ accelerate base ];
+       description = "Accelerate backend for NVIDIA GPUs";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "accelerate-random" = callPackage
     ({ mkDerivation, accelerate, base, mwc-random }:
      mkDerivation {
@@ -22053,6 +22166,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "aeson-diff-generic" = callPackage
+    ({ mkDerivation, aeson, aeson-diff, base, base-compat, bytestring
+     , containers, dlist, hashable, scientific, tagged, template-haskell
+     , text, th-abstraction, time, unordered-containers, uuid-types
+     , vector
+     }:
+     mkDerivation {
+       pname = "aeson-diff-generic";
+       version = "0.0.2";
+       sha256 = "0dm2rzww9rc6l3ql42px96fpsfjvw9g0w13j0y02dq33qb0w7a1v";
+       libraryHaskellDepends = [
+         aeson aeson-diff base base-compat bytestring containers dlist
+         hashable scientific tagged template-haskell text th-abstraction
+         time unordered-containers uuid-types vector
+       ];
+       description = "Apply a json-patch to any haskell datatype";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "aeson-extra" = callPackage
     ({ mkDerivation, aeson, aeson-compat, attoparsec
      , attoparsec-iso8601, base, base-compat, bytestring, containers
@@ -23278,26 +23410,6 @@ self: {
 
   "alex" = callPackage
     ({ mkDerivation, array, base, containers, directory, happy, process
-     , QuickCheck
-     }:
-     mkDerivation {
-       pname = "alex";
-       version = "3.2.3";
-       sha256 = "0bi1cs9b8ir33h1fl6x2xw4ymygapqbr713ridpf7rmk2wa7jqqs";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         array base containers directory QuickCheck
-       ];
-       executableToolDepends = [ happy ];
-       testHaskellDepends = [ base process ];
-       homepage = "http://www.haskell.org/alex/";
-       description = "Alex is a tool for generating lexical analysers in Haskell";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "alex_3_2_4" = callPackage
-    ({ mkDerivation, array, base, containers, directory, happy, process
      }:
      mkDerivation {
        pname = "alex";
@@ -23312,7 +23424,6 @@ self: {
        homepage = "http://www.haskell.org/alex/";
        description = "Alex is a tool for generating lexical analysers in Haskell";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "alex-meta" = callPackage
@@ -23519,6 +23630,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "algebraic-graphs_0_1_1" = callPackage
+    ({ mkDerivation, array, base, base-compat, base-orphans, containers
+     , criterion, deepseq, extra, QuickCheck
+     }:
+     mkDerivation {
+       pname = "algebraic-graphs";
+       version = "0.1.1";
+       sha256 = "085yb222gh5chlpa4xylvf1wfnsdhrm1fha4jvj5bsjlx9kyr4ah";
+       libraryHaskellDepends = [
+         array base base-compat containers deepseq
+       ];
+       testHaskellDepends = [
+         base base-compat base-orphans containers extra QuickCheck
+       ];
+       benchmarkHaskellDepends = [
+         base base-compat containers criterion
+       ];
+       homepage = "https://github.com/snowleopard/alga";
+       description = "A library for algebraic graph construction and transformation";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "algebraic-prelude" = callPackage
     ({ mkDerivation, algebra, base, basic-prelude, lens, semigroups }:
      mkDerivation {
@@ -23970,6 +24104,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "alto" = callPackage
+    ({ mkDerivation, aeson, base, base64-bytestring, bytestring
+     , containers, cryptohash-sha256, directory, exceptions, filepath
+     , lens, list-tries, MonadRandom, mtl, random, random-string, scrypt
+     , servant-server, text, warp
+     }:
+     mkDerivation {
+       pname = "alto";
+       version = "0";
+       sha256 = "0515cghmkrw5szbnafwp3mqglrg5c44cbly8jnvk9z9gf9kdr26k";
+       revision = "1";
+       editedCabalFile = "0vxcy55zx70ibws59d1n5p86awrhb83xb06yw6iz0hkp7cwk52i2";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base base64-bytestring bytestring containers
+         cryptohash-sha256 directory exceptions filepath lens list-tries
+         MonadRandom mtl random random-string scrypt servant-server text
+       ];
+       executableHaskellDepends = [ base warp ];
+       homepage = "https://oss.xkcd.com/";
+       description = "Implement a menu experience fit for web users";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "alure" = callPackage
     ({ mkDerivation, alure, base, OpenAL }:
      mkDerivation {
@@ -30004,11 +30163,10 @@ self: {
      }:
      mkDerivation {
        pname = "ats-format";
-       version = "0.2.0.22";
-       sha256 = "19x2pa6fb1k343b4c07xwyc879kfwya1kll0bp59paza1bqhhnnk";
+       version = "0.2.0.25";
+       sha256 = "0p5pg2ix0ppan0cz4b0pk16ihfcnvqwb8g93k4bh7d304ca5xdk4";
        isLibrary = false;
        isExecutable = true;
-       enableSeparateDataOutput = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
        executableHaskellDepends = [
          ansi-wl-pprint base directory file-embed htoml-megaparsec
@@ -30029,8 +30187,8 @@ self: {
      }:
      mkDerivation {
        pname = "ats-pkg";
-       version = "2.8.0.8";
-       sha256 = "1rc5xcsfgax25kndmghfpr2sh6f6kr5mz358vb8pzlvhcg5q8svr";
+       version = "2.9.0.2";
+       sha256 = "02j6118i48mrw41c2pj8yc5xkvyw97fw0g1hpvplmy40djjd0qah";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
@@ -31059,8 +31217,8 @@ self: {
      }:
      mkDerivation {
        pname = "avro";
-       version = "0.2.1.0";
-       sha256 = "07gqi33aadb9c94b19z1166ayyi0s95ykda77l53vc2al43sa3bl";
+       version = "0.2.1.1";
+       sha256 = "1y70ir44kg5awgf3x1sl584ag9ddw0mhgqniwar6lgry2ag4vz9f";
        libraryHaskellDepends = [
          aeson array base base16-bytestring binary bytestring containers
          data-binary-ieee754 entropy fail hashable mtl pure-zlib scientific
@@ -31072,7 +31230,7 @@ self: {
          QuickCheck scientific semigroups tagged template-haskell text
          transformers unordered-containers vector
        ];
-       homepage = "https://github.com/haskell-works/hw-haskell-avro.git";
+       homepage = "https://github.com/GaloisInc/avro.git";
        description = "Avro serialization support for Haskell";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -32043,28 +32201,6 @@ self: {
      }:
      mkDerivation {
        pname = "backprop";
-       version = "0.1.3.0";
-       sha256 = "0x1vp48dl0dlq1bwaq0fy9k472rpx571i7klrhnwnqf6nb52mh1w";
-       libraryHaskellDepends = [
-         base deepseq microlens primitive reflection transformers
-         type-combinators vector
-       ];
-       benchmarkHaskellDepends = [
-         base bifunctors criterion deepseq directory hmatrix lens mnist-idx
-         mwc-random time transformers vector
-       ];
-       homepage = "https://github.com/mstksg/backprop#readme";
-       description = "Heterogeneous automatic differentation (backpropagation)";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "backprop_0_1_5_0" = callPackage
-    ({ mkDerivation, base, bifunctors, criterion, deepseq, directory
-     , hmatrix, lens, microlens, mnist-idx, mwc-random, primitive
-     , reflection, time, transformers, type-combinators, vector
-     }:
-     mkDerivation {
-       pname = "backprop";
        version = "0.1.5.0";
        sha256 = "0b99krw1l574bcqxck1bqj5sb0slbm24hd85finv3v725ddy8k7f";
        libraryHaskellDepends = [
@@ -32078,7 +32214,6 @@ self: {
        homepage = "https://github.com/mstksg/backprop#readme";
        description = "Heterogeneous automatic differentation (backpropagation)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "backtracking-exceptions" = callPackage
@@ -33081,8 +33216,8 @@ self: {
     ({ mkDerivation, base, battleplace, servant, servant-client }:
      mkDerivation {
        pname = "battleplace-api";
-       version = "0.1.0.0";
-       sha256 = "0hy1y5n064i7g2zknvj7yl7zw3bljqjrfr2sg68cmk9gkd854rlw";
+       version = "0.1.0.1";
+       sha256 = "1pi1vcniyrpq1xfrizhvgw7xbrc332649zg4jl1fjbqn4l4xqrlg";
        libraryHaskellDepends = [
          base battleplace servant servant-client
        ];
@@ -33777,6 +33912,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "betris" = callPackage
+    ({ mkDerivation, base, containers, lens, linear, random, stm
+     , stm-chans, vty
+     }:
+     mkDerivation {
+       pname = "betris";
+       version = "0.1.0.0";
+       sha256 = "1qn326s4xydvvgmrhqi48cc2pl9b3mp7swc82qk59gj7cx4dx222";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers lens linear random stm stm-chans vty
+       ];
+       executableHaskellDepends = [
+         base containers lens linear random stm stm-chans vty
+       ];
+       homepage = "https://github.com/mlang/betris#readme";
+       description = "Braille friendly vertical version of tetris";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "between" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -33879,6 +34035,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "bhoogle_0_1_2_6" = callPackage
+    ({ mkDerivation, base, brick, bytestring, containers, directory
+     , filepath, hoogle, lens, process, protolude, text, time, vector
+     , vty
+     }:
+     mkDerivation {
+       pname = "bhoogle";
+       version = "0.1.2.6";
+       sha256 = "0p6zh1rh80hzrm36w6d5hr6qjkfc71cr96dk9shrndnxlp8vlxsn";
+       isLibrary = false;
+       isExecutable = true;
+       executableHaskellDepends = [
+         base brick bytestring containers directory filepath hoogle lens
+         process protolude text time vector vty
+       ];
+       homepage = "https://github.com/andrevdm/bhoogle#readme";
+       description = "Simple terminal GUI for local hoogle";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "bibdb" = callPackage
     ({ mkDerivation, alex, array, async, base, bibtex, bytestring
      , containers, curl, download-curl, filepath, happy, microlens
@@ -36849,6 +37026,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "blas-carray_0_0_1_1" = callPackage
+    ({ mkDerivation, base, blas-ffi, carray, netlib-carray, netlib-ffi
+     , storable-complex, transformers
+     }:
+     mkDerivation {
+       pname = "blas-carray";
+       version = "0.0.1.1";
+       sha256 = "0ijzcdrbfb9w3vs4g96p30h7ilh9s05ij8n0prinmr1ngmvipbdx";
+       libraryHaskellDepends = [
+         base blas-ffi carray netlib-carray netlib-ffi storable-complex
+         transformers
+       ];
+       homepage = "http://hub.darcs.net/thielema/blas-carray/";
+       description = "Auto-generated interface to Fortran BLAS via CArrays";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "blas-ffi" = callPackage
     ({ mkDerivation, base, blas, netlib-ffi }:
      mkDerivation {
@@ -36863,6 +37058,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) blas;};
 
+  "blas-ffi_0_0_1_1" = callPackage
+    ({ mkDerivation, base, blas, netlib-ffi }:
+     mkDerivation {
+       pname = "blas-ffi";
+       version = "0.0.1.1";
+       sha256 = "0dphqcnnka0ahfgdnshm8r3bd6r5wbpln9kksa6y09yi2nnqh3gf";
+       libraryHaskellDepends = [ base netlib-ffi ];
+       libraryPkgconfigDepends = [ blas ];
+       homepage = "http://hub.darcs.net/thielema/blas-ffi/";
+       description = "Auto-generated interface to Fortran BLAS";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) blas;};
+
   "blas-hs" = callPackage
     ({ mkDerivation, base, blas, storable-complex, vector }:
      mkDerivation {
@@ -37769,8 +37978,26 @@ self: {
        pname = "boltzmann-samplers";
        version = "0.1.0.0";
        sha256 = "0gw8d4xrwr9xs9k7dflm12xpkn6k0yn41myvzqzj4c6bhdd0c1sp";
-       revision = "1";
-       editedCabalFile = "00va7bagszricicai4jckyka8azgw6gly9ps5kabnsyv5znylfr0";
+       revision = "2";
+       editedCabalFile = "0mmjxyy9pxrrxdrpkl06c2dk980b4z6pvkg5zj3fl56avg3l4q26";
+       libraryHaskellDepends = [
+         ad base containers hashable hmatrix ieee754 MonadRandom mtl
+         QuickCheck transformers unordered-containers vector
+       ];
+       homepage = "https://github.com/Lysxia/boltzmann-samplers#readme";
+       description = "Uniform random generators";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
+  "boltzmann-samplers_0_1_1_0" = callPackage
+    ({ mkDerivation, ad, base, containers, hashable, hmatrix, ieee754
+     , MonadRandom, mtl, QuickCheck, transformers, unordered-containers
+     , vector
+     }:
+     mkDerivation {
+       pname = "boltzmann-samplers";
+       version = "0.1.1.0";
+       sha256 = "13l7ml35hm0i2rgw419n7xp2zp58pafm6gmmik3jgbmhfwgkwz6y";
        libraryHaskellDepends = [
          ad base containers hashable hmatrix ieee754 MonadRandom mtl
          QuickCheck transformers unordered-containers vector
@@ -37778,6 +38005,7 @@ self: {
        homepage = "https://github.com/Lysxia/boltzmann-samplers#readme";
        description = "Uniform random generators";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "bond" = callPackage
@@ -38092,17 +38320,6 @@ self: {
      }) {};
 
   "boomerang" = callPackage
-    ({ mkDerivation, base, mtl, template-haskell, text }:
-     mkDerivation {
-       pname = "boomerang";
-       version = "1.4.5.3";
-       sha256 = "124k13x5wzjy2qlbdgixncgr5l7cxw4glq1hjb8hyk8vfvgs6qfl";
-       libraryHaskellDepends = [ base mtl template-haskell text ];
-       description = "Library for invertible parsing and printing";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "boomerang_1_4_5_5" = callPackage
     ({ mkDerivation, base, mtl, semigroups, template-haskell, text }:
      mkDerivation {
        pname = "boomerang";
@@ -38113,7 +38330,6 @@ self: {
        ];
        description = "Library for invertible parsing and printing";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "boomslang" = callPackage
@@ -40199,6 +40415,8 @@ self: {
        pname = "bytestring-trie";
        version = "0.2.4.1";
        sha256 = "0qqklrvdcprchnl4bxr6w7zf6k5gncincl3kysm34gd04sszxr1g";
+       revision = "1";
+       editedCabalFile = "0f56pb1k1va7bs9rpn0b8hclxhn5pcjln857k50myhyzrwz8qg7r";
        libraryHaskellDepends = [ base binary bytestring ];
        homepage = "http://code.haskell.org/~wren/";
        description = "An efficient finite map from (byte)strings to values";
@@ -41131,25 +41349,6 @@ self: {
      }:
      mkDerivation {
        pname = "cabal-rpm";
-       version = "0.12.1";
-       sha256 = "0avp7prkzp522mpqnn60xmsqqp10zhp1phhlj14qzp4162772fss";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base bytestring Cabal directory filepath http-client
-         http-client-tls http-conduit process time unix
-       ];
-       homepage = "https://github.com/juhp/cabal-rpm";
-       description = "RPM packaging tool for Haskell Cabal-based packages";
-       license = stdenv.lib.licenses.gpl3;
-     }) {};
-
-  "cabal-rpm_0_12_2" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, directory, filepath
-     , http-client, http-client-tls, http-conduit, process, time, unix
-     }:
-     mkDerivation {
-       pname = "cabal-rpm";
        version = "0.12.2";
        sha256 = "00i3v62ys6fhq2rnw9q2hhc2h54v8my14ll746vpma2gfdy90y1c";
        isLibrary = false;
@@ -41161,7 +41360,6 @@ self: {
        homepage = "https://github.com/juhp/cabal-rpm";
        description = "RPM packaging tool for Haskell Cabal-based packages";
        license = stdenv.lib.licenses.gpl3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "cabal-scripts" = callPackage
@@ -42813,6 +43011,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "casing_0_1_3_0" = callPackage
+    ({ mkDerivation, base, split, tasty, tasty-hunit }:
+     mkDerivation {
+       pname = "casing";
+       version = "0.1.3.0";
+       sha256 = "08cklvgm2c2519c4xm22mxfkjmizky8j64a98cqgdgz9rl6ryq9m";
+       libraryHaskellDepends = [ base split ];
+       testHaskellDepends = [ base tasty tasty-hunit ];
+       description = "Convert between various source code casing conventions";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "casr-logbook" = callPackage
     ({ mkDerivation, base, containers, digit, directory, doctest
      , filepath, lens, lucid, QuickCheck, template-haskell, text, time
@@ -46870,18 +47081,18 @@ self: {
 
   "closed" = callPackage
     ({ mkDerivation, aeson, base, cassava, deepseq, hashable, hspec
-     , markdown-unlit, QuickCheck, vector
+     , markdown-unlit, persistent, QuickCheck, text, vector
      }:
      mkDerivation {
        pname = "closed";
-       version = "0.1.0";
-       sha256 = "0x87s852xfsyxnwj88kw38wmpzrj52hd7r87xx73r4ffv0lp6kh4";
+       version = "0.2.0";
+       sha256 = "0762acn2dik98hp4bvlyvwfy1jfzb4i6ri9pnxa07risain1qc3s";
        libraryHaskellDepends = [
-         aeson base cassava deepseq hashable QuickCheck
+         aeson base cassava deepseq hashable persistent QuickCheck text
        ];
        testHaskellDepends = [
-         aeson base cassava deepseq hashable hspec markdown-unlit QuickCheck
-         vector
+         aeson base cassava deepseq hashable hspec markdown-unlit persistent
+         QuickCheck text vector
        ];
        homepage = "https://github.com/frontrowed/closed#readme";
        description = "Integers bounded by a closed interval";
@@ -48526,6 +48737,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "combinat-compat" = callPackage
+    ({ mkDerivation, array, base, containers, QuickCheck, random
+     , test-framework, test-framework-quickcheck2, transformers
+     }:
+     mkDerivation {
+       pname = "combinat-compat";
+       version = "0.2.8.2";
+       sha256 = "0mh5f8vmbwnib1qv9vvp45gwwj6942l1jhxnglq9i4za40k1r8ff";
+       libraryHaskellDepends = [
+         array base containers random transformers
+       ];
+       testHaskellDepends = [
+         array base containers QuickCheck random test-framework
+         test-framework-quickcheck2 transformers
+       ];
+       homepage = "http://code.haskell.org/~bkomuves/";
+       description = "Generate and manipulate various combinatorial objects";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "combinat-diagrams" = callPackage
     ({ mkDerivation, array, base, colour, combinat, containers
      , diagrams-core, diagrams-lib, linear, transformers
@@ -48638,8 +48869,8 @@ self: {
     ({ mkDerivation, base, utility-ht }:
      mkDerivation {
        pname = "comfort-array";
-       version = "0.0";
-       sha256 = "0mkfw2f56idh1nnmgamgazwzip6c4pmxsiaijs8k69ggzi2fb8bx";
+       version = "0.0.1";
+       sha256 = "1nbnnhmfbsiq31damx998sm7hz127mdqbnzzybz00962bmlmvp72";
        libraryHaskellDepends = [ base utility-ht ];
        homepage = "http://hub.darcs.net/thielema/comfort-array/";
        description = "Arrays where the index type is a function of the shape type";
@@ -52650,26 +52881,6 @@ self: {
      }:
      mkDerivation {
        pname = "country";
-       version = "0.1.4";
-       sha256 = "027i4ncnsyii41wfndn369xmlbkp4vvcrx7m7cdb07n4wlcpz0bl";
-       revision = "1";
-       editedCabalFile = "0sjzrld5qa2wn66zgf25w5h41179mcmsjvndn1j8kl20bfsiwhvh";
-       libraryHaskellDepends = [
-         aeson attoparsec base bytestring ghc-prim hashable primitive
-         scientific text unordered-containers
-       ];
-       testHaskellDepends = [ base ];
-       homepage = "https://github.com/andrewthad/country#readme";
-       description = "Country data type and functions";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "country_0_1_5" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, bytestring, ghc-prim
-     , hashable, primitive, scientific, text, unordered-containers
-     }:
-     mkDerivation {
-       pname = "country";
        version = "0.1.5";
        sha256 = "0shp4kq8bibfwrjldz8akghgm3n2lq00dybxnq4grmbl5phj3a9s";
        libraryHaskellDepends = [
@@ -52680,7 +52891,6 @@ self: {
        homepage = "https://github.com/andrewthad/country#readme";
        description = "Country data type and functions";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "country-codes" = callPackage
@@ -57306,25 +57516,12 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "data-inttrie";
-       version = "0.1.2";
-       sha256 = "1y8xbwy1cdfrswlbr029hlyj3cbsfvayxh4kklsdzbrwgnnygnld";
-       libraryHaskellDepends = [ base ];
-       homepage = "http://github.com/luqui/data-inttrie";
-       description = "A lazy, infinite trie of integers";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "data-inttrie_0_1_4" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "data-inttrie";
        version = "0.1.4";
        sha256 = "0m5xww8zvsa0whxl89wndpbdz9p5n03q3h3a904nqrxh966psfkb";
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/luqui/data-inttrie";
        description = "A simple lazy, infinite trie from integers";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "data-ivar" = callPackage
@@ -60176,6 +60373,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "deque_0_2_1" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "deque";
+       version = "0.2.1";
+       sha256 = "0r1jabz5jamm79nrbwjnajzzn77fkhqbjfnmkahg293761z1k781";
+       libraryHaskellDepends = [ base ];
+       homepage = "https://github.com/nikita-volkov/deque";
+       description = "Double-ended queue";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "dequeue" = callPackage
     ({ mkDerivation, base, Cabal, cabal-test-quickcheck, QuickCheck
      , safe
@@ -64220,23 +64430,6 @@ self: {
     ({ mkDerivation, base, doctest }:
      mkDerivation {
        pname = "doctest-driver-gen";
-       version = "0.2.0.1";
-       sha256 = "0snlfs2cmra11q2xhgwrbjxazr5dhq84vx5n13491545iknhg0ld";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [ base doctest ];
-       executableHaskellDepends = [ base ];
-       testHaskellDepends = [ base doctest ];
-       homepage = "https://github.com/Hexirp/doctest-driver-gen#readme";
-       description = "Generate driver file for doctest's cabal integration";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "doctest-driver-gen_0_2_0_2" = callPackage
-    ({ mkDerivation, base, doctest }:
-     mkDerivation {
-       pname = "doctest-driver-gen";
        version = "0.2.0.2";
        sha256 = "0yil9va8l4q1wp6zz6w699103ym54fw03vsigzj12iql6y06cxxl";
        isLibrary = true;
@@ -69099,6 +69292,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "error-context" = callPackage
+    ({ mkDerivation, base, exceptions, monad-logger, mtl, resourcet
+     , safe-exceptions, tasty, tasty-hunit, text, unliftio-core
+     }:
+     mkDerivation {
+       pname = "error-context";
+       version = "0.1.2.0";
+       sha256 = "0p07lvwa7rvrrlsyx3qjnh5q8z4p0r9nspgi03qwmi8vjkhy0pr8";
+       libraryHaskellDepends = [
+         base exceptions monad-logger mtl resourcet safe-exceptions text
+         unliftio-core
+       ];
+       testHaskellDepends = [
+         base exceptions monad-logger mtl resourcet safe-exceptions tasty
+         tasty-hunit text unliftio-core
+       ];
+       homepage = "https://github.com/mtesseract/error-context#readme";
+       description = "Provides API for enriching errors with contexts";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "error-continuations" = callPackage
     ({ mkDerivation, base, either, mtl, transformers }:
      mkDerivation {
@@ -70536,26 +70750,6 @@ self: {
      }:
      mkDerivation {
        pname = "exception-transformers";
-       version = "0.4.0.5";
-       sha256 = "12q8c64kg2ksz90ld32m6n811c54syhwihnj2fd7blf2qsmalk2n";
-       libraryHaskellDepends = [
-         base stm transformers transformers-compat
-       ];
-       testHaskellDepends = [
-         base HUnit test-framework test-framework-hunit transformers
-         transformers-compat
-       ];
-       description = "Type classes and monads for unchecked extensible exceptions";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "exception-transformers_0_4_0_6" = callPackage
-    ({ mkDerivation, base, HUnit, stm, test-framework
-     , test-framework-hunit, transformers, transformers-compat
-     }:
-     mkDerivation {
-       pname = "exception-transformers";
        version = "0.4.0.6";
        sha256 = "0abxwkq28wasy06njhaibf8cki9hifk5rjck6r3izbnswjcdn65m";
        libraryHaskellDepends = [
@@ -71862,10 +72056,8 @@ self: {
      }:
      mkDerivation {
        pname = "fast-arithmetic";
-       version = "0.3.3.3";
-       sha256 = "1wm4s2xx3r3bjrkby4dddkc274pqvaa3q94j14pj8hayja6hd6ci";
-       revision = "1";
-       editedCabalFile = "13x505dg6iz3iipkr15hdz105b6kgygccdwspj400b16lzld9vz2";
+       version = "0.3.3.4";
+       sha256 = "176qm6d9rqq85cbpq6n0fmqwvyi529ml6z346k9a1mfpzi85w3xy";
        setupHaskellDepends = [ ats-pkg base Cabal ];
        libraryHaskellDepends = [ base composition-prelude gmpint ];
        librarySystemDepends = [ numbertheory ];
@@ -73528,26 +73720,6 @@ self: {
      }:
      mkDerivation {
        pname = "filecache";
-       version = "0.3.1";
-       sha256 = "199npfbnnbf01ygwj559ikz51bfz23pggnvgdmj2azscbd80mbq7";
-       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;
-     }) {};
-
-  "filecache_0_3_2" = callPackage
-    ({ mkDerivation, base, containers, directory, exceptions, filepath
-     , fsnotify, hspec, mtl, stm, strict-base-types, temporary, time
-     }:
-     mkDerivation {
-       pname = "filecache";
        version = "0.3.2";
        sha256 = "1ddpji3293hrhw7rgl7b41prhffjsb7rgf5x2ijjbiblnzwazr42";
        libraryHaskellDepends = [
@@ -73560,7 +73732,6 @@ self: {
        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
@@ -73961,23 +74132,6 @@ self: {
      }:
      mkDerivation {
        pname = "fingertree";
-       version = "0.1.3.1";
-       sha256 = "08wqzrjdndd7svkil1wr964w4d7zay04nlg7dyzw7wm4d3d3ak4p";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [
-         base HUnit QuickCheck test-framework test-framework-hunit
-         test-framework-quickcheck2
-       ];
-       description = "Generic finger-tree structure, with example instances";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "fingertree_0_1_4_1" = callPackage
-    ({ mkDerivation, base, HUnit, QuickCheck, test-framework
-     , test-framework-hunit, test-framework-quickcheck2
-     }:
-     mkDerivation {
-       pname = "fingertree";
        version = "0.1.4.1";
        sha256 = "192fyzv0pn1437wdpqg1l80rswkk4rw3w61r4bq7dhv354bdqy4p";
        libraryHaskellDepends = [ base ];
@@ -73987,7 +74141,6 @@ self: {
        ];
        description = "Generic finger-tree structure, with example instances";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "fingertree-psqueue" = callPackage
@@ -75634,6 +75787,27 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "fold-debounce-conduit_0_2_0_1" = callPackage
+    ({ mkDerivation, base, conduit, fold-debounce, hspec, resourcet
+     , stm, transformers, transformers-base
+     }:
+     mkDerivation {
+       pname = "fold-debounce-conduit";
+       version = "0.2.0.1";
+       sha256 = "02shx123yd9g9y8n9aj6ai6yrlcb7zjqyhvw530kw68ailnl762z";
+       libraryHaskellDepends = [
+         base conduit fold-debounce resourcet stm transformers
+         transformers-base
+       ];
+       testHaskellDepends = [
+         base conduit hspec resourcet stm transformers
+       ];
+       homepage = "https://github.com/debug-ito/fold-debounce-conduit";
+       description = "Regulate input traffic from conduit Source with Control.FoldDebounce";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "foldl" = callPackage
     ({ mkDerivation, base, bytestring, comonad, containers
      , contravariant, criterion, hashable, mwc-random, primitive
@@ -76793,29 +76967,6 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "free_4_12_4" = callPackage
-    ({ mkDerivation, base, bifunctors, comonad, containers
-     , distributive, exceptions, mtl, prelude-extras, profunctors
-     , semigroupoids, semigroups, template-haskell, transformers
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "free";
-       version = "4.12.4";
-       sha256 = "1147s393442xf4gkpbq0rd1p286vmykgx85mxhk5d1c7wfm4bzn9";
-       revision = "2";
-       editedCabalFile = "0gmib9bmswrqhl47cp5b871v9f44v9yidzxpljkszy49y9qdf560";
-       libraryHaskellDepends = [
-         base bifunctors comonad containers distributive exceptions mtl
-         prelude-extras profunctors semigroupoids semigroups
-         template-haskell transformers transformers-compat
-       ];
-       homepage = "http://github.com/ekmett/free/";
-       description = "Monads for free";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
   "free" = callPackage
     ({ mkDerivation, base, bifunctors, comonad, containers
      , distributive, exceptions, mtl, profunctors, semigroupoids
@@ -80750,20 +80901,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "ghc_8_2_1" = callPackage
+  "ghc_8_4_1" = callPackage
     ({ mkDerivation, alex, array, base, binary, bytestring, containers
      , deepseq, directory, filepath, ghc-boot, ghc-boot-th, ghci, happy
-     , hoopl, hpc, process, template-haskell, terminfo, time
-     , transformers, unix
+     , hpc, process, template-haskell, terminfo, time, transformers
+     , unix
      }:
      mkDerivation {
        pname = "ghc";
-       version = "8.2.1";
-       sha256 = "0b87bj9n2zsi0v9s5ssf5b9c4y4lji7jbxp9j8s93hb95zlmzq17";
+       version = "8.4.1";
+       sha256 = "1axvba6vd13bf9z45jffv05r3jy5n5pxly59r8s5pxh369188076";
        libraryHaskellDepends = [
          array base binary bytestring containers deepseq directory filepath
-         ghc-boot ghc-boot-th ghci hoopl hpc process template-haskell
-         terminfo time transformers unix
+         ghc-boot ghc-boot-th ghci hpc process template-haskell terminfo
+         time transformers unix
        ];
        libraryToolDepends = [ alex happy ];
        homepage = "http://www.haskell.org/ghc/";
@@ -81366,12 +81517,12 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "ghc-prim_0_5_1_1" = callPackage
+  "ghc-prim_0_5_2_0" = callPackage
     ({ mkDerivation, rts }:
      mkDerivation {
        pname = "ghc-prim";
-       version = "0.5.1.1";
-       sha256 = "1dkl0l891min86jpndcah8dx7i3ssnaj6yf2ghxplp8619bmqhb2";
+       version = "0.5.2.0";
+       sha256 = "1ccvzkw3v4xlj7g126wwlc5rvd480hbv1pcq2rfb85k77rzi6bjr";
        libraryHaskellDepends = [ rts ];
        description = "GHC primitives";
        license = stdenv.lib.licenses.bsd3;
@@ -89455,17 +89606,17 @@ self: {
      }) {};
 
   "gtk-traymanager" = callPackage
-    ({ mkDerivation, base, glib, gtk, gtk2, x11 }:
+    ({ mkDerivation, base, glib, gtk3, x11 }:
      mkDerivation {
        pname = "gtk-traymanager";
-       version = "0.1.6";
-       sha256 = "0hind14k37823jsa9dg2r6bfj7d6y1m70xn8mcr610rhakazac6b";
-       libraryHaskellDepends = [ base glib gtk ];
-       libraryPkgconfigDepends = [ gtk2 x11 ];
+       version = "1.0.0";
+       sha256 = "1sg2f8pmnh2xrnra8dx46q9jfy32dlbrmk2hamam8g3i5qsvd0f7";
+       libraryHaskellDepends = [ base glib gtk3 ];
+       libraryPkgconfigDepends = [ x11 ];
        homepage = "http://github.com/travitch/gtk-traymanager";
        description = "A wrapper around the eggtraymanager library for Linux system trays";
        license = stdenv.lib.licenses.lgpl21;
-     }) {gtk2 = pkgs.gnome2.gtk; inherit (pkgs) x11;};
+     }) {inherit (pkgs) x11;};
 
   "gtk2hs-buildtools" = callPackage
     ({ mkDerivation, alex, array, base, Cabal, containers, directory
@@ -91121,35 +91272,6 @@ self: {
   "hackage-security" = callPackage
     ({ mkDerivation, base, base16-bytestring, base64-bytestring
      , bytestring, Cabal, containers, cryptohash-sha256, directory
-     , ed25519, filepath, ghc-prim, HUnit, mtl, network, network-uri
-     , parsec, pretty, QuickCheck, tar, tasty, tasty-hunit
-     , tasty-quickcheck, template-haskell, temporary, time, transformers
-     , zlib
-     }:
-     mkDerivation {
-       pname = "hackage-security";
-       version = "0.5.2.2";
-       sha256 = "0h9wag599x9ysdrgwa643phmpb1xiiwhyh2dix67fji6a5w86yjh";
-       revision = "5";
-       editedCabalFile = "0f1ml7dvwk4xrz3gsf133n67cbxzf0sz5frxfsx9i79x1yrg9zdj";
-       libraryHaskellDepends = [
-         base base16-bytestring base64-bytestring bytestring Cabal
-         containers cryptohash-sha256 directory ed25519 filepath ghc-prim
-         mtl network network-uri parsec pretty tar template-haskell time
-         transformers zlib
-       ];
-       testHaskellDepends = [
-         base bytestring Cabal containers HUnit network-uri QuickCheck tar
-         tasty tasty-hunit tasty-quickcheck temporary time zlib
-       ];
-       homepage = "https://github.com/well-typed/hackage-security";
-       description = "Hackage security library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hackage-security_0_5_3_0" = callPackage
-    ({ mkDerivation, base, base16-bytestring, base64-bytestring
-     , bytestring, Cabal, containers, cryptohash-sha256, directory
      , ed25519, filepath, ghc-prim, mtl, network, network-uri, parsec
      , pretty, QuickCheck, tar, tasty, tasty-hunit, tasty-quickcheck
      , template-haskell, temporary, time, transformers, zlib
@@ -91171,7 +91293,6 @@ self: {
        homepage = "https://github.com/haskell/hackage-security";
        description = "Hackage security library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hackage-security-HTTP" = callPackage
@@ -92209,50 +92330,6 @@ self: {
     ({ mkDerivation, base, binary, blaze-html, blaze-markup, bytestring
      , containers, cryptohash, data-default, deepseq, directory
      , file-embed, filepath, fsnotify, http-conduit, http-types
-     , lrucache, mtl, network, network-uri, optparse-applicative, pandoc
-     , pandoc-citeproc, parsec, process, QuickCheck, random, regex-base
-     , regex-tdfa, resourcet, scientific, tagsoup, tasty, tasty-hunit
-     , tasty-quickcheck, text, time, time-locale-compat
-     , unordered-containers, utillinux, vector, wai, wai-app-static
-     , warp, yaml
-     }:
-     mkDerivation {
-       pname = "hakyll";
-       version = "4.12.0.1";
-       sha256 = "07alx008dg4q2ygwqf854r1nyizac0i3frkk23lzsfpzrbi784r0";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         base binary blaze-html blaze-markup bytestring containers
-         cryptohash data-default deepseq directory file-embed filepath
-         fsnotify http-conduit http-types lrucache mtl network network-uri
-         optparse-applicative pandoc pandoc-citeproc parsec process random
-         regex-base regex-tdfa resourcet scientific tagsoup text time
-         time-locale-compat unordered-containers vector wai wai-app-static
-         warp yaml
-       ];
-       executableHaskellDepends = [ base directory filepath ];
-       testHaskellDepends = [
-         base binary blaze-html blaze-markup bytestring containers
-         cryptohash data-default deepseq directory filepath fsnotify
-         http-conduit http-types lrucache mtl network network-uri
-         optparse-applicative pandoc pandoc-citeproc parsec process
-         QuickCheck random regex-base regex-tdfa resourcet scientific
-         tagsoup tasty tasty-hunit tasty-quickcheck text time
-         time-locale-compat unordered-containers vector wai wai-app-static
-         warp yaml
-       ];
-       testToolDepends = [ utillinux ];
-       homepage = "http://jaspervdj.be/hakyll";
-       description = "A static website compiler library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {inherit (pkgs) utillinux;};
-
-  "hakyll_4_12_1_0" = callPackage
-    ({ mkDerivation, base, binary, blaze-html, blaze-markup, bytestring
-     , containers, cryptohash, data-default, deepseq, directory
-     , file-embed, filepath, fsnotify, http-conduit, http-types
      , lrucache, mtl, network-uri, optparse-applicative, pandoc
      , pandoc-citeproc, parsec, process, QuickCheck, random, regex-tdfa
      , resourcet, scientific, tagsoup, tasty, tasty-hunit
@@ -92285,7 +92362,6 @@ self: {
        homepage = "http://jaspervdj.be/hakyll";
        description = "A static website compiler library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) utillinux;};
 
   "hakyll-R" = callPackage
@@ -93775,35 +93851,6 @@ self: {
     ({ mkDerivation, base, base64-bytestring, blaze-html, bytestring
      , containers, directory, exceptions, extensible-exceptions
      , filepath, hslogger, html, HUnit, monad-control, mtl, network
-     , network-uri, old-locale, parsec, process, sendfile, syb
-     , system-filepath, template-haskell, text, threads, time
-     , time-compat, transformers, transformers-base, transformers-compat
-     , unix, utf8-string, xhtml, zlib
-     }:
-     mkDerivation {
-       pname = "happstack-server";
-       version = "7.5.0.1";
-       sha256 = "05cb20rj4qys7r5kkbvjnm4bknfzwanf4r4yk1jq7a71x2sgcxc0";
-       libraryHaskellDepends = [
-         base base64-bytestring blaze-html bytestring containers directory
-         exceptions extensible-exceptions filepath hslogger html
-         monad-control mtl network network-uri old-locale parsec process
-         sendfile syb system-filepath template-haskell text threads time
-         time-compat transformers transformers-base transformers-compat unix
-         utf8-string xhtml zlib
-       ];
-       testHaskellDepends = [
-         base bytestring containers HUnit parsec zlib
-       ];
-       homepage = "http://happstack.com";
-       description = "Web related tools and services";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "happstack-server_7_5_1" = callPackage
-    ({ mkDerivation, base, base64-bytestring, blaze-html, bytestring
-     , containers, directory, exceptions, extensible-exceptions
-     , filepath, hslogger, html, HUnit, monad-control, mtl, network
      , network-uri, old-locale, parsec, process, semigroups, sendfile
      , syb, system-filepath, template-haskell, text, threads, time
      , time-compat, transformers, transformers-base, transformers-compat
@@ -93827,7 +93874,6 @@ self: {
        homepage = "http://happstack.com";
        description = "Web related tools and services";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "happstack-server-tls" = callPackage
@@ -98032,38 +98078,6 @@ self: {
      }) {};
 
   "hasmin" = callPackage
-    ({ mkDerivation, attoparsec, base, bifunctors, bytestring
-     , containers, criterion, directory, doctest, doctest-discover
-     , gitrev, hopfli, hspec, hspec-attoparsec, matrix, mtl, numbers
-     , optparse-applicative, parsers, QuickCheck, text
-     }:
-     mkDerivation {
-       pname = "hasmin";
-       version = "1.0.1";
-       sha256 = "1h5ygl9qmzmbhqfb58hhm2zw850dqfkp4b8cp3bhsnangg4lgbjk";
-       revision = "3";
-       editedCabalFile = "0v410xlx9riyhzxbqi2fx8qnw9i3k9cc6q24f0cz2ympl86f4019";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         attoparsec base bifunctors containers matrix mtl numbers parsers
-         text
-       ];
-       executableHaskellDepends = [
-         base bytestring gitrev hopfli optparse-applicative text
-       ];
-       testHaskellDepends = [
-         attoparsec base doctest doctest-discover hspec hspec-attoparsec mtl
-         QuickCheck text
-       ];
-       benchmarkHaskellDepends = [ base criterion directory text ];
-       homepage = "https://github.com/contivero/hasmin#readme";
-       description = "CSS Minifier";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "hasmin_1_0_2" = callPackage
     ({ mkDerivation, attoparsec, base, bytestring, containers
      , criterion, directory, doctest, doctest-discover, gitrev, hopfli
      , hspec, hspec-attoparsec, matrix, mtl, numbers
@@ -100431,8 +100445,8 @@ self: {
        pname = "heist";
        version = "1.0.1.2";
        sha256 = "0kpn5c3j7d42l12axd05hglhxqc4y7l0rz57lcqh3yznjl7mzv71";
-       revision = "2";
-       editedCabalFile = "0nyxym4jqkcxx0rim7vzfgr1hhmcgvgi3pann4192ahhsail8b2d";
+       revision = "3";
+       editedCabalFile = "0siqhy0svk9lfi8rx7lhjhjihrmjk6plvyjnhhyhvyakmycggqpc";
        libraryHaskellDepends = [
          aeson attoparsec base blaze-builder blaze-html bytestring
          containers directory directory-tree dlist filepath hashable
@@ -101046,14 +101060,14 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "herms_1_8_2_1" = callPackage
+  "herms_1_8_2_2" = callPackage
     ({ mkDerivation, ansi-terminal, base, brick, directory, microlens
      , microlens-th, optparse-applicative, semigroups, split, vty
      }:
      mkDerivation {
        pname = "herms";
-       version = "1.8.2.1";
-       sha256 = "0njp1jsz4clb6qyz00xrpw7av4109gx5wd4h180q794vi8xw6v4j";
+       version = "1.8.2.2";
+       sha256 = "0x6h1l9kikjqzyyxa23y9df6bdw529cr07g74qc2qbdbg39713zq";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -102890,9 +102904,12 @@ self: {
        pname = "hinduce-classifier-decisiontree";
        version = "0.0.0.1";
        sha256 = "1hdz4lbbpy2yc5j7chkagjvslsakmv3hbz2s7lpz0isfq7ls9idl";
+       revision = "1";
+       editedCabalFile = "16zh2f474ga3s1jzg58hv6q103gdxb3kl25g2cj0k14jxr4k15a2";
        libraryHaskellDepends = [
          base convertible hinduce-classifier hinduce-missingh layout
        ];
+       homepage = "https://github.com/roberth/hinduce-classifier-decisiontree#readme";
        description = "Decision Tree Classifiers for hInduce";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -103893,10 +103910,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-iadd";
-       version = "1.3.2";
-       sha256 = "1n21i1hqqrzd3fdrq6cclf8bfginwl4bhjy16vxfh9ba644920xf";
-       revision = "1";
-       editedCabalFile = "068fxn694km5sjbmmbhgaw512cxdv3m0kgjkaj8lbvpk5hnkd60b";
+       version = "1.3.3";
+       sha256 = "0fm5y2qyrg661q7y23f5abg78rbwz4jqkvlar8ns8wz9qwbml0ix";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -104397,30 +104412,6 @@ self: {
      }:
      mkDerivation {
        pname = "hmatrix-backprop";
-       version = "0.1.0.0";
-       sha256 = "088spv7149788iwda2pyf6fc9i40vq4dfziqldgxjrnngxw9z8iv";
-       libraryHaskellDepends = [
-         ANum backprop base ghc-typelits-knownnat ghc-typelits-natnormalise
-         hmatrix hmatrix-vector-sized microlens vector vector-sized
-       ];
-       testHaskellDepends = [
-         backprop base finite-typelits hedgehog hmatrix hmatrix-vector-sized
-         microlens microlens-platform vector-sized
-       ];
-       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-backprop_0_1_2_0" = callPackage
-    ({ mkDerivation, ANum, backprop, base, finite-typelits
-     , ghc-typelits-knownnat, ghc-typelits-natnormalise, hedgehog
-     , hmatrix, hmatrix-vector-sized, microlens, microlens-platform
-     , vector, vector-sized
-     }:
-     mkDerivation {
-       pname = "hmatrix-backprop";
        version = "0.1.2.0";
        sha256 = "0lrdy5zxl8kvzfsgb4i5lqvdaqpnwixgjnjsvkm89fw6ms86bqac";
        libraryHaskellDepends = [
@@ -107139,6 +107130,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hpio_0_9_0_6" = callPackage
+    ({ mkDerivation, async, base, bytestring, containers, directory
+     , doctest, exceptions, filepath, hspec, monad-control, monad-logger
+     , mtl, optparse-applicative, protolude, QuickCheck, text
+     , transformers, transformers-base, unix, unix-bytestring
+     }:
+     mkDerivation {
+       pname = "hpio";
+       version = "0.9.0.6";
+       sha256 = "07443kb6w1kwcg78j8jaffb5pblv9si7bvsmlg4dbm32m4wd66xx";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers directory exceptions filepath
+         monad-control monad-logger mtl protolude QuickCheck text
+         transformers transformers-base unix unix-bytestring
+       ];
+       executableHaskellDepends = [
+         async base exceptions mtl optparse-applicative protolude text
+         transformers
+       ];
+       testHaskellDepends = [
+         base containers directory doctest exceptions filepath hspec
+         protolude QuickCheck
+       ];
+       homepage = "https://github.com/quixoftic/hpio#readme";
+       description = "Monads for GPIO in Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hplayground" = callPackage
     ({ mkDerivation, base, containers, data-default, haste-compiler
      , haste-perch, monads-tf, transformers
@@ -107199,27 +107221,6 @@ self: {
      }:
      mkDerivation {
        pname = "hpp";
-       version = "0.5.1";
-       sha256 = "0bdx85k9c9cb5wkp91fi1sb0dahg6f4fknyddfh92wcywa485q9b";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base bytestring bytestring-trie directory filepath ghc-prim time
-         transformers
-       ];
-       executableHaskellDepends = [ base directory filepath time ];
-       testHaskellDepends = [ base bytestring transformers ];
-       homepage = "https://github.com/acowley/hpp";
-       description = "A Haskell pre-processor";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hpp_0_5_2" = callPackage
-    ({ mkDerivation, base, bytestring, bytestring-trie, directory
-     , filepath, ghc-prim, time, transformers
-     }:
-     mkDerivation {
-       pname = "hpp";
        version = "0.5.2";
        sha256 = "1r1sas1rcxcra4q3vjw3qmiv0xc4j263m7p93y6bwm1fvpxlkvcc";
        isLibrary = true;
@@ -107233,7 +107234,6 @@ self: {
        homepage = "https://github.com/acowley/hpp";
        description = "A Haskell pre-processor";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hpqtypes" = callPackage
@@ -108318,8 +108318,8 @@ self: {
      }:
      mkDerivation {
        pname = "hs2ats";
-       version = "0.2.1.10";
-       sha256 = "0cvp4l3w06yccdcbfhcbaazan9sfz72jd866w90gx7aibwqg2zsy";
+       version = "0.3.0.0";
+       sha256 = "1s92riisihcqim6hy4sa4z3dhk92dp2iyn32j0jl0qlpzdlbj4cp";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -108455,21 +108455,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "hsass_0_6_0" = callPackage
+  "hsass_0_7_0" = callPackage
     ({ mkDerivation, base, bytestring, data-default-class, filepath
-     , hlibsass, hspec, hspec-discover, monad-loops, temporary
+     , hlibsass, hspec, hspec-discover, monad-loops, temporary, text
      , transformers
      }:
      mkDerivation {
        pname = "hsass";
-       version = "0.6.0";
-       sha256 = "14wvgcp9skdqag16fvbbkfmimpxbm9y2hh9g6alacxasan8qjn6j";
+       version = "0.7.0";
+       sha256 = "0mqsj1jm37pqc1vwjs5y5mh4sfhdyclp1vdr7q5nq2a3pa3qwxbk";
        libraryHaskellDepends = [
          base bytestring data-default-class filepath hlibsass monad-loops
          transformers
        ];
        testHaskellDepends = [
          base bytestring data-default-class hspec hspec-discover temporary
+         text
        ];
        homepage = "https://github.com/jakubfijalkowski/hsass";
        description = "Integrating Sass into Haskell applications";
@@ -112280,8 +112281,8 @@ self: {
      }:
      mkDerivation {
        pname = "htoml-megaparsec";
-       version = "1.1.0.1";
-       sha256 = "10bgm0dqi2hni9sxjri2i7imfwqfi750pwwrpbghdvyfxrivfcpy";
+       version = "1.1.0.2";
+       sha256 = "0w59c20d4g64lldd6xfs82di56dbixmh6win6x80ddb1m0y9iaxd";
        libraryHaskellDepends = [
          base composition-prelude containers deepseq megaparsec mtl
          old-locale text time unordered-containers vector
@@ -112476,34 +112477,6 @@ self: {
      }:
      mkDerivation {
        pname = "http-client";
-       version = "0.5.11";
-       sha256 = "0mjm2d77i82jazq0602v34m5xiyxc15680zx6ay9ncspr7rhd6wp";
-       libraryHaskellDepends = [
-         array base blaze-builder bytestring case-insensitive containers
-         cookie deepseq exceptions filepath ghc-prim http-types memory
-         mime-types network network-uri random stm streaming-commons text
-         time transformers
-       ];
-       testHaskellDepends = [
-         async base blaze-builder bytestring case-insensitive containers
-         deepseq directory hspec http-types monad-control network
-         network-uri streaming-commons text time transformers zlib
-       ];
-       doCheck = false;
-       homepage = "https://github.com/snoyberg/http-client";
-       description = "An HTTP client engine";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "http-client_0_5_12" = callPackage
-    ({ mkDerivation, array, async, base, blaze-builder, bytestring
-     , case-insensitive, containers, cookie, deepseq, directory
-     , exceptions, filepath, ghc-prim, hspec, http-types, memory
-     , mime-types, monad-control, network, network-uri, random, stm
-     , streaming-commons, text, time, transformers, zlib
-     }:
-     mkDerivation {
-       pname = "http-client";
        version = "0.5.12";
        sha256 = "1m4c4zyl8y3i8bzyrgqv9kcjqzj17rwnf49dvn6745bn8kiyq6v0";
        libraryHaskellDepends = [
@@ -112521,7 +112494,6 @@ self: {
        homepage = "https://github.com/snoyberg/http-client";
        description = "An HTTP client engine";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "http-client-auth" = callPackage
@@ -114262,25 +114234,6 @@ self: {
      }) {};
 
   "hw-fingertree-strict" = callPackage
-    ({ mkDerivation, base, hedgehog, hspec, HUnit, hw-hspec-hedgehog
-     , QuickCheck, test-framework, test-framework-hunit
-     , test-framework-quickcheck2
-     }:
-     mkDerivation {
-       pname = "hw-fingertree-strict";
-       version = "0.1.0.2";
-       sha256 = "1ixkzdis47ic76g8cvwnigcr49256jbcpvqdrr6y8a7cvdvd41fv";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [
-         base hedgehog hspec HUnit hw-hspec-hedgehog QuickCheck
-         test-framework test-framework-hunit test-framework-quickcheck2
-       ];
-       homepage = "https://github.com/haskell-works/hw-fingertree-strict#readme";
-       description = "Generic strict finger-tree structure";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "hw-fingertree-strict_0_1_0_3" = callPackage
     ({ mkDerivation, base, deepseq, hedgehog, hspec, HUnit
      , hw-hspec-hedgehog, QuickCheck, test-framework
      , test-framework-hunit, test-framework-quickcheck2
@@ -114297,7 +114250,6 @@ self: {
        homepage = "https://github.com/haskell-works/hw-fingertree-strict#readme";
        description = "Generic strict finger-tree structure";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hw-hedgehog" = callPackage
@@ -114631,6 +114583,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "hw-rankselect-base_0_3_0_0" = callPackage
+    ({ mkDerivation, base, bits-extra, criterion, hedgehog, hspec
+     , hw-bits, hw-hedgehog, hw-hspec-hedgehog, hw-int, hw-prim
+     , hw-string-parse, QuickCheck, safe, vector
+     }:
+     mkDerivation {
+       pname = "hw-rankselect-base";
+       version = "0.3.0.0";
+       sha256 = "19gclmljps2nplfqch26grzagvsraafr4540s6x19x2m58aa3m7g";
+       libraryHaskellDepends = [
+         base bits-extra hw-bits hw-int hw-prim hw-string-parse safe vector
+       ];
+       testHaskellDepends = [
+         base bits-extra hedgehog hspec hw-bits hw-hedgehog
+         hw-hspec-hedgehog hw-prim QuickCheck vector
+       ];
+       benchmarkHaskellDepends = [
+         base bits-extra criterion hw-bits hw-prim vector
+       ];
+       homepage = "http://github.com/haskell-works/hw-rankselect-base#readme";
+       description = "Rank-select base";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "hw-string-parse" = callPackage
     ({ mkDerivation, base, bytestring, hspec, QuickCheck, vector }:
      mkDerivation {
@@ -114680,45 +114657,6 @@ self: {
 
   "hw-xml" = callPackage
     ({ mkDerivation, ansi-wl-pprint, array, attoparsec, base
-     , bytestring, cereal, conduit, containers, criterion, ghc-prim
-     , hspec, hw-balancedparens, hw-bits, hw-conduit, hw-parser, hw-prim
-     , hw-rankselect, hw-rankselect-base, lens, mmap, mtl, QuickCheck
-     , resourcet, transformers, vector, word8
-     }:
-     mkDerivation {
-       pname = "hw-xml";
-       version = "0.1.0.1";
-       sha256 = "0fhf0l6zpmrj76gkhbym8ds9dg270y22hdpqxrg11gxyrdymdnbd";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         ansi-wl-pprint array attoparsec base bytestring cereal conduit
-         containers ghc-prim hw-balancedparens hw-bits hw-conduit hw-parser
-         hw-prim hw-rankselect hw-rankselect-base lens mtl resourcet
-         transformers vector word8
-       ];
-       executableHaskellDepends = [
-         base bytestring hw-balancedparens hw-bits hw-prim hw-rankselect
-         vector
-       ];
-       testHaskellDepends = [
-         attoparsec base bytestring conduit hspec hw-balancedparens hw-bits
-         hw-conduit hw-prim hw-rankselect hw-rankselect-base QuickCheck
-         vector
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring conduit criterion hw-balancedparens hw-bits
-         hw-conduit hw-prim mmap resourcet vector
-       ];
-       homepage = "http://github.com/haskell-works/hw-xml#readme";
-       description = "Conduits for tokenizing streams";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "hw-xml_0_1_0_3" = callPackage
-    ({ mkDerivation, ansi-wl-pprint, array, attoparsec, base
      , bytestring, cereal, conduit, containers, criterion, deepseq
      , ghc-prim, hspec, hw-balancedparens, hw-bits, hw-conduit
      , hw-parser, hw-prim, hw-rankselect, hw-rankselect-base, lens, mmap
@@ -118828,10 +118766,8 @@ self: {
      }:
      mkDerivation {
        pname = "int-cast";
-       version = "0.1.2.0";
-       sha256 = "0gfx3pg0n1jyn8z2q804iyc24ahi41sjr3h7v5ivzc3g57vi1ykb";
-       revision = "2";
-       editedCabalFile = "14i728sy9y38zjm9xcjqyg9jjnayzdpzplpff2cdpc9jk596fmcs";
+       version = "0.2.0.0";
+       sha256 = "0s8rqm5d9f4y2sskajsw8ff7q8xp52vwqa18m6bajldp11m9a1p0";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [
          base QuickCheck test-framework test-framework-quickcheck2
@@ -120517,8 +120453,8 @@ self: {
      }:
      mkDerivation {
        pname = "iso8583-bitmaps";
-       version = "0.1.0.0";
-       sha256 = "0w6m8ygpy1g95zvmbzq9402rxh4dj48i5bhcdzc4s0kig239gzqd";
+       version = "0.1.1.0";
+       sha256 = "04i557469q2ablwmlwg35jazh7mpd1cgbrzl02xbvn4xbg7n2fcr";
        libraryHaskellDepends = [
          base binary bytestring containers parsec syb template-haskell
          th-lift
@@ -122921,8 +122857,29 @@ self: {
      }:
      mkDerivation {
        pname = "json-stream";
-       version = "0.4.2.0";
-       sha256 = "06y8q95vyavcbvq5z4zh50jn3djhlj1xq7yv8dns7gxfc5fvdndy";
+       version = "0.4.2.2";
+       sha256 = "14savrbhxb7pxxphfhh6z5fh5xqfxrnk9j7g0268dl2hpnzx4rvh";
+       libraryHaskellDepends = [
+         aeson base bytestring scientific text unordered-containers vector
+       ];
+       testHaskellDepends = [
+         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";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "json-stream_0_4_2_3" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, directory, hspec
+     , QuickCheck, quickcheck-unicode, scientific, text
+     , unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "json-stream";
+       version = "0.4.2.3";
+       sha256 = "0ijic6vfrpykzy7j3li94fjmaj1vclvp0in1ymb5z5whvljlynw7";
        libraryHaskellDepends = [
          aeson base bytestring scientific text unordered-containers vector
        ];
@@ -122933,6 +122890,7 @@ self: {
        homepage = "https://github.com/ondrap/json-stream";
        description = "Incremental applicative JSON parser";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "json-togo" = callPackage
@@ -126741,6 +126699,32 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "language-c-quote_0_12_2" = callPackage
+    ({ mkDerivation, alex, array, base, bytestring, containers
+     , exception-mtl, exception-transformers, filepath, happy
+     , haskell-src-meta, HUnit, mainland-pretty, mtl, srcloc, syb
+     , symbol, template-haskell, test-framework, test-framework-hunit
+     }:
+     mkDerivation {
+       pname = "language-c-quote";
+       version = "0.12.2";
+       sha256 = "15c6rdj91768jf8lqzf4fkbi8k6kz9gch5w81x6qzy2l256rncgb";
+       libraryHaskellDepends = [
+         array base bytestring containers exception-mtl
+         exception-transformers filepath haskell-src-meta mainland-pretty
+         mtl srcloc syb symbol template-haskell
+       ];
+       libraryToolDepends = [ alex happy ];
+       testHaskellDepends = [
+         base bytestring HUnit mainland-pretty srcloc symbol test-framework
+         test-framework-hunit
+       ];
+       homepage = "https://github.com/mainland/language-c-quote";
+       description = "C/CUDA/OpenCL/Objective-C quasiquoting library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "language-cil" = callPackage
     ({ mkDerivation, base, bool-extras }:
      mkDerivation {
@@ -127675,8 +127659,8 @@ self: {
      }:
      mkDerivation {
        pname = "lapack";
-       version = "0.0";
-       sha256 = "04g5w3gdq4x7vkaw6x36xad7hjmah3iynqnp6xncac31ykkmbwgl";
+       version = "0.1";
+       sha256 = "195v3jpz5n5vksa8svqng1kwc629ds2kd1p55f6npz2q2j6k8lac";
        libraryHaskellDepends = [
          base blas-ffi comfort-array lapack-ffi netlib-ffi non-empty
          transformers utility-ht
@@ -127705,6 +127689,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "lapack-carray_0_0_2" = callPackage
+    ({ mkDerivation, base, carray, lapack-ffi, netlib-carray
+     , netlib-ffi, storable-complex, transformers
+     }:
+     mkDerivation {
+       pname = "lapack-carray";
+       version = "0.0.2";
+       sha256 = "1dr4mbhc5y21mbnksyi530rsvckfp4mclhhig2rjhx3b06cksfna";
+       libraryHaskellDepends = [
+         base carray lapack-ffi netlib-carray netlib-ffi storable-complex
+         transformers
+       ];
+       homepage = "http://hub.darcs.net/thielema/lapack-carray/";
+       description = "Auto-generated interface to Fortran LAPACK via CArrays";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "lapack-ffi" = callPackage
     ({ mkDerivation, base, liblapack, netlib-ffi }:
      mkDerivation {
@@ -127719,6 +127721,20 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) liblapack;};
 
+  "lapack-ffi_0_0_2" = callPackage
+    ({ mkDerivation, base, liblapack, netlib-ffi }:
+     mkDerivation {
+       pname = "lapack-ffi";
+       version = "0.0.2";
+       sha256 = "11759avf0kzkqy4s24kn556j93l10x28njpg6h14y915pdl35dyl";
+       libraryHaskellDepends = [ base netlib-ffi ];
+       libraryPkgconfigDepends = [ liblapack ];
+       homepage = "http://hub.darcs.net/thielema/lapack-ffi/";
+       description = "Auto-generated interface to Fortran LAPACK";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) liblapack;};
+
   "lapack-ffi-tools" = callPackage
     ({ mkDerivation, base, bytestring, cassava, containers
      , explicit-exception, filepath, non-empty, optparse-applicative
@@ -135085,21 +135101,21 @@ self: {
      , composition-prelude, containers, criterion, directory, file-embed
      , hspec, hspec-megaparsec, http-client, http-client-tls, megaparsec
      , MonadRandom, mtl, optparse-applicative, random-shuffle
-     , recursion-schemes, recursion-schemes-ext, tar, template-haskell
-     , text, th-lift-instances, titlecase, zip-archive, zlib
+     , recursion-schemes, tar, template-haskell, text, th-lift-instances
+     , titlecase, zip-archive, zlib
      }:
      mkDerivation {
        pname = "madlang";
-       version = "4.0.2.0";
-       sha256 = "1syq92bxbyf5nxywpm1prds9ki63a601v55cjba1dalv3z2zh6n6";
+       version = "4.0.2.2";
+       sha256 = "1g02ky5a1fy9g8sp1i3r7m1gjkajza3npj8dqr0chfxkm8ki6hfx";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cli-setup ];
        libraryHaskellDepends = [
          ansi-wl-pprint base binary composition-prelude containers directory
          file-embed http-client http-client-tls megaparsec MonadRandom mtl
-         random-shuffle recursion-schemes recursion-schemes-ext tar
-         template-haskell text th-lift-instances titlecase zip-archive zlib
+         random-shuffle recursion-schemes tar template-haskell text
+         th-lift-instances titlecase zip-archive zlib
        ];
        executableHaskellDepends = [
          base directory megaparsec optparse-applicative text
@@ -135381,6 +135397,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "mainland-pretty_0_7" = callPackage
+    ({ mkDerivation, base, containers, srcloc, text, transformers }:
+     mkDerivation {
+       pname = "mainland-pretty";
+       version = "0.7";
+       sha256 = "1xzavchbp345a63i24hs8632l3xk0c1pxqd32b2i6615cp9pnxqi";
+       libraryHaskellDepends = [
+         base containers srcloc text transformers
+       ];
+       homepage = "https://github.com/mainland/mainland-pretty";
+       description = "Pretty printing designed for printing source code";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "majordomo" = callPackage
     ({ mkDerivation, base, bytestring, cmdargs, monad-loops, old-locale
      , threads, time, unix, zeromq-haskell
@@ -136113,6 +136144,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "map-syntax_0_3" = callPackage
+    ({ mkDerivation, base, containers, deepseq, hspec, HUnit, mtl
+     , QuickCheck, transformers
+     }:
+     mkDerivation {
+       pname = "map-syntax";
+       version = "0.3";
+       sha256 = "0b3ddi998saw5gi5r4bjbpid03rxlifn08zv15wf0b90ambhcc4k";
+       libraryHaskellDepends = [ base containers mtl ];
+       testHaskellDepends = [
+         base containers deepseq hspec HUnit mtl QuickCheck transformers
+       ];
+       description = "Syntax sugar for defining maps";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "mappy" = callPackage
     ({ mkDerivation, ansi-terminal, base, containers, directory
      , haskeline, hspec, parsec, QuickCheck
@@ -136196,30 +136244,6 @@ self: {
      }:
      mkDerivation {
        pname = "markdown";
-       version = "0.1.17";
-       sha256 = "11bcbhrlfddjlifrab46qywbrabxcf8hg1zp26l17dlxs3nm681w";
-       libraryHaskellDepends = [
-         attoparsec base blaze-html blaze-markup conduit conduit-extra
-         containers data-default text transformers xml-conduit xml-types
-         xss-sanitize
-       ];
-       testHaskellDepends = [
-         base blaze-html call-stack conduit conduit-extra containers
-         directory filepath hspec text transformers
-       ];
-       homepage = "https://github.com/snoyberg/markdown";
-       description = "Convert Markdown to HTML, with XSS protection";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "markdown_0_1_17_1" = callPackage
-    ({ mkDerivation, attoparsec, base, blaze-html, blaze-markup
-     , call-stack, conduit, conduit-extra, containers, data-default
-     , directory, filepath, hspec, text, transformers, xml-conduit
-     , xml-types, xss-sanitize
-     }:
-     mkDerivation {
-       pname = "markdown";
        version = "0.1.17.1";
        sha256 = "0n1vcw0vmhpgsmyxxafc82r2kp27g081zwx9md96zj5x5642vxz1";
        libraryHaskellDepends = [
@@ -136234,7 +136258,6 @@ self: {
        homepage = "https://github.com/snoyberg/markdown";
        description = "Convert Markdown to HTML, with XSS protection";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "markdown-kate" = callPackage
@@ -137880,8 +137903,8 @@ self: {
      }:
      mkDerivation {
        pname = "mellon-core";
-       version = "0.8.0.6";
-       sha256 = "07dhbqw0x7vbwzkhf1wh083h4b8xrw8sv75db2s72zgjrh8igpfm";
+       version = "0.8.0.7";
+       sha256 = "1nlqqkmm4163260zgl9cqxrd47iy3fpdyhd52y79c2cr1mqjw39q";
        libraryHaskellDepends = [
          async base mtl protolude time transformers
        ];
@@ -137898,8 +137921,8 @@ self: {
     ({ mkDerivation, base, hpio, mellon-core, protolude }:
      mkDerivation {
        pname = "mellon-gpio";
-       version = "0.8.0.6";
-       sha256 = "08mr37wmg1paigbhs1wv7rpdxkhy2jiba8nd22rg1lhscc04k7g1";
+       version = "0.8.0.7";
+       sha256 = "0hg878il0d31lfqwkb3rsd7gxbhs5cb1sxgc3rwdv70fdg63iirp";
        libraryHaskellDepends = [ base hpio mellon-core protolude ];
        homepage = "https://github.com/quixoftic/mellon#readme";
        description = "GPIO support for mellon";
@@ -137911,34 +137934,37 @@ self: {
      , exceptions, hpio, hspec, hspec-wai, http-client, http-client-tls
      , http-types, lens, lucid, mellon-core, mellon-gpio, mtl, network
      , optparse-applicative, protolude, QuickCheck, quickcheck-instances
-     , servant, servant-client, servant-docs, servant-lucid
-     , servant-server, servant-swagger, servant-swagger-ui, swagger2
-     , text, time, transformers, wai, wai-extra, warp
+     , servant, servant-client, servant-client-core, servant-docs
+     , servant-lucid, servant-server, servant-swagger
+     , servant-swagger-ui, swagger2, text, time, transformers, wai
+     , wai-extra, warp
      }:
      mkDerivation {
        pname = "mellon-web";
-       version = "0.8.0.6";
-       sha256 = "0hfb2gkfn9kdg8a5n6l8c7jky8d4545qqlpdzl2qv63500nr4wz3";
+       version = "0.8.0.7";
+       sha256 = "1m3ch98i8wzhi7g2c2l9klp0a3xcqfwfbq6ad6grl43v8fh1q737";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson aeson-pretty base bytestring http-client http-types lens
-         lucid mellon-core protolude servant servant-client servant-docs
-         servant-lucid servant-server servant-swagger servant-swagger-ui
-         swagger2 text time transformers wai warp
+         lucid mellon-core protolude servant servant-client
+         servant-client-core servant-docs servant-lucid servant-server
+         servant-swagger servant-swagger-ui swagger2 text time transformers
+         wai warp
        ];
        executableHaskellDepends = [
          base bytestring exceptions hpio http-client http-client-tls
          http-types mellon-core mellon-gpio mtl network optparse-applicative
-         protolude servant-client time transformers warp
+         protolude servant-client servant-client-core time transformers warp
        ];
        testHaskellDepends = [
          aeson aeson-pretty base bytestring doctest hspec hspec-wai
          http-client http-types lens lucid mellon-core network protolude
-         QuickCheck quickcheck-instances servant servant-client servant-docs
-         servant-lucid servant-server servant-swagger servant-swagger-ui
-         swagger2 text time transformers wai wai-extra warp
+         QuickCheck quickcheck-instances servant servant-client
+         servant-client-core servant-docs servant-lucid servant-server
+         servant-swagger servant-swagger-ui swagger2 text time transformers
+         wai wai-extra warp
        ];
        homepage = "https://github.com/quixoftic/mellon#readme";
        description = "A REST web service for Mellon controllers";
@@ -140409,6 +140435,31 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "modify-fasta_0_8_3_0" = callPackage
+    ({ mkDerivation, base, containers, fasta, mtl, optparse-applicative
+     , pipes, pipes-text, regex-tdfa, regex-tdfa-text, semigroups, split
+     , text, text-show, transformers
+     }:
+     mkDerivation {
+       pname = "modify-fasta";
+       version = "0.8.3.0";
+       sha256 = "1hvn55c0cg4h2980ia28b2n2r9p7p0rqyfr5wvkkqyhz4si7dp9r";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers fasta regex-tdfa regex-tdfa-text split text
+         text-show
+       ];
+       executableHaskellDepends = [
+         base containers fasta mtl optparse-applicative pipes pipes-text
+         semigroups split text transformers
+       ];
+       homepage = "https://github.com/GregorySchwartz/modify-fasta";
+       description = "Modify fasta (and CLIP) files in several optional ways";
+       license = stdenv.lib.licenses.gpl3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "modsplit" = callPackage
     ({ mkDerivation, base, directory, filepath, haskell98, mtl
      , utf8-string
@@ -140663,8 +140714,8 @@ self: {
      }:
      mkDerivation {
        pname = "monad-abort-fd";
-       version = "0.6.2";
-       sha256 = "0lnqzilm1y5v0p9p7n5qbgcqq1r39fdj7n8i5dy9ygi35p5qw93h";
+       version = "0.7";
+       sha256 = "0w1v39n93zg6i22qx312m6z8pc35im3whp5sb13wfvj2ws0nl1z7";
        libraryHaskellDepends = [
          base mtl stm transformers transformers-abort transformers-base
          transformers-compat
@@ -140816,22 +140867,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-control-aligned";
-       version = "0.0.1";
-       sha256 = "11s226d80dbzq7as6ik077hg82swfj2svlk662l32sc9y03m3dyx";
-       libraryHaskellDepends = [
-         base stm transformers transformers-base transformers-compat
-       ];
-       homepage = "https://github.com/athanclark/monad-control#readme";
-       description = "Just like monad-control, except less efficient, and the monadic state terms are all * -> *";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "monad-control-aligned_0_0_1_1" = callPackage
-    ({ mkDerivation, base, stm, transformers, transformers-base
-     , transformers-compat
-     }:
-     mkDerivation {
-       pname = "monad-control-aligned";
        version = "0.0.1.1";
        sha256 = "1xhiw1g0p8zljhy8yz43ljnwhhqn6dwxqi06mdsfji365p9qzrs4";
        libraryHaskellDepends = [
@@ -140840,7 +140875,6 @@ self: {
        homepage = "https://github.com/athanclark/monad-control#readme";
        description = "Just like monad-control, except less efficient, and the monadic state terms are all * -> *";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "monad-coroutine" = callPackage
@@ -140916,8 +140950,8 @@ self: {
      }:
      mkDerivation {
        pname = "monad-finally";
-       version = "0.1.1";
-       sha256 = "0f2bb8l00vqsswsckc6zgnzl372jg1w7c1zgpcj8fq8bnvia23hb";
+       version = "0.1.2";
+       sha256 = "1vg9mg748frf63l428wsdjdbf25pphjqixdslvlwgvf8d1ayl2xz";
        libraryHaskellDepends = [
          base monad-abort-fd monad-control transformers transformers-abort
          transformers-base transformers-compat
@@ -141101,30 +141135,6 @@ self: {
      }:
      mkDerivation {
        pname = "monad-logger";
-       version = "0.3.28.2";
-       sha256 = "1dqrsqpqw4qfyida4j0z6dffds4sj7j282x4ir6wrq9j7nmns4yx";
-       revision = "1";
-       editedCabalFile = "1mk69zg6bbh0420ndf5f0qgsdzy11mn0pdcqgyna4r0pqkzflc0i";
-       libraryHaskellDepends = [
-         base bytestring conduit conduit-extra exceptions fast-logger
-         lifted-base monad-control monad-loops mtl resourcet stm stm-chans
-         template-haskell text transformers transformers-base
-         transformers-compat unliftio-core
-       ];
-       homepage = "https://github.com/kazu-yamamoto/logger";
-       description = "A class of monads which can log messages";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "monad-logger_0_3_28_3" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, conduit-extra
-     , exceptions, fast-logger, lifted-base, monad-control, monad-loops
-     , mtl, resourcet, stm, stm-chans, template-haskell, text
-     , transformers, transformers-base, transformers-compat
-     , unliftio-core
-     }:
-     mkDerivation {
-       pname = "monad-logger";
        version = "0.3.28.3";
        sha256 = "11v5014zqp1sl801wc39yyix8m30vrf3ibas28bcdjyfrbhhvskp";
        libraryHaskellDepends = [
@@ -141136,7 +141146,6 @@ self: {
        homepage = "https://github.com/kazu-yamamoto/logger";
        description = "A class of monads which can log messages";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "monad-logger-json" = callPackage
@@ -141643,11 +141652,11 @@ self: {
     ({ mkDerivation, base, mtl }:
      mkDerivation {
        pname = "monad-supply";
-       version = "0.6";
-       sha256 = "1gg4r7fwaq2fa0lz8pz301mk3q16xpbs7qv54hhggxrv3i1h33ir";
+       version = "0.7";
+       sha256 = "1786rj4n0rrjpp07gn2y8vwpf6ijkjaim1q34rq7lvbjx1fhr2z5";
        libraryHaskellDepends = [ base mtl ];
        description = "Stateful supply monad";
-       license = "unknown";
+       license = stdenv.lib.licenses.mit;
      }) {};
 
   "monad-task" = callPackage
@@ -141677,6 +141686,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "monad-time_0_3_0_0" = callPackage
+    ({ mkDerivation, base, mtl, time }:
+     mkDerivation {
+       pname = "monad-time";
+       version = "0.3.0.0";
+       sha256 = "0adl246zrj2ryxx9b0a0c0d5gia1am21k0i0m3k2dwivhypdyq81";
+       libraryHaskellDepends = [ base mtl time ];
+       testHaskellDepends = [ base mtl time ];
+       homepage = "https://github.com/scrive/monad-time";
+       description = "Type class for monads which carry the notion of the current time";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "monad-timing" = callPackage
     ({ mkDerivation, base, containers, exceptions, hlint, hspec
      , monad-control, mtl, time, transformers, transformers-base
@@ -146459,6 +146482,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "netlib-carray_0_0_1_1" = callPackage
+    ({ mkDerivation, base, carray, netlib-ffi, transformers }:
+     mkDerivation {
+       pname = "netlib-carray";
+       version = "0.0.1.1";
+       sha256 = "1vxyffhpayyxwak36b9i7gw35gz61ym9lxnhk45l0h4js3v05iwv";
+       libraryHaskellDepends = [ base carray netlib-ffi transformers ];
+       homepage = "http://hub.darcs.net/thielema/netlib-carray/";
+       description = "Helper modules for CArray wrappers to BLAS and LAPACK";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "netlib-ffi" = callPackage
     ({ mkDerivation, base, storable-complex, transformers }:
      mkDerivation {
@@ -146471,6 +146507,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "netlib-ffi_0_1" = callPackage
+    ({ mkDerivation, base, storable-complex, transformers }:
+     mkDerivation {
+       pname = "netlib-ffi";
+       version = "0.1";
+       sha256 = "0ckwa5r8fx2j7qb5phy6gm3xbg9crr9amglcicdxgnzgjd8aap2h";
+       libraryHaskellDepends = [ base storable-complex transformers ];
+       homepage = "http://hub.darcs.net/thielema/netlib-ffi/";
+       description = "Helper modules for FFI to BLAS and LAPACK";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "netlines" = callPackage
     ({ mkDerivation, base, bytestring, contstuff, enumerator, HTF
      , random, text, time
@@ -146707,23 +146756,6 @@ self: {
      }:
      mkDerivation {
        pname = "netwire";
-       version = "5.0.2";
-       sha256 = "10yd28himql3gkilxzwky3d87k2nva43vmb7s5ayaqicchchyyad";
-       libraryHaskellDepends = [
-         base containers deepseq parallel profunctors random semigroups time
-         transformers
-       ];
-       homepage = "https://github.com/esoeylemez/netwire";
-       description = "Functional reactive programming library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "netwire_5_0_3" = callPackage
-    ({ mkDerivation, base, containers, deepseq, parallel, profunctors
-     , random, semigroups, time, transformers
-     }:
-     mkDerivation {
-       pname = "netwire";
        version = "5.0.3";
        sha256 = "0bi2xyipz11vsai4wghdrh5yywzl0bkinfpmh0qdp77y7qlygpgi";
        libraryHaskellDepends = [
@@ -146733,7 +146765,6 @@ self: {
        homepage = "https://github.com/esoeylemez/netwire";
        description = "Functional reactive programming library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "netwire-input" = callPackage
@@ -146824,24 +146855,6 @@ self: {
      }) {};
 
   "network" = callPackage
-    ({ mkDerivation, base, bytestring, directory, doctest, HUnit
-     , test-framework, test-framework-hunit, unix
-     }:
-     mkDerivation {
-       pname = "network";
-       version = "2.6.3.4";
-       sha256 = "1yswp78fg7i1w1inn6p07vhz7lmfs33niavxhq60z6yv0qx2c3dw";
-       libraryHaskellDepends = [ base bytestring unix ];
-       testHaskellDepends = [
-         base bytestring directory doctest HUnit test-framework
-         test-framework-hunit
-       ];
-       homepage = "https://github.com/haskell/network";
-       description = "Low-level networking interface";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "network_2_6_3_5" = callPackage
     ({ mkDerivation, base, bytestring, doctest, hspec, HUnit, unix }:
      mkDerivation {
        pname = "network";
@@ -146852,7 +146865,6 @@ self: {
        homepage = "https://github.com/haskell/network";
        description = "Low-level networking interface";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "network-address" = callPackage
@@ -147227,25 +147239,12 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "network-info";
-       version = "0.2.0.9";
-       sha256 = "0rmajccwhkf0p4inb8jjj0dzsksgn663w90km00xvf4mq3pkjab3";
-       libraryHaskellDepends = [ base ];
-       homepage = "http://github.com/jystic/network-info";
-       description = "Access the local computer's basic network configuration";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "network-info_0_2_0_10" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "network-info";
        version = "0.2.0.10";
        sha256 = "0anmgzcpnz7nw3n6vq0r25m1s9l2svpwi83wza0lzkrlbnbzd02n";
        libraryHaskellDepends = [ base ];
        homepage = "http://github.com/jystic/network-info";
        description = "Access the local computer's basic network configuration";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "network-interfacerequest" = callPackage
@@ -150454,8 +150453,8 @@ self: {
      }:
      mkDerivation {
        pname = "odbc";
-       version = "0.0.2";
-       sha256 = "005g8vdxs9gdh5n4dlsjcfdxx2ry5x02fbjd5w814l3k7fynbq5b";
+       version = "0.0.4";
+       sha256 = "1fh8yqdycna3if5dd55qc6hic70nwy71vjy2yflzvpjpqkdd8qz6";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -151618,26 +151617,6 @@ self: {
      }) {};
 
   "openpgp-asciiarmor" = callPackage
-    ({ mkDerivation, attoparsec, base, base64-bytestring, bytestring
-     , cereal, HUnit, test-framework, test-framework-hunit
-     }:
-     mkDerivation {
-       pname = "openpgp-asciiarmor";
-       version = "0.1";
-       sha256 = "1xrv0n7n1n8izvxvqm8wmj6mkn5l6wcq18bxs9zd1q5riynmmm2w";
-       libraryHaskellDepends = [
-         attoparsec base base64-bytestring bytestring cereal
-       ];
-       testHaskellDepends = [
-         attoparsec base base64-bytestring bytestring cereal HUnit
-         test-framework test-framework-hunit
-       ];
-       homepage = "http://floss.scru.org/openpgp-asciiarmor";
-       description = "OpenPGP (RFC4880) ASCII Armor codec";
-       license = "unknown";
-     }) {};
-
-  "openpgp-asciiarmor_0_1_1" = callPackage
     ({ mkDerivation, attoparsec, base, base64-bytestring, binary
      , bytestring, criterion, tasty, tasty-hunit
      }:
@@ -151656,7 +151635,6 @@ self: {
        homepage = "http://floss.scru.org/openpgp-asciiarmor";
        description = "OpenPGP (RFC4880) ASCII Armor codec";
        license = stdenv.lib.licenses.isc;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "openpgp-crypto-api" = callPackage
@@ -157096,25 +157074,6 @@ self: {
      }:
      mkDerivation {
        pname = "persistable-record";
-       version = "0.6.0.2";
-       sha256 = "1sj2izz8ppam28qcja02jj6fx7khdjmnr4xn2yglbxyzs91fjg44";
-       libraryHaskellDepends = [
-         array base containers dlist names-th product-isomorphic
-         template-haskell th-data-compat transformers
-       ];
-       testHaskellDepends = [ base quickcheck-simple ];
-       homepage = "http://khibino.github.io/haskell-relational-record/";
-       description = "Binding between SQL database values and haskell records";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "persistable-record_0_6_0_3" = callPackage
-    ({ mkDerivation, array, base, containers, dlist, names-th
-     , product-isomorphic, quickcheck-simple, template-haskell
-     , th-data-compat, transformers
-     }:
-     mkDerivation {
-       pname = "persistable-record";
        version = "0.6.0.3";
        sha256 = "12arj395b1famyy0hxp394ci2y3mkly68i82a26p67g5dpmdm466";
        libraryHaskellDepends = [
@@ -157125,7 +157084,6 @@ self: {
        homepage = "http://khibino.github.io/haskell-relational-record/";
        description = "Binding between SQL database values and haskell records";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "persistable-types-HDBC-pg" = callPackage
@@ -157997,6 +157955,8 @@ self: {
        pname = "pgdl";
        version = "10.10";
        sha256 = "0wqj7i4shdcy80aiib0dkp3y6ccilqq4g3p8bvndh4vl3cyd2pwv";
+       revision = "1";
+       editedCabalFile = "17d525qv26y15zbc7kl0vdxfi7n1v1g8v9r821a96dd49zkccsck";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -160503,8 +160463,8 @@ self: {
      }:
      mkDerivation {
        pname = "ploton";
-       version = "1.1.2.0";
-       sha256 = "11a4kij1bz38bklaanlsyzwdvps7v9c0c8w4yblmxxdwxwdfvi6g";
+       version = "1.1.3.0";
+       sha256 = "1bq2qnzlms6j6hl7d728h5mc672h0lpbxcxfh2bz327nhhqid3hn";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -161803,8 +161763,27 @@ self: {
      }:
      mkDerivation {
        pname = "posix-paths";
-       version = "0.2.1.3";
-       sha256 = "1z5brmqraz2smpgbp3ldd9da0cz78glc8bfc5l6842qgc588iljp";
+       version = "0.2.1.4";
+       sha256 = "0axaq7249nmg17b0qx9374xhgb7wzfdaa6pkriq218h4jnfiq1r6";
+       libraryHaskellDepends = [ base bytestring unix ];
+       testHaskellDepends = [
+         base bytestring doctest HUnit QuickCheck unix
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring criterion directory filepath process unix
+       ];
+       description = "POSIX filepath/directory functionality";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "posix-paths_0_2_1_5" = callPackage
+    ({ mkDerivation, base, bytestring, criterion, directory, doctest
+     , filepath, HUnit, process, QuickCheck, unix
+     }:
+     mkDerivation {
+       pname = "posix-paths";
+       version = "0.2.1.5";
+       sha256 = "1pyi25gz2r3pc64f1i5awyp3mg5w74ik9wh5s9i9hs7bfmkjk1as";
        libraryHaskellDepends = [ base bytestring unix ];
        testHaskellDepends = [
          base bytestring doctest HUnit QuickCheck unix
@@ -161814,6 +161793,7 @@ self: {
        ];
        description = "POSIX filepath/directory functionality";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "posix-pty" = callPackage
@@ -162420,31 +162400,6 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-typed";
-       version = "0.5.2";
-       sha256 = "0ws9xmh199jsvdmxjxkhm59j05ljfsrf16xchkbxqd8p1pg8786c";
-       libraryHaskellDepends = [
-         aeson array attoparsec base binary bytestring containers cryptonite
-         haskell-src-meta HDBC memory network old-locale postgresql-binary
-         scientific template-haskell text time utf8-string uuid
-       ];
-       testHaskellDepends = [
-         base bytestring containers convertible HDBC HUnit network
-         QuickCheck time
-       ];
-       homepage = "https://github.com/dylex/postgresql-typed";
-       description = "PostgreSQL interface with compile-time SQL type checking, optional HDBC backend";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "postgresql-typed_0_5_3_0" = callPackage
-    ({ mkDerivation, aeson, array, attoparsec, base, binary, bytestring
-     , containers, convertible, cryptonite, haskell-src-meta, HDBC
-     , HUnit, memory, network, old-locale, postgresql-binary, QuickCheck
-     , scientific, template-haskell, text, time, utf8-string, uuid
-     }:
-     mkDerivation {
-       pname = "postgresql-typed";
        version = "0.5.3.0";
        sha256 = "0apq662lhkjc1xl4alpz20yz20x6mf3gz6li7wb86sp94441rh5k";
        libraryHaskellDepends = [
@@ -162723,8 +162678,8 @@ self: {
      }:
      mkDerivation {
        pname = "potoki-hasql";
-       version = "1.1.0.1";
-       sha256 = "0prm47qw591nm47b42jznhgvy49w6zpiwhrkxgh3jy9y0xnqr81b";
+       version = "1.2";
+       sha256 = "1viq19rycrm8zdwj3anqam45hlmdlh9wqji3xf120nk8ffqnwks1";
        libraryHaskellDepends = [
          base bytestring hasql potoki potoki-core profunctors text vector
        ];
@@ -165731,26 +165686,6 @@ self: {
 
   "protolude" = callPackage
     ({ mkDerivation, array, async, base, bytestring, containers
-     , deepseq, ghc-prim, hashable, mtl, mtl-compat, safe, stm, text
-     , transformers, transformers-compat
-     }:
-     mkDerivation {
-       pname = "protolude";
-       version = "0.2.1";
-       sha256 = "1r2baxx6q4z75sswirlqsnyynk4i7amfmpzajggh31fbz13hxgxx";
-       revision = "2";
-       editedCabalFile = "03w9051jdbldbid9iyvibdhxdr73cawrvp9qdsc0czxix5ggfr75";
-       libraryHaskellDepends = [
-         array async base bytestring containers deepseq ghc-prim hashable
-         mtl mtl-compat safe stm text transformers transformers-compat
-       ];
-       homepage = "https://github.com/sdiehl/protolude";
-       description = "A small prelude";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "protolude_0_2_2" = callPackage
-    ({ mkDerivation, array, async, base, bytestring, containers
      , deepseq, ghc-prim, hashable, mtl, mtl-compat, stm, text
      , transformers, transformers-compat
      }:
@@ -165765,7 +165700,6 @@ self: {
        homepage = "https://github.com/sdiehl/protolude";
        description = "A small prelude";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "protolude-lifted" = callPackage
@@ -172038,18 +171972,6 @@ self: {
      }) {};
 
   "reform" = callPackage
-    ({ mkDerivation, base, containers, mtl, text }:
-     mkDerivation {
-       pname = "reform";
-       version = "0.2.7.1";
-       sha256 = "0c4jh64rszp9rk62kh8nqyhafnbi5vm9lmc2rx7fx237j24j3gjr";
-       libraryHaskellDepends = [ base containers mtl text ];
-       homepage = "http://www.happstack.com/";
-       description = "reform is a type-safe HTML form generation and validation library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "reform_0_2_7_2" = callPackage
     ({ mkDerivation, base, containers, mtl, semigroups, text }:
      mkDerivation {
        pname = "reform";
@@ -172059,7 +171981,6 @@ self: {
        homepage = "http://www.happstack.com/";
        description = "reform is a type-safe HTML form generation and validation library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "reform-blaze" = callPackage
@@ -174520,8 +174441,8 @@ self: {
      }:
      mkDerivation {
        pname = "rest-client";
-       version = "0.5.2.2";
-       sha256 = "1qmyvsz3mp6ps7g7w75kqdvk1r7mm9cspwi8b29hdhp1vr3nwhng";
+       version = "0.5.2.3";
+       sha256 = "1c4p68n3vb5w5xv0ha5bfq73qkcaqkyz0srfdn27pipy2s1h6p22";
        libraryHaskellDepends = [
          aeson-utils base bytestring case-insensitive data-default
          exceptions http-client http-conduit http-types hxt hxt-pickle-utils
@@ -174562,7 +174483,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "rest-core_0_39_0_1" = callPackage
+  "rest-core_0_39_0_2" = callPackage
     ({ mkDerivation, aeson, aeson-utils, base, base-compat, bytestring
      , case-insensitive, errors, fclabels, HUnit, hxt, hxt-pickle-utils
      , json-schema, mtl, mtl-compat, multipart, random, rest-stringmap
@@ -174572,8 +174493,8 @@ self: {
      }:
      mkDerivation {
        pname = "rest-core";
-       version = "0.39.0.1";
-       sha256 = "12lps738sfcv3fi1dwa12gazgqpwh6gal9k1m4106a62vxlp2a2v";
+       version = "0.39.0.2";
+       sha256 = "0vr538sp8i5qwgd91bzvq9fxv939imxck6358xfzlgrk6x89cr1z";
        libraryHaskellDepends = [
          aeson aeson-utils base base-compat bytestring case-insensitive
          errors fclabels hxt hxt-pickle-utils json-schema mtl mtl-compat
@@ -174624,8 +174545,8 @@ self: {
      }:
      mkDerivation {
        pname = "rest-gen";
-       version = "0.20.0.2";
-       sha256 = "1hi4p6x3zrvf2q9rls0qfwm37xvil28xz5wg22bqk225a3b929n8";
+       version = "0.20.0.3";
+       sha256 = "1kd8i5kqjsdc3pl5gpg3i3lhy807qd6x4gxc86hr9a8kkv7y7hfn";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          aeson base base-compat blaze-html Cabal code-builder directory
@@ -174683,24 +174604,6 @@ self: {
      }:
      mkDerivation {
        pname = "rest-stringmap";
-       version = "0.2.0.6";
-       sha256 = "0jjj0yam4d4w36lnxk0ci7ylb9ya48y0ag3b54k9ikyg0hps7rb6";
-       revision = "7";
-       editedCabalFile = "14jqqpxxs7vkrf6syycrg2ymh79gl83z13kq261alw5gy8yjnszv";
-       libraryHaskellDepends = [
-         aeson base containers hashable hxt json-schema tostring
-         unordered-containers
-       ];
-       description = "Maps with stringy keys that can be transcoded to JSON and XML";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "rest-stringmap_0_2_0_7" = callPackage
-    ({ mkDerivation, aeson, base, containers, hashable, hxt
-     , json-schema, tostring, unordered-containers
-     }:
-     mkDerivation {
-       pname = "rest-stringmap";
        version = "0.2.0.7";
        sha256 = "0l2l46c1mqpxq7hi37vjhaihfyapifjaxbzyi1bdhjkybx7n9m32";
        libraryHaskellDepends = [
@@ -174709,7 +174612,6 @@ self: {
        ];
        description = "Maps with stringy keys that can be transcoded to JSON and XML";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "rest-types" = callPackage
@@ -174719,25 +174621,6 @@ self: {
      }:
      mkDerivation {
        pname = "rest-types";
-       version = "1.14.1.1";
-       sha256 = "16lnwd7rwjb67sqklrwl40bq4h8qhp3wj1893y4vs85fpdjqxq5p";
-       revision = "4";
-       editedCabalFile = "04s5xcjycbw9fqhmpx0kmy5wmkpgcs84vam68w428rb7y64099mb";
-       libraryHaskellDepends = [
-         aeson base base-compat case-insensitive generic-aeson
-         generic-xmlpickler hxt json-schema rest-stringmap text uuid
-       ];
-       description = "Silk Rest Framework Types";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "rest-types_1_14_1_2" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, case-insensitive
-     , generic-aeson, generic-xmlpickler, hxt, json-schema
-     , rest-stringmap, text, uuid
-     }:
-     mkDerivation {
-       pname = "rest-types";
        version = "1.14.1.2";
        sha256 = "0cjxnb4zvj7iafgy9h4wq8817wkm1mvas45xcb9346kwd3yqgvmy";
        libraryHaskellDepends = [
@@ -174746,7 +174629,6 @@ self: {
        ];
        description = "Silk Rest Framework Types";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "rest-wai" = callPackage
@@ -175938,8 +175820,8 @@ self: {
      }:
      mkDerivation {
        pname = "robots-txt";
-       version = "0.4.1.4";
-       sha256 = "18dkha42dcxl9f9771wpkji11m12v139wnscb47bm7s693w7p4nc";
+       version = "0.4.1.5";
+       sha256 = "025dm3rv4cpig8j02yzkr7xinzfcqmfiaaj8x5kzjw8mgcb1qpn3";
        libraryHaskellDepends = [
          attoparsec base bytestring old-locale time
        ];
@@ -176631,6 +176513,32 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "rowdy" = callPackage
+    ({ mkDerivation, base, containers, dlist, hspec, mtl }:
+     mkDerivation {
+       pname = "rowdy";
+       version = "0.0.1.0";
+       sha256 = "19nafk4zmhx76j0qzg1d5kh6mnzwnr5x3kvvxi56x24kfmvrq5qq";
+       libraryHaskellDepends = [ base containers dlist mtl ];
+       testHaskellDepends = [ base containers dlist hspec mtl ];
+       homepage = "https://github.com/parsonsmatt/rowdy#readme";
+       description = "An EDSL for web application routes";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
+  "rowdy-yesod" = callPackage
+    ({ mkDerivation, base, hspec, rowdy, yesod-core }:
+     mkDerivation {
+       pname = "rowdy-yesod";
+       version = "0.0.1.0";
+       sha256 = "17k9bbxwpmxpswkmax6jrlcfrp6qhgdkjixsp4d6rn7mj676010g";
+       libraryHaskellDepends = [ base rowdy yesod-core ];
+       testHaskellDepends = [ base hspec rowdy yesod-core ];
+       homepage = "https://github.com/parsonsmatt/rowdy#readme";
+       description = "An EDSL for web application routes";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "rowrecord" = callPackage
     ({ mkDerivation, base, containers, template-haskell }:
      mkDerivation {
@@ -180238,6 +180146,24 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "selda_0_2_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, exceptions, hashable, mtl
+     , psqueues, text, time, unordered-containers
+     }:
+     mkDerivation {
+       pname = "selda";
+       version = "0.2.0.0";
+       sha256 = "1l9ad4d1m0ylfihg0hpfxanxil09c658jl1bmgzn8268akqay9nj";
+       libraryHaskellDepends = [
+         base bytestring exceptions hashable mtl psqueues text time
+         unordered-containers
+       ];
+       homepage = "https://selda.link";
+       description = "Multi-backend, high-level EDSL for interacting with SQL databases";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "selda-postgresql" = callPackage
     ({ mkDerivation, base, bytestring, exceptions, postgresql-libpq
      , selda, text
@@ -180246,6 +180172,8 @@ self: {
        pname = "selda-postgresql";
        version = "0.1.7.2";
        sha256 = "06z5zrika018433p5l011wxc308zw7l9ilnkgwcykagsnmai4y7z";
+       revision = "1";
+       editedCabalFile = "08f2xdfpmbwhrwkjaqfmd9k25c3xn3p477d7a1mnnn7kf7328782";
        libraryHaskellDepends = [
          base bytestring exceptions postgresql-libpq selda text
        ];
@@ -180262,8 +180190,8 @@ self: {
        pname = "selda-sqlite";
        version = "0.1.6.0";
        sha256 = "1473igqgjs5282rykqj1zg7420mfh3sbqy74nx1cwbm82j8shyy6";
-       revision = "1";
-       editedCabalFile = "0yf1n9iaaafnllkb2yi38ncyd3q062g4p7ln9ypb6h8gcym8s8m1";
+       revision = "2";
+       editedCabalFile = "198pg9i0lfx3fwf7b7cw0x5kial6vbf0dqwh18jnh7na3pyn1jr6";
        libraryHaskellDepends = [
          base direct-sqlite directory exceptions selda text
        ];
@@ -181918,6 +181846,28 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "servant-elm_0_5_0_0" = callPackage
+    ({ mkDerivation, aeson, base, Diff, elm-export, hspec, HUnit, lens
+     , servant, servant-foreign, text, wl-pprint-text
+     }:
+     mkDerivation {
+       pname = "servant-elm";
+       version = "0.5.0.0";
+       sha256 = "0l5rjml46qbnq4p3d7zjk8zl9gnpz8m5n6n8yf8kgy89ybm6xnfr";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base elm-export lens servant servant-foreign text wl-pprint-text
+       ];
+       testHaskellDepends = [
+         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";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "servant-examples" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, either
      , http-types, js-jquery, lucid, random, servant, servant-client
@@ -182831,6 +182781,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "servant-tracing" = callPackage
+    ({ mkDerivation, aeson, async, base, bytestring, bytestring-lexing
+     , containers, hashable, http-api-data, http-client, HUnit
+     , lifted-base, monad-control, mtl, QuickCheck, random, servant
+     , servant-server, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , transformers, unordered-containers, wai, warp
+     }:
+     mkDerivation {
+       pname = "servant-tracing";
+       version = "0.1.0.0";
+       sha256 = "0wpybm1vl1bh3sj3vam8y40a0sjrx2ys761jyqrj2dnqymk8xc10";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base bytestring bytestring-lexing containers hashable
+         http-api-data http-client lifted-base monad-control mtl random
+         servant servant-server text time unordered-containers wai
+       ];
+       executableHaskellDepends = [
+         async base bytestring containers http-client lifted-base
+         monad-control mtl servant servant-server text transformers wai warp
+       ];
+       testHaskellDepends = [
+         aeson base containers http-api-data HUnit monad-control mtl
+         QuickCheck tasty tasty-hunit tasty-quickcheck text time
+         transformers
+       ];
+       homepage = "https://github.com/ChrisCoffey/servant-tracing#readme";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "servant-websockets" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, conduit
      , exceptions, resourcet, servant-server, text, wai, wai-websockets
@@ -183913,8 +183894,8 @@ self: {
      }:
      mkDerivation {
        pname = "shake-ats";
-       version = "1.6.0.1";
-       sha256 = "1ik6nzabvzhly0pc5gyp83gh5mg8z8y56vdm8895dkx5cx5zlfgs";
+       version = "1.6.0.2";
+       sha256 = "0imvw9bivp2dzs4086c481w7ss7z8dvphn0l163dkyzxdw8xgkzl";
        libraryHaskellDepends = [
          base binary dependency directory hashable hs2ats language-ats
          microlens microlens-th shake shake-ext text
@@ -183948,8 +183929,8 @@ self: {
      }:
      mkDerivation {
        pname = "shake-ext";
-       version = "2.8.0.0";
-       sha256 = "1w4nkvrvyhig0902rfp92yag11h96ds18p0rxh9p9lmkbmr17r6w";
+       version = "2.9.0.1";
+       sha256 = "1znql8sddxm8xxzhz4ibhvc29ni345airily5ky51vq6qbs0g4r2";
        libraryHaskellDepends = [
          base Cabal composition-prelude directory shake template-haskell
        ];
@@ -186529,8 +186510,8 @@ self: {
        pname = "size-based";
        version = "0.1.0.0";
        sha256 = "1h791s39nr057w5f2fr4v7p1czw9jm0dk5qrhr26qyw97j4ysngx";
-       revision = "1";
-       editedCabalFile = "089942604ikg40v4nl25c4j856bylmmm06py4k2spz3y2z4k49rb";
+       revision = "2";
+       editedCabalFile = "1p4iglrrl5s47cxn520saiszw5wwr4x1kn9xbgn7awz29mv7pmd2";
        libraryHaskellDepends = [
          base dictionary-sharing template-haskell testing-type-modifiers
        ];
@@ -186983,31 +186964,6 @@ self: {
      }:
      mkDerivation {
        pname = "slack-web";
-       version = "0.2.0.3";
-       sha256 = "1zxs697fmcgwrbrkzh7qgmrxcc6l75m1p300zinzqxvxv3zvk5l6";
-       libraryHaskellDepends = [
-         aeson base containers errors http-api-data http-client
-         http-client-tls megaparsec mtl servant servant-client
-         servant-client-core text time transformers
-       ];
-       testHaskellDepends = [
-         aeson base containers errors hspec http-api-data megaparsec text
-         time
-       ];
-       homepage = "https://github.com/jpvillaisaza/slack-web";
-       description = "Bindings for the Slack web API";
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "slack-web_0_2_0_4" = callPackage
-    ({ mkDerivation, aeson, base, containers, errors, hspec
-     , http-api-data, http-client, http-client-tls, megaparsec, mtl
-     , servant, servant-client, servant-client-core, text, time
-     , transformers
-     }:
-     mkDerivation {
-       pname = "slack-web";
        version = "0.2.0.4";
        sha256 = "1wbqz6shqm39ivmw7k2pwslaygxf4rxxbkiczxzpvd29y5pm81ah";
        libraryHaskellDepends = [
@@ -191405,29 +191361,6 @@ self: {
   "sqlite-simple" = callPackage
     ({ mkDerivation, attoparsec, base, base16-bytestring, blaze-builder
      , blaze-textual, bytestring, containers, direct-sqlite, HUnit, Only
-     , text, time, transformers
-     }:
-     mkDerivation {
-       pname = "sqlite-simple";
-       version = "0.4.14.0";
-       sha256 = "0zx4fdv6larfyj6m1d4livb5cqdx10yi06yd6px2n0wnxcmvdyj9";
-       revision = "1";
-       editedCabalFile = "12ig3spsw8x30xazlp2p8hn4k4xznglsmjl3nkr3fgmmkqffl2mm";
-       libraryHaskellDepends = [
-         attoparsec base blaze-builder blaze-textual bytestring containers
-         direct-sqlite Only text time transformers
-       ];
-       testHaskellDepends = [
-         base base16-bytestring bytestring direct-sqlite HUnit text time
-       ];
-       homepage = "http://github.com/nurpax/sqlite-simple";
-       description = "Mid-Level SQLite client library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "sqlite-simple_0_4_15_0" = callPackage
-    ({ mkDerivation, attoparsec, base, base16-bytestring, blaze-builder
-     , blaze-textual, bytestring, containers, direct-sqlite, HUnit, Only
      , semigroups, text, time, transformers
      }:
      mkDerivation {
@@ -191444,7 +191377,6 @@ self: {
        homepage = "http://github.com/nurpax/sqlite-simple";
        description = "Mid-Level SQLite client library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "sqlite-simple-errors" = callPackage
@@ -191638,25 +191570,12 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "srcloc";
-       version = "0.5.1.1";
-       sha256 = "05qsyrpzbbawpnfmq8v1rr36kvnycarlr3v91hmbj33vk73acj1i";
-       libraryHaskellDepends = [ base ];
-       homepage = "https://github.com/mainland/srcloc";
-       description = "Data types for managing source code locations";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "srcloc_0_5_1_2" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "srcloc";
        version = "0.5.1.2";
        sha256 = "0vn0zqsk191ghh2993hls05hp7kvnskaafnfrrqhfbmpdg7dp7h6";
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/mainland/srcloc";
        description = "Data types for managing source code locations";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "srec" = callPackage
@@ -192938,8 +192857,8 @@ self: {
        pname = "statestack";
        version = "0.2.0.5";
        sha256 = "0rjzx9iy5mx5igir6gvslznnx3gpxlb1xy1n8h4cn54cn3wxrspl";
-       revision = "1";
-       editedCabalFile = "0kf1jdhdv9fiwlbn2915sg39x23lfxlyp2qb7jkrvx8p8v2sam7i";
+       revision = "2";
+       editedCabalFile = "0c10cv107ls0wm7gs3gvknd8a1gqvrkk97frn8lp1ch697mz44rp";
        libraryHaskellDepends = [
          base mtl transformers transformers-compat
        ];
@@ -193253,6 +193172,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "status-notifier-item" = callPackage
+    ({ mkDerivation, base, bytestring, containers, dbus, filepath
+     , hslogger, lens, mtl, network, optparse-applicative, spool
+     , template-haskell, transformers, vector
+     }:
+     mkDerivation {
+       pname = "status-notifier-item";
+       version = "0.1.0.0";
+       sha256 = "1g1gf3anqrg8mfdyjvymk5wlg0h4pfc0pv4wlw5phk6r93dxah1n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring containers dbus filepath hslogger lens mtl network
+         spool template-haskell transformers vector
+       ];
+       executableHaskellDepends = [
+         base dbus hslogger optparse-applicative
+       ];
+       homepage = "https://github.com/IvanMalison/status-notifier-item#readme";
+       description = "A wrapper over the StatusNotifierItem/libappindicator dbus specification";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "statvfs" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -194802,28 +194744,6 @@ self: {
      }:
      mkDerivation {
        pname = "streamly";
-       version = "0.1.1";
-       sha256 = "1zblhnn2rjsmbdliihsghwl6rv7g0bcdh3d10xx8c4x420hwg2f6";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         atomic-primops base containers exceptions lifted-base
-         lockfree-queue monad-control mtl stm transformers transformers-base
-       ];
-       testHaskellDepends = [ base containers hspec ];
-       benchmarkHaskellDepends = [ atomic-primops base criterion mtl ];
-       homepage = "https://github.com/composewell/streamly";
-       description = "Beautiful Streaming, Concurrent and Reactive Composition";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "streamly_0_1_2" = callPackage
-    ({ mkDerivation, atomic-primops, base, containers, criterion
-     , exceptions, hspec, lifted-base, lockfree-queue, monad-control
-     , mtl, stm, transformers, transformers-base
-     }:
-     mkDerivation {
-       pname = "streamly";
        version = "0.1.2";
        sha256 = "1axqac7zi2b87q91hxv75dpk4pfd4d4fcvsna7cjgkhkdvvjarzp";
        isLibrary = true;
@@ -194837,7 +194757,6 @@ self: {
        homepage = "https://github.com/composewell/streamly";
        description = "Beautiful Streaming, Concurrent and Reactive Composition";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "streamproc" = callPackage
@@ -195809,8 +195728,8 @@ self: {
      }:
      mkDerivation {
        pname = "stylish-cabal";
-       version = "0.4.0.0";
-       sha256 = "1357yrnzyc7rhd98dz33m84yckzs2djrlv8dmh5a2p97s31gcp03";
+       version = "0.4.0.1";
+       sha256 = "00jwq35dr60c9gjwy8hg3i8b39gxknr92mrz21657gazl90cxy4z";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -197065,21 +196984,6 @@ self: {
      }:
      mkDerivation {
        pname = "syb-with-class";
-       version = "0.6.1.8";
-       sha256 = "01b187jhhfp77l4zgks5gszkn9jmgjc44mw9yympw1fsfskljiz3";
-       libraryHaskellDepends = [
-         array base bytestring containers template-haskell
-       ];
-       description = "Scrap Your Boilerplate With Class";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "syb-with-class_0_6_1_9" = callPackage
-    ({ mkDerivation, array, base, bytestring, containers
-     , template-haskell
-     }:
-     mkDerivation {
-       pname = "syb-with-class";
        version = "0.6.1.9";
        sha256 = "1apvvzzc19lbchmbginmhxzcrvrcg76dvdgsk51pxrnr4glnva86";
        libraryHaskellDepends = [
@@ -197087,7 +196991,6 @@ self: {
        ];
        description = "Scrap Your Boilerplate With Class";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "syb-with-class-instances-text" = callPackage
@@ -198528,36 +198431,37 @@ self: {
      }) {};
 
   "taffybar" = callPackage
-    ({ mkDerivation, base, cairo, containers, dbus, dyre
-     , enclosed-exceptions, filepath, gtk, gtk-traymanager, gtk2
-     , HStringTemplate, HTTP, mtl, network, network-uri, old-locale
-     , parsec, process, safe, split, stm, text, time, time-locale-compat
-     , transformers, utf8-string, X11, xdg-basedir, xmonad
-     , xmonad-contrib
+    ({ mkDerivation, alsa-mixer, base, cairo, ConfigFile, containers
+     , dbus, directory, dyre, either, enclosed-exceptions, filepath
+     , glib, gtk-traymanager, gtk3, HStringTemplate, HTTP, mtl, multimap
+     , network, network-uri, old-locale, parsec, process, rate-limit
+     , safe, split, stm, text, time, time-locale-compat, time-units
+     , transformers, tuple, unix, utf8-string, X11, xdg-basedir, xml
+     , xml-helpers, xmonad, xmonad-contrib
      }:
      mkDerivation {
        pname = "taffybar";
-       version = "0.4.6";
-       sha256 = "1xfaw32yq17a6wm6gzvpdnpabxfnskwbs541h1kk1lvrkm31h2b2";
+       version = "1.0.0";
+       sha256 = "1n2hxryh8l1ym498ckba1nf9533zpsxscvbriiwxixdr27mgk6zy";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         base cairo containers dbus dyre enclosed-exceptions filepath gtk
-         gtk-traymanager HStringTemplate HTTP mtl network network-uri
-         old-locale parsec process safe split stm text time
-         time-locale-compat transformers utf8-string X11 xdg-basedir xmonad
-         xmonad-contrib
+         alsa-mixer base cairo ConfigFile containers dbus directory dyre
+         either enclosed-exceptions filepath glib gtk-traymanager gtk3
+         HStringTemplate HTTP mtl multimap network network-uri old-locale
+         parsec process rate-limit safe split stm text time
+         time-locale-compat time-units transformers tuple unix utf8-string
+         X11 xdg-basedir xml xml-helpers xmonad xmonad-contrib
        ];
-       libraryPkgconfigDepends = [ gtk2 ];
        executableHaskellDepends = [
-         base dyre filepath gtk safe xdg-basedir
+         base containers directory dyre filepath glib gtk3 mtl safe split
+         utf8-string X11 xdg-basedir
        ];
-       executablePkgconfigDepends = [ gtk2 ];
        homepage = "http://github.com/travitch/taffybar";
        description = "A desktop bar similar to xmobar, but with more GUI";
        license = stdenv.lib.licenses.bsd3;
-     }) {gtk2 = pkgs.gnome2.gtk;};
+     }) {};
 
   "tag-bits" = callPackage
     ({ mkDerivation, base, ghc-prim }:
@@ -203277,6 +203181,8 @@ self: {
        pname = "th-orphans";
        version = "0.13.5";
        sha256 = "1b9599vyn0wjwbq7b7n0w25s3wbihdxr958hscfpwc8lg55lsr4m";
+       revision = "1";
+       editedCabalFile = "1rgsrnh0qvlriz0c2c3q8wbb3ykby8d3lli0j553ml3n1sn9k4zv";
        libraryHaskellDepends = [
          base mtl template-haskell th-lift th-lift-instances th-reify-many
        ];
@@ -205312,24 +205218,6 @@ self: {
      }:
      mkDerivation {
        pname = "tinylog";
-       version = "0.14.0";
-       sha256 = "1skk59sxz2n96nv8vbc9yxla8m2jkj3ll8z5m0v78w0ih0bmcbrj";
-       libraryHaskellDepends = [
-         base bytestring containers double-conversion fast-logger text
-         transformers unix-time
-       ];
-       benchmarkHaskellDepends = [ base bytestring criterion ];
-       homepage = "https://gitlab.com/twittner/tinylog/";
-       description = "Simplistic logging using fast-logger";
-       license = stdenv.lib.licenses.mpl20;
-     }) {};
-
-  "tinylog_0_14_1" = callPackage
-    ({ mkDerivation, base, bytestring, containers, criterion
-     , double-conversion, fast-logger, text, transformers, unix-time
-     }:
-     mkDerivation {
-       pname = "tinylog";
        version = "0.14.1";
        sha256 = "01yz41l45qmc878gzhbchzkvr4ha2cfmvvjv31hwivgwgl8rcgni";
        libraryHaskellDepends = [
@@ -205340,7 +205228,6 @@ self: {
        homepage = "https://gitlab.com/twittner/tinylog/";
        description = "Simplistic logging using fast-logger";
        license = stdenv.lib.licenses.mpl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "tinytemplate" = callPackage
@@ -208404,22 +208291,24 @@ self: {
     ({ mkDerivation, aeson, ansi-wl-pprint, authenticate-oauth, base
      , bytestring, composition-prelude, containers, criterion
      , data-default, directory, extra, hspec, htoml-megaparsec
-     , http-client, http-client-tls, http-types, lens, megaparsec
+     , http-client, http-client-tls, http-types, megaparsec, microlens
      , optparse-applicative, split, text, unordered-containers
      }:
      mkDerivation {
        pname = "tweet-hs";
-       version = "1.0.1.35";
-       sha256 = "1rg7yn5072dr8kpd5m3c4p1brq9sbs2npvvyqkjpvfxsbyziblw7";
+       version = "1.0.1.36";
+       sha256 = "1gmp1936cmz42vf8m3622pjf6gb9c2pi8z0jfki1di9m1p1lbr53";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          aeson ansi-wl-pprint authenticate-oauth base bytestring
-         composition-prelude containers data-default directory extra
-         htoml-megaparsec http-client http-client-tls http-types lens
-         megaparsec optparse-applicative split text unordered-containers
+         composition-prelude containers data-default extra htoml-megaparsec
+         http-client http-client-tls http-types megaparsec microlens split
+         text unordered-containers
+       ];
+       executableHaskellDepends = [
+         base bytestring directory optparse-applicative
        ];
-       executableHaskellDepends = [ base ];
        testHaskellDepends = [ base hspec ];
        benchmarkHaskellDepends = [ base bytestring criterion megaparsec ];
        homepage = "https://github.com/vmchale/command-line-tweeter#readme";
@@ -209469,40 +209358,42 @@ self: {
      }) {};
 
   "type-of-html" = callPackage
-    ({ mkDerivation, base, blaze-html, bytestring, criterion
-     , double-conversion, ghc-prim, hspec, QuickCheck, text
+    ({ mkDerivation, base, blaze-html, bytestring, criterion, deepseq
+     , double-conversion, ghc-prim, hspec, QuickCheck, random, text
+     , weigh
      }:
      mkDerivation {
        pname = "type-of-html";
-       version = "1.3.3.0";
-       sha256 = "0q3r2imr63nv7l08w6q850xqak4gwzvk43qv1vq8x9qwdaf1nisv";
+       version = "1.3.3.2";
+       sha256 = "0ah3j0r1yrqyrsg9blg0yxffjrikrlvi77d1cq368qmx3rnn5rnh";
        libraryHaskellDepends = [
          base bytestring double-conversion ghc-prim text
        ];
        testHaskellDepends = [ base hspec QuickCheck ];
        benchmarkHaskellDepends = [
-         base blaze-html bytestring criterion QuickCheck text
+         base blaze-html bytestring criterion deepseq random text weigh
        ];
        homepage = "https://github.com/knupfer/type-of-html";
        description = "High performance type driven html generation";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "type-of-html_1_3_3_2" = callPackage
+  "type-of-html_1_3_4_0" = callPackage
     ({ mkDerivation, base, blaze-html, bytestring, criterion, deepseq
-     , double-conversion, ghc-prim, hspec, QuickCheck, random, text
-     , weigh
+     , double-conversion, ghc, ghc-paths, ghc-prim, hspec, QuickCheck
+     , random, temporary, text, weigh
      }:
      mkDerivation {
        pname = "type-of-html";
-       version = "1.3.3.2";
-       sha256 = "0ah3j0r1yrqyrsg9blg0yxffjrikrlvi77d1cq368qmx3rnn5rnh";
+       version = "1.3.4.0";
+       sha256 = "11drppw8xl3wzjj5qks8mqrbl83yrj7c4r01s06v38bc319g8ksf";
        libraryHaskellDepends = [
          base bytestring double-conversion ghc-prim text
        ];
        testHaskellDepends = [ base hspec QuickCheck ];
        benchmarkHaskellDepends = [
-         base blaze-html bytestring criterion deepseq random text weigh
+         base blaze-html bytestring criterion deepseq ghc ghc-paths random
+         temporary text weigh
        ];
        homepage = "https://github.com/knupfer/type-of-html";
        description = "High performance type driven html generation";
@@ -209913,22 +209804,6 @@ self: {
      }:
      mkDerivation {
        pname = "typelits-witnesses";
-       version = "0.3.0.1";
-       sha256 = "0d2537dwz5kiq81amrj2v00bvlwjfkidlz45g1h96zv78mlw1l7c";
-       libraryHaskellDepends = [
-         base base-compat constraints reflection transformers
-       ];
-       homepage = "https://github.com/mstksg/typelits-witnesses";
-       description = "Existential witnesses, singletons, and classes for operations on GHC TypeLits";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "typelits-witnesses_0_3_0_2" = callPackage
-    ({ mkDerivation, base, base-compat, constraints, reflection
-     , transformers
-     }:
-     mkDerivation {
-       pname = "typelits-witnesses";
        version = "0.3.0.2";
        sha256 = "0k76ir1c6ga44cj3qmjcsnikzz2nnb2kyzkcirb3ila7yfgwc9kf";
        libraryHaskellDepends = [
@@ -209937,7 +209812,6 @@ self: {
        homepage = "https://github.com/mstksg/typelits-witnesses";
        description = "Existential witnesses, singletons, and classes for operations on GHC TypeLits";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "typeof" = callPackage
@@ -214532,8 +214406,8 @@ self: {
     ({ mkDerivation, base, random, vector }:
      mkDerivation {
        pname = "vector-shuffling";
-       version = "1";
-       sha256 = "19brlcbxha2mpmciabjw1npdi2xcpvfhd8wjn2ssfcdl0pd2n2ln";
+       version = "1.1";
+       sha256 = "04kpp7529jd4avhprfxdy6nfikx3d3ans0knhz3lspms4iky068i";
        libraryHaskellDepends = [ base random vector ];
        homepage = "https://github.com/metrix-ai/vector-shuffling";
        description = "Algorithms for vector shuffling";
@@ -214710,6 +214584,37 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "vectortiles_1_4_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, criterion, deepseq
+     , hashable, hex, microlens, microlens-platform, mtl
+     , protocol-buffers, protocol-buffers-descriptor, tasty, tasty-hunit
+     , text, transformers, unordered-containers, vector
+     }:
+     mkDerivation {
+       pname = "vectortiles";
+       version = "1.4.0";
+       sha256 = "1h0mx5sl379486panyxpanld8qrlhak9knhz7jzqqv7is3rw8g1r";
+       libraryHaskellDepends = [
+         base bytestring containers deepseq hashable mtl protocol-buffers
+         protocol-buffers-descriptor text transformers unordered-containers
+         vector
+       ];
+       testHaskellDepends = [
+         base bytestring containers hashable hex mtl protocol-buffers
+         protocol-buffers-descriptor tasty tasty-hunit text
+         unordered-containers vector
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers criterion hashable microlens
+         microlens-platform mtl protocol-buffers protocol-buffers-descriptor
+         text unordered-containers vector
+       ];
+       homepage = "https://github.com/fosskers/vectortiles";
+       description = "GIS Vector Tiles, as defined by Mapbox";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "verbalexpressions" = callPackage
     ({ mkDerivation, base, regex-pcre }:
      mkDerivation {
@@ -214918,8 +214823,8 @@ self: {
      }:
      mkDerivation {
        pname = "viewprof";
-       version = "0.0.0.15";
-       sha256 = "10ihmdba4rbji13lihmxf2yw77nii63k4mz6a0d03lzcw2bppr1a";
+       version = "0.0.0.16";
+       sha256 = "123dqm0rardrvvvrj8sjjs9z8yysk9qzwvrs3skqzxrq5pffyarp";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
@@ -218194,23 +218099,6 @@ self: {
      }:
      mkDerivation {
        pname = "web-routes-th";
-       version = "0.22.6.2";
-       sha256 = "1j661bdl5nb7a02gvsi89dybzaczjynp3d6kxnrgc4jc41rwbgj8";
-       libraryHaskellDepends = [
-         base parsec split template-haskell text web-routes
-       ];
-       testHaskellDepends = [ base hspec HUnit QuickCheck web-routes ];
-       homepage = "https://github.com/happstack/web-routes-th";
-       description = "Support for deriving PathInfo using Template Haskell";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "web-routes-th_0_22_6_3" = callPackage
-    ({ mkDerivation, base, hspec, HUnit, parsec, QuickCheck, split
-     , template-haskell, text, web-routes
-     }:
-     mkDerivation {
-       pname = "web-routes-th";
        version = "0.22.6.3";
        sha256 = "1zamjbvjxryc43wac95cdavbq4czjlfx5kgxykadx8sw63vfnk4x";
        libraryHaskellDepends = [
@@ -218220,7 +218108,6 @@ self: {
        homepage = "https://github.com/happstack/web-routes-th";
        description = "Support for deriving PathInfo using Template Haskell";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "web-routes-transformers" = callPackage
@@ -218844,22 +218731,6 @@ self: {
      }:
      mkDerivation {
        pname = "websockets-snap";
-       version = "0.10.2.4";
-       sha256 = "003np9jn7ja1p9vays6sk7kmia1bhqjhsz53jy0k2na6fx7rnk99";
-       libraryHaskellDepends = [
-         base bytestring bytestring-builder io-streams mtl snap-core
-         snap-server websockets
-       ];
-       description = "Snap integration for the websockets library";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "websockets-snap_0_10_2_5" = callPackage
-    ({ mkDerivation, base, bytestring, bytestring-builder, io-streams
-     , mtl, snap-core, snap-server, websockets
-     }:
-     mkDerivation {
-       pname = "websockets-snap";
        version = "0.10.2.5";
        sha256 = "14kxk6x5pygxlyn6421lkmc3lld5r545zq5qx6098mgn6bg2yknj";
        libraryHaskellDepends = [
@@ -218868,7 +218739,6 @@ self: {
        ];
        description = "Snap integration for the websockets library";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "webwire" = callPackage
@@ -221132,6 +221002,8 @@ self: {
        pname = "x509";
        version = "1.7.3";
        sha256 = "0mkk29g32fs70bqkikg83v45h9jig9c8aail3mrdqwxpkfa0yx21";
+       revision = "1";
+       editedCabalFile = "06zzirygvzp0ssdg9blipdwmd0b41p4gxh3ldai7ngjyjsdclwsx";
        libraryHaskellDepends = [
          asn1-encoding asn1-parse asn1-types base bytestring containers
          cryptonite hourglass memory mtl pem
@@ -221210,6 +221082,8 @@ self: {
        pname = "x509-validation";
        version = "1.6.10";
        sha256 = "1ms51scawldgyfcim5a2qlgyn3rnrclyh205d6djaa1569vrs73n";
+       revision = "1";
+       editedCabalFile = "1isap8v1gh31q4pj3gn155ya8nd1da0a5a3cryqh4yhf0ivbwl0w";
        libraryHaskellDepends = [
          asn1-encoding asn1-types base bytestring containers cryptonite
          data-default-class hourglass memory mtl pem x509 x509-store
@@ -221799,36 +221673,6 @@ self: {
      }:
      mkDerivation {
        pname = "xlsx";
-       version = "0.7.1";
-       sha256 = "029frrwin3qx9kdh4i32yfyp1nlacr5zsv9msp5x63k2xyw7p0fh";
-       libraryHaskellDepends = [
-         attoparsec base base64-bytestring binary-search bytestring conduit
-         containers data-default deepseq errors extra filepath lens mtl
-         network-uri old-locale safe text time transformers vector xeno
-         xml-conduit zip-archive zlib
-       ];
-       testHaskellDepends = [
-         base bytestring containers Diff groom lens mtl raw-strings-qq
-         smallcheck tasty tasty-hunit tasty-smallcheck text time vector
-         xml-conduit
-       ];
-       benchmarkHaskellDepends = [ base bytestring criterion ];
-       homepage = "https://github.com/qrilka/xlsx";
-       description = "Simple and incomplete Excel file parser/writer";
-       license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "xlsx_0_7_2" = callPackage
-    ({ mkDerivation, attoparsec, base, base64-bytestring, binary-search
-     , bytestring, conduit, containers, criterion, data-default, deepseq
-     , Diff, errors, extra, filepath, groom, lens, mtl, network-uri
-     , old-locale, raw-strings-qq, safe, smallcheck, tasty, tasty-hunit
-     , tasty-smallcheck, text, time, transformers, vector, xeno
-     , xml-conduit, zip-archive, zlib
-     }:
-     mkDerivation {
-       pname = "xlsx";
        version = "0.7.2";
        sha256 = "00qigyz4nc23abawapxhw0sgmj9c5qplkkvyv6xxffanx9kh8mmj";
        libraryHaskellDepends = [
@@ -223550,40 +223394,10 @@ self: {
      }:
      mkDerivation {
        pname = "yaml";
-       version = "0.8.28";
-       sha256 = "0swgkzkfrwj0ac7lssn8rnrdfmh3lcsdn5fbq2iwv55di6jbc0pp";
-       revision = "1";
-       editedCabalFile = "0f8vb5v0xfpsc02zqh9pzgv4fir93sgijk342lz5k872gscfjn62";
-       configureFlags = [ "-fsystem-libyaml" ];
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson attoparsec base bytestring conduit containers directory
-         filepath resourcet scientific semigroups template-haskell text
-         transformers unordered-containers vector
-       ];
-       libraryPkgconfigDepends = [ libyaml ];
-       executableHaskellDepends = [ aeson base bytestring ];
-       testHaskellDepends = [
-         aeson base base-compat bytestring conduit directory hspec HUnit
-         mockery resourcet temporary text transformers unordered-containers
-         vector
-       ];
-       homepage = "http://github.com/snoyberg/yaml/";
-       description = "Support for parsing and rendering YAML documents";
-       license = stdenv.lib.licenses.bsd3;
-     }) {inherit (pkgs) libyaml;};
-
-  "yaml_0_8_29" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
-     , conduit, containers, directory, filepath, hspec, HUnit, libyaml
-     , mockery, resourcet, scientific, semigroups, template-haskell
-     , temporary, text, transformers, unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "yaml";
        version = "0.8.29";
        sha256 = "0x0gs80cq83i65b7g1xg6dvggkxlxhn1qs3py63c4wsjsplmyphs";
+       revision = "1";
+       editedCabalFile = "0hxmf36ydqr0gdwiagp57df7fxwhfy99r6s7mj861m8rflha0dks";
        configureFlags = [ "-fsystem-libyaml" ];
        isLibrary = true;
        isExecutable = true;
@@ -223601,7 +223415,6 @@ self: {
        homepage = "http://github.com/snoyberg/yaml/";
        description = "Support for parsing and rendering YAML documents";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) libyaml;};
 
   "yaml-combinators" = callPackage
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index ea3974525a96..929827ce1120 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "joker-${version}";
-  version = "0.8.9";
+  version = "0.9.1";
 
   goPackagePath = "github.com/candid82/joker";
 
@@ -10,7 +10,7 @@ buildGoPackage rec {
     rev = "v${version}";
     owner = "candid82";
     repo = "joker";
-    sha256 = "0ph5f3vc6x1qfh3zn3va2xqx3axv1i2ywbhxayk58p55fxblj5c9";
+    sha256 = "10flfjnb9mz3dir3882agcs1lyr5qdpd9qfyvphrh08zr3jnb3hz";
   };
 
   preBuild = "go generate ./...";
diff --git a/pkgs/development/libraries/aws-sdk-cpp/default.nix b/pkgs/development/libraries/aws-sdk-cpp/default.nix
index 3e1edcdcfbfd..11005d6097af 100644
--- a/pkgs/development/libraries/aws-sdk-cpp/default.nix
+++ b/pkgs/development/libraries/aws-sdk-cpp/default.nix
@@ -15,13 +15,13 @@ let
         else throw "Unsupported system!";
 in stdenv.mkDerivation rec {
   name = "aws-sdk-cpp-${version}";
-  version = "1.4.15";
+  version = "1.4.24";
 
   src = fetchFromGitHub {
     owner = "awslabs";
     repo = "aws-sdk-cpp";
     rev = version;
-    sha256 = "10nk8zbrh2sgw7cp03g8yqylyi29bb99w8v6dbw97pnxf689m635";
+    sha256 = "1prkivapmzjcsykxj42h0p27kjhc66hir0h2j6rz0yqdfr4pyhgl";
   };
 
   # FIXME: might be nice to put different APIs in different outputs
diff --git a/pkgs/development/libraries/dlib/default.nix b/pkgs/development/libraries/dlib/default.nix
index d3e2f6c9c983..53ec9949f170 100644
--- a/pkgs/development/libraries/dlib/default.nix
+++ b/pkgs/development/libraries/dlib/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "19.10";
+  version = "19.9";
   name = "dlib-${version}";
 
   src = fetchFromGitHub {
     owner = "davisking";
     repo = "dlib";
     rev ="v${version}";
-    sha256 = "0sgxblf4n33b8wgblyblmrkwydvy1yh7fzll1b6c4zgkz675w0m5";
+    sha256 = "0lc54r928j9dg7f2wn25m887z24d31wrc14v2hn6aknp1z084lrc";
   };
 
   postPatch = ''
diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix
index afd6391d719b..f1eed726eb2b 100644
--- a/pkgs/development/libraries/gsl/default.nix
+++ b/pkgs/development/libraries/gsl/default.nix
@@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
     ./disable-fma.patch # http://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html
   ];
 
-  doCheck = stdenv.system != "i686-linux"; # https://lists.gnu.org/archive/html/bug-gsl/2015-11/msg00012.html
+  # https://lists.gnu.org/archive/html/bug-gsl/2015-11/msg00012.html
+  doCheck = stdenv.system != "i686-linux" && stdenv.system != "aarch64-linux";
 
   meta = {
     description = "The GNU Scientific Library, a large numerical library";
diff --git a/pkgs/development/libraries/gstreamer/bad/default.nix b/pkgs/development/libraries/gstreamer/bad/default.nix
index 72fead258f5d..73cbaa0f8070 100644
--- a/pkgs/development/libraries/gstreamer/bad/default.nix
+++ b/pkgs/development/libraries/gstreamer/bad/default.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, pkgconfig, python, gst-plugins-base, orc
+{ stdenv, fetchurl, fetchpatch, meson, ninja, gettext
+, pkgconfig, python, gst-plugins-base, orc
 , faacSupport ? false, faac ? null
-, gtkSupport ? false, gtk3 ? null
 , faad2, libass, libkate, libmms
-, libmodplug, mpeg2dec, mpg123
+, libmodplug, mpeg2dec
 , openjpeg, libopus, librsvg
 , wildmidi, fluidsynth, libvdpau, wayland
 , libwebp, xvidcore, gnutls, mjpegtools
@@ -11,7 +11,6 @@
 }:
 
 assert faacSupport -> faac != null;
-assert gtkSupport -> gtk3 != null;
 
 let
   inherit (stdenv.lib) optional optionalString;
@@ -23,7 +22,7 @@ let
 
 in
 stdenv.mkDerivation rec {
-  name = "gst-plugins-bad-1.12.3";
+  name = "gst-plugins-bad-1.14.0";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Bad Plugins";
@@ -38,27 +37,31 @@ stdenv.mkDerivation rec {
     platforms   = platforms.linux ++ platforms.darwin;
   };
 
-  # TODO: Fix Cocoa build. The problem was ARC, which might be related to too
-  #       old version of Apple SDK's.
-  configureFlags = optional stdenv.isDarwin "--disable-cocoa";
-
-  patchPhase = ''
-    sed -i 's/openjpeg-2.2/openjpeg-${openJpegVersion}/' ext/openjpeg/*
+  preConfigure = ''
+    patchShebangs .
   '';
 
+  patches = [
+    (fetchpatch {
+        url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370409";
+        sha256 = "0hy0rcn35alq65yqwri4fqjz2hf3nyyg5c7rnndk51msmqjxpprk";
+    })
+    ./fix_pkgconfig_includedir.patch
+  ];
+
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-bad/${name}.tar.xz";
-    sha256 = "1v5z3i5ha20gmbb3r9dwsaaspv5fm1jfzlzwlzqx1gjj31v5kl1n";
+    sha256 = "17sgzgx1c54k5rzz7ljyz3is0n7yj56k74vv05h8z1gjnsnjnppd";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig python ];
+  nativeBuildInputs = [ meson ninja pkgconfig python gettext ];
 
   buildInputs = [
     gst-plugins-base orc
-    faad2 gtk3 libass libkate libmms
-    libmodplug mpeg2dec mpg123
+    faad2 libass libkate libmms
+    libmodplug mpeg2dec
     openjpeg libopus librsvg
     fluidsynth libvdpau
     libwebp xvidcore gnutls libGLU_combined
@@ -66,8 +69,6 @@ stdenv.mkDerivation rec {
     libintl
   ]
     ++ optional faacSupport faac
-    # for gtksink
-    ++ optional gtkSupport gtk3
     ++ optional stdenv.isLinux wayland
     # wildmidi requires apple's OpenAL
     # TODO: package apple's OpenAL, fix wildmidi, include on Darwin
diff --git a/pkgs/development/libraries/gstreamer/bad/fix_pkgconfig_includedir.patch b/pkgs/development/libraries/gstreamer/bad/fix_pkgconfig_includedir.patch
new file mode 100644
index 000000000000..c687fffc9c08
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/bad/fix_pkgconfig_includedir.patch
@@ -0,0 +1,15 @@
+diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
+index 271f327f3..7e2afa754 100644
+--- a/pkgconfig/meson.build
++++ b/pkgconfig/meson.build
+@@ -2,8 +2,8 @@ pkgconf = configuration_data()
+ 
+ pkgconf.set('prefix', join_paths(get_option('prefix')))
+ pkgconf.set('exec_prefix', '${prefix}')
+-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
+-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
++pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
++pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
+ pkgconf.set('GST_API_VERSION', api_version)
+ pkgconf.set('VERSION', gst_version)
+ 
diff --git a/pkgs/development/libraries/gstreamer/base/default.nix b/pkgs/development/libraries/gstreamer/base/default.nix
index c0c03dc15661..b3a4f445289e 100644
--- a/pkgs/development/libraries/gstreamer/base/default.nix
+++ b/pkgs/development/libraries/gstreamer/base/default.nix
@@ -1,10 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, python, gstreamer, gobjectIntrospection
-, orc, alsaLib, libXv, pango, libtheora
-, cdparanoia, libvisual, libintl
+{ stdenv, fetchurl, fetchpatch, pkgconfig, meson
+, ninja, gettext, gobjectIntrospection, python
+, gstreamer, orc, alsaLib, libXv, pango, libtheora
+, wayland, cdparanoia, libvisual, libintl
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-base-1.12.3";
+  name = "gst-plugins-base-1.14.0";
 
   meta = {
     description = "Base plugins and helper libraries";
@@ -15,29 +16,34 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-base/${name}.tar.xz";
-    sha256 = "19ffwdch7m777ragmwpy6prqmfb742ym1n3ki40s0zyki627plyk";
+    sha256 = "0h39bcp7fcd9kgb189lxr8l0hm0almvzpzgpdh1jpq2nzxh4d43y";
   };
 
   outputs = [ "out" "dev" ];
 
   nativeBuildInputs = [
-    pkgconfig python gobjectIntrospection
+    pkgconfig python meson ninja gettext gobjectIntrospection
   ];
 
   buildInputs = [
-    orc libXv pango libtheora cdparanoia libintl
+    orc libXv pango libtheora cdparanoia libintl wayland
   ]
   ++ stdenv.lib.optional stdenv.isLinux alsaLib
   ++ stdenv.lib.optional (!stdenv.isDarwin) libvisual;
 
   propagatedBuildInputs = [ gstreamer ];
 
-  configureFlags = if stdenv.isDarwin then [
-    # Does not currently build on Darwin
-    "--disable-libvisual"
-    # Undefined symbols _cdda_identify and _cdda_identify_scsi in cdparanoia
-    "--disable-cdparanoia"
-  ] else null;
+  preConfigure = ''
+    patchShebangs .
+  '';
 
   enableParallelBuilding = true;
+
+  patches = [
+    (fetchpatch {
+        url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370414";
+        sha256 = "07x43xis0sr0hfchf36ap0cibx0lkfpqyszb3r3w9dzz301fk04z";
+    })
+    ./fix_pkgconfig_includedir.patch
+  ];
 }
diff --git a/pkgs/development/libraries/gstreamer/base/fix_pkgconfig_includedir.patch b/pkgs/development/libraries/gstreamer/base/fix_pkgconfig_includedir.patch
new file mode 100644
index 000000000000..04486a4647f9
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/base/fix_pkgconfig_includedir.patch
@@ -0,0 +1,15 @@
+diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
+index 04abfbee5..88c86b431 100644
+--- a/pkgconfig/meson.build
++++ b/pkgconfig/meson.build
+@@ -2,8 +2,8 @@ pkgconf = configuration_data()
+ 
+ pkgconf.set('prefix', get_option('prefix'))
+ pkgconf.set('exec_prefix', '${prefix}')
+-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
+-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
++pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
++pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
+ pkgconf.set('GST_API_VERSION', api_version)
+ pkgconf.set('VERSION', gst_version)
+ pkgconf.set('LIBM', libm.found() ? '-lm' : '')
diff --git a/pkgs/development/libraries/gstreamer/core/default.nix b/pkgs/development/libraries/gstreamer/core/default.nix
index ee9438d3c29b..ab3f78767a1c 100644
--- a/pkgs/development/libraries/gstreamer/core/default.nix
+++ b/pkgs/development/libraries/gstreamer/core/default.nix
@@ -1,10 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, perl, bison, flex, python, gobjectIntrospection
-, glib, makeWrapper
-, darwin
+{ stdenv, fetchurl, fetchpatch, meson, ninja
+, pkgconfig, gettext, gobjectIntrospection
+, bison, flex, python3, glib, makeWrapper
+, libcap,libunwind, darwin
 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-1.12.3";
+  name = "gstreamer-1.14.0";
 
   meta = {
     description = "Open source multimedia framework";
@@ -16,31 +17,37 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer/${name}.tar.xz";
-    sha256 = "0vi1g8rmmsnd630ds3jwv2iph46ll8y07fzf04mz15q88j9g926k";
+    sha256 = "0vj6k01lp2yva6rfd95fkyng9jdr62gkz0x8d2l81dyly1ki6dpw";
   };
 
+  patches = [ 
+    (fetchpatch {
+        url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370411";
+        sha256 = "16plzzmkk906k4892zq68j3c9z8vdma5nxzlviq20jfv04ykhmk2";
+    })
+    ./fix_pkgconfig_includedir.patch
+  ];
+
   outputs = [ "out" "dev" ];
   outputBin = "dev";
 
   nativeBuildInputs = [
-    pkgconfig perl bison flex python gobjectIntrospection makeWrapper
+    meson ninja pkgconfig gettext bison flex python3 makeWrapper gobjectIntrospection
   ];
-  buildInputs = stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreServices;
+  buildInputs = [ libcap libunwind ] ++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.CoreServices;
 
   propagatedBuildInputs = [ glib ];
 
-  enableParallelBuilding = true;
-
-  preConfigure = ''
-    configureFlagsArray+=("--exec-prefix=$dev")
-  '';
-
   postInstall = ''
     for prog in "$dev/bin/"*; do
         wrapProgram "$prog" --suffix GST_PLUGIN_SYSTEM_PATH : "\$(unset _tmp; for profile in \$NIX_PROFILES; do _tmp="\$profile/lib/gstreamer-1.0''$\{_tmp:+:\}\$_tmp"; done; printf "\$_tmp")"
     done
   '';
 
+  preConfigure= ''
+    patchShebangs .
+  '';
+
   preFixup = ''
     moveToOutput "share/bash-completion" "$dev"
   '';
diff --git a/pkgs/development/libraries/gstreamer/core/fix_pkgconfig_includedir.patch b/pkgs/development/libraries/gstreamer/core/fix_pkgconfig_includedir.patch
new file mode 100644
index 000000000000..c388a82fa2a8
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/core/fix_pkgconfig_includedir.patch
@@ -0,0 +1,15 @@
+diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
+index edb0586c2..7ed46dfce 100644
+--- a/pkgconfig/meson.build
++++ b/pkgconfig/meson.build
+@@ -2,8 +2,8 @@ pkgconf = configuration_data()
+ 
+ pkgconf.set('prefix', join_paths(get_option('prefix')))
+ pkgconf.set('exec_prefix', '${prefix}')
+-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
+-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
++pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
++pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
+ pkgconf.set('GST_API_VERSION', apiversion)
+ pkgconf.set('VERSION', gst_version)
+ pkgconf.set('LIBM', mathlib.found() ? '-lm' : '')
diff --git a/pkgs/development/libraries/gstreamer/default.nix b/pkgs/development/libraries/gstreamer/default.nix
index 67e765020915..9aec87634040 100644
--- a/pkgs/development/libraries/gstreamer/default.nix
+++ b/pkgs/development/libraries/gstreamer/default.nix
@@ -17,11 +17,7 @@ rec {
 
   gst-libav = callPackage ./libav { inherit gst-plugins-base; };
 
-  gnonlin = callPackage ./gnonlin { inherit gst-plugins-base; };
-
-  # TODO: gnonlin is deprecated in gst-editing-services, better switch to nle
-  # (Non Linear Engine).
-  gst-editing-services = callPackage ./ges { inherit gnonlin; };
+  gst-editing-services = callPackage ./ges { inherit gst-plugins-base; };
 
   gst-vaapi = callPackage ./vaapi {
     inherit gst-plugins-base gstreamer gst-plugins-bad;
diff --git a/pkgs/development/libraries/gstreamer/ges/default.nix b/pkgs/development/libraries/gstreamer/ges/default.nix
index c38ab12ec964..895f298c8269 100644
--- a/pkgs/development/libraries/gstreamer/ges/default.nix
+++ b/pkgs/development/libraries/gstreamer/ges/default.nix
@@ -1,9 +1,10 @@
-{ stdenv, fetchurl, pkgconfig, python, gobjectIntrospection
-, gnonlin, libxml2, flex, perl
+{ stdenv, fetchurl, fetchpatch, meson, ninja
+, pkgconfig, python, gst-plugins-base, libxml2
+, flex, perl, gettext, gobjectIntrospection
 }:
 
 stdenv.mkDerivation rec {
-  name = "gstreamer-editing-services-1.12.3";
+  name = "gstreamer-editing-services-1.14.0";
 
   meta = with stdenv.lib; {
     description = "Library for creation of audio/video non-linear editors";
@@ -14,12 +15,20 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer-editing-services/${name}.tar.xz";
-    sha256 = "0xjz8r0wbzc0kwi9q8akv7w71ii1n2y2dmb0q2p5k4h78382ybh3";
+    sha256 = "14cdd6y9p4k603hsnyhdjw2igg855gwpx0362jmg8k1gagmr0pwd";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig python gobjectIntrospection flex perl ];
+  nativeBuildInputs = [ meson ninja pkgconfig gettext gobjectIntrospection python flex perl ];
 
-  propagatedBuildInputs = [ gnonlin libxml2 ];
+  propagatedBuildInputs = [ gst-plugins-base libxml2 ];
+
+  patches = [
+    (fetchpatch {
+        url = "https://bug794856.bugzilla-attachments.gnome.org/attachment.cgi?id=370413";
+        sha256 = "1xcgbs18g6n5p7z7kqj7ffakwmkxq7ijajyvhyl7p3zvqll9dc7x";
+    })
+    ./fix_pkgconfig_includedir.patch
+  ];
 }
diff --git a/pkgs/development/libraries/gstreamer/ges/fix_pkgconfig_includedir.patch b/pkgs/development/libraries/gstreamer/ges/fix_pkgconfig_includedir.patch
new file mode 100644
index 000000000000..1e12f3bbfbea
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/ges/fix_pkgconfig_includedir.patch
@@ -0,0 +1,15 @@
+diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
+index a612b21b..c017eaff 100644
+--- a/pkgconfig/meson.build
++++ b/pkgconfig/meson.build
+@@ -2,8 +2,8 @@ pkgconf = configuration_data()
+ 
+ pkgconf.set('prefix', get_option('prefix'))
+ pkgconf.set('exec_prefix', '${prefix}')
+-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
+-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
++pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
++pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
+ pkgconf.set('GST_API_VERSION', apiversion)
+ pkgconf.set('VERSION', gst_version)
+ 
diff --git a/pkgs/development/libraries/gstreamer/gnonlin/default.nix b/pkgs/development/libraries/gstreamer/gnonlin/default.nix
deleted file mode 100644
index c04b64ae3c6a..000000000000
--- a/pkgs/development/libraries/gstreamer/gnonlin/default.nix
+++ /dev/null
@@ -1,30 +0,0 @@
-{ stdenv, fetchurl, pkgconfig
-, gst-plugins-base
-}:
-
-stdenv.mkDerivation rec {
-  name = "gnonlin-1.4.0";
-
-  meta = with stdenv.lib; {
-    description = "Gstreamer Non-Linear Multimedia Editing Plugins";
-    homepage    = "https://gstreamer.freedesktop.org";
-    longDescription = ''
-      Gnonlin is a library built on top of GStreamer which provides 
-      support for writing non-linear audio and video editing
-      applications. It introduces the concept of a timeline.
-    '';
-    license     = licenses.lgpl2Plus;
-    platforms   = platforms.unix;
-  };
-
-  src = fetchurl {
-    url = "${meta.homepage}/src/gnonlin/${name}.tar.xz";
-    sha256 = "0zv60rq2h736a6fivd3a3wp59dj1jar7b2vwzykahvl168b7wrid";
-  };
-
-  outputs = [ "out" "dev" ];
-
-  nativeBuildInputs = [ pkgconfig ];
-
-  propagatedBuildInputs = [ gst-plugins-base ];
-}
diff --git a/pkgs/development/libraries/gstreamer/good/default.nix b/pkgs/development/libraries/gstreamer/good/default.nix
index daca02c408ba..5c10221b27d7 100644
--- a/pkgs/development/libraries/gstreamer/good/default.nix
+++ b/pkgs/development/libraries/gstreamer/good/default.nix
@@ -1,17 +1,20 @@
-{ stdenv, fetchurl, pkgconfig, python
-, gst-plugins-base, orc, bzip2
+{ stdenv, fetchurl, meson, ninja, pkgconfig, python
+, gst-plugins-base, orc, bzip2, gettext
 , libv4l, libdv, libavc1394, libiec61883
 , libvpx, speex, flac, taglib, libshout
 , cairo, gdk_pixbuf, aalib, libcaca
 , libsoup, libpulseaudio, libintl
-, darwin
+, darwin, lame, mpg123, twolame
+, gtkSupport ? false, gtk3 ? null
 }:
 
+assert gtkSupport -> gtk3 != null;
+
 let
   inherit (stdenv.lib) optionals optionalString;
 in
 stdenv.mkDerivation rec {
-  name = "gst-plugins-good-1.12.3";
+  name = "gst-plugins-good-1.14.0";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Good Plugins";
@@ -27,24 +30,22 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-good/${name}.tar.xz";
-    sha256 = "00sznj1sl97fqpn6j8ngps04clvxp8h8yhw6lvszx4b855wz9rqk";
+    sha256 = "1226s30cf7pqg3fj8shd20l7sp93yw9sqplgxns3m3ajgms3byka";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig python ];
+  patches = [ ./fix_pkgconfig_includedir.patch ];
+
+  nativeBuildInputs = [ pkgconfig python meson ninja gettext ];
 
   buildInputs = [
     gst-plugins-base orc bzip2
     libdv libvpx speex flac taglib
     cairo gdk_pixbuf aalib libcaca
-    libsoup libshout libintl
+    libsoup libshout lame mpg123 twolame libintl
   ]
   ++ optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.Cocoa ]
   ++ optionals stdenv.isLinux [ libv4l libpulseaudio libavc1394 libiec61883 ];
 
-  preFixup = ''
-    mkdir -p "$dev/lib/gstreamer-1.0"
-    mv "$out/lib/gstreamer-1.0/"*.la "$dev/lib/gstreamer-1.0"
-  '';
 }
diff --git a/pkgs/development/libraries/gstreamer/good/fix_pkgconfig_includedir.patch b/pkgs/development/libraries/gstreamer/good/fix_pkgconfig_includedir.patch
new file mode 100644
index 000000000000..f68ad603a37c
--- /dev/null
+++ b/pkgs/development/libraries/gstreamer/good/fix_pkgconfig_includedir.patch
@@ -0,0 +1,15 @@
+diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build
+index b3bf0d4d4..3e6e576c0 100644
+--- a/pkgconfig/meson.build
++++ b/pkgconfig/meson.build
+@@ -2,8 +2,8 @@ pkgconf = configuration_data()
+ 
+ pkgconf.set('prefix', get_option('prefix'))
+ pkgconf.set('exec_prefix', '${prefix}')
+-pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
+-pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
++pkgconf.set('libdir', join_paths(get_option('prefix'), get_option('libdir')))
++pkgconf.set('includedir', join_paths(get_option('prefix'), get_option('includedir')))
+ pkgconf.set('GST_API_VERSION', api_version)
+ pkgconf.set('VERSION', gst_version)
+ 
diff --git a/pkgs/development/libraries/gstreamer/libav/default.nix b/pkgs/development/libraries/gstreamer/libav/default.nix
index 9969c5e604ff..564b37fab794 100644
--- a/pkgs/development/libraries/gstreamer/libav/default.nix
+++ b/pkgs/development/libraries/gstreamer/libav/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, pkgconfig, python, yasm
-, gst-plugins-base, orc, bzip2
-, withSystemLibav ? true, libav ? null
+{ stdenv, fetchurl, meson, ninja, pkgconfig
+, python, yasm, gst-plugins-base, orc, bzip2
+, gettext, withSystemLibav ? true, libav ? null
 }:
 
 # Note that since gst-libav-1.6, libav is actually ffmpeg. See
@@ -9,7 +9,7 @@
 assert withSystemLibav -> libav != null;
 
 stdenv.mkDerivation rec {
-  name = "gst-libav-1.12.3";
+  name = "gst-libav-1.14.0";
 
   meta = {
     homepage = https://gstreamer.freedesktop.org;
@@ -19,16 +19,13 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-libav/${name}.tar.xz";
-    sha256 = "0l4nc6ikdx49l7bdrk3bd9p3pzry8a328r22zg48gyzpnv5ghph1";
+    sha256 = "12gglx6rarnxbaj0h1wivlgkv467n1bz2bwjigplciq57r6ln4zv";
   };
 
   outputs = [ "out" "dev" ];
 
-  configureFlags = stdenv.lib.optionalString withSystemLibav
-    "--with-system-libav";
-
   nativeBuildInputs = with stdenv.lib;
-    [ pkgconfig python ]
+    [ meson ninja gettext pkgconfig python ]
     ++ optional (!withSystemLibav) yasm
     ;
 
diff --git a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
index 813135f270d3..9ff799b0a27b 100644
--- a/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
+++ b/pkgs/development/libraries/gstreamer/rtsp-server/default.nix
@@ -1,7 +1,9 @@
-{ stdenv, fetchurl, pkgconfig, gst-plugins-base }:
+{ stdenv, fetchurl, meson, ninja, pkgconfig
+, gst-plugins-base, gettext, gobjectIntrospection
+}:
 
 stdenv.mkDerivation rec {
-  name = "gst-rtsp-server-1.12.3";
+  name = "gst-rtsp-server-1.14.0";
 
   meta = with stdenv.lib; {
     description = "Gstreamer RTSP server";
@@ -16,12 +18,12 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-rtsp-server/${name}.tar.xz";
-    sha256 = "1v3lghx75l05hssgwxdxsgrxpn10gxlgkfb6vq0rl0hnpdqmj9b7";
+    sha256 = "0mlp9ms5hfbyzyvmc9xgi7934g4zrh1sbgky2p9zc5fqprvs0rbb";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ meson ninja gettext gobjectIntrospection pkgconfig ];
 
   buildInputs = [ gst-plugins-base ];
 }
diff --git a/pkgs/development/libraries/gstreamer/ugly/default.nix b/pkgs/development/libraries/gstreamer/ugly/default.nix
index a4083b3e84b2..a5449abb9f7d 100644
--- a/pkgs/development/libraries/gstreamer/ugly/default.nix
+++ b/pkgs/development/libraries/gstreamer/ugly/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, pkgconfig, python
-, gst-plugins-base, orc
+{ stdenv, fetchurl, meson, ninja, pkgconfig, python
+, gst-plugins-base, orc, gettext
 , a52dec, libcdio, libdvdread
-, lame, libmad, libmpeg2, x264, libintl, mpg123
+, libmad, libmpeg2, x264, libintl
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-plugins-ugly-1.12.3";
+  name = "gst-plugins-ugly-1.14.0";
 
   meta = with stdenv.lib; {
     description = "Gstreamer Ugly Plugins";
@@ -22,17 +22,17 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-plugins-ugly/${name}.tar.xz";
-    sha256 = "0lh00rg26iy5lr5al23lxsyncjqkgzph1bzkrgp8x9sfr62ab378";
+    sha256 = "1la2nny9hfw3rf3wvqggkg8ivn52qrqqs4n4mqz4ppm2r1gymf9z";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig python ];
+  nativeBuildInputs = [ meson ninja gettext pkgconfig python ];
 
   buildInputs = [
     gst-plugins-base orc
     a52dec libcdio libdvdread
-    lame libmad libmpeg2 x264 mpg123
+    libmad libmpeg2 x264
     libintl
   ];
 }
diff --git a/pkgs/development/libraries/gstreamer/vaapi/default.nix b/pkgs/development/libraries/gstreamer/vaapi/default.nix
index 8351cfd65b1e..11b451e76fdf 100644
--- a/pkgs/development/libraries/gstreamer/vaapi/default.nix
+++ b/pkgs/development/libraries/gstreamer/vaapi/default.nix
@@ -1,20 +1,20 @@
-{ stdenv, fetchurl, pkgconfig, gst-plugins-base, bzip2, libva, wayland
+{ stdenv, fetchurl, meson, ninja, pkgconfig, gst-plugins-base, bzip2, libva, wayland
 , libdrm, udev, xorg, libGLU_combined, yasm, gstreamer, gst-plugins-bad, nasm
 , libvpx, python
 }:
 
 stdenv.mkDerivation rec {
   name = "gst-vaapi-${version}";
-  version = "1.12.4";
+  version = "1.14.0";
 
   src = fetchurl {
     url = "${meta.homepage}/src/gstreamer-vaapi/gstreamer-vaapi-${version}.tar.xz";
-    sha256 = "1jg9nvc8000yi2bcl3wn2yh2hwl7yvlwldj6778w8c0z5qj7fb8w";
+    sha256 = "1whxk428badv8ibji00sn6hj17cp8l9n93rr948bz2gjbq41zqz4";
   };
 
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig bzip2 ];
+  nativeBuildInputs = [ meson ninja pkgconfig bzip2 ];
 
   buildInputs = [
     gstreamer gst-plugins-base gst-plugins-bad libva wayland libdrm udev
@@ -22,11 +22,10 @@ stdenv.mkDerivation rec {
     xorg.libICE libGLU_combined nasm libvpx python
   ];
 
-  preConfigure = "
+  preConfigure = ''
     export GST_PLUGIN_PATH_1_0=$out/lib/gstreamer-1.0
     mkdir -p $GST_PLUGIN_PATH_1_0
-    ";
-  configureFlags = "--disable-builtin-libvpx --with-gstreamer-api=1.0";
+  '';
 
   meta = {
     homepage = https://gstreamer.freedesktop.org;
diff --git a/pkgs/development/libraries/gstreamer/validate/default.nix b/pkgs/development/libraries/gstreamer/validate/default.nix
index 1cb5e4f968ef..bd33d9c52807 100644
--- a/pkgs/development/libraries/gstreamer/validate/default.nix
+++ b/pkgs/development/libraries/gstreamer/validate/default.nix
@@ -3,7 +3,7 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "gst-validate-1.12.3";
+  name = "gst-validate-1.14.0";
 
   meta = {
     description = "Integration testing infrastructure for the GStreamer framework";
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "${meta.homepage}/src/gst-validate/${name}.tar.xz";
-    sha256 = "17j812pkzgbyn9ys3b305yl5mrf9nbm8whwj4iqdskr742fr8fai";
+    sha256 = "1pzzxqkv1spjrzpzpazdm2h4s2wk7gg5gag8nxj5v2gjfyzhiprk";
   };
 
   outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index 436cf56dc132..67837b345c00 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -5,8 +5,17 @@
 , gnomeSupport ? false, gnome, makeWrapper
 , libimobiledevice, libbluray, libcdio-paranoia, libnfs, openssh
 , libsecret, libgdata
+# Remove when switching back to meson
+, autoreconfHook, lzma, bzip2
 }:
 
+# TODO: switch to meson when upstream fixes a non-deterministic build failure
+# See https://bugzilla.gnome.org/show_bug.cgi?id=794549
+
+# Meson specific things are commented out and annotated, so switching back
+# should simply require deleting autotools specific things and adding back meson
+# flags etc.
+
 let
   pname = "gvfs";
   version = "1.36.0";
@@ -19,13 +28,15 @@ stdenv.mkDerivation rec {
     sha256 = "1fsn6aa9a68cfbna9s00l1ry4ym1fr7ii2f45hzj2fipxfpqihwy";
   };
 
-  postPatch = ''
-    chmod +x meson_post_install.py # patchShebangs requires executable file
-    patchShebangs meson_post_install.py
-  '';
+  # Uncomment when switching back to meson
+  # postPatch = ''
+  #   chmod +x meson_post_install.py # patchShebangs requires executable file
+  #   patchShebangs meson_post_install.py
+  # '';
 
   nativeBuildInputs = [
-    meson ninja
+    autoreconfHook # Remove when switching to meson
+    # meson ninja
     pkgconfig gettext makeWrapper
     libxml2 libxslt docbook_xsl docbook_xml_dtd_42
   ];
@@ -35,24 +46,30 @@ stdenv.mkDerivation rec {
       libgphoto2 avahi libarchive fuse libcdio
       samba libmtp libcap polkit libimobiledevice libbluray
       libcdio-paranoia libnfs openssh
+      # Remove when switching back to meson
+      lzma bzip2
       # ToDo: a ligther version of libsoup to have FTP/HTTP support?
     ] ++ stdenv.lib.optionals gnomeSupport (with gnome; [
       libsoup gcr
       gnome-online-accounts libsecret libgdata
     ]);
 
-  mesonFlags = [
-    "-Dgio_module_dir=lib/gio/modules"
-    "-Dsystemduserunitdir=lib/systemd/user"
-    "-Ddbus_service_dir=share/dbus-1/services"
-    "-Dtmpfilesdir=no"
-  ] ++ stdenv.lib.optionals (!gnomeSupport) [
-    "-Dgcr=false" "-Dgoa=false" "-Dkeyring=false" "-Dhttp=false"
-    "-Dgoogle=false"
-  ] ++ stdenv.lib.optionals (samba == null) [
-    # Xfce don't want samba
-    "-Dsmb=false"
-  ];
+  # Remove when switching back to meson
+  configureFlags = stdenv.lib.optional (!gnomeSupport) "--disable-gcr";
+
+  # Uncomment when switching back to meson
+  # mesonFlags = [
+  #   "-Dgio_module_dir=lib/gio/modules"
+  #   "-Dsystemduserunitdir=lib/systemd/user"
+  #   "-Ddbus_service_dir=share/dbus-1/services"
+  #   "-Dtmpfilesdir=no"
+  # ] ++ stdenv.lib.optionals (!gnomeSupport) [
+  #   "-Dgcr=false" "-Dgoa=false" "-Dkeyring=false" "-Dhttp=false"
+  #   "-Dgoogle=false"
+  # ] ++ stdenv.lib.optionals (samba == null) [
+  #   # Xfce don't want samba
+  #   "-Dsmb=false"
+  # ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/development/libraries/lightstep-tracer-cpp/default.nix b/pkgs/development/libraries/lightstep-tracer-cpp/default.nix
index f5660e93d79a..f2a8d75a9cbb 100644
--- a/pkgs/development/libraries/lightstep-tracer-cpp/default.nix
+++ b/pkgs/development/libraries/lightstep-tracer-cpp/default.nix
@@ -48,5 +48,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     platforms = platforms.linux;
     maintainers = with maintainers; [ cstrahan ];
+    broken = true; # 2018-02-16
   };
 }
diff --git a/pkgs/development/libraries/mpfr/upstream.patch b/pkgs/development/libraries/mpfr/upstream.patch
deleted file mode 100644
index 779331605245..000000000000
--- a/pkgs/development/libraries/mpfr/upstream.patch
+++ /dev/null
@@ -1,1699 +0,0 @@
-diff -Naurd mpfr-3.1.3-a/PATCHES mpfr-3.1.3-b/PATCHES
---- mpfr-3.1.3-a/PATCHES	2015-07-02 10:49:23.950112879 +0000
-+++ mpfr-3.1.3-b/PATCHES	2015-07-02 10:49:24.042113845 +0000
-@@ -0,0 +1 @@
-+lngamma-and-doc
-diff -Naurd mpfr-3.1.3-a/VERSION mpfr-3.1.3-b/VERSION
---- mpfr-3.1.3-a/VERSION	2015-06-19 19:55:09.000000000 +0000
-+++ mpfr-3.1.3-b/VERSION	2015-07-02 10:49:24.042113845 +0000
-@@ -1 +1 @@
--3.1.3
-+3.1.3-p1
-diff -Naurd mpfr-3.1.3-a/doc/mpfr.texi mpfr-3.1.3-b/doc/mpfr.texi
---- mpfr-3.1.3-a/doc/mpfr.texi	2015-06-19 19:55:11.000000000 +0000
-+++ mpfr-3.1.3-b/doc/mpfr.texi	2015-07-02 10:49:24.018113593 +0000
-@@ -810,13 +810,17 @@
- When the input point is in the closure of the domain of the mathematical
- function and an input argument is +0 (resp.@: @minus{}0), one considers
- the limit when the corresponding argument approaches 0 from above
--(resp.@: below). If the limit is not defined (e.g., @code{mpfr_log} on
--@minus{}0), the behavior is specified in the description of the MPFR function.
-+(resp.@: below), if possible. If the limit is not defined (e.g.,
-+@code{mpfr_sqrt} and @code{mpfr_log} on @minus{}0), the behavior is
-+specified in the description of the MPFR function, but must be consistent
-+with the rule from the above paragraph (e.g., @code{mpfr_log} on @pom{}0
-+gives @minus{}Inf).
- 
- When the result is equal to 0, its sign is determined by considering the
- limit as if the input point were not in the domain: If one approaches 0
- from above (resp.@: below), the result is +0 (resp.@: @minus{}0);
--for example, @code{mpfr_sin} on +0 gives +0.
-+for example, @code{mpfr_sin} on @minus{}0 gives @minus{}0 and
-+@code{mpfr_acos} on 1 gives +0 (in all rounding modes).
- In the other cases, the sign is specified in the description of the MPFR
- function; for example @code{mpfr_max} on @minus{}0 and +0 gives +0.
- 
-@@ -832,8 +836,8 @@
- @c that advantages in practice), like for any bug fix.
- Example: @code{mpfr_hypot} on (NaN,0) gives NaN, but @code{mpfr_hypot}
- on (NaN,+Inf) gives +Inf (as specified in @ref{Special Functions}),
--since for any finite input @var{x}, @code{mpfr_hypot} on (@var{x},+Inf)
--gives +Inf.
-+since for any finite or infinite input @var{x}, @code{mpfr_hypot} on
-+(@var{x},+Inf) gives +Inf.
- 
- @node Exceptions, Memory Handling, Floating-Point Values on Special Numbers, MPFR Basics
- @comment  node-name,  next,  previous,  up
-@@ -1581,7 +1585,8 @@
- @deftypefunx int mpfr_add_z (mpfr_t @var{rop}, mpfr_t @var{op1}, mpz_t @var{op2}, mpfr_rnd_t @var{rnd})
- @deftypefunx int mpfr_add_q (mpfr_t @var{rop}, mpfr_t @var{op1}, mpq_t @var{op2}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @math{@var{op1} + @var{op2}} rounded in the direction
--@var{rnd}. For types having no signed zero, it is considered unsigned
-+@var{rnd}.  The IEEE-754 rules are used, in particular for signed zeros.
-+But for types having no signed zeros, 0 is considered unsigned
- (i.e., (+0) + 0 = (+0) and (@minus{}0) + 0 = (@minus{}0)).
- The @code{mpfr_add_d} function assumes that the radix of the @code{double} type
- is a power of 2, with a precision at most that declared by the C implementation
-@@ -1599,7 +1604,8 @@
- @deftypefunx int mpfr_sub_z (mpfr_t @var{rop}, mpfr_t @var{op1}, mpz_t @var{op2}, mpfr_rnd_t @var{rnd})
- @deftypefunx int mpfr_sub_q (mpfr_t @var{rop}, mpfr_t @var{op1}, mpq_t @var{op2}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @math{@var{op1} - @var{op2}} rounded in the direction
--@var{rnd}. For types having no signed zero, it is considered unsigned
-+@var{rnd}.  The IEEE-754 rules are used, in particular for signed zeros.
-+But for types having no signed zeros, 0 is considered unsigned
- (i.e., (+0) @minus{} 0 = (+0), (@minus{}0) @minus{} 0 = (@minus{}0),
- 0 @minus{} (+0) = (@minus{}0) and 0 @minus{} (@minus{}0) = (+0)).
- The same restrictions than for @code{mpfr_add_d} apply to @code{mpfr_d_sub}
-@@ -1615,7 +1621,7 @@
- Set @var{rop} to @math{@var{op1} @GMPtimes{} @var{op2}} rounded in the
- direction @var{rnd}.
- When a result is zero, its sign is the product of the signs of the operands
--(for types having no signed zero, it is considered positive).
-+(for types having no signed zeros, 0 is considered positive).
- The same restrictions than for @code{mpfr_add_d} apply to @code{mpfr_mul_d}.
- @end deftypefun
- 
-@@ -1635,7 +1641,7 @@
- @deftypefunx int mpfr_div_q (mpfr_t @var{rop}, mpfr_t @var{op1}, mpq_t @var{op2}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @math{@var{op1}/@var{op2}} rounded in the direction @var{rnd}.
- When a result is zero, its sign is the product of the signs of the operands
--(for types having no signed zero, it is considered positive).
-+(for types having no signed zeros, 0 is considered positive).
- The same restrictions than for @code{mpfr_add_d} apply to @code{mpfr_d_div}
- and @code{mpfr_div_d}.
- @end deftypefun
-@@ -1643,15 +1649,18 @@
- @deftypefun int mpfr_sqrt (mpfr_t @var{rop}, mpfr_t @var{op}, mpfr_rnd_t @var{rnd})
- @deftypefunx int mpfr_sqrt_ui (mpfr_t @var{rop}, unsigned long int @var{op}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @m{\sqrt{@var{op}}, the square root of @var{op}}
--rounded in the direction @var{rnd} (set @var{rop} to @minus{}0 if @var{op} is
--@minus{}0, to be consistent with the IEEE 754 standard).
-+rounded in the direction @var{rnd}.  Set @var{rop} to @minus{}0 if
-+@var{op} is @minus{}0, to be consistent with the IEEE 754 standard.
- Set @var{rop} to NaN if @var{op} is negative.
- @end deftypefun
- 
- @deftypefun int mpfr_rec_sqrt (mpfr_t @var{rop}, mpfr_t @var{op}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @m{1/\sqrt{@var{op}}, the reciprocal square root of @var{op}}
--rounded in the direction @var{rnd}. Set @var{rop} to +Inf if @var{op} is
--@pom{}0, +0 if @var{op} is +Inf, and NaN if @var{op} is negative.
-+rounded in the direction @var{rnd}.  Set @var{rop} to +Inf if @var{op} is
-+@pom{}0, +0 if @var{op} is +Inf, and NaN if @var{op} is negative.  Warning!
-+Therefore the result on @minus{}0 is different from the one of the rSqrt
-+function recommended by the IEEE 754-2008 standard (Section 9.2.1), which
-+is @minus{}Inf instead of +Inf.
- @end deftypefun
- 
- @deftypefun int mpfr_cbrt (mpfr_t @var{rop}, mpfr_t @var{op}, mpfr_rnd_t @var{rnd})
-@@ -1832,7 +1841,9 @@
- @m{\log_2 @var{op}, log2(@var{op})} or
- @m{\log_{10} @var{op}, log10(@var{op})}, respectively,
- rounded in the direction @var{rnd}.
--Set @var{rop} to @minus{}Inf if @var{op} is @minus{}0
-+Set @var{rop} to +0 if @var{op} is 1 (in all rounding modes),
-+for consistency with the ISO C99 and IEEE 754-2008 standards.
-+Set @var{rop} to @minus{}Inf if @var{op} is @pom{}0
- (i.e., the sign of the zero has no influence on the result).
- @end deftypefun
- 
-@@ -2003,8 +2014,11 @@
- @deftypefun int mpfr_lngamma (mpfr_t @var{rop}, mpfr_t @var{op}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to the value of the logarithm of the Gamma function on @var{op},
- rounded in the direction @var{rnd}.
--When @math{@minus{}2@var{k}@minus{}1 @le{} @var{op} @le{} @minus{}2@var{k}},
--@var{k} being a non-negative integer, @var{rop} is set to NaN.
-+When @var{op} is 1 or 2, set @var{rop} to +0 (in all rounding modes).
-+When @var{op} is an infinity or a nonpositive integer, set @var{rop} to +Inf,
-+following the general rules on special values.
-+When @math{@minus{}2@var{k}@minus{}1 < @var{op} < @minus{}2@var{k}},
-+@var{k} being a nonnegative integer, set @var{rop} to NaN@.
- See also @code{mpfr_lgamma}.
- @end deftypefun
- 
-@@ -2012,10 +2026,11 @@
- Set @var{rop} to the value of the logarithm of the absolute value of the
- Gamma function on @var{op}, rounded in the direction @var{rnd}. The sign
- (1 or @minus{}1) of Gamma(@var{op}) is returned in the object pointed to
--by @var{signp}. When @var{op} is an infinity or a non-positive integer, set
--@var{rop} to +Inf. When @var{op} is NaN, @minus{}Inf or a negative integer,
--*@var{signp} is undefined, and when @var{op} is @pom{}0, *@var{signp} is
--the sign of the zero.
-+by @var{signp}.
-+When @var{op} is 1 or 2, set @var{rop} to +0 (in all rounding modes).
-+When @var{op} is an infinity or a nonpositive integer, set @var{rop} to +Inf.
-+When @var{op} is NaN, @minus{}Inf or a negative integer, *@var{signp} is
-+undefined, and when @var{op} is @pom{}0, *@var{signp} is the sign of the zero.
- @end deftypefun
- 
- @deftypefun int mpfr_digamma (mpfr_t @var{rop}, mpfr_t @var{op}, mpfr_rnd_t @var{rnd})
-@@ -2064,7 +2079,10 @@
- @deftypefunx int mpfr_fms (mpfr_t @var{rop}, mpfr_t @var{op1}, mpfr_t @var{op2}, mpfr_t @var{op3}, mpfr_rnd_t @var{rnd})
- Set @var{rop} to @math{(@var{op1} @GMPtimes{} @var{op2}) + @var{op3}}
- (resp.@: @math{(@var{op1} @GMPtimes{} @var{op2}) - @var{op3}})
--rounded in the direction @var{rnd}.
-+rounded in the direction @var{rnd}.  Concerning special values (signed zeros,
-+infinities, NaN), these functions behave like a multiplication followed by a
-+separate addition or subtraction.  That is, the fused operation matters only
-+for rounding.
- @end deftypefun
- 
- @deftypefun int mpfr_agm (mpfr_t @var{rop}, mpfr_t @var{op1}, mpfr_t @var{op2}, mpfr_rnd_t @var{rnd})
-@@ -2089,8 +2107,8 @@
- i.e., $\sqrt{x^2+y^2}$,
- @end tex
- rounded in the direction @var{rnd}.
--Special values are handled as described in Section F.9.4.3 of
--the ISO C99 and IEEE 754-2008 standards:
-+Special values are handled as described in the ISO C99 (Section F.9.4.3)
-+and IEEE 754-2008 (Section 9.2.1) standards:
- If @var{x} or @var{y} is an infinity, then +Inf is returned in @var{rop},
- even if the other number is NaN.
- @end deftypefun
-diff -Naurd mpfr-3.1.3-a/doc/mpfr.info mpfr-3.1.3-b/doc/mpfr.info
---- mpfr-3.1.3-a/doc/mpfr.info	2015-06-19 19:55:53.000000000 +0000
-+++ mpfr-3.1.3-b/doc/mpfr.info	2015-07-02 10:49:38.718267817 +0000
-@@ -1,4 +1,4 @@
--This is mpfr.info, produced by makeinfo version 5.2 from mpfr.texi.
-+This is mpfr.info, produced by makeinfo version 6.0 from mpfr.texi.
- 
- This manual documents how to install and use the Multiple Precision
- Floating-Point Reliable Library, version 3.1.3.
-@@ -55,7 +55,7 @@
- MPFR Copying Conditions
- ***********************
- 
--The GNU MPFR library (or MPFR for short) is "free"; this means that
-+The GNU MPFR library (or MPFR for short) is “free”; this means that
- everyone is free to use it and free to redistribute it on a free basis.
- The library is not in the public domain; it is copyrighted and there are
- restrictions on its distribution, but these restrictions are designed to
-@@ -418,7 +418,7 @@
- 4.2 Nomenclature and Types
- ==========================
- 
--A "floating-point number", or "float" for short, is an arbitrary
-+A “floating-point number”, or “float” for short, is an arbitrary
- precision significand (also called mantissa) with a limited precision
- exponent.  The C data type for such objects is ‘mpfr_t’ (internally
- defined as a one-element array of a structure, and ‘mpfr_ptr’ is the C
-@@ -432,7 +432,7 @@
- to the other functions supported by MPFR. Unless documented otherwise,
- the sign bit of a NaN is unspecified.
- 
--The "precision" is the number of bits used to represent the significand
-+The “precision” is the number of bits used to represent the significand
- of a floating-point number; the corresponding C data type is
- ‘mpfr_prec_t’.  The precision can be any integer between ‘MPFR_PREC_MIN’
- and ‘MPFR_PREC_MAX’.  In the current implementation, ‘MPFR_PREC_MIN’ is
-@@ -446,7 +446,7 @@
- may abort, crash or have undefined behavior (depending on your C
- implementation).
- 
--The "rounding mode" specifies the way to round the result of a
-+The “rounding mode” specifies the way to round the result of a
- floating-point operation, in case the exact result can not be
- represented exactly in the destination significand; the corresponding C
- data type is ‘mpfr_rnd_t’.
-@@ -499,14 +499,14 @@
- representable numbers, it is rounded to the one with the least
- significant bit set to zero.  For example, the number 2.5, which is
- represented by (10.1) in binary, is rounded to (10.0)=2 with a precision
--of two bits, and not to (11.0)=3.  This rule avoids the "drift"
-+of two bits, and not to (11.0)=3.  This rule avoids the “drift”
- phenomenon mentioned by Knuth in volume 2 of The Art of Computer
- Programming (Section 4.2.2).
- 
-    Most MPFR functions take as first argument the destination variable,
- as second and following arguments the input variables, as last argument
- a rounding mode, and have a return value of type ‘int’, called the
--"ternary value".  The value stored in the destination variable is
-+“ternary value”.  The value stored in the destination variable is
- correctly rounded, i.e., MPFR behaves as if it computed the result with
- an infinite precision, then rounded it to the precision of this
- variable.  The input variables are regarded as exact (in particular,
-@@ -572,15 +572,18 @@
-    When the input point is in the closure of the domain of the
- mathematical function and an input argument is +0 (resp. −0), one
- considers the limit when the corresponding argument approaches 0 from
--above (resp. below).  If the limit is not defined (e.g., ‘mpfr_log’ on
--−0), the behavior is specified in the description of the MPFR function.
-+above (resp. below), if possible.  If the limit is not defined (e.g.,
-+‘mpfr_sqrt’ and ‘mpfr_log’ on −0), the behavior is specified in the
-+description of the MPFR function, but must be consistent with the rule
-+from the above paragraph (e.g., ‘mpfr_log’ on ±0 gives −Inf).
- 
-    When the result is equal to 0, its sign is determined by considering
- the limit as if the input point were not in the domain: If one
- approaches 0 from above (resp. below), the result is +0 (resp. −0); for
--example, ‘mpfr_sin’ on +0 gives +0.  In the other cases, the sign is
--specified in the description of the MPFR function; for example
--‘mpfr_max’ on −0 and +0 gives +0.
-+example, ‘mpfr_sin’ on −0 gives −0 and ‘mpfr_acos’ on 1 gives +0 (in all
-+rounding modes).  In the other cases, the sign is specified in the
-+description of the MPFR function; for example ‘mpfr_max’ on −0 and +0
-+gives +0.
- 
-    When the input point is not in the closure of the domain of the
- function, the result is NaN. Example: ‘mpfr_sqrt’ on −17 gives NaN.
-@@ -590,8 +593,8 @@
- numbers; such a case is always explicitly specified in *note MPFR
- Interface::.  Example: ‘mpfr_hypot’ on (NaN,0) gives NaN, but
- ‘mpfr_hypot’ on (NaN,+Inf) gives +Inf (as specified in *note Special
--Functions::), since for any finite input X, ‘mpfr_hypot’ on (X,+Inf)
--gives +Inf.
-+Functions::), since for any finite or infinite input X, ‘mpfr_hypot’ on
-+(X,+Inf) gives +Inf.
- 
- 
- File: mpfr.info,  Node: Exceptions,  Next: Memory Handling,  Prev: Floating-Point Values on Special Numbers,  Up: MPFR Basics
-@@ -1253,8 +1256,9 @@
-           mpfr_rnd_t RND)
-  -- Function: int mpfr_add_q (mpfr_t ROP, mpfr_t OP1, mpq_t OP2,
-           mpfr_rnd_t RND)
--     Set ROP to OP1 + OP2 rounded in the direction RND.  For types
--     having no signed zero, it is considered unsigned (i.e., (+0) + 0 =
-+     Set ROP to OP1 + OP2 rounded in the direction RND.  The IEEE-754
-+     rules are used, in particular for signed zeros.  But for types
-+     having no signed zeros, 0 is considered unsigned (i.e., (+0) + 0 =
-      (+0) and (−0) + 0 = (−0)).  The ‘mpfr_add_d’ function assumes that
-      the radix of the ‘double’ type is a power of 2, with a precision at
-      most that declared by the C implementation (macro
-@@ -1280,8 +1284,9 @@
-           mpfr_rnd_t RND)
-  -- Function: int mpfr_sub_q (mpfr_t ROP, mpfr_t OP1, mpq_t OP2,
-           mpfr_rnd_t RND)
--     Set ROP to OP1 - OP2 rounded in the direction RND.  For types
--     having no signed zero, it is considered unsigned (i.e., (+0) − 0 =
-+     Set ROP to OP1 - OP2 rounded in the direction RND.  The IEEE-754
-+     rules are used, in particular for signed zeros.  But for types
-+     having no signed zeros, 0 is considered unsigned (i.e., (+0) − 0 =
-      (+0), (−0) − 0 = (−0), 0 − (+0) = (−0) and 0 − (−0) = (+0)).  The
-      same restrictions than for ‘mpfr_add_d’ apply to ‘mpfr_d_sub’ and
-      ‘mpfr_sub_d’.
-@@ -1300,7 +1305,7 @@
-           mpfr_rnd_t RND)
-      Set ROP to OP1 times OP2 rounded in the direction RND.  When a
-      result is zero, its sign is the product of the signs of the
--     operands (for types having no signed zero, it is considered
-+     operands (for types having no signed zeros, 0 is considered
-      positive).  The same restrictions than for ‘mpfr_add_d’ apply to
-      ‘mpfr_mul_d’.
- 
-@@ -1327,21 +1332,24 @@
-           mpfr_rnd_t RND)
-      Set ROP to OP1/OP2 rounded in the direction RND.  When a result is
-      zero, its sign is the product of the signs of the operands (for
--     types having no signed zero, it is considered positive).  The same
-+     types having no signed zeros, 0 is considered positive).  The same
-      restrictions than for ‘mpfr_add_d’ apply to ‘mpfr_d_div’ and
-      ‘mpfr_div_d’.
- 
-  -- Function: int mpfr_sqrt (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-  -- Function: int mpfr_sqrt_ui (mpfr_t ROP, unsigned long int OP,
-           mpfr_rnd_t RND)
--     Set ROP to the square root of OP rounded in the direction RND (set
--     ROP to −0 if OP is −0, to be consistent with the IEEE 754
--     standard).  Set ROP to NaN if OP is negative.
-+     Set ROP to the square root of OP rounded in the direction RND.  Set
-+     ROP to −0 if OP is −0, to be consistent with the IEEE 754 standard.
-+     Set ROP to NaN if OP is negative.
- 
-  -- Function: int mpfr_rec_sqrt (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-      Set ROP to the reciprocal square root of OP rounded in the
-      direction RND.  Set ROP to +Inf if OP is ±0, +0 if OP is +Inf, and
--     NaN if OP is negative.
-+     NaN if OP is negative.  Warning!  Therefore the result on −0 is
-+     different from the one of the rSqrt function recommended by the
-+     IEEE 754-2008 standard (Section 9.2.1), which is −Inf instead of
-+     +Inf.
- 
-  -- Function: int mpfr_cbrt (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-  -- Function: int mpfr_root (mpfr_t ROP, mpfr_t OP, unsigned long int K,
-@@ -1515,8 +1523,10 @@
-  -- Function: int mpfr_log2 (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-  -- Function: int mpfr_log10 (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-      Set ROP to the natural logarithm of OP, log2(OP) or log10(OP),
--     respectively, rounded in the direction RND.  Set ROP to −Inf if OP
--     is −0 (i.e., the sign of the zero has no influence on the result).
-+     respectively, rounded in the direction RND.  Set ROP to +0 if OP is
-+     1 (in all rounding modes), for consistency with the ISO C99 and
-+     IEEE 754-2008 standards.  Set ROP to −Inf if OP is ±0 (i.e., the
-+     sign of the zero has no influence on the result).
- 
-  -- Function: int mpfr_exp (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-  -- Function: int mpfr_exp2 (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-@@ -1649,17 +1659,21 @@
- 
-  -- Function: int mpfr_lngamma (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-      Set ROP to the value of the logarithm of the Gamma function on OP,
--     rounded in the direction RND.  When −2K−1 <= OP <= −2K, K being a
--     non-negative integer, ROP is set to NaN. See also ‘mpfr_lgamma’.
-+     rounded in the direction RND.  When OP is 1 or 2, set ROP to +0 (in
-+     all rounding modes).  When OP is an infinity or a nonpositive
-+     integer, set ROP to +Inf, following the general rules on special
-+     values.  When −2K−1 < OP < −2K, K being a nonnegative integer, set
-+     ROP to NaN.  See also ‘mpfr_lgamma’.
- 
-  -- Function: int mpfr_lgamma (mpfr_t ROP, int *SIGNP, mpfr_t OP,
-           mpfr_rnd_t RND)
-      Set ROP to the value of the logarithm of the absolute value of the
-      Gamma function on OP, rounded in the direction RND.  The sign (1 or
-      −1) of Gamma(OP) is returned in the object pointed to by SIGNP.
--     When OP is an infinity or a non-positive integer, set ROP to +Inf.
--     When OP is NaN, −Inf or a negative integer, *SIGNP is undefined,
--     and when OP is ±0, *SIGNP is the sign of the zero.
-+     When OP is 1 or 2, set ROP to +0 (in all rounding modes).  When OP
-+     is an infinity or a nonpositive integer, set ROP to +Inf.  When OP
-+     is NaN, −Inf or a negative integer, *SIGNP is undefined, and when
-+     OP is ±0, *SIGNP is the sign of the zero.
- 
-  -- Function: int mpfr_digamma (mpfr_t ROP, mpfr_t OP, mpfr_rnd_t RND)
-      Set ROP to the value of the Digamma (sometimes also called Psi)
-@@ -1703,7 +1717,10 @@
-  -- Function: int mpfr_fms (mpfr_t ROP, mpfr_t OP1, mpfr_t OP2, mpfr_t
-           OP3, mpfr_rnd_t RND)
-      Set ROP to (OP1 times OP2) + OP3 (resp. (OP1 times OP2) - OP3)
--     rounded in the direction RND.
-+     rounded in the direction RND.  Concerning special values (signed
-+     zeros, infinities, NaN), these functions behave like a
-+     multiplication followed by a separate addition or subtraction.
-+     That is, the fused operation matters only for rounding.
- 
-  -- Function: int mpfr_agm (mpfr_t ROP, mpfr_t OP1, mpfr_t OP2,
-           mpfr_rnd_t RND)
-@@ -1717,9 +1734,10 @@
-           RND)
-      Set ROP to the Euclidean norm of X and Y, i.e., the square root of
-      the sum of the squares of X and Y, rounded in the direction RND.
--     Special values are handled as described in Section F.9.4.3 of the
--     ISO C99 and IEEE 754-2008 standards: If X or Y is an infinity, then
--     +Inf is returned in ROP, even if the other number is NaN.
-+     Special values are handled as described in the ISO C99 (Section
-+     F.9.4.3) and IEEE 754-2008 (Section 9.2.1) standards: If X or Y is
-+     an infinity, then +Inf is returned in ROP, even if the other number
-+     is NaN.
- 
-  -- Function: int mpfr_ai (mpfr_t ROP, mpfr_t X, mpfr_rnd_t RND)
-      Set ROP to the value of the Airy function Ai on X, rounded in the
-@@ -2670,7 +2688,7 @@
- 5.16 Internals
- ==============
- 
--A "limb" means the part of a multi-precision number that fits in a
-+A “limb” means the part of a multi-precision number that fits in a
- single word.  Usually a limb contains 32 or 64 bits.  The C data type
- for a limb is ‘mp_limb_t’.
- 
-@@ -3140,7 +3158,7 @@
-   0. PREAMBLE
- 
-      The purpose of this License is to make a manual, textbook, or other
--     functional and useful document "free" in the sense of freedom: to
-+     functional and useful document “free” in the sense of freedom: to
-      assure everyone the effective freedom to copy and redistribute it,
-      with or without modifying it, either commercially or
-      noncommercially.  Secondarily, this License preserves for the
-@@ -3655,9 +3673,9 @@
- * Menu:
- 
- * mpfr_abs:                              Basic Arithmetic Functions.
--                                                              (line 160)
--* mpfr_acos:                             Special Functions.   (line  51)
--* mpfr_acosh:                            Special Functions.   (line 115)
-+                                                              (line 165)
-+* mpfr_acos:                             Special Functions.   (line  53)
-+* mpfr_acosh:                            Special Functions.   (line 117)
- * mpfr_add:                              Basic Arithmetic Functions.
-                                                               (line   6)
- * mpfr_add_d:                            Basic Arithmetic Functions.
-@@ -3670,15 +3688,15 @@
-                                                               (line   8)
- * mpfr_add_z:                            Basic Arithmetic Functions.
-                                                               (line  14)
--* mpfr_agm:                              Special Functions.   (line 210)
--* mpfr_ai:                               Special Functions.   (line 226)
--* mpfr_asin:                             Special Functions.   (line  52)
--* mpfr_asinh:                            Special Functions.   (line 116)
-+* mpfr_agm:                              Special Functions.   (line 219)
-+* mpfr_ai:                               Special Functions.   (line 236)
-+* mpfr_asin:                             Special Functions.   (line  54)
-+* mpfr_asinh:                            Special Functions.   (line 118)
- * mpfr_asprintf:                         Formatted Output Functions.
-                                                               (line 193)
--* mpfr_atan:                             Special Functions.   (line  53)
--* mpfr_atan2:                            Special Functions.   (line  63)
--* mpfr_atanh:                            Special Functions.   (line 117)
-+* mpfr_atan:                             Special Functions.   (line  55)
-+* mpfr_atan2:                            Special Functions.   (line  65)
-+* mpfr_atanh:                            Special Functions.   (line 119)
- * mpfr_buildopt_decimal_p:               Miscellaneous Functions.
-                                                               (line 162)
- * mpfr_buildopt_gmpinternals_p:          Miscellaneous Functions.
-@@ -3690,7 +3708,7 @@
- * mpfr_can_round:                        Rounding Related Functions.
-                                                               (line  39)
- * mpfr_cbrt:                             Basic Arithmetic Functions.
--                                                              (line 108)
-+                                                              (line 113)
- * mpfr_ceil:                             Integer Related Functions.
-                                                               (line   7)
- * mpfr_check_range:                      Exception Related Functions.
-@@ -3735,18 +3753,18 @@
-                                                               (line  27)
- * mpfr_cmp_z:                            Comparison Functions.
-                                                               (line  11)
--* mpfr_const_catalan:                    Special Functions.   (line 237)
--* mpfr_const_euler:                      Special Functions.   (line 236)
--* mpfr_const_log2:                       Special Functions.   (line 234)
--* mpfr_const_pi:                         Special Functions.   (line 235)
-+* mpfr_const_catalan:                    Special Functions.   (line 247)
-+* mpfr_const_euler:                      Special Functions.   (line 246)
-+* mpfr_const_log2:                       Special Functions.   (line 244)
-+* mpfr_const_pi:                         Special Functions.   (line 245)
- * mpfr_copysign:                         Miscellaneous Functions.
-                                                               (line 109)
--* mpfr_cos:                              Special Functions.   (line  29)
--* mpfr_cosh:                             Special Functions.   (line  95)
--* mpfr_cot:                              Special Functions.   (line  47)
--* mpfr_coth:                             Special Functions.   (line 111)
--* mpfr_csc:                              Special Functions.   (line  46)
--* mpfr_csch:                             Special Functions.   (line 110)
-+* mpfr_cos:                              Special Functions.   (line  31)
-+* mpfr_cosh:                             Special Functions.   (line  97)
-+* mpfr_cot:                              Special Functions.   (line  49)
-+* mpfr_coth:                             Special Functions.   (line 113)
-+* mpfr_csc:                              Special Functions.   (line  48)
-+* mpfr_csch:                             Special Functions.   (line 112)
- * mpfr_custom_get_exp:                   Custom Interface.    (line  75)
- * mpfr_custom_get_kind:                  Custom Interface.    (line  65)
- * mpfr_custom_get_significand:           Custom Interface.    (line  70)
-@@ -3756,47 +3774,47 @@
- * mpfr_custom_move:                      Custom Interface.    (line  82)
- * MPFR_DECL_INIT:                        Initialization Functions.
-                                                               (line  74)
--* mpfr_digamma:                          Special Functions.   (line 166)
-+* mpfr_digamma:                          Special Functions.   (line 172)
- * mpfr_dim:                              Basic Arithmetic Functions.
--                                                              (line 166)
-+                                                              (line 171)
- * mpfr_div:                              Basic Arithmetic Functions.
--                                                              (line  72)
-+                                                              (line  74)
- * mpfr_divby0_p:                         Exception Related Functions.
-                                                               (line 134)
- * mpfr_div_2exp:                         Compatibility with MPF.
-                                                               (line  49)
- * mpfr_div_2si:                          Basic Arithmetic Functions.
--                                                              (line 181)
-+                                                              (line 186)
- * mpfr_div_2ui:                          Basic Arithmetic Functions.
--                                                              (line 179)
-+                                                              (line 184)
- * mpfr_div_d:                            Basic Arithmetic Functions.
--                                                              (line  84)
-+                                                              (line  86)
- * mpfr_div_q:                            Basic Arithmetic Functions.
--                                                              (line  88)
-+                                                              (line  90)
- * mpfr_div_si:                           Basic Arithmetic Functions.
--                                                              (line  80)
-+                                                              (line  82)
- * mpfr_div_ui:                           Basic Arithmetic Functions.
--                                                              (line  76)
-+                                                              (line  78)
- * mpfr_div_z:                            Basic Arithmetic Functions.
--                                                              (line  86)
-+                                                              (line  88)
- * mpfr_d_div:                            Basic Arithmetic Functions.
--                                                              (line  82)
-+                                                              (line  84)
- * mpfr_d_sub:                            Basic Arithmetic Functions.
--                                                              (line  35)
--* mpfr_eint:                             Special Functions.   (line 133)
-+                                                              (line  36)
-+* mpfr_eint:                             Special Functions.   (line 135)
- * mpfr_eq:                               Compatibility with MPF.
-                                                               (line  28)
- * mpfr_equal_p:                          Comparison Functions.
-                                                               (line  59)
- * mpfr_erangeflag_p:                     Exception Related Functions.
-                                                               (line 137)
--* mpfr_erf:                              Special Functions.   (line 177)
--* mpfr_erfc:                             Special Functions.   (line 178)
--* mpfr_exp:                              Special Functions.   (line  23)
--* mpfr_exp10:                            Special Functions.   (line  25)
--* mpfr_exp2:                             Special Functions.   (line  24)
--* mpfr_expm1:                            Special Functions.   (line 129)
--* mpfr_fac_ui:                           Special Functions.   (line 121)
-+* mpfr_erf:                              Special Functions.   (line 183)
-+* mpfr_erfc:                             Special Functions.   (line 184)
-+* mpfr_exp:                              Special Functions.   (line  25)
-+* mpfr_exp10:                            Special Functions.   (line  27)
-+* mpfr_exp2:                             Special Functions.   (line  26)
-+* mpfr_expm1:                            Special Functions.   (line 131)
-+* mpfr_fac_ui:                           Special Functions.   (line 123)
- * mpfr_fits_intmax_p:                    Conversion Functions.
-                                                               (line 150)
- * mpfr_fits_sint_p:                      Conversion Functions.
-@@ -3815,20 +3833,20 @@
-                                                               (line 147)
- * mpfr_floor:                            Integer Related Functions.
-                                                               (line   8)
--* mpfr_fma:                              Special Functions.   (line 203)
-+* mpfr_fma:                              Special Functions.   (line 209)
- * mpfr_fmod:                             Integer Related Functions.
-                                                               (line  92)
--* mpfr_fms:                              Special Functions.   (line 205)
-+* mpfr_fms:                              Special Functions.   (line 211)
- * mpfr_fprintf:                          Formatted Output Functions.
-                                                               (line 157)
- * mpfr_frac:                             Integer Related Functions.
-                                                               (line  76)
--* mpfr_free_cache:                       Special Functions.   (line 244)
-+* mpfr_free_cache:                       Special Functions.   (line 254)
- * mpfr_free_str:                         Conversion Functions.
-                                                               (line 137)
- * mpfr_frexp:                            Conversion Functions.
-                                                               (line  45)
--* mpfr_gamma:                            Special Functions.   (line 148)
-+* mpfr_gamma:                            Special Functions.   (line 150)
- * mpfr_get_d:                            Conversion Functions.
-                                                               (line   7)
- * mpfr_get_decimal64:                    Conversion Functions.
-@@ -3887,7 +3905,7 @@
-                                                               (line  56)
- * mpfr_greater_p:                        Comparison Functions.
-                                                               (line  55)
--* mpfr_hypot:                            Special Functions.   (line 218)
-+* mpfr_hypot:                            Special Functions.   (line 227)
- * mpfr_inexflag_p:                       Exception Related Functions.
-                                                               (line 136)
- * mpfr_inf_p:                            Comparison Functions.
-@@ -3922,21 +3940,21 @@
-                                                               (line  31)
- * mpfr_integer_p:                        Integer Related Functions.
-                                                               (line 119)
--* mpfr_j0:                               Special Functions.   (line 182)
--* mpfr_j1:                               Special Functions.   (line 183)
--* mpfr_jn:                               Special Functions.   (line 184)
-+* mpfr_j0:                               Special Functions.   (line 188)
-+* mpfr_j1:                               Special Functions.   (line 189)
-+* mpfr_jn:                               Special Functions.   (line 190)
- * mpfr_lessequal_p:                      Comparison Functions.
-                                                               (line  58)
- * mpfr_lessgreater_p:                    Comparison Functions.
-                                                               (line  64)
- * mpfr_less_p:                           Comparison Functions.
-                                                               (line  57)
--* mpfr_lgamma:                           Special Functions.   (line 157)
--* mpfr_li2:                              Special Functions.   (line 143)
--* mpfr_lngamma:                          Special Functions.   (line 152)
-+* mpfr_lgamma:                           Special Functions.   (line 162)
-+* mpfr_li2:                              Special Functions.   (line 145)
-+* mpfr_lngamma:                          Special Functions.   (line 154)
- * mpfr_log:                              Special Functions.   (line  16)
- * mpfr_log10:                            Special Functions.   (line  18)
--* mpfr_log1p:                            Special Functions.   (line 125)
-+* mpfr_log1p:                            Special Functions.   (line 127)
- * mpfr_log2:                             Special Functions.   (line  17)
- * mpfr_max:                              Miscellaneous Functions.
-                                                               (line  22)
-@@ -3947,29 +3965,29 @@
- * mpfr_modf:                             Integer Related Functions.
-                                                               (line  82)
- * mpfr_mul:                              Basic Arithmetic Functions.
--                                                              (line  51)
-+                                                              (line  53)
- * mpfr_mul_2exp:                         Compatibility with MPF.
-                                                               (line  47)
- * mpfr_mul_2si:                          Basic Arithmetic Functions.
--                                                              (line 174)
-+                                                              (line 179)
- * mpfr_mul_2ui:                          Basic Arithmetic Functions.
--                                                              (line 172)
-+                                                              (line 177)
- * mpfr_mul_d:                            Basic Arithmetic Functions.
--                                                              (line  57)
-+                                                              (line  59)
- * mpfr_mul_q:                            Basic Arithmetic Functions.
--                                                              (line  61)
-+                                                              (line  63)
- * mpfr_mul_si:                           Basic Arithmetic Functions.
--                                                              (line  55)
-+                                                              (line  57)
- * mpfr_mul_ui:                           Basic Arithmetic Functions.
--                                                              (line  53)
-+                                                              (line  55)
- * mpfr_mul_z:                            Basic Arithmetic Functions.
--                                                              (line  59)
-+                                                              (line  61)
- * mpfr_nanflag_p:                        Exception Related Functions.
-                                                               (line 135)
- * mpfr_nan_p:                            Comparison Functions.
-                                                               (line  39)
- * mpfr_neg:                              Basic Arithmetic Functions.
--                                                              (line 159)
-+                                                              (line 164)
- * mpfr_nextabove:                        Miscellaneous Functions.
-                                                               (line  15)
- * mpfr_nextbelow:                        Miscellaneous Functions.
-@@ -3983,13 +4001,13 @@
- * mpfr_overflow_p:                       Exception Related Functions.
-                                                               (line 133)
- * mpfr_pow:                              Basic Arithmetic Functions.
--                                                              (line 116)
-+                                                              (line 121)
- * mpfr_pow_si:                           Basic Arithmetic Functions.
--                                                              (line 120)
-+                                                              (line 125)
- * mpfr_pow_ui:                           Basic Arithmetic Functions.
--                                                              (line 118)
-+                                                              (line 123)
- * mpfr_pow_z:                            Basic Arithmetic Functions.
--                                                              (line 122)
-+                                                              (line 127)
- * mpfr_prec_round:                       Rounding Related Functions.
-                                                               (line  13)
- * ‘mpfr_prec_t’:                         Nomenclature and Types.
-@@ -3999,7 +4017,7 @@
- * mpfr_print_rnd_mode:                   Rounding Related Functions.
-                                                               (line  71)
- * mpfr_rec_sqrt:                         Basic Arithmetic Functions.
--                                                              (line 103)
-+                                                              (line 105)
- * mpfr_regular_p:                        Comparison Functions.
-                                                               (line  43)
- * mpfr_reldiff:                          Compatibility with MPF.
-@@ -4021,11 +4039,11 @@
- * ‘mpfr_rnd_t’:                          Nomenclature and Types.
-                                                               (line  34)
- * mpfr_root:                             Basic Arithmetic Functions.
--                                                              (line 109)
-+                                                              (line 114)
- * mpfr_round:                            Integer Related Functions.
-                                                               (line   9)
--* mpfr_sec:                              Special Functions.   (line  45)
--* mpfr_sech:                             Special Functions.   (line 109)
-+* mpfr_sec:                              Special Functions.   (line  47)
-+* mpfr_sech:                             Special Functions.   (line 111)
- * mpfr_set:                              Assignment Functions.
-                                                               (line   9)
- * mpfr_setsign:                          Miscellaneous Functions.
-@@ -4100,57 +4118,57 @@
-                                                               (line  49)
- * mpfr_signbit:                          Miscellaneous Functions.
-                                                               (line  99)
--* mpfr_sin:                              Special Functions.   (line  30)
--* mpfr_sinh:                             Special Functions.   (line  96)
--* mpfr_sinh_cosh:                        Special Functions.   (line 101)
--* mpfr_sin_cos:                          Special Functions.   (line  35)
-+* mpfr_sin:                              Special Functions.   (line  32)
-+* mpfr_sinh:                             Special Functions.   (line  98)
-+* mpfr_sinh_cosh:                        Special Functions.   (line 103)
-+* mpfr_sin_cos:                          Special Functions.   (line  37)
- * mpfr_si_div:                           Basic Arithmetic Functions.
--                                                              (line  78)
-+                                                              (line  80)
- * mpfr_si_sub:                           Basic Arithmetic Functions.
--                                                              (line  31)
-+                                                              (line  32)
- * mpfr_snprintf:                         Formatted Output Functions.
-                                                               (line 180)
- * mpfr_sprintf:                          Formatted Output Functions.
-                                                               (line 170)
- * mpfr_sqr:                              Basic Arithmetic Functions.
--                                                              (line  69)
-+                                                              (line  71)
- * mpfr_sqrt:                             Basic Arithmetic Functions.
--                                                              (line  96)
-+                                                              (line  98)
- * mpfr_sqrt_ui:                          Basic Arithmetic Functions.
--                                                              (line  97)
-+                                                              (line  99)
- * mpfr_strtofr:                          Assignment Functions.
-                                                               (line  80)
- * mpfr_sub:                              Basic Arithmetic Functions.
--                                                              (line  25)
-+                                                              (line  26)
- * mpfr_subnormalize:                     Exception Related Functions.
-                                                               (line  60)
- * mpfr_sub_d:                            Basic Arithmetic Functions.
--                                                              (line  37)
-+                                                              (line  38)
- * mpfr_sub_q:                            Basic Arithmetic Functions.
--                                                              (line  43)
-+                                                              (line  44)
- * mpfr_sub_si:                           Basic Arithmetic Functions.
--                                                              (line  33)
-+                                                              (line  34)
- * mpfr_sub_ui:                           Basic Arithmetic Functions.
--                                                              (line  29)
-+                                                              (line  30)
- * mpfr_sub_z:                            Basic Arithmetic Functions.
--                                                              (line  41)
--* mpfr_sum:                              Special Functions.   (line 252)
-+                                                              (line  42)
-+* mpfr_sum:                              Special Functions.   (line 262)
- * mpfr_swap:                             Assignment Functions.
-                                                               (line 150)
- * ‘mpfr_t’:                              Nomenclature and Types.
-                                                               (line   6)
--* mpfr_tan:                              Special Functions.   (line  31)
--* mpfr_tanh:                             Special Functions.   (line  97)
-+* mpfr_tan:                              Special Functions.   (line  33)
-+* mpfr_tanh:                             Special Functions.   (line  99)
- * mpfr_trunc:                            Integer Related Functions.
-                                                               (line  10)
- * mpfr_ui_div:                           Basic Arithmetic Functions.
--                                                              (line  74)
-+                                                              (line  76)
- * mpfr_ui_pow:                           Basic Arithmetic Functions.
--                                                              (line 126)
-+                                                              (line 131)
- * mpfr_ui_pow_ui:                        Basic Arithmetic Functions.
--                                                              (line 124)
-+                                                              (line 129)
- * mpfr_ui_sub:                           Basic Arithmetic Functions.
--                                                              (line  27)
-+                                                              (line  28)
- * mpfr_underflow_p:                      Exception Related Functions.
-                                                               (line 132)
- * mpfr_unordered_p:                      Comparison Functions.
-@@ -4181,61 +4199,61 @@
-                                                               (line 182)
- * mpfr_vsprintf:                         Formatted Output Functions.
-                                                               (line 171)
--* mpfr_y0:                               Special Functions.   (line 193)
--* mpfr_y1:                               Special Functions.   (line 194)
--* mpfr_yn:                               Special Functions.   (line 195)
-+* mpfr_y0:                               Special Functions.   (line 199)
-+* mpfr_y1:                               Special Functions.   (line 200)
-+* mpfr_yn:                               Special Functions.   (line 201)
- * mpfr_zero_p:                           Comparison Functions.
-                                                               (line  42)
--* mpfr_zeta:                             Special Functions.   (line 171)
--* mpfr_zeta_ui:                          Special Functions.   (line 172)
-+* mpfr_zeta:                             Special Functions.   (line 177)
-+* mpfr_zeta_ui:                          Special Functions.   (line 178)
- * mpfr_z_sub:                            Basic Arithmetic Functions.
--                                                              (line  39)
-+                                                              (line  40)
- 
- 
- 
- Tag Table:
- Node: Top775
- Node: Copying2007
--Node: Introduction to MPFR3766
--Node: Installing MPFR5880
--Node: Reporting Bugs11323
--Node: MPFR Basics13353
--Node: Headers and Libraries13669
--Node: Nomenclature and Types16828
--Node: MPFR Variable Conventions18874
--Node: Rounding Modes20418
--Ref: ternary value21544
--Node: Floating-Point Values on Special Numbers23526
--Node: Exceptions26572
--Node: Memory Handling29749
--Node: MPFR Interface30894
--Node: Initialization Functions33008
--Node: Assignment Functions40318
--Node: Combined Initialization and Assignment Functions49673
--Node: Conversion Functions50974
--Node: Basic Arithmetic Functions60035
--Node: Comparison Functions69200
--Node: Special Functions72687
--Node: Input and Output Functions86672
--Node: Formatted Output Functions88644
--Node: Integer Related Functions98431
--Node: Rounding Related Functions105051
--Node: Miscellaneous Functions108888
--Node: Exception Related Functions117568
--Node: Compatibility with MPF124386
--Node: Custom Interface127127
--Node: Internals131526
--Node: API Compatibility133066
--Node: Type and Macro Changes134995
--Node: Added Functions137844
--Node: Changed Functions141132
--Node: Removed Functions145545
--Node: Other Changes145973
--Node: Contributors147576
--Node: References150219
--Node: GNU Free Documentation License151973
--Node: Concept Index174562
--Node: Function and Type Index180659
-+Node: Introduction to MPFR3770
-+Node: Installing MPFR5884
-+Node: Reporting Bugs11327
-+Node: MPFR Basics13357
-+Node: Headers and Libraries13673
-+Node: Nomenclature and Types16832
-+Node: MPFR Variable Conventions18894
-+Node: Rounding Modes20438
-+Ref: ternary value21568
-+Node: Floating-Point Values on Special Numbers23554
-+Node: Exceptions26813
-+Node: Memory Handling29990
-+Node: MPFR Interface31135
-+Node: Initialization Functions33249
-+Node: Assignment Functions40559
-+Node: Combined Initialization and Assignment Functions49914
-+Node: Conversion Functions51215
-+Node: Basic Arithmetic Functions60276
-+Node: Comparison Functions69777
-+Node: Special Functions73264
-+Node: Input and Output Functions87862
-+Node: Formatted Output Functions89834
-+Node: Integer Related Functions99621
-+Node: Rounding Related Functions106241
-+Node: Miscellaneous Functions110078
-+Node: Exception Related Functions118758
-+Node: Compatibility with MPF125576
-+Node: Custom Interface128317
-+Node: Internals132716
-+Node: API Compatibility134260
-+Node: Type and Macro Changes136189
-+Node: Added Functions139038
-+Node: Changed Functions142326
-+Node: Removed Functions146739
-+Node: Other Changes147167
-+Node: Contributors148770
-+Node: References151413
-+Node: GNU Free Documentation License153167
-+Node: Concept Index175760
-+Node: Function and Type Index181857
- 
- End Tag Table
- 
-diff -Naurd mpfr-3.1.3-a/src/lngamma.c mpfr-3.1.3-b/src/lngamma.c
---- mpfr-3.1.3-a/src/lngamma.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/lngamma.c	2015-07-02 10:49:24.018113593 +0000
-@@ -603,16 +603,17 @@
-       mpfr_get_prec (y), mpfr_log_prec, y, inex));
- 
-   /* special cases */
--  if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
-+  if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x) ||
-+                     (MPFR_IS_NEG (x) && mpfr_integer_p (x))))
-     {
--      if (MPFR_IS_NAN (x) || MPFR_IS_NEG (x))
-+      if (MPFR_IS_NAN (x))
-         {
-           MPFR_SET_NAN (y);
-           MPFR_RET_NAN;
-         }
--      else /* lngamma(+Inf) = lngamma(+0) = +Inf */
-+      else /* lngamma(+/-Inf) = lngamma(nonpositive integer) = +Inf */
-         {
--          if (MPFR_IS_ZERO (x))
-+          if (!MPFR_IS_INF (x))
-             mpfr_set_divby0 ();
-           MPFR_SET_INF (y);
-           MPFR_SET_POS (y);
-@@ -620,8 +621,8 @@
-         }
-     }
- 
--  /* if x < 0 and -2k-1 <= x <= -2k, then lngamma(x) = NaN */
--  if (MPFR_IS_NEG (x) && (unit_bit (x) == 0 || mpfr_integer_p (x)))
-+  /* if -2k-1 < x < -2k <= 0, then lngamma(x) = NaN */
-+  if (MPFR_IS_NEG (x) && unit_bit (x) == 0)
-     {
-       MPFR_SET_NAN (y);
-       MPFR_RET_NAN;
-diff -Naurd mpfr-3.1.3-a/src/mpfr.h mpfr-3.1.3-b/src/mpfr.h
---- mpfr-3.1.3-a/src/mpfr.h	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/mpfr.h	2015-07-02 10:49:24.038113803 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 3
--#define MPFR_VERSION_STRING "3.1.3"
-+#define MPFR_VERSION_STRING "3.1.3-p1"
- 
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.3-a/src/version.c mpfr-3.1.3-b/src/version.c
---- mpfr-3.1.3-a/src/version.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/version.c	2015-07-02 10:49:24.042113845 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
--  return "3.1.3";
-+  return "3.1.3-p1";
- }
-diff -Naurd mpfr-3.1.3-a/tests/tlngamma.c mpfr-3.1.3-b/tests/tlngamma.c
---- mpfr-3.1.3-a/tests/tlngamma.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/tests/tlngamma.c	2015-07-02 10:49:24.018113593 +0000
-@@ -33,7 +33,7 @@
- special (void)
- {
-   mpfr_t x, y;
--  int inex;
-+  int i, inex;
- 
-   mpfr_init (x);
-   mpfr_init (y);
-@@ -46,25 +46,29 @@
-       exit (1);
-     }
- 
--  mpfr_set_inf (x, -1);
-+  mpfr_set_inf (x, 1);
-+  mpfr_clear_flags ();
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (!mpfr_nan_p (y))
-+  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0 || __gmpfr_flags != 0)
-     {
--      printf ("Error for lngamma(-Inf)\n");
-+      printf ("Error for lngamma(+Inf)\n");
-       exit (1);
-     }
- 
--  mpfr_set_inf (x, 1);
-+  mpfr_set_inf (x, -1);
-+  mpfr_clear_flags ();
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0)
-+  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0 || __gmpfr_flags != 0)
-     {
--      printf ("Error for lngamma(+Inf)\n");
-+      printf ("Error for lngamma(-Inf)\n");
-       exit (1);
-     }
- 
-   mpfr_set_ui (x, 0, MPFR_RNDN);
-+  mpfr_clear_flags ();
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0)
-+  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0 ||
-+      __gmpfr_flags != MPFR_FLAGS_DIVBY0)
-     {
-       printf ("Error for lngamma(+0)\n");
-       exit (1);
-@@ -72,32 +76,58 @@
- 
-   mpfr_set_ui (x, 0, MPFR_RNDN);
-   mpfr_neg (x, x, MPFR_RNDN);
-+  mpfr_clear_flags ();
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (!mpfr_nan_p (y))
-+  if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0 ||
-+      __gmpfr_flags != MPFR_FLAGS_DIVBY0)
-     {
-       printf ("Error for lngamma(-0)\n");
-       exit (1);
-     }
- 
-   mpfr_set_ui (x, 1, MPFR_RNDN);
-+  mpfr_clear_flags ();
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (MPFR_IS_NAN (y) || mpfr_cmp_ui (y, 0) || MPFR_IS_NEG (y))
-+  if (mpfr_cmp_ui0 (y, 0) || MPFR_IS_NEG (y))
-     {
-       printf ("Error for lngamma(1)\n");
-       exit (1);
-     }
- 
--  mpfr_set_si (x, -1, MPFR_RNDN);
--  mpfr_lngamma (y, x, MPFR_RNDN);
--  if (!mpfr_nan_p (y))
-+  for (i = 1; i <= 5; i++)
-     {
--      printf ("Error for lngamma(-1)\n");
--      exit (1);
-+      int c;
-+
-+      mpfr_set_si (x, -i, MPFR_RNDN);
-+      mpfr_clear_flags ();
-+      mpfr_lngamma (y, x, MPFR_RNDN);
-+      if (!mpfr_inf_p (y) || mpfr_sgn (y) < 0 ||
-+          __gmpfr_flags != MPFR_FLAGS_DIVBY0)
-+        {
-+          printf ("Error for lngamma(-%d)\n", i);
-+          exit (1);
-+        }
-+      if (i & 1)
-+        {
-+          mpfr_nextabove (x);
-+          c = '+';
-+        }
-+      else
-+        {
-+          mpfr_nextbelow (x);
-+          c = '-';
-+        }
-+      mpfr_lngamma (y, x, MPFR_RNDN);
-+      if (!mpfr_nan_p (y))
-+        {
-+          printf ("Error for lngamma(-%d%cepsilon)\n", i, c);
-+          exit (1);
-+        }
-     }
- 
-   mpfr_set_ui (x, 2, MPFR_RNDN);
-   mpfr_lngamma (y, x, MPFR_RNDN);
--  if (MPFR_IS_NAN (y) || mpfr_cmp_ui (y, 0) || MPFR_IS_NEG (y))
-+  if (mpfr_cmp_ui0 (y, 0) || MPFR_IS_NEG (y))
-     {
-       printf ("Error for lngamma(2)\n");
-       exit (1);
-@@ -127,7 +157,7 @@
-   mpfr_set_str (x, CHECK_X2, 10, MPFR_RNDN);
-   mpfr_lngamma (y, x, MPFR_RNDN);
-   mpfr_set_str (x, CHECK_Y2, 10, MPFR_RNDN);
--  if (MPFR_IS_NAN (y) || mpfr_cmp (y, x))
-+  if (mpfr_cmp0 (y, x))
-     {
-       printf ("mpfr_lngamma("CHECK_X2") is wrong:\n"
-               "expected ");
-@@ -143,7 +173,7 @@
-   mpfr_lngamma (y, x, MPFR_RNDU);
-   mpfr_set_prec (x, 175);
-   mpfr_set_str_binary (x, "0.1010001100011101101011001101110010100001000001000001110011000001101100001111001001000101011011100100010101011110100111110101010100010011010010000101010111001100011000101111E7");
--  if (MPFR_IS_NAN (y) || mpfr_cmp (x, y))
-+  if (mpfr_cmp0 (x, y))
-     {
-       printf ("Error in mpfr_lngamma (1)\n");
-       exit (1);
-@@ -155,7 +185,7 @@
-   mpfr_lngamma (x, y, MPFR_RNDZ);
-   mpfr_set_prec (y, 21);
-   mpfr_set_str_binary (y, "0.111000101000001100101E9");
--  if (MPFR_IS_NAN (x) || mpfr_cmp (x, y))
-+  if (mpfr_cmp0 (x, y))
-     {
-       printf ("Error in mpfr_lngamma (120)\n");
-       printf ("Expected "); mpfr_print_binary (y); puts ("");
-@@ -169,7 +199,7 @@
-   inex = mpfr_lngamma (y, x, MPFR_RNDN);
-   mpfr_set_prec (x, 206);
-   mpfr_set_str_binary (x, "0.10000111011000000011100010101001100110001110000111100011000100100110110010001011011110101001111011110110000001010100111011010000000011100110110101100111000111010011110010000100010111101010001101000110101001E13");
--  if (MPFR_IS_NAN (y) || mpfr_cmp (x, y))
-+  if (mpfr_cmp0 (x, y))
-     {
-       printf ("Error in mpfr_lngamma (768)\n");
-       exit (1);
-@@ -185,7 +215,7 @@
-   mpfr_set_str_binary (x, "0.1100E-66");
-   mpfr_lngamma (y, x, MPFR_RNDN);
-   mpfr_set_str_binary (x, "0.1100E6");
--  if (MPFR_IS_NAN (y) || mpfr_cmp (x, y))
-+  if (mpfr_cmp0 (x, y))
-     {
-       printf ("Error for lngamma(0.1100E-66)\n");
-       exit (1);
-@@ -199,7 +229,7 @@
-   mpfr_lngamma (y, x, MPFR_RNDN);
-   mpfr_set_prec (x, 32);
-   mpfr_set_str_binary (x, "-0.10001000111011111011000010100010E207");
--  if (MPFR_IS_NAN (y) || mpfr_cmp (x, y))
-+  if (mpfr_cmp0 (x, y))
-     {
-       printf ("Error for lngamma(-2^199+0.5)\n");
-       printf ("Got        ");
-diff -Naurd mpfr-3.1.3-a/PATCHES mpfr-3.1.3-b/PATCHES
---- mpfr-3.1.3-a/PATCHES	2015-07-02 10:50:08.046573308 +0000
-+++ mpfr-3.1.3-b/PATCHES	2015-07-02 10:50:08.126574142 +0000
-@@ -0,0 +1 @@
-+muldiv-2exp-overflow
-diff -Naurd mpfr-3.1.3-a/VERSION mpfr-3.1.3-b/VERSION
---- mpfr-3.1.3-a/VERSION	2015-07-02 10:49:24.042113845 +0000
-+++ mpfr-3.1.3-b/VERSION	2015-07-02 10:50:08.126574142 +0000
-@@ -1 +1 @@
--3.1.3-p1
-+3.1.3-p2
-diff -Naurd mpfr-3.1.3-a/src/div_2si.c mpfr-3.1.3-b/src/div_2si.c
---- mpfr-3.1.3-a/src/div_2si.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/div_2si.c	2015-07-02 10:50:08.106573933 +0000
-@@ -49,7 +49,7 @@
-             rnd_mode = MPFR_RNDZ;
-           return mpfr_underflow (y, rnd_mode, MPFR_SIGN(y));
-         }
--      else if (MPFR_UNLIKELY(n < 0 && (__gmpfr_emax < MPFR_EMIN_MIN - n ||
-+      else if (MPFR_UNLIKELY(n <= 0 && (__gmpfr_emax < MPFR_EMIN_MIN - n ||
-                                        exp > __gmpfr_emax + n)) )
-         return mpfr_overflow (y, rnd_mode, MPFR_SIGN(y));
- 
-diff -Naurd mpfr-3.1.3-a/src/div_2ui.c mpfr-3.1.3-b/src/div_2ui.c
---- mpfr-3.1.3-a/src/div_2ui.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/div_2ui.c	2015-07-02 10:50:08.106573933 +0000
-@@ -32,7 +32,7 @@
-      rnd_mode),
-     ("y[%Pu]=%.*Rg inexact=%d", mpfr_get_prec(y), mpfr_log_prec, y, inexact));
- 
--  if (MPFR_UNLIKELY (MPFR_IS_SINGULAR (x)))
-+  if (MPFR_UNLIKELY (n == 0 || MPFR_IS_SINGULAR (x)))
-     return mpfr_set (y, x, rnd_mode);
-   else
-     {
-diff -Naurd mpfr-3.1.3-a/src/mpfr.h mpfr-3.1.3-b/src/mpfr.h
---- mpfr-3.1.3-a/src/mpfr.h	2015-07-02 10:49:24.038113803 +0000
-+++ mpfr-3.1.3-b/src/mpfr.h	2015-07-02 10:50:08.126574142 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 3
--#define MPFR_VERSION_STRING "3.1.3-p1"
-+#define MPFR_VERSION_STRING "3.1.3-p2"
- 
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.3-a/src/mul_2si.c mpfr-3.1.3-b/src/mul_2si.c
---- mpfr-3.1.3-a/src/mul_2si.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/src/mul_2si.c	2015-07-02 10:50:08.106573933 +0000
-@@ -39,7 +39,7 @@
-     {
-       mpfr_exp_t exp = MPFR_GET_EXP (x);
-       MPFR_SETRAW (inexact, y, x, exp, rnd_mode);
--      if (MPFR_UNLIKELY( n > 0 && (__gmpfr_emax < MPFR_EMIN_MIN + n ||
-+      if (MPFR_UNLIKELY(n >= 0 && (__gmpfr_emax < MPFR_EMIN_MIN + n ||
-                                    exp > __gmpfr_emax - n)))
-         return mpfr_overflow (y, rnd_mode, MPFR_SIGN(y));
-       else if (MPFR_UNLIKELY(n < 0 && (__gmpfr_emin > MPFR_EMAX_MAX + n ||
-diff -Naurd mpfr-3.1.3-a/src/version.c mpfr-3.1.3-b/src/version.c
---- mpfr-3.1.3-a/src/version.c	2015-07-02 10:49:24.042113845 +0000
-+++ mpfr-3.1.3-b/src/version.c	2015-07-02 10:50:08.126574142 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
--  return "3.1.3-p1";
-+  return "3.1.3-p2";
- }
-diff -Naurd mpfr-3.1.3-a/tests/tmul_2exp.c mpfr-3.1.3-b/tests/tmul_2exp.c
---- mpfr-3.1.3-a/tests/tmul_2exp.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/tests/tmul_2exp.c	2015-07-02 10:50:08.106573933 +0000
-@@ -242,6 +242,76 @@
-   large (MPFR_EMAX_MAX);
- }
- 
-+/* Cases where the function overflows on n = 0 when rounding is like
-+   away from zero. */
-+static void
-+overflow0 (mpfr_exp_t emax)
-+{
-+  mpfr_exp_t old_emax;
-+  mpfr_t x, y1, y2;
-+  int neg, r, op;
-+  static char *sop[4] = { "mul_2ui", "mul_2si", "div_2ui", "div_2si" };
-+
-+  old_emax = mpfr_get_emax ();
-+  set_emax (emax);
-+
-+  mpfr_init2 (x, 8);
-+  mpfr_inits2 (6, y1, y2, (mpfr_ptr) 0);
-+
-+  mpfr_set_inf (x, 1);
-+  mpfr_nextbelow (x);
-+
-+  for (neg = 0; neg <= 1; neg++)
-+    {
-+      RND_LOOP (r)
-+        {
-+          int inex1, inex2;
-+          unsigned int flags1, flags2;
-+
-+          /* Even if there isn't an overflow (rounding ~ toward zero),
-+             the result is the same as the one of an overflow. */
-+          inex1 = mpfr_overflow (y1, (mpfr_rnd_t) r, neg ? -1 : 1);
-+          flags1 = MPFR_FLAGS_INEXACT;
-+          if (mpfr_inf_p (y1))
-+            flags1 |= MPFR_FLAGS_OVERFLOW;
-+          for (op = 0; op < 4; op++)
-+            {
-+              mpfr_clear_flags ();
-+              inex2 =
-+                op == 0 ? mpfr_mul_2ui (y2, x, 0, (mpfr_rnd_t) r) :
-+                op == 1 ? mpfr_mul_2si (y2, x, 0, (mpfr_rnd_t) r) :
-+                op == 2 ? mpfr_div_2ui (y2, x, 0, (mpfr_rnd_t) r) :
-+                op == 3 ? mpfr_div_2si (y2, x, 0, (mpfr_rnd_t) r) :
-+                (MPFR_ASSERTN (0), 0);
-+              flags2 = __gmpfr_flags;
-+              if (!(mpfr_equal_p (y1, y2) &&
-+                    SAME_SIGN (inex1, inex2) &&
-+                    flags1 == flags2))
-+                {
-+                  printf ("Error in overflow0 for %s, mpfr_%s, emax = %"
-+                          MPFR_EXP_FSPEC "d,\nx = ",
-+                          mpfr_print_rnd_mode ((mpfr_rnd_t) r), sop[op],
-+                          (mpfr_eexp_t) emax);
-+                  mpfr_dump (x);
-+                  printf ("Expected ");
-+                  mpfr_dump (y1);
-+                  printf ("  with inex = %d, flags =", inex1);
-+                  flags_out (flags1);
-+                  printf ("Got      ");
-+                  mpfr_dump (y2);
-+                  printf ("  with inex = %d, flags =", inex2);
-+                  flags_out (flags2);
-+                  exit (1);
-+                }
-+            }
-+        }
-+      mpfr_neg (x, x, MPFR_RNDN);
-+    }
-+
-+  mpfr_clears (x, y1, y2, (mpfr_ptr) 0);
-+  set_emax (old_emax);
-+}
-+
- int
- main (int argc, char *argv[])
- {
-@@ -334,6 +404,11 @@
-   underflow0 ();
-   large0 ();
- 
-+  if (mpfr_get_emax () != MPFR_EMAX_MAX)
-+    overflow0 (mpfr_get_emax ());
-+  overflow0 (MPFR_EMAX_MAX);
-+  overflow0 (-1);
-+
-   tests_end_mpfr ();
-   return 0;
- }
-diff -Naurd mpfr-3.1.3-a/PATCHES mpfr-3.1.3-b/PATCHES
---- mpfr-3.1.3-a/PATCHES	2015-07-17 08:54:48.592799981 +0000
-+++ mpfr-3.1.3-b/PATCHES	2015-07-17 08:54:48.616811495 +0000
-@@ -0,0 +1 @@
-+muldiv-2exp-underflow
-diff -Naurd mpfr-3.1.3-a/VERSION mpfr-3.1.3-b/VERSION
---- mpfr-3.1.3-a/VERSION	2015-07-02 10:50:08.126574142 +0000
-+++ mpfr-3.1.3-b/VERSION	2015-07-17 08:54:48.616811495 +0000
-@@ -1 +1 @@
--3.1.3-p2
-+3.1.3-p3
-diff -Naurd mpfr-3.1.3-a/src/div_2si.c mpfr-3.1.3-b/src/div_2si.c
---- mpfr-3.1.3-a/src/div_2si.c	2015-07-02 10:50:08.106573933 +0000
-+++ mpfr-3.1.3-b/src/div_2si.c	2015-07-17 08:54:48.608807656 +0000
-@@ -45,7 +45,8 @@
-           if (rnd_mode == MPFR_RNDN &&
-               (__gmpfr_emin > MPFR_EMAX_MAX - (n - 1) ||
-                exp < __gmpfr_emin + (n - 1) ||
--               (inexact >= 0 && mpfr_powerof2_raw (y))))
-+               ((MPFR_IS_NEG (y) ? inexact <= 0 : inexact >= 0) &&
-+                mpfr_powerof2_raw (y))))
-             rnd_mode = MPFR_RNDZ;
-           return mpfr_underflow (y, rnd_mode, MPFR_SIGN(y));
-         }
-diff -Naurd mpfr-3.1.3-a/src/div_2ui.c mpfr-3.1.3-b/src/div_2ui.c
---- mpfr-3.1.3-a/src/div_2ui.c	2015-07-02 10:50:08.106573933 +0000
-+++ mpfr-3.1.3-b/src/div_2ui.c	2015-07-17 08:54:48.608807656 +0000
-@@ -44,7 +44,9 @@
-       if (MPFR_UNLIKELY (n >= diffexp))  /* exp - n <= emin - 1 */
-         {
-           if (rnd_mode == MPFR_RNDN &&
--              (n > diffexp || (inexact >= 0 && mpfr_powerof2_raw (y))))
-+              (n > diffexp ||
-+               ((MPFR_IS_NEG (y) ? inexact <= 0 : inexact >= 0) &&
-+                mpfr_powerof2_raw (y))))
-             rnd_mode = MPFR_RNDZ;
-           return mpfr_underflow (y, rnd_mode, MPFR_SIGN (y));
-         }
-diff -Naurd mpfr-3.1.3-a/src/mpfr.h mpfr-3.1.3-b/src/mpfr.h
---- mpfr-3.1.3-a/src/mpfr.h	2015-07-02 10:50:08.126574142 +0000
-+++ mpfr-3.1.3-b/src/mpfr.h	2015-07-17 08:54:48.616811495 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 3
--#define MPFR_VERSION_STRING "3.1.3-p2"
-+#define MPFR_VERSION_STRING "3.1.3-p3"
- 
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.3-a/src/mul_2si.c mpfr-3.1.3-b/src/mul_2si.c
---- mpfr-3.1.3-a/src/mul_2si.c	2015-07-02 10:50:08.106573933 +0000
-+++ mpfr-3.1.3-b/src/mul_2si.c	2015-07-17 08:54:48.608807656 +0000
-@@ -48,7 +48,8 @@
-           if (rnd_mode == MPFR_RNDN &&
-               (__gmpfr_emin > MPFR_EMAX_MAX + (n + 1) ||
-                exp < __gmpfr_emin - (n + 1) ||
--               (inexact >= 0 && mpfr_powerof2_raw (y))))
-+               ((MPFR_IS_NEG (y) ? inexact <= 0 : inexact >= 0) &&
-+                mpfr_powerof2_raw (y))))
-             rnd_mode = MPFR_RNDZ;
-           return mpfr_underflow (y, rnd_mode, MPFR_SIGN(y));
-         }
-diff -Naurd mpfr-3.1.3-a/src/version.c mpfr-3.1.3-b/src/version.c
---- mpfr-3.1.3-a/src/version.c	2015-07-02 10:50:08.126574142 +0000
-+++ mpfr-3.1.3-b/src/version.c	2015-07-17 08:54:48.616811495 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
--  return "3.1.3-p2";
-+  return "3.1.3-p3";
- }
-diff -Naurd mpfr-3.1.3-a/tests/tmul_2exp.c mpfr-3.1.3-b/tests/tmul_2exp.c
---- mpfr-3.1.3-a/tests/tmul_2exp.c	2015-07-02 10:50:08.106573933 +0000
-+++ mpfr-3.1.3-b/tests/tmul_2exp.c	2015-07-17 08:54:48.608807656 +0000
-@@ -50,77 +50,82 @@
- {
-   mpfr_t x, y, z1, z2;
-   mpfr_exp_t emin;
--  int i, k;
-+  int i, k, s;
-   int prec;
-   int rnd;
-   int div;
-   int inex1, inex2;
-   unsigned int flags1, flags2;
- 
--  /* Test mul_2si(x, e - k), div_2si(x, k - e) and div_2ui(x, k - e)
--   * with emin = e, x = 1 + i/16, i in { -1, 0, 1 }, and k = 1 to 4,
--   * by comparing the result with the one of a simple division.
-+  /* Test mul_2si(x, e - k), div_2si(x, k - e) and div_2ui(x, k - e) with
-+   * emin = e, x = s * (1 + i/16), i in { -1, 0, 1 }, s in { -1, 1 }, and
-+   * k = 1 to 4, by comparing the result with the one of a simple division.
-    */
-   emin = mpfr_get_emin ();
-   set_emin (e);
-   mpfr_inits2 (8, x, y, (mpfr_ptr) 0);
-   for (i = 15; i <= 17; i++)
--    {
--      inex1 = mpfr_set_ui_2exp (x, i, -4, MPFR_RNDN);
--      MPFR_ASSERTN (inex1 == 0);
--      for (prec = 6; prec >= 3; prec -= 3)
--        {
--          mpfr_inits2 (prec, z1, z2, (mpfr_ptr) 0);
--          RND_LOOP (rnd)
--            for (k = 1; k <= 4; k++)
--              {
--                /* The following one is assumed to be correct. */
--                inex1 = mpfr_mul_2si (y, x, e, MPFR_RNDN);
--                MPFR_ASSERTN (inex1 == 0);
--                inex1 = mpfr_set_ui (z1, 1 << k, MPFR_RNDN);
--                MPFR_ASSERTN (inex1 == 0);
--                mpfr_clear_flags ();
--                /* Do not use mpfr_div_ui to avoid the optimization
--                   by mpfr_div_2si. */
--                inex1 = mpfr_div (z1, y, z1, (mpfr_rnd_t) rnd);
--                flags1 = __gmpfr_flags;
--
--              for (div = 0; div <= 2; div++)
-+    for (s = 1; s >= -1; s -= 2)
-+      {
-+        inex1 = mpfr_set_si_2exp (x, s * i, -4, MPFR_RNDN);
-+        MPFR_ASSERTN (inex1 == 0);
-+        for (prec = 6; prec >= 3; prec -= 3)
-+          {
-+            mpfr_inits2 (prec, z1, z2, (mpfr_ptr) 0);
-+            RND_LOOP (rnd)
-+              for (k = 1; k <= 4; k++)
-                 {
-+                  /* The following one is assumed to be correct. */
-+                  inex1 = mpfr_mul_2si (y, x, e, MPFR_RNDN);
-+                  MPFR_ASSERTN (inex1 == 0);
-+                  inex1 = mpfr_set_ui (z1, 1 << k, MPFR_RNDN);
-+                  MPFR_ASSERTN (inex1 == 0);
-                   mpfr_clear_flags ();
--                  inex2 = div == 0 ?
--                    mpfr_mul_2si (z2, x, e - k, (mpfr_rnd_t) rnd) : div == 1 ?
--                    mpfr_div_2si (z2, x, k - e, (mpfr_rnd_t) rnd) :
--                    mpfr_div_2ui (z2, x, k - e, (mpfr_rnd_t) rnd);
--                  flags2 = __gmpfr_flags;
--                  if (flags1 == flags2 && SAME_SIGN (inex1, inex2) &&
--                      mpfr_equal_p (z1, z2))
--                    continue;
--                  printf ("Error in underflow(");
--                  if (e == MPFR_EMIN_MIN)
--                    printf ("MPFR_EMIN_MIN");
--                  else if (e == emin)
--                    printf ("default emin");
--                  else if (e >= LONG_MIN)
--                    printf ("%ld", (long) e);
--                  else
--                    printf ("<LONG_MIN");
--                  printf (") with mpfr_%s,\nx = %d/16, prec = %d, k = %d, "
--                          "%s\n", div == 0 ? "mul_2si" : div == 1 ?
--                          "div_2si" : "div_2ui", i, prec, k,
--                          mpfr_print_rnd_mode ((mpfr_rnd_t) rnd));
--                  printf ("Expected ");
--                  mpfr_out_str (stdout, 16, 0, z1, MPFR_RNDN);
--                  printf (", inex = %d, flags = %u\n", SIGN (inex1), flags1);
--                  printf ("Got      ");
--                  mpfr_out_str (stdout, 16, 0, z2, MPFR_RNDN);
--                  printf (", inex = %d, flags = %u\n", SIGN (inex2), flags2);
--                  exit (1);
--                }  /* div */
--              }  /* k */
--          mpfr_clears (z1, z2, (mpfr_ptr) 0);
--        }  /* prec */
--    }  /* i */
-+                  /* Do not use mpfr_div_ui to avoid the optimization
-+                     by mpfr_div_2si. */
-+                  inex1 = mpfr_div (z1, y, z1, (mpfr_rnd_t) rnd);
-+                  flags1 = __gmpfr_flags;
-+
-+                  for (div = 0; div <= 2; div++)
-+                    {
-+                      mpfr_clear_flags ();
-+                      inex2 =
-+                        div == 0 ?
-+                        mpfr_mul_2si (z2, x, e - k, (mpfr_rnd_t) rnd) :
-+                        div == 1 ?
-+                        mpfr_div_2si (z2, x, k - e, (mpfr_rnd_t) rnd) :
-+                        mpfr_div_2ui (z2, x, k - e, (mpfr_rnd_t) rnd);
-+                      flags2 = __gmpfr_flags;
-+                      if (flags1 == flags2 && SAME_SIGN (inex1, inex2) &&
-+                          mpfr_equal_p (z1, z2))
-+                        continue;
-+                      printf ("Error in underflow(");
-+                      if (e == MPFR_EMIN_MIN)
-+                        printf ("MPFR_EMIN_MIN");
-+                      else if (e == emin)
-+                        printf ("default emin");
-+                      else if (e >= LONG_MIN)
-+                        printf ("%ld", (long) e);
-+                      else
-+                        printf ("<LONG_MIN");
-+                      printf (") with mpfr_%s,\nx = %d/16, prec = %d, k = %d,"
-+                              " %s\n", div == 0 ? "mul_2si" : div == 1 ?
-+                              "div_2si" : "div_2ui", s * i, prec, k,
-+                              mpfr_print_rnd_mode ((mpfr_rnd_t) rnd));
-+                      printf ("Expected ");
-+                      mpfr_out_str (stdout, 16, 0, z1, MPFR_RNDN);
-+                      printf (", inex = %d, flags = %u\n",
-+                              SIGN (inex1), flags1);
-+                      printf ("Got      ");
-+                      mpfr_out_str (stdout, 16, 0, z2, MPFR_RNDN);
-+                      printf (", inex = %d, flags = %u\n",
-+                              SIGN (inex2), flags2);
-+                      exit (1);
-+                    }  /* div */
-+                }  /* k */
-+            mpfr_clears (z1, z2, (mpfr_ptr) 0);
-+          }  /* prec */
-+      }  /* i */
-   mpfr_clears (x, y, (mpfr_ptr) 0);
-   set_emin (emin);
- }
-diff -Naurd mpfr-3.1.3-a/PATCHES mpfr-3.1.3-b/PATCHES
---- mpfr-3.1.3-a/PATCHES	2015-07-17 08:58:21.094987384 +0000
-+++ mpfr-3.1.3-b/PATCHES	2015-07-17 08:58:21.118986898 +0000
-@@ -0,0 +1 @@
-+frexp
-diff -Naurd mpfr-3.1.3-a/VERSION mpfr-3.1.3-b/VERSION
---- mpfr-3.1.3-a/VERSION	2015-07-17 08:54:48.616811495 +0000
-+++ mpfr-3.1.3-b/VERSION	2015-07-17 08:58:21.118986898 +0000
-@@ -1 +1 @@
--3.1.3-p3
-+3.1.3-p4
-diff -Naurd mpfr-3.1.3-a/src/frexp.c mpfr-3.1.3-b/src/frexp.c
---- mpfr-3.1.3-a/src/frexp.c	2015-06-19 19:55:09.000000000 +0000
-+++ mpfr-3.1.3-b/src/frexp.c	2015-07-17 08:58:21.106987142 +0000
-@@ -26,6 +26,13 @@
- mpfr_frexp (mpfr_exp_t *exp, mpfr_ptr y, mpfr_srcptr x, mpfr_rnd_t rnd)
- {
-   int inex;
-+  unsigned int saved_flags = __gmpfr_flags;
-+  MPFR_BLOCK_DECL (flags);
-+
-+  MPFR_LOG_FUNC
-+    (("x[%Pu]=%.*Rg rnd=%d", mpfr_get_prec (x), mpfr_log_prec, x, rnd),
-+     ("y[%Pu]=%.*Rg exp=%" MPFR_EXP_FSPEC "d inex=%d", mpfr_get_prec (y),
-+      mpfr_log_prec, y, (mpfr_eexp_t) *exp, inex));
- 
-   if (MPFR_UNLIKELY(MPFR_IS_SINGULAR(x)))
-     {
-@@ -49,8 +56,32 @@
-         }
-     }
- 
--  inex = mpfr_set (y, x, rnd);
-+  MPFR_BLOCK (flags, inex = mpfr_set (y, x, rnd));
-+  __gmpfr_flags = saved_flags;
-+
-+  /* Possible overflow due to the rounding, no possible underflow. */
-+
-+  if (MPFR_UNLIKELY (MPFR_OVERFLOW (flags)))
-+    {
-+      int inex2;
-+
-+      /* An overflow here means that the exponent of y would be larger than
-+         the one of x, thus x would be rounded to the next power of 2, and
-+         the returned y should be 1/2 in absolute value, rounded (i.e. with
-+         possible underflow or overflow). This also implies that x and y are
-+         different objects, so that the exponent of x has not been lost. */
-+      MPFR_LOG_MSG (("Internal overflow\n", 0));
-+      MPFR_ASSERTD (x != y);
-+      *exp = MPFR_GET_EXP (x) + 1;
-+      inex2 = mpfr_set_si_2exp (y, MPFR_INT_SIGN (x), -1, rnd);
-+      MPFR_LOG_MSG (("inex=%d inex2=%d\n", inex, inex2));
-+      if (inex2 != 0)
-+        inex = inex2;
-+      MPFR_RET (inex);
-+    }
-+
-   *exp = MPFR_GET_EXP (y);
--  MPFR_SET_EXP (y, 0);
-+  /* Do not use MPFR_SET_EXP because the range has not been checked yet. */
-+  MPFR_EXP (y) = 0;
-   return mpfr_check_range (y, inex, rnd);
- }
-diff -Naurd mpfr-3.1.3-a/src/mpfr.h mpfr-3.1.3-b/src/mpfr.h
---- mpfr-3.1.3-a/src/mpfr.h	2015-07-17 08:54:48.616811495 +0000
-+++ mpfr-3.1.3-b/src/mpfr.h	2015-07-17 08:58:21.114986979 +0000
-@@ -27,7 +27,7 @@
- #define MPFR_VERSION_MAJOR 3
- #define MPFR_VERSION_MINOR 1
- #define MPFR_VERSION_PATCHLEVEL 3
--#define MPFR_VERSION_STRING "3.1.3-p3"
-+#define MPFR_VERSION_STRING "3.1.3-p4"
- 
- /* Macros dealing with MPFR VERSION */
- #define MPFR_VERSION_NUM(a,b,c) (((a) << 16L) | ((b) << 8) | (c))
-diff -Naurd mpfr-3.1.3-a/src/version.c mpfr-3.1.3-b/src/version.c
---- mpfr-3.1.3-a/src/version.c	2015-07-17 08:54:48.616811495 +0000
-+++ mpfr-3.1.3-b/src/version.c	2015-07-17 08:58:21.118986898 +0000
-@@ -25,5 +25,5 @@
- const char *
- mpfr_get_version (void)
- {
--  return "3.1.3-p3";
-+  return "3.1.3-p4";
- }
-diff -Naurd mpfr-3.1.3-a/tests/tfrexp.c mpfr-3.1.3-b/tests/tfrexp.c
---- mpfr-3.1.3-a/tests/tfrexp.c	2015-06-19 19:55:10.000000000 +0000
-+++ mpfr-3.1.3-b/tests/tfrexp.c	2015-07-17 08:58:21.106987142 +0000
-@@ -129,12 +129,115 @@
-   mpfr_clear (x);
- }
- 
-+static void check1 (void)
-+{
-+  mpfr_exp_t emin, emax, e;
-+  mpfr_t x, y1, y2;
-+  int r, neg, red;
-+
-+  emin = mpfr_get_emin ();
-+  emax = mpfr_get_emax ();
-+  set_emin (MPFR_EMIN_MIN);
-+  set_emax (MPFR_EMAX_MAX);
-+
-+  mpfr_init2 (x, 7);
-+  mpfr_inits2 (4, y1, y2, (mpfr_ptr) 0);
-+
-+  mpfr_set_ui_2exp (x, 1, -2, MPFR_RNDN);
-+  while (mpfr_regular_p (x))
-+    {
-+      /* Test the exponents up to 3 and with the maximum exponent
-+         (to check potential intermediate overflow). */
-+      if (MPFR_GET_EXP (x) == 4)
-+        mpfr_set_exp (x, MPFR_EMAX_MAX);
-+      e = MPFR_GET_EXP (x);
-+      for (neg = 0; neg < 2; neg++)
-+        {
-+          RND_LOOP (r)
-+            {
-+              int inex1, inex2;
-+              mpfr_exp_t e1, e2;
-+              unsigned int flags1, flags2;
-+
-+              for (red = 0; red < 2; red++)
-+                {
-+                  if (red)
-+                    {
-+                      /* e1: exponent of the rounded value of x. */
-+                      MPFR_ASSERTN (e1 == e || e1 == e + 1);
-+                      set_emin (e);
-+                      set_emax (e);
-+                      mpfr_clear_flags ();
-+                      inex1 = e1 < 0 ?
-+                        mpfr_mul_2ui (y1, x, -e1, (mpfr_rnd_t) r) :
-+                        mpfr_div_2ui (y1, x, e1, (mpfr_rnd_t) r);
-+                      flags1 = __gmpfr_flags;
-+                    }
-+                  else
-+                    {
-+                      inex1 = mpfr_set (y1, x, (mpfr_rnd_t) r);
-+                      e1 = MPFR_IS_INF (y1) ? e + 1 : MPFR_GET_EXP (y1);
-+                      flags1 = inex1 != 0 ? MPFR_FLAGS_INEXACT : 0;
-+                    }
-+                  mpfr_clear_flags ();
-+                  inex2 = mpfr_frexp (&e2, y2, x, (mpfr_rnd_t) r);
-+                  flags2 = __gmpfr_flags;
-+                  set_emin (MPFR_EMIN_MIN);
-+                  set_emax (MPFR_EMAX_MAX);
-+                  if ((!red || e == 0) &&
-+                      (! mpfr_regular_p (y2) || MPFR_GET_EXP (y2) != 0))
-+                    {
-+                      printf ("Error in check1 for %s, red = %d, x = ",
-+                              mpfr_print_rnd_mode ((mpfr_rnd_t) r), red);
-+                      mpfr_dump (x);
-+                      printf ("Expected 1/2 <= |y| < 1, got y = ");
-+                      mpfr_dump (y2);
-+                      exit (1);
-+                    }
-+                  if (!red)
-+                    {
-+                      if (e2 > 0)
-+                        mpfr_mul_2ui (y2, y2, e2, MPFR_RNDN);
-+                      else if (e2 < 0)
-+                        mpfr_div_2ui (y2, y2, -e2, MPFR_RNDN);
-+                    }
-+                  if (! (SAME_SIGN (inex1, inex2) &&
-+                         mpfr_equal_p (y1, y2) &&
-+                         flags1 == flags2))
-+                    {
-+                      printf ("Error in check1 for %s, red = %d, x = ",
-+                              mpfr_print_rnd_mode ((mpfr_rnd_t) r), red);
-+                      mpfr_dump (x);
-+                      printf ("Expected y1 = ");
-+                      mpfr_dump (y1);
-+                      printf ("Got      y2 = ");
-+                      mpfr_dump (y2);
-+                      printf ("Expected inex ~= %d, got %d\n", inex1, inex2);
-+                      printf ("Expected flags:");
-+                      flags_out (flags1);
-+                      printf ("Got flags:     ");
-+                      flags_out (flags2);
-+                      exit (1);
-+                    }
-+                }
-+            }
-+          mpfr_neg (x, x, MPFR_RNDN);
-+        }
-+      mpfr_nextabove (x);
-+    }
-+
-+  mpfr_clears (x, y1, y2, (mpfr_ptr) 0);
-+  set_emin (emin);
-+  set_emax (emax);
-+}
-+
- int
- main (int argc, char *argv[])
- {
-   tests_start_mpfr ();
- 
-   check_special ();
-+  check1 ();
- 
-   tests_end_mpfr ();
-   return 0;
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index fc8a18cfc38f..0951c113e3f1 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
     rev = "v${version}";
     sha256 = "19d8i8map8qz639mhflmxc0w9gp78fvkq1l46y5s6b5imwh0w7xq";
   };
-  
+
   nativeBuildInputs = [ which perl ];
   buildInputs = [ snappy google-gflags zlib bzip2 lz4 malloc fixDarwinDylibNames ];
 
@@ -43,13 +43,13 @@ stdenv.mkDerivation rec {
   CMAKE_CXX_FLAGS = "-std=gnu++11";
   JEMALLOC_LIB = stdenv.lib.optionalString (malloc == jemalloc) "-ljemalloc";
 
-  ${if enableLite then "LIBNAME" else null} = "librocksdb_lite";
+  LIBNAME = "librocksdb${stdenv.lib.optionalString enableLite "_lite"}";
   ${if enableLite then "CXXFLAGS" else null} = "-DROCKSDB_LITE=1";
-  
+
   buildAndInstallFlags = [
     "USE_RTTI=1"
     "DEBUG_LEVEL=0"
-    "DISABLE_WARNING_AS_ERROR=1"     
+    "DISABLE_WARNING_AS_ERROR=1"
   ];
 
   buildFlags = buildAndInstallFlags ++ [
@@ -68,7 +68,7 @@ stdenv.mkDerivation rec {
     echo "BUILD CONFIGURATION FOR SANITY CHECKING"
     cat make_config.mk
     mkdir -pv $static/lib/
-    mv -vi $out/lib/librocksdb.a $static/lib/
+    mv -vi $out/lib/${LIBNAME}.a $static/lib/
   '';
 
   enableParallelBuilding = true;
@@ -77,7 +77,7 @@ stdenv.mkDerivation rec {
     homepage = http://rocksdb.org;
     description = "A library that provides an embeddable, persistent key-value store for fast storage";
     license = licenses.bsd3;
-    platforms = platforms.x86_64 ++ platforms.aarch64;
+    platforms = platforms.x86_64;
     maintainers = with maintainers; [ adev wkennington ];
   };
 }
diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix
index 9b73b9e1e416..cc6e7211b1d2 100644
--- a/pkgs/development/libraries/vulkan-loader/default.nix
+++ b/pkgs/development/libraries/vulkan-loader/default.nix
@@ -3,12 +3,12 @@
   libXext, wayland, libGL_driver, makeWrapper }:
 
 let
-  version = "1.0.61.1";
+  version = "1.1.70.0";
   src = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "Vulkan-LoaderAndValidationLayers";
     rev = "sdk-${version}";
-    sha256 = "043kw6wnrpdplnb40x6n9rgf3gygsn9jiv91y458sydbhalfr945";
+    sha256 = "1a7xwl65bi03l4zbjq54qkxjb8kb4m78qvw8bas5alhf9v6i6yqp";
   };
 in
 
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ makeWrapper pkgconfig ];
   buildInputs = [ cmake git python3 python3Packages.lxml
-                  glslang spirv-tools x11 libxcb libXrandr libXext wayland
+                  glslang x11 libxcb libXrandr libXext wayland
                 ];
   enableParallelBuilding = true;
 
@@ -28,13 +28,18 @@ stdenv.mkDerivation rec {
   ];
 
   outputs = [ "out" "dev" "demos" ];
+  patches = [ ./rev-file.patch ];
+
+  postUnpack = ''
+    # Hack so a version header can be generated. Relies on ./rev-file.patch to work.
+    mkdir -p "$sourceRoot/external/glslang/External"
+    echo "${spirv-tools.src.rev}" > "$sourceRoot/external/glslang/External/spirv-tools"
+  '';
 
   preConfigure = ''
     checkRev() {
       [ "$2" = $(cat "external_revisions/$1_revision") ] || (echo "ERROR: dependency $1 is revision $2 but should be revision" $(cat "external_revisions/$1_revision") && exit 1)
     }
-    checkRev spirv-tools "${spirv-tools.src.rev}"
-    checkRev spirv-headers "${spirv-tools.headers.rev}"
     checkRev glslang "${glslang.src.rev}"
   '';
 
diff --git a/pkgs/development/libraries/vulkan-loader/rev-file.patch b/pkgs/development/libraries/vulkan-loader/rev-file.patch
new file mode 100644
index 000000000000..e8f9f92c8ead
--- /dev/null
+++ b/pkgs/development/libraries/vulkan-loader/rev-file.patch
@@ -0,0 +1,21 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c9f73ce96..d14ffeed9 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -339,13 +339,13 @@ macro(run_vk_xml_generate dependency output)
+ endmacro()
+ 
+ # Define macro used for generating header files containing commit IDs for external dependencies
+-macro(run_external_revision_generate source_dir symbol_name output)
++macro(run_external_revision_generate rev_file symbol_name output)
+     add_custom_command(OUTPUT ${output}
+     # NOTE: If you modify this call to use --rev_file instead of --git_dir (to read the commit ID from a file instead of
+     # parsing from a Git repository), you probably also want to add the revision file to the list of DEPENDS on the
+     # subsequent line (to ensure that the script is re-run when the revision file is modified).
+-    COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/external_revision_generator.py --git_dir ${source_dir} -s ${symbol_name} -o ${output}
+-    DEPENDS ${SCRIPTS_DIR}/external_revision_generator.py ${source_dir}/.git/HEAD ${source_dir}/.git/index
++    COMMAND ${PYTHON_CMD} ${SCRIPTS_DIR}/external_revision_generator.py --rev_file ${rev_file} -s ${symbol_name} -o ${output}
++    DEPENDS ${SCRIPTS_DIR}/external_revision_generator.py ${rev_file}
+     )
+ endmacro()
+ 
diff --git a/pkgs/development/libraries/webkitgtk/2.20.nix b/pkgs/development/libraries/webkitgtk/2.20.nix
index 47144bee83ac..27524504872e 100644
--- a/pkgs/development/libraries/webkitgtk/2.20.nix
+++ b/pkgs/development/libraries/webkitgtk/2.20.nix
@@ -39,6 +39,12 @@ stdenv.mkDerivation rec {
     patchShebangs .
   '';
 
+  postConfigure = ''
+    # A stopgap for a non-deterministic build failure when using only one core
+    # Upstream bug: https://bugs.webkit.org/show_bug.cgi?id=183788#c4
+    ninja JavaScriptCoreForwardingHeaders WTFForwardingHeaders
+  '';
+
   cmakeFlags = [
   "-DPORT=GTK"
   "-DUSE_LIBHYPHEN=0"
diff --git a/pkgs/development/libraries/xmlrpc-c/default.nix b/pkgs/development/libraries/xmlrpc-c/default.nix
index 92e3424a5f6a..8a0017109bbf 100644
--- a/pkgs/development/libraries/xmlrpc-c/default.nix
+++ b/pkgs/development/libraries/xmlrpc-c/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
     # <xmlrpc-c>/doc/COPYING also lists "Expat license",
     # "ABYSS Web Server License" and "Python 1.5.2 License"
     license = licenses.bsd3;
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = [ maintainers.bjornfor ];
   };
 }
diff --git a/pkgs/development/node-packages/node-packages-v8.json b/pkgs/development/node-packages/node-packages-v8.json
index 0a3334b5e97b..2d987cbfb1bd 100644
--- a/pkgs/development/node-packages/node-packages-v8.json
+++ b/pkgs/development/node-packages/node-packages-v8.json
@@ -1,6 +1,7 @@
 [
   "bower"
 , "coffee-script"
+, "create-cycle-app"
 , "dat"
 , "grunt-cli"
 , "mocha"
diff --git a/pkgs/development/node-packages/node-packages-v8.nix b/pkgs/development/node-packages/node-packages-v8.nix
index cdad11f3817c..cef612b9edfa 100644
--- a/pkgs/development/node-packages/node-packages-v8.nix
+++ b/pkgs/development/node-packages/node-packages-v8.nix
@@ -4,6 +4,69 @@
 
 let
   sources = {
+    "@cycle/dom-18.3.0" = {
+      name = "_at_cycle_slash_dom";
+      packageName = "@cycle/dom";
+      version = "18.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cycle/dom/-/dom-18.3.0.tgz";
+        sha1 = "37b9f55c6b0f629d1b689ece57637768fbeed2b0";
+      };
+    };
+    "@cycle/http-14.9.0" = {
+      name = "_at_cycle_slash_http";
+      packageName = "@cycle/http";
+      version = "14.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cycle/http/-/http-14.9.0.tgz";
+        sha512 = "0ahsk9basb6qimsb40yr40vxxkmmfiqlig23brc5dymic61gfhzg2mzqz5cvkiz2y8g2rwnlwb619fkd3f4hw1yg8bkbczcaxzcrqn0";
+      };
+    };
+    "@cycle/isolate-3.2.0" = {
+      name = "_at_cycle_slash_isolate";
+      packageName = "@cycle/isolate";
+      version = "3.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cycle/isolate/-/isolate-3.2.0.tgz";
+        sha512 = "1g3jcq2dmxpqn3nyvclbf9hnp18h4c41vsqywp2yf2mda92bzdjwidq8f231yxb6rs6r39zpvn741kjify4h5zl4d8ix1xigilbcyj7";
+      };
+    };
+    "@cycle/run-3.4.0" = {
+      name = "_at_cycle_slash_run";
+      packageName = "@cycle/run";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cycle/run/-/run-3.4.0.tgz";
+        sha512 = "2ir1dz9dh2ajf6yaks8nznfm89m0jh09hgadzwfml7xw3d49hks008sz3fq5rp9ax2d7r87y6hcq5hv9xz2qrkx1c1qc2r7xlz74ik1";
+      };
+    };
+    "@cycle/time-0.10.1" = {
+      name = "_at_cycle_slash_time";
+      packageName = "@cycle/time";
+      version = "0.10.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@cycle/time/-/time-0.10.1.tgz";
+        sha1 = "cbc4b9a68981bf0b501ccd06a9058acd65309bf7";
+      };
+    };
+    "@types/node-9.6.1" = {
+      name = "_at_types_slash_node";
+      packageName = "@types/node";
+      version = "9.6.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/node/-/node-9.6.1.tgz";
+        sha512 = "2sxvv78fkmdrpqq04pkyq69fkny1xj1abcp8ajkmmmfn1cs3jdiir545s9h1gsnxzls1iiigbzj8dlkimlqdfpbgdlm8h6pj2mlf2f7";
+      };
+    };
+    "@types/superagent-3.5.6" = {
+      name = "_at_types_slash_superagent";
+      packageName = "@types/superagent";
+      version = "3.5.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/superagent/-/superagent-3.5.6.tgz";
+        sha512 = "31mxn8niw3v1nam9lh29lrq867gjkbv2q6fs0w07miff4mz73066cn5n24f1vmnqpvyv6hbh83b6xll66911a8hj54apmn12s8ras68";
+      };
+    };
     "URIjs-1.16.1" = {
       name = "URIjs";
       packageName = "URIjs";
@@ -1174,6 +1237,15 @@ let
         sha512 = "0m8vssxhc3xlx639gz68425ll6mqh0rib6yr7s2v2vg1hwnqka02zijxmg16iyvzmd5sbsczjs2mqs0n428pc1cgkgj439fsa9b1kxk";
       };
     };
+    "combine-errors-3.0.3" = {
+      name = "combine-errors";
+      packageName = "combine-errors";
+      version = "3.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/combine-errors/-/combine-errors-3.0.3.tgz";
+        sha1 = "f4df6740083e5703a3181110c2b10551f003da86";
+      };
+    };
     "combined-stream-1.0.6" = {
       name = "combined-stream";
       packageName = "combined-stream";
@@ -1426,6 +1498,24 @@ let
         sha1 = "a230f64f568310e1498009940790ec99545bca7e";
       };
     };
+    "cssauron-1.4.0" = {
+      name = "cssauron";
+      packageName = "cssauron";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz";
+        sha1 = "a6602dff7e04a8306dc0db9a551e92e8b5662ad8";
+      };
+    };
+    "custom-error-instance-2.1.1" = {
+      name = "custom-error-instance";
+      packageName = "custom-error-instance";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/custom-error-instance/-/custom-error-instance-2.1.1.tgz";
+        sha1 = "3cf6391487a6629a6247eb0ca0ce00081b7e361a";
+      };
+    };
     "cycle-1.0.3" = {
       name = "cycle";
       packageName = "cycle";
@@ -1435,6 +1525,24 @@ let
         sha1 = "21e80b2be8580f98b468f379430662b046c34ad2";
       };
     };
+    "cycle-onionify-4.0.0" = {
+      name = "cycle-onionify";
+      packageName = "cycle-onionify";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/cycle-onionify/-/cycle-onionify-4.0.0.tgz";
+        sha1 = "9aeddd88dedf6fda9fbb98b1e79ab38810b7ddda";
+      };
+    };
+    "d-1.0.0" = {
+      name = "d";
+      packageName = "d";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/d/-/d-1.0.0.tgz";
+        sha1 = "754bb5bfe55451da69a58b94d45f4c5b0462d58f";
+      };
+    };
     "dag-map-1.0.2" = {
       name = "dag-map";
       packageName = "dag-map";
@@ -2002,6 +2110,51 @@ let
         sha512 = "3cjrpi6n5i6gf8jaiwg31y2xkgx59szhhcj9myqwmdw16s9r6yvwznxd2lhqf96mpm6knyb3w2bcnksg5nzkrq6iada0k6nvdj2pjfl";
       };
     };
+    "es5-ext-0.10.42" = {
+      name = "es5-ext";
+      packageName = "es5-ext";
+      version = "0.10.42";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.42.tgz";
+        sha512 = "1412ssfrx1kvraz8kp4x9lc1jzcdh2952vbmlimrfalmbjv44rh504ihb4fg5mjwx8ix1f1wii0a0qngwrfk4gl271mcywgp7b4x700";
+      };
+    };
+    "es6-iterator-2.0.3" = {
+      name = "es6-iterator";
+      packageName = "es6-iterator";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz";
+        sha1 = "a7de889141a05a94b0854403b2d0a0fbfa98f3b7";
+      };
+    };
+    "es6-map-0.1.5" = {
+      name = "es6-map";
+      packageName = "es6-map";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz";
+        sha1 = "9136e0503dcc06a301690f0bb14ff4e364e949f0";
+      };
+    };
+    "es6-set-0.1.5" = {
+      name = "es6-set";
+      packageName = "es6-set";
+      version = "0.1.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz";
+        sha1 = "d2b3ec5d4d800ced818db538d28974db0a73ccb1";
+      };
+    };
+    "es6-symbol-3.1.1" = {
+      name = "es6-symbol";
+      packageName = "es6-symbol";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz";
+        sha1 = "bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77";
+      };
+    };
     "escape-html-1.0.3" = {
       name = "escape-html";
       packageName = "escape-html";
@@ -2047,6 +2200,15 @@ let
         sha1 = "41ae2eeb65efa62268aebfea83ac7d79299b0887";
       };
     };
+    "event-emitter-0.3.5" = {
+      name = "event-emitter";
+      packageName = "event-emitter";
+      version = "0.3.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz";
+        sha1 = "df8c69eef1647923c7157b9ce83840610b02cc39";
+      };
+    };
     "event-stream-3.3.4" = {
       name = "event-stream";
       packageName = "event-stream";
@@ -3820,6 +3982,42 @@ let
         sha1 = "4d31f2e7de7e134fbf2803762b8150b32519666f";
       };
     };
+    "lodash._baseiteratee-4.7.0" = {
+      name = "lodash._baseiteratee";
+      packageName = "lodash._baseiteratee";
+      version = "4.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._baseiteratee/-/lodash._baseiteratee-4.7.0.tgz";
+        sha1 = "34a9b5543572727c3db2e78edae3c0e9e66bd102";
+      };
+    };
+    "lodash._basetostring-4.12.0" = {
+      name = "lodash._basetostring";
+      packageName = "lodash._basetostring";
+      version = "4.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-4.12.0.tgz";
+        sha1 = "9327c9dc5158866b7fa4b9d42f4638e5766dd9df";
+      };
+    };
+    "lodash._baseuniq-4.6.0" = {
+      name = "lodash._baseuniq";
+      packageName = "lodash._baseuniq";
+      version = "4.6.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz";
+        sha1 = "0ebb44e456814af7905c6212fa2c9b2d51b841e8";
+      };
+    };
+    "lodash._createset-4.0.3" = {
+      name = "lodash._createset";
+      packageName = "lodash._createset";
+      version = "4.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._createset/-/lodash._createset-4.0.3.tgz";
+        sha1 = "0f4659fbb09d75194fa9e2b88a6644d363c9fe26";
+      };
+    };
     "lodash._createwrapper-2.4.1" = {
       name = "lodash._createwrapper";
       packageName = "lodash._createwrapper";
@@ -3874,6 +4072,15 @@ let
         sha1 = "a6139630d76d1536b07ddc80962889b082f6a641";
       };
     };
+    "lodash._root-3.0.1" = {
+      name = "lodash._root";
+      packageName = "lodash._root";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz";
+        sha1 = "fba1c4524c19ee9a5f8136b4609f017cf4ded692";
+      };
+    };
     "lodash._setbinddata-2.4.1" = {
       name = "lodash._setbinddata";
       packageName = "lodash._setbinddata";
@@ -3901,6 +4108,15 @@ let
         sha1 = "745cf41a53597b18f688898544405efa2b06d90f";
       };
     };
+    "lodash._stringtopath-4.8.0" = {
+      name = "lodash._stringtopath";
+      packageName = "lodash._stringtopath";
+      version = "4.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash._stringtopath/-/lodash._stringtopath-4.8.0.tgz";
+        sha1 = "941bcf0e64266e5fc1d66fed0a6959544c576824";
+      };
+    };
     "lodash.assign-2.4.1" = {
       name = "lodash.assign";
       packageName = "lodash.assign";
@@ -4054,6 +4270,15 @@ let
         sha512 = "093j1mha2zwbfkb6cvxr94l1dsx44607vvyxadxki3j69s40n2f6x6iqs6f9rzpvvqd8anclsqdlrm3klkwxixm4k2fl8bjr4b01qjm";
       };
     };
+    "lodash.uniqby-4.5.0" = {
+      name = "lodash.uniqby";
+      packageName = "lodash.uniqby";
+      version = "4.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/lodash.uniqby/-/lodash.uniqby-4.5.0.tgz";
+        sha1 = "a3a17bbf62eeb6240f491846e97c1c4e2a5e1e21";
+      };
+    };
     "longest-1.0.1" = {
       name = "longest";
       packageName = "longest";
@@ -4603,6 +4828,15 @@ let
         sha1 = "4aa7bfd43f03f0b81c9702b13d6a858ddb326f3e";
       };
     };
+    "next-tick-1.0.0" = {
+      name = "next-tick";
+      packageName = "next-tick";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz";
+        sha1 = "ca86d1fe8828169b0120208e3dc8424b9db8342c";
+      };
+    };
     "node-gyp-build-3.3.0" = {
       name = "node-gyp-build";
       packageName = "node-gyp-build";
@@ -5278,6 +5512,15 @@ let
         sha512 = "3waqapyj1k4g135sgj636rmswiaixq19is1rw0rpv4qp6k7dl0a9nwy06m7yl5lbdk9p6xpwwngnggbzlzaz6rh11c86j2nvnnf273r";
       };
     };
+    "raf-3.3.2" = {
+      name = "raf";
+      packageName = "raf";
+      version = "3.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/raf/-/raf-3.3.2.tgz";
+        sha1 = "0c13be0b5b49b46f76d6669248d527cf2b02fe27";
+      };
+    };
     "random-access-file-2.0.1" = {
       name = "random-access-file";
       packageName = "random-access-file";
@@ -5764,6 +6007,15 @@ let
         sha512 = "1xdxg14zh452ih8f7826ki7xpq8wk8a831pm5zngqf8cbc4qv6mr9npks863bfqylfrhm161whf9199rmqn4i12wzmz2ks69z3343c7";
       };
     };
+    "setimmediate-1.0.5" = {
+      name = "setimmediate";
+      packageName = "setimmediate";
+      version = "1.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz";
+        sha1 = "290cbb232e306942d7d7ea9b83732ab7856f8285";
+      };
+    };
     "setprototypeof-1.1.0" = {
       name = "setprototypeof";
       packageName = "setprototypeof";
@@ -5863,6 +6115,24 @@ let
         sha512 = "1xd3zsk02nck4y601rn98n8cicrphaw5bdix278mk1yizmjv9s0wpa6akcqggd7d99c55s3byf4ylqdxkshyfsfnfx7lvwbmq2b3siw";
       };
     };
+    "snabbdom-0.7.0" = {
+      name = "snabbdom";
+      packageName = "snabbdom";
+      version = "0.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snabbdom/-/snabbdom-0.7.0.tgz";
+        sha512 = "3bh1m1ymhqqcm0mlxy5ja4xhcrryczvjda6jf8k6km9fx655x1wn7gx85i9rqds6wr1nwzccrdq72d5wn1274lxkzwy1n39gya3la1c";
+      };
+    };
+    "snabbdom-selector-1.2.1" = {
+      name = "snabbdom-selector";
+      packageName = "snabbdom-selector";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snabbdom-selector/-/snabbdom-selector-1.2.1.tgz";
+        sha512 = "3d51vgryfsxmpva2m93ca6z130m6vh4aiii2r9w7wkibrqy6z5zjyr2p26lmghn8msdfi1yvg9hfjq573q45vazzy2my9hivqb3ck43";
+      };
+    };
     "snapdragon-0.8.2" = {
       name = "snapdragon";
       packageName = "snapdragon";
@@ -5935,6 +6205,15 @@ let
         sha512 = "209rl01n6lwbsxl40lmh1v38sad3d94s0mjb4mz6r3wwwhzcahibr8m2fhlqgsjgzf3dja9wyhz7qjkw39gxlwpapyid2whs4nrzbnf";
       };
     };
+    "sorted-immutable-list-1.1.0" = {
+      name = "sorted-immutable-list";
+      packageName = "sorted-immutable-list";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sorted-immutable-list/-/sorted-immutable-list-1.1.0.tgz";
+        sha1 = "41a62c024bd755c4c57306e20eec92620dae5d97";
+      };
+    };
     "sorted-indexof-1.0.0" = {
       name = "sorted-indexof";
       packageName = "sorted-indexof";
@@ -6367,6 +6646,15 @@ let
         sha1 = "e39fae3d581d713682491e1926cd87bf2c209bfb";
       };
     };
+    "symbol-observable-1.2.0" = {
+      name = "symbol-observable";
+      packageName = "symbol-observable";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz";
+        sha512 = "1fxqjwdn747lxzkxrwhbw8arc9czdig47izx5hnzk22z8k7rnw00q8vcpy8v7a3xyamavwgg4mvjkpn2ihjiyjxjnhx2ihiryf39pbv";
+      };
+    };
     "tar-2.2.1" = {
       name = "tar";
       packageName = "tar";
@@ -6970,6 +7258,15 @@ let
         sha512 = "2f2x8zxh7czpkf33h5x8fvj48rfszyhkar554x5c2hw7qlsbdqjqvv6nczzsfkw6z5rj6gqabxhcg8haip0xgz7sn4jr6fi7f7llpk1";
       };
     };
+    "variable-diff-1.1.0" = {
+      name = "variable-diff";
+      packageName = "variable-diff";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/variable-diff/-/variable-diff-1.1.0.tgz";
+        sha1 = "d2bd5c66db76c13879d96e6a306edc989df978da";
+      };
+    };
     "varint-3.0.1" = {
       name = "varint";
       packageName = "varint";
@@ -7150,6 +7447,15 @@ let
         sha512 = "35rg34yxk4ag0qclk7bqxirgr3dgypcvkisqqj2g3y0ma16pkfy81iv79pcwff5p4spygwjh2m9v37llq7367fypqrx89s9kscwal43";
       };
     };
+    "xstream-11.2.0" = {
+      name = "xstream";
+      packageName = "xstream";
+      version = "11.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/xstream/-/xstream-11.2.0.tgz";
+        sha512 = "2jnrf16561zx9hsvlb8d48ca9qwdh9wxcbkwhkjvp5r88b8pcfjlx2g58k9w5kjs0kw660rw6hj2zhvdsznyf0ic9mj682xz6hf7kfh";
+      };
+    };
     "xtend-4.0.1" = {
       name = "xtend";
       packageName = "xtend";
@@ -7250,6 +7556,141 @@ in
     production = true;
     bypassCache = true;
   };
+  create-cycle-app = nodeEnv.buildNodePackage {
+    name = "create-cycle-app";
+    packageName = "create-cycle-app";
+    version = "4.0.0";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/create-cycle-app/-/create-cycle-app-4.0.0.tgz";
+      sha512 = "28v46s87z1qgi46mn0kdhw77dnra3pkhr7nlf4d6dxl46l9aba1hm1wqz2dxhr0g3pwqav8pg5c1qdxkr18ybvlkmhbkyyz0pp13y51";
+    };
+    dependencies = [
+      sources."@cycle/dom-18.3.0"
+      sources."@cycle/http-14.9.0"
+      sources."@cycle/isolate-3.2.0"
+      sources."@cycle/run-3.4.0"
+      (sources."@cycle/time-0.10.1" // {
+        dependencies = [
+          sources."chalk-1.1.3"
+        ];
+      })
+      sources."@types/node-9.6.1"
+      sources."@types/superagent-3.5.6"
+      sources."ansi-escapes-3.1.0"
+      sources."ansi-regex-2.1.1"
+      sources."ansi-styles-2.2.1"
+      sources."asynckit-0.4.0"
+      (sources."chalk-2.3.2" // {
+        dependencies = [
+          sources."ansi-styles-3.2.1"
+          sources."supports-color-5.3.0"
+        ];
+      })
+      sources."chardet-0.4.2"
+      sources."cli-cursor-2.1.0"
+      sources."cli-width-2.2.0"
+      sources."color-convert-1.9.1"
+      sources."color-name-1.1.3"
+      sources."combine-errors-3.0.3"
+      sources."combined-stream-1.0.6"
+      sources."component-emitter-1.2.1"
+      sources."cookiejar-2.1.1"
+      sources."core-util-is-1.0.2"
+      sources."cross-spawn-5.1.0"
+      sources."cssauron-1.4.0"
+      sources."custom-error-instance-2.1.1"
+      sources."cycle-onionify-4.0.0"
+      sources."d-1.0.0"
+      sources."debug-3.1.0"
+      sources."delayed-stream-1.0.0"
+      sources."es5-ext-0.10.42"
+      sources."es6-iterator-2.0.3"
+      sources."es6-map-0.1.5"
+      sources."es6-set-0.1.5"
+      sources."es6-symbol-3.1.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."event-emitter-0.3.5"
+      sources."extend-3.0.1"
+      sources."external-editor-2.1.0"
+      sources."figures-2.0.0"
+      sources."form-data-2.3.2"
+      sources."formidable-1.2.1"
+      sources."has-ansi-2.0.0"
+      sources."has-flag-3.0.0"
+      sources."iconv-lite-0.4.19"
+      sources."inherits-2.0.3"
+      (sources."inquirer-3.3.0" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+          sources."strip-ansi-4.0.0"
+        ];
+      })
+      sources."is-fullwidth-code-point-2.0.0"
+      sources."is-promise-2.1.0"
+      sources."isarray-1.0.0"
+      sources."isexe-2.0.0"
+      sources."lodash-4.17.5"
+      sources."lodash._baseiteratee-4.7.0"
+      sources."lodash._basetostring-4.12.0"
+      sources."lodash._baseuniq-4.6.0"
+      sources."lodash._createset-4.0.3"
+      sources."lodash._root-3.0.1"
+      sources."lodash._stringtopath-4.8.0"
+      sources."lodash.uniqby-4.5.0"
+      sources."lru-cache-4.1.2"
+      sources."methods-1.1.2"
+      sources."mime-1.6.0"
+      sources."mime-db-1.33.0"
+      sources."mime-types-2.1.18"
+      sources."mimic-fn-1.2.0"
+      sources."minimist-1.2.0"
+      sources."ms-2.0.0"
+      sources."mute-stream-0.0.7"
+      sources."next-tick-1.0.0"
+      sources."object-assign-4.1.1"
+      sources."onetime-2.0.1"
+      sources."os-tmpdir-1.0.2"
+      sources."performance-now-2.1.0"
+      sources."process-nextick-args-2.0.0"
+      sources."pseudomap-1.0.2"
+      sources."qs-6.5.1"
+      sources."raf-3.3.2"
+      sources."readable-stream-2.3.5"
+      sources."restore-cursor-2.0.0"
+      sources."run-async-2.3.0"
+      sources."rx-lite-4.0.8"
+      sources."rx-lite-aggregates-4.0.8"
+      sources."safe-buffer-5.1.1"
+      sources."setimmediate-1.0.5"
+      sources."shebang-command-1.2.0"
+      sources."shebang-regex-1.0.0"
+      sources."signal-exit-3.0.2"
+      sources."snabbdom-0.7.0"
+      sources."snabbdom-selector-1.2.1"
+      sources."sorted-immutable-list-1.1.0"
+      sources."string-width-2.1.1"
+      sources."string_decoder-1.0.3"
+      sources."strip-ansi-3.0.1"
+      sources."superagent-3.8.2"
+      sources."supports-color-2.0.0"
+      sources."symbol-observable-1.2.0"
+      sources."through-2.3.8"
+      sources."tmp-0.0.33"
+      sources."util-deprecate-1.0.2"
+      sources."variable-diff-1.1.0"
+      sources."which-1.3.0"
+      sources."xstream-11.2.0"
+      sources."yallist-2.1.2"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Create Cycle.js with no build configuration.";
+      homepage = "https://github.com/cyclejs-community/create-cycle-app#readme";
+      license = "ISC";
+    };
+    production = true;
+    bypassCache = true;
+  };
   dat = nodeEnv.buildNodePackage {
     name = "dat";
     packageName = "dat";
@@ -8940,4 +9381,4 @@ in
     production = true;
     bypassCache = true;
   };
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/Rtree/default.nix b/pkgs/development/python-modules/Rtree/default.nix
new file mode 100644
index 000000000000..7953829465b9
--- /dev/null
+++ b/pkgs/development/python-modules/Rtree/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, buildPythonPackage, fetchPypi, libspatialindex, numpy }:
+
+buildPythonPackage rec {
+  pname = "Rtree";
+  version = "0.8.3";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0jc62jbcqqpjcwcly7l9zk25bg72mrxmjykpvfiscgln00qczfbc";
+  };
+
+  propagatedBuildInputs = [ libspatialindex ];
+
+  patchPhase = ''
+    substituteInPlace rtree/core.py --replace \
+      "find_library('spatialindex_c')" "'${libspatialindex}/lib/libspatialindex_c${stdenv.hostPlatform.extensions.sharedLibrary}'"
+  '';
+
+  # Tests appear to be broken due to mysterious memory unsafe issues. See #36760
+  doCheck = false;
+  checkInputs = [ numpy ];
+
+  meta = with stdenv.lib; {
+    description = "R-Tree spatial index for Python GIS";
+    homepage = https://toblerity.org/rtree/;
+    license = licenses.lgpl21;
+    maintainers = with maintainers; [ bgamari ];
+  };
+}
diff --git a/pkgs/development/python-modules/face_recognition/default.nix b/pkgs/development/python-modules/face_recognition/default.nix
index 3b9a2c15b6e9..d1d8e8535a48 100644
--- a/pkgs/development/python-modules/face_recognition/default.nix
+++ b/pkgs/development/python-modules/face_recognition/default.nix
@@ -1,23 +1,23 @@
 { buildPythonPackage, fetchFromGitHub, pillow, click, dlib, numpy
-, face_recognition_models, scipy, stdenv, flake8, tox, pytest, glibcLocales
+, face_recognition_models, stdenv, flake8, tox, pytest, glibcLocales
 }:
 
 buildPythonPackage rec {
   pname = "face_recognition";
-  version = "1.2.1";
+  version = "1.2.2";
 
   src = fetchFromGitHub {
     repo = pname;
     owner = "ageitgey";
-    rev = "fe421d4acd76e8a19098e942b7bd9c3bbef6ebc4"; # no tags available in Git, pure revs are pushed to pypi
-    sha256 = "0wv5qxkg7xv1cr43zhhbixaqgj08xw2l7yvwl8g3fb2kdxyndw1c";
+    rev = "v${version}";
+    sha256 = "17jnyr80j1p74gyvh1jabvwd3zsxvip2y7cjhh2g6gsjv2dpvrjv";
   };
 
   postPatch = ''
     substituteInPlace setup.py --replace "flake8==2.6.0" "flake8"
   '';
 
-  propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models scipy ];
+  propagatedBuildInputs = [ pillow click dlib numpy face_recognition_models ];
 
   checkInputs = [ flake8 tox pytest glibcLocales ];
   checkPhase = ''
diff --git a/pkgs/development/python-modules/gst-python/default.nix b/pkgs/development/python-modules/gst-python/default.nix
index 393d00a8176a..b1d19e9f5091 100644
--- a/pkgs/development/python-modules/gst-python/default.nix
+++ b/pkgs/development/python-modules/gst-python/default.nix
@@ -1,10 +1,10 @@
-{ fetchurl, stdenv, pkgconfig, python, pygobject3
+{ fetchurl, stdenv, meson, ninja, pkgconfig, python, pygobject3
 , gst-plugins-base, ncurses
 }:
 
 stdenv.mkDerivation rec {
   pname = "gst-python";
-  version = "1.12.3";
+  version = "1.14.0";
   name = "${pname}-${version}";
 
   src = fetchurl {
@@ -12,22 +12,25 @@ stdenv.mkDerivation rec {
       "${meta.homepage}/src/gst-python/${name}.tar.xz"
       "mirror://gentoo/distfiles/${name}.tar.xz"
       ];
-    sha256 = "19rb06x2m7103zwfm0plxx95gb8bp01ng04h4q9k6ii9q7g2kxf3";
+    sha256 = "1rlr6gl4lg97ng4jxh3gb2ldmywm15vwsa72nvggr8qa2l8q3fg0";
   };
 
-  patches = [ ./different-path-with-pygobject.patch ];
-
   outputs = [ "out" "dev" ];
 
-  nativeBuildInputs = [ pkgconfig python ];
+  nativeBuildInputs = [ meson ninja pkgconfig python ];
 
   # XXX: in the Libs.private field of python3.pc
   buildInputs = [ ncurses ];
 
-  configureFlags = [
-    "--with-pygi-overrides-dir=$(out)/${python.sitePackages}/gi/overrides"
+  mesonFlags = [
+    "-Dpygi-overrides-dir=${python.sitePackages}/gi/overrides"
   ];
 
+  postPatch = ''
+    chmod +x scripts/pythondetector # patchShebangs requires executable file
+    patchShebangs scripts/pythondetector
+  '';
+
   propagatedBuildInputs = [ gst-plugins-base pygobject3 ];
 
   # Needed for python.buildEnv
diff --git a/pkgs/development/python-modules/vxi11/default.nix b/pkgs/development/python-modules/vxi11/default.nix
new file mode 100644
index 000000000000..7bae1e9860be
--- /dev/null
+++ b/pkgs/development/python-modules/vxi11/default.nix
@@ -0,0 +1,26 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, nose }:
+
+buildPythonPackage rec {
+  pname = "python-vxi11";
+  version = "0.9";
+
+  # no tests in PyPI tarball
+  src = fetchFromGitHub {
+    owner = "python-ivi";
+    repo = pname;
+    rev = "v${version}";
+    sha256 = "1xv7chp7rm0vrvbz6q57fpwhlgjz461h08q9zgmkcl2l0w96hmsn";
+  };
+
+  checkInputs = [ nose ];
+  checkPhase = ''
+    nosetests
+  '';
+
+  meta = with stdenv.lib; {
+    description = "VXI-11 driver for controlling instruments over Ethernet";
+    homepage = https://github.com/python-ivi/python-vxi11;
+    license = licenses.mit;
+    maintainers = with maintainers; [ bgamari ];
+  };
+}
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index dbe19935d62e..2104e532f284 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.68.0";
+  version = "0.69.0";
   name = "flow-${version}";
 
   src = fetchFromGitHub {
     owner = "facebook";
     repo = "flow";
     rev = "v${version}";
-    sha256 = "0wags0msk7s1z3gi6ns6d7zdpqk8wh5ryafvdyk6zwqwhaqgr5jw";
+    sha256 = "11n8g471zgazcnzsxcw45gzzn63xanw91wj5xwsx8i2cp7wg9g7g";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/analysis/pmd/default.nix b/pkgs/development/tools/analysis/pmd/default.nix
index a8d4c517a90e..83da9926170a 100644
--- a/pkgs/development/tools/analysis/pmd/default.nix
+++ b/pkgs/development/tools/analysis/pmd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "pmd-${version}";
-  version = "6.1.0";
+  version = "6.2.0";
 
   buildInputs = [ unzip ];
 
   src = fetchurl {
     url = "mirror://sourceforge/pmd/pmd-bin-${version}.zip";
-    sha256 = "1d2hbsnyvwvawhfh832yy3w93kr4whrk99zpg4q5ws2b2hhdvzv8";
+    sha256 = "12j6m6lhp4xw27x0x8jcy0vlwbanjwks7w6zl56xihv6r8cm40fz";
   };
 
   installPhase = ''
diff --git a/pkgs/development/tools/build-managers/bazel/default.nix b/pkgs/development/tools/build-managers/bazel/default.nix
index 6e974b7e93d6..593fe6c159b2 100644
--- a/pkgs/development/tools/build-managers/bazel/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/default.nix
@@ -6,7 +6,7 @@
 
 stdenv.mkDerivation rec {
 
-  version = "0.10.1";
+  version = "0.11.1";
 
   meta = with stdenv.lib; {
     homepage = "https://github.com/bazelbuild/bazel/";
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "https://github.com/bazelbuild/bazel/releases/download/${version}/bazel-${version}-dist.zip";
-    sha256 = "0rz6zvkzyglf0mmc178avf52zynz487m4v0089ilsbrgv7v4i0kh";
+    sha256 = "e8d762bcc01566fa50952c8028e95cfbe7545a39b8ceb3a0d0d6df33b25b333f";
   };
 
   sourceRoot = ".";
diff --git a/pkgs/development/tools/build-managers/doit/default.nix b/pkgs/development/tools/build-managers/doit/default.nix
index aeeb4dbd7798..e6ec8c2a80ce 100644
--- a/pkgs/development/tools/build-managers/doit/default.nix
+++ b/pkgs/development/tools/build-managers/doit/default.nix
@@ -3,14 +3,14 @@
 let
 
   name = "doit";
-  version = "0.31.0";
+  version = "0.31.1";
 
 in python3Packages.buildPythonApplication {
   name = "${name}-${version}";
 
   src = fetchurl {
     url = "mirror://pypi/d/${name}/${name}-${version}.tar.gz";
-    sha256 = "0v1yr04bfqnz3sp261np3zhf0y1b3a1daxc83iq308lscf39fdgx";
+    sha256 = "1spm8vfjh4kvalaj0i2ggbdln1yy5k68d8mfwfnpqlzxxx4ikl5s";
   };
 
   buildInputs = with python3Packages; [ mock pytest ];
diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
index 515e22788e50..7a5f2f44823b 100644
--- a/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
+++ b/pkgs/development/tools/continuous-integration/buildkite-agent/default.nix
@@ -1,6 +1,6 @@
 { stdenv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }:
 let
-  version = "2.6.9";
+  version = "2.6.10";
   goPackagePath = "github.com/buildkite/agent";
 in
 buildGoPackage {
@@ -12,7 +12,7 @@ buildGoPackage {
     owner = "buildkite";
     repo = "agent";
     rev = "v${version}";
-    sha256 = "0rlinj7dcr8vzl1pb15nfny8jkvvj50i8czf4ahv26avnfycm4pz";
+    sha256 = "07065hhhb418w5qlqnyiap45r59paysysbwz1l7dmaw3j4q8m8rg";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/development/tools/gron/default.nix b/pkgs/development/tools/gron/default.nix
new file mode 100644
index 000000000000..59f7360df2ae
--- /dev/null
+++ b/pkgs/development/tools/gron/default.nix
@@ -0,0 +1,32 @@
+{ stdenv, buildGoPackage, fetchFromGitHub }:
+
+buildGoPackage rec {
+  name = "gron-${version}";
+  version = "0.5.1";
+
+  owner = "tomnomnom";
+  repo = "gron";
+  goPackagePath = "github.com/${owner}/${repo}";
+
+  src = fetchFromGitHub {
+    inherit owner repo;
+    rev = "v${version}";
+    sha256 = "1s688ynjddchviwbiggnfbw28s4wsff2941f4b1q1j7mfak7iym2";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with stdenv.lib; {
+    description = "Make JSON greppable!";
+    longDescription = ''
+      gron transforms JSON into discrete assignments to make it easier to grep
+      for what you want and see the absolute 'path' to it. It eases the
+      exploration of APIs that return large blobs of JSON but have terrible
+      documentation.
+    '';
+    homepage = "https://github.com/tomnomnom/gron";
+    license = licenses.mit;
+    maintainers = [ maintainers.fgaz ];
+    platforms = with platforms; linux ++ darwin;
+  };
+}
diff --git a/pkgs/development/tools/gron/deps.nix b/pkgs/development/tools/gron/deps.nix
new file mode 100644
index 000000000000..c5b1feb888ae
--- /dev/null
+++ b/pkgs/development/tools/gron/deps.nix
@@ -0,0 +1,35 @@
+[
+  rec {
+    owner = "fatih";
+    repo = "color";
+    goPackagePath = "github.com/${owner}/${repo}";
+    fetch = {
+      type = "git";
+      url = "https://github.com/${owner}/${repo}";
+      rev = "v1.6.0";
+      sha256 = "0k1v9dkhrxiqhg48yqkwzpd7x40xx38gv2pgknswbsy4r8w644i7";
+    };
+  }
+  rec {
+    owner = "nwidger";
+    repo = "jsoncolor";
+    goPackagePath = "github.com/${owner}/${repo}";
+    fetch = {
+      type = "git";
+      url = "https://github.com/${owner}/${repo}";
+      rev = "75a6de4340e59be95f0884b9cebdda246e0fdf40";
+      sha256 = "0aiv42xijrqgrxfx6pfyrndpwqv8i1qwsk190jdczyjxlnki2nki";
+    };
+  }
+  rec {
+    owner = "pkg";
+    repo = "errors";
+    goPackagePath = "github.com/${owner}/${repo}";
+    fetch = {
+      type = "git";
+      url = "https://github.com/${owner}/${repo}";
+      rev = "v0.8.0";
+      sha256 = "001i6n71ghp2l6kdl3qq1v2vmghcz3kicv9a5wgcihrzigm75pp5";
+    };
+  }
+]
diff --git a/pkgs/development/tools/jl/default.nix b/pkgs/development/tools/jl/default.nix
new file mode 100644
index 000000000000..ea6214284582
--- /dev/null
+++ b/pkgs/development/tools/jl/default.nix
@@ -0,0 +1,28 @@
+{ mkDerivation, fetchFromGitHub
+, aeson, aeson-pretty, attoparsec, base, bytestring, conduit, conduit-extra
+, containers, exceptions, mtl, optparse-simple, parsec, scientific, stdenv
+, text, unordered-containers, vector
+}:
+mkDerivation rec {
+  pname = "jl";
+  version = "0.0.4";
+  src = fetchFromGitHub {
+    owner = "chrisdone";
+    repo = "jl";
+    rev = "v${version}";
+    sha256 = "0wsdfj4m729q0kjpkn0ywpncdhvpvvprd4rh45vcg6kjw20krm3r";
+  };
+  isLibrary = true;
+  isExecutable = true;
+  libraryHaskellDepends = [
+    aeson attoparsec base bytestring containers exceptions mtl parsec
+    scientific text unordered-containers vector
+  ];
+  executableHaskellDepends = [
+    aeson aeson-pretty base bytestring conduit conduit-extra containers
+    mtl optparse-simple text vector
+  ];
+  license = stdenv.lib.licenses.bsd3;
+  description = "Functional sed for JSON";
+  maintainers = with stdenv.lib.maintainers; [ fgaz ];
+}
diff --git a/pkgs/development/tools/spirv-tools/default.nix b/pkgs/development/tools/spirv-tools/default.nix
index fc6bf1921e2f..35e0d276101b 100644
--- a/pkgs/development/tools/spirv-tools/default.nix
+++ b/pkgs/development/tools/spirv-tools/default.nix
@@ -3,19 +3,18 @@
 let
 
 spirv_sources = {
-  # `vulkan-loader` requires a specific version of `spirv-tools` and `spirv-headers` as specified in
-  # `<vulkan-loader-repo>/external_revisions/spirv-tools_revision`.
+  # `glslang` requires a specific version of `spirv-tools` and `spirv-headers` as specified in `known-good.json`.
   tools = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Tools";
-    rev = "7e2d26c77b606b21af839b37fd21381c4a669f23";
-    sha256 = "1nlzj081v1xdyfz30nfs8hfcnqd072fra127h46gav179f04kss2";
+    rev = "9e19fc0f31ceaf1f6bc907dbf17dcfded85f2ce8";
+    sha256 = "1zpwznq0fyvkzs5h9nnkr7g6svr0w8z6zx62xgnss17c2a5cz0lk";
   };
   headers = fetchFromGitHub {
     owner = "KhronosGroup";
     repo = "SPIRV-Headers";
-    rev = "2bb92e6fe2c6aa410152fc6c63443f452acb1a65";
-    sha256 = "1rgjd7kpa7xpbwpzd6m3f6yq44s9xn5ddhz135213pxwbi5c0c26";
+    rev = "ce309203d7eceaf908bea8862c27f3e0749f7d00";
+    sha256 = "1sv1iy2d46sg7r3xy591db6fn9h78wd079yvfa87vwmwsdkhiqhm";
   };
 };
 
@@ -23,7 +22,7 @@ in
 
 stdenv.mkDerivation rec {
   name = "spirv-tools-${version}";
-  version = "2017-09-01";
+  version = "2018-02-05";
 
   src = spirv_sources.tools;
   patchPhase = ''ln -sv ${spirv_sources.headers} external/spirv-headers'';
diff --git a/pkgs/games/factorio/default.nix b/pkgs/games/factorio/default.nix
index b3319bae9733..2cc63e9ecdef 100644
--- a/pkgs/games/factorio/default.nix
+++ b/pkgs/games/factorio/default.nix
@@ -19,15 +19,15 @@ let
   binDists = {
     x86_64-linux = let bdist = bdistForArch { inUrl = "linux64"; inTar = "x64"; }; in {
       alpha = {
-        stable        = bdist { sha256 = "1i25q8x80qdpmf00lvml67gyklrfvmr4gfyakrx954bq8giiy4ll"; fetcher = authenticatedFetch; };
-        experimental  = bdist { sha256 = "0s7cn5xhzwn793bmvlhlmibhbxdpfmpnpn33k5a4hdprc5gc27rg"; version = "0.16.24"; fetcher = authenticatedFetch; };
+        stable        = bdist { sha256 = "0gxa8wh0py4l1ym57sfq792kfh00khi0f9ykjlmjqqkdksyxgddf"; fetcher = authenticatedFetch; };
+        experimental  = bdist { sha256 = "1iy3k9zrw3za9mabf89lfl8i20xfij66ih5vngz5xfyy99mwxiy6"; version = "0.16.35"; fetcher = authenticatedFetch; };
       };
       headless = {
-        stable        = bdist { sha256 = "0v5sypz1q6x6hi6k5cyi06f9ld0cky80l0z64psd3v2ax9hyyh8h"; };
-        experimental  = bdist { sha256 = "1ff4yjybiqr5kw583hmxkbrbxa3haj4bkjj8sx811c3s269gspi2"; version = "0.16.24"; };
+        stable        = bdist { sha256 = "0n2j86af41dkbsyyy5lawjpdd7c0lvfdwxpwbj1m8v470i1g8zq4"; };
+        experimental  = bdist { sha256 = "0x4miyva1lmiyv3lb4savdlycia1kzw6bri4qj9b2jmyw1dr8x8h"; version = "0.16.35"; };
       };
       demo = {
-        stable        = bdist { sha256 = "0aca8gks7wl7yi821bcca16c94zcc41agin5j0vfz500i0sngzzw"; version = "0.15.36"; };
+        stable        = bdist { sha256 = "1z04rdlcxnfwami0l5nm292w4ydfhr1s6rcl8hxrsa73d4xk5lch"; version = "0.16.36"; };
         experimental  = bdist { };
       };
     };
@@ -49,7 +49,7 @@ let
   actual = binDists.${stdenv.system}.${releaseType}.${branch} or (throw "Factorio: unsupported platform");
 
   bdistForArch = arch: { sha256 ? null
-                       , version ? "0.15.40"
+                       , version ? "0.16.36"
                        , fetcher ? fetchurl
                        , nameMut ? x: x
                        }:
diff --git a/pkgs/misc/cups/filters.nix b/pkgs/misc/cups/filters.nix
index 72e265360bf2..287451d338da 100644
--- a/pkgs/misc/cups/filters.nix
+++ b/pkgs/misc/cups/filters.nix
@@ -9,11 +9,11 @@ let
 
 in stdenv.mkDerivation rec {
   name = "cups-filters-${version}";
-  version = "1.20.1";
+  version = "1.20.2";
 
   src = fetchurl {
     url = "http://openprinting.org/download/cups-filters/${name}.tar.xz";
-    sha256 = "0qix1whz5n4ijnl6d44f1v8nzkpv99wqjyrby8vx6xnpskw5hsxk";
+    sha256 = "1f6dw476m9gc94jy38f79a5aa40mk91yc81cdwrsz42wlz3nbdq2";
   };
 
   nativeBuildInputs = [ pkgconfig makeWrapper ];
@@ -62,6 +62,5 @@ in stdenv.mkDerivation rec {
     description = "Backends, filters, and other software that was once part of the core CUPS distribution but is no longer maintained by Apple Inc";
     license = stdenv.lib.licenses.gpl2;
     platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ layus ];
   };
 }
diff --git a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
index 081f713d0549..f8c424089f09 100644
--- a/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
+++ b/pkgs/os-specific/darwin/apple-sdk/frameworks.nix
@@ -14,7 +14,6 @@ with frameworks; with libs; {
   AppKitScripting         = [];
   AppleScriptKit          = [];
   AppleScriptObjC         = [];
-  AppleShareClientCore    = [ CoreServices ];
   AudioToolbox            = [ AudioUnit CoreAudio CF CoreMIDI ];
   AudioUnit               = [ Carbon CoreAudio CF ];
   AudioVideoBridging      = [ Foundation ];
@@ -84,12 +83,10 @@ with frameworks; with libs; {
   PCSC                    = [ CoreData ];
   PreferencePanes         = [];
   PubSub                  = [];
-  Python                  = [ ApplicationServices ];
   QTKit                   = [ CoreMediaIO CoreMedia MediaToolbox QuickTime VideoToolbox ];
   QuickLook               = [ ApplicationServices CF ];
   QuickTime               = [ ApplicationServices AudioUnit Carbon CoreAudio CoreServices OpenGL QuartzCore ];
   Ruby                    = [];
-  RubyCocoa               = [];
   SceneKit                = [];
   ScreenSaver             = [];
   Scripting               = [];
@@ -105,11 +102,9 @@ with frameworks; with libs; {
   SystemConfiguration     = [ CF Security ];
   TWAIN                   = [ Carbon ];
   Tcl                     = [];
-  Tk                      = [ ApplicationServices Carbon X11 ];
   VideoDecodeAcceleration = [ CF CoreVideo ];
   VideoToolbox            = [ CF CoreMedia CoreVideo ];
   WebKit                  = [ ApplicationServices Carbon JavaScriptCore OpenGL ];
-  X11                     = []; # used by Tk, should this exist?
 
   # Umbrellas
   Accelerate          = [ CoreWLAN IOBluetooth ];
diff --git a/pkgs/os-specific/linux/criu/default.nix b/pkgs/os-specific/linux/criu/default.nix
index 42ab0092f7d9..fc7a66dcf1b6 100644
--- a/pkgs/os-specific/linux/criu/default.nix
+++ b/pkgs/os-specific/linux/criu/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name    = "criu-${version}";
-  version = "3.8";
+  version = "3.8.1";
 
   src = fetchurl {
     url    = "http://download.openvz.org/criu/${name}.tar.bz2";
-    sha256 = "0gmvbnb5wa3f4nzam7gssclfai8g5363dhp8qc7q32dcx4wxbgam";
+    sha256 = "0csyhsc5d6wkcjyvsp6h9x8zxn3zk574s84gfmy3gjagv3nwqd51";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index 206787ecb8b7..724498b960c0 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -6,7 +6,8 @@ stdenv.mkDerivation rec {
 
   src = fetchgit {
     url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git";
-    sha256 = "1gh5a2km33jj151j3q7mgkjzzhaaxlqxbb53n4ff46q658gv0wma";
+    rev = "8c1e439c967a50f0698d61aafdba3841aff10db0";
+    sha256 = "110vxgahyx5dvylqrxsm5cmx4a32cl2zchvm6cgc270jz75fg7wd";
   };
 
   preInstall = ''
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index 9460ee46c0f0..e7139d17ace6 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -66,9 +66,9 @@ in
     };
 
     splUnstable = common {
-      version = "2018-01-24";
-      rev = "23602fdb39e1254c669707ec9d2d0e6bcdbf1771";
-      sha256 = "09py2dwj77f6s2qcnkwdslg5nxb3hq2bq39zpxpm6msqyifhl69h";
+      version = "2018-03-09";
+      rev = "43983eb2024ec6b3280e6e06a6fb621ee3bb2a41";
+      sha256 = "00h7z30hzxd09cfa44w7yv7zympvdwzdximfgjvpa1layzppjpsh";
     };
 
     splLegacyCrypto = common {
diff --git a/pkgs/os-specific/linux/sysvinit/default.nix b/pkgs/os-specific/linux/sysvinit/default.nix
index 6ec8abdc1760..b516cfe65edd 100644
--- a/pkgs/os-specific/linux/sysvinit/default.nix
+++ b/pkgs/os-specific/linux/sysvinit/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, withoutInitTools ? false }:
 
-let version = "2.88dsf"; in
+let version = "2.89"; in
 
 stdenv.mkDerivation {
   name = (if withoutInitTools then "sysvtools" else "sysvinit") + "-" + version;
 
   src = fetchurl {
     url = "mirror://savannah/sysvinit/sysvinit-${version}.tar.bz2";
-    sha256 = "068mvzaz808a673zigyaqb63xc8bndh2klk16zi5c83rw70wifv0";
+    sha256 = "0rdw5lgg2rpcfdmq90br388qr01w89vsqmpvrqcqjqsmxk9zw3c2";
   };
 
   prePatch = ''
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 2535745e3595..a311aaf0d0f7 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -166,21 +166,21 @@ in {
     inherit spl;
   };
 
-  zfsUnstable = common {
+  zfsUnstable = common rec {
     # comment/uncomment if breaking kernel versions are known
     incompatibleKernelVersion = null;
 
     # this package should point to a version / git revision compatible with the latest kernel release
-    version = "2018-02-02";
+    version = "2018-04-04";
 
-    rev = "fbd42542686af053f0d162ec4630ffd4fff1cc30";
-    sha256 = "0qzkwnnk7kz1hwvcaqlpzi5yspfhhmd2alklc07k056ddzbx52qb";
+    rev = "1724eb62debfaa48f5861660615d49a994945d94";
+    sha256 = "1adnmpn7b8zi5rq9r71flwx237vbysss1wywbck8407mcnrfaxzf";
     isUnstable = true;
 
     extraPatches = [
       (fetchpatch {
-        url = "https://github.com/Mic92/zfs/compare/fbd42542686af053f0d162ec4630ffd4fff1cc30...nixos-zfs-2018-02-02.patch";
-        sha256 = "05wqwjm9648x60vkwxbp8l6z1q73r2a5l2ni28i2f4pla8s3ahln";
+        url = "https://github.com/Mic92/zfs/compare/${rev}...nixos-zfs-2018-02-02.patch";
+        sha256 = "1gqmgqi39qhk5kbbvidh8f2xqq25vj58i9x0wjqvcx6a71qj49ch";
       })
     ];
 
diff --git a/pkgs/servers/minio/default.nix b/pkgs/servers/minio/default.nix
index 90a959872673..786a188bbfd8 100644
--- a/pkgs/servers/minio/default.nix
+++ b/pkgs/servers/minio/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   name = "minio-${version}";
 
-  version = "2018-03-19T19-22-06Z";
+  version = "2018-03-30T00-38-44Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "minio";
     rev = "RELEASE.${version}";
-    sha256 = "0cqvam7i8caqlb0jdn89s1k18gfy4yndsszj7d81qg2sns0p5zgm";
+    sha256 = "17vam9ifi632yfxakanxi2660wqgqrhrhhzywrgh2jmzljippf80";
   };
 
   goPackagePath = "github.com/minio/minio";
diff --git a/pkgs/servers/nosql/arangodb/default.nix b/pkgs/servers/nosql/arangodb/default.nix
index 75ba1f6a9409..9d1e62136651 100644
--- a/pkgs/servers/nosql/arangodb/default.nix
+++ b/pkgs/servers/nosql/arangodb/default.nix
@@ -3,14 +3,14 @@
 
 let
 in stdenv.mkDerivation rec {
-  version = "3.3.4";
+  version = "3.3.5";
   name    = "arangodb-${version}";
 
   src = fetchFromGitHub {
     repo = "arangodb";
     owner = "arangodb";
     rev = "v${version}";
-    sha256 = "0gfjmva043f9nhqjpa0qy2cdbz84z7b1c2wgcy77i3wnskicy0pc";
+    sha256 = "1015fi47m0j71l6wmp7n06qk0x2h3337sjqxfyan5dnnb0himzb6";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/misc/xburst-tools/default.nix b/pkgs/tools/misc/xburst-tools/default.nix
index c64ae609bcbb..6b63e2f55a27 100644
--- a/pkgs/tools/misc/xburst-tools/default.nix
+++ b/pkgs/tools/misc/xburst-tools/default.nix
@@ -22,6 +22,8 @@ stdenv.mkDerivation {
     "--enable-firmware CROSS_COMPILE=${crossPrefix}-"
     else "";
 
+  hardeningDisable = [ "pic" "stackprotector" ];
+
   # Not to strip cross build binaries (this is for the gcc-cross-wrapper)
   dontCrossStrip = true;
 
diff --git a/pkgs/tools/networking/mailutils/default.nix b/pkgs/tools/networking/mailutils/default.nix
index 6f47b4b55766..c85aaea6f3b9 100644
--- a/pkgs/tools/networking/mailutils/default.nix
+++ b/pkgs/tools/networking/mailutils/default.nix
@@ -34,7 +34,7 @@ in stdenv.mkDerivation rec {
   ];
 
   doCheck = true;
-  enableParallelBuilding = true;
+  enableParallelBuilding = false;
   hardeningDisable = [ "format" ];
 
   configureFlags = [
diff --git a/pkgs/tools/networking/minio-client/default.nix b/pkgs/tools/networking/minio-client/default.nix
index 7538c08249c0..bfe7dfc2dc0d 100644
--- a/pkgs/tools/networking/minio-client/default.nix
+++ b/pkgs/tools/networking/minio-client/default.nix
@@ -3,13 +3,13 @@
 buildGoPackage rec {
   name = "minio-client-${version}";
 
-  version = "2018-02-09T23-07-36Z";
+  version = "2018-03-25T01-22-22Z";
 
   src = fetchFromGitHub {
     owner = "minio";
     repo = "mc";
     rev = "RELEASE.${version}";
-    sha256 = "1mzjqcvl8740jkkrsyycwqminnd0vdl1m2mvq8hnywj8hs816bfd";
+    sha256 = "1x71va37jaqsi99d0i0mccybrs9kjgmpfsm0dchmc58mmhyagh3k";
   };
 
   goPackagePath = "github.com/minio/mc";
diff --git a/pkgs/tools/networking/p2p/libtorrent/default.nix b/pkgs/tools/networking/p2p/libtorrent/default.nix
index 87785f50e6fa..87cf6d172c0c 100644
--- a/pkgs/tools/networking/p2p/libtorrent/default.nix
+++ b/pkgs/tools/networking/p2p/libtorrent/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
     homepage = "http://rtorrent.net/downloads/";
     description = "A BitTorrent library written in C++ for *nix, with focus on high performance and good code";
 
-    platforms = platforms.linux;
+    platforms = platforms.unix;
     maintainers = with maintainers; [ ebzzry codyopel ];
   };
 }
diff --git a/pkgs/tools/security/krunner-pass/default.nix b/pkgs/tools/security/krunner-pass/default.nix
new file mode 100644
index 000000000000..dac6df56a796
--- /dev/null
+++ b/pkgs/tools/security/krunner-pass/default.nix
@@ -0,0 +1,44 @@
+{ mkDerivation, stdenv,
+  fetchFromGitHub,
+  cmake, extra-cmake-modules, gnumake,
+
+  pass, pass-otp ? null, krunner,
+}:
+let
+  pname = "krunner-pass";
+  version = "1.3.0";
+in
+mkDerivation rec {
+  name = "${pname}-${version}";
+
+  src = fetchFromGitHub {
+    owner = "akermu";
+    repo = "krunner-pass";
+    rev = "v${version}";
+    sha256 = "032fs2174ls545kjixbhzyd65wgxkw4s5vg8b20irc5c9ak3pxm0";
+  };
+
+  buildInputs  = [
+    pass
+    pass-otp
+    krunner
+  ];
+
+  nativeBuildInputs = [cmake extra-cmake-modules gnumake];
+
+  patches = [
+    ./pass-path.patch
+  ];
+
+  CXXFLAGS = [
+    ''-DNIXPKGS_PASS=\"${stdenv.lib.getBin pass}/bin/pass\"''
+  ];
+
+  meta = with stdenv.lib; {
+    description = "Integrates krunner with pass the unix standard password manager (https://www.passwordstore.org/)";
+    homepage = https://github.com/akermu/krunner-pass;
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ ysndr ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/security/krunner-pass/pass-path.patch b/pkgs/tools/security/krunner-pass/pass-path.patch
new file mode 100644
index 000000000000..4ceb3c5d92da
--- /dev/null
+++ b/pkgs/tools/security/krunner-pass/pass-path.patch
@@ -0,0 +1,13 @@
+diff --git a/pass.cpp b/pass.cpp
+index c02f9d0..85c5b99 100644
+--- a/pass.cpp
++++ b/pass.cpp
+@@ -193,7 +193,7 @@ void Pass::run(const Plasma::RunnerContext &context, const Plasma::QueryMatch &m
+     } else {
+         args << "show" << match.text();
+     }
+-    pass->start("pass", args);
++    pass->start(NIXPKGS_PASS, args);
+
+     connect(pass, static_cast<void(QProcess::*)(int, QProcess::ExitStatus)>(&QProcess::finished),
+             [=](int exitCode, QProcess::ExitStatus exitStatus) {
diff --git a/pkgs/tools/typesetting/tectonic/default.nix b/pkgs/tools/typesetting/tectonic/default.nix
index ad612fa18af6..f3f0a60b4802 100644
--- a/pkgs/tools/typesetting/tectonic/default.nix
+++ b/pkgs/tools/typesetting/tectonic/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, rustPlatform, makeWrapper
-, fontconfig, harfbuzz-icu, openssl, pkgconfig }:
+, darwin, fontconfig, harfbuzz-icu, openssl, pkgconfig }:
 
 rustPlatform.buildRustPackage rec {
   name = "tectonic-${version}";
@@ -16,7 +16,8 @@ rustPlatform.buildRustPackage rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ fontconfig harfbuzz-icu openssl ];
+  buildInputs = [ fontconfig harfbuzz-icu openssl ]
+    ++ stdenv.lib.optionals stdenv.isDarwin (with darwin.apple_sdk.frameworks; [ ApplicationServices Cocoa Foundation ]);
 
   # tests fail due to read-only nix store
   doCheck = false;
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index f1868c7e9227..797ad7a59503 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -213,6 +213,10 @@ mapAliases (rec {
   telepathy_qt = telepathy-qt; # added 2018-02-25
   telepathy_qt5 = libsForQt5.telepathy;  # added 2015-12-19
   telepathy_salut = telepathy-salut; # added 2018-02-25
+  tex-gyre-bonum-math = tex-gyre-math.bonum; # added 2018-04-03
+  tex-gyre-pagella-math = tex-gyre-math.pagella; # added 2018-04-03
+  tex-gyre-schola-math = tex-gyre-math.schola; # added 2018-04-03
+  tex-gyre-termes-math = tex-gyre-math.termes; # added 2018-04-03
   tftp_hpa = tftp-hpa; # added 2015-04-03
   transmission_gtk = transmission-gtk; # added 2018-01-06
   transmission_remote_gtk = transmission-remote-gtk; # added 2018-01-06
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index e25ef0e10cef..918621391778 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -612,7 +612,7 @@ with pkgs;
   container-linux-config-transpiler = callPackage ../development/tools/container-linux-config-transpiler { };
 
   cconv = callPackage ../tools/text/cconv { };
-  
+
   chkcrontab = callPackage ../tools/admin/chkcrontab { };
 
   djmount = callPackage ../tools/filesystems/djmount { };
@@ -1794,6 +1794,8 @@ with pkgs;
 
   crackxls = callPackage ../tools/security/crackxls { };
 
+  create-cycle-app = nodePackages_8_x.create-cycle-app;
+
   createrepo_c = callPackage ../tools/package-management/createrepo_c { };
 
   cromfs = callPackage ../tools/archivers/cromfs { };
@@ -2665,6 +2667,8 @@ with pkgs;
     inherit (xorg) libXdmcp;
   };
 
+  gron = callPackage ../development/tools/gron { };
+
   groonga = callPackage ../servers/search/groonga { };
 
   grub = callPackage_i686 ../tools/misc/grub {
@@ -3088,6 +3092,8 @@ with pkgs;
   jing = self.jing-trang;
   jing-trang = callPackage ../tools/text/xml/jing-trang { };
 
+  jl = haskellPackages.callPackage ../development/tools/jl { };
+
   jmespath = callPackage ../development/tools/jmespath { };
 
   jmtpfs = callPackage ../tools/filesystems/jmtpfs { };
@@ -3176,6 +3182,8 @@ with pkgs;
 
   krename = libsForQt5.callPackage ../applications/misc/krename { };
 
+  krunner-pass = libsForQt5.callPackage ../tools/security/krunner-pass { };
+
   kronometer = libsForQt5.callPackage ../tools/misc/kronometer { };
 
   elisa = libsForQt5.callPackage ../applications/audio/elisa { };
@@ -5962,7 +5970,9 @@ with pkgs;
   fpc = callPackage ../development/compilers/fpc { };
 
   gambit = callPackage ../development/compilers/gambit { };
+  gambit-unstable = callPackage ../development/compilers/gambit/unstable.nix { };
   gerbil = callPackage ../development/compilers/gerbil { };
+  gerbil-unstable = callPackage ../development/compilers/gerbil/unstable.nix { };
 
   gccFun = callPackage ../development/compilers/gcc/7;
   gcc = gcc7;
@@ -14471,15 +14481,9 @@ with pkgs;
 
   terminus_font_ttf = callPackage ../data/fonts/terminus-font-ttf { };
 
-  tex-gyre = callPackage ../data/fonts/tex-gyre { };
+  tex-gyre = callPackages ../data/fonts/tex-gyre { };
 
-  tex-gyre-bonum-math = callPackage ../data/fonts/tex-gyre-math { variant = "bonum"; };
-
-  tex-gyre-pagella-math = callPackage ../data/fonts/tex-gyre-math { variant = "pagella"; };
-
-  tex-gyre-schola-math = callPackage ../data/fonts/tex-gyre-math { variant = "schola"; };
-
-  tex-gyre-termes-math = callPackage ../data/fonts/tex-gyre-math { variant = "termes"; };
+  tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { };
 
   tipa = callPackage ../data/fonts/tipa { };
 
@@ -17430,7 +17434,8 @@ with pkgs;
 
   rkt = callPackage ../applications/virtualization/rkt { };
 
-  rofi = callPackage ../applications/misc/rofi { };
+  rofi-unwrapped = callPackage ../applications/misc/rofi { };
+  rofi = callPackage ../applications/misc/rofi/wrapper.nix { };
 
   rofi-pass = callPackage ../tools/security/pass/rofi-pass.nix { };
 
@@ -18855,6 +18860,8 @@ with pkgs;
 
   factorio-headless = callPackage ../games/factorio { releaseType = "headless"; };
 
+  factorio-headless-experimental = callPackage ../games/factorio { releaseType = "headless"; experimental = true; };
+
   factorio-demo = callPackage ../games/factorio { releaseType = "demo"; };
 
   factorio-mods = callPackage ../games/factorio/mods.nix { };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 56d5aada81b6..f9cd2eb94337 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -67,6 +67,12 @@ in rec {
       buildLlvmPackages = buildPackages.llvmPackages_5;
       llvmPackages = pkgs.llvmPackages_5;
     };
+    ghc842 = callPackage ../development/compilers/ghc/8.4.2.nix rec {
+      bootPkgs = packages.ghc821Binary;
+      inherit (bootPkgs) alex happy;
+      buildLlvmPackages = buildPackages.llvmPackages_5;
+      llvmPackages = pkgs.llvmPackages_5;
+    };
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix rec {
       bootPkgs = packages.ghc821Binary;
       inherit (bootPkgs) alex happy;
@@ -128,6 +134,11 @@ in rec {
       ghc = bh.compiler.ghc841;
       compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
     };
+    ghc842 = callPackage ../development/haskell-modules {
+      buildHaskellPackages = bh.packages.ghc842;
+      ghc = bh.compiler.ghc842;
+      compilerConfig = callPackage ../development/haskell-modules/configuration-ghc-8.4.x.nix { };
+    };
     ghcHEAD = callPackage ../development/haskell-modules {
       buildHaskellPackages = bh.packages.ghcHEAD;
       ghc = bh.compiler.ghcHEAD;
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index ba78d9db2fb6..acd38aaaebe8 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -10521,14 +10521,7 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
-  NetLDAP = buildPerlPackage {
-    name = "Net-LDAP-0.4001";
-    propagatedBuildInputs = [ ConvertASN1 ];
-    src = fetchurl {
-      url = mirror://cpan/authors/id/G/GB/GBARR/perl-ldap-0.4001.tar.gz;
-      sha256 = "0spwid70yxkh5zbad3ldw8yb2m5shkm59a7f0kllw8bb7ccczqps";
-    };
-  };
+  NetLDAP = perlldap;
 
   NetOAuth = buildPerlPackage {
     name = "Net-OAuth-0.28";
@@ -11263,6 +11256,22 @@ let self = _self // overrides; _self = with self; {
     };
   };
 
+  perlldap = buildPerlPackage rec {
+    name = "perl-ldap-0.65";
+    src = fetchurl {
+      url = "mirror://cpan/authors/id/M/MA/MARSCHAP/${name}.tar.gz";
+      sha256 = "5f57dd261dc16ebf942a272ddafe69526598df71151a51916edc37a4f2f23834";
+    };
+    buildInputs = [ TextSoundex ];
+    propagatedBuildInputs = [ ConvertASN1 ];
+    meta = {
+      homepage = http://ldap.perl.org/;
+      description = "LDAP client library";
+      license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
+      maintainers = [ maintainers.limeytexan ];
+    };
+  };
+
   PerlMagick = buildPerlPackage rec {
     name = "PerlMagick-6.89-1";
     src = fetchurl {
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 38366cfb2d0b..044444a8c713 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -14467,6 +14467,8 @@ in {
     };
   };
 
+  Rtree = callPackage ../development/python-modules/Rtree { inherit (pkgs) libspatialindex; };
+
   squaremap = buildPythonPackage rec {
     name = "squaremap-1.0.4";
     disabled = isPy3k;
@@ -18603,6 +18605,8 @@ EOF
     };
   };
 
+  vxi11 = callPackage ../development/python-modules/vxi11 { };
+
   svg2tikz = self.buildPythonPackage {
     name = "svg2tikz-1.0.0";
     disabled = ! isPy27;