summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/editors/atom/default.nix11
-rw-r--r--pkgs/applications/editors/eclipse/default.nix16
-rw-r--r--pkgs/applications/editors/emacs-24/default.nix8
-rw-r--r--pkgs/applications/editors/emacs-modes/htmlize/builder.sh4
-rw-r--r--pkgs/applications/editors/emacs-modes/htmlize/default.nix18
-rw-r--r--pkgs/applications/editors/idea/default.nix6
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix8
-rw-r--r--pkgs/applications/misc/blender/default.nix6
-rw-r--r--pkgs/applications/misc/blender/sm52.patch12
-rw-r--r--pkgs/applications/misc/mediainfo-gui/default.nix6
-rw-r--r--pkgs/applications/misc/mediainfo/default.nix6
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix28
-rw-r--r--pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix28
-rw-r--r--pkgs/applications/networking/browsers/chromium/browser.nix5
-rw-r--r--pkgs/applications/networking/browsers/chromium/common.nix1
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/chromium/sandbox.nix21
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/default.nix42
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch287
-rw-r--r--pkgs/applications/networking/browsers/chromium/source/sources.nix16
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/sources.nix358
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/baresip/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/mcabber/default.nix4
-rw-r--r--pkgs/applications/office/libreoffice/default.nix10
-rw-r--r--pkgs/applications/science/logic/eprover/default.nix2
-rw-r--r--pkgs/applications/science/logic/eprover/default.upstream2
-rw-r--r--pkgs/applications/science/math/pari/default.nix4
-rw-r--r--pkgs/applications/version-management/src/default.nix19
-rw-r--r--pkgs/applications/version-management/src/path.patch30
-rw-r--r--pkgs/applications/video/popcorntime/default.nix25
-rw-r--r--pkgs/applications/virtualization/driver/win-pvdrivers/default.nix30
-rw-r--r--pkgs/applications/virtualization/driver/win-qemu/default.nix38
-rw-r--r--pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix46
-rw-r--r--pkgs/applications/virtualization/driver/win-spice/default.nix69
-rw-r--r--pkgs/applications/virtualization/driver/win-virtio/default.nix37
-rw-r--r--pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch23
-rw-r--r--pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch104
-rw-r--r--pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch104
-rw-r--r--pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch165
-rw-r--r--pkgs/applications/virtualization/xen/4.4.1.nix36
-rw-r--r--pkgs/applications/virtualization/xen/4.5.0.nix53
-rw-r--r--pkgs/applications/virtualization/xen/4.5.1.nix67
-rw-r--r--pkgs/applications/virtualization/xen/generic.nix35
-rw-r--r--pkgs/applications/virtualization/xhyve/default.nix25
-rw-r--r--pkgs/development/compilers/cudatoolkit/5.5.nix66
-rw-r--r--pkgs/development/compilers/cudatoolkit/6.0.nix67
-rw-r--r--pkgs/development/compilers/cudatoolkit/6.5.nix73
-rw-r--r--pkgs/development/compilers/cudatoolkit/7.0.nix7
-rw-r--r--pkgs/development/compilers/cudatoolkit/generic.nix73
-rw-r--r--pkgs/development/compilers/ghc/7.10.2.nix56
-rw-r--r--pkgs/development/compilers/ghc/head.nix6
-rw-r--r--pkgs/development/compilers/sbcl/default.nix4
-rw-r--r--pkgs/development/haskell-modules/configuration-common.nix17
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix2033
-rw-r--r--pkgs/development/haskell-modules/mueval-fix.patch90
-rw-r--r--pkgs/development/haskell-modules/mueval-nix.patch23
-rw-r--r--pkgs/development/interpreters/angelscript/default.nix4
-rw-r--r--pkgs/development/libraries/allegro/5-unstable.nix4
-rw-r--r--pkgs/development/libraries/eigen/default.nix4
-rw-r--r--pkgs/development/libraries/gpgme/default.nix4
-rw-r--r--pkgs/development/libraries/ilmbase/default.nix15
-rw-r--r--pkgs/development/libraries/leveldb/default.nix4
-rw-r--r--pkgs/development/libraries/libbladeRF/default.nix26
-rw-r--r--pkgs/development/libraries/libmediainfo/default.nix6
-rw-r--r--pkgs/development/libraries/libmwaw/default.nix8
-rw-r--r--pkgs/development/libraries/libodfgen/default.nix8
-rw-r--r--pkgs/development/libraries/libre/default.nix4
-rw-r--r--pkgs/development/libraries/libspotify/default.nix22
-rw-r--r--pkgs/development/libraries/lmdb/default.nix37
-rw-r--r--pkgs/development/libraries/opencollada/default.nix4
-rw-r--r--pkgs/development/libraries/openexr/default.nix25
-rw-r--r--pkgs/development/libraries/openexr/source.nix11
-rw-r--r--pkgs/development/libraries/qt-5/5.4/setup-hook.sh7
-rw-r--r--pkgs/development/ocaml-modules/csv/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/qcheck/default.nix29
-rw-r--r--pkgs/development/ocaml-modules/re/default.nix12
-rw-r--r--pkgs/development/ocaml-modules/stringext/default.nix16
-rw-r--r--pkgs/development/ocaml-modules/ulex/default.nix2
-rw-r--r--pkgs/development/ocaml-modules/uri/default.nix12
-rw-r--r--pkgs/development/qtcreator/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/scons/default.nix4
-rw-r--r--pkgs/development/tools/misc/ccache/default.nix13
-rw-r--r--pkgs/development/tools/misc/ccache/test-drop-perl-requirement.patch36
-rw-r--r--pkgs/development/tools/ocaml/ocp-index/default.nix14
-rw-r--r--pkgs/development/web/iojs/default.nix4
-rw-r--r--pkgs/development/web/nodejs/default.nix3
-rw-r--r--pkgs/games/sgt-puzzles/default.nix47
-rw-r--r--pkgs/games/zandronum/bin.nix8
-rw-r--r--pkgs/games/zandronum/default.nix8
-rw-r--r--pkgs/games/zandronum/server.nix8
-rw-r--r--pkgs/misc/emulators/wine/stable.upstream8
-rw-r--r--pkgs/misc/emulators/wine/unstable.upstream9
-rw-r--r--pkgs/misc/emulators/wine/versions.nix8
-rw-r--r--pkgs/misc/screensavers/xscreensaver/default.nix4
-rw-r--r--pkgs/misc/themes/albatross/default.nix25
-rw-r--r--pkgs/misc/vim-plugins/default.nix22
-rw-r--r--pkgs/misc/vim-plugins/vim-plugin-names2
-rw-r--r--pkgs/os-specific/linux/atop/default.nix5
-rw-r--r--pkgs/os-specific/linux/eudev/default.nix4
-rw-r--r--pkgs/os-specific/linux/mcelog/default.nix4
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/legacy340.nix2
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/nvidia-340.76-kernel-4.0.patch28
-rw-r--r--pkgs/os-specific/linux/pam_mount/default.nix16
-rw-r--r--pkgs/os-specific/linux/pam_mount/insert_utillinux_path_hooks.patch30
-rw-r--r--pkgs/os-specific/linux/perf-tools/default.nix6
-rw-r--r--pkgs/os-specific/linux/spl/default.nix4
-rw-r--r--pkgs/os-specific/linux/spl/git.nix6
-rw-r--r--pkgs/os-specific/linux/udisks/2-default.nix4
-rw-r--r--pkgs/os-specific/linux/xsensors/default.nix22
-rw-r--r--pkgs/os-specific/linux/xsensors/remove-unused-variables.patch39
-rw-r--r--pkgs/os-specific/linux/xsensors/replace-deprecated-gtk.patch168
-rw-r--r--pkgs/os-specific/linux/zfs/default.nix9
-rw-r--r--pkgs/os-specific/linux/zfs/git.nix6
-rw-r--r--pkgs/servers/http/nginx/unstable.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/alertmanager/default.nix12
-rw-r--r--pkgs/servers/monitoring/prometheus/node_exporter/default.nix6
-rw-r--r--pkgs/tools/X11/xdg-utils/default.nix2
-rw-r--r--pkgs/tools/filesystems/duperemove/default.nix12
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix8
-rw-r--r--pkgs/tools/graphics/asymptote/default.nix2
-rw-r--r--pkgs/tools/misc/cloc/default.nix4
-rw-r--r--pkgs/tools/misc/grub/trusted.nix100
-rw-r--r--pkgs/tools/networking/mailsend/default.nix8
-rw-r--r--pkgs/tools/networking/minidlna/config.patch57
-rw-r--r--pkgs/tools/networking/minidlna/default.nix13
-rw-r--r--pkgs/tools/package-management/nox/default.nix2
-rw-r--r--pkgs/tools/package-management/nox/show-trace.patch41
-rw-r--r--pkgs/tools/security/chaps/default.nix81
-rw-r--r--pkgs/tools/security/chaps/fix_absolute_path.patch18
-rw-r--r--pkgs/tools/security/chaps/fix_environment_variables.patch42
-rw-r--r--pkgs/tools/security/chaps/fix_scons.patch26
-rw-r--r--pkgs/tools/security/chaps/insert_prefetches.patch51
-rw-r--r--pkgs/tools/security/tpm-luks/default.nix29
-rw-r--r--pkgs/tools/system/stress-ng/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix67
-rw-r--r--pkgs/top-level/haskell-packages.nix7
-rw-r--r--pkgs/top-level/python-packages.nix133
138 files changed, 3876 insertions, 2058 deletions
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 31142efcc89a..fc2f9265ed67 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, buildEnv, makeDesktopItem, makeWrapper, zlib, glib, alsaLib
 , dbus, gtk, atk, pango, freetype, fontconfig, libgnome_keyring3, gdk_pixbuf
-, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xlibs, libcap
+, cairo, cups, expat, libgpgerror, nspr, gconf, nss, xlibs, libcap, systemd
 }:
 
 let
@@ -11,16 +11,16 @@ let
       fontconfig gdk_pixbuf cairo cups expat libgpgerror alsaLib nspr gconf nss
       xlibs.libXrender xlibs.libX11 xlibs.libXext xlibs.libXdamage xlibs.libXtst
       xlibs.libXcomposite xlibs.libXi xlibs.libXfixes xlibs.libXrandr
-      xlibs.libXcursor libcap
+      xlibs.libXcursor libcap systemd
     ];
   };
 in stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "0.187.0";
+  version = "1.0.0";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0s6173dg5m52zc8kqwlgjn113d84cskrv9v29fb0nrvwvkv2xzmw";
+    sha256 = "434be52726fed9804ddb8c07dba200d774d145d0a870d2a013b5f95eb882fa7e";
     name = "${name}.deb";
   };
 
@@ -31,7 +31,10 @@ in stdenv.mkDerivation rec {
   installPhase = ''
     mkdir -p $out
     ar p $src data.tar.gz | tar -C $out -xz ./usr
+    substituteInPlace $out/usr/share/applications/atom.desktop \
+      --replace /usr/share/atom $out/bin
     mv $out/usr/* $out/
+    rm -r $out/share/lintian
     rm -r $out/usr/
     patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
       $out/share/atom/atom
diff --git a/pkgs/applications/editors/eclipse/default.nix b/pkgs/applications/editors/eclipse/default.nix
index 0373791dccaa..d2e6116fec72 100644
--- a/pkgs/applications/editors/eclipse/default.nix
+++ b/pkgs/applications/editors/eclipse/default.nix
@@ -302,4 +302,20 @@ in {
         };
     };
   };
+
+  eclipse_sdk_45 = buildEclipse {
+    name = "eclipse-sdk-4.5";
+    description = "Eclipse Mars Classic";
+    sources = {
+      "x86_64-linux" = fetchurl {
+          url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk-x86_64.tar.gz;
+          sha256 = "0vfql4gh263ms8bg7sgn05gnjajplx304cn3nr03jlacgr3pkarf";
+
+        };
+      "i686-linux" = fetchurl {
+          url = http://download.eclipse.org/eclipse/downloads/drops4/R-4.5-201506032000/eclipse-SDK-4.5-linux-gtk.tar.gz;
+          sha256 = "0xv66l6hdlvxpswcqrsh398wg6xhy30f833dr7jvvz45s5437hm3";
+        };
+    };
+  };
 }
diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix
index e0439f45a9c4..5d6d576af8ea 100644
--- a/pkgs/applications/editors/emacs-24/default.nix
+++ b/pkgs/applications/editors/emacs-24/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, ncurses, x11, libXaw, libXpm, Xaw3d
-, pkgconfig, gtk, libXft, dbus, libpng, libjpeg, libungif
+, pkgconfig, gettext, gtk, libXft, dbus, libpng, libjpeg, libungif
 , libtiff, librsvg, texinfo, gconf, libxml2, imagemagick, gnutls
 , alsaLib, cairo, acl, gpm
 , withX ? !stdenv.isDarwin
@@ -35,8 +35,12 @@ stdenv.mkDerivation rec {
     ./at-fdcwd.patch
   ];
 
+  postPatch = ''
+    sed -i 's|/usr/share/locale|${gettext}/share/locale|g' lisp/international/mule-cmds.el
+  '';
+
   buildInputs =
-    [ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo acl gpm ]
+    [ ncurses gconf libxml2 gnutls alsaLib pkgconfig texinfo acl gpm gettext ]
     ++ stdenv.lib.optional stdenv.isLinux dbus
     ++ stdenv.lib.optionals withX
       [ x11 libXaw Xaw3d libXpm libpng libjpeg libungif libtiff librsvg libXft
diff --git a/pkgs/applications/editors/emacs-modes/htmlize/builder.sh b/pkgs/applications/editors/emacs-modes/htmlize/builder.sh
deleted file mode 100644
index ccbd9d8e8a7e..000000000000
--- a/pkgs/applications/editors/emacs-modes/htmlize/builder.sh
+++ /dev/null
@@ -1,4 +0,0 @@
-source $stdenv/setup
-
-mkdir -p $out/share/emacs/site-lisp
-cp $src $out/share/emacs/site-lisp/htmlize.el
diff --git a/pkgs/applications/editors/emacs-modes/htmlize/default.nix b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
index 96cc4e040c4f..c16f449c3a24 100644
--- a/pkgs/applications/editors/emacs-modes/htmlize/default.nix
+++ b/pkgs/applications/editors/emacs-modes/htmlize/default.nix
@@ -1,15 +1,21 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchFromGitHub }:
 
 stdenv.mkDerivation {
   name = "htmlize-1.47";
 
-  builder = ./builder.sh;
-
-  src = fetchurl {
-    url = http://fly.srk.fer.hr/~hniksic/emacs/htmlize.el.cgi;
-    sha256 = "0m7lby95w9sj0xlqv39imlbp80x8ajd295cs6079jyhmryf6mr10";
+  src = fetchFromGitHub {
+    owner = "emacsmirror";
+    repo = "htmlize";
+    rev = "release/1.47";
+    name = "htmlize-1.47-src";
+    sha256 = "1vkqxgirc82vc44g7xhhr041arf93yirjin3h144kjyfkgkplnkp";
   };
 
+  installPhase = ''
+     mkdir -p $out/share/emacs/site-lisp
+     cp htmlize.el $out/share/emacs/site-lisp/
+  '';
+
   meta = {
     description = "Convert buffer text and decorations to HTML";
   };
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index ff6d3d57efff..b2b6d2ddde53 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -212,14 +212,14 @@ in
 
   android-studio = buildAndroidStudio rec {
     name = "android-studio-${version}";
-    version = "1.2.1.1";
-    build = "141.1903250";
+    version = "1.2.2.0";
+    build = "141.1980579";
     description = "Android development environment based on IntelliJ IDEA";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
       url = "https://dl.google.com/dl/android/studio/ide-zips/${version}" +
             "/android-studio-ide-${build}-linux.zip";
-      sha256 = "17n0hsw0655b2w7a3avj5hw6njhv4gayxnsj1bwi9p3dgzr5d5zp";
+      sha256 = "08bayp2kxxg0zdmd1rcfg89g80wmwxf56fzmk5xkz1qg6s9b98a6";
     };
   };
 
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index 473db68dc274..de37482d51ee 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "oiio-${version}";
-  version = "1.4.15";
+  name = "openimageio-${version}";
+  version = "1.4.16";
 
   src = fetchurl {
     url = "https://github.com/OpenImageIO/oiio/archive/Release-${version}.zip";
-    sha256 = "1fc5v3qmrzf9qx765fd15r2dc3ccrz4xf4f9q4cwsrspmaxqyqzs";
+    sha256 = "0f9gspsjhniz992c04dm4lvffzz7zjqn1n34nqn6c32r498kimcj";
   };
 
   buildInputs = [
@@ -25,6 +25,8 @@ stdenv.mkDerivation rec {
       INSTALLDIR=$out dist_dir=
   '';
 
+  enableParallelBuilding = true;
+
   meta = with stdenv.lib; {
     homepage = http://www.openimageio.org;
     description = "A library and tools for reading and writing images";
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index b717f3044bcc..c0420d6ac675 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -10,15 +10,13 @@
 with lib;
 
 stdenv.mkDerivation rec {
-  name = "blender-2.74";
+  name = "blender-2.75";
 
   src = fetchurl {
     url = "http://download.blender.org/source/${name}.tar.gz";
-    sha256 = "178i19pz7jl79b4wn92869j6qymawsa0kaw1dxaprbjnqsvcx8qc";
+    sha256 = "1r3qyj57g06ir424q7szxkyb6h0b7laq7f126158kgs94xpkhlsz";
   };
 
-  patches = [ ./sm52.patch ];
-
   buildInputs =
     [ SDL boost cmake ffmpeg gettext glew ilmbase libXi
       libjpeg libpng libsamplerate libsndfile libtiff mesa openal
diff --git a/pkgs/applications/misc/blender/sm52.patch b/pkgs/applications/misc/blender/sm52.patch
deleted file mode 100644
index 7cb86c53bddb..000000000000
--- a/pkgs/applications/misc/blender/sm52.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ru -x '*~' blender-2.73a-orig/CMakeLists.txt blender-2.73a/CMakeLists.txt
---- blender-2.73a-orig/CMakeLists.txt	2015-01-21 13:31:24.000000000 +0100
-+++ blender-2.73a/CMakeLists.txt	2015-03-01 23:14:22.962585422 +0100
-@@ -351,7 +351,7 @@
- option(WITH_CYCLES_STANDALONE_GUI	"Build cycles standalone with GUI" OFF)
- option(WITH_CYCLES_OSL				"Build Cycles with OSL support" ${_init_CYCLES_OSL})
- option(WITH_CYCLES_CUDA_BINARIES	"Build cycles CUDA binaries" OFF)
--set(CYCLES_CUDA_BINARIES_ARCH sm_20 sm_21 sm_30 sm_35 sm_50 CACHE STRING "CUDA architectures to build binaries for")
-+set(CYCLES_CUDA_BINARIES_ARCH sm_20 sm_21 sm_30 sm_35 sm_50 sm_52 CACHE STRING "CUDA architectures to build binaries for")
- mark_as_advanced(CYCLES_CUDA_BINARIES_ARCH)
- unset(PLATFORM_DEFAULT)
- option(WITH_CYCLES_LOGGING	"Build cycles with logging support" ON)
diff --git a/pkgs/applications/misc/mediainfo-gui/default.nix b/pkgs/applications/misc/mediainfo-gui/default.nix
index 1055b4de72b6..3a597c9de523 100644
--- a/pkgs/applications/misc/mediainfo-gui/default.nix
+++ b/pkgs/applications/misc/mediainfo-gui/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, wxGTK, desktop_file_utils, libSM, imagemagick }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.74";
+  version = "0.7.75";
   name = "mediainfo-gui-${version}";
   src = fetchurl {
-    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.bz2";
-    sha256 = "06r6inggkb3gmxax182y4y39icxry5hdcvq7syb060l8wxrk14ky";
+    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
+    sha256 = "1xdsy5z7x7bd251m26h5hcwcmgl6gklxj6h9q025mlnfmcs7pbdy";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo wxGTK desktop_file_utils libSM imagemagick ];
diff --git a/pkgs/applications/misc/mediainfo/default.nix b/pkgs/applications/misc/mediainfo/default.nix
index 6330d90c1780..c9792f3a2af3 100644
--- a/pkgs/applications/misc/mediainfo/default.nix
+++ b/pkgs/applications/misc/mediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, libmediainfo, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.74";
+  version = "0.7.75";
   name = "mediainfo-${version}";
   src = fetchurl {
-    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.bz2";
-    sha256 = "06r6inggkb3gmxax182y4y39icxry5hdcvq7syb060l8wxrk14ky";
+    url = "http://mediaarea.net/download/source/mediainfo/${version}/mediainfo_${version}.tar.xz";
+    sha256 = "1xdsy5z7x7bd251m26h5hcwcmgl6gklxj6h9q025mlnfmcs7pbdy";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen libmediainfo zlib ];
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix
new file mode 100644
index 000000000000..eafa0d6d18b8
--- /dev/null
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-font-size/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, xrdb }:
+
+stdenv.mkDerivation {
+  name = "urxvt-font-size-2015-05-22";
+  dontPatchShebangs = true;
+
+  src = fetchFromGitHub {
+    owner = "majutsushi";
+    repo = "urxvt-font-size";
+    rev = "fd5b09c10798c6723bbf771d4d8881cf6563bc69";
+    sha256 = "16m3kkypg3y00x597zx05zy167a0kaqpawz0l591wzb2bv1dz55z";
+  };
+
+  installPhase = ''
+    substituteInPlace font-size \
+      --replace "xrdb -merge" "${xrdb}/bin/xrdb -merge"
+
+    mkdir -p $out/lib/urxvt/perl
+    cp font-size $out/lib/urxvt/perl
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Change the urxvt font size on the fly";
+    homepage = "https://github.com/majutsushi/urxvt-font-size";
+    license = licenses.mit;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix
new file mode 100644
index 000000000000..dfcdeaa9d4e1
--- /dev/null
+++ b/pkgs/applications/misc/rxvt_unicode-plugins/urxvt-perl/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchFromGitHub, wmctrl }:
+
+stdenv.mkDerivation {
+  name = "urxvt-perl-2015-01-16";
+
+  src = fetchFromGitHub {
+    owner = "effigies";
+    repo = "urxvt-perl";
+    rev = "c3beb9ff09a7139591416c61f8e9458c8a23bea5";
+    sha256 = "1w1p8ng7bwq5hnaprjl1zf073y5l3hdsj7sz7cll6isjswcm6r0s";
+  };
+
+  installPhase = ''
+    substituteInPlace fullscreen \
+      --replace "wmctrl" "${wmctrl}/bin/wmctrl"
+
+    mkdir -p $out/lib/urxvt/perl
+    cp fullscreen $out/lib/urxvt/perl
+    cp newterm $out/lib/urxvt/perl
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Perl extensions for the rxvt-unicode terminal emulator";
+    homepage = "https://github.com/effigies/urxvt-perl";
+    license = licenses.gpl3;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/applications/networking/browsers/chromium/browser.nix b/pkgs/applications/networking/browsers/chromium/browser.nix
index a0bdc70f9f56..5c8c25553ee1 100644
--- a/pkgs/applications/networking/browsers/chromium/browser.nix
+++ b/pkgs/applications/networking/browsers/chromium/browser.nix
@@ -5,17 +5,18 @@ with stdenv.lib;
 mkChromiumDerivation (base: rec {
   name = "chromium-browser";
   packageName = "chromium";
-  buildTargets = [ "mksnapshot" "chrome" ];
+  buildTargets = [ "mksnapshot" "chrome_sandbox" "chrome" ];
 
   installPhase = ''
     mkdir -p "$libExecPath"
     cp -v "$buildPath/"*.pak "$buildPath/"*.bin "$libExecPath/"
     cp -v "$buildPath/icudtl.dat" "$libExecPath/"
     cp -vLR "$buildPath/locales" "$buildPath/resources" "$libExecPath/"
-    ${optionalString (versionOlder base.version "45.0.0.0") ''
+    ${optionalString (versionOlder base.version "44.0.0.0") ''
       cp -v "$buildPath/libffmpegsumo.so" "$libExecPath/"
     ''}
     cp -v "$buildPath/chrome" "$libExecPath/$packageName"
+    cp -v "$buildPath/chrome_sandbox" "$libExecPath/chrome-sandbox"
 
     mkdir -vp "$out/share/man/man1"
     cp -v "$buildPath/chrome.1" "$out/share/man/man1/$packageName.1"
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index 714058d81e0b..7c55b06a3c45 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -126,7 +126,6 @@ let
     #      derivations.
     prePatch = ''
       cp -dr --no-preserve=mode "${source.main}"/* .
-      cp -dr --no-preserve=mode "${source.sandbox}" sandbox
       cp -dr "${source.bundled}" third_party
       chmod -R u+w third_party
     '';
diff --git a/pkgs/applications/networking/browsers/chromium/default.nix b/pkgs/applications/networking/browsers/chromium/default.nix
index 7a355cbf59ac..1b5da0763e70 100644
--- a/pkgs/applications/networking/browsers/chromium/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/default.nix
@@ -33,7 +33,6 @@ let
     };
 
     browser = callPackage ./browser.nix { };
-    sandbox = callPackage ./sandbox.nix { };
 
     plugins = callPackage ./plugins.nix {
       inherit enablePepperFlash enableWideVine;
@@ -71,7 +70,6 @@ in stdenv.mkDerivation {
 
   buildCommand = let
     browserBinary = "${chromium.browser}/libexec/chromium/chromium";
-    sandboxBinary = "${chromium.sandbox}/bin/chromium-sandbox";
     mkEnvVar = key: val: "--set '${key}' '${val}'";
     envVars = chromium.plugins.settings.envVars or {};
     flags = chromium.plugins.settings.flags or [];
diff --git a/pkgs/applications/networking/browsers/chromium/sandbox.nix b/pkgs/applications/networking/browsers/chromium/sandbox.nix
deleted file mode 100644
index b470ed633253..000000000000
--- a/pkgs/applications/networking/browsers/chromium/sandbox.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, source }:
-
-stdenv.mkDerivation {
-  name = "chromium-sandbox-${source.version}";
-  src = source.sandbox;
-
-  patchPhase = ''
-    sed -i -e '/#include.*base_export/c \
-      #define BASE_EXPORT __attribute__((visibility("default")))
-    /#include/s|sandbox/linux|'"$(pwd)"'/linux|
-    ' linux/suid/*.[hc]
-  '';
-
-  buildPhase = ''
-    gcc -Wall -std=gnu99 -o sandbox linux/suid/*.c
-  '';
-
-  installPhase = ''
-    install -svD sandbox "$out/bin/chromium-sandbox"
-  '';
-}
diff --git a/pkgs/applications/networking/browsers/chromium/source/default.nix b/pkgs/applications/networking/browsers/chromium/source/default.nix
index f9c5c6e02654..e8ad569adbfc 100644
--- a/pkgs/applications/networking/browsers/chromium/source/default.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/default.nix
@@ -14,12 +14,10 @@ let
     "s,^[^/]+(.*)$,$main\\1,"
     "s,$main/(build|tools)(/.*)?$,$out/\\1\\2,"
     "s,$main/third_party(/.*)?$,$bundled\\1,"
-    "s,$main/sandbox(/.*)?$,$sandbox\\1,"
     "s,^/,,"
   ]);
 
   pre44 = versionOlder version "44.0.0.0";
-  is44 = versionOlder version "45.0.0.0" && !pre44;
 
 in stdenv.mkDerivation {
   name = "chromium-source-${version}";
@@ -29,7 +27,7 @@ in stdenv.mkDerivation {
   buildInputs = [ python ]; # cannot patch shebangs otherwise
 
   phases = [ "unpackPhase" "patchPhase" ];
-  outputs = [ "out" "sandbox" "bundled" "main" ];
+  outputs = [ "out" "bundled" "main" ];
 
   unpackPhase = ''
     tar xf "$src" -C / \
@@ -48,39 +46,9 @@ in stdenv.mkDerivation {
     done
   '';
 
-  patches = let
-    baseURL = "https://codereview.chromium.org/download";
-
-    mkBlinkFix = issue: sha256: fetchpatch {
-      url = "${baseURL}/issue${issue}.diff";
-      inherit sha256;
-      postFetch = ''
-        sed -i -e 's,^\(---\|+++\) *[ab]/,&third_party/WebKit/,' "$out"
-      '';
-    };
-
-    fixes44 = [
-      # WebPluginContainer::setNeedsLayout
-      # https://codereview.chromium.org/1157943002/
-      (mkBlinkFix "1157943002_20001"
-                  "0932yd15zlh2g5a5bbm6qrnfvv22jlfdg8pj0w9z58m5zdzw1p82")
-      # WebRuntimeFeatures::enablePermissionsAPI
-      # https://codereview.chromium.org/1156113007/
-      (mkBlinkFix "1156113007_1"
-                  "1v76brrgdziv1q62ba4bimg0my2dmnkyl68b21nv2vw661v0hzwh")
-      # Revert of https://codereview.chromium.org/1150543002/
-      (fetchpatch {
-        url = "${baseURL}/issue1150543002_1.diff";
-        sha256 = "0x9sya0m1zcb2vcp2vfss88qqdrh6bzcbx2ngfiql7rkbynnpqn6";
-        postFetch = ''
-          ${patchutils}/bin/interdiff "$out" /dev/null > reversed.patch
-          mv reversed.patch "$out"
-        '';
-      })
-    ];
-    pluginPaths = if pre44 then singleton ./nix_plugin_paths_42.patch
-                  else singleton ./nix_plugin_paths_44.patch;
-  in pluginPaths ++ optionals is44 fixes44;
+  patches = if pre44
+            then singleton ./nix_plugin_paths_42.patch
+            else singleton ./nix_plugin_paths_44.patch;
 
   patchPhase = let
     diffmod = sym: "/^${sym} /{s/^${sym} //;${transform ""};s/^/${sym} /}";
@@ -102,8 +70,6 @@ in stdenv.mkDerivation {
       -e 's|/bin/echo|echo|' \
       -e "/python_arch/s/: *'[^']*'/: '""'/" \
       "$out/build/common.gypi" "$main/chrome/chrome_tests.gypi"
-    sed -i -e '/LOG.*no_suid_error/d' \
-      "$main/content/browser/browser_main_loop.cc"
   '' + optionalString useOpenSSL ''
     cat $opensslPatches | patch -p1 -d "$bundled/openssl/openssl"
   '';
diff --git a/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch b/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch
deleted file mode 100644
index 6f5d52b72af1..000000000000
--- a/pkgs/applications/networking/browsers/chromium/source/sandbox_userns_36.patch
+++ /dev/null
@@ -1,287 +0,0 @@
-commit 0fec7e4a742f001c9816a8b58a1120fb44230867
-Author: aszlig <aszlig@redmoonstudios.org>
-Date:   Thu May 16 14:17:56 2013 +0200
-
-    zygote: Add support for user namespaces on Linux.
-    
-    The implementation is done by patching the Zygote host to execute the sandbox
-    binary with CLONE_NEWUSER and setting the uid and gid mapping so that the child
-    process is using uid 0 and gid 0 which map to the current user of the parent.
-    Afterwards, the sandbox will continue as if it was called as a setuid binary.
-    
-    In addition, this adds new_user_namespace as an option in process_util in order
-    to set the UID and GID mapping correctly. The reason for this is that just
-    passing CLONE_NEWUSER to clone_flags doesn't help in LaunchProcess(), because
-    without setting the mappings exec*() will clear the process's capability sets.
-    
-    If the kernel doesn't support unprivileged user namespaces and the sandbox
-    binary doesn't have the setuid flag, the Zygote main process will run without a
-    sandbox. This is to mimic the behaviour if no SUID sandbox binary path is set.
-    
-    Signed-off-by: aszlig <aszlig@redmoonstudios.org>
-
-diff --git a/base/process/launch.cc b/base/process/launch.cc
-index 81748f5..930f20f 100644
---- a/base/process/launch.cc
-+++ b/base/process/launch.cc
-@@ -26,6 +26,7 @@ LaunchOptions::LaunchOptions()
- #if defined(OS_LINUX)
-       , clone_flags(0)
-       , allow_new_privs(false)
-+      , new_user_namespace(false)
- #endif  // OS_LINUX
- #if defined(OS_CHROMEOS)
-       , ctrl_terminal_fd(-1)
-diff --git a/base/process/launch.h b/base/process/launch.h
-index 9e39fba..00e4c79 100644
---- a/base/process/launch.h
-+++ b/base/process/launch.h
-@@ -115,6 +115,9 @@ struct BASE_EXPORT LaunchOptions {
-   // By default, child processes will have the PR_SET_NO_NEW_PRIVS bit set. If
-   // true, then this bit will not be set in the new child process.
-   bool allow_new_privs;
-+
-+  // If true, start the process in a new user namespace.
-+  bool new_user_namespace;
- #endif  // defined(OS_LINUX)
- 
- #if defined(OS_CHROMEOS)
-diff --git a/base/process/launch_posix.cc b/base/process/launch_posix.cc
-index 457234f..a99ce9b 100644
---- a/base/process/launch_posix.cc
-+++ b/base/process/launch_posix.cc
-@@ -40,6 +40,10 @@
- 
- #if defined(OS_LINUX)
- #include <sys/prctl.h>
-+#include <sched.h>
-+#if !defined(CLONE_NEWUSER)
-+#define CLONE_NEWUSER 0x10000000
-+#endif
- #endif
- 
- #if defined(OS_CHROMEOS)
-@@ -301,13 +305,23 @@ bool LaunchProcess(const std::vector<std::string>& argv,
- 
-   pid_t pid;
- #if defined(OS_LINUX)
--  if (options.clone_flags) {
-+  int map_pipe_fd[2];
-+  int flags = options.clone_flags;
-+
-+  if (options.new_user_namespace) {
-+    flags |= CLONE_NEWUSER;
-+    if (pipe(map_pipe_fd) < 0) {
-+      DPLOG(ERROR) << "user namespace pipe";
-+      return false;
-+    }
-+  }
-+
-+  if (options.clone_flags || options.new_user_namespace) {
-     // Signal handling in this function assumes the creation of a new
-     // process, so we check that a thread is not being created by mistake
-     // and that signal handling follows the process-creation rules.
--    RAW_CHECK(
--        !(options.clone_flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
--    pid = syscall(__NR_clone, options.clone_flags, 0, 0, 0);
-+    RAW_CHECK(!(flags & (CLONE_SIGHAND | CLONE_THREAD | CLONE_VM)));
-+    pid = syscall(__NR_clone, flags, 0, 0, 0);
-   } else
- #endif
-   {
-@@ -328,6 +342,21 @@ bool LaunchProcess(const std::vector<std::string>& argv,
-     // DANGER: no calls to malloc or locks are allowed from now on:
-     // http://crbug.com/36678
- 
-+#if defined(OS_LINUX)
-+    if (options.new_user_namespace) {
-+      // Close the write end of the pipe so we get an EOF when the parent closes
-+      // the FD. This is to avoid race conditions when the UID/GID mappings are
-+      // written _after_ execvp().
-+      close(map_pipe_fd[1]);
-+
-+      char dummy;
-+      if (HANDLE_EINTR(read(map_pipe_fd[0], &dummy, 1)) != 0) {
-+        RAW_LOG(ERROR, "Unexpected input in uid/gid mapping pipe.");
-+        _exit(127);
-+      }
-+    }
-+#endif
-+
-     // DANGER: fork() rule: in the child, if you don't end up doing exec*(),
-     // you call _exit() instead of exit(). This is because _exit() does not
-     // call any previously-registered (in the parent) exit handlers, which
-@@ -452,6 +481,40 @@ bool LaunchProcess(const std::vector<std::string>& argv,
-     _exit(127);
-   } else {
-     // Parent process
-+#if defined(OS_LINUX)
-+    if (options.new_user_namespace) {
-+      // We need to write UID/GID mapping here to map the current user outside
-+      // the namespace to the root user inside the namespace in order to
-+      // correctly "fool" the child process.
-+      char buf[256];
-+      int map_fd, map_len;
-+
-+      snprintf(buf, sizeof(buf), "/proc/%d/uid_map", pid);
-+      map_fd = open(buf, O_RDWR);
-+      DPCHECK(map_fd >= 0);
-+      snprintf(buf, sizeof(buf), "0 %d 1", geteuid());
-+      map_len = strlen(buf);
-+      if (write(map_fd, buf, map_len) != map_len) {
-+        RAW_LOG(WARNING, "Can't write to uid_map.");
-+      }
-+      close(map_fd);
-+
-+      snprintf(buf, sizeof(buf), "/proc/%d/gid_map", pid);
-+      map_fd = open(buf, O_RDWR);
-+      DPCHECK(map_fd >= 0);
-+      snprintf(buf, sizeof(buf), "0 %d 1", getegid());
-+      map_len = strlen(buf);
-+      if (write(map_fd, buf, map_len) != map_len) {
-+        RAW_LOG(WARNING, "Can't write to gid_map.");
-+      }
-+      close(map_fd);
-+
-+      // Close the pipe on the parent, so the child can continue doing the
-+      // execvp() call.
-+      close(map_pipe_fd[1]);
-+    }
-+#endif
-+
-     if (options.wait) {
-       // While this isn't strictly disk IO, waiting for another process to
-       // finish is the sort of thing ThreadRestrictions is trying to prevent.
-diff --git a/content/browser/zygote_host/zygote_host_impl_linux.cc b/content/browser/zygote_host/zygote_host_impl_linux.cc
-index 9d63ad9..0885705 100644
---- a/content/browser/zygote_host/zygote_host_impl_linux.cc
-+++ b/content/browser/zygote_host/zygote_host_impl_linux.cc
-@@ -144,6 +144,9 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
-   // A non empty sandbox_cmd means we want a SUID sandbox.
-   using_suid_sandbox_ = !sandbox_cmd.empty();
- 
-+  bool userns_sandbox = false;
-+  const std::vector<std::string> cmd_line_unwrapped(cmd_line.argv());
-+
-   // Start up the sandbox host process and get the file descriptor for the
-   // renderers to talk to it.
-   const int sfd = RenderSandboxHostLinux::GetInstance()->GetRendererSocket();
-@@ -156,11 +159,24 @@ void ZygoteHostImpl::Init(const std::string& sandbox_cmd) {
-     sandbox_client->PrependWrapper(&cmd_line);
-     sandbox_client->SetupLaunchOptions(&options, &fds_to_map, &dummy_fd);
-     sandbox_client->SetupLaunchEnvironment();
-+    userns_sandbox = sandbox_client->IsNoSuid();
-   }
- 
-   base::ProcessHandle process = -1;
-   options.fds_to_remap = &fds_to_map;
-+  if (userns_sandbox)
-+    options.new_user_namespace = true;
-   base::LaunchProcess(cmd_line.argv(), options, &process);
-+
-+  if (process == -1 && userns_sandbox) {
-+    LOG(ERROR) << "User namespace sandbox failed to start, running without "
-+               << "sandbox! You need at least kernel 3.8.0 with CONFIG_USER_NS "
-+               << "enabled in order to use the sandbox without setuid bit.";
-+    using_suid_sandbox_ = false;
-+    options.new_user_namespace = false;
-+    base::LaunchProcess(cmd_line_unwrapped, options, &process);
-+  }
-+
-   CHECK(process != -1) << "Failed to launch zygote process";
-   dummy_fd.reset();
- 
-diff --git a/content/zygote/zygote_main_linux.cc b/content/zygote/zygote_main_linux.cc
-index 11f0602..b7b8214 100644
---- a/content/zygote/zygote_main_linux.cc
-+++ b/content/zygote/zygote_main_linux.cc
-@@ -389,6 +389,13 @@ static bool EnterSuidSandbox(sandbox::SetuidSandboxClient* setuid_sandbox) {
-     CHECK(CreateInitProcessReaper());
-   }
- 
-+  // Don't set non-dumpable, as it causes trouble when the host tries to find
-+  // the zygote process (XXX: Not quite sure why this happens with user
-+  // namespaces). Fortunately, we also have the seccomp filter sandbox which
-+  // should disallow the use of ptrace.
-+  if (setuid_sandbox->IsNoSuid())
-+    return true;
-+
- #if !defined(OS_OPENBSD)
-   // Previously, we required that the binary be non-readable. This causes the
-   // kernel to mark the process as non-dumpable at startup. The thinking was
-diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.cc b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-index fc03cdd..a972faa 100644
---- a/sandbox/linux/suid/client/setuid_sandbox_client.cc
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.cc
-@@ -229,6 +229,10 @@ bool SetuidSandboxClient::IsInNewNETNamespace() const {
-   return env_->HasVar(kSandboxNETNSEnvironmentVarName);
- }
- 
-+bool SetuidSandboxClient::IsNoSuid() const {
-+  return env_->HasVar(kSandboxNoSuidVarName);
-+}
-+
- bool SetuidSandboxClient::IsSandboxed() const {
-   return sandboxed_;
- }
-@@ -277,8 +281,7 @@ void SetuidSandboxClient::PrependWrapper(base::CommandLine* cmd_line) {
-                                     "LinuxSUIDSandboxDevelopment.";
-   }
- 
--  if (access(sandbox_binary.c_str(), X_OK) != 0 || (st.st_uid != 0) ||
--      ((st.st_mode & S_ISUID) == 0) || ((st.st_mode & S_IXOTH)) == 0) {
-+  if (access(sandbox_binary.c_str(), X_OK) != 0) {
-     LOG(FATAL) << "The SUID sandbox helper binary was found, but is not "
-                   "configured correctly. Rather than run without sandboxing "
-                   "I'm aborting now. You need to make sure that "
-@@ -286,6 +289,12 @@ void SetuidSandboxClient::PrependWrapper(base::CommandLine* cmd_line) {
-   }
- 
-   cmd_line->PrependWrapper(sandbox_binary);
-+
-+  if (!((st.st_uid == 0) &&
-+        (st.st_mode & S_ISUID) &&
-+        (st.st_mode & S_IXOTH))) {
-+    env_->SetVar(kSandboxNoSuidVarName, "1");
-+  }
- }
- 
- void SetuidSandboxClient::SetupLaunchOptions(
-diff --git a/sandbox/linux/suid/client/setuid_sandbox_client.h b/sandbox/linux/suid/client/setuid_sandbox_client.h
-index 2bbad7a..8605475 100644
---- a/sandbox/linux/suid/client/setuid_sandbox_client.h
-+++ b/sandbox/linux/suid/client/setuid_sandbox_client.h
-@@ -66,6 +66,8 @@ class SANDBOX_EXPORT SetuidSandboxClient {
-   bool IsInNewPIDNamespace() const;
-   // Did the setuid helper create a new network namespace ?
-   bool IsInNewNETNamespace() const;
-+  // Is sandboxed without SUID binary ?
-+  bool IsNoSuid() const;
-   // Are we done and fully sandboxed ?
-   bool IsSandboxed() const;
- 
-diff --git a/sandbox/linux/suid/common/sandbox.h b/sandbox/linux/suid/common/sandbox.h
-index 9345287..2db659e 100644
---- a/sandbox/linux/suid/common/sandbox.h
-+++ b/sandbox/linux/suid/common/sandbox.h
-@@ -15,6 +15,7 @@ static const char kAdjustOOMScoreSwitch[] = "--adjust-oom-score";
- 
- static const char kSandboxDescriptorEnvironmentVarName[] = "SBX_D";
- static const char kSandboxHelperPidEnvironmentVarName[] = "SBX_HELPER_PID";
-+static const char kSandboxNoSuidVarName[] = "SBX_NO_SUID";
- 
- static const long kSUIDSandboxApiNumber = 1;
- static const char kSandboxEnvironmentApiRequest[] = "SBX_CHROME_API_RQ";
-diff --git a/sandbox/linux/suid/sandbox.c b/sandbox/linux/suid/sandbox.c
-index 7410b71..a83593d 100644
---- a/sandbox/linux/suid/sandbox.c
-+++ b/sandbox/linux/suid/sandbox.c
-@@ -330,7 +330,7 @@ static bool DropRoot() {
-     return false;
-   }
- 
--  if (setresgid(rgid, rgid, rgid)) {
-+  if (egid != rgid && setresgid(rgid, rgid, rgid)) {
-     perror("setresgid");
-     return false;
-   }
diff --git a/pkgs/applications/networking/browsers/chromium/source/sources.nix b/pkgs/applications/networking/browsers/chromium/source/sources.nix
index 2ffb8c970e47..86dd127aa6b6 100644
--- a/pkgs/applications/networking/browsers/chromium/source/sources.nix
+++ b/pkgs/applications/networking/browsers/chromium/source/sources.nix
@@ -7,15 +7,15 @@
     sha256bin64 = "1jzmkgiqn17ynbv0xljiifvlj1136jq98zrkd4hdmkgv8xrrzd74";
   };
   beta = {
-    version = "44.0.2403.52";
-    sha256 = "0zgcqbxm2slxpj6i50w7r3xxql1k6kgd51qn8w8gwfzhmad4zxyx";
-    sha256bin32 = "1kfgl2l7j5fhj6wg4i3bsany2rlwspprypdy0z7k3pqiwwyiw658";
-    sha256bin64 = "1sabqqh1hii7appmx6xwabnapf4cv7smsy31nvz063fa5p6h21m8";
+    version = "44.0.2403.61";
+    sha256 = "16bifaqs3fmfms305c1h10kabsyrscxkywf32pl6zwlzjd3y4ncm";
+    sha256bin32 = "1lgqf6bid02pjdzxg1jipfzjqzp5frqxv4bi6q127kky3lz9lmlc";
+    sha256bin64 = "1l6cyfn5mraprisib7q5rgy8vvkc7ky8z91c2iqsikjv7nmrm6hv";
   };
   stable = {
-    version = "43.0.2357.125";
-    sha256 = "01alba50zrc50bn4p3f298khk8fam2rv5wyysz7rq3zrjg8785xg";
-    sha256bin32 = "0527bdlf4nd4b1ydmwn6rnxy377388qb98v9anicfd4bc2p9jjml";
-    sha256bin64 = "0yhgcjaxcpgk32l1sjrgkq447ywcj156a7372v87m22dcwl8fi01";
+    version = "43.0.2357.130";
+    sha256 = "0bh093rfiklwj03my9d6x3118k2msbl7fhrxlndx99cnjd1mbyv2";
+    sha256bin32 = "083scn6dd11lnd0z5yxd6jfgdxj7iaafssccj8a9ybr1ay894ch1";
+    sha256bin64 = "14mfw64ips6nzz6kr8k8dq5253cbqd69hjlc54fl7nqfxi9zw31f";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox-bin/sources.nix b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
index aaaeb354f404..ebb5348795c3 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
@@ -4,185 +4,185 @@
 # ruby generate_source.rb > source.nix
 
 {
-  version = "38.0.5";
+  version = "39.0";
   sources = [
-    { locale = "ach"; arch = "linux-i686"; sha1 = "71e7e8194190bebcdde40a0e265b7dcb3d6173d1"; }
-    { locale = "ach"; arch = "linux-x86_64"; sha1 = "eda799cc394838cf2a5eea4a182149ff2616bc00"; }
-    { locale = "af"; arch = "linux-i686"; sha1 = "9162c87b2d1f420ccc5475b59bca72d45918fed3"; }
-    { locale = "af"; arch = "linux-x86_64"; sha1 = "4f1d9f1bebea6a9adb085191b4bdb7b3367c4b9b"; }
-    { locale = "an"; arch = "linux-i686"; sha1 = "537e6ea08c546d1ed704b1e9dd28b1219e1e5e8a"; }
-    { locale = "an"; arch = "linux-x86_64"; sha1 = "34b9e09b3f29e1263105b713e743038b3a166cec"; }
-    { locale = "ar"; arch = "linux-i686"; sha1 = "17b25623c086778caffd7ed45e10870a3d17baa1"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha1 = "4e35d4704dfd1218b783156d0a97340480eabe30"; }
-    { locale = "as"; arch = "linux-i686"; sha1 = "596d66e6b3a8818ddd07ea285c08ca6ad508e4f6"; }
-    { locale = "as"; arch = "linux-x86_64"; sha1 = "80b92c1881e2841dee4f955156237aadfdf37a33"; }
-    { locale = "ast"; arch = "linux-i686"; sha1 = "7f6b67bbf751fb55419bb3893e121b50f4d5e34b"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha1 = "4705cda1e366b2be2be5164fedf22f5724454101"; }
-    { locale = "az"; arch = "linux-i686"; sha1 = "5fa3021fcb1c0f7317738dcdd95f0f76ca70eb55"; }
-    { locale = "az"; arch = "linux-x86_64"; sha1 = "b16d8a1e56ba3818f590952c19463b4eb08bb4a4"; }
-    { locale = "be"; arch = "linux-i686"; sha1 = "300fca8783d59df6b4459760d0aaa5ac6af2a6cc"; }
-    { locale = "be"; arch = "linux-x86_64"; sha1 = "d8d56febf53ed513628dc1604f65c60ac8460a37"; }
-    { locale = "bg"; arch = "linux-i686"; sha1 = "4aad8ed44d69c3aecb9c629168f62d0e4711eea6"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha1 = "9eaddf470789ca0574ea07bbfdfbbcaca635c69d"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "873db2012724c313f956ee0aca72341d443ff201"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "3192ab016485d10abfb0dd7bccdbd94f3d33a706"; }
-    { locale = "bn-IN"; arch = "linux-i686"; sha1 = "bb7b5dee4134546ce341e324a53c77e35e95b627"; }
-    { locale = "bn-IN"; arch = "linux-x86_64"; sha1 = "057e4c7bc2a06c53209e87804516cb12a644be12"; }
-    { locale = "br"; arch = "linux-i686"; sha1 = "d3a08e420b46d17f702c5b4bf1ed52160e8532c8"; }
-    { locale = "br"; arch = "linux-x86_64"; sha1 = "e18d7a198b0bd1c08a3b0ef5ab453daacc7528a2"; }
-    { locale = "bs"; arch = "linux-i686"; sha1 = "5ccfa1e2e8058707c6d0428bab370f8517c4e231"; }
-    { locale = "bs"; arch = "linux-x86_64"; sha1 = "98e7ae1ca507e58b297acb39b7aa026530b75974"; }
-    { locale = "ca"; arch = "linux-i686"; sha1 = "ff54c24002b0b1161a859771497f9a31013c265b"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha1 = "781161113c8719d8932365f113c1bfa1994caa63"; }
-    { locale = "cs"; arch = "linux-i686"; sha1 = "f697723873da7961159ef17318b1b64c2d021a7c"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha1 = "44d20f198bbeca2c69fccbfc8d21c2861145102e"; }
-    { locale = "cy"; arch = "linux-i686"; sha1 = "8ae202815c3c60aef0287f18b857ba432f122a84"; }
-    { locale = "cy"; arch = "linux-x86_64"; sha1 = "c06b25151929540760d2d10dcdb0f4087a9f531a"; }
-    { locale = "da"; arch = "linux-i686"; sha1 = "02690ab49d10976d5176c95f0cbc72509908fc1f"; }
-    { locale = "da"; arch = "linux-x86_64"; sha1 = "0a4733b4e56e99976a53d99e209f84527c2a3059"; }
-    { locale = "de"; arch = "linux-i686"; sha1 = "e3e067f028a018e4ae61542da9ae4e43c736f65b"; }
-    { locale = "de"; arch = "linux-x86_64"; sha1 = "8161109d11373b07626b563c4ca494feca3abd41"; }
-    { locale = "dsb"; arch = "linux-i686"; sha1 = "01fc9ebe4ac4a86a2bd4fedb6b07a9a832980a57"; }
-    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "7de40c35552ce74b66bdcf56a5e4edb75995f8d5"; }
-    { locale = "el"; arch = "linux-i686"; sha1 = "f53b5bb439e882701dfe1efdcb7fb42ba15cc72d"; }
-    { locale = "el"; arch = "linux-x86_64"; sha1 = "05843b9324fc255a4123a70d460e6db421cf55a7"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha1 = "c93568ad64a96235aec83ff8740335b07191d2ef"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "536b58997a39aed71a985d9eb9ab96602c9ab057"; }
-    { locale = "en-US"; arch = "linux-i686"; sha1 = "8bfc35a45e9d0f2a2d4359ccaaee54c564d3b5e3"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "b86e07f455da243f1236b8044aeccf41c4ade1b0"; }
-    { locale = "en-ZA"; arch = "linux-i686"; sha1 = "cd3722feaebc63944e927ab244a95deb2a55aced"; }
-    { locale = "en-ZA"; arch = "linux-x86_64"; sha1 = "0daf7c897bf695338310050374d29c2acdaea553"; }
-    { locale = "eo"; arch = "linux-i686"; sha1 = "d79ecbf48f47a3e34e0bcf897d37d2a2abbf466a"; }
-    { locale = "eo"; arch = "linux-x86_64"; sha1 = "95c616e21fe9d948d363db89c0a6a1a4e31301db"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha1 = "5ab97d5aebbde63477cf1868bf0cb5f1b79ee820"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "02d49650094d336e17f57fa43c9969d0b3221ca3"; }
-    { locale = "es-CL"; arch = "linux-i686"; sha1 = "e8d10a3465e7efd01ee03e57316d60176710b124"; }
-    { locale = "es-CL"; arch = "linux-x86_64"; sha1 = "f40a1ec33e5018d423b65bd26563ac8db100e50d"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha1 = "66a1bc0c31061d5738bc80e9254262ada65bfb71"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "8f22bab29fb4e7359aa1261f2333faecbafe4c08"; }
-    { locale = "es-MX"; arch = "linux-i686"; sha1 = "34f60fef14360b754510a5378d4b5d6855d49326"; }
-    { locale = "es-MX"; arch = "linux-x86_64"; sha1 = "9d024945473b55373c155dbbec8880f79ee2de5e"; }
-    { locale = "et"; arch = "linux-i686"; sha1 = "2fd526c6fd23e5b0e7b292d99a60cf1530bb84e1"; }
-    { locale = "et"; arch = "linux-x86_64"; sha1 = "15628af429866cac3a1604f587b08d4bbeccb7e9"; }
-    { locale = "eu"; arch = "linux-i686"; sha1 = "ea55480fd572173c1461a9e41c2080af890c4667"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha1 = "1e7f8cd86df1cf74525f8d07d13bcd8ea2a22b87"; }
-    { locale = "fa"; arch = "linux-i686"; sha1 = "24982ebb6d6cac67673a9c39c91da7adc4c825c2"; }
-    { locale = "fa"; arch = "linux-x86_64"; sha1 = "02f221c5526e03edadb2c36bfa5d9e35557d03a3"; }
-    { locale = "ff"; arch = "linux-i686"; sha1 = "f3b8962106a9a4bc5b4f1d2928255cfaaa9094b0"; }
-    { locale = "ff"; arch = "linux-x86_64"; sha1 = "3a8ebe66407e6369ebc26757562b4f48a6773cdd"; }
-    { locale = "fi"; arch = "linux-i686"; sha1 = "c8a838618b2a8d267e24596c6cbc25f539676762"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha1 = "3382937e58f6e244d3c6dcef1051aa6bdd38692c"; }
-    { locale = "fr"; arch = "linux-i686"; sha1 = "6fefc6e8548fa8fcc7182a05b06b00a3b50bb5d6"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha1 = "5b58fe2c383d4d43d1731f25dc52754712bc207d"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "118c326cdedbc4e5a1bac1ff6b1bb92f5d054847"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "384e13b51d09e99b2abce566d06d7cd522a532a7"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "ae6002a1a9b1be4f29a56176aa4dfd2fee543bdd"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "c87ac5ff79b4dbf3d8738cc3309c882d7573eb3b"; }
-    { locale = "gd"; arch = "linux-i686"; sha1 = "2bfd0ccec6d84b22d3f6f471f4ad096e6dc1edd3"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha1 = "cc919edd60169de8167c9e9fcf32f94fe9df4f52"; }
-    { locale = "gl"; arch = "linux-i686"; sha1 = "70cdf62012d3d98b028d6b9fb9adf077c37e7c0c"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha1 = "a090ce8a36f3182aba809823ba171a0702bf17b5"; }
-    { locale = "gu-IN"; arch = "linux-i686"; sha1 = "5698a36c3f1372446e38ada59e45468f07fd5d19"; }
-    { locale = "gu-IN"; arch = "linux-x86_64"; sha1 = "18b49c1004778b8b11d2f3961dfed29ba562430a"; }
-    { locale = "he"; arch = "linux-i686"; sha1 = "9edddef1ce1361d76917ce255f348e208bb16697"; }
-    { locale = "he"; arch = "linux-x86_64"; sha1 = "64136eeab22a5150a95bdc916ce81e2f1b42a6df"; }
-    { locale = "hi-IN"; arch = "linux-i686"; sha1 = "314f99e05cf58ec8a2c50f8fe93ebe648a62a570"; }
-    { locale = "hi-IN"; arch = "linux-x86_64"; sha1 = "2e9245f46a28c70aa5451011bd2c59e8100a1804"; }
-    { locale = "hr"; arch = "linux-i686"; sha1 = "4cc1112e81ec7f8df2ef95bbab3b3eb398ea67eb"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha1 = "e9d643c799542b118ce8cf274ab36aaec89850b3"; }
-    { locale = "hsb"; arch = "linux-i686"; sha1 = "e525b1c0a77274c851417c1d3af887657d9dcb18"; }
-    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "016e3fcbaeb7844e3639e1c2599172de5c3f7b2f"; }
-    { locale = "hu"; arch = "linux-i686"; sha1 = "2234cff2bb19e849d1a6ace38dd63258a54c192f"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha1 = "9498c156b33d8a9f90ccef6ccc202c69e4ee6c3d"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "49e7923e60daea2e0df4c27d1f6baad70b24b030"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "c9bed347d74b399901ee3f8e745ed1832462357e"; }
-    { locale = "id"; arch = "linux-i686"; sha1 = "7fecad428f80346a6333aa6cdc912cec0644b306"; }
-    { locale = "id"; arch = "linux-x86_64"; sha1 = "7370cb725b9087e5bff8943208762bc5bf4d01d9"; }
-    { locale = "is"; arch = "linux-i686"; sha1 = "c1139da81e8e581e7ddd511d0ce16c0b169d46f0"; }
-    { locale = "is"; arch = "linux-x86_64"; sha1 = "63c64558cd22ac170b39e186c1dd0e77a09c3200"; }
-    { locale = "it"; arch = "linux-i686"; sha1 = "4eb39e3fc5c3847a85a618100d3a9edc9d3bfe78"; }
-    { locale = "it"; arch = "linux-x86_64"; sha1 = "37fa87367363d7e337e75da89f8e5ce8f762c755"; }
-    { locale = "ja"; arch = "linux-i686"; sha1 = "47b6d53050cf10535a5f7d6a8cee78ab15ad36b7"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha1 = "48b20dd2a743a1b887d15179c87b266dbe89a1ae"; }
-    { locale = "kk"; arch = "linux-i686"; sha1 = "4046e0f75d4657d7423b4a0da53778348442ee5e"; }
-    { locale = "kk"; arch = "linux-x86_64"; sha1 = "039f3c025f562e9278b16fb065d07511a3ca1f54"; }
-    { locale = "km"; arch = "linux-i686"; sha1 = "7baebf01741af616e69520f4bc95dd56187c12a2"; }
-    { locale = "km"; arch = "linux-x86_64"; sha1 = "f1a0557ac698f79bf926756cca2c33bd12a8ae83"; }
-    { locale = "kn"; arch = "linux-i686"; sha1 = "1d2c2f8d9f455e0b6c793749f2298436167c25e4"; }
-    { locale = "kn"; arch = "linux-x86_64"; sha1 = "473abeac7637b82d910427cac7e6da8ece20a4e5"; }
-    { locale = "ko"; arch = "linux-i686"; sha1 = "41fe278dc963a7464679f4ec8a9e586666e7ceb3"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha1 = "58563ea60e40b73d1d5c9b10797d05aba5d13c95"; }
-    { locale = "lij"; arch = "linux-i686"; sha1 = "dfa1c12416a9e7e6d04e5f4aaed3a03731d98372"; }
-    { locale = "lij"; arch = "linux-x86_64"; sha1 = "75f9fb66b6610b65b402d3c8664096b4194ce1b0"; }
-    { locale = "lt"; arch = "linux-i686"; sha1 = "667f035cb58c56967ed28f9cde44864cb15d5afa"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha1 = "d5709105b8255ee94c96358d2ac447dc5e4acc2d"; }
-    { locale = "lv"; arch = "linux-i686"; sha1 = "b090761ded023ed465fc9629873e08ecdbaf924b"; }
-    { locale = "lv"; arch = "linux-x86_64"; sha1 = "529312d4e7109472bf5b97ed4a9fff58bb8adbd5"; }
-    { locale = "mai"; arch = "linux-i686"; sha1 = "d2ced083aefcdcd5aca84471bc382be8247e8745"; }
-    { locale = "mai"; arch = "linux-x86_64"; sha1 = "be7a808a391a4fd1dde215834756bc61ae5e85fa"; }
-    { locale = "mk"; arch = "linux-i686"; sha1 = "8a079d8ee62e3bf8fb37f81385a270af5e474aef"; }
-    { locale = "mk"; arch = "linux-x86_64"; sha1 = "c644e5c7a6506ab203d1be61264f6bcf9fa52946"; }
-    { locale = "ml"; arch = "linux-i686"; sha1 = "d3bd6308643ae805c69eeee8b716b97dc844ed9c"; }
-    { locale = "ml"; arch = "linux-x86_64"; sha1 = "33f0f47e125f8a67a30d807775c7d0743135da84"; }
-    { locale = "mr"; arch = "linux-i686"; sha1 = "9d38caee6d6c0baa8a7ea6148c65e7a28362a0fe"; }
-    { locale = "mr"; arch = "linux-x86_64"; sha1 = "3c3f93fd22c8ae7d7056bbfae3df0ecaa7d7dcaf"; }
-    { locale = "ms"; arch = "linux-i686"; sha1 = "8486b9a81265430e876410a6040e09f0bf6d4eed"; }
-    { locale = "ms"; arch = "linux-x86_64"; sha1 = "6cd3c0ab1c33d8eb3de6f68ce7c7a219e80f49f9"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "bcd8e685a023c9919479ffe0f77c16df4fe3e2e8"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "8052c43680c9720783b6e1947c949030f1cfa51a"; }
-    { locale = "nl"; arch = "linux-i686"; sha1 = "c0ae9e1fb361a7d085ef296f5afcc61a5b106c94"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha1 = "246213bd7baa7bb32b15c39237c0eece624a8dae"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "f5f7b590544228f110ddb1153f1c5354bea58656"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "c62e1e681736dbdf19d1a8c6a7f3eff01764d050"; }
-    { locale = "or"; arch = "linux-i686"; sha1 = "8008fd2095b86bd05daee4e48f95aa9003982ebf"; }
-    { locale = "or"; arch = "linux-x86_64"; sha1 = "a52d6d27d9612fe9b1aa3dac377d783bcc53baa1"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "a819a01f2968030cc2102640f50e31cb340e5044"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "2b8e58cf70e8cc841e720706a511e0626439b8ac"; }
-    { locale = "pl"; arch = "linux-i686"; sha1 = "db1bb9bbf35166ba760274dd4c813bf4b52db2da"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha1 = "1a97efa01142188d282743bd3f97dec2bf51067a"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "d3b3f3de01e6970909d6083a2164eb840897d46e"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "e842275df31fa1202a6e5214424b870ed8e04789"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "86001510f93e7063442415325cea1772a8fe04e8"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "7090a6adb110be77527bca5a40ea5c44515e07d3"; }
-    { locale = "rm"; arch = "linux-i686"; sha1 = "42087d61aed17ce567503cc944bbada7d5bc77a4"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha1 = "7b3a8078235ca307dc75b931b060d46a7b3e8e95"; }
-    { locale = "ro"; arch = "linux-i686"; sha1 = "1ff6eb3feef71d37f943667945f4547fe9daca37"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha1 = "acf3f0c0ad5bd9b3c2edcafe7dd7b6e8e45a7ec4"; }
-    { locale = "ru"; arch = "linux-i686"; sha1 = "3e9b32187704caec231fce83e5519d2b2fc066a7"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha1 = "065fee4f21ff6ebdc21a81aadc86a20ab3281dad"; }
-    { locale = "si"; arch = "linux-i686"; sha1 = "d742e451a73195d0445b393b0f1127835ad4684b"; }
-    { locale = "si"; arch = "linux-x86_64"; sha1 = "6341e742bfab7379d8a9de9545a126efa9f129ba"; }
-    { locale = "sk"; arch = "linux-i686"; sha1 = "c714445df861c7073e8c840d904c91578c08db7a"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha1 = "a8fbdfa4c68092ff5258f88b7413d64fd0729ce6"; }
-    { locale = "sl"; arch = "linux-i686"; sha1 = "dc4ef7a8aedbebcd3b9a0e6701c8b2fb245f784a"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha1 = "6165e3a1ef198eae25d56fa5b8dde4e37b037b9f"; }
-    { locale = "son"; arch = "linux-i686"; sha1 = "2dd5909759dc85ae7a9401eb4c759748805b0729"; }
-    { locale = "son"; arch = "linux-x86_64"; sha1 = "d09741294a24d80ddacb80676a2824cbd51a5585"; }
-    { locale = "sq"; arch = "linux-i686"; sha1 = "1f2e3fa864c7c8f7f2d0ecca7812bfdfe7991d29"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha1 = "db5c95f01d258db2dfc04b7efecd1d7826663db8"; }
-    { locale = "sr"; arch = "linux-i686"; sha1 = "54c0f91e41622e8263f7897d0b5a385870ae0d7a"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha1 = "b8b9c9001ed87429ce868144a50e6ab1ac7ccd5f"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "667ed9f21997fc79e9ce40b8bf5e607258292699"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "cb5abaca549b30ba5385ea3ef0a57be0bf446d44"; }
-    { locale = "ta"; arch = "linux-i686"; sha1 = "13fdda06ab9a36a24128e12651a06f0499fbe581"; }
-    { locale = "ta"; arch = "linux-x86_64"; sha1 = "95cd3149f404cfd0beadcdece8dfd5c102dbc72a"; }
-    { locale = "te"; arch = "linux-i686"; sha1 = "4ec9f9b30078e70451bbf5bb06cc1c07530ed5a8"; }
-    { locale = "te"; arch = "linux-x86_64"; sha1 = "1d5cbfee0731dfe10e3eb3aafe102e73c9e9eede"; }
-    { locale = "th"; arch = "linux-i686"; sha1 = "a6809b082761293aca28b456b1489f270234f8bf"; }
-    { locale = "th"; arch = "linux-x86_64"; sha1 = "77dba4a3eec1474be026dfc9021420af889172ad"; }
-    { locale = "tr"; arch = "linux-i686"; sha1 = "eaa7a43b155ffbfc23e72b48fe0e150695a779e7"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha1 = "dfc241131ef4e46801e86bfe10e80b4c2bb5fdb3"; }
-    { locale = "uk"; arch = "linux-i686"; sha1 = "fa5346d0c36f88a6a50259f0e170bbe5167f2393"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha1 = "bb5d61d9c14997958af850d663d48b607aa3e43e"; }
-    { locale = "uz"; arch = "linux-i686"; sha1 = "d634d94bc28779757535d05295db33e186c15abc"; }
-    { locale = "uz"; arch = "linux-x86_64"; sha1 = "0f469e0d5f2d92b4b3f2b47efef3aa44cd25803f"; }
-    { locale = "vi"; arch = "linux-i686"; sha1 = "639aa1abebe1b670ecef9df6e9d06841124ddf0b"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha1 = "16f1319cb63cc4634a215a1c9b3e0e65c1833003"; }
-    { locale = "xh"; arch = "linux-i686"; sha1 = "960338fec19485c733ebd7fbacd9b55ebd1b9981"; }
-    { locale = "xh"; arch = "linux-x86_64"; sha1 = "3a795ffee6d119741fceaa0a4825e72f5cc4e0f2"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "63dbb0328ea991b827fd5747d99aa3075486fce0"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "a1d047de7685d70750850cfb0084259041d33cd4"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "6f56944d2e31ab714d648bfd9262d39731e167b9"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "d3cd71c2ceeb1856bea66de8d7220a8529888e86"; }
+    { locale = "ach"; arch = "linux-i686"; sha1 = "802ac533ba95ecfb4780f84d52698a2cc2d7ac82"; }
+    { locale = "ach"; arch = "linux-x86_64"; sha1 = "3c000ef496165cb4e0e104d72a381040a3bc6787"; }
+    { locale = "af"; arch = "linux-i686"; sha1 = "6fa249f63fe690f3459f4b0112f4945a502a79eb"; }
+    { locale = "af"; arch = "linux-x86_64"; sha1 = "f22b92d0fb0ed21f0e6a3a47c5f2fe873b3bfb56"; }
+    { locale = "an"; arch = "linux-i686"; sha1 = "650c772ef89bc5ef6efe5129ddf8feaf993c8f1d"; }
+    { locale = "an"; arch = "linux-x86_64"; sha1 = "e722d65e3b9b706e6b9214ae79543130ad6dba95"; }
+    { locale = "ar"; arch = "linux-i686"; sha1 = "8ff6fbc92e5b9cedfa17eda240fc89f14eb68f73"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha1 = "a1e94f56148a554e522cd317d0f2384073020278"; }
+    { locale = "as"; arch = "linux-i686"; sha1 = "c6815876c23117a462d79eb5da291610c1d96feb"; }
+    { locale = "as"; arch = "linux-x86_64"; sha1 = "629997b112da84852a01606f7fa4f15448c0ebb3"; }
+    { locale = "ast"; arch = "linux-i686"; sha1 = "acda6aefe872e4982d0e8f3ac337d4243bb5e00f"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha1 = "181d998305bb75ea5e99bb1b4b5059b54a724ab9"; }
+    { locale = "az"; arch = "linux-i686"; sha1 = "230ebfaf61efac65c9daae983ec2fd854a9c1dac"; }
+    { locale = "az"; arch = "linux-x86_64"; sha1 = "a8ddb38542bce008924e4b593691ae84a839e564"; }
+    { locale = "be"; arch = "linux-i686"; sha1 = "47a242cd2c91cd7435c8c959d5eaa8595710f6aa"; }
+    { locale = "be"; arch = "linux-x86_64"; sha1 = "db62ad921f9df2683522db1968db9b79edfbadf2"; }
+    { locale = "bg"; arch = "linux-i686"; sha1 = "c2fddb3667c5bb50fee3011cfb782b2dff7f4063"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha1 = "1b891a9df513e9f099f68fe2f0429b00bd12505b"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "0ad965be5c9ce5468e65667dcb0390a9afabd7b0"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "301b659d5689de81ca60f7092176efaf48a50a18"; }
+    { locale = "bn-IN"; arch = "linux-i686"; sha1 = "df99d9e80ebda8c146724f893ae2de77cf2518ab"; }
+    { locale = "bn-IN"; arch = "linux-x86_64"; sha1 = "4b4cc8e588a518af8a922d32163249af115fac42"; }
+    { locale = "br"; arch = "linux-i686"; sha1 = "39976bf6a0c7bdfc1832a6f2c48e92324f4a6727"; }
+    { locale = "br"; arch = "linux-x86_64"; sha1 = "ea66a36ea70486f39c7cf7abbf637d37c04d32ef"; }
+    { locale = "bs"; arch = "linux-i686"; sha1 = "71eeeccd5bf5757d6ec4f9e1442c4fcfbf312d79"; }
+    { locale = "bs"; arch = "linux-x86_64"; sha1 = "10911d28d56d4083aea7eb2174d0d7dd78772215"; }
+    { locale = "ca"; arch = "linux-i686"; sha1 = "434532ff2cca7a0401a7aed8753d1c5578e98c1a"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha1 = "2a6aaed334856d06ce8c426282f3345d9bcaa435"; }
+    { locale = "cs"; arch = "linux-i686"; sha1 = "e2445b13ab680f5dfd5d67e4e796170fbd6bd120"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha1 = "ef1df48bd465a3b05d1046bf4627c1ae4f60ee06"; }
+    { locale = "cy"; arch = "linux-i686"; sha1 = "f95974e478e2d0fec7400424a33202e1e2b1e5b9"; }
+    { locale = "cy"; arch = "linux-x86_64"; sha1 = "c521abab2bffe24863c087f02d57ffafae47def7"; }
+    { locale = "da"; arch = "linux-i686"; sha1 = "f11b050caae304029ccf23ce2906fe18115adbc8"; }
+    { locale = "da"; arch = "linux-x86_64"; sha1 = "800e0f3b649c9a03d4e9cd2a4ccd8f14bbb5ed95"; }
+    { locale = "de"; arch = "linux-i686"; sha1 = "b9502be9396e00b69946f0094c5939a8a57da64b"; }
+    { locale = "de"; arch = "linux-x86_64"; sha1 = "84fab2779bc055821afdb5d7ff45e3ffe95e2858"; }
+    { locale = "dsb"; arch = "linux-i686"; sha1 = "5eee946bc2182990b310ed57fbf527e82f93bc8b"; }
+    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "8b3219b071e836ecc4966e153ec0adb4e691de89"; }
+    { locale = "el"; arch = "linux-i686"; sha1 = "9759c69061d6419edb949c55f7e797302b477c78"; }
+    { locale = "el"; arch = "linux-x86_64"; sha1 = "db5025d393a763c7cd4ed447d61b640ee77e7e79"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha1 = "4fdc423d6d15bd6a14030a526ad7017fd5bdf937"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "0d8637f1ca6acfe494f963c936d8510c6c11f8bf"; }
+    { locale = "en-US"; arch = "linux-i686"; sha1 = "e05722e42ea1d844d8fe40672026cacb19575ccf"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "8143b339d0ceedaf797b49ca4b54bcc0c91925e3"; }
+    { locale = "en-ZA"; arch = "linux-i686"; sha1 = "fac507eebec642fd50f248ac184dbde4538ad0bb"; }
+    { locale = "en-ZA"; arch = "linux-x86_64"; sha1 = "2670a80c7ca5d5390df9fcee907afbe7a01f9f37"; }
+    { locale = "eo"; arch = "linux-i686"; sha1 = "a134117ddd446b63f325a38f818a80921adb5b2f"; }
+    { locale = "eo"; arch = "linux-x86_64"; sha1 = "5b073a912221e8e734ba17ecfe735d820f5febf3"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha1 = "0e518d9fe0644a6ada9463ae14fa67c2c49bfd5f"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "fa33935aa4abb696ea9a399cff0c1dc29beffab0"; }
+    { locale = "es-CL"; arch = "linux-i686"; sha1 = "3c7df32ed5d2570e62e35dcb9f9d91588d7584d2"; }
+    { locale = "es-CL"; arch = "linux-x86_64"; sha1 = "ced3821f7e334b2f0d5b5115cc04cbaf5bcdbe15"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha1 = "6af75a3e116162591dd6a15c8903ee5182afe03b"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "fa1ddbc5a3d9bd7c9cc424fe6c5e94c87d51eab2"; }
+    { locale = "es-MX"; arch = "linux-i686"; sha1 = "8110bdf4c8657e88f71b8a6bec1ca92f2eac0538"; }
+    { locale = "es-MX"; arch = "linux-x86_64"; sha1 = "30df4777fde7eba8724fab002cb7387203eeb82e"; }
+    { locale = "et"; arch = "linux-i686"; sha1 = "2f16472e5cd030a14e3cfa761a32c0ef5ffd395e"; }
+    { locale = "et"; arch = "linux-x86_64"; sha1 = "19a96b008a49e7a223ea2463edab7cda504e2ba5"; }
+    { locale = "eu"; arch = "linux-i686"; sha1 = "786db5ad8d92324d3086f7b2b8da71767829a8f2"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha1 = "31273f797cb90615032611d2d86cac8cf6d28994"; }
+    { locale = "fa"; arch = "linux-i686"; sha1 = "e2980430f1cd25edb401862b83fb49f2d730ff5e"; }
+    { locale = "fa"; arch = "linux-x86_64"; sha1 = "dae850824c3eaaa31fec4aad19e38e2073d96f10"; }
+    { locale = "ff"; arch = "linux-i686"; sha1 = "f865672eaa7815f3bb527baf3946c62c01c76dbb"; }
+    { locale = "ff"; arch = "linux-x86_64"; sha1 = "aa207b51d24ca275b0cbd5ba4cd93ce16a6bd28a"; }
+    { locale = "fi"; arch = "linux-i686"; sha1 = "30ef856ecdadeba171977859324f010d441a51e9"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha1 = "3ebbabc2346eeac01aaf88e91fd1fd55538c0770"; }
+    { locale = "fr"; arch = "linux-i686"; sha1 = "4dd376ccc6811d46be052fcf1aab82e50a3e0999"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha1 = "f6409e276b400ecaa689d92fe5387662d1b5f2ab"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "751cd1092a58a8b6cde5d9e80790715d249ac11b"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "3cc75c55220f81b0291c16d2f237cb6a2d2609f0"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "2bfa436c566a4e2f0fe7847feccf3c157e026d4b"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "0b2ce0b246e107d99b13e497c64ad169e85eec51"; }
+    { locale = "gd"; arch = "linux-i686"; sha1 = "3afc8ad8747bfcbc5a7e6f2e6de37cbefb3967e7"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha1 = "5bec8bcc0a67f304485b1efa7be5d952ce7985ce"; }
+    { locale = "gl"; arch = "linux-i686"; sha1 = "8fa3dfdc0d2da19f6c98dc76363c9e0d9d10f978"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha1 = "4345cf5673267fb41c2c38f5fb92a3b0a9208cf0"; }
+    { locale = "gu-IN"; arch = "linux-i686"; sha1 = "e57883626a22d3935716417194e78a689c5535c2"; }
+    { locale = "gu-IN"; arch = "linux-x86_64"; sha1 = "be6095129ee3f3fc80f6705594a53c6ced996cb2"; }
+    { locale = "he"; arch = "linux-i686"; sha1 = "7ca70c0648b2f3928c1dc33288b48f488cf1d19b"; }
+    { locale = "he"; arch = "linux-x86_64"; sha1 = "f2eb7c6c33e8b4bc9a03bee587de4fe5b442ac95"; }
+    { locale = "hi-IN"; arch = "linux-i686"; sha1 = "32b242a2c6865fdad63ba4de701c566ffb33ef99"; }
+    { locale = "hi-IN"; arch = "linux-x86_64"; sha1 = "f83ceece81a71e6fb1494863b2970b2dc384d4c4"; }
+    { locale = "hr"; arch = "linux-i686"; sha1 = "77f9c855e5f728dcd3b4ff27ed656aa67217dd35"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha1 = "f48bcf72d740f4a34bb7f888d977d4d39c141567"; }
+    { locale = "hsb"; arch = "linux-i686"; sha1 = "2db09bd59f3761bfdba8bad565e27e1b42a93727"; }
+    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "99e0f119e5e79df5b20f686dd065fee5bda4511f"; }
+    { locale = "hu"; arch = "linux-i686"; sha1 = "0d601a679675c517a535bf706e7cbad9882a5d7c"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha1 = "dbd3d180342d0946ab857bdd8d6bc30373e991b5"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "5f3e01cf375af38bee7014ff21fe75daf4e27071"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "a78fbb1cc4e6d10056cc7a3ccecf4750979c5953"; }
+    { locale = "id"; arch = "linux-i686"; sha1 = "7efc031614247ddb93a27531d3fa1d19ce21d516"; }
+    { locale = "id"; arch = "linux-x86_64"; sha1 = "e409bb73aad373791d83569dfb4a475bc617eac8"; }
+    { locale = "is"; arch = "linux-i686"; sha1 = "0e5c4e9173379457b6c8edd1812121fce84cda07"; }
+    { locale = "is"; arch = "linux-x86_64"; sha1 = "dc6cbffde61b6188080e458b4a31b634f4c0434c"; }
+    { locale = "it"; arch = "linux-i686"; sha1 = "d75318f8421f634eeacf15aaa91a28261324044c"; }
+    { locale = "it"; arch = "linux-x86_64"; sha1 = "b024d0e3498c3dd32757997a273d9f1051ccd47f"; }
+    { locale = "ja"; arch = "linux-i686"; sha1 = "f74c1c567582a207efb501892845d1c28d7b8751"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha1 = "cb4151c0c1c6efa4c8ec5e4656de60b1abd65bac"; }
+    { locale = "kk"; arch = "linux-i686"; sha1 = "1e9d43eedb0bab9f428a80ee3c2721a944961562"; }
+    { locale = "kk"; arch = "linux-x86_64"; sha1 = "18a55f6ea18663922052411ebaed18c16c9f3050"; }
+    { locale = "km"; arch = "linux-i686"; sha1 = "f4f6af5a09072e004e7c8db7a10edc9ab8d474c3"; }
+    { locale = "km"; arch = "linux-x86_64"; sha1 = "43694f66fea7caf9b2f4d976564c00a99f7092e7"; }
+    { locale = "kn"; arch = "linux-i686"; sha1 = "3a94f8a0cadc729e97bb6a7b273b02d79c9012dd"; }
+    { locale = "kn"; arch = "linux-x86_64"; sha1 = "ec51644f69354aebac67f36e387d1a5b45d0dfa8"; }
+    { locale = "ko"; arch = "linux-i686"; sha1 = "599de739c08799b8e4082190a53de3ae0dfc6617"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha1 = "338825804362d34911beaad146ca6d104bc69788"; }
+    { locale = "lij"; arch = "linux-i686"; sha1 = "f2a6112a81043cc9608594cd56680a2e075dfd36"; }
+    { locale = "lij"; arch = "linux-x86_64"; sha1 = "8650de76d89abdcba3d0e4bba8c2b90533e54ce6"; }
+    { locale = "lt"; arch = "linux-i686"; sha1 = "0ea6e49b51dfd12150334b6023e26419716cdb65"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha1 = "a16c9e916462e3780159677528ffa35b9569a80b"; }
+    { locale = "lv"; arch = "linux-i686"; sha1 = "0255634959aa739ae6807a1c249e4c78f51f8316"; }
+    { locale = "lv"; arch = "linux-x86_64"; sha1 = "ada8dc2d3ea22c2afffac88b581dfc72a27f2f89"; }
+    { locale = "mai"; arch = "linux-i686"; sha1 = "fa932b9e6d9798753e7b89b91a5db6565fe2b695"; }
+    { locale = "mai"; arch = "linux-x86_64"; sha1 = "8a9252658d549d2cbc764197265275461db605b6"; }
+    { locale = "mk"; arch = "linux-i686"; sha1 = "641c882870dfa7fb23bed9c07def585477ff459d"; }
+    { locale = "mk"; arch = "linux-x86_64"; sha1 = "4b68d11f2a613bc8350d37dae899c2c65afe5dc9"; }
+    { locale = "ml"; arch = "linux-i686"; sha1 = "f636e9b8d5e268f7c124ef3f35f6933de83fed62"; }
+    { locale = "ml"; arch = "linux-x86_64"; sha1 = "ed98b20d8eb88a73b119c3a1435904f69529eabd"; }
+    { locale = "mr"; arch = "linux-i686"; sha1 = "d5ef4d4dbf4d0b63f526d102e95f28078096032a"; }
+    { locale = "mr"; arch = "linux-x86_64"; sha1 = "8e92bf456593359afb256c387578042c6085916f"; }
+    { locale = "ms"; arch = "linux-i686"; sha1 = "d94320d0c8aee23b6d3c603664caab45180b6069"; }
+    { locale = "ms"; arch = "linux-x86_64"; sha1 = "b9fdc0248d9656b3555c475643c7e07ca3c6b222"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "d49719c255a43151ed5e94d7024c39914ea27ec7"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "f2b1f00254ef350f817b5c1958384a9f5144f83e"; }
+    { locale = "nl"; arch = "linux-i686"; sha1 = "cc54828041f57f623de691a49e4bb055bd059c54"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha1 = "5728a30bf53644a3b13bc00f5652e067cbe9100b"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "0f69ddbd963a19d104ee96589c405c55aa7140b2"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "26af2b8cf928fedb5442c5257289f5e38c4f8432"; }
+    { locale = "or"; arch = "linux-i686"; sha1 = "2da0842ebe8ae5a8e80061d0fc159a5d408c4464"; }
+    { locale = "or"; arch = "linux-x86_64"; sha1 = "b7cc446178a493589d8654236f6e9113aee48455"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "dd81dc403366a7fd0d395338878b8b8fcb858365"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "2ca8cc4c491f0ded4cef8e3826a3c1419a580051"; }
+    { locale = "pl"; arch = "linux-i686"; sha1 = "468d45392126ac7852012ed43d76d83e238dc2ac"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha1 = "ed20af16563516671f32bb588728e90f29955964"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "b197bca20e972ce2f8851dc128fb212a7d293454"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "2cd05329c3612330fdc1354fe651cc13ab8d9a5f"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "1087ba6ba17aa102888e929ccf7acc6b2476e447"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "aa1907c10e980a8466c1604519ffa08aaabb2d7c"; }
+    { locale = "rm"; arch = "linux-i686"; sha1 = "fdb717a0f40b94a53077ff036a55c0f93b61a2cc"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha1 = "af10206080a7ad21e5fda9cdf66a734ee33b07ac"; }
+    { locale = "ro"; arch = "linux-i686"; sha1 = "f08c67c6ea2a63c216f944453b4ce8b36f4ed840"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha1 = "07efb37804ffab35f117eb32f9f645b554ac1dd8"; }
+    { locale = "ru"; arch = "linux-i686"; sha1 = "874f588d7ac5554ae4e8e134bfc272897f839f97"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha1 = "af64b6eb8d33d6bd78ce86e4785be50babe5c919"; }
+    { locale = "si"; arch = "linux-i686"; sha1 = "672523b996c7021e06b4a713f7ac1239a3b1800f"; }
+    { locale = "si"; arch = "linux-x86_64"; sha1 = "2e594b56230c079a9f1735e9bab9dc4a9d9e31ab"; }
+    { locale = "sk"; arch = "linux-i686"; sha1 = "6edffa576d9829673c65400d4570b34dc787faad"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha1 = "7b506fedbf3a25cd1ed54b05c9b5cb7b8c237ad8"; }
+    { locale = "sl"; arch = "linux-i686"; sha1 = "e8d1fea389b7cb75b7ccbf22ad5b8691e9bf1b6a"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha1 = "20163798733ee36ffa510987b18d1eb67b82aca1"; }
+    { locale = "son"; arch = "linux-i686"; sha1 = "9076d0e9de6adb7fbd26dbd3cd89dd5728939aab"; }
+    { locale = "son"; arch = "linux-x86_64"; sha1 = "352aeb9f5ccb1e3bb87c8e47f93e96a049991412"; }
+    { locale = "sq"; arch = "linux-i686"; sha1 = "838c4c525a9f93117704851ad81b2c199a9c28fc"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha1 = "0139a064056da0ed1730fd768da1322a9661bca9"; }
+    { locale = "sr"; arch = "linux-i686"; sha1 = "7d74018cd9948ee31e05b30ff1fb45a84d417494"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha1 = "85c43e2359f444faf111efd83fb0dc3e1b0edb48"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "bc95ee926f82aba58691d923eb4cb963aa4cb64a"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "7c8946d6180e2c48a80958b6a790bf6c9231591e"; }
+    { locale = "ta"; arch = "linux-i686"; sha1 = "dfaad8f934869d714c94a95a775bcdcd67fda3c4"; }
+    { locale = "ta"; arch = "linux-x86_64"; sha1 = "5523c6df4e2b03ae71c865aabe6bb0dd0446fc87"; }
+    { locale = "te"; arch = "linux-i686"; sha1 = "7a61ca88c832af3d15f197ba01d66c6fc43465d3"; }
+    { locale = "te"; arch = "linux-x86_64"; sha1 = "696823890791a05c6cf0230d1063a30012873090"; }
+    { locale = "th"; arch = "linux-i686"; sha1 = "4a3b932813ad0ab07f467a598e9e85b847bbe142"; }
+    { locale = "th"; arch = "linux-x86_64"; sha1 = "f847f3f0fb07f97053066f4b4314d93e9614e6cf"; }
+    { locale = "tr"; arch = "linux-i686"; sha1 = "59eee567e30cf6321c234c60002b416faec07aa4"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha1 = "b64dfdbdc75f87003f00883173084646a2617a29"; }
+    { locale = "uk"; arch = "linux-i686"; sha1 = "44e6b53ede97835847ed84defe4235cad513c653"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha1 = "bb6f84f58a19c6287bbc84e0e7101fcd48bd720a"; }
+    { locale = "uz"; arch = "linux-i686"; sha1 = "1aec3ba9efd52a1f386e0bb075745a7c01c443a2"; }
+    { locale = "uz"; arch = "linux-x86_64"; sha1 = "2ce2caccb638c0467ba1382a15146ef1cc33fa72"; }
+    { locale = "vi"; arch = "linux-i686"; sha1 = "d8b339892c152254c89ec1d42ff9b7f128455aab"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha1 = "e4503686f2a997e1c793ef8e3c80bccd3dc0e2f0"; }
+    { locale = "xh"; arch = "linux-i686"; sha1 = "d130fae691b91a1f1f7d15ca84f643ccf299b0e3"; }
+    { locale = "xh"; arch = "linux-x86_64"; sha1 = "18b5d09571f4db7b18dbbdb3f3c29c80480a16aa"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "303816f99659e2bbb8ecc4f9b1c83932a0c9205d"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "238b50b8bb745f2d80099354592c9b710c55f1d8"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "9159a6fea44a97a33390c527abf7730cdbbc9216"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "74e3c2292aed9c2a7de24d6f3693ac1d0ba4c41f"; }
   ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index 942823a42958..31375bd5a5bf 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -16,14 +16,14 @@
 
 assert stdenv.cc ? libc && stdenv.cc.libc != null;
 
-let version = "38.0.6"; in
+let version = "39.0"; in
 
 stdenv.mkDerivation rec {
   name = "firefox-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
-    sha1 = "d6103cdcc6a6eda029d44104354d3a5cafbf8d45";
+    sha1 = "32785daee7ddb9da8d7509ef095258fc58fe838e";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/instant-messengers/baresip/default.nix b/pkgs/applications/networking/instant-messengers/baresip/default.nix
index ec269def5b4e..5dde5b62ddab 100644
--- a/pkgs/applications/networking/instant-messengers/baresip/default.nix
+++ b/pkgs/applications/networking/instant-messengers/baresip/default.nix
@@ -4,11 +4,11 @@
 , gsm, speex, portaudio, spandsp, libuuid
 }:
 stdenv.mkDerivation rec {
-  version = "0.4.12";
+  version = "0.4.13";
   name = "baresip-${version}";
   src=fetchurl {
     url = "http://www.creytiv.com/pub/baresip-${version}.tar.gz";
-    sha256 = "0f4jfpyvlgvq47yha3ys3kbrpd6c20yxaqki70hl6b91jbhmq9i2";
+    sha256 = "1mndpcclp5cqlm5jfbh37ig8dmga75qxqfinp4dyd1c0wnd0f0jg";
   };
   buildInputs = [zlib openssl libre librem pkgconfig
     cairo mpg123 gstreamer gst_ffmpeg gst_plugins_base gst_plugins_bad gst_plugins_good
diff --git a/pkgs/applications/networking/instant-messengers/mcabber/default.nix b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
index 17ad6c25da77..ef6ce6076d94 100644
--- a/pkgs/applications/networking/instant-messengers/mcabber/default.nix
+++ b/pkgs/applications/networking/instant-messengers/mcabber/default.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "mcabber-${version}";
-  version = "0.10.3";
+  version = "1.0.0";
 
   src = fetchurl {
     url = "http://mcabber.com/files/mcabber-${version}.tar.bz2";
-    sha256 = "0vgsqw6yn0lzzcnr4fql4ycgf3gwqj6w4p0l4nqnvhkc94w62ikp";
+    sha256 = "0ckh2l5fbnykzbvdrqjwd1ppalaifb79nnizh8kra2sy76xbqxjl";
   };
 
   buildInputs = [ openssl ncurses pkgconfig glib loudmouth libotr gpgme ];
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index 833b93b82723..b7511804d95f 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -24,8 +24,8 @@ let
   langsSpaces = stdenv.lib.concatStringsSep " " langs;
   major = "4";
   minor = "4";
-  patch = "3";
-  tweak = "2";
+  patch = "4";
+  tweak = "3";
   subdir = "${major}.${minor}.${patch}";
   version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
 
@@ -80,14 +80,14 @@ let
 
     translations = fetchSrc {
       name = "translations";
-      sha256 = "17wfnbwcp7c5cx06c88gmprscfz05qyb5587m72xs6hzr741ygir";
+      sha256 = "1zyfpbdsx0kjkabdpkf0lg7hjnvxsf6hj9ljs8v9iqw3x3b7llib";
     };
 
     # TODO: dictionaries
 
     help = fetchSrc {
       name = "help";
-      sha256 = "09im7shbka9dfdh6mq31xq106khlyyw6rr1ij69smlkq0kg463g1";
+      sha256 = "1jbbbv63p63mwby52ynz2yk79pb32wsnakhxfhc75ng1br6cpll0";
     };
 
   };
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "0rl9x01ngxwnqwzxkrqy4vks4rb024m75z0w4zidwyp0az0m8qdd";
+    sha256 = "0wns7ny19bsl5ar1rq7n4033rfijl2cjn9l8bj1gwhpqlkd8db1i";
   };
 
   # Openoffice will open libcups dynamically, so we link it directly
diff --git a/pkgs/applications/science/logic/eprover/default.nix b/pkgs/applications/science/logic/eprover/default.nix
index bb0e34d45bc9..c04cfffbb149 100644
--- a/pkgs/applications/science/logic/eprover/default.nix
+++ b/pkgs/applications/science/logic/eprover/default.nix
@@ -6,7 +6,7 @@ let
     version="1.8";
     name="${baseName}-${version}";
     hash="0bl4dr7k6simwdvdyxhnjkiz4nm5y0nr8bfhc34zk0360i9m6sk3";
-    url="http://www4.in.tum.de/~schulz/WORK/E_DOWNLOAD/V_1.8/E.tgz";
+    url="http://wwwlehre.dhbw-stuttgart.de/~sschulz/WORK/E_DOWNLOAD/V_1.8/E.tgz";
     sha256="0bl4dr7k6simwdvdyxhnjkiz4nm5y0nr8bfhc34zk0360i9m6sk3";
   };
 in
diff --git a/pkgs/applications/science/logic/eprover/default.upstream b/pkgs/applications/science/logic/eprover/default.upstream
index fb2d80fafae8..f871d4985bbd 100644
--- a/pkgs/applications/science/logic/eprover/default.upstream
+++ b/pkgs/applications/science/logic/eprover/default.upstream
@@ -1,3 +1,3 @@
-url http://www4.informatik.tu-muenchen.de/~schulz/E/Download.html
+url http://wwwlehre.dhbw-stuttgart.de/~sschulz/E/Download.html
 version_link '[.]tgz$'
 version '.*[/]V_([0-9.]+)[/].*' '\1'
diff --git a/pkgs/applications/science/math/pari/default.nix b/pkgs/applications/science/math/pari/default.nix
index 9a3ab13c33e8..5719ccb69097 100644
--- a/pkgs/applications/science/math/pari/default.nix
+++ b/pkgs/applications/science/math/pari/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, gmp, readline }:
 
 stdenv.mkDerivation rec {
-  version = "2.7.3";
+  version = "2.7.4";
   name = "pari-${version}";
 
   src = fetchurl {
     url = "http://pari.math.u-bordeaux.fr/pub/pari/unix/${name}.tar.gz";
-    sha256 = "02k54m7p47r54lgxqanxvf7pdrss17n8if1qwk5wx0j1px22j0rq";
+    sha256 = "0k1qqagfl6zn7gvwmsqffj6g9yrzqvszwh2mblhmxpjlw1pigfh8";
   };
 
   buildInputs = [gmp readline];
diff --git a/pkgs/applications/version-management/src/default.nix b/pkgs/applications/version-management/src/default.nix
index 0e98791d823a..f6fdff162047 100644
--- a/pkgs/applications/version-management/src/default.nix
+++ b/pkgs/applications/version-management/src/default.nix
@@ -1,24 +1,16 @@
 { stdenv, fetchurl, python, rcs, git }:
 
 stdenv.mkDerivation rec {
-  name = "src-0.13";
+  name = "src-0.19";
 
   src = fetchurl {
     url = "http://www.catb.org/~esr/src/${name}.tar.gz";
-    sha256 = "03x0slgi6bnzgfn7f9qbl6jma0pj7357kwdh832l3v8zafk41p51";
+    sha256 = "0p56g09ndbmnxxjz2rn7fq3yjx572ywj0xdim9rz5cqnx0pmr71x";
   };
 
-  buildInputs = [ python ];
+  buildInputs = [ python rcs git ];
 
-  patches = [ ./path.patch ];
-
-  postPatch = ''
-    sed -i \
-      -e 's|@python@|${python}|' \
-      -e 's|@rcs@|${rcs}|' \
-      -e 's|@git@|${git}|' \
-      src srctest
-  '';
+  preConfigure = "patchShebangs .";
 
   makeFlags = [ "prefix=$(out)" ];
 
@@ -26,11 +18,8 @@ stdenv.mkDerivation rec {
 
   meta = {
     description = "Simple single-file revision control";
-
     homepage = http://www.catb.org/~esr/src/;
-
     license = stdenv.lib.licenses.bsd3;
-
     platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/version-management/src/path.patch b/pkgs/applications/version-management/src/path.patch
deleted file mode 100644
index ef500c8e04e7..000000000000
--- a/pkgs/applications/version-management/src/path.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -Naur src-0.13-orig/src src-0.13/src
---- src-0.13-orig/src	2014-11-24 03:56:16.000000000 -0500
-+++ src-0.13/src	2014-11-26 16:32:32.925151003 -0500
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python2
-+#!@python@/bin/python
- #
- # src - simple revision control.
- #
-@@ -51,6 +51,8 @@
- 
- import sys, os, subprocess, time, calendar, stat, glob, shutil, hashlib
- 
-+os.environ['PATH'] = "@rcs@/bin:@git@/bin:" + os.environ['PATH']
-+
- version="0.13"
- 
- def rfc3339(t):
-diff -Naur src-0.13-orig/srctest src-0.13/srctest
---- src-0.13-orig/srctest	2014-11-21 08:12:00.000000000 -0500
-+++ src-0.13/srctest	2014-11-26 16:33:13.627715388 -0500
-@@ -12,7 +12,7 @@
- 
- # Set the PATH to include the current directory, so the repository
- # head version of src can always be tested.
--PATH="$(pwd)":$PATH
-+PATH="$(pwd)":@git@/bin:$PATH
- 
- trap "rm -fr $SANDBOX" 0 1 2 15
- 
diff --git a/pkgs/applications/video/popcorntime/default.nix b/pkgs/applications/video/popcorntime/default.nix
index 0db56cc6fcd7..c588833b2f08 100644
--- a/pkgs/applications/video/popcorntime/default.nix
+++ b/pkgs/applications/video/popcorntime/default.nix
@@ -4,20 +4,21 @@
 let
   version = "0.3.7.2";
 
-  srcs = {
-    x86_64-linux = fetchurl {
-      url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux64.tar.xz";
-      sha256 = "0lm9k4fr73a9p00i3xj2ywa4wvjf9csadm0pcz8d6imwwq44sa8b";
-    };
-    i686-linux = fetchurl {
-      url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux32.tar.xz";
-      sha256 = "1dz1cp31qbwamm9pf8ydmzzhnb6d9z73bigdv3y74dgicz3dpr91";
-    };
-  };
-
   popcorntimePackage = stdenv.mkDerivation rec {
     name = "popcorntime-package-${version}";
-    src = srcs."${stdenv.system}";
+    src =
+      if stdenv.system == "x86_64-linux" then
+        fetchurl {
+          url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux64.tar.xz";
+          sha256 = "0lm9k4fr73a9p00i3xj2ywa4wvjf9csadm0pcz8d6imwwq44sa8b";
+        }
+      else if stdenv.system == "i686-linux" then
+        fetchurl {
+          url = "https://get.popcorntime.io/build/Popcorn-Time-${version}-Linux32.tar.xz";
+          sha256 = "1dz1cp31qbwamm9pf8ydmzzhnb6d9z73bigdv3y74dgicz3dpr91";
+        }
+      else
+        throw "Unsupported system ${stdenv.system}";
     sourceRoot = ".";
     installPhase = ''
       mkdir -p $out
diff --git a/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
new file mode 100644
index 000000000000..faa1076e2998
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-pvdrivers/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchgit }:
+
+stdenv.mkDerivation  {
+  name = "win-pvdrivers-git-20150701";
+  version = "20150701";
+
+  src = fetchgit {
+    url = "https://github.com/ts468/win-pvdrivers";
+    rev = "3054d645fc3ee182bea3e97ff01869f01cc3637a";
+    sha256 = "6232ca2b7c9af874abbcb9262faf2c74c819727ed2eb64599c790879df535106";
+  };
+
+  buildPhase =
+    let unpack = x: "tar xf $src/${x}.tar; mkdir -p x86/${x} amd64/${x}; cp ${x}/x86/* x86/${x}/.; cp ${x}/x64/* amd64/${x}/.";
+    in stdenv.lib.concatStringsSep "\n" (map unpack ["xenbus" "xeniface" "xenvif" "xennet" "xenvbd"]);
+
+  installPhase = ''
+    mkdir -p $out
+    cp -r x86 $out/.
+    cp -r amd64 $out/.
+    '';
+
+  meta = with stdenv.lib; {
+    description = "Xen Subproject: Windows PV Driver";
+    homepage = "http://xenproject.org/downloads/windows-pv-drivers.html";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-qemu/default.nix b/pkgs/applications/virtualization/driver/win-qemu/default.nix
new file mode 100644
index 000000000000..97a1f0b3039b
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-qemu/default.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, p7zip }:
+
+stdenv.mkDerivation  {
+  name = "win-qemu-0.1.105-1";
+  version = "0.1.105-1";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  src = fetchurl {
+    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.105-1/virtio-win.iso";
+    sha256 = "065gz7s77y0q9kfqbr27451sr28rm9azpi88sqjkfph8c6r8q3wc";
+  };
+
+  buildPhase = ''
+    ${p7zip}/bin/7z x $src
+    '';
+
+  installPhase =
+    let
+      copy_pvpanic = arch: version: "mkdir -p $out/${arch}/qemupanic; cp pvpanic/${version}/${arch}/* $out/${arch}/qemupanic/. \n";
+      copy_pciserial = arch: "mkdir -p $out/${arch}/qemupciserial; cp qemupciserial/* $out/${arch}/qemupciserial/. \n";
+      copy_agent = arch: ''
+        mkdir -p $out/${arch}/qemuagent
+        cp guest-agent/${if arch=="x86" then "qemu-ga-x86.msi" else "qemu-ga-x64.msi"} $out/${arch}/qemuagent/qemu-guest-agent.msi
+        (cd $out/${arch}/qemuagent; ${p7zip}/bin/7z x qemu-guest-agent.msi; rm qemu-guest-agent.msi)
+        '';
+      copy = arch: version: (copy_pvpanic arch version) + (copy_pciserial arch) + (copy_agent arch);
+    in
+      (copy "amd64" "w8.1") + (copy "x86" "w8.1");
+
+  meta = with stdenv.lib; {
+    description = "Windows QEMU Drivers";
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
new file mode 100644
index 000000000000..c4684a20914f
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-signed-gplpv-drivers/default.nix
@@ -0,0 +1,46 @@
+{ stdenv, fetchurl, p7zip }:
+
+let
+  src_x86 = fetchurl {
+    url = "http://apt.univention.de/download/addons/gplpv-drivers/gplpv_Vista2008x32_signed_0.11.0.373.msi";
+    sha256 = "04r11xw8ikjmcdhrsk878c86g0d0pvras5arsas3zs6dhgjykqap";
+  };
+
+  src_amd64 = fetchurl {
+    url = "http://apt.univention.de/download/addons/gplpv-drivers/gplpv_Vista2008x64_signed_0.11.0.373.msi";
+    sha256 = "00k628mg9b039p8lmg2l9n81dr15svy70p3m6xmq6f0frmci38ph";
+  };
+in
+
+stdenv.mkDerivation  {
+  name = "gplpv-0.11.0.373";
+  version = "0.11.0.373";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  buildPhase = ''
+    mkdir -p x86
+    (cd x86; ${p7zip}/bin/7z e ${src_x86})
+    mkdir -p amd64
+    (cd amd64; ${p7zip}/bin/7z e ${src_amd64})
+    '';
+
+  installPhase = ''
+    mkdir -p $out/x86 $out/amd64
+    cp x86/* $out/x86/.
+    cp amd64/* $out/amd64/.
+    '';
+
+  meta = with stdenv.lib; {
+    description = ''
+      A collection of open source Window PV drivers that allow
+      Windows to be para-virtualized.
+      The drivers are signed by Univention with a Software Publishers
+      Certificate obtained from the VeriSign CA.
+      '';
+    homepage = "http://wiki.univention.de/index.php?title=Installing-signed-GPLPV-drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-spice/default.nix b/pkgs/applications/virtualization/driver/win-spice/default.nix
new file mode 100644
index 000000000000..689d36e71101
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-spice/default.nix
@@ -0,0 +1,69 @@
+{ stdenv, fetchurl, p7zip, win-virtio }:
+
+let
+  src_usbdk_x86 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x86.msi";
+    sha256 = "17hv8034wk1xqnanm5jxs4741nl7asps1fdz6lhnrpp6gvj6yg9y";
+  };
+
+  src_usbdk_amd64 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/usbdk/UsbDk_1.0.4_x64.msi";
+    sha256 = "0alcqsivp33pm8sy0lmkvq7m5yh6mmcmxdl39zjxjra67kw8r2sd";
+  };
+
+  src_qxlwddm = fetchurl {
+    url = "http://people.redhat.com/~vrozenfe/qxlwddm/qxlwddm-0.11.zip";
+    sha256 = "082zdpbh9i3bq2ds8g33rcbcw390jsm7cqf46rrlx02x8r03dm98";
+  };
+
+  src_vdagent_x86 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/vdagent/vdagent-win-0.7.3/vdagent_0_7_3_x86.zip";
+    sha256 = "0d928g49rf4dl79jmvnqh6g864hp1flw1f0384sfp82himm3bxjs";
+  };
+
+  src_vdagent_amd64 = fetchurl {
+    url = "http://www.spice-space.org/download/windows/vdagent/vdagent-win-0.7.3/vdagent_0_7_3_x64.zip";
+    sha256 = "0djmvm66jcmcyhhbjppccbai45nqpva7vyvry6w8nyc0fwi1vm9l";
+  };
+in
+
+stdenv.mkDerivation  {
+  # use version number of qxlwddm as qxlwddm is the most important component
+  name = "win-spice-0.11";
+  version = "0.11";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  buildPhase = ''
+    mkdir -p usbdk/x86 usbdk/amd64
+    (cd usbdk/x86; ${p7zip}/bin/7z x ${src_usbdk_x86})
+    (cd usbdk/amd64; ${p7zip}/bin/7z x ${src_usbdk_amd64})
+
+    mkdir -p vdagent/x86 vdagent/amd64
+    (cd vdagent/x86; ${p7zip}/bin/7z x ${src_vdagent_x86}; mv vdagent_0_7_3_x86/* .; rm -r vdagent_0_7_3_x86)
+    (cd vdagent/amd64; ${p7zip}/bin/7z x ${src_vdagent_amd64}; mv vdagent_0_7_3_x64/* .; rm -r vdagent_0_7_3_x64)
+
+    mkdir -p qxlwddm
+    (cd qxlwddm; ${p7zip}/bin/7z x ${src_qxlwddm}; mv Win8 w8.1; cd w8.1; mv x64 amd64)
+    '';
+
+  installPhase =
+    let
+      copy_qxl = arch: version: "mkdir -p $out/${arch}/qxl; cp qxlwddm/${version}/${arch}/* $out/${arch}/qxl/. \n";
+      copy_usbdk = arch: "mkdir -p $out/${arch}/usbdk; cp usbdk/${arch}/* $out/${arch}/usbdk/. \n";
+      copy_vdagent = arch: "mkdir -p $out/${arch}/vdagent; cp vdagent/${arch}/* $out/${arch}/vdagent/. \n";
+      # SPICE needs vioserial
+      # TODO: Link windows version in win-spice (here) to version used in win-virtio.
+      #       That way it would never matter whether vioserial is installed from win-virtio or win-spice.
+      copy_vioserial = arch: "mkdir -p $out/${arch}/vioserial; cp ${win-virtio}/${arch}/vioserial/* $out/${arch}/vioserial/. \n";
+      copy = arch: version: (copy_qxl arch version) + (copy_usbdk arch) + (copy_vdagent arch) + (copy_vioserial arch);
+    in
+      (copy "amd64" "w8.1") + (copy "x86" "w8.1");
+
+  meta = with stdenv.lib; {
+    description = ''Windows SPICE Drivers'';
+    homepage = "http://www.spice-space.org";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/virtualization/driver/win-virtio/default.nix b/pkgs/applications/virtualization/driver/win-virtio/default.nix
new file mode 100644
index 000000000000..5cf2e0a30622
--- /dev/null
+++ b/pkgs/applications/virtualization/driver/win-virtio/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl, p7zip }:
+
+stdenv.mkDerivation  {
+  name = "win-virtio-0.1.105-1";
+  version = "0.1.105-1";
+
+  phases = [ "buildPhase" "installPhase" ];
+
+  src = fetchurl {
+    url = "https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/archive-virtio/virtio-win-0.1.105-1/virtio-win.iso";
+    sha256 = "065gz7s77y0q9kfqbr27451sr28rm9azpi88sqjkfph8c6r8q3wc";
+  };
+
+  buildPhase = ''
+    ${p7zip}/bin/7z x $src
+    '';
+
+  installPhase =
+    let
+      copy = arch: version: {input, output}: "mkdir -p $out/${arch}/${output}; cp ${input}/${version}/${arch}/* $out/${arch}/${output}/.";
+      virtio = [{input="Balloon"; output="vioballoon";}
+                {input="NetKVM"; output="vionet";}
+                {input="vioscsi"; output="vioscsi";}
+                {input="vioserial"; output="vioserial";}
+                {input="viostor"; output="viostor";}
+                {input="viorng"; output="viorng";}
+               ];
+    in
+      stdenv.lib.concatStringsSep "\n" ((map (copy "amd64" "w8.1") virtio) ++ (map (copy "x86" "w8.1") virtio));
+
+  meta = with stdenv.lib; {
+    description = "Windows VirtIO Drivers";
+    homepage = "https://fedoraproject.org/wiki/Windows_Virtio_Drivers";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch b/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch
new file mode 100644
index 000000000000..1eb3d5949de2
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0000-qemu-seabios-enable-ATA_DMA.patch
@@ -0,0 +1,23 @@
+diff --git a/src/Kconfig b/src/Kconfig
+index 45ca59c..faf8951 100644
+--- a/src/Kconfig
++++ b/src/Kconfig
+@@ -144,13 +144,13 @@ menu "Hardware support"
+     config ATA_DMA
+         depends on ATA
+         bool "ATA DMA"
+-        default n
++        default y
+         help
+             Detect and try to use ATA bus mastering DMA controllers.
+     config ATA_PIO32
+         depends on ATA
+         bool "ATA 32bit PIO"
+-        default n
++        default y
+         help
+             Use 32bit PIO accesses on ATA (minor optimization on PCI 
+transfers).
+     config AHCI
+-- 
+1.7.10.4
diff --git a/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch b/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch
new file mode 100644
index 000000000000..67b7ac777b5d
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0001-libxl-Spice-image-compression-setting-support-for-up.patch
@@ -0,0 +1,104 @@
+From bd71555985efc423b1a119b6a3177de855763453 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Tue, 20 Jan 2015 11:26:30 +0100
+Subject: [PATCH] libxl: Spice image compression setting support for upstream
+ qemu
+
+Usage:
+spice_image_compression=[auto_glz|auto_lz|quic|glz|lz|off]
+
+Specifies what image compression is to be used by spice (if given),
+otherwise the qemu default will be used.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Acked-by: Wei Liu <wei.liu2@citrix.com>
+---
+ docs/man/xl.cfg.pod.5       |  6 ++++++
+ tools/libxl/libxl.h         | 11 +++++++++++
+ tools/libxl/libxl_dm.c      |  4 ++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 5 files changed, 24 insertions(+)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index e2f91fc..0c2cbac 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1427,6 +1427,12 @@ for redirection of up to 4 usb devices from spice client to domU's qemu.
+ It requires an usb controller and if not defined it will automatically adds
+ an usb2 controller. The default is disabled (0).
+ 
++=item B<spice_image_compression=[auto_glz|auto_lz|quic|glz|lz|off]>
++
++Specifies what image compression is to be used by spice (if given), otherwise
++the qemu default will be used. Please see documentations of your current qemu
++version for details.
++
+ =back
+ 
+ =head3 Miscellaneous Emulated Hardware
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index 0a123f1..b8e0b67 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -528,6 +528,17 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_SPICE_USBREDIREDIRECTION 1
+ 
+ /*
++ * LIBXL_HAVE_SPICE_IMAGECOMPRESSION
++ *
++ * If defined, then the libxl_spice_info structure will contain a string type
++ * field: image_compression. This value defines what Spice image compression
++ * is used.
++ *
++ * If this is not defined, the Spice image compression setting support is ignored.
++ */
++#define LIBXL_HAVE_SPICE_IMAGECOMPRESSION 1
++
++/*
+  * LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS 1
+  *
+  * If this is defined, libxl_domain_create_restore()'s API has changed to
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index c2b0487..40c8649 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -398,6 +398,10 @@ static char *dm_spice_options(libxl__gc *gc,
+     if (!libxl_defbool_val(spice->clipboard_sharing))
+         opt = libxl__sprintf(gc, "%s,disable-copy-paste", opt);
+ 
++    if (spice->image_compression)
++        opt = libxl__sprintf(gc, "%s,image-compression=%s", opt,
++                             spice->image_compression);
++
+     return opt;
+ }
+ 
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 1214d2e..052ded9 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -241,6 +241,7 @@ libxl_spice_info = Struct("spice_info", [
+     ("vdagent",     libxl_defbool),
+     ("clipboard_sharing", libxl_defbool),
+     ("usbredirection", integer),
++    ("image_compression", string),
+     ])
+ 
+ libxl_sdl_info = Struct("sdl_info", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 0b02a6c..00aa69d 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -1948,6 +1948,8 @@ skip_vfb:
+                             &b_info->u.hvm.spice.clipboard_sharing, 0);
+         if (!xlu_cfg_get_long (config, "spiceusbredirection", &l, 0))
+             b_info->u.hvm.spice.usbredirection = l;
++        xlu_cfg_replace_string (config, "spice_image_compression",
++                                &b_info->u.hvm.spice.image_compression, 0);
+         xlu_cfg_get_defbool(config, "nographic", &b_info->u.hvm.nographic, 0);
+         xlu_cfg_get_defbool(config, "gfx_passthru",
+                             &b_info->u.hvm.gfx_passthru, 0);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch b/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
new file mode 100644
index 000000000000..acf9cff99251
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
@@ -0,0 +1,104 @@
+From 296c7f3284efe655d95a8ae045a5dc1a20d6fff0 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Tue, 20 Jan 2015 11:33:17 +0100
+Subject: [PATCH] libxl: Spice streaming video setting support for upstream
+ qemu
+
+Usage:
+spice_streaming_video=[filter|all|off]
+
+Specifies what streaming video setting is to be used by spice (if
+given),
+otherwise the qemu default will be used.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Acked-by: Wei Liu <wei.liu2@citrix.com>
+---
+ docs/man/xl.cfg.pod.5       |  5 +++++
+ tools/libxl/libxl.h         | 11 +++++++++++
+ tools/libxl/libxl_dm.c      |  4 ++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 5 files changed, 23 insertions(+)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index 0c2cbac..408653f 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1433,6 +1433,11 @@ Specifies what image compression is to be used by spice (if given), otherwise
+ the qemu default will be used. Please see documentations of your current qemu
+ version for details.
+ 
++=item B<spice_streaming_video=[filter|all|off]>
++
++Specifies what streaming video setting is to be used by spice (if given),
++otherwise the qemu default will be used.
++
+ =back
+ 
+ =head3 Miscellaneous Emulated Hardware
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index b8e0b67..c219f59 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -539,6 +539,17 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_SPICE_IMAGECOMPRESSION 1
+ 
+ /*
++ * LIBXL_HAVE_SPICE_STREAMINGVIDEO
++ *
++ * If defined, then the libxl_spice_info structure will contain a string type
++ * field: streaming_video. This value defines what Spice streaming video setting
++ * is used.
++ *
++ * If this is not defined, the Spice streaming video setting support is ignored.
++ */
++#define LIBXL_HAVE_SPICE_STREAMINGVIDEO 1
++
++/*
+  * LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS 1
+  *
+  * If this is defined, libxl_domain_create_restore()'s API has changed to
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index 40c8649..d8d6f0c 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -402,6 +402,10 @@ static char *dm_spice_options(libxl__gc *gc,
+         opt = libxl__sprintf(gc, "%s,image-compression=%s", opt,
+                              spice->image_compression);
+ 
++    if (spice->streaming_video)
++        opt = libxl__sprintf(gc, "%s,streaming-video=%s", opt,
++                             spice->streaming_video);
++
+     return opt;
+ }
+ 
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 052ded9..02be466 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -242,6 +242,7 @@ libxl_spice_info = Struct("spice_info", [
+     ("clipboard_sharing", libxl_defbool),
+     ("usbredirection", integer),
+     ("image_compression", string),
++    ("streaming_video", string),
+     ])
+ 
+ libxl_sdl_info = Struct("sdl_info", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 00aa69d..b7eac29 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -1950,6 +1950,8 @@ skip_vfb:
+             b_info->u.hvm.spice.usbredirection = l;
+         xlu_cfg_replace_string (config, "spice_image_compression",
+                                 &b_info->u.hvm.spice.image_compression, 0);
++        xlu_cfg_replace_string (config, "spice_streaming_video",
++                                &b_info->u.hvm.spice.streaming_video, 0);
+         xlu_cfg_get_defbool(config, "nographic", &b_info->u.hvm.nographic, 0);
+         xlu_cfg_get_defbool(config, "gfx_passthru",
+                             &b_info->u.hvm.gfx_passthru, 0);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch b/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch
new file mode 100644
index 000000000000..1771b662bc3a
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/0003-Add-qxl-vga-interface-support-for-upstream-qem.patch
@@ -0,0 +1,165 @@
+From 161212ef02312c0681d2d809c8ff1e1f0ea6f6f9 Mon Sep 17 00:00:00 2001
+From: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Date: Wed, 29 Apr 2015 11:20:28 +0200
+Subject: [PATCH] libxl: Add qxl vga interface support for upstream qemu
+
+Usage:
+vga="qxl"
+
+Qxl vga support many resolutions that not supported by stdvga,
+mainly the 16:9 ones and other high up to 2560x1600.
+With QXL you can get improved performance and smooth video also
+with high resolutions and high quality.
+Require their drivers installed in the domU and spice used
+otherwise act as a simple stdvga.
+
+Signed-off-by: Fabio Fantoni <fabio.fantoni@m2r.biz>
+Signed-off-by: Zhou Peng <zpengxen@gmail.com>
+Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
+Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
+Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
+---
+ docs/man/xl.cfg.pod.5       | 10 +++++++++-
+ tools/libxl/libxl.h         | 10 ++++++++++
+ tools/libxl/libxl_create.c  | 13 +++++++++++++
+ tools/libxl/libxl_dm.c      |  8 ++++++++
+ tools/libxl/libxl_types.idl |  1 +
+ tools/libxl/xl_cmdimpl.c    |  2 ++
+ 6 files changed, 43 insertions(+), 1 deletion(-)
+
+diff --git a/docs/man/xl.cfg.pod.5 b/docs/man/xl.cfg.pod.5
+index f936dfc..8e4154f 100644
+--- a/docs/man/xl.cfg.pod.5
++++ b/docs/man/xl.cfg.pod.5
+@@ -1360,6 +1360,9 @@ qemu-xen-traditional device-model, the amount of video RAM is fixed at 4 MB,
+ which is sufficient for 1024x768 at 32 bpp. For the upstream qemu-xen
+ device-model, the default and minimum is 8 MB.
+ 
++For B<qxl> vga, the default is both default and minimal 128MB.
++If B<videoram> is set less than 128MB, an error will be triggered.
++
+ =item B<stdvga=BOOLEAN>
+ 
+ Select a standard VGA card with VBE (VESA BIOS Extensions) as the
+@@ -1371,9 +1374,14 @@ This option is deprecated, use vga="stdvga" instead.
+ 
+ =item B<vga="STRING">
+ 
+-Selects the emulated video card (none|stdvga|cirrus).
++Selects the emulated video card (none|stdvga|cirrus|qxl).
+ The default is cirrus.
+ 
++In general, QXL should work with the Spice remote display protocol
++for acceleration, and QXL driver is necessary in guest in this case.
++QXL can also work with the VNC protocol, but it will be like a standard
++VGA without acceleration.
++
+ =item B<vnc=BOOLEAN>
+ 
+ Allow access to the display via the VNC protocol.  This enables the
+diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
+index 44bd8e2..efc0617 100644
+--- a/tools/libxl/libxl.h
++++ b/tools/libxl/libxl.h
+@@ -535,6 +535,16 @@ typedef struct libxl__ctx libxl_ctx;
+ #define LIBXL_HAVE_DOMINFO_OUTSTANDING_MEMKB 1
+ 
+ /*
++ * LIBXL_HAVE_QXL
++ *
++ * If defined, then the libxl_vga_interface_type will contain another value:
++ * "QXL". This value define if qxl vga is supported.
++ *
++ * If this is not defined, the qxl vga support is missed.
++ */
++#define LIBXL_HAVE_QXL 1
++
++/*
+  * LIBXL_HAVE_SPICE_VDAGENT
+  *
+  * If defined, then the libxl_spice_info structure will contain a boolean type:
+diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
+index e5a343f..188f7df 100644
+--- a/tools/libxl/libxl_create.c
++++ b/tools/libxl/libxl_create.c
+@@ -248,6 +248,10 @@ int libxl__domain_build_info_setdefault(libxl__gc *gc,
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 0;
+                 break;
++            case LIBXL_VGA_INTERFACE_TYPE_QXL:
++                LOG(ERROR,"qemu upstream required for qxl vga");
++                return ERROR_INVAL;
++                break;
+             case LIBXL_VGA_INTERFACE_TYPE_STD:
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 8 * 1024;
+@@ -272,6 +276,15 @@ int libxl__domain_build_info_setdefault(libxl__gc *gc,
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 0;
+                 break;
++            case LIBXL_VGA_INTERFACE_TYPE_QXL:
++                if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT) {
++                    b_info->video_memkb = (128 * 1024);
++                } else if (b_info->video_memkb < (128 * 1024)) {
++                    LOG(ERROR,
++                        "128 Mib videoram is the minimum for qxl default");
++                    return ERROR_INVAL;
++                }
++                break;
+             case LIBXL_VGA_INTERFACE_TYPE_STD:
+                 if (b_info->video_memkb == LIBXL_MEMKB_DEFAULT)
+                     b_info->video_memkb = 16 * 1024;
+diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
+index 30c1578..58c9b99 100644
+--- a/tools/libxl/libxl_dm.c
++++ b/tools/libxl/libxl_dm.c
+@@ -251,6 +251,8 @@ static char ** libxl__build_device_model_args_old(libxl__gc *gc,
+         case LIBXL_VGA_INTERFACE_TYPE_NONE:
+             flexarray_append_pair(dm_args, "-vga", "none");
+             break;
++        case LIBXL_VGA_INTERFACE_TYPE_QXL:
++            break;
+         }
+ 
+         if (b_info->u.hvm.boot) {
+@@ -625,6 +627,12 @@ static char ** libxl__build_device_model_args_new(libxl__gc *gc,
+             break;
+         case LIBXL_VGA_INTERFACE_TYPE_NONE:
+             break;
++        case LIBXL_VGA_INTERFACE_TYPE_QXL:
++            /* QXL have 2 ram regions, ram and vram */
++            flexarray_append_pair(dm_args, "-device",
++                GCSPRINTF("qxl-vga,vram_size_mb=%"PRIu64",ram_size_mb=%"PRIu64,
++                (b_info->video_memkb/2/1024), (b_info->video_memkb/2/1024) ) );
++            break;
+         }
+ 
+         if (b_info->u.hvm.boot) {
+diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
+index 117b61d..023b21e 100644
+--- a/tools/libxl/libxl_types.idl
++++ b/tools/libxl/libxl_types.idl
+@@ -183,6 +183,7 @@ libxl_vga_interface_type = Enumeration("vga_interface_type", [
+     (1, "CIRRUS"),
+     (2, "STD"),
+     (3, "NONE"),
++    (4, "QXL"),
+     ], init_val = "LIBXL_VGA_INTERFACE_TYPE_CIRRUS")
+ 
+ libxl_vendor_device = Enumeration("vendor_device", [
+diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
+index 648ca08..526a1f6 100644
+--- a/tools/libxl/xl_cmdimpl.c
++++ b/tools/libxl/xl_cmdimpl.c
+@@ -2115,6 +2115,8 @@ skip_vfb:
+                 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_CIRRUS;
+             } else if (!strcmp(buf, "none")) {
+                 b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_NONE;
++            } else if (!strcmp(buf, "qxl")) {
++                b_info->u.hvm.vga.kind = LIBXL_VGA_INTERFACE_TYPE_QXL;
+             } else {
+                 fprintf(stderr, "Unknown vga \"%s\" specified\n", buf);
+                 exit(1);
+-- 
+1.9.2
+
diff --git a/pkgs/applications/virtualization/xen/4.4.1.nix b/pkgs/applications/virtualization/xen/4.4.1.nix
index a13a51a1d4ef..ec2056cc5475 100644
--- a/pkgs/applications/virtualization/xen/4.4.1.nix
+++ b/pkgs/applications/virtualization/xen/4.4.1.nix
@@ -14,30 +14,34 @@ let
     # Sources needed to build the xen tools and tools/firmware.
     toolsGits =
       [ # tag qemu-xen-4.4.1
-        { name = "qemu-xen";
-          url = git://xenbits.xen.org/qemu-upstream-4.4-testing.git;
-          rev = "65fc9b78ba3d868a26952db0d8e51cecf01d47b4";
-          sha256 = "e24fb58f773fd9134c5aae6d3ca7e9f754dc9822de92b1eb2cedc76faf911f18";
+        { git = { name = "qemu-xen";
+                  url = git://xenbits.xen.org/qemu-upstream-4.4-testing.git;
+                  rev = "65fc9b78ba3d868a26952db0d8e51cecf01d47b4";
+                  sha256 = "e24fb58f773fd9134c5aae6d3ca7e9f754dc9822de92b1eb2cedc76faf911f18";
+                };
         }
         # tag xen-4.4.1
-        {  name = "qemu-xen-traditional";
-          url = git://xenbits.xen.org/qemu-xen-4.4-testing.git;
-          rev = "6ae4e588081620b141071eb010ec40aca7e12876";
-          sha256 = "b1ed1feb92fbe658273a8d6d38d6ea60b79c1658413dd93979d6d128d8554ded";
+        { git = { name = "qemu-xen-traditional";
+                  url = git://xenbits.xen.org/qemu-xen-4.4-testing.git;
+                  rev = "6ae4e588081620b141071eb010ec40aca7e12876";
+                  sha256 = "b1ed1feb92fbe658273a8d6d38d6ea60b79c1658413dd93979d6d128d8554ded";
+                };
         }
       ];
 
     firmwareGits =
       [ # tag 1.7.3.1
-        { name = "seabios";
-          url = git://xenbits.xen.org/seabios.git;
-          rev = "7d9cbe613694924921ed1a6f8947d711c5832eee";
-          sha256 = "c071282bbcb1dd0d98536ef90cd1410f5d8da19648138e0e3863bc540d954a87";
+        { git = { name = "seabios";
+                  url = git://xenbits.xen.org/seabios.git;
+                  rev = "7d9cbe613694924921ed1a6f8947d711c5832eee";
+                  sha256 = "c071282bbcb1dd0d98536ef90cd1410f5d8da19648138e0e3863bc540d954a87";
+                };
         }
-        { name = "ovmf";
-          url = git://xenbits.xen.org/ovmf.git;
-          rev = "447d264115c476142f884af0be287622cd244423";
-          sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+        { git = { name = "ovmf";
+                  url = git://xenbits.xen.org/ovmf.git;
+                  rev = "447d264115c476142f884af0be287622cd244423";
+                  sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+                };
         }
       ];
 
diff --git a/pkgs/applications/virtualization/xen/4.5.0.nix b/pkgs/applications/virtualization/xen/4.5.0.nix
index 176e15ea2c75..156255be0d75 100644
--- a/pkgs/applications/virtualization/xen/4.5.0.nix
+++ b/pkgs/applications/virtualization/xen/4.5.0.nix
@@ -14,30 +14,47 @@ let
     # Sources needed to build the xen tools and tools/firmware.
     firmwareGits =
       [ # tag 1.7.5
-        { name = "seabios";
-          url = git://xenbits.xen.org/seabios.git;
-          rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
-          sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+        { git = { name = "seabios";
+                  url = git://xenbits.xen.org/seabios.git;
+                  rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
+                  sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+                };
+          patches = [ ./0000-qemu-seabios-enable-ATA_DMA.patch ];
         }
-        { name = "ovmf";
-          url = git://xenbits.xen.org/ovmf.git;
-          rev = "447d264115c476142f884af0be287622cd244423";
-          sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+        { git = { name = "ovmf";
+                  url = git://xenbits.xen.org/ovmf.git;
+                  rev = "447d264115c476142f884af0be287622cd244423";
+                  sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+                };
         }
       ];
 
     toolsGits =
       [ # tag qemu-xen-4.5.0
-        { name = "qemu-xen";
-          url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
-          rev = "1ebb75b1fee779621b63e84fefa7b07354c43a99";
-          sha256 = "1j312q2mqvkvby9adkkxf7f1pn3nz85g5mr9nbg4qpf2y9cg122z";
+        { git = { name = "qemu-xen";
+                  url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
+                  rev = "1ebb75b1fee779621b63e84fefa7b07354c43a99";
+                  sha256 = "1j312q2mqvkvby9adkkxf7f1pn3nz85g5mr9nbg4qpf2y9cg122z";
+                };
         }
         # tag xen-4.5.0
-        { name = "qemu-xen-traditional";
-          url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
-          rev = "b0d42741f8e9a00854c3b3faca1da84bfc69bf22";
-          sha256 = "ce52b5108936c30ab85ec0c9554f88d5e7b34896f3acb666d56765b49c86f2af";
+        { git = { name = "qemu-xen-traditional";
+                  url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
+                  rev = "b0d42741f8e9a00854c3b3faca1da84bfc69bf22";
+                  sha256 = "ce52b5108936c30ab85ec0c9554f88d5e7b34896f3acb666d56765b49c86f2af";
+                };
+        }
+        { git = { name = "xen-libhvm";
+                  url = "https://github.com/ts468/xen-libhvm";
+                  rev = "442dcc4f6f4e374a51e4613532468bd6b48bdf63";
+                  sha256 = "9ba97c39a00a54c154785716aa06691d312c99be498ebbc00dc3769968178ba8";
+                };
+          description = ''
+            Helper library for reading ACPI and SMBIOS firmware values
+            from the host system for use with the HVM guest firmware
+            pass-through feature in Xen.
+            '';
+          #license = licenses.bsd2;
         }
       ];
 
@@ -52,6 +69,10 @@ let
         quilt push -a
         substituteInPlace tools/xenguest/Makefile --replace "_BSD_SOURCE" "_DEFAULT_SOURCE"
         '';
+
+    xenPatches = [ ./0001-libxl-Spice-image-compression-setting-support-for-up.patch
+                   ./0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
+                   ./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch ];
   };
 
 in callPackage ./generic.nix (args // { xenConfig=xenConfig; })
diff --git a/pkgs/applications/virtualization/xen/4.5.1.nix b/pkgs/applications/virtualization/xen/4.5.1.nix
new file mode 100644
index 000000000000..3412a0bd6ec0
--- /dev/null
+++ b/pkgs/applications/virtualization/xen/4.5.1.nix
@@ -0,0 +1,67 @@
+{ callPackage, fetchurl, fetchgit, ... } @ args:
+
+let
+  # Xen 4.5.1
+  xenConfig = {
+    name = "xen-4.5.1";
+    version = "4.5.1";
+
+    src = fetchurl {
+      url = "http://bits.xensource.com/oss-xen/release/4.5.1/xen-4.5.1.tar.gz";
+      sha256 = "0w8kbqy7zixacrpbk3yj51xx7b3f6l8ghsg3551w8ym6zka13336";
+    };
+
+    # Sources needed to build the xen tools and tools/firmware.
+    firmwareGits =
+      [ # tag 1.7.5
+        { git = { name = "seabios";
+                  url = git://xenbits.xen.org/seabios.git;
+                  rev = "e51488c5f8800a52ac5c8da7a31b85cca5cc95d2";
+                  sha256 = "b96a0b9f31cab0f3993d007dcbe5f1bd69ad02b0a23eb2dc8a3ed1aafe7985cb";
+                };
+          patches = [ ./0000-qemu-seabios-enable-ATA_DMA.patch ];
+        }
+        { git = { name = "ovmf";
+                  url = git://xenbits.xen.org/ovmf.git;
+                  rev = "447d264115c476142f884af0be287622cd244423";
+                  sha256 = "7086f882495a8be1497d881074e8f1005dc283a5e1686aec06c1913c76a6319b";
+                };
+        }
+      ];
+
+    toolsGits =
+      [ # tag qemu-xen-4.5.1
+        { git = { name = "qemu-xen";
+                  url = git://xenbits.xen.org/qemu-upstream-4.5-testing.git;
+                  rev = "d9552b0af21c27535cd3c8549bb31d26bbecd506";
+                  sha256 = "15dbz8j26wl4vs5jijhccwgd8c6wkmpj4mz899fa7i1bbh8yysfy";
+                };
+        }
+        # tag xen-4.5.1
+        { git = { name = "qemu-xen-traditional";
+                  url = git://xenbits.xen.org/qemu-xen-4.5-testing.git;
+                  rev = "afaa35b4bc975b2b89ad44c481d0d7623e3d1c49";
+                  sha256 = "906b31cf32b52d29e521abaa76d641123bdf24f33fa53c6f109b6d7834e514be";
+                };
+        }
+        { git = { name = "xen-libhvm";
+                  url = "https://github.com/ts468/xen-libhvm";
+                  rev = "442dcc4f6f4e374a51e4613532468bd6b48bdf63";
+                  sha256 = "9ba97c39a00a54c154785716aa06691d312c99be498ebbc00dc3769968178ba8";
+                };
+          description = ''
+            Helper library for reading ACPI and SMBIOS firmware values
+            from the host system for use with the HVM guest firmware
+            pass-through feature in Xen.
+            '';
+          #license = licenses.bsd2;
+        }
+      ];
+
+    xenPatches = [ ./0001-libxl-Spice-image-compression-setting-support-for-up.patch
+                   ./0002-libxl-Spice-streaming-video-setting-support-for-upst.patch
+                   ./0003-Add-qxl-vga-interface-support-for-upstream-qem.patch ];
+  };
+
+in callPackage ./generic.nix (args // { xenConfig=xenConfig; })
+
diff --git a/pkgs/applications/virtualization/xen/generic.nix b/pkgs/applications/virtualization/xen/generic.nix
index 711fd505efa4..2c92a9834740 100644
--- a/pkgs/applications/virtualization/xen/generic.nix
+++ b/pkgs/applications/virtualization/xen/generic.nix
@@ -3,7 +3,7 @@
 , lvm2, utillinux, procps, texinfo, perl, pythonPackages
 , glib, bridge-utils, xlibs, pixman, iproute, udev, bison
 , flex, cmake, ocaml, ocamlPackages, figlet, libaio, yajl
-, checkpolicy, transfig, glusterfs, fetchgit, xz, spice
+, checkpolicy, transfig, glusterfs, acl, fetchgit, xz, spice
 , spice_protocol, usbredir, alsaLib, quilt
 , coreutils, gawk, gnused, gnugrep, diffutils, multipath_tools
 , inetutils, iptables, openvswitch, nbd, drbd, xenConfig
@@ -69,15 +69,14 @@ stdenv.mkDerivation {
       glib bridge-utils pixman iproute udev bison xlibs.libX11
       flex ocaml ocamlPackages.findlib figlet libaio
       checkpolicy pythonPackages.markdown transfig
-      glusterfs cmake spice spice_protocol usbredir
+      glusterfs acl cmake spice spice_protocol usbredir
       alsaLib quilt
     ];
 
   pythonPath = [ pythonPackages.curses ];
 
-  patchPhase = if ((xenserverPatched == true) && (builtins.hasAttr "xenserverPatches" xenConfig))
-    then xenConfig.xenserverPatches
-    else "";
+  patches = stdenv.lib.optionals ((xenserverPatched == false) && (builtins.hasAttr "xenPatches" xenConfig)) xenConfig.xenPatches;
+  patchPhase = stdenv.lib.optional ((xenserverPatched == true) && (builtins.hasAttr "xenserverPatches" xenConfig)) xenConfig.xenserverPatches;
 
   preConfigure = ''
     # Fake wget: copy prefetched downloads instead
@@ -87,13 +86,9 @@ stdenv.mkDerivation {
     echo "cp \$4 \$3" >> wget/wget
     chmod +x wget/wget
     export PATH=$PATH:$PWD/wget
+    export EXTRA_QEMUU_CONFIGURE_ARGS="--enable-spice --enable-usb-redir --enable-linux-aio"
   '';
 
-  # TODO: If multiple arguments are given with with-extra-qemuu,
-  #       then the configuration aborts; the reason is unclear.
-  #       If you know how to fix it, please let me know! :)
-  #configureFlags = "--with-extra-qemuu-configure-args='--enable-spice --enable-usb-redir --enable-linux-aio'";
-
   # TODO: Flask needs more testing before enabling it by default.
   #makeFlags = "XSM_ENABLE=y FLASK_ENABLE=y PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
   makeFlags = "PREFIX=$(out) CONFIG_DIR=/etc XEN_EXTFILES_URL=\\$(XEN_ROOT)/xen_ext_files ";
@@ -154,13 +149,17 @@ stdenv.mkDerivation {
 
       # Xen's tools and firmares need various git repositories that it
       # usually checks out at time using git.  We can't have that.
-      ${flip concatMapStrings xenConfig.toolsGits (x: let src = fetchgit x; in ''
+      ${flip concatMapStrings xenConfig.toolsGits (x: let src = fetchgit x.git; in ''
         cp -r ${src} tools/${src.name}-dir-remote
-        chmod +w tools/${src.name}-dir-remote
+        chmod -R +w tools/${src.name}-dir-remote
+      '' + stdenv.lib.optionalString (builtins.hasAttr "patches" x) ''
+        ( cd tools/${src.name}-dir-remote; ${concatStringsSep "; " (map (p: "patch -p1 < ${p}") x.patches)} )
       '')}
-      ${flip concatMapStrings xenConfig.firmwareGits (x: let src = fetchgit x; in ''
+      ${flip concatMapStrings xenConfig.firmwareGits (x: let src = fetchgit x.git; in ''
         cp -r ${src} tools/firmware/${src.name}-dir-remote
-        chmod +w tools/firmware/${src.name}-dir-remote
+        chmod -R +w tools/firmware/${src.name}-dir-remote
+      '' + stdenv.lib.optionalString (builtins.hasAttr "patches" x) ''
+        ( cd tools/firmware/${src.name}-dir-remote; ${concatStringsSep "; " (map (p: "patch -p1 < ${p}") x.patches)} )
       '')}
 
       # Xen's stubdoms and firmwares need various sources that are usually fetched
@@ -178,6 +177,9 @@ stdenv.mkDerivation {
   postBuild =
     ''
       make -C docs man-pages
+
+      (cd tools/xen-libhvm-dir-remote; make)
+      (cd tools/xen-libhvm-dir-remote/biospt; cc -Wall -g -D_LINUX -Wstrict-prototypes biospt.c -o biospt -I../libhvm -L../libhvm -lxenhvm)
     '';
 
   installPhase =
@@ -192,8 +194,11 @@ stdenv.mkDerivation {
 
       shopt -s extglob
       for i in $out/etc/xen/scripts/!(*.sh); do
-        sed -i '2s@^@export PATH=$out/bin:${scriptEnvPath}@' $i
+        sed -i "2s@^@export PATH=$out/bin:${scriptEnvPath}\n@" $i
       done
+
+      (cd tools/xen-libhvm-dir-remote; make install)
+      cp tools/xen-libhvm-dir-remote/biospt/biospt $out/bin/.
     '';
 
   meta = {
diff --git a/pkgs/applications/virtualization/xhyve/default.nix b/pkgs/applications/virtualization/xhyve/default.nix
new file mode 100644
index 000000000000..9941d34bc896
--- /dev/null
+++ b/pkgs/applications/virtualization/xhyve/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, lib, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "xhyve-${version}";
+  version = "0.1.0";
+
+  src = fetchurl {
+    url = "https://github.com/mist64/xhyve/archive/v${version}.tar.gz";
+    sha256 = "0nbb9zy4iqmdz2dpyvcl1ynimrrpyd6f6cq8y2p78n1lmgqhrgkm";
+  };
+
+  buildFlags = "CFLAGS=-Wno-pedantic -Wno-shift-sign-overflow";
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp build/xhyve $out/bin
+  '';
+
+  meta = {
+    description = "Lightweight Virtualization on OS X Based on bhyve";
+    homepage = "https://github.com/mist64/xhyve";
+    maintainers = lib.maintainers.lnl7;
+    platforms = lib.platforms.darwin;
+  };
+}
diff --git a/pkgs/development/compilers/cudatoolkit/5.5.nix b/pkgs/development/compilers/cudatoolkit/5.5.nix
index b42261638650..c3eb1b6efcf6 100644
--- a/pkgs/development/compilers/cudatoolkit/5.5.nix
+++ b/pkgs/development/compilers/cudatoolkit/5.5.nix
@@ -1,62 +1,6 @@
-{ lib, stdenv, fetchurl, patchelf, perl, ncurses, expat, python, zlib
-, xlibs, gtk2, glib, fontconfig, freetype, unixODBC, alsaLib
-} :
+{ callPackage, ... } @ args:
 
-stdenv.mkDerivation rec {
-  name = "cudatoolkit-5.5.22";
-
-  dontPatchELF = true;
-  dontStrip = true;
-
-  src =
-    if stdenv.system == "x86_64-linux" then
-      fetchurl {
-        url = http://developer.download.nvidia.com/compute/cuda/5_5/rel/installers/cuda_5.5.22_linux_64.run;
-        sha256 = "b997e1dbe95704e0e806e0cedc5fd370a385351fef565c7bae0917baf3a29aa4";
-      }
-    else throw "cudatoolkit does not support platform ${stdenv.system}";
-
-  outputs = [ "out" "sdk" ];
-
-  buildInputs = [ perl ];
-
-  runtimeDependencies = [
-    ncurses expat python zlib
-    xlibs.libX11 xlibs.libXext xlibs.libXrender xlibs.libXt xlibs.libXtst xlibs.libXi xlibs.libXext
-    gtk2 glib fontconfig freetype unixODBC alsaLib
-  ];
-
-  rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
-
-  unpackPhase = ''
-    sh $src --keep --noexec
-    cd pkg/run_files
-    sh cuda-linux64-rel-5.5.22-16488124.run --keep --noexec
-    sh cuda-samples-linux-5.5.22-16488124.run --keep --noexec
-    cd pkg
-  '';
-
-  buildPhase = ''
-    find . -type f -executable -exec patchelf \
-      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      '{}' \; || true
-    find . -type f -exec patchelf \
-      --set-rpath $rpath:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64:$(cat $NIX_CC/nix-support/orig-cc)/lib \
-      --force-rpath \
-      '{}' \; || true
-  '';
-
-  installPhase = ''
-    mkdir $out $sdk
-    perl ./install-linux.pl --prefix="$out"
-    rm $out/tools/CUDA_Occupancy_Calculator.xls
-    perl ./install-sdk-linux.pl --prefix="$sdk" --cudaprefix="$out"
-    mv $out/include $out/usr_include
-  '';
-
-  setupHook = ./setup-hook.sh;
-
-  meta = {
-    license = lib.licenses.unfree;
-  };
-}
+callPackage ./generic.nix (args // rec {
+  version = "5.5.22";
+  sha256 = "b997e1dbe95704e0e806e0cedc5fd370a385351fef565c7bae0917baf3a29aa4";
+})
diff --git a/pkgs/development/compilers/cudatoolkit/6.0.nix b/pkgs/development/compilers/cudatoolkit/6.0.nix
index 49a52fe5d32e..200311703a0a 100644
--- a/pkgs/development/compilers/cudatoolkit/6.0.nix
+++ b/pkgs/development/compilers/cudatoolkit/6.0.nix
@@ -1,63 +1,6 @@
-{ lib, stdenv, fetchurl, patchelf, perl, ncurses, expat, python, zlib
-, xlibs, gtk2, glib, fontconfig, freetype, unixODBC, alsaLib
-} :
-
-stdenv.mkDerivation rec {
-  name = "cudatoolkit-6.0.37";
-
-  dontPatchELF = true;
-  dontStrip = true;
-
-  src =
-    if stdenv.system == "x86_64-linux" then
-      fetchurl {
-        url = http://developer.download.nvidia.com/compute/cuda/6_0/rel/installers/cuda_6.0.37_linux_64.run;
-        sha256 = "991e436c7a6c94ec67cf44204d136adfef87baa3ded270544fa211179779bc40";
-      }
-    else throw "cudatoolkit does not support platform ${stdenv.system}";
-
-  outputs = [ "out" "sdk" ];
-
-  buildInputs = [ perl ];
-
-  runtimeDependencies = [
-    ncurses expat python zlib
-    xlibs.libX11 xlibs.libXext xlibs.libXrender xlibs.libXt xlibs.libXtst xlibs.libXi xlibs.libXext
-    gtk2 glib fontconfig freetype unixODBC alsaLib
-  ];
-
-  rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
-
-  unpackPhase = ''
-    sh $src --keep --noexec
-    cd pkg/run_files
-    sh cuda-linux64-rel-6.0.37-18176142.run --keep --noexec
-    sh cuda-samples-linux-6.0.37-18176142.run --keep --noexec
-    cd pkg
-  '';
-
-  buildPhase = ''
-    find . -type f -executable -exec patchelf \
-      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      '{}' \; || true
-    find . -type f -exec patchelf \
-      --set-rpath $rpath:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64:$(cat $NIX_CC/nix-support/orig-cc)/lib \
-      --force-rpath \
-      '{}' \; || true
-  '';
-
-  installPhase = ''
-    mkdir $out $sdk
-    perl ./install-linux.pl --prefix="$out"
-    rm $out/tools/CUDA_Occupancy_Calculator.xls
-    perl ./install-sdk-linux.pl --prefix="$sdk" --cudaprefix="$out"
-    mv $out/include $out/usr_include
-  '';
-
-  setupHook = ./setup-hook.sh;
-
-  meta = {
-    license = lib.licenses.unfree;
-  };
-}
+{ callPackage, ... } @ args:
 
+callPackage ./generic.nix (args // rec {
+  version = "6.0.37";
+  sha256 = "991e436c7a6c94ec67cf44204d136adfef87baa3ded270544fa211179779bc40";
+})
diff --git a/pkgs/development/compilers/cudatoolkit/6.5.nix b/pkgs/development/compilers/cudatoolkit/6.5.nix
index 268e8e7aeaeb..3d9a3a503494 100644
--- a/pkgs/development/compilers/cudatoolkit/6.5.nix
+++ b/pkgs/development/compilers/cudatoolkit/6.5.nix
@@ -1,69 +1,6 @@
-{ lib, stdenv, fetchurl, patchelf, perl, ncurses, expat, python, zlib
-, xlibs, gtk2, glib, fontconfig, freetype, unixODBC, alsaLib, glibc
-}:
-
-let version = "6.5.19"; in
-
-stdenv.mkDerivation rec {
-  name = "cudatoolkit-${version}";
-
-  dontPatchELF = true;
-  dontStrip = true;
-
-  src =
-    if stdenv.system == "x86_64-linux" then
-      fetchurl {
-        url = "http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_${version}_linux_64.run";
-        sha256 = "1x9zdmk8z784d3d35vr2ak1l4h5v4jfjhpxfi9fl9dvjkcavqyaj";
-      }
-    else throw "cudatoolkit does not support platform ${stdenv.system}";
-
-  outputs = [ "out" "sdk" ];
-
-  buildInputs = [ perl ];
-
-  runtimeDependencies = [
-    glibc
-    ncurses expat python zlib
-    xlibs.libX11 xlibs.libXext xlibs.libXrender xlibs.libXt xlibs.libXtst xlibs.libXi xlibs.libXext
-    gtk2 glib fontconfig freetype unixODBC alsaLib
-  ];
-
-  rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
-
-  unpackPhase = ''
-    sh $src --keep --noexec
-    cd pkg/run_files
-    sh cuda-linux64-rel-${version}-*.run --keep --noexec
-    sh cuda-samples-linux-${version}-*.run --keep --noexec
-    cd pkg
-  '';
-
-  buildPhase = ''
-    find . -type f -executable -exec patchelf \
-      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-      '{}' \; || true
-    find . -type f -exec patchelf \
-      --set-rpath $rpath:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64:$(cat $NIX_CC/nix-support/orig-cc)/lib \
-      --force-rpath \
-      '{}' \; || true
-  '';
-
-  installPhase = ''
-    mkdir $out $sdk
-    perl ./install-linux.pl --prefix="$out"
-    rm $out/tools/CUDA_Occupancy_Calculator.xls
-    perl ./install-sdk-linux.pl --prefix="$sdk" --cudaprefix="$out"
-    mv $out/include $out/usr_include
-
-    # let's remove the 32-bit libraries, they confuse the lib64->lib mover
-    rm -rf $out/lib
-  '';
-
-  setupHook = ./setup-hook.sh;
-
-  meta = {
-    license = lib.licenses.unfree;
-  };
-}
+{ callPackage, ... } @ args:
 
+callPackage ./generic.nix (args // rec {
+  version = "6.5.19";
+  sha256 = "1x9zdmk8z784d3d35vr2ak1l4h5v4jfjhpxfi9fl9dvjkcavqyaj";
+})
diff --git a/pkgs/development/compilers/cudatoolkit/7.0.nix b/pkgs/development/compilers/cudatoolkit/7.0.nix
new file mode 100644
index 000000000000..152dd6e92743
--- /dev/null
+++ b/pkgs/development/compilers/cudatoolkit/7.0.nix
@@ -0,0 +1,7 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "7.0.28";
+  sha256 = "1km5hpiimx11jcazg0h3mjzk220klwahs2vfqhjavpds5ff2wafi";
+  url = "http://developer.download.nvidia.com/compute/cuda/7_0/Prod/local_installers/cuda_7.0.28_linux.run";
+})
diff --git a/pkgs/development/compilers/cudatoolkit/generic.nix b/pkgs/development/compilers/cudatoolkit/generic.nix
new file mode 100644
index 000000000000..c42c80579870
--- /dev/null
+++ b/pkgs/development/compilers/cudatoolkit/generic.nix
@@ -0,0 +1,73 @@
+{ lib, stdenv, fetchurl, patchelf, perl, ncurses, expat, python, zlib
+, xlibs, gtk2, glib, fontconfig, freetype, unixODBC, alsaLib, glibc
+# generic inputs
+, version, sha256, url ? null, ...
+} :
+
+let
+  # eg, 5.5.22 => 5_5
+  mkShort = let str  = stdenv.lib.strings;
+                take = stdenv.lib.lists.take;
+            in v: str.concatStringsSep "_" (take 2 (str.splitString "." v));
+  shortVer = mkShort version;
+in stdenv.mkDerivation rec {
+  name = "cudatoolkit-${version}";
+
+  dontPatchELF = true;
+  dontStrip = true;
+
+  src =
+    if stdenv.system == "x86_64-linux" then
+      fetchurl {
+        url = if url != null then url else "http://developer.download.nvidia.com/compute/cuda/${shortVer}/rel/installers/cuda_${version}_linux_64.run";
+        sha256 = sha256;
+      }
+    else throw "cudatoolkit does not support platform ${stdenv.system}";
+
+  outputs = [ "out" "sdk" ];
+
+  buildInputs = [ perl ];
+
+  runtimeDependencies = [
+    ncurses expat python zlib glibc
+    xlibs.libX11 xlibs.libXext xlibs.libXrender xlibs.libXt xlibs.libXtst xlibs.libXi xlibs.libXext
+    gtk2 glib fontconfig freetype unixODBC alsaLib
+  ];
+
+  rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc}/lib64";
+
+  unpackPhase = ''
+    sh $src --keep --noexec
+    cd pkg/run_files
+    sh cuda-linux64-rel-${version}-*.run --keep --noexec
+    sh cuda-samples-linux-${version}-*.run --keep --noexec
+    cd pkg
+  '';
+
+  buildPhase = ''
+    find . -type f -executable -exec patchelf \
+      --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+      '{}' \; || true
+    find . -type f -exec patchelf \
+      --set-rpath $rpath:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64:$(cat $NIX_CC/nix-support/orig-cc)/lib \
+      --force-rpath \
+      '{}' \; || true
+  '';
+
+  installPhase = ''
+    mkdir $out $sdk
+    perl ./install-linux.pl --prefix="$out"
+    rm $out/tools/CUDA_Occupancy_Calculator.xls
+    perl ./install-sdk-linux.pl --prefix="$sdk" --cudaprefix="$out"
+    mv $out/include $out/usr_include
+
+    # let's remove the 32-bit libraries, they confuse the lib64->lib mover
+    rm -rf $out/lib
+  '';
+
+  setupHook = ./setup-hook.sh;
+
+  meta = {
+    license = lib.licenses.unfree;
+  };
+}
diff --git a/pkgs/development/compilers/ghc/7.10.2.nix b/pkgs/development/compilers/ghc/7.10.2.nix
new file mode 100644
index 000000000000..df951271a315
--- /dev/null
+++ b/pkgs/development/compilers/ghc/7.10.2.nix
@@ -0,0 +1,56 @@
+{ stdenv, fetchurl, fetchpatch, ghc, perl, gmp, ncurses, libiconv }:
+
+let
+
+  buildMK = ''
+    libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-libraries="${gmp}/lib"
+    libraries/integer-gmp_CONFIGURE_OPTS += --configure-option=--with-gmp-includes="${gmp}/include"
+    libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-includes="${ncurses}/include"
+    libraries/terminfo_CONFIGURE_OPTS += --configure-option=--with-curses-libraries="${ncurses}/lib"
+    ${stdenv.lib.optionalString stdenv.isDarwin ''
+      libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-includes="${libiconv}/include"
+      libraries/base_CONFIGURE_OPTS += --configure-option=--with-iconv-libraries="${libiconv}/lib"
+    ''}
+  '';
+
+in
+
+stdenv.mkDerivation rec {
+  version = "7.10.1.20150630";
+  name = "ghc-${version}";
+
+  src = fetchurl {
+    url = "https://downloads.haskell.org/~ghc/7.10.2-rc2/${name}-src.tar.xz";
+    sha256 = "1wxf7jkkgpvvrg3q311c4rca4vsxrqrmnrqg4j4klgj445yj82gb";
+  };
+
+  buildInputs = [ ghc perl ];
+
+  enableParallelBuilding = true;
+
+  preConfigure = ''
+    echo >mk/build.mk "${buildMK}"
+    sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
+  '' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
+    export NIX_LDFLAGS="$NIX_LDFLAGS -rpath $out/lib/ghc-${version}"
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    export NIX_LDFLAGS+=" -no_dtrace_dof"
+  '';
+
+  configureFlags = [
+    "--with-gcc=${stdenv.cc}/bin/cc"
+    "--with-gmp-includes=${gmp}/include" "--with-gmp-libraries=${gmp}/lib"
+  ];
+
+  # required, because otherwise all symbols from HSffi.o are stripped, and
+  # that in turn causes GHCi to abort
+  stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!stdenv.isDarwin) "--keep-file-symbols";
+
+  meta = {
+    homepage = "http://haskell.org/ghc";
+    description = "The Glasgow Haskell Compiler";
+    maintainers = with stdenv.lib.maintainers; [ marcweber andres simons ];
+    inherit (ghc.meta) license platforms;
+  };
+
+}
diff --git a/pkgs/development/compilers/ghc/head.nix b/pkgs/development/compilers/ghc/head.nix
index bc59a53bc175..c92f002a0262 100644
--- a/pkgs/development/compilers/ghc/head.nix
+++ b/pkgs/development/compilers/ghc/head.nix
@@ -17,14 +17,14 @@ let
 in
 
 stdenv.mkDerivation rec {
-  version = "7.11.20150607";
+  version = "7.11.20150705";
   name = "ghc-${version}";
-  rev = "89223ce1340654455a9f3aa9cbf25f30884227fd";
+  rev = "3fabb71a559b493efdfb5bb91907f6a0f696a114";
 
   src = fetchgit {
     url = "git://git.haskell.org/ghc.git";
     inherit rev;
-    sha256 = "1qsv2n5js21kqphq92xlyc91f11fnr9sh1glqzsirc8xr60dg5cs";
+    sha256 = "1c0fsk2yk08x02n6s722d36igc9prrql4wcnr8m8c62wp4yrf25z";
   };
 
   postUnpack = ''
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index 80f7ea8cc3ca..96843abbd450 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "sbcl-${version}";
-  version = "1.2.12";
+  version = "1.2.13";
 
   src = fetchurl {
     url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "1bf98wi3gz8n09prwmxa38b2mhq69rqq11s9h9swi3avy5wchnxn";
+    sha256 = "018jxd7f39a5aimjzfjdj739m3jq82k0qi59032v48gqrfa3mng6";
   };
 
   buildInputs = [ which ]
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index d8e052d98eaa..c70fb5c0bc77 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -135,6 +135,7 @@ self: super: {
   });
 
   # The Haddock phase fails for one reason or another.
+  acme-one = dontHaddock super.acme-one;
   attoparsec-conduit = dontHaddock super.attoparsec-conduit;
   base-noprelude = dontHaddock super.base-noprelude;
   blaze-builder-conduit = dontHaddock super.blaze-builder-conduit;
@@ -330,6 +331,7 @@ self: super: {
   bitx-bitcoin = dontCheck super.bitx-bitcoin;          # http://hydra.cryp.to/build/926187/log/raw
   concurrent-dns-cache = dontCheck super.concurrent-dns-cache;
   dbus = dontCheck super.dbus;                          # http://hydra.cryp.to/build/498404/log/raw
+  digitalocean-kzs = dontCheck super.digitalocean-kzs;  # https://github.com/KazumaSATO/digitalocean-kzs/issues/1
   hadoop-rpc = dontCheck super.hadoop-rpc;              # http://hydra.cryp.to/build/527461/nixlog/2/raw
   hasql = dontCheck super.hasql;                        # http://hydra.cryp.to/build/502489/nixlog/4/raw
   hjsonschema = overrideCabal super.hjsonschema (drv: { testTarget = "local"; });
@@ -344,14 +346,15 @@ self: super: {
   raven-haskell = dontCheck super.raven-haskell;        # http://hydra.cryp.to/build/502053/log/raw
   riak = dontCheck super.riak;                          # http://hydra.cryp.to/build/498763/log/raw
   scotty-binding-play = dontCheck super.scotty-binding-play;
+  serversession-backend-redis = dontCheck super.serversession-backend-redis;
   slack-api = dontCheck super.slack-api;                # https://github.com/mpickering/slack-api/issues/5
+  socket = dontCheck super.socket;
   stackage = dontCheck super.stackage;                  # http://hydra.cryp.to/build/501867/nixlog/1/raw
   textocat-api = dontCheck super.textocat-api;          # http://hydra.cryp.to/build/887011/log/raw
   warp = dontCheck super.warp;                          # http://hydra.cryp.to/build/501073/nixlog/5/raw
   wreq = dontCheck super.wreq;                          # http://hydra.cryp.to/build/501895/nixlog/1/raw
   wreq-sb = dontCheck super.wreq-sb;                    # http://hydra.cryp.to/build/783948/log/raw
   wuss = dontCheck super.wuss;                          # http://hydra.cryp.to/build/875964/nixlog/2/raw
-  serversession-backend-redis = dontCheck super.serversession-backend-redis;
 
   # https://github.com/NICTA/digit/issues/3
   digit = dontCheck super.digit;
@@ -626,6 +629,7 @@ self: super: {
 
   # https://github.com/srijs/hwsl2/issues/1
   hwsl2 = markBroken super.hwsl2;
+  hwsl2-reducers = dontDistribute super.hwsl2-reducers;
 
   # https://code.google.com/p/linux-music-player/issues/detail?id=1
   mp = markBroken super.mp;
@@ -794,9 +798,6 @@ self: super: {
   # Patch to consider NIX_GHC just like xmonad does
   dyre = appendPatch super.dyre ./dyre-nix.patch;
 
-  # https://github.com/gwern/mueval/issues/9
-  mueval = appendPatch (appendPatch super.mueval ./mueval-fix.patch) ./mueval-nix.patch;
-
   # Test suite won't compile against tasty-hunit 0.9.x.
   zlib = dontCheck super.zlib;
 
@@ -820,6 +821,7 @@ self: super: {
   # https://github.com/goldfirere/singletons/issues/118
   clash-lib = dontDistribute super.clash-lib;
   clash-verilog = dontDistribute super.clash-verilog;
+  Frames = dontDistribute super.Frames;
   hgeometry = dontDistribute super.hgeometry;
   hipe = dontDistribute super.hipe;
   singleton-nats = dontDistribute super.singleton-nats;
@@ -898,4 +900,11 @@ self: super: {
   # https://github.com/commercialhaskell/stack/issues/409
   stack = overrideCabal super.stack (drv: { preCheck = "export HOME=$TMPDIR"; doCheck = false; });
 
+  # Missing dependency on some hid-usb library.
+  hid = markBroken super.hid;
+  msi-kb-backlit = dontDistribute super.msi-kb-backlit;
+
+  # Hydra no longer allows building texlive packages.
+  lhs2tex = dontDistribute super.lhs2tex;
+
 }
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index 2bf10c605af3..8c8dc0961ab7 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -1547,6 +1547,7 @@ self: {
          hscolour lens mtl pandoc pandoc-citeproc pandoc-types parsec
          process split strict temporary transformers
        ];
+       jailbreak = true;
        homepage = "http://byorgey.wordpress.com/blogliterately/";
        description = "A tool for posting Haskelly articles to blogs";
        license = "GPL";
@@ -1567,6 +1568,7 @@ self: {
          base BlogLiterately containers diagrams-builder diagrams-lib
          diagrams-rasterific directory filepath JuicyPixels pandoc safe
        ];
+       jailbreak = true;
        description = "Include images in blog posts with inline diagrams code";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -2300,13 +2302,12 @@ self: {
      }:
      mkDerivation {
        pname = "Chart";
-       version = "1.4";
-       sha256 = "1pcrbsxv9n9285ihvir62znm2rqfjk913fiv1q5c8ijgjzicfnl2";
+       version = "1.5";
+       sha256 = "1h40322g9nj8hlya6iw9dgvvgzbq816v36vm2vz0lii586j0nqyx";
        buildDepends = [
          array base colour data-default-class lens mtl old-locale
          operational time vector
        ];
-       jailbreak = true;
        homepage = "https://github.com/timbod7/haskell-chart/wiki";
        description = "A library for generating 2D Charts and Plots";
        license = stdenv.lib.licenses.bsd3;
@@ -2318,34 +2319,33 @@ self: {
      }:
      mkDerivation {
        pname = "Chart-cairo";
-       version = "1.4";
-       sha256 = "1s407l8mnczkah708ajpp9mvra3yp2ajyczl0gf8bgd9fq23dp4f";
+       version = "1.5";
+       sha256 = "19p4fg12r91jhhifwlda6rqm2bm0x6bz2fv3dqr2ni1y3cz7v56c";
        buildDepends = [
          array base cairo Chart colour data-default-class lens mtl
          old-locale operational time
        ];
-       jailbreak = true;
        homepage = "https://github.com/timbod7/haskell-chart/wiki";
        description = "Cairo backend for Charts";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "Chart-diagrams" = callPackage
-    ({ mkDerivation, base, blaze-svg, bytestring, Chart, colour
+    ({ mkDerivation, base, blaze-markup, bytestring, Chart, colour
      , containers, data-default-class, diagrams-core, diagrams-lib
-     , diagrams-postscript, diagrams-svg, lens, mtl, old-locale
-     , operational, SVGFonts, text, time
+     , diagrams-postscript, diagrams-svg, lens, lucid-svg, mtl
+     , old-locale, operational, SVGFonts, text, time
      }:
      mkDerivation {
        pname = "Chart-diagrams";
-       version = "1.4";
-       sha256 = "0qg8kva68394zdd8h0p8zkyjwnl2i6avl2ybr96kqr76iyh3x28k";
+       version = "1.5";
+       sha256 = "1i6l6gvy4vlw98b2r5wr5c7dzp01jwca6c5y0pgq663fnp1pwjph";
        buildDepends = [
-         base blaze-svg bytestring Chart colour containers
+         base blaze-markup bytestring Chart colour containers
          data-default-class diagrams-core diagrams-lib diagrams-postscript
-         diagrams-svg lens mtl old-locale operational SVGFonts text time
+         diagrams-svg lens lucid-svg mtl old-locale operational SVGFonts
+         text time
        ];
-       jailbreak = true;
        homepage = "https://github.com/timbod7/haskell-chart/wiki";
        description = "Diagrams backend for Charts";
        license = stdenv.lib.licenses.bsd3;
@@ -2358,8 +2358,8 @@ self: {
      }:
      mkDerivation {
        pname = "Chart-gtk";
-       version = "1.4";
-       sha256 = "1ig132jv3djwnd7lnizbxkwj3f1ngaj775j10vbb1dbq8x8bi2hy";
+       version = "1.5";
+       sha256 = "1iwr31ri4f24yxnmg101y30sg3a03nrmp5nr2id2r471c0f4x2gy";
        buildDepends = [
          array base cairo Chart Chart-cairo colour data-default-class gtk
          mtl old-locale time
@@ -2524,14 +2524,17 @@ self: {
      }) {};
 
   "ClustalParser" = callPackage
-    ({ mkDerivation, base, cmdargs, parsec }:
+    ({ mkDerivation, base, cmdargs, either-unwrap, hspec, parsec
+     , vector
+     }:
      mkDerivation {
        pname = "ClustalParser";
-       version = "1.0.3";
-       sha256 = "148ibig9nlv6n4qqwch2hqikbhwhkhi2hw4f0xwkvmj3vd3ag8s2";
+       version = "1.1.2";
+       sha256 = "03bkhffbzypcrcssa8hhy23rwxjg5b3qf0j1xwssqar34lp465vi";
        isLibrary = true;
        isExecutable = true;
-       buildDepends = [ base cmdargs parsec ];
+       buildDepends = [ base cmdargs either-unwrap parsec vector ];
+       testDepends = [ base hspec parsec ];
        description = "Libary for parsing Clustal tools output";
        license = "GPL";
      }) {};
@@ -3089,6 +3092,19 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "DCFL" = callPackage
+    ({ mkDerivation, base, HUnit, random }:
+     mkDerivation {
+       pname = "DCFL";
+       version = "0.1.0.0";
+       sha256 = "0nq2nihvgn84ijd9y41a42wl05wwqb70k1r63yfbm6qbmlzw6vns";
+       buildDepends = [ base HUnit random ];
+       jailbreak = true;
+       homepage = "https://github.com/Poincare/DCFL";
+       description = "Communication Free Learning-based constraint solver";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "DMuCheck" = callPackage
     ({ mkDerivation, base, binary, directory, distributed-process
      , distributed-process-simplelocalnet, hint, MuCheck
@@ -3979,16 +3995,16 @@ self: {
      }) {};
 
   "Earley" = callPackage
-    ({ mkDerivation, base, containers, ListLike, tasty, tasty-hunit
+    ({ mkDerivation, base, ListLike, tasty, tasty-hunit
      , tasty-quickcheck, unordered-containers
      }:
      mkDerivation {
        pname = "Earley";
-       version = "0.8.1";
-       sha256 = "0bzm6pwim3fv0d1fv6k3078661vlpc0pcrds4ywsqvgc4hd91myk";
+       version = "0.8.3";
+       sha256 = "0czdpgyxw3n0603hmd8kl8dnz9800df1lnkkf8a95cjd8nx3k8fv";
        isLibrary = true;
        isExecutable = true;
-       buildDepends = [ base containers ListLike unordered-containers ];
+       buildDepends = [ base ListLike unordered-containers ];
        testDepends = [ base tasty tasty-hunit tasty-quickcheck ];
        description = "Parsing all context-free grammars using Earley's algorithm";
        license = stdenv.lib.licenses.bsd3;
@@ -4923,6 +4939,24 @@ self: {
        license = "LGPL";
      }) {};
 
+  "Frames" = callPackage
+    ({ mkDerivation, base, ghc-prim, pipes, primitive, readable
+     , template-haskell, text, transformers, vector, vinyl
+     }:
+     mkDerivation {
+       pname = "Frames";
+       version = "0.1.0.0";
+       sha256 = "1c154mv72nc81qghz3fmcymh2zlixpqhafibdmh0vl4srf0jzqcr";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base ghc-prim pipes primitive readable template-haskell text
+         transformers vector vinyl
+       ];
+       description = "Data frames For working with tabular data files";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "Frank" = callPackage
     ({ mkDerivation, base, mtl, newtype, she, void }:
      mkDerivation {
@@ -5483,8 +5517,8 @@ self: {
     ({ mkDerivation, base, directory, extra, old-time, process }:
      mkDerivation {
        pname = "GiveYouAHead";
-       version = "0.2.2.0";
-       sha256 = "0qq2kiv9rbch4ps9hsxic9ip0c8z92i0v7hq6vc49hmizdj136ch";
+       version = "0.2.2.3";
+       sha256 = "10f9yl62gwnjmb0mbfffdzhwscpwpvq9gj52zsrz8w6z6sbkijbf";
        buildDepends = [ base directory extra old-time process ];
        homepage = "https://github.com/Qinka/GiveYouAHead/";
        description = "to auto-do somethings";
@@ -8631,18 +8665,17 @@ self: {
      }:
      mkDerivation {
        pname = "IPv6Addr";
-       version = "0.6.0.1";
-       sha256 = "199pgv4y3932i585ak4sa78zvy1w49699lcs18836brvy10b2ch0";
+       version = "0.6.0.2";
+       sha256 = "0qzrida38n92ngrrnmjpdg3vinjjscijz8fsfr7lyffaw55k6pld";
        buildDepends = [
          attoparsec base iproute network network-info random text
        ];
        testDepends = [
          base HUnit test-framework test-framework-hunit text
        ];
-       jailbreak = true;
        homepage = "https://github.com/MichelBoucey/IPv6Addr";
        description = "Library to deal with IPv6 address text representations";
-       license = stdenv.lib.licenses.gpl3;
+       license = stdenv.lib.licenses.bsd3;
      }) {};
 
   "IcoGrid" = callPackage
@@ -13380,10 +13413,8 @@ self: {
      }:
      mkDerivation {
        pname = "SciFlow";
-       version = "0.1.0";
-       revision = "2";
-       sha256 = "0r87hzdpzbmwmh9dg0pnfrbnr1g3x67mgh9f2l96n8mjq7r0sipd";
-       editedCabalFile = "52e1139eb94d0223f664010e71f334a9c04a3e94c4bfbbd7c66069dc931242da";
+       version = "0.2.0";
+       sha256 = "1cvh5c5mj5jy02ky2hjkf7bkjy9wx2187dmf9d71wby9ymklg8ng";
        buildDepends = [
          base bytestring data-default-class mtl shelly template-haskell text
          unordered-containers yaml
@@ -13922,23 +13953,25 @@ self: {
   "Spock" = callPackage
     ({ mkDerivation, aeson, base, base64-bytestring, bytestring
      , case-insensitive, containers, directory, hashable, hspec
-     , hspec-wai, http-types, monad-control, mtl, old-locale
-     , path-pieces, random, reroute, resource-pool, resourcet, stm, text
-     , time, transformers, transformers-base, unordered-containers
-     , vault, wai, wai-extra, warp
+     , hspec-wai, http-types, list-t, monad-control, mtl, old-locale
+     , path-pieces, random, reroute, resource-pool, resourcet, stm
+     , stm-containers, text, time, transformers, transformers-base
+     , unordered-containers, vault, wai, wai-extra, warp
      }:
      mkDerivation {
        pname = "Spock";
-       version = "0.7.9.0";
-       sha256 = "1dlpirivgiqihj9fxvm8yry7d3yiprjn85fbl1w6dqvq4fdsjv9x";
+       version = "0.7.10.0";
+       sha256 = "0agis3cy6ijynbzgwyc2wd08db16yz0qhcjj41l6d7a6804ns8nj";
        buildDepends = [
          aeson base base64-bytestring bytestring case-insensitive containers
-         directory hashable http-types monad-control mtl old-locale
-         path-pieces random reroute resource-pool resourcet stm text time
-         transformers transformers-base unordered-containers vault wai
-         wai-extra warp
+         directory hashable http-types list-t monad-control mtl old-locale
+         path-pieces random reroute resource-pool resourcet stm
+         stm-containers text time transformers transformers-base
+         unordered-containers vault wai wai-extra warp
+       ];
+       testDepends = [
+         base hspec hspec-wai http-types reroute stm text wai
        ];
-       testDepends = [ base hspec hspec-wai http-types reroute text wai ];
        homepage = "http://www.spock.li";
        description = "Another Haskell web framework for rapid development";
        license = stdenv.lib.licenses.bsd3;
@@ -15140,14 +15173,13 @@ self: {
      }) {};
 
   "ViennaRNAParser" = callPackage
-    ({ mkDerivation, base, parsec }:
+    ({ mkDerivation, base, hspec, parsec, process }:
      mkDerivation {
        pname = "ViennaRNAParser";
-       version = "1.0.1";
-       revision = "2";
-       sha256 = "0j4vcbbw0f1khrqna33b1dfs4fadfk53arsj8ndjzcwp0za58ji0";
-       editedCabalFile = "312de9a09fbd46cd8785a4761d369ddd022b2589096b857cafa0b4ee610426e0";
-       buildDepends = [ base parsec ];
+       version = "1.2.2";
+       sha256 = "19ck0rgf4zxvk11zhfd0sbvjqln11cg4bzfp5z8zbqdnywhiqinw";
+       buildDepends = [ base parsec process ];
+       testDepends = [ base hspec parsec ];
        description = "Libary for parsing ViennaRNA package output";
        license = "GPL";
      }) {};
@@ -15978,6 +16010,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "Yampa-core" = callPackage
+    ({ mkDerivation, base, deepseq, random, vector-space }:
+     mkDerivation {
+       pname = "Yampa-core";
+       version = "0.2.0";
+       sha256 = "06mgmnj8zsnfzg3li3nw4a5lmiz0jkc4hxzilwhh1r84qiki72xp";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [ base deepseq random vector-space ];
+       testDepends = [ base ];
+       homepage = "https://github.com/ony/Yampa-core";
+       description = "Library for programming hybrid systems";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "YampaSynth" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, HCodecs
      , Yampa
@@ -16202,8 +16249,8 @@ self: {
     ({ mkDerivation, base, parsec, prettify, process, semigroups }:
      mkDerivation {
        pname = "abcnotation";
-       version = "1.8.1";
-       sha256 = "18qb8qdlfi3r8vv8aagsz65iv2clyj9lzn0q29m4gpvzgncsn22n";
+       version = "1.9.0";
+       sha256 = "0vmpgdqasnhj0fbb5wl7ikxmp6kzrlnbixp2yj4x93mh8vrrsk40";
        buildDepends = [ base parsec prettify process semigroups ];
        description = "Haskell representation and parser for ABC notation";
        license = stdenv.lib.licenses.bsd3;
@@ -16734,6 +16781,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "acme-flipping-tables" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "acme-flipping-tables";
+       version = "0";
+       sha256 = "1xl5gwc67acg47fdkgrn7sjvvvnc4sjf5vifph0jb3c7gv93n757";
+       buildDepends = [ base ];
+       homepage = "http://github.com/jystic/acme-flipping-tables";
+       description = "Stop execution with rage";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "acme-hq9plus" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -17943,8 +18002,8 @@ self: {
     ({ mkDerivation, array, base, containers, mtl, random, vector }:
      mkDerivation {
        pname = "aivika";
-       version = "4.1";
-       sha256 = "1w7xj3yjhdgldd1x1cfz7allsxycq0kcdpx46idl665dss2mvj5r";
+       version = "4.1.1";
+       sha256 = "1sxrd9qip3vwq0sxbbm1f5fa5g41xj0raszzv2agag80qyph3ayj";
        buildDepends = [ array base containers mtl random vector ];
        homepage = "http://github.com/dsorokin/aivika";
        description = "A multi-paradigm simulation library";
@@ -18062,8 +18121,8 @@ self: {
     ({ mkDerivation, base, c2hs, mtl, openal }:
      mkDerivation {
        pname = "al";
-       version = "0.1.3.2";
-       sha256 = "0hjxcgblzcx4nfckyr7p0lfxr5csx5d96gcrbrmh0fbdddz1nqpc";
+       version = "0.1.4";
+       sha256 = "1jr707fhsl1jvjidaznxj7xsi6br2v7gzckfhvcrmicd4i98yg1q";
        buildDepends = [ base mtl ];
        buildTools = [ c2hs ];
        pkgconfigDepends = [ openal ];
@@ -19429,6 +19488,29 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "android-lint-summary" = callPackage
+    ({ mkDerivation, base, basic-prelude, data-default, directory
+     , filemanip, hspec, hxt, lens, mtl, optparse-applicative
+     , QuickCheck, rainbow, stringable, terminal-size, text
+     }:
+     mkDerivation {
+       pname = "android-lint-summary";
+       version = "0.2.1";
+       sha256 = "1sk2mfxfbj6bbsff89jch1x7rhag2yv5331qhal50qf1q7fvzgx1";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base basic-prelude data-default directory filemanip hxt lens mtl
+         optparse-applicative rainbow stringable terminal-size text
+       ];
+       testDepends = [
+         base basic-prelude directory hspec hxt QuickCheck stringable
+       ];
+       homepage = "https://github.com/passy/android-lint-summary";
+       description = "A pretty printer for Android Lint errors";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "angel" = callPackage
     ({ mkDerivation, base, configurator, containers, hspec, mtl
      , old-locale, optparse-applicative, process, stm, text, time
@@ -19437,7 +19519,9 @@ self: {
      mkDerivation {
        pname = "angel";
        version = "0.6.1";
+       revision = "1";
        sha256 = "1wkllv4ziggj3smhghdk5qsgccds9d69rhx1gi079ph7z533w2dc";
+       editedCabalFile = "05dc467ec31281499d5902a77b957243d03ff87e0e4b51aaaa78306049560f28";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -20062,6 +20146,7 @@ self: {
          apiary base bytestring data-default-class filepath Glob parsec
          purescript text transformers types-compat unordered-containers
        ];
+       jailbreak = true;
        homepage = "https://github.com/philopon/apiary";
        description = "purescript compiler for apiary web framework";
        license = stdenv.lib.licenses.mit;
@@ -20153,9 +20238,9 @@ self: {
      mkDerivation {
        pname = "app-lens";
        version = "0.1.0.0";
-       revision = "1";
+       revision = "2";
        sha256 = "0gizjnc7x1ggryfrm4d87xiyjz9yw6c5y3zp23x40bgmw49zl318";
-       editedCabalFile = "a143bd5aec7a06285e0ef56e76f31e0d8b69f277da57ce4d88a7688355ca86a6";
+       editedCabalFile = "29d9e8cabf54f27b1ccf007530fe698c0895c0bb6a2a6da50b71fafd4c27bd6d";
        buildDepends = [ base containers lens mtl ];
        jailbreak = true;
        homepage = "https://bitbucket.org/kztk/app-lens";
@@ -20668,18 +20753,18 @@ self: {
      }) {};
 
   "arithmoi" = callPackage
-    ({ mkDerivation, array, base, containers, ghc-prim, integer-gmp
-     , mtl, random
+    ({ mkDerivation, array, base, containers, ghc-prim, hspec
+     , integer-gmp, mtl, random
      }:
      mkDerivation {
        pname = "arithmoi";
-       version = "0.4.1.2";
-       sha256 = "0i0cndldf426cc8dv6swqfnljv9lgba9vp1ac4xk0vdbmbwqan9m";
+       version = "0.4.1.3";
+       sha256 = "1j8k0hqg5ddglw9lpbp3qg81s1g01sil1grizlrqfgwx0wj3jqif";
        buildDepends = [
          array base containers ghc-prim integer-gmp mtl random
        ];
+       testDepends = [ base hspec ];
        configureFlags = [ "-f-llvm" ];
-       jailbreak = true;
        homepage = "https://github.com/cartazio/arithmoi";
        description = "Efficient basic number-theoretic functions. Primes, powers, integer logarithms.";
        license = stdenv.lib.licenses.mit;
@@ -22055,18 +22140,19 @@ self: {
      }) {};
 
   "autonix-deps" = callPackage
-    ({ mkDerivation, base, bytestring, conduit, containers, errors
-     , filepath, lens, libarchive-conduit, mtl, optparse-applicative
-     , process, regex-tdfa, resourcet, transformers, xml
+    ({ mkDerivation, aeson, aeson-pretty, base, bytestring, conduit
+     , containers, errors, filepath, lens, libarchive-conduit, mtl
+     , optparse-applicative, process, regex-tdfa, resourcet, semigroups
+     , text, transformers, xml
      }:
      mkDerivation {
        pname = "autonix-deps";
-       version = "0.2.0.0";
-       sha256 = "067q10wdzzv2xv2yak15bxysc935ghgrsm5nq90pfmzmwcv3323a";
+       version = "0.3.0.0";
+       sha256 = "0mp2v6wdm4nlagg3z9xmxd9dfkchazgvbgdphm1nfqzkg8w7ralv";
        buildDepends = [
-         base bytestring conduit containers errors filepath lens
-         libarchive-conduit mtl optparse-applicative process regex-tdfa
-         resourcet transformers xml
+         aeson aeson-pretty base bytestring conduit containers errors
+         filepath lens libarchive-conduit mtl optparse-applicative process
+         regex-tdfa resourcet semigroups text transformers xml
        ];
        description = "Library for Nix expression dependency generation";
        license = stdenv.lib.licenses.bsd3;
@@ -22074,17 +22160,17 @@ self: {
 
   "autonix-deps-kf5" = callPackage
     ({ mkDerivation, autonix-deps, base, bytestring, conduit
-     , containers, filepath, lens, mtl, transformers
+     , containers, filepath, lens, mtl, text, transformers
      }:
      mkDerivation {
        pname = "autonix-deps-kf5";
-       version = "0.2.0.1";
-       sha256 = "11azj8cl5g8fz0bzdh1z1alv9ljdzhgvkb8qr5y0dfsjbbyhz5v0";
+       version = "0.3.0.0";
+       sha256 = "0njmgx2x6018ca1r2xvbi3pq0rigqm4fjkk33q5kzacvmv5ni461";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          autonix-deps base bytestring conduit containers filepath lens mtl
-         transformers
+         text transformers
        ];
        description = "Generate dependencies for KDE 5 Nix expressions";
        license = stdenv.lib.licenses.bsd3;
@@ -22121,10 +22207,11 @@ self: {
     ({ mkDerivation, base, semigroups, vector-space }:
      mkDerivation {
        pname = "average";
-       version = "0.6";
-       sha256 = "0ag2jxhxap8wzdlb23zvly5y09k6kh134rwdxq6dqxlqwfwhsyc9";
+       version = "0.6.1";
+       revision = "1";
+       sha256 = "13qkgkwdcb09s69wzhd3b6dl1nm66lv2hqb51gmr4s64ylgf0a9h";
+       editedCabalFile = "90c8c1d4ece76a1f1b43f1a6bef7ba15340a2bec8e2efbb465884d6b50b5d174";
        buildDepends = [ base semigroups vector-space ];
-       jailbreak = true;
        description = "An average (arithmetic mean) monoid";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -22152,6 +22239,7 @@ self: {
          rethinkdb-client-driver scrypt stm text time unordered-containers
          vector
        ];
+       jailbreak = true;
        description = "empty";
        license = stdenv.lib.licenses.gpl3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -22308,8 +22396,8 @@ self: {
      }:
      mkDerivation {
        pname = "aws-dynamodb-conduit";
-       version = "0.1.0.5";
-       sha256 = "1s1dxk0489vnb0v6kr0b74265cc0ih84pm80ajg8111blabx8kgf";
+       version = "0.1.0.6";
+       sha256 = "15svx7c8nld8bgwqwy5mwkbniz4c1ifw2rw427gwk7y2py1hq38p";
        buildDepends = [
          aeson attoparsec-trans aws base bytestring conduit containers
          http-conduit http-types json-togo resourcet text transformers
@@ -23298,8 +23386,8 @@ self: {
     ({ mkDerivation, base, ghc-prim, hspec }:
      mkDerivation {
        pname = "base-orphans";
-       version = "0.3.3";
-       sha256 = "1z1xjlk056lfs4na430zw8ckc3b0k5hfn1i0i46i8ny40w8r85pk";
+       version = "0.4.0";
+       sha256 = "06knj296mkhbmfr0b12pfvhzr0bk8p1avabh1llwmx67nnn41r5i";
        buildDepends = [ base ghc-prim ];
        testDepends = [ base hspec ];
        homepage = "https://github.com/haskell-compat/base-orphans#readme";
@@ -26417,8 +26505,8 @@ self: {
      }:
      mkDerivation {
        pname = "blaze-textual";
-       version = "0.2.0.9";
-       sha256 = "1gwy1pjnc2ikxfxn9c751rnydry1hmlfk13k29xnns9vwglf81f0";
+       version = "0.2.1.0";
+       sha256 = "0bbcykkrlgdb6jaz72njriq9if6bzsx52jn26k093f5sn1d7jhhh";
        buildDepends = [
          base blaze-builder bytestring ghc-prim integer-gmp old-locale text
          time vector
@@ -26604,6 +26692,45 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "blubber" = callPackage
+    ({ mkDerivation, base, blubber-server, bytestring, cereal
+     , containers, gloss, network, unix
+     }:
+     mkDerivation {
+       pname = "blubber";
+       version = "0.0.1";
+       sha256 = "0bc30pw6gvw7i6gh58hhkgx2j432zlh2wh4d41abnkjqygifsxsd";
+       isLibrary = false;
+       isExecutable = true;
+       buildDepends = [
+         base blubber-server bytestring cereal containers gloss network unix
+       ];
+       homepage = "https://secure.plaimi.net/games/blubber.html";
+       description = "The blubber client; connects to the blubber server";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
+  "blubber-server" = callPackage
+    ({ mkDerivation, base, Cabal, cereal, containers
+     , data-default-class, network, pandoc, process, random, scotty
+     , text, transformers, unix
+     }:
+     mkDerivation {
+       pname = "blubber-server";
+       version = "0.0.1";
+       sha256 = "12f594sl2c2hrxr95bpv911x0bdfpmaflp29mhw2yln2vh64nhj5";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base Cabal cereal containers data-default-class network pandoc
+         process random scotty text transformers unix
+       ];
+       jailbreak = true;
+       homepage = "https://secure.plaimi.net/games/blubber.html";
+       description = "The blubber server, serves blubber clients";
+       license = stdenv.lib.licenses.agpl3;
+     }) {};
+
   "bluetile" = callPackage
     ({ mkDerivation, base, ConfigFile, containers, directory, filepath
      , glade, gtk, mtl, process, random, regex-compat, unix, utf8-string
@@ -27564,8 +27691,8 @@ self: {
      }:
      mkDerivation {
        pname = "bustle";
-       version = "0.5.0";
-       sha256 = "0wj3abvkpalr40zyqwxi2bwgrfzmnjjg7y577qj2fzv8l5bl2mn0";
+       version = "0.5.1";
+       sha256 = "1mj8zxwjbp35pdslnssb9hz6mr3wapslfr3g265s5gk9kn8iqq06";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -29658,8 +29785,8 @@ self: {
      }:
      mkDerivation {
        pname = "casadi-bindings";
-       version = "2.3.0.0";
-       sha256 = "0znzn73c6cc7jyj460djlhzydkw9jqxhjm62kiz5pv2j7bvpv7aw";
+       version = "2.3.0.1";
+       sha256 = "1a1644lwzarfcjgnhzyi7lp0xhxmzm80h6nini6bcgkm4g4c9h4q";
        buildDepends = [
          base binary casadi-bindings-core casadi-bindings-internal cereal
          containers linear vector vector-binary-instances
@@ -29693,8 +29820,8 @@ self: {
     ({ mkDerivation, base, casadi, casadi-bindings-internal, vector }:
      mkDerivation {
        pname = "casadi-bindings-core";
-       version = "2.3.0.0";
-       sha256 = "1n892agqknwjs2paszafp6b1xgiz8zfmlxqb2wm0d99487175lcv";
+       version = "2.3.0.1";
+       sha256 = "0agzm3bqb3fii626m40684g7hahj2mhv60xx0smhw78z978cqw57";
        buildDepends = [ base casadi-bindings-internal vector ];
        pkgconfigDepends = [ casadi ];
        description = "autogenerated low level bindings to casadi";
@@ -30136,8 +30263,8 @@ self: {
      }:
      mkDerivation {
        pname = "cblrepo";
-       version = "0.17.0";
-       sha256 = "1q9x31aahm8sr8lnrcdavy2lzi46qh12q3k10hprq7lr3w41ls7d";
+       version = "0.17.1";
+       sha256 = "0yp2z0dpw19r6av71ghlp1pzal7276wlywsmjz5xmkggy04v1xnj";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -30577,21 +30704,20 @@ self: {
   "cgrep" = callPackage
     ({ mkDerivation, ansi-terminal, array, base, bytestring, cmdargs
      , containers, directory, dlist, either, filepath, ghc-prim, mtl
-     , regex-posix, safe, split, stm, stringsearch, unix
+     , regex-posix, safe, split, stm, stringsearch, unix-compat
      , unordered-containers
      }:
      mkDerivation {
        pname = "cgrep";
-       version = "6.4.12";
-       sha256 = "1iaq554dx21zdphmry9iarakfispv16sa7fp7pf3n764q4jznq47";
+       version = "6.4.15";
+       sha256 = "1i01a4d835yqry9xz10ch4b0522avd1cwp18gf2capmcx49rllvq";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
          ansi-terminal array base bytestring cmdargs containers directory
          dlist either filepath ghc-prim mtl regex-posix safe split stm
-         stringsearch unix unordered-containers
+         stringsearch unix-compat unordered-containers
        ];
-       jailbreak = true;
        homepage = "http://awgn.github.io/cgrep/";
        description = "Command line tool";
        license = stdenv.lib.licenses.gpl2;
@@ -30764,6 +30890,7 @@ self: {
        version = "1.0.0";
        sha256 = "130jbbbb1spkbqapxys0bqr0spq6c03x1m259alg5wxnl8xnn4w5";
        buildDepends = [ base Chart ];
+       jailbreak = true;
        description = "Easily render histograms with Chart";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -31645,8 +31772,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-ghc";
-       version = "0.5.7";
-       sha256 = "0bia1yqww40prj2n6x4chvfkx05la73056mlpsgilakxwqsab2m7";
+       version = "0.5.9";
+       sha256 = "0rrxql03bdkpna0i8giz1yyq7cr829gchnijlci243aldh8jwwkb";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -31672,8 +31799,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-lib";
-       version = "0.5.6";
-       sha256 = "1dgcnxzk7l7hywv1p268xrm2dfbgfgcvjs5w14vmsfxv1rfzkad0";
+       version = "0.5.8";
+       sha256 = "1cb48q96sx2zr35brc6cywv76wj3vsk24yy5j64k16j1743gh45k";
        buildDepends = [
          aeson attoparsec base bytestring clash-prelude concurrent-supply
          containers deepseq directory errors fgl filepath hashable lens mtl
@@ -31686,17 +31813,17 @@ self: {
      }) {};
 
   "clash-prelude" = callPackage
-    ({ mkDerivation, base, data-default, doctest, ghc-prim
+    ({ mkDerivation, array, base, data-default, doctest, ghc-prim
      , ghc-typelits-natnormalise, Glob, integer-gmp, lens, QuickCheck
      , singletons, template-haskell, th-lift
      }:
      mkDerivation {
        pname = "clash-prelude";
-       version = "0.8.1";
-       sha256 = "1xxjahk78a73jbavd4fwgljdsb23s44z0jdv29n6mdi86bzsn24h";
+       version = "0.9.1";
+       sha256 = "00d4ap4jfw1298g59sfywkjza33s5p5p4n2nc69anwc31lxqnss8";
        buildDepends = [
-         base data-default ghc-prim ghc-typelits-natnormalise integer-gmp
-         lens QuickCheck singletons template-haskell th-lift
+         array base data-default ghc-prim ghc-typelits-natnormalise
+         integer-gmp lens QuickCheck singletons template-haskell th-lift
        ];
        testDepends = [ base doctest Glob ];
        homepage = "http://www.clash-lang.org/";
@@ -31724,8 +31851,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-systemverilog";
-       version = "0.5.5";
-       sha256 = "1dks6saxp24xm478bgx2bkzx4qq6yv79f92z8kw6a2y29c3bjfrg";
+       version = "0.5.7";
+       sha256 = "0s8yqs4h5abamfrawfw95q9p0h8ni98pwyqr76nkvkrybxwykam5";
        buildDepends = [
          base clash-lib clash-prelude fgl lens mtl text unordered-containers
          wl-pprint-text
@@ -31742,8 +31869,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-verilog";
-       version = "0.5.5";
-       sha256 = "0wjnjdl9slcrxnd0vz7m6y5jhs6gcaij7f9jjrgfcljq4wmk05rf";
+       version = "0.5.7";
+       sha256 = "04wa7y108hk2bn453dwrr1x71bvxx48hivdpqxsx0gyhya14143j";
        buildDepends = [
          base clash-lib clash-prelude fgl lens mtl text unordered-containers
          wl-pprint-text
@@ -31759,8 +31886,8 @@ self: {
      }:
      mkDerivation {
        pname = "clash-vhdl";
-       version = "0.5.6";
-       sha256 = "02pjy1l3irn67jaqy6sp2a8cjy2sw100kssyd0nxsz9k0imjzizy";
+       version = "0.5.7.1";
+       sha256 = "1p1lmy07hfzj4wb7f68y03zvih2i8skb2sca9pqj64d6yszqmll8";
        buildDepends = [
          base clash-lib clash-prelude fgl lens mtl text unordered-containers
          wl-pprint-text
@@ -31808,8 +31935,8 @@ self: {
      }:
      mkDerivation {
        pname = "classy-prelude";
-       version = "0.12.0.1";
-       sha256 = "0ny5cxkzbjhhsmypsp4sjm7nm0jv2l2kysgcphm6j1l3dr0ck6il";
+       version = "0.12.1.1";
+       sha256 = "04rxmh4jzj4j5dx9i8ndh9ibn01cjdi485n1xvjngx0gs7zqa2k7";
        buildDepends = [
          base basic-prelude bifunctors bytestring chunked-data containers
          dlist enclosed-exceptions exceptions ghc-prim hashable lifted-base
@@ -31832,8 +31959,8 @@ self: {
      }:
      mkDerivation {
        pname = "classy-prelude-conduit";
-       version = "0.12.0";
-       sha256 = "0sby5lbk16f7q3dd3qisv67m1bsgx9v99iwb95crbql3ghi99za1";
+       version = "0.12.0.1";
+       sha256 = "1xv20i31f1za88kkdd00vin9shn9zxhqmwd0ln62cag4xfrmh9xi";
        buildDepends = [
          base bytestring classy-prelude conduit conduit-combinators
          monad-control resourcet transformers void
@@ -31853,8 +31980,8 @@ self: {
      }:
      mkDerivation {
        pname = "classy-prelude-yesod";
-       version = "0.12.0";
-       sha256 = "00w932g8pcv76qd16fjr93vaipnr02p3m5j8zhyqy1w9frc6pnqx";
+       version = "0.12.0.1";
+       sha256 = "00pzlsbsdajzdlna1flrdd1lb98g0vx2b9757m8kfa37h6l443r2";
        buildDepends = [
          aeson base classy-prelude classy-prelude-conduit data-default
          http-conduit http-types persistent yesod yesod-newsfeed
@@ -32337,12 +32464,13 @@ self: {
      }) {};
 
   "clock" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, tasty, tasty-quickcheck }:
      mkDerivation {
        pname = "clock";
-       version = "0.4.6.0";
-       sha256 = "0xrkw13dixj5pv79l10bl0z51kmplbkg30rhbykzx2imvv9rxixr";
+       version = "0.5.1";
+       sha256 = "1ncph7vi2q6ywwc8ysxl1ibw6i5dwfvln88ssfazk8jgpj4iyykw";
        buildDepends = [ base ];
+       testDepends = [ base tasty tasty-quickcheck ];
        homepage = "https://github.com/corsis/clock";
        description = "High-resolution clock functions: monotonic, realtime, cputime";
        license = stdenv.lib.licenses.bsd3;
@@ -32535,8 +32663,8 @@ self: {
      }:
      mkDerivation {
        pname = "clustering";
-       version = "0.2.0";
-       sha256 = "0w4glyq1f5ksdjbicq8b0vy0dvnxz6h44dp5iza6gignmxi703as";
+       version = "0.2.1";
+       sha256 = "1jxrgb13zm8bqcsx39fp31lrpna3y0pn7ckcf9q6gljz327c4y2h";
        buildDepends = [
          base binary containers matrices mwc-random parallel primitive
          vector
@@ -33015,23 +33143,24 @@ self: {
   "coinbase-exchange" = callPackage
     ({ mkDerivation, aeson, aeson-casing, base, base64-bytestring
      , byteable, bytestring, conduit, conduit-extra, cryptohash, deepseq
-     , hashable, http-client, http-client-tls, http-conduit, http-types
-     , mtl, network, old-locale, resourcet, scientific, tasty
-     , tasty-hunit, tasty-quickcheck, tasty-th, text, time, transformers
-     , transformers-base, uuid, uuid-aeson, vector, websockets, wuss
+     , exceptions, hashable, http-client, http-client-tls, http-conduit
+     , http-types, mtl, network, old-locale, resourcet, scientific
+     , tasty, tasty-hunit, tasty-quickcheck, tasty-th, text, time
+     , transformers, transformers-base, uuid, uuid-aeson, vector
+     , websockets, wuss
      }:
      mkDerivation {
        pname = "coinbase-exchange";
-       version = "0.2.0.0";
-       sha256 = "1x9cgdj38z1zhrx464rj3qhh8rxqs98mfpqfsnn5yill037p1ig8";
+       version = "0.2.0.2";
+       sha256 = "0mh95pfzdvfqy1frwsqi9fi1wgs1nk1xkzijh1pyjm2paqxzynn2";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          aeson aeson-casing base base64-bytestring byteable bytestring
-         conduit conduit-extra cryptohash deepseq hashable http-client
-         http-client-tls http-conduit http-types mtl network old-locale
-         resourcet scientific text time transformers transformers-base uuid
-         uuid-aeson vector websockets wuss
+         conduit conduit-extra cryptohash deepseq exceptions hashable
+         http-client http-client-tls http-conduit http-types mtl network
+         old-locale resourcet scientific text time transformers
+         transformers-base uuid uuid-aeson vector websockets wuss
        ];
        testDepends = [
          base bytestring http-client-tls http-conduit old-locale tasty
@@ -33779,8 +33908,8 @@ self: {
     ({ mkDerivation, base, contravariant }:
      mkDerivation {
        pname = "composition-extra";
-       version = "1.0.0.1";
-       sha256 = "0i7jzn3grc23nhnp1i4ppbh30nq8pvfn35vz2vdfsivmaa5fnp5v";
+       version = "1.1.0";
+       sha256 = "1mkm0m08g9q6d8vfz33kj5lz0gnwlkmsnj4r5ar4p3slf2kaybz1";
        buildDepends = [ base contravariant ];
        description = "Combinators for unorthodox structure composition";
        license = stdenv.lib.licenses.bsd3;
@@ -35875,10 +36004,9 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "counter";
-       version = "0.1.0.0";
-       sha256 = "1wqbk40izzb6wfwk1qprnqgm5f9mhs2xm7pl1ks8ajv4hdpkrnik";
+       version = "0.1.0.1";
+       sha256 = "0pfg34ph6b7qb3wscvvnqdkqqzkjdjc8wynv35ikgf295bsf3kaz";
        buildDepends = [ base containers ];
-       jailbreak = true;
        homepage = "https://github.com/wei2912/counter";
        description = "An object frequency counter";
        license = stdenv.lib.licenses.mit;
@@ -36118,8 +36246,8 @@ self: {
      }:
      mkDerivation {
        pname = "cql-io";
-       version = "0.14.2";
-       sha256 = "093x4fdvc4rcklcaar49p2c9yghyr6lmmddakfbadzz18aksnq8m";
+       version = "0.14.3";
+       sha256 = "1yg1w4lbfjdj3hfsg8zvr4ajq5v0byvysmwl50355jppmxvgacrn";
        buildDepends = [
          async auto-update base bytestring containers cql cryptohash
          data-default-class exceptions hashable iproute lens monad-control
@@ -36128,7 +36256,7 @@ self: {
        ];
        homepage = "https://github.com/twittner/cql-io/";
        description = "Cassandra CQL client";
-       license = "unknown";
+       license = stdenv.lib.licenses.mpl20;
      }) {};
 
   "cqrs" = callPackage
@@ -38491,6 +38619,18 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "data-cell" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "data-cell";
+       version = "1.0.0.1";
+       sha256 = "0x8laijzcglgg5rxk4516f8qiy6825djkxjwyyk35w44ikwv1gxj";
+       buildDepends = [ base ];
+       homepage = "https://github.com/zadarnowski/data-cell";
+       description = "Generic cellular data representation library";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "data-checked" = callPackage
     ({ mkDerivation, base, deepseq }:
      mkDerivation {
@@ -40955,7 +41095,9 @@ self: {
      mkDerivation {
        pname = "descriptive";
        version = "0.0.2";
+       revision = "3";
        sha256 = "0jh0l4assmqsmq9ajsbdl7vn8k6srl0z27kpxwzg1v0nmkkcl48p";
+       editedCabalFile = "0aeae1dd5ab8c21ade57c1e036600b8162cd790823618a9c5894417ba68e2ea2";
        buildDepends = [
          aeson base bifunctors containers mtl text transformers
        ];
@@ -40970,8 +41112,8 @@ self: {
      }:
      mkDerivation {
        pname = "descriptive";
-       version = "0.9.3";
-       sha256 = "1kb6fca7fsg82ij6zlc85p9mfaxr3l5z45sjjcx6zvli1lknmqz0";
+       version = "0.9.4";
+       sha256 = "0bxskc4q6jzpvifnhh6zl77xic0fbni8abf9lipfr1xzarbwcpkr";
        buildDepends = [
          aeson base bifunctors containers mtl scientific text transformers
          vector
@@ -40995,6 +41137,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "deterministic-game-engine" = callPackage
+    ({ mkDerivation, base, hspec }:
+     mkDerivation {
+       pname = "deterministic-game-engine";
+       version = "0.1.0.0";
+       sha256 = "0kapl7s59ma8dmip3rd9cvcd4d8gvq0b7r9sflqs8nchs09njhr2";
+       buildDepends = [ base ];
+       testDepends = [ base hspec ];
+       homepage = "https://github.com/TGOlson/deterministic-game-engine";
+       description = "Simple deterministic game engine";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "detrospector" = callPackage
     ({ mkDerivation, base, binary, bytestring, cmdargs, containers
      , hashable, mwc-random, text, unordered-containers, zlib
@@ -41181,6 +41336,7 @@ self: {
          lucid-svg mtl split transformers
        ];
        configureFlags = [ "-fcairo" "-fps" "-frasterific" "-fsvg" ];
+       jailbreak = true;
        homepage = "http://projects.haskell.org/diagrams";
        description = "hint-based build service for the diagrams graphics EDSL";
        license = stdenv.lib.licenses.bsd3;
@@ -41874,10 +42030,9 @@ self: {
     ({ mkDerivation, base, digestive-functors, lucid, text }:
      mkDerivation {
        pname = "digestive-functors-lucid";
-       version = "0.0.0.2";
-       sha256 = "0ijpfcvsfgb67faqh4nbjvfab8kwc70xcp27a4rdzy9rvkvvhh82";
+       version = "0.0.0.3";
+       sha256 = "1f9vlyh20b4qr7q324mxpkn7wbfp3h80il79rwqd5s5n1xx8ryhm";
        buildDepends = [ base digestive-functors lucid text ];
-       jailbreak = true;
        homepage = "http://github.com/jaspervdj/digestive-functors";
        description = "Lucid frontend for the digestive-functors library";
        license = stdenv.lib.licenses.bsd3;
@@ -41938,8 +42093,8 @@ self: {
      }:
      mkDerivation {
        pname = "digitalocean-kzs";
-       version = "0.1.0.0";
-       sha256 = "0y6n5s285aywjiwq6haxw0siy45crmkv3jj43gfx5svhgs72wfma";
+       version = "0.1.0.3";
+       sha256 = "0w1gbh84sbaab4gn9avjqmwd29rzv0b2dyxqqg22vq1da8g3bzng";
        buildDepends = [
          aeson base bytestring HTTP http-conduit http-types text
          transformers
@@ -43183,6 +43338,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "dockerfile" = callPackage
+    ({ mkDerivation, base, hspec }:
+     mkDerivation {
+       pname = "dockerfile";
+       version = "0.1.0.1";
+       sha256 = "0980w0fh5xb7azknnmph6rmnzswsjw360ga5ymds2valq2vc0ji9";
+       buildDepends = [ base ];
+       testDepends = [ base hspec ];
+       description = "A simple DSL for describing and generating Dockerfile containers in Haskell";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "docopt" = callPackage
     ({ mkDerivation, aeson, ansi-terminal, base, bytestring, containers
      , parsec, split, template-haskell, th-lift
@@ -45003,19 +45170,19 @@ self: {
 
   "egison" = callPackage
     ({ mkDerivation, array, base, containers, directory, filepath, ghc
-     , ghc-paths, Glob, haskeline, HUnit, mtl, parsec, random
-     , regex-posix, strict-io, test-framework, test-framework-hunit
-     , text, transformers, unordered-containers
+     , ghc-paths, Glob, haskeline, HUnit, mtl, parsec, process, random
+     , regex-tdfa, test-framework, test-framework-hunit, text
+     , transformers, unordered-containers
      }:
      mkDerivation {
        pname = "egison";
-       version = "3.5.6";
-       sha256 = "12czzd8ncpyq13d26syb9z9qz9112irwzymja80kgahy2j55vwly";
+       version = "3.5.9";
+       sha256 = "16d3c4r72f6hv8v7zbcqwjjc1c53895kxjn1m61d2fhz8gmb8yq0";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          array base containers directory filepath ghc ghc-paths haskeline
-         mtl parsec random regex-posix strict-io text transformers
+         mtl parsec process random regex-tdfa text transformers
          unordered-containers
        ];
        testDepends = [
@@ -45023,7 +45190,7 @@ self: {
          transformers
        ];
        homepage = "http://www.egison.org";
-       description = "Programming language with non-linear pattern-matching against unfree data";
+       description = "Programming language with non-linear pattern-matching against non-free data";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -45044,17 +45211,17 @@ self: {
   "egison-tutorial" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , egison, filepath, ghc, ghc-paths, haskeline, mtl, parsec
-     , regex-posix, strict-io, transformers, unordered-containers
+     , regex-posix, transformers, unordered-containers
      }:
      mkDerivation {
        pname = "egison-tutorial";
-       version = "3.5.1";
-       sha256 = "1an7rlk5gf80n38h29akwrnhh6d2hzvg5l2ig13rr3i2n51gjybx";
+       version = "3.5.9";
+       sha256 = "1ay9m7ibl2z19yq9pd3fwghbyki6cawg3w9x42dllncjrwxwlh4m";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
          array base bytestring containers directory egison filepath ghc
-         ghc-paths haskeline mtl parsec regex-posix strict-io transformers
+         ghc-paths haskeline mtl parsec regex-posix transformers
          unordered-containers
        ];
        homepage = "http://www.egison.org";
@@ -45907,8 +46074,8 @@ self: {
      }:
      mkDerivation {
        pname = "engine-io";
-       version = "1.2.7";
-       sha256 = "0giqsx1wknhp5a1dg72wl48j56h38jzc3pw6w8pfhngpc0spl3gf";
+       version = "1.2.9";
+       sha256 = "0ral95ywkni205gmn2q58fpibaf4a1y5dxawkc5rq5j0wnmh465j";
        buildDepends = [
          aeson async attoparsec base base64-bytestring bytestring either
          free monad-loops mwc-random stm stm-delay text transformers
@@ -46168,6 +46335,25 @@ self: {
        license = stdenv.lib.licenses.bsd2;
      }) {};
 
+  "envy" = callPackage
+    ({ mkDerivation, base, bytestring, containers, hspec, mtl
+     , QuickCheck, quickcheck-instances, text, time, transformers
+     }:
+     mkDerivation {
+       pname = "envy";
+       version = "0.2.0.0";
+       sha256 = "0hi9nlrr2g32f4cp3ibmdvmqmqhbyps5d9f0v7612fbxhimqrkbq";
+       buildDepends = [
+         base bytestring containers mtl text time transformers
+       ];
+       testDepends = [
+         base bytestring hspec mtl QuickCheck quickcheck-instances text time
+         transformers
+       ];
+       description = "An environmentally friendly way to deal with environment variables";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "epanet-haskell" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -46691,8 +46877,8 @@ self: {
      }:
      mkDerivation {
        pname = "esqueleto";
-       version = "2.2.6";
-       sha256 = "079yiq5idkwvcmjc75m24smyf4f0cvmy2f537v0dx8dgi6nqpr62";
+       version = "2.2.7";
+       sha256 = "1i5gm1riirz8wq2zr2a2fxlnxa7c5rrvywyigbx2gla9xi07dzs6";
        buildDepends = [
          base conduit monad-logger persistent resourcet tagged text
          transformers unordered-containers
@@ -46773,8 +46959,10 @@ self: {
      }:
      mkDerivation {
        pname = "etcd";
-       version = "1.0.4";
-       sha256 = "0s08gryqhvcjvyq3swp2p753xqny3swgni17a2pbdjq300krx8kn";
+       version = "1.0.5";
+       revision = "1";
+       sha256 = "0bqz678mnpw2jpywz2m76923cyq864xn537a9zsqhm6c80gc0vwi";
+       editedCabalFile = "5cdbbc8d2aedc68e82e7c4d0cface390c3c68fb7ee7fb162d8123e42351f98fa";
        buildDepends = [ aeson base bytestring http-conduit text time ];
        testDepends = [ async base hspec MonadRandom mtl text ];
        description = "Client for etcd, a highly-available key value store";
@@ -47185,8 +47373,10 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "exceptional";
-       version = "0.1.4.3";
-       sha256 = "0rhcqnpw97b9sy87nq7dqwiw8vl91h8yyix68d9sz10s9bi1xnlv";
+       version = "0.1.5.1";
+       revision = "1";
+       sha256 = "1fkz90d776z8fj8p3123ssqwxy9nmz4bgh9gn4nvg0xnvwzc069c";
+       editedCabalFile = "a79514b512d8776f9ae66a80aeb3f604ac9ae1d4c5c98fdd9ea2acc8c312adda";
        buildDepends = [ base ];
        homepage = "https://github.com/pharpend/exceptional";
        description = "Essentially the Maybe type with error messages";
@@ -47218,8 +47408,8 @@ self: {
      }:
      mkDerivation {
        pname = "executable-hash";
-       version = "0.2.0.0";
-       sha256 = "0g733akm65rjdl5mncfyhnqncan985n02vzn0z02689aq8dnav4p";
+       version = "0.2.0.2";
+       sha256 = "103s0095bb71wz3axhzw2w2nm5wfr01r9ypkdvbp22zhmq3xr1bj";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -47304,15 +47494,17 @@ self: {
      }) {};
 
   "exp-pairs" = callPackage
-    ({ mkDerivation, base, ghc-prim, matrix, memoize, QuickCheck
-     , random, smallcheck, tasty, tasty-hunit, tasty-quickcheck
-     , tasty-smallcheck
+    ({ mkDerivation, base, deepseq, generic-deriving, ghc-prim, matrix
+     , memoize, QuickCheck, random, smallcheck, tasty, tasty-hunit
+     , tasty-quickcheck, tasty-smallcheck, wl-pprint
      }:
      mkDerivation {
        pname = "exp-pairs";
-       version = "0.1.2.0";
-       sha256 = "0iz22m8m4pk87xnpdgklw9d6ycf8s3sblyz8g78ykyvf0bf347zs";
-       buildDepends = [ base ghc-prim memoize ];
+       version = "0.1.3.0";
+       sha256 = "033sdkfg94m33qrkw0l3lbs6dm8ssxfdj3jg3p39w63q7va2c0hr";
+       buildDepends = [
+         base deepseq generic-deriving ghc-prim memoize wl-pprint
+       ];
        testDepends = [
          base matrix memoize QuickCheck random smallcheck tasty tasty-hunit
          tasty-quickcheck tasty-smallcheck
@@ -48104,8 +48296,8 @@ self: {
      }:
      mkDerivation {
        pname = "fay";
-       version = "0.23.1.6";
-       sha256 = "02c4lxqmgac95nr00qwwxmq5a0lf46fxjiq4nqc3r6giz2m7i9ik";
+       version = "0.23.1.7";
+       sha256 = "1yjpbbxxjz8hrqb3arcn74i9s936kr44zg2v27kxmhrin4lnrw4b";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -48916,6 +49108,7 @@ self: {
        version = "0.1.1.9";
        sha256 = "06bcj143j85p8m519zn88z6qn4bg5ifrw5pv5yva5x49gc3jq6gc";
        buildDepends = [ base bytestring clock directory zip-archive ];
+       jailbreak = true;
        homepage = "https://github.com/joelwilliamson/file-collection";
        description = "Provide a uniform interface over file archives and directories";
        license = stdenv.lib.licenses.bsd3;
@@ -48956,15 +49149,15 @@ self: {
      }) {};
 
   "file-location" = callPackage
-    ({ mkDerivation, base, containers, lifted-base, process
+    ({ mkDerivation, base, containers, HUnit, lifted-base, process
      , template-haskell, th-orphans, transformers
      }:
      mkDerivation {
        pname = "file-location";
-       version = "0.4.7.1";
-       sha256 = "0p4fj7jjsssn3bdn2z984q2wyngc6cfygbgprzndcw0bxqi78jl4";
+       version = "0.4.9";
+       sha256 = "1p0lz02pvlvq2781542ims3x5vcck35dw4g58bv16y96qarxwady";
        buildDepends = [
-         base containers lifted-base template-haskell th-orphans
+         base containers HUnit lifted-base template-haskell th-orphans
          transformers
        ];
        testDepends = [ base lifted-base process ];
@@ -49879,6 +50072,7 @@ self: {
        testDepends = [ base ];
        description = "Conversions between floating and integral values";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "floatshow" = callPackage
@@ -49949,14 +50143,13 @@ self: {
      }:
      mkDerivation {
        pname = "flowdock";
-       version = "0.3.0.0";
-       sha256 = "199n32q64gw6i381kn70x5avrh3r2al1nj3f90nibivpip886zgc";
+       version = "0.3.0.1";
+       sha256 = "1az9wwdng7i3jrjwizzz3690506b3vk1m8h2b96wf59r51qnpr6i";
        buildDepends = [
          aeson base base64-bytestring bytestring http-client http-client-tls
          lens lens-action mtl network pipes pipes-aeson pipes-http
          pipes-parse template-haskell text unordered-containers uuid
        ];
-       jailbreak = true;
        homepage = "https://github.com/brewtown/hs-flowdock";
        description = "Flowdock client library for Haskell";
        license = stdenv.lib.licenses.mit;
@@ -50071,8 +50264,8 @@ self: {
      }:
      mkDerivation {
        pname = "fluent-logger";
-       version = "0.2.3.0";
-       sha256 = "1zmkb36ki30chvjfabm1vn4xzixf8dk2y5ryy72as5c9n6xnkkkq";
+       version = "0.2.3.1";
+       sha256 = "0m97hljfrs5mh5pjbwvnw7b581y7w96qfyjr3d9p1aqbj6nsa6dp";
        buildDepends = [
          base bytestring cereal containers messagepack network
          network-socket-options random stm text time vector
@@ -50296,6 +50489,7 @@ self: {
        homepage = "http://github.com/joom/foma.hs";
        description = "Simple Haskell bindings for Foma";
        license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) { foma = null;};
 
   "font-opengl-basic4x6" = callPackage
@@ -51558,11 +51752,11 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "functor-infix";
-       version = "0.0.1";
-       sha256 = "1f8m4nxlr2il9j0ilgw91fhp6mmz5xqlhylavncqwvbcq82362dc";
+       version = "0.0.3";
+       sha256 = "1hpk1q58kwxdpva57hylpqj4ywk6grsi4ks2cqg6lspprqfi60gy";
        buildDepends = [ base template-haskell ];
        homepage = "https://github.com/fmap/functor-infix";
-       description = "Compositions of functors";
+       description = "Infix operators for mapping over compositions of functors. Lots of them.";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -51833,6 +52027,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "game-of-life" = callPackage
+    ({ mkDerivation, array, base, hscurses, random, text }:
+     mkDerivation {
+       pname = "game-of-life";
+       version = "0.1.0.4";
+       sha256 = "1d2hy2bb3dgzf3bj0p97hchsznzckirgws8cjm9qh5ba5mk0wl2z";
+       isLibrary = false;
+       isExecutable = true;
+       buildDepends = [ array base hscurses random text ];
+       jailbreak = true;
+       homepage = "http://github.com/marcusbuffett/game-of-life";
+       description = "Conway's Game of Life";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "game-probability" = callPackage
     ({ mkDerivation, base, containers, probability, random }:
      mkDerivation {
@@ -52151,6 +52360,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "genders" = callPackage
+    ({ mkDerivation, base, bytestring, filepath, genders, hspec
+     , network, vector
+     }:
+     mkDerivation {
+       pname = "genders";
+       version = "0.1.0.1";
+       sha256 = "0jl1sqj9syp31qcn3x6c0pjwj5ligirsc67ahzw2chgpf09bwh8g";
+       buildDepends = [ base bytestring filepath vector ];
+       testDepends = [ base bytestring hspec network vector ];
+       extraLibraries = [ genders ];
+       description = "Bindings to libgenders";
+       license = stdenv.lib.licenses.mit;
+     }) { genders = null;};
+
   "general-prelude" = callPackage
     ({ mkDerivation, base, lens, pointless-fun, strict, system-filepath
      }:
@@ -52212,8 +52436,8 @@ self: {
      }:
      mkDerivation {
        pname = "generic-aeson";
-       version = "0.2.0.6";
-       sha256 = "13jlr9dq3d0v9f7hjxq5qxs8llhj8mbnja14xjkxc28vdbnzv62l";
+       version = "0.2.0.7";
+       sha256 = "06qczarf6vzd9wr9ad685v69hvd88zfv5lhry0zkka2bcdqc5wqz";
        buildDepends = [
          aeson attoparsec base generic-deriving mtl tagged text
          unordered-containers vector
@@ -52265,8 +52489,8 @@ self: {
     ({ mkDerivation, base, ghc-prim, template-haskell }:
      mkDerivation {
        pname = "generic-deriving";
-       version = "1.7.0";
-       sha256 = "145bixg4jr0hhw32jznrvl4qjjk7bgjbxlfznqra1s1rnmcyr5v6";
+       version = "1.8.0";
+       sha256 = "1kc6lhdanls6kgpk8xv5xi14lz1sngcd8xn930hkf7ilq4kxkcr6";
        buildDepends = [ base ghc-prim template-haskell ];
        description = "Generic programming library for generalised deriving";
        license = stdenv.lib.licenses.bsd3;
@@ -52391,8 +52615,8 @@ self: {
      }:
      mkDerivation {
        pname = "generic-xmlpickler";
-       version = "0.1.0.2";
-       sha256 = "1nc7gi54y144ivgbv9qbyg143s4rvn4w514lgcb6z05sx7cyiajn";
+       version = "0.1.0.3";
+       sha256 = "11vbfsws5agqiv9x6pfh0z6kbvjx6i27wnp5dcjh40z4bz6bjdgy";
        buildDepends = [ base generic-deriving hxt text ];
        testDepends = [
          base hxt hxt-pickle-utils tasty tasty-hunit tasty-th
@@ -52666,20 +52890,20 @@ self: {
 
   "geojson" = callPackage
     ({ mkDerivation, aeson, base, bytestring, directory, doctest
-     , filepath, hlint, lens, QuickCheck, semigroups, text, transformers
-     , validation, vector
+     , filepath, hlint, lens, QuickCheck, semigroups, template-haskell
+     , text, transformers, validation, vector
      }:
      mkDerivation {
        pname = "geojson";
-       version = "1.2.0";
-       sha256 = "1i6fyqxqksq657nd3m19qk690l74j4frvsvwhbdyjs07rc0xvbli";
+       version = "1.3.0";
+       sha256 = "18fr5n3nmxlr97b7s9a5x1dx91fcg2fjfhlpxpcglkpwpkhabnqs";
        buildDepends = [
          aeson base lens semigroups text transformers validation vector
        ];
        testDepends = [
          base bytestring directory doctest filepath hlint QuickCheck
+         template-haskell
        ];
-       jailbreak = true;
        homepage = "https://github.com/domdere/hs-geojson";
        description = "A thin GeoJSON Layer above the aeson library";
        license = stdenv.lib.licenses.bsd3;
@@ -52738,8 +52962,8 @@ self: {
      }:
      mkDerivation {
        pname = "getopt-generics";
-       version = "0.7.1";
-       sha256 = "0jrnasd9lw7ffim0ski5b1mdislvs27n0i37lcbv51rgsl5wm458";
+       version = "0.7.1.1";
+       sha256 = "1zhglg3h6a6sx3chq9h6j2r279f2753j026mz8kb9v4lajj5vcn0";
        buildDepends = [
          base base-compat base-orphans generics-sop tagged
        ];
@@ -52766,31 +52990,34 @@ self: {
 
   "gf" = callPackage
     ({ mkDerivation, alex, array, base, bytestring, Cabal, cgi
-     , containers, directory, filepath, fst, happy, haskeline, HTF
-     , httpd-shed, HUnit, json, lifted-base, mtl, network, old-locale
-     , parallel, pretty, process, random, time, time-compat, unix
-     , utf8-string
+     , containers, directory, exceptions, filepath, happy, haskeline
+     , HTF, httpd-shed, HUnit, json, lifted-base, mtl, network
+     , network-uri, old-locale, parallel, pretty, process, random
+     , terminfo, time, time-compat, unix, utf8-string
      }:
      mkDerivation {
        pname = "gf";
-       version = "3.6";
-       revision = "2";
-       sha256 = "10s8vgca36jz7b9sbd3n1in13xifwc7h42qwd58yq1lvk3j1fizx";
-       editedCabalFile = "ad294ebcd390005a243fe6d2203ec51f7ca2ab87a7f2fa7e7e080f0d416cb6a8";
+       version = "3.7";
+       sha256 = "13y01s94pq466jjzb3czxr93bdfh43mvypqp176n0zfp2v9496nb";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
-         array base bytestring cgi containers directory filepath fst
-         haskeline httpd-shed json lifted-base mtl network old-locale
-         parallel pretty process random time time-compat unix utf8-string
+         array base bytestring cgi containers directory exceptions filepath
+         haskeline httpd-shed json lifted-base mtl network network-uri
+         old-locale parallel pretty process random terminfo time time-compat
+         unix utf8-string
        ];
        testDepends = [ base Cabal directory filepath HTF HUnit process ];
        buildTools = [ alex happy ];
-       jailbreak = true;
+       doCheck = false;
+       postPatch = ''
+         sed -i "s|\"-s\"|\"\"|" ./Setup.hs
+         sed -i "s|numJobs (bf bi)++||" ./Setup.hs
+       '';
+       preBuild = ''export LD_LIBRARY_PATH=`pwd`/dist/build:$LD_LIBRARY_PATH'';
        homepage = "http://www.grammaticalframework.org/";
        description = "Grammatical Framework";
        license = "unknown";
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ggtsTC" = callPackage
@@ -52832,14 +53059,14 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-core-html";
-       version = "0.1.2";
-       sha256 = "1yhyi99cbnfk2a65j9v6hinp0rpmc341z55dvqvli1wx5c9i7gf6";
+       version = "0.1.4";
+       sha256 = "1yx22p9572zg2nvmlilbmraqjmws2x47hmin2l9xd0dnck5qhy35";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
          base blaze-html bytestring containers mtl parsec process
        ];
-       homepage = "http://github.com/vincenthz/ghc-core-html";
+       homepage = "https://github.com/vincenthz/ghc-core-html";
        description = "Core to HTML display";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -54134,8 +54361,8 @@ self: {
      }:
      mkDerivation {
        pname = "gitit";
-       version = "0.10.7";
-       sha256 = "1gj94z2c2jpdm9bkfnc6wbyhipgbss0j70ql26hn8g3fh1ykcpbj";
+       version = "0.11";
+       sha256 = "1833rxx3c28rvjz1h1nnm0h838zl941zr51r3dp89zn59rs72hn9";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -54816,8 +55043,8 @@ self: {
      }:
      mkDerivation {
        pname = "glue";
-       version = "0.1.0.0";
-       sha256 = "1msdvm4a5arw4msp6km667sbvw830wsirvb0pxnjxrhnmy0h03gl";
+       version = "0.1.1.1";
+       sha256 = "1p93cv8c52dbw0lz48yjpfbrj48giyxrwmc9bymfpgjmynda4zab";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -56837,8 +57064,8 @@ self: {
     ({ mkDerivation, base, extra, GiveYouAHead }:
      mkDerivation {
        pname = "gyah-bin";
-       version = "0.2.2.0";
-       sha256 = "16yzkrn5q21nal07jlvzn84maxx94fyrn1lyljd7hazj2lkpcxvw";
+       version = "0.2.2.3";
+       sha256 = "19r2vsi5v43a3wq2vbfh2wfscmbzvcbyd1lqc2xdg4bbla9pf648";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [ base extra GiveYouAHead ];
@@ -58509,6 +58736,7 @@ self: {
          test-framework test-framework-hunit test-framework-quickcheck2 text
          time
        ];
+       jailbreak = true;
        homepage = "http://jaspervdj.be/hakyll";
        description = "A static website compiler library";
        license = stdenv.lib.licenses.bsd3;
@@ -58707,19 +58935,19 @@ self: {
      }) {};
 
   "halive" = callPackage
-    ({ mkDerivation, base, bin-package-db, directory, filepath
-     , foreign-store, fsnotify, ghc, ghc-paths, system-filepath
-     , transformers
+    ({ mkDerivation, base, bin-package-db, containers, directory
+     , filepath, foreign-store, fsnotify, ghc, ghc-paths
+     , system-filepath, transformers
      }:
      mkDerivation {
        pname = "halive";
-       version = "0.1.0.3";
-       sha256 = "1m2x50cpxffiywii26vl37lfi77yl7an5ln2h5anmkb3pmajdabc";
+       version = "0.1.0.5";
+       sha256 = "0rxcklxmfk6z9f3alvzszq7g5wik7x9nj43m4vvf6iw1nsjvk580";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
-         base bin-package-db directory filepath foreign-store fsnotify ghc
-         ghc-paths system-filepath transformers
+         base bin-package-db containers directory filepath foreign-store
+         fsnotify ghc ghc-paths system-filepath transformers
        ];
        homepage = "https://github.com/lukexi/halive";
        description = "A live recompiler";
@@ -60024,8 +60252,8 @@ self: {
      }:
      mkDerivation {
        pname = "hashable";
-       version = "1.2.3.2";
-       sha256 = "0h9295pv2sgbaqlwpwbx2bap6nngm0jcdhkqham1wpjwyxqgqrlc";
+       version = "1.2.3.3";
+       sha256 = "0kp4aj0x1iicz9qirpqxxqd8x5g1njbapxk1d90n406w3xykz4pw";
        buildDepends = [ base bytestring ghc-prim integer-gmp text ];
        testDepends = [
          base bytestring ghc-prim HUnit QuickCheck random test-framework
@@ -60048,6 +60276,7 @@ self: {
          base bifunctors bytestring generic-deriving hashable transformers
        ];
        testDepends = [ base directory doctest filepath ];
+       jailbreak = true;
        homepage = "http://github.com/analytics/hashable-extras/";
        description = "Higher-rank Hashable";
        license = stdenv.lib.licenses.bsd3;
@@ -60739,8 +60968,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-names";
-       version = "0.5.2";
-       sha256 = "0dxv33facklxyy6x9a3xxwv5avfzn6jbigl7zdd2zkvrr6rnz9zf";
+       version = "0.5.3";
+       sha256 = "066mh4qgldh8nspinm97695zdhw5hkpz9mmrnc2a0y0wblggq5sm";
        buildDepends = [
          aeson base bytestring Cabal containers data-lens-light filepath
          haskell-packages haskell-src-exts hse-cpp mtl tagged transformers
@@ -63296,8 +63525,8 @@ self: {
      }:
      mkDerivation {
        pname = "hdocs";
-       version = "0.4.2.1";
-       sha256 = "01pc60nc009ww52kwjx9chjx1vpr4y120dnci61vhr2ylxls1hd4";
+       version = "0.4.3.0";
+       sha256 = "10z4aq9f3gy6cqkhz0dxp0q3rr9625hka3c4w4cbczad2qgciiil";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -64048,8 +64277,8 @@ self: {
     ({ mkDerivation, base, hspec, network-uri, text }:
      mkDerivation {
        pname = "heroku";
-       version = "0.1.2.2";
-       sha256 = "0ixsdjxp3vpgsnx2cibyk80h7yjz7cgkcd3y8ggv8789s9bc4i77";
+       version = "0.1.2.3";
+       sha256 = "1gldsdpnmj7ljrmyvjfwqdmhhml2yp27icl2qqj9pz42pllq4x2k";
        buildDepends = [ base network-uri text ];
        testDepends = [ base hspec network-uri text ];
        homepage = "https://github.com/gregwebs/haskell-heroku";
@@ -64402,6 +64631,39 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "heyefi" = callPackage
+    ({ mkDerivation, base, bytestring, case-insensitive, configurator
+     , containers, directory, errors, exceptions, filemanip, filepath
+     , HandsomeSoup, hspec, HTTP, http-types, hxt, iso8601-time
+     , MissingH, mtl, multipart, old-locale, random, silently, stm, tar
+     , temporary, text, time, transformers, unix, unordered-containers
+     , utf8-string, wai, warp
+     }:
+     mkDerivation {
+       pname = "heyefi";
+       version = "0.1.0.2";
+       sha256 = "0zjhdhigkfh3wrhwynpcqimasifs3qxkv8x2w7bl1ly8amlz7hf4";
+       isLibrary = false;
+       isExecutable = true;
+       buildDepends = [
+         base bytestring case-insensitive configurator directory errors
+         exceptions filemanip filepath HandsomeSoup HTTP http-types hxt
+         iso8601-time MissingH mtl multipart old-locale random stm tar
+         temporary text time transformers unix unordered-containers
+         utf8-string wai warp
+       ];
+       testDepends = [
+         base bytestring case-insensitive configurator containers directory
+         errors exceptions filemanip filepath HandsomeSoup hspec HTTP
+         http-types hxt iso8601-time MissingH mtl multipart old-locale
+         random silently stm tar temporary text time transformers unix
+         unordered-containers utf8-string wai warp
+       ];
+       homepage = "https://github.com/ryantm/heyefi";
+       description = "A server for Eye-Fi SD cards";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "hfann" = callPackage
     ({ mkDerivation, base, doublefann, fann }:
      mkDerivation {
@@ -66691,7 +66953,9 @@ self: {
      mkDerivation {
        pname = "hnix";
        version = "0.2.0";
+       revision = "1";
        sha256 = "02aygnc0hhg3gsj9z323pq6i6v9ijjj5r6i8g1zx1cnwd51dw1aj";
+       editedCabalFile = "8267f50b3b3fc9736bb1e942fbe425a1a4ef2b96a6b906dff18496ce1e0578d6";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -66736,6 +67000,20 @@ self: {
        license = stdenv.lib.licenses.unfree;
      }) {};
 
+  "ho-rewriting" = callPackage
+    ({ mkDerivation, base, compdata, containers, mtl, patch-combinators
+     }:
+     mkDerivation {
+       pname = "ho-rewriting";
+       version = "0.1";
+       sha256 = "1hmnqck385mhk140kgf8882lfa91bmip4pxbjnfpf62dwh0z39a3";
+       buildDepends = [ base compdata containers mtl patch-combinators ];
+       testDepends = [ base compdata patch-combinators ];
+       homepage = "https://github.com/emilaxelsson/ho-rewriting";
+       description = "Generic rewrite rules with safe treatment of variables and binders";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hoauth" = callPackage
     ({ mkDerivation, base, binary, bytestring, crypto-pubkey-types
      , curl, dataenc, entropy, mtl, old-locale, random, RSA, SHA, time
@@ -67896,27 +68174,25 @@ self: {
      }) {};
 
   "hpack" = callPackage
-    ({ mkDerivation, aeson, base, base-compat, deepseq, directory
-     , filepath, hspec, interpolate, mockery, text, unordered-containers
-     , yaml
+    ({ mkDerivation, aeson, aeson-qq, base, base-compat, deepseq
+     , directory, filepath, hspec, interpolate, mockery, text
+     , unordered-containers, yaml
      }:
      mkDerivation {
        pname = "hpack";
-       version = "0.3.2";
-       revision = "1";
-       sha256 = "1y29d7bd297yy1j0cl17q98ibdr26gksvd6fwbwgpx43y5mpq08x";
-       editedCabalFile = "d622462298731362fa33e09dd6b559cf1d6ba676c78864d4da2c1275dca11bae";
-       isLibrary = false;
+       version = "0.4.0";
+       sha256 = "01wqf30zdcgra5vj7d3378lmjh26z1g3z9qp746ly45yz0rpryz2";
+       isLibrary = true;
        isExecutable = true;
        buildDepends = [
          aeson base base-compat deepseq directory filepath text
          unordered-containers yaml
        ];
        testDepends = [
-         aeson base base-compat deepseq directory filepath hspec interpolate
-         mockery text unordered-containers yaml
+         aeson aeson-qq base base-compat deepseq directory filepath hspec
+         interpolate mockery text unordered-containers yaml
        ];
-       homepage = "https://github.com/haskell-tinc/hpack#readme";
+       homepage = "https://github.com/sol/hpack#readme";
        description = "An alternative format for Haskell packages";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -68196,8 +68472,8 @@ self: {
      }:
      mkDerivation {
        pname = "hprotoc";
-       version = "2.0.17";
-       sha256 = "1mfmbggjnpmdpv6a9yhwyplf4g1n45s089qjwhvy1p6drn4mk3hp";
+       version = "2.1.0";
+       sha256 = "18a4wc22yqbqx2n62935q3i9y4kkcxk8r5kcphhbqmzcxf20x7gr";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -68206,7 +68482,7 @@ self: {
          protocol-buffers-descriptor utf8-string
        ];
        buildTools = [ alex ];
-       homepage = "http://code.haskell.org/protocol-buffers/";
+       homepage = "https://github.com/k-bx/protocol-buffers";
        description = "Parse Google Protocol Buffer specifications";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -68391,6 +68667,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hreader" = callPackage
+    ({ mkDerivation, base, exceptions, hset, mmorph, monad-control, mtl
+     , transformers-base
+     }:
+     mkDerivation {
+       pname = "hreader";
+       version = "0.1.0";
+       sha256 = "102i17879ha49yh87i9k5lxrlrjd1fxcb8k8adidqwghbn55dyjc";
+       buildDepends = [
+         base exceptions hset mmorph monad-control mtl transformers-base
+       ];
+       homepage = "https://bitbucket.org/s9gf4ult/hreader";
+       description = "Generalization of MonadReader and ReaderT";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "hricket" = callPackage
     ({ mkDerivation, base, containers }:
      mkDerivation {
@@ -69577,15 +69869,19 @@ self: {
      }) {};
 
   "hscrtmpl" = callPackage
-    ({ mkDerivation, base, directory, old-locale, process, time }:
+    ({ mkDerivation, base, directory, process, regex-compat, time
+     , time-locale-compat
+     }:
      mkDerivation {
        pname = "hscrtmpl";
-       version = "1.2";
-       sha256 = "1ipk44lc2bdh9yhn30b2hkkymyp2srgsqgfdsy8xbxa8frlabhhg";
+       version = "1.4";
+       sha256 = "1az51cv6wqjdkw0fqgi5s75rmfka3sly85022rhvk44w1vd45iii";
        isLibrary = false;
        isExecutable = true;
-       buildDepends = [ base directory old-locale process time ];
-       homepage = "http://ui3.info/darcs/hscrtmpl/";
+       buildDepends = [
+         base directory process regex-compat time time-locale-compat
+       ];
+       homepage = "http://hub.darcs.net/dino/hscrtmpl";
        description = "Haskell shell script template";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -69812,12 +70108,13 @@ self: {
      }) {};
 
   "hset" = callPackage
-    ({ mkDerivation, base, mtl }:
+    ({ mkDerivation, base, HUnit, mtl }:
      mkDerivation {
        pname = "hset";
-       version = "0.0.2";
-       sha256 = "13jq033g20mzvc424g6p1rixhw0gl681dpbc0dlrdpnpk2pm1m7l";
+       version = "1.0.0";
+       sha256 = "16180gzms34fh5s2byp5disazi2bww022dln4q7lv523css3mrcf";
        buildDepends = [ base mtl ];
+       testDepends = [ base HUnit mtl ];
        homepage = "https://bitbucket.org/s9gf4ult/hset";
        description = "Primitive heterogenous read-only set";
        license = stdenv.lib.licenses.bsd3;
@@ -69829,15 +70126,14 @@ self: {
      }:
      mkDerivation {
        pname = "hsexif";
-       version = "0.6.0.1";
-       sha256 = "17vxm7vh8l7bnf5kcw4igkrjwwfzn0byjamaim70095al0ndvrjy";
+       version = "0.6.0.2";
+       sha256 = "1a67cyzfiriyhyacihs47d0427yll91fmbs56fhk82k3mdi74a60";
        buildDepends = [
          base binary bytestring containers iconv text time
        ];
        testDepends = [
          base binary bytestring containers hspec HUnit iconv text time
        ];
-       jailbreak = true;
        homepage = "https://github.com/emmanueltouzery/hsexif";
        description = "EXIF handling library in pure Haskell";
        license = stdenv.lib.licenses.bsd3;
@@ -70199,17 +70495,15 @@ self: {
 
   "hsmisc" = callPackage
     ({ mkDerivation, base, containers, HUnit, mtl, old-locale, parsec
-     , regex-compat, time
+     , time
      }:
      mkDerivation {
        pname = "hsmisc";
-       version = "1.1";
-       sha256 = "1n340agvf103g84xndc9fbhq4rhywx611iykmkk10wxi364dv7wg";
-       buildDepends = [
-         base containers mtl old-locale parsec regex-compat time
-       ];
-       testDepends = [ base containers HUnit mtl regex-compat ];
-       homepage = "http://foo/bar/baz.html";
+       version = "1.2";
+       sha256 = "1n2na14a5qaph0f457zvkjwr2zkbgh3mfli2ir5wkm7m1bm671aj";
+       buildDepends = [ base containers mtl old-locale parsec time ];
+       testDepends = [ base containers HUnit mtl ];
+       homepage = "http://hub.darcs.net/dino/hsmisc";
        description = "A collection of miscellaneous modules";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -70459,8 +70753,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec";
-       version = "2.1.7";
-       sha256 = "096rfq7ss5hvy1wcc9fdb4svnfiy96p79xh7vj3h7radh2wggfwv";
+       version = "2.1.8";
+       sha256 = "0nfg9pmlvp8gnllfx01sfslhznjs5xa432ag9s2q2r7c17bxfnwf";
        buildDepends = [
          base hspec-core hspec-discover hspec-expectations HUnit QuickCheck
          transformers
@@ -70530,8 +70824,8 @@ self: {
      }:
      mkDerivation {
        pname = "hspec-core";
-       version = "2.1.7";
-       sha256 = "1ifwsqa8ay8f8l96k37rawxjya0qs72bcifxfr5hlz3gagg4a02b";
+       version = "2.1.8";
+       sha256 = "07jhiw0492xcgiidpyizqwaqjja23m35179s12vb54gw4xbh7b6q";
        buildDepends = [
          ansi-terminal async base deepseq hspec-expectations HUnit
          QuickCheck quickcheck-io random setenv tf-random time transformers
@@ -70550,8 +70844,8 @@ self: {
     ({ mkDerivation, base, directory, filepath, hspec-meta }:
      mkDerivation {
        pname = "hspec-discover";
-       version = "2.1.7";
-       sha256 = "0gh9kn9ds50xl0zin5vbablf4dpfiabi96sz2a4xsxlskfjflhl0";
+       version = "2.1.8";
+       sha256 = "1pyk901rngv1yv4p502qcbbhhw6sgdsdmdwxk1f5r1s7gkvbd9n4";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [ base directory filepath ];
@@ -70562,13 +70856,12 @@ self: {
      }) {};
 
   "hspec-expectations" = callPackage
-    ({ mkDerivation, base, hspec, HUnit, markdown-unlit, silently }:
+    ({ mkDerivation, base, HUnit }:
      mkDerivation {
        pname = "hspec-expectations";
-       version = "0.6.1.1";
-       sha256 = "0f36b2cp2ipbqz9g6lp43nvx8dykkw196wg97kgb07mmnq6gakix";
+       version = "0.7.0";
+       sha256 = "1gzjnmhi6ia2p5i5jlnj4586rkml5af8f7ijgipzs6fczpx7ds4l";
        buildDepends = [ base HUnit ];
-       testDepends = [ base hspec HUnit markdown-unlit silently ];
        homepage = "https://github.com/sol/hspec-expectations#readme";
        description = "Catchy combinators for HUnit";
        license = stdenv.lib.licenses.mit;
@@ -71593,17 +71886,16 @@ self: {
 
   "html-email-validate" = callPackage
     ({ mkDerivation, attoparsec, base, hspec, QuickCheck
-     , regex-pcre-builtin, text, text-show
+     , regex-pcre-builtin, text
      }:
      mkDerivation {
        pname = "html-email-validate";
-       version = "0.1.0.0";
-       sha256 = "076xiv1r9yzaxr84v211kib6xy9aggal0vgyz565vgwqpfm2hif4";
-       buildDepends = [ attoparsec base text text-show ];
+       version = "0.2.0.0";
+       sha256 = "1bvdmaamxbldb8nndi5f330msj1d0mrj8lapvxqyr333bg3kwaix";
+       buildDepends = [ attoparsec base text ];
        testDepends = [
          attoparsec base hspec QuickCheck regex-pcre-builtin text
        ];
-       jailbreak = true;
        description = "Validating an email address against HTML standard";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -71697,20 +71989,20 @@ self: {
      }) {};
 
   "html2hamlet" = callPackage
-    ({ mkDerivation, ascii, base, blaze-builder, bytestring, cmdargs
-     , hamlet, http-enumerator, network, text, xmlhtml
+    ({ mkDerivation, base, bytestring, containers, hamlet, html-conduit
+     , http-conduit, mtl, optparse-declarative, regex-tdfa, text
+     , wl-pprint-text, xml-conduit
      }:
      mkDerivation {
        pname = "html2hamlet";
-       version = "0.1.0";
-       sha256 = "1nh6whpc9xdlmkw4n3lfi8xgfbgvb0lz7dry25j5fgxgvpsa0g9d";
+       version = "0.3.0";
+       sha256 = "1n49dz59nlkvb4ax1h9cfq7nqcwlxcrm372x4373ig6xdzbckdmz";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
-         ascii base blaze-builder bytestring cmdargs hamlet http-enumerator
-         network text xmlhtml
+         base bytestring containers hamlet html-conduit http-conduit mtl
+         optparse-declarative regex-tdfa text wl-pprint-text xml-conduit
        ];
-       jailbreak = true;
        homepage = "http://github.com/tanakh/html2hamlet";
        description = "HTML to Hamlet converter";
        license = stdenv.lib.licenses.bsd3;
@@ -71892,8 +72184,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-client";
-       version = "0.4.13";
-       sha256 = "1vxjcvwlqp9n8r2lp21mxxklq1ia4bvzl778b7digzhdhpn405mi";
+       version = "0.4.15";
+       sha256 = "0k3ag3ia76s9dyhafaprspbsrbzpl5amyw7cnxv6l76v778ksrrf";
        buildDepends = [
          array base base64-bytestring blaze-builder bytestring
          case-insensitive containers cookie data-default-class deepseq
@@ -72067,8 +72359,8 @@ self: {
      }:
      mkDerivation {
        pname = "http-conduit";
-       version = "2.1.5";
-       sha256 = "0vk2an6h3h7a5klk9xrf3apfm6xdmqm418yrr7pb56b7w5sfq003";
+       version = "2.1.5.1";
+       sha256 = "1rpp830319hqqazf1gh28jh239a67qksmx2ki3p91h9nsa8lh6w2";
        buildDepends = [
          base bytestring conduit http-client http-client-tls http-types
          lifted-base monad-control mtl resourcet transformers
@@ -72315,7 +72607,9 @@ self: {
      mkDerivation {
        pname = "http-reverse-proxy";
        version = "0.4.2";
+       revision = "1";
        sha256 = "10cd6h1n1fp55jpwcp4nnk64yslxy2cnm7rhzd25xvi5fkhfl61i";
+       editedCabalFile = "3b7a6c0b55cd7eb98d3f020ac08cec7ca052b8ec716f76cfabdcbaef27645db7";
        buildDepends = [
          async base blaze-builder bytestring case-insensitive conduit
          conduit-extra containers data-default-class http-client http-types
@@ -73060,6 +73354,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "hwsl2-reducers" = callPackage
+    ({ mkDerivation, base, bytestring, hwsl2, reducers, semigroups }:
+     mkDerivation {
+       pname = "hwsl2-reducers";
+       version = "0.1.0.0";
+       sha256 = "1q7phb2v11gfwlvm0f0jrsm7gc7ga9awd9cp0kkxm2k20mggrg7x";
+       buildDepends = [ base bytestring hwsl2 reducers semigroups ];
+       homepage = "https://github.com/srijs/hwsl2-reducers";
+       description = "Semigroup and Reducer instances for Data.Hash.SL2";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "hx" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -73450,10 +73756,10 @@ self: {
     ({ mkDerivation, base, deepseq, primitive, vector }:
      mkDerivation {
        pname = "hybrid-vectors";
-       version = "0.1.2.1";
+       version = "0.2";
        revision = "1";
-       sha256 = "0xh6yvv7jyahzrqihc13g1nlv81v0mzxvaxib5fcyr1njwbcwv59";
-       editedCabalFile = "9adcfe7dc98b64c7a1506a58c7a771bbc244874790b68f8bc7e1c859207632d7";
+       sha256 = "0xdrna6jgn4l0idhv0bn6ic8m7g8pps23ky2f75zwgpqrkflnb41";
+       editedCabalFile = "43a2c8cd2fa6abe7dc526dd99ef9d296394922a3d92ced8138072250fe75eb35";
        buildDepends = [ base deepseq primitive vector ];
        homepage = "http://github.com/ekmett/hybrid-vectors";
        description = "Hybrid vectors e.g. Mixed Boxed/Unboxed vectors";
@@ -73805,6 +74111,7 @@ self: {
          base directory doctest filepath generic-deriving semigroups
          simple-reflect
        ];
+       jailbreak = true;
        homepage = "http://github.com/analytics/hyperloglog";
        description = "An approximate streaming (constant space) unique object counter";
        license = stdenv.lib.licenses.bsd3;
@@ -75438,24 +75745,26 @@ self: {
 
   "inline-c" = callPackage
     ({ mkDerivation, ansi-wl-pprint, base, binary, bytestring
-     , containers, cryptohash, directory, filepath, gsl, gslcblas, hspec
-     , mtl, parsec, parsers, QuickCheck, raw-strings-qq, regex-posix
-     , template-haskell, transformers, unordered-containers, vector
+     , containers, cryptohash, directory, filepath, gsl, gslcblas
+     , hashable, hspec, mtl, parsec, parsers, QuickCheck, raw-strings-qq
+     , regex-posix, template-haskell, transformers, unordered-containers
+     , vector
      }:
      mkDerivation {
        pname = "inline-c";
-       version = "0.5.3.4";
-       sha256 = "1hn1diaxvg0658j9wy9nsa4fhjzjk4g9f161gb26n5cfymsjnnc3";
+       version = "0.5.4.2";
+       sha256 = "1s38ncb59zr8295k3vr52cmirb9kw2dfpfjbb8hh5c27z1vcmmrz";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          ansi-wl-pprint base binary bytestring containers cryptohash
-         directory filepath mtl parsec parsers QuickCheck template-haskell
-         transformers unordered-containers vector
+         directory filepath hashable mtl parsec parsers QuickCheck
+         template-haskell transformers unordered-containers vector
        ];
        testDepends = [
-         ansi-wl-pprint base containers hspec parsers QuickCheck
-         raw-strings-qq regex-posix template-haskell transformers vector
+         ansi-wl-pprint base containers hashable hspec parsers QuickCheck
+         raw-strings-qq regex-posix template-haskell transformers
+         unordered-containers vector
        ];
        extraLibraries = [ gsl gslcblas ];
        description = "Write Haskell source files including C code inline. No FFI required.";
@@ -75871,8 +76180,8 @@ self: {
      }:
      mkDerivation {
        pname = "intricacy";
-       version = "0.5";
-       sha256 = "1cy8i6iqgka0696d84nqswg90q3a1yn9s480ffx8s1i2sy7msjyg";
+       version = "0.5.5";
+       sha256 = "0jlqxd7nwh3yvy5pni3w4a19wvn2xdrhhhfm9xkf4cs2rqnz525q";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -76845,8 +77154,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "ivar-simple";
-       version = "0.3";
-       sha256 = "13if0mqgnc6lsx1acw6395milygqq18sm5vazfkxdhmppsqb91ch";
+       version = "0.3.1";
+       sha256 = "1zn3nr0qmrnpr7jnpwgb4sancflbp9xmk2qyahl0d9vw7agqhwlm";
        buildDepends = [ base ];
        description = "Write once concurrency primitives";
        license = stdenv.lib.licenses.mit;
@@ -77147,7 +77456,7 @@ self: {
 
   "jack" = callPackage
     ({ mkDerivation, array, base, bytestring, enumset, event-list
-     , explicit-exception, libjack2, midi, non-negative, transformers, unix
+     , explicit-exception, jack2, midi, non-negative, transformers, unix
      }:
      mkDerivation {
        pname = "jack";
@@ -77159,25 +77468,25 @@ self: {
          array base bytestring enumset event-list explicit-exception midi
          non-negative transformers unix
        ];
-       pkgconfigDepends = [ libjack2 ];
+       pkgconfigDepends = [ jack2 ];
        homepage = "http://www.haskell.org/haskellwiki/JACK";
        description = "Bindings for the JACK Audio Connection Kit";
        license = "GPL";
-     }) { inherit (pkgs) libjack2;};
+     }) { jack2 = null;};
 
   "jack-bindings" = callPackage
-    ({ mkDerivation, base, c2hs, libjack2, mtl }:
+    ({ mkDerivation, base, c2hs, jack2, mtl }:
      mkDerivation {
        pname = "jack-bindings";
        version = "0.1.1";
        sha256 = "1gmz2qiz7wzydj0rhswbfhwi0zbdcbps29l1lryzqxm8chfc9mbm";
        buildDepends = [ base mtl ];
        buildTools = [ c2hs ];
-       pkgconfigDepends = [ libjack2 ];
+       pkgconfigDepends = [ jack2 ];
        description = "DEPRECATED Bindings to the JACK Audio Connection Kit";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) { inherit (pkgs) libjack2;};
+     }) { jack2 = null;};
 
   "jackminimix" = callPackage
     ({ mkDerivation, base, hosc }:
@@ -77253,22 +77562,23 @@ self: {
      }) {};
 
   "jalla" = callPackage
-    ({ mkDerivation, base, blas, c2hs, cblas, convertible, HUnit
-     , lapacke, mtl, QuickCheck, random, test-framework
+    ({ mkDerivation, base, base-orphans, blas, c2hs, cblas, convertible
+     , HUnit, lapacke, mtl, QuickCheck, random, test-framework
      , test-framework-hunit, test-framework-quickcheck2
      }:
      mkDerivation {
        pname = "jalla";
-       version = "0.2";
-       sha256 = "02n9dfspn648090d3yhk3ngqzjky82ly770qi13d1h13ixbv2lx0";
-       buildDepends = [ base convertible mtl QuickCheck random ];
+       version = "0.2.0.1";
+       sha256 = "122lf1j9hs81yzj6hdv7a7q56846h1ggasbjgvjnk8r34d0xsl40";
+       buildDepends = [
+         base base-orphans convertible mtl QuickCheck random
+       ];
        testDepends = [
          base HUnit QuickCheck random test-framework test-framework-hunit
          test-framework-quickcheck2
        ];
        buildTools = [ c2hs ];
        extraLibraries = [ blas cblas lapacke ];
-       jailbreak = true;
        homepage = "https://github.com/cgo/jalla";
        description = "Higher level functions for linear algebra. Wraps BLAS and LAPACKE.";
        license = "GPL";
@@ -78089,8 +78399,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-schema";
-       version = "0.7.3.6";
-       sha256 = "0x1aj5scd0k0qapivn784y5np82fhr982sqvb64jw619aql5s6bv";
+       version = "0.7.3.7";
+       sha256 = "0lrr5zhydb2g36xlpr3mhn0m6bz138gbm0zih3f3qamnsm21mjk5";
        buildDepends = [
          aeson base containers generic-aeson generic-deriving mtl scientific
          text time unordered-containers vector
@@ -78148,8 +78458,8 @@ self: {
      }:
      mkDerivation {
        pname = "json-togo";
-       version = "0.1.0.3";
-       sha256 = "0fl71ij0v4gjjvm5d4624x5fm0si75d9baz07c5ck6da24xgbg0l";
+       version = "0.1.1.0";
+       sha256 = "0aw0dkv1scllj56vj9q07a44vfs88f3k5x1m80y0mivlpz0280l3";
        buildDepends = [
          aeson attoparsec attoparsec-trans base bytestring scientific text
          transformers unordered-containers vector
@@ -78388,8 +78698,8 @@ self: {
      }:
      mkDerivation {
        pname = "jukebox";
-       version = "0.1.3";
-       sha256 = "024q90vsphh3ka4p2l0xmyvp874jp5a61s4gwmg985v5b54srzh5";
+       version = "0.1.4";
+       sha256 = "07galk5i5lq4dx1njd5851c7jz4qwhw8da76ggxd91f9xpvkmf9y";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -78457,6 +78767,25 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "kademlia" = callPackage
+    ({ mkDerivation, base, bytestring, containers, mtl, network, stm
+     , transformers, transformers-compat
+     }:
+     mkDerivation {
+       pname = "kademlia";
+       version = "1.0.0.0";
+       revision = "1";
+       sha256 = "0f1kwflpizabzyal3x3p9sra3kxlgm2m14xfxnl4k3bndmj02sdb";
+       editedCabalFile = "2553e98d53372b8d4947c115dd696e33f526f0304e9ed39566e6beec276ca641";
+       buildDepends = [
+         base bytestring containers mtl network stm transformers
+         transformers-compat
+       ];
+       homepage = "https://github.com/froozen/kademlia";
+       description = "An implementation of the Kademlia DHT Protocol";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "kafka-client" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, digest
      , dlist, hspec, hspec-discover, network, process, QuickCheck
@@ -79044,8 +79373,8 @@ self: {
      }:
      mkDerivation {
        pname = "keter";
-       version = "1.4.1";
-       sha256 = "1pxvddb6mkxq4j7w0l3zgvarlj8kvrd4c75mivsia330wzkhc4ay";
+       version = "1.4.2.1";
+       sha256 = "1xwnprbmssvvymwyvcgczlsldplr2va53mzdphqs6969xhhpahh3";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -80464,18 +80793,18 @@ self: {
      }:
      mkDerivation {
        pname = "language-c-quote";
-       version = "0.10.2.2";
-       sha256 = "0y65mlx4zx1n7n6y3gjvzqzr2k8bxbbjn4wsjr8mzpib0gqfqpss";
+       version = "0.11";
+       sha256 = "1v55pmzrsd7nvxdkik0fh5psbycx9cv4j5zwzlv872lzhfsr3lc7";
        buildDepends = [
          array base bytestring containers exception-mtl
          exception-transformers filepath haskell-src-meta mainland-pretty
          mtl srcloc syb symbol template-haskell
        ];
        testDepends = [
-         base HUnit srcloc symbol test-framework test-framework-hunit
+         base bytestring HUnit mainland-pretty srcloc symbol test-framework
+         test-framework-hunit
        ];
        buildTools = [ alex happy ];
-       jailbreak = true;
        homepage = "http://www.cs.drexel.edu/~mainland/";
        description = "C/CUDA/OpenCL/Objective-C quasiquoting library";
        license = stdenv.lib.licenses.bsd3;
@@ -82828,13 +83157,12 @@ self: {
      }:
      mkDerivation {
        pname = "lilypond";
-       version = "1.8.1";
-       sha256 = "0y60i1rsl6rzdvbx2jj3y660bqlsz6dywwxq8nl4q1g6gr2k97fd";
+       version = "1.9.0";
+       sha256 = "1nb6kkp5gbsbkjbbicyd49ckg2j9dm4a1l9ya4vp38br5j7dn4gw";
        buildDepends = [
          base data-default music-dynamics-literal music-pitch-literal
          prettify process semigroups vector-space
        ];
-       jailbreak = true;
        description = "Bindings to Lilypond";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -84212,7 +84540,6 @@ self: {
        homepage = "http://github.com/dmbarbour/haskell-lmdb";
        description = "Lightning MDB bindings";
        license = stdenv.lib.licenses.bsd2;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) { lmdb = null;};
 
   "load-env" = callPackage
@@ -84393,6 +84720,7 @@ self: {
          base directory doctest filepath generic-deriving semigroups
          simple-reflect
        ];
+       jailbreak = true;
        homepage = "http://github.com/analytics/log-domain/";
        description = "Log-domain arithmetic";
        license = stdenv.lib.licenses.bsd3;
@@ -85034,23 +85362,24 @@ self: {
      }) {};
 
   "luautils" = callPackage
-    ({ mkDerivation, base, containers, custom-prelude, hslua
+    ({ mkDerivation, base, binary, bytestring, containers, hslua
      , monad-loops, QuickCheck, quickcheck-instances, test-framework
-     , test-framework-quickcheck2, test-framework-th, text
+     , test-framework-quickcheck2, test-framework-th, text, text-binary
      }:
      mkDerivation {
        pname = "luautils";
-       version = "0.1.3";
-       sha256 = "1y0a70sqykc003kazx6bddjp4l7pc6099iqg6w78k7wigzmkld7y";
+       version = "0.1.4";
+       sha256 = "176szfrz1ydnin1zi50235j4f4l87j516yjddmqbmd834dzvk20d";
        buildDepends = [
-         base containers custom-prelude hslua monad-loops text
+         base binary bytestring containers hslua monad-loops text
        ];
        testDepends = [
-         base containers hslua QuickCheck quickcheck-instances
+         base binary containers hslua QuickCheck quickcheck-instances
          test-framework test-framework-quickcheck2 test-framework-th text
+         text-binary
        ];
        description = "Helpers for Haskell integration with Lua";
-       license = "GPL";
+       license = stdenv.lib.licenses.mit;
      }) {};
 
   "lub" = callPackage
@@ -85404,13 +85733,12 @@ self: {
      }:
      mkDerivation {
        pname = "machinecell";
-       version = "1.3.1";
-       revision = "1";
-       sha256 = "1v4rrjszh6sm2x1nwq33f4xwa41bnls0awhy9qfkap62bpad8fxg";
-       editedCabalFile = "5a7ee43c327694ac753228da8f16d681a60d23b4926132726e2a093ecacb4725";
+       version = "2.0.1";
+       sha256 = "0gl207a97zcs48k6pdr82x9ckg1bc2vn6wachc57gmnspk3j43xd";
        buildDepends = [ arrows base free mtl profunctors semigroups ];
-       testDepends = [ base hspec mtl profunctors QuickCheck ];
-       jailbreak = true;
+       testDepends = [
+         arrows base hspec mtl profunctors QuickCheck semigroups
+       ];
        homepage = "http://github.com/as-capabl/machinecell";
        description = "Arrow based stream transducers";
        license = stdenv.lib.licenses.bsd3;
@@ -85705,8 +86033,8 @@ self: {
     ({ mkDerivation, base, containers, srcloc, text }:
      mkDerivation {
        pname = "mainland-pretty";
-       version = "0.3.0.0";
-       sha256 = "1fqb03rph3zwl46wkfzbm5hsqhyjn2vvwks506mybabqv3sg24kn";
+       version = "0.4.0.0";
+       sha256 = "1nym3qiyjgag6jpra1cfm8b722h8ghi0f2dv74y6migzqh768myl";
        buildDepends = [ base containers srcloc text ];
        homepage = "http://www.cs.drexel.edu/~mainland/";
        description = "Pretty printing designed for printing source code";
@@ -86746,7 +87074,9 @@ self: {
      mkDerivation {
        pname = "matrices";
        version = "0.4.2";
+       revision = "1";
        sha256 = "1mcv3ihaf15biai6m98jfgv31whgmwbzgagxyj3bfpnilslp98l6";
+       editedCabalFile = "6aabde42e016b428562ed0e983444308c23d79837f04453fe57f60a6cbc02fe4";
        buildDepends = [ base primitive vector ];
        testDepends = [ base tasty tasty-hunit tasty-quickcheck vector ];
        description = "native matrix based on vector";
@@ -87408,14 +87738,14 @@ self: {
 
   "messagepack-rpc" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, messagepack
-     , network-simple, text
+     , network-simple
      }:
      mkDerivation {
        pname = "messagepack-rpc";
-       version = "0.1.0.3";
-       sha256 = "0g9lj3fb81gng3z4kdikwa9vgz73hjdqygzhcqd8fphcynv8j6m1";
+       version = "0.2.0.0";
+       sha256 = "0lx0qyv41pylbz2580zvw4qw07pih4l9sbdd2h99gwkqjpjnc8x8";
        buildDepends = [
-         base bytestring cereal containers messagepack network-simple text
+         base bytestring cereal containers messagepack network-simple
        ];
        homepage = "http://github.com/rodrigosetti/messagepack-rpc";
        description = "Message Pack RPC over TCP";
@@ -88225,16 +88555,15 @@ self: {
      }) {};
 
   "minisat" = callPackage
-    ({ mkDerivation, async, base, zlib }:
+    ({ mkDerivation, async, base }:
      mkDerivation {
        pname = "minisat";
-       version = "0.1.1";
-       sha256 = "1myy23mrhnm7wv6mzyym9jmw8pnlqkfam9dl082i8qll3mxrl83i";
+       version = "0.1.2";
+       sha256 = "089jam2cbwf4m16sgb9wh4zkgbmpfsg647lng3kyjs5d3m02i5dd";
        buildDepends = [ async base ];
-       extraLibraries = [ zlib ];
        description = "A Haskell bundle of the Minisat SAT solver";
        license = stdenv.lib.licenses.bsd3;
-     }) { inherit (pkgs) zlib;};
+     }) {};
 
   "ministg" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, monads-tf
@@ -90670,22 +90999,21 @@ self: {
 
   "mueval" = callPackage
     ({ mkDerivation, base, Cabal, containers, directory
-     , extensible-exceptions, filepath, hint, mtl, process, show
-     , simple-reflect, unix, utf8-string
+     , extensible-exceptions, filepath, hint, mtl, process, QuickCheck
+     , show, simple-reflect, unix
      }:
      mkDerivation {
        pname = "mueval";
-       version = "0.9.1.1";
-       revision = "2";
-       sha256 = "0p9qf8lb3c1y87qpl9b4n6v6bjrb9fw3yfg4p7niqdz31454d2pz";
-       editedCabalFile = "26147e2bbac6b9afea949ab81c6072fc89bbff6b7e6678f3ce57c77d26264832";
+       version = "0.9.1.1.2";
+       revision = "1";
+       sha256 = "1h8a0lfbpgx9pjsmb0yld4n12z2nia5kkikjq1qqzk4m8rsknk70";
+       editedCabalFile = "5c6cf1e221928e15536f1dfa46942293acf7b470a442c619ef66529b78c59596";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          base Cabal containers directory extensible-exceptions filepath hint
-         mtl process show simple-reflect unix utf8-string
+         mtl process QuickCheck show simple-reflect unix
        ];
-       jailbreak = true;
        homepage = "https://github.com/gwern/mueval";
        description = "Safely evaluate pure Haskell expressions";
        license = stdenv.lib.licenses.bsd3;
@@ -90910,8 +91238,8 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "multiset";
-       version = "0.2.2";
-       sha256 = "1g14c1zm4rdc8nxvb69k98h542wi24q2lpba1gpqjqspk4d0sjmn";
+       version = "0.3.0";
+       sha256 = "0wpc2v55q6gwn70nlk2x5xd4dk9a8aw2ivl1gr0xhdp1dnn5dhcb";
        buildDepends = [ base containers ];
        description = "The Data.MultiSet container type";
        license = stdenv.lib.licenses.bsd3;
@@ -90947,8 +91275,8 @@ self: {
     ({ mkDerivation, base, hspec, mtl, tagged, transformers }:
      mkDerivation {
        pname = "multistate";
-       version = "0.6.0.0";
-       sha256 = "17b54qy4dgacj0lwy61nf3hbppd950xk9c1yphjn6i6jcr8z66li";
+       version = "0.6.2.0";
+       sha256 = "0s8x0gb332724sd3vcp5yimxpbf85kvg327lg3bb77jvy6cfdzvj";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [ base mtl tagged transformers ];
@@ -91046,8 +91374,8 @@ self: {
     ({ mkDerivation, average, base, semigroups }:
      mkDerivation {
        pname = "music-articulation";
-       version = "1.8.1";
-       sha256 = "1wmj1265bk4fb1qw3vmm6r7a576i8fc2dshrfh3i7w39vy9ywprr";
+       version = "1.9.0";
+       sha256 = "0cxbhk25kn3hpkmb6h0brcf03yyi6kaz3i3l3lv2rzgfxv14a2pg";
        buildDepends = [ average base semigroups ];
        description = "Abstract representation of musical articulation";
        license = stdenv.lib.licenses.bsd3;
@@ -91069,8 +91397,8 @@ self: {
      }:
      mkDerivation {
        pname = "music-dynamics";
-       version = "1.8.1";
-       sha256 = "1rdv9kn3i5m6l9xpfmccdwjkdw0smr9qiaw4p0y79fr9gdqrd6a1";
+       version = "1.9.0";
+       sha256 = "12a11qrdy4p0bczpg2zp8yqw4wdmgfhq5z9ffajlsib2xcs6y8s4";
        buildDepends = [ average base music-dynamics-literal semigroups ];
        description = "Abstract representation of musical dynamics";
        license = stdenv.lib.licenses.bsd3;
@@ -91080,8 +91408,8 @@ self: {
     ({ mkDerivation, base, semigroups }:
      mkDerivation {
        pname = "music-dynamics-literal";
-       version = "1.8.1";
-       sha256 = "1p5r9fj71rvg2hma1r4s4vlxxqzam7iq99hfmn8k92sv7yzjm5na";
+       version = "1.9.0";
+       sha256 = "19bql45aqjfkhvpkfbvfcsc8p1mzg93n966r1yv5rwps6s2x86d5";
        buildDepends = [ base semigroups ];
        description = "Overloaded dynamics literals";
        license = stdenv.lib.licenses.bsd3;
@@ -91106,37 +91434,38 @@ self: {
      }) {};
 
   "music-parts" = callPackage
-    ({ mkDerivation, adjunctions, aeson, base, containers, data-default
-     , lens, music-dynamics, music-pitch, roman-numerals, semigroups
+    ({ mkDerivation, adjunctions, aeson, base, bytestring, cassava
+     , containers, data-default, lens, monadplus, music-dynamics
+     , music-pitch, roman-numerals, semigroups, vector-space
+     , vector-space-points
      }:
      mkDerivation {
        pname = "music-parts";
-       version = "1.8.1";
-       sha256 = "1m0grrqmlj21ld5g381zz1y7s25ngkjq0d5sr3wd7z7ssp44xxs2";
+       version = "1.9.0";
+       sha256 = "1kiz968kcwcyczxg5gl40c7bwgkn86l7qi0ak8p68bm4rmsw9id4";
        buildDepends = [
-         adjunctions aeson base containers data-default lens music-dynamics
-         music-pitch roman-numerals semigroups
+         adjunctions aeson base bytestring cassava containers data-default
+         lens monadplus music-dynamics music-pitch roman-numerals semigroups
+         vector-space vector-space-points
        ];
-       jailbreak = true;
        description = "Musical instruments, parts and playing techniques";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "music-pitch" = callPackage
-    ({ mkDerivation, base, containers, data-interval, lens
+    ({ mkDerivation, aeson, base, containers, data-interval, lens
      , music-pitch-literal, nats, positive, semigroups, type-unary
      , vector-space, vector-space-points
      }:
      mkDerivation {
        pname = "music-pitch";
-       version = "1.8.1";
-       sha256 = "01wrhzyn7mpa4xk1iyg17clfwyy6ggfg1bz45dvr62pz3gl0sd03";
+       version = "1.9.0";
+       sha256 = "1w5b62il0n8147a3sdvx9ndykfp56nf0kabwpw8khd29cmpff0bz";
        buildDepends = [
-         base containers data-interval lens music-pitch-literal nats
+         aeson base containers data-interval lens music-pitch-literal nats
          positive semigroups type-unary vector-space vector-space-points
        ];
-       jailbreak = true;
        description = "Musical pitch representation";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -91146,8 +91475,8 @@ self: {
     ({ mkDerivation, base, semigroups }:
      mkDerivation {
        pname = "music-pitch-literal";
-       version = "1.8.1";
-       sha256 = "11qjsxn10lrl3z7yi8h2likasy1g68ybbfzpnx03d01irl5kyzyf";
+       version = "1.9.0";
+       sha256 = "0vsvw7c29qvi69z9gy2zzq9bpajmjd5vs1kll7jw0qbsh28jsqql";
        buildDepends = [ base semigroups ];
        description = "Overloaded pitch literals";
        license = stdenv.lib.licenses.bsd3;
@@ -91163,8 +91492,8 @@ self: {
      }:
      mkDerivation {
        pname = "music-preludes";
-       version = "1.8.1";
-       sha256 = "0apqhv3658i7nrh40ksfxzbi21xvfaix1mm2m3bxid2plbm88qav";
+       version = "1.9.0";
+       sha256 = "1fqw3rz0zrwa5a0l639b0bd6qxiq4zmqcrf0vkrgh03n65r2901q";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -91175,29 +91504,28 @@ self: {
          vector-space vector-space-points
        ];
        testDepends = [ base process tasty tasty-golden ];
-       jailbreak = true;
        description = "Some useful preludes for the Music Suite";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "music-score" = callPackage
-    ({ mkDerivation, adjunctions, aeson, average, base, bifunctors
-     , colour, comonad, containers, contravariant, distributive, HCodecs
-     , lens, lilypond, monadplus, mtl, music-dynamics-literal
-     , music-pitch-literal, musicxml2, nats, NumInstances, parsec
-     , prettify, process, semigroups, transformers, transformers-compat
-     , vector-space, vector-space-points
+    ({ mkDerivation, adjunctions, aeson, average, base, base-orphans
+     , bifunctors, colour, comonad, containers, contravariant
+     , distributive, HCodecs, lens, lilypond, monadplus, mtl
+     , music-dynamics-literal, music-pitch-literal, musicxml2, nats
+     , NumInstances, parsec, prettify, process, semigroups, transformers
+     , transformers-compat, vector-space, vector-space-points
      }:
      mkDerivation {
        pname = "music-score";
-       version = "1.8.1";
-       sha256 = "1bz93g4v69wkwsamjmgbdxwnv77nwrnvrahj180vjkfwj77f88hq";
+       version = "1.9.0";
+       sha256 = "10cysii04njrjd0qx14fwsjn91ycvfxcs3kvwnb8j24v3svcha10";
        buildDepends = [
-         adjunctions aeson average base bifunctors colour comonad containers
-         contravariant distributive HCodecs lens lilypond monadplus mtl
-         music-dynamics-literal music-pitch-literal musicxml2 nats
-         NumInstances parsec prettify process semigroups transformers
+         adjunctions aeson average base base-orphans bifunctors colour
+         comonad containers contravariant distributive HCodecs lens lilypond
+         monadplus mtl music-dynamics-literal music-pitch-literal musicxml2
+         nats NumInstances parsec prettify process semigroups transformers
          transformers-compat vector-space vector-space-points
        ];
        jailbreak = true;
@@ -91208,18 +91536,19 @@ self: {
 
   "music-sibelius" = callPackage
     ({ mkDerivation, aeson, base, bytestring, lens, monadplus
+     , music-articulation, music-dynamics, music-parts, music-pitch
      , music-pitch-literal, music-preludes, music-score, semigroups
      , unordered-containers
      }:
      mkDerivation {
        pname = "music-sibelius";
-       version = "1.8.1";
-       sha256 = "0g36m4fym11kw2qwciv93zxbxklikmkxbvxlmgi6l9nkjd0n5q9v";
+       version = "1.9.0";
+       sha256 = "1yahz8z81ggcg303i2syzf6bsxq8dmzzzqs3fj89r5kq766275kz";
        buildDepends = [
-         aeson base bytestring lens monadplus music-pitch-literal
+         aeson base bytestring lens monadplus music-articulation
+         music-dynamics music-parts music-pitch music-pitch-literal
          music-preludes music-score semigroups unordered-containers
        ];
-       jailbreak = true;
        description = "Interaction with Sibelius";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -91232,8 +91561,8 @@ self: {
      }:
      mkDerivation {
        pname = "music-suite";
-       version = "1.8.1";
-       sha256 = "14hhzmsq5m2h0qq3220xv1gg90sn69whmiysj3y0mw6rcm0zia0f";
+       version = "1.9.0";
+       sha256 = "1nss12cad2vjq2whz5kxsr1r63iwc4pnza0nnf2h2zai3gxzsnn6";
        buildDepends = [
          abcnotation lilypond music-articulation music-dynamics
          music-dynamics-literal music-parts music-pitch music-pitch-literal
@@ -91317,8 +91646,8 @@ self: {
      }:
      mkDerivation {
        pname = "musicxml2";
-       version = "1.8.1";
-       sha256 = "096vm73a4ngl1yc27x7z226difh97zjm5386cy5vw58ndmf1fws7";
+       version = "1.9.0";
+       sha256 = "07axlifkqf0dcqnxfb62x829ygc2y7didsh60x081zw429853fy8";
        buildDepends = [
          base data-default music-dynamics-literal music-pitch-literal nats
          reverse-apply semigroups type-unary xml
@@ -91732,6 +92061,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "nagios-plugin-ekg" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, hspec, HUnit
+     , lens, nagios-check, optparse-applicative, text, transformers
+     , unordered-containers, wreq
+     }:
+     mkDerivation {
+       pname = "nagios-plugin-ekg";
+       version = "0.1.1.0";
+       sha256 = "1rk6sphxn93kmayjs0y386g1llhgbw8jpwhfkhlrbv9c395gxkrh";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         aeson base bytestring containers lens nagios-check
+         optparse-applicative text transformers unordered-containers wreq
+       ];
+       testDepends = [
+         base bytestring hspec HUnit nagios-check text transformers
+       ];
+       homepage = "https://github.com/fractalcat/nagios-plugin-ekg";
+       description = "Monitor ekg metrics via Nagios";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "named-formlet" = callPackage
     ({ mkDerivation, base, blaze-html, bytestring, containers, mtl
      , text, transformers
@@ -91967,6 +92319,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "nationstates" = callPackage
+    ({ mkDerivation, base, bytestring, clock, containers, http-client
+     , http-client-tls, http-types, multiset, split, transformers, xml
+     }:
+     mkDerivation {
+       pname = "nationstates";
+       version = "0.1.0.1";
+       sha256 = "0hnn4b94aj29j07jbhb7m7nn7l3wpkkcv76ngn1a5dnamagrwdpd";
+       buildDepends = [
+         base bytestring clock containers http-client http-client-tls
+         http-types multiset split transformers xml
+       ];
+       homepage = "https://github.com/lfairy/nationstates";
+       description = "NationStates API client";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "nats" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -92205,8 +92574,8 @@ self: {
      }:
      mkDerivation {
        pname = "neet";
-       version = "0.3.0.0";
-       sha256 = "1zbpnm0hlcga54x9jbxg748my9s1k2nj97p4haq6pkhbayskz1zi";
+       version = "0.4.0.0";
+       sha256 = "1x0l6cpjc9pjirjndh47asmva8jx5wc6gq8vab1ik2090ph0w1v5";
        buildDepends = [
          base cereal containers graphviz MonadRandom multimap parallel
          random transformers
@@ -92382,8 +92751,8 @@ self: {
      }:
      mkDerivation {
        pname = "nested-routes";
-       version = "2.2.0";
-       sha256 = "01daa0hhwgpp33sq1nlgnbkmn15ca8861qf6d7j5ypb9f48c6jr1";
+       version = "3.1.0";
+       sha256 = "128i669x31c4jagnamzlsv3z584rpijpmc832hr96004qkwr692n";
        buildDepends = [
          aeson attoparsec base blaze-html bytestring clay composition
          constraints containers http-media http-types lucid mtl poly-arity
@@ -92929,7 +93298,9 @@ self: {
      mkDerivation {
        pname = "network-carbon";
        version = "1.0.3";
+       revision = "1";
        sha256 = "0wk3rds1d2c6nr9gdz9qgpqhmkqkdkk0rqxzj3rznv0n9m9sylcr";
+       editedCabalFile = "6500f60c0b037a1e680ef3356ce43e27f145efe2cf85f63cb2e670cb344a926d";
        buildDepends = [ base bytestring network text time vector ];
        homepage = "http://github.com/ocharles/network-carbon";
        description = "A Haskell implementation of the Carbon protocol (part of the Graphite monitoring tools)";
@@ -93076,8 +93447,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "network-info";
-       version = "0.2.0.6";
-       sha256 = "1ymi2cw3914wvinw0wssmq8m2j4g92q1sd5vi9dxfyb7lrj1gga7";
+       version = "0.2.0.7";
+       sha256 = "0pa0051ji3sr8ax8z1gfgj8x0wvvr20i1zkxs28hq4hdsv1y4dpg";
        buildDepends = [ base ];
        homepage = "http://github.com/jystic/network-info";
        description = "Access the local computer's basic network configuration";
@@ -93405,7 +93776,9 @@ self: {
      mkDerivation {
        pname = "network-transport-amqp";
        version = "0.1.0.0";
+       revision = "2";
        sha256 = "1165xl5g8m423y4nvzwpihzrv6nc9y2dyr6dm4sqp6n1bw4dqqdq";
+       editedCabalFile = "724410b5035d55d170110908838d023a675306faf5fc056ed2a8d68beeb112d4";
        buildDepends = [
          amqp async base bytestring cereal containers exceptions lens-family
          lens-family-th network-transport stm stm-chans string-conv text
@@ -93420,6 +93793,23 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "network-transport-inmemory" = callPackage
+    ({ mkDerivation, base, bytestring, containers, data-accessor
+     , network-transport, network-transport-tests, stm
+     }:
+     mkDerivation {
+       pname = "network-transport-inmemory";
+       version = "0.5.0";
+       sha256 = "1znc4xk6arzi6vr8pfv2vyvak377jpxzzq82r17kz4csdrbnbfw6";
+       buildDepends = [
+         base bytestring containers data-accessor network-transport stm
+       ];
+       testDepends = [ base network-transport network-transport-tests ];
+       homepage = "http://haskell-distributed.github.com";
+       description = "In-memory instantiation of Network.Transport";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "network-transport-tcp" = callPackage
     ({ mkDerivation, base, bytestring, containers, data-accessor
      , network, network-transport, network-transport-tests
@@ -94792,8 +95182,8 @@ self: {
     ({ mkDerivation, base, containers }:
      mkDerivation {
        pname = "observable-sharing";
-       version = "0.2.1.0";
-       sha256 = "11k6wzk3k39d87zbxminz1ga7nw6r96lf5kki40y673n500i4vdc";
+       version = "0.2.1.2";
+       sha256 = "0f2da4bxid9ap21p0l6vf8czg84ifnzq1ljj1h4qy95ydv2bc0za";
        buildDepends = [ base containers ];
        homepage = "https://github.com/atzeus/observable-sharing";
        description = "Simple observable sharing";
@@ -94990,8 +95380,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "old-version";
-       version = "1.1.0";
-       sha256 = "1vlh6wz9khcamlb5pv5gy5bss7bws7b92j8kkyqf6cp22x4dxdlc";
+       version = "1.3.1";
+       sha256 = "19rra617l1rfixpc7s29q1frjk6zlbmp06gzcv03g3hv3f7c4hcf";
        buildDepends = [ base ];
        jailbreak = true;
        description = "Basic versioning library";
@@ -95006,7 +95396,9 @@ self: {
      mkDerivation {
        pname = "olwrapper";
        version = "0.4.1";
+       revision = "1";
        sha256 = "0cnkanaxsrsshk2y37sbvyyzc40k61r57zb0c3jarz583h3yzlai";
+       editedCabalFile = "44d11ed6751baf0383e968d36adca3c1ab49450cb0e147c1496feba468087e90";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -96540,7 +96932,9 @@ self: {
      mkDerivation {
        pname = "pagerduty";
        version = "0.0.3.2";
+       revision = "1";
        sha256 = "0cdn5xmqpfl85nair2ns3dv690wgyfiapks0lnc3aqi8nnly7bws";
+       editedCabalFile = "016fff9ce8abfc6dec19a84ed7043a2d6f6692f2b0f20a845e98a347a1bc48ba";
        buildDepends = [
          aeson base bifunctors bytestring bytestring-conversion conduit
          data-default-class exceptions generics-sop http-client http-types
@@ -96632,7 +97026,7 @@ self: {
   "pandoc" = callPackage
     ({ mkDerivation, aeson, alex, ansi-terminal, array, base
      , base64-bytestring, binary, blaze-html, blaze-markup, bytestring
-     , cmark, containers, css-text, data-default, deepseq-generics, Diff
+     , cmark, containers, data-default, deepseq-generics, Diff
      , directory, executable-path, extensible-exceptions, filemanip
      , filepath, haddock-library, happy, highlighting-kate, hslua, HTTP
      , http-client, http-client-tls, http-types, HUnit, JuicyPixels, mtl
@@ -96644,13 +97038,13 @@ self: {
      }:
      mkDerivation {
        pname = "pandoc";
-       version = "1.14.0.4";
-       sha256 = "1pzs4ysf7q3sxd8vyydzi5r4n8gjnkvjs3p1phmw4zir3zxmp581";
+       version = "1.15.0.4";
+       sha256 = "1mq7vdcxa7ia0s0l22ysqxpjsib4wvphh4849asswswgywscaq2n";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          aeson alex array base base64-bytestring binary blaze-html
-         blaze-markup bytestring cmark containers css-text data-default
+         blaze-markup bytestring cmark containers data-default
          deepseq-generics directory extensible-exceptions filemanip filepath
          haddock-library happy highlighting-kate hslua HTTP http-client
          http-client-tls http-types JuicyPixels mtl network network-uri
@@ -96665,7 +97059,7 @@ self: {
          test-framework-quickcheck2 text zip-archive
        ];
        configureFlags = [ "-fhttps" "-fmake-pandoc-man-pages" ];
-       homepage = "http://johnmacfarlane.net/pandoc";
+       homepage = "http://pandoc.org";
        description = "Conversion between markup formats";
        license = "GPL";
      }) {};
@@ -96715,6 +97109,7 @@ self: {
          base bytestring containers data-default hspec mtl pandoc
          pandoc-types process yaml
        ];
+       jailbreak = true;
        description = "Pandoc filter for cross-references";
        license = stdenv.lib.licenses.gpl2;
      }) {};
@@ -99020,8 +99415,8 @@ self: {
      }:
      mkDerivation {
        pname = "phash";
-       version = "0.0.4";
-       sha256 = "1bfikigj8bxgqwqz0lxi35s8sck41kjkz2ww1s10bim867h97si0";
+       version = "0.0.5";
+       sha256 = "1bndzncy52swvfk2p1imvxlbiv01qx9qi5mb68jmc22b1d99s6bv";
        buildDepends = [ base ];
        testDepends = [
          base doctest HUnit pHash smallcheck tasty tasty-hunit
@@ -99087,8 +99482,8 @@ self: {
      }:
      mkDerivation {
        pname = "photoname";
-       version = "3.0.1";
-       sha256 = "171vxmjzzwjzb4ixqnkwkg5d1zhswv5377hx79zj8sw68gm1h6b9";
+       version = "3.1";
+       sha256 = "0d44fzflpyw94rfyn9nw9pqklm01vw6nczava2kfj68sq12m94rp";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -99098,8 +99493,8 @@ self: {
          base directory exif filepath HUnit mtl old-locale parsec process
          regex-posix time unix
        ];
-       homepage = "http://ui3.info/d/proj/photoname.html";
-       description = "Rename JPEG photo files based on shoot date";
+       homepage = "http://hub.darcs.net/dino/photoname";
+       description = "Rename photo image files based on EXIF shoot date";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
@@ -99325,8 +99720,8 @@ self: {
     ({ mkDerivation, base, enumerator, pipes, transformers }:
      mkDerivation {
        pname = "pipe-enumerator";
-       version = "0.3.0.0";
-       sha256 = "0ralmrhyz88dmnlggmw7kq2gfw5xdb5xypjmmmlgs478z7f2qyd8";
+       version = "0.3.0.1";
+       sha256 = "1nma4pjc472nc9g8b626k7f01rl8z9hsd7j8wsa1ir3r7jb5jpwp";
        buildDepends = [ base enumerator pipes transformers ];
        homepage = "https://github.com/zadarnowski/pipe-enumerator";
        description = "A bidirectional bridge between pipes and iteratees";
@@ -99422,6 +99817,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pipes-bgzf" = callPackage
+    ({ mkDerivation, base, bytestring, mtl, parallel, pipes
+     , streaming-commons
+     }:
+     mkDerivation {
+       pname = "pipes-bgzf";
+       version = "0.2.0.1";
+       sha256 = "04y0wzy8982g64xyxq6rl9xc63n0c8xl8mhyf0x4ivqxnn49iv23";
+       buildDepends = [
+         base bytestring mtl parallel pipes streaming-commons
+       ];
+       description = "Blocked GZip";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pipes-binary" = callPackage
     ({ mkDerivation, base, binary, bytestring, ghc-prim
      , lens-family-core, pipes, pipes-bytestring, pipes-parse
@@ -99625,6 +100035,21 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pipes-fastx" = callPackage
+    ({ mkDerivation, attoparsec, base, bytestring, pipes
+     , pipes-attoparsec, pipes-bytestring
+     }:
+     mkDerivation {
+       pname = "pipes-fastx";
+       version = "0.3.0.0";
+       sha256 = "0xds11gfacj7m5lz6cssaj4v5z73ycrdmn57f0qxzqdsc2kln9ii";
+       buildDepends = [
+         attoparsec base bytestring pipes pipes-attoparsec pipes-bytestring
+       ];
+       description = "Streaming parsers for Fasta and Fastq";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pipes-group" = callPackage
     ({ mkDerivation, base, free, pipes, pipes-parse, transformers }:
      mkDerivation {
@@ -99651,6 +100076,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "pipes-illumina" = callPackage
+    ({ mkDerivation, base, bytestring, directory, filepath, pipes
+     , pipes-bgzf
+     }:
+     mkDerivation {
+       pname = "pipes-illumina";
+       version = "0.1.0.0";
+       sha256 = "19s6rkrfvmni914flq37fkbfs6angzl3c40bzg0ddivn4ada7jvn";
+       buildDepends = [
+         base bytestring directory filepath pipes pipes-bgzf
+       ];
+       homepage = "http://github.com/rcallahan/pipes-illumina";
+       description = "Illumina NGS data processing";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "pipes-interleave" = callPackage
     ({ mkDerivation, base, containers, pipes }:
      mkDerivation {
@@ -101004,10 +101445,9 @@ self: {
     ({ mkDerivation, base, nats, semigroups }:
      mkDerivation {
        pname = "positive";
-       version = "0.4";
-       sha256 = "0vj0gd7xln1xihf8dyrr2sm7zh5wg6qvfzy30nslwgvzyn4f14gv";
+       version = "0.4.1";
+       sha256 = "034vlx889sgwvn7g2s1vl3w0nf1vs0c2c1gc0vn77wd9l1vw0hfg";
        buildDepends = [ base nats semigroups ];
-       jailbreak = true;
        description = "Positive integers";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -101242,7 +101682,7 @@ self: {
   "postgresql-query" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, blaze-builder, bytestring
      , containers, data-default, either, exceptions, file-embed
-     , haskell-src-meta, monad-control, monad-logger, mtl
+     , haskell-src-meta, hreader, hset, monad-control, monad-logger, mtl
      , postgresql-simple, QuickCheck, quickcheck-assertions
      , quickcheck-instances, resource-pool, semigroups, tasty
      , tasty-hunit, tasty-quickcheck, tasty-th, template-haskell, text
@@ -101250,14 +101690,12 @@ self: {
      }:
      mkDerivation {
        pname = "postgresql-query";
-       version = "1.2.1";
-       revision = "1";
-       sha256 = "0dkbg55y4dmdka0ks2mz5m1dk17r5gdhkhk3bypjwchb4nyjvx1f";
-       editedCabalFile = "a751cfcead636156595561698606a6ddb945d763156414c71854a718494768e0";
+       version = "1.3.1";
+       sha256 = "19lzpxdfvidhrmmay2g3vxdbx9zcnp6r949lind04wbwwy3pbb0c";
        buildDepends = [
          aeson attoparsec base blaze-builder bytestring containers
-         data-default either exceptions file-embed haskell-src-meta
-         monad-control monad-logger mtl postgresql-simple resource-pool
+         data-default either exceptions file-embed haskell-src-meta hreader
+         hset monad-control monad-logger mtl postgresql-simple resource-pool
          semigroups template-haskell text time transformers
          transformers-base transformers-compat
        ];
@@ -101271,6 +101709,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "postgresql-schema" = callPackage
+    ({ mkDerivation, base, base-prelude, formatting, old-locale
+     , optparse-applicative, shelly, text, time
+     }:
+     mkDerivation {
+       pname = "postgresql-schema";
+       version = "0.1.3";
+       revision = "1";
+       sha256 = "17i4xpal7cf7km3p59p7m1cbc39rgkjwg6dkmhswnr669v40r350";
+       editedCabalFile = "48c36bad1c6796bd2c7211e0002d2aafc5bb0c8dedde4ec9f8ece597335096ce";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base base-prelude formatting old-locale optparse-applicative shelly
+         text time
+       ];
+       jailbreak = true;
+       homepage = "https://github.com/mfine/postgresql-schema";
+       description = "PostgreSQL Schema Management";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "postgresql-simple" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, base16-bytestring
      , blaze-builder, blaze-textual, bytestring, case-insensitive
@@ -101364,20 +101824,19 @@ self: {
   "postgresql-typed" = callPackage
     ({ mkDerivation, aeson, array, attoparsec, base, binary, bytestring
      , containers, cryptohash, haskell-src-meta, network, old-locale
-     , parsec, postgresql-binary, scientific, template-haskell, text
-     , time, utf8-string, uuid
+     , postgresql-binary, scientific, template-haskell, text, time
+     , utf8-string, uuid
      }:
      mkDerivation {
        pname = "postgresql-typed";
-       version = "0.3.3";
-       sha256 = "1fj02d0v9bpdgmzp2xqmz72flhl6pyw7v03kqmwyjhkp9afd4dsh";
+       version = "0.4.0";
+       sha256 = "0w3fbxwiqsl32g4hmkdxyw821nd14dv3i2pwykpx68c9w6vvlmx9";
        buildDepends = [
          aeson array attoparsec base binary bytestring containers cryptohash
-         haskell-src-meta network old-locale parsec postgresql-binary
-         scientific template-haskell text time utf8-string uuid
+         haskell-src-meta network old-locale postgresql-binary scientific
+         template-haskell text time utf8-string uuid
        ];
-       testDepends = [ base network time ];
-       jailbreak = true;
+       testDepends = [ base bytestring network time ];
        homepage = "https://github.com/dylex/postgresql-typed";
        description = "A PostgreSQL access library with compile-time SQL type inference";
        license = stdenv.lib.licenses.bsd3;
@@ -102553,10 +103012,8 @@ self: {
      }:
      mkDerivation {
        pname = "product-profunctors";
-       version = "0.6.1";
-       revision = "3";
-       sha256 = "0phwjngndgsggw2f74k6q43cnnw5w4nvfrfrmkwyz6hgah2zv562";
-       editedCabalFile = "01edcbebd6228c9fc9dbfbb173651e45cbca28cbd1dc55386a59dd24fb0a6ccd";
+       version = "0.6.3";
+       sha256 = "0mkir3anyccjzcqjybnmx4ijz2h0qnps48pc5giaszmfs9nv7p18";
        buildDepends = [ base contravariant profunctors template-haskell ];
        testDepends = [ base profunctors ];
        homepage = "https://github.com/tomjaguarpaw/product-profunctors";
@@ -102808,6 +103265,41 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "prometheus-client" = callPackage
+    ({ mkDerivation, atomic-primops, base, bytestring, containers
+     , doctest, hspec, mtl, QuickCheck, random-shuffle, stm, time
+     , transformers, utf8-string
+     }:
+     mkDerivation {
+       pname = "prometheus-client";
+       version = "0.1.0.1";
+       sha256 = "0bvp40rdlq8f6rh5v75pgqnmiwz85j960sfi22y7s0r5vykbgh5x";
+       buildDepends = [
+         atomic-primops base bytestring containers mtl stm time transformers
+         utf8-string
+       ];
+       testDepends = [
+         atomic-primops base bytestring containers doctest hspec mtl
+         QuickCheck random-shuffle stm time transformers utf8-string
+       ];
+       homepage = "https://github.com/fimad/prometheus-haskell";
+       description = "Haskell client library for http://prometheus.io.";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
+  "prometheus-metrics-ghc" = callPackage
+    ({ mkDerivation, base, doctest, prometheus-client, utf8-string }:
+     mkDerivation {
+       pname = "prometheus-metrics-ghc";
+       version = "0.1.0.1";
+       sha256 = "15a7hli2fsjmgjnvhdsv1572nqj3i214b0r9bygdang4cjrjv10p";
+       buildDepends = [ base prometheus-client utf8-string ];
+       testDepends = [ base doctest prometheus-client ];
+       homepage = "https://github.com/fimad/prometheus-haskell";
+       description = "Metrics exposing GHC runtime information for use with prometheus-client";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "promise" = callPackage
     ({ mkDerivation, async, base }:
      mkDerivation {
@@ -102833,6 +103325,20 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "prompt" = callPackage
+    ({ mkDerivation, base, mtl, transformers, transformers-compat }:
+     mkDerivation {
+       pname = "prompt";
+       version = "0.1.0.0";
+       revision = "3";
+       sha256 = "16gnd5spccfjl6q6ybxciy9am5bkrzssi13dxl73zyklj37nf9hq";
+       editedCabalFile = "dc64376a5e4f99f5ef13edbcac5d80610d73f78d4362b9acf75cf90af485f3f9";
+       buildDepends = [ base mtl transformers transformers-compat ];
+       homepage = "https://github.com/mstksg/prompt";
+       description = "Monad (and transformer) for deferred-effect pure prompt-response queries";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "propane" = callPackage
     ({ mkDerivation, base, colour, containers, directory, filepath
      , repa, repa-devil, spawn
@@ -103015,13 +103521,13 @@ self: {
      }:
      mkDerivation {
        pname = "protocol-buffers";
-       version = "2.0.17";
-       sha256 = "12aky44ssgdj6vsjg0yvr8350cym7n6kn7gdaax0nxzpfxrjfy1v";
+       version = "2.1.0";
+       sha256 = "11shs04gv2b9xx13izc6bkgqvvs7gv8k05vviyhscj5rpiihl9zi";
        buildDepends = [
          array base binary bytestring containers directory filepath mtl
          parsec syb utf8-string
        ];
-       homepage = "http://code.haskell.org/protocol-buffers/";
+       homepage = "https://github.com/k-bx/protocol-buffers";
        description = "Parse Google Protocol Buffer specifications";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -103031,10 +103537,10 @@ self: {
     ({ mkDerivation, base, bytestring, containers, protocol-buffers }:
      mkDerivation {
        pname = "protocol-buffers-descriptor";
-       version = "2.0.17";
-       sha256 = "0jl041645d83iqqiw891d2k760jql6djvi2mmjh9lnmp48lwjy3p";
+       version = "2.1.0";
+       sha256 = "1id9pz8mxn7c6z433zib55fkx0s46316y6n2wpjk9zld21a2z5hy";
        buildDepends = [ base bytestring containers protocol-buffers ];
-       homepage = "http://code.haskell.org/protocol-buffers/";
+       homepage = "https://github.com/k-bx/protocol-buffers";
        description = "Text.DescriptorProto.Options and code generated from the Google Protocol Buffer specification";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -103615,24 +104121,32 @@ self: {
      }) {};
 
   "purescript" = callPackage
-    ({ mkDerivation, base, boxes, containers, directory, file-embed
-     , filepath, haskeline, mtl, nodejs, optparse-applicative, parsec
-     , pattern-arrows, process, time, transformers, unordered-containers
-     , utf8-string
+    ({ mkDerivation, aeson, aeson-better-errors, ansi-wl-pprint, base
+     , bower-json, boxes, bytestring, containers, directory, dlist
+     , filepath, Glob, haskeline, HUnit, language-javascript, mtl
+     , nodejs, optparse-applicative, parsec, pattern-arrows, process
+     , safe, semigroups, split, syb, text, time, transformers
+     , transformers-compat, unordered-containers, utf8-string, vector
      }:
      mkDerivation {
        pname = "purescript";
-       version = "0.6.9.5";
-       sha256 = "196iq0jaryna4cgg7f07axccbnl5h82fvrjlry6839q05ndl83vf";
+       version = "0.7.0.0";
+       revision = "1";
+       sha256 = "02kb8xk2c3lzm8bdph7q93chgdpjz00mhk76kpr1hjfwr6kniw91";
+       editedCabalFile = "0ec2a8e9a05aab3ca9b407ea66b8501f2bf067f7dfa9e408ff200819e63ff31f";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
-         base boxes containers directory file-embed filepath haskeline mtl
-         optparse-applicative parsec pattern-arrows process time
-         transformers unordered-containers utf8-string
+         aeson aeson-better-errors ansi-wl-pprint base bower-json boxes
+         bytestring containers directory dlist filepath Glob haskeline
+         language-javascript mtl optparse-applicative parsec pattern-arrows
+         process safe semigroups split syb text time transformers
+         transformers-compat unordered-containers utf8-string vector
        ];
        testDepends = [
-         base containers directory filepath mtl parsec process transformers
+         base containers directory filepath Glob haskeline HUnit mtl
+         optparse-applicative parsec process time transformers
+         transformers-compat
        ];
        buildTools = [ nodejs ];
        jailbreak = true;
@@ -105909,18 +106423,20 @@ self: {
 
   "redis-io" = callPackage
     ({ mkDerivation, async, attoparsec, auto-update, base, bytestring
-     , bytestring-conversion, containers, exceptions, monad-control, mtl
-     , network, operational, redis-resp, resource-pool, tasty
-     , tasty-hunit, time, tinylog, transformers, transformers-base
+     , bytestring-conversion, containers, exceptions, iproute
+     , monad-control, mtl, network, operational, redis-resp
+     , resource-pool, semigroups, stm, tasty, tasty-hunit, time, tinylog
+     , transformers, transformers-base
      }:
      mkDerivation {
        pname = "redis-io";
-       version = "0.4.1";
-       sha256 = "0xd0dwkh8l7m75fp7sla8wf07hlgjlgqkpsj9cnwfg4g1gyx2yy2";
+       version = "0.5.1";
+       sha256 = "13zj3d89drqdfq8202y982l7jp0nc3mmnmhwpxxfap0pb69n2s5m";
        buildDepends = [
          attoparsec auto-update base bytestring containers exceptions
-         monad-control mtl network operational redis-resp resource-pool time
-         tinylog transformers transformers-base
+         iproute monad-control mtl network operational redis-resp
+         resource-pool semigroups stm time tinylog transformers
+         transformers-base
        ];
        testDepends = [
          async base bytestring bytestring-conversion containers redis-resp
@@ -105928,7 +106444,7 @@ self: {
        ];
        homepage = "https://github.com/twittner/redis-io/";
        description = "Yet another redis client";
-       license = "unknown";
+       license = stdenv.lib.licenses.mpl20;
      }) {};
 
   "redis-resp" = callPackage
@@ -105939,9 +106455,9 @@ self: {
      mkDerivation {
        pname = "redis-resp";
        version = "0.3.2";
-       revision = "1";
+       revision = "2";
        sha256 = "07lvgq2l2fahhc9z3hjjjpx3n4rzdxl2l2ww9brxnv23432xpz97";
-       editedCabalFile = "74f97af6250dcf3b26d424e5a53a4a9bdcda5de4f7f4d5fc4d6b686f60f6d931";
+       editedCabalFile = "6375e871f3ad78efa6e4780c4e5c026fa4694f27e32f3837679fff42f488877f";
        buildDepends = [
          attoparsec base bytestring bytestring-conversion containers dlist
          double-conversion operational semigroups split transformers
@@ -106305,8 +106821,8 @@ self: {
      }:
      mkDerivation {
        pname = "regex-applicative";
-       version = "0.3.1";
-       sha256 = "1klmi101zfpngf8c7fp2ch48kadbw6xs5lg0h00x7wi0zfrdbf0y";
+       version = "0.3.2.1";
+       sha256 = "19swnf6mqjxg7d1wxr4h9drjm51af4hj4ax712n8702xfvfb4jmz";
        buildDepends = [ base containers transformers ];
        testDepends = [
          base containers smallcheck tasty tasty-hunit tasty-smallcheck
@@ -106968,8 +107484,8 @@ self: {
      }:
      mkDerivation {
        pname = "relational-query";
-       version = "0.5.0.3";
-       sha256 = "0kqhlnyl6gn1mm7ixz284xk78xrk1j80id6s0znpa6lpck2bszfz";
+       version = "0.5.1.0";
+       sha256 = "03n0jg79zirbq2rbp4gpbnr4lrmcv38pv7887d8qi2bm692z5qg5";
        buildDepends = [
          array base bytestring containers dlist names-th persistable-record
          sql-words template-haskell text time time-locale-compat
@@ -107503,13 +108019,14 @@ self: {
      }) {};
 
   "repline" = callPackage
-    ({ mkDerivation, base, containers, haskeline, mtl }:
+    ({ mkDerivation, base, containers, haskeline, mtl, process }:
      mkDerivation {
        pname = "repline";
-       version = "0.1.3.0";
-       sha256 = "0cdbsmcvgrizpkfkzalfzw2lxfh8hcm62h1h1gcly41y0acb5ka5";
-       buildDepends = [ base containers haskeline mtl ];
-       jailbreak = true;
+       version = "0.1.4.0";
+       sha256 = "16qi3lpgymn61nssv9k21v889xszycimp6i5602llnry6ks77bij";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [ base containers haskeline mtl process ];
        description = "Haskeline wrapper for GHCi-like REPL interfaces";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -107917,8 +108434,8 @@ self: {
      }:
      mkDerivation {
        pname = "rest-gen";
-       version = "0.17.0.6";
-       sha256 = "0pkqpycvsdbz2kk6lsq226rkgfrbwh49jky1wcik36yh3s9hfxdq";
+       version = "0.17.1";
+       sha256 = "0rblnqdqajlqkrf5dp03bj16y9nw0kkdjy8ry7j7f6mvkrdccbwl";
        buildDepends = [
          aeson base blaze-html Cabal code-builder directory fclabels
          filepath hashable haskell-src-exts HStringTemplate hxt json-schema
@@ -108114,8 +108631,8 @@ self: {
      }:
      mkDerivation {
        pname = "rethinkdb-client-driver";
-       version = "0.0.18";
-       sha256 = "1zj9b0k9v1pi66m8j36zv2i6dc2r8njlsjalfiifch3knpfadl4z";
+       version = "0.0.19";
+       sha256 = "0yzmypflg133dzy5yj2jmdk450zmr237prjvnaf9343jiy143nyi";
        buildDepends = [
          aeson base binary bytestring hashable mtl network old-locale
          scientific template-haskell text time unordered-containers vector
@@ -108377,23 +108894,23 @@ self: {
 
   "riak" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, binary, blaze-builder
-     , bytestring, containers, monad-control, network
+     , bytestring, containers, HUnit, monad-control, network
      , protocol-buffers-fork, pureMD5, QuickCheck, random, resource-pool
-     , riak-protobuf, test-framework, test-framework-quickcheck2, text
-     , time
+     , riak-protobuf, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, text, time
      }:
      mkDerivation {
        pname = "riak";
-       version = "0.7.2.1";
-       sha256 = "0i7lq6difvl6pskk6j4ajm3q3nliv802h4c74hkmkpqwf5n3pwa7";
+       version = "0.8.0.0";
+       sha256 = "16ncq22vhg62p1v1ch1jc1z3xds1qsr536fg3awvp7a0a8vyq528";
        buildDepends = [
          aeson attoparsec base binary blaze-builder bytestring containers
          monad-control network protocol-buffers-fork pureMD5 random
          resource-pool riak-protobuf text time
        ];
        testDepends = [
-         base bytestring QuickCheck test-framework
-         test-framework-quickcheck2
+         base bytestring containers HUnit QuickCheck test-framework
+         test-framework-hunit test-framework-quickcheck2 text
        ];
        homepage = "http://github.com/markhibberd/riak-haskell-client";
        description = "A Haskell client for the Riak decentralized data store";
@@ -108407,8 +108924,8 @@ self: {
      }:
      mkDerivation {
        pname = "riak-protobuf";
-       version = "0.18.0.0";
-       sha256 = "0vs8l2czbqhfgx4iyhqldrrnvdjbbq94pab33sw3nqbwij3012hw";
+       version = "0.19.0.0";
+       sha256 = "1954f8hgibmilqpf72pp2yf8nx9cm60gfk1ypmb99h69lf8d5x1y";
        buildDepends = [
          array base parsec protocol-buffers-descriptor-fork
          protocol-buffers-fork
@@ -108635,6 +109152,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "rlglue" = callPackage
+    ({ mkDerivation, base, binary, bytestring, data-binary-ieee754
+     , exceptions, network, network-simple, parsec, random, transformers
+     }:
+     mkDerivation {
+       pname = "rlglue";
+       version = "0.2.2.0";
+       sha256 = "0672j0xjlhyyfq2fbvnfc0gahihpkkcfh7nnbwh1salgy0ykzhq0";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base binary bytestring data-binary-ieee754 exceptions network
+         network-simple parsec random transformers
+       ];
+       jailbreak = true;
+       description = "A Haskell codec for RL-Glue";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "rmonad" = callPackage
     ({ mkDerivation, base, containers, HUnit, suitable, test-framework
      , test-framework-hunit, transformers
@@ -108921,8 +109457,8 @@ self: {
      }:
      mkDerivation {
        pname = "rosa";
-       version = "0.2.0.0";
-       sha256 = "198xzbzkalg7xlngrl52mh1iinipk6b00gnhmh6fnjrj1s61nqq6";
+       version = "0.2.1.0";
+       sha256 = "0qnvv8vyijjgb51pw5zfcmxy96nnnfrsvbg8xrnmq3p34xc168gb";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -111387,15 +111923,17 @@ self: {
      }:
      mkDerivation {
        pname = "second-transfer";
-       version = "0.5.4.0";
-       sha256 = "0942z5pdwy4dck3iprx9qafwzv006vkma0626yfarqqw2k5a4jjb";
+       version = "0.5.5.0";
+       sha256 = "0l973282vvgr65iy2q7xrj608lsny3krdw4mx1ia9mfvga8ybrg8";
        buildDepends = [
          attoparsec base base16-bytestring binary bytestring conduit
          containers exceptions hashable hashtables hslogger http2 lens
          network network-uri text time transformers
        ];
        testDepends = [
-         base bytestring conduit http2 HUnit lens transformers
+         attoparsec base base16-bytestring binary bytestring conduit
+         containers cpphs exceptions hashable hashtables hslogger http2
+         HUnit lens network network-uri text time transformers
        ];
        buildTools = [ cpphs ];
        extraLibraries = [ openssl ];
@@ -111880,6 +112418,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "seqalign" = callPackage
+    ({ mkDerivation, base, bytestring, vector }:
+     mkDerivation {
+       pname = "seqalign";
+       version = "0.2.0.4";
+       sha256 = "01a3fhymyp7279hym03zzz6qkh5h47nq5y1xglar0n46imjr98af";
+       buildDepends = [ base bytestring vector ];
+       description = "Sequence Alignment";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "seqid_0_1_0" = callPackage
     ({ mkDerivation, base, transformers }:
      mkDerivation {
@@ -111994,8 +112543,8 @@ self: {
     ({ mkDerivation, base, bytestring, containers, ghc, transformers }:
      mkDerivation {
        pname = "sequent-core";
-       version = "0.4";
-       sha256 = "07lgzdhywdv2jzzijnx01z587n8bb2smd48v15rir9v17fsfp105";
+       version = "0.5.0.1";
+       sha256 = "1q9rrr0nrnnhdv2jwpwjs1r98g3xdbqi7sfj7zsv1dykzalmc2nd";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [ base bytestring containers ghc transformers ];
@@ -112267,8 +112816,8 @@ self: {
      }:
      mkDerivation {
        pname = "servant-pandoc";
-       version = "0.4.0";
-       sha256 = "07cyw1d12hg5amjrbsmk2m2ch52yav16k8c3sh83xf42f2j05avs";
+       version = "0.4.1";
+       sha256 = "1kfs45z6pja2v4dambivc5cxx8dfr7vrjx38w0cfpmhyi5xz5jdp";
        buildDepends = [
          base bytestring http-media lens pandoc-types semigroupoids
          servant-docs text unordered-containers
@@ -113481,6 +114030,19 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "should-not-typecheck" = callPackage
+    ({ mkDerivation, base, deepseq, hspec, hspec-expectations, HUnit }:
+     mkDerivation {
+       pname = "should-not-typecheck";
+       version = "2.0";
+       sha256 = "0869dgn7xccnzxhzbjl150x0sdwwgppk06nq448i9xlnhhrk6dkc";
+       buildDepends = [ base deepseq HUnit ];
+       testDepends = [ base deepseq hspec hspec-expectations HUnit ];
+       homepage = "http://github.com/CRogers/should-not-typecheck";
+       description = "A HUnit/hspec assertion library to verify that an expression does not typecheck";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "show" = callPackage
     ({ mkDerivation, base, syb }:
      mkDerivation {
@@ -115098,12 +115660,12 @@ self: {
      }) {};
 
   "smoothie" = callPackage
-    ({ mkDerivation, base, linear, vector }:
+    ({ mkDerivation, aeson, base, linear, vector }:
      mkDerivation {
        pname = "smoothie";
-       version = "0.2.1";
-       sha256 = "07n0qhxhy800nyahfja8qdzk5ygvj4d2l7i2nwh3f3mqy5bp5jyz";
-       buildDepends = [ base linear vector ];
+       version = "0.3.2";
+       sha256 = "0al17y15k7y04dwz5v2bsq003lxzhkhqlbdmbljdr1z17yszcjp6";
+       buildDepends = [ aeson base linear vector ];
        homepage = "https://github.com/phaazon/smoothie";
        description = "Smooth curves via several splines and polynomials";
        license = stdenv.lib.licenses.bsd3;
@@ -115756,13 +116318,18 @@ self: {
      }) {};
 
   "snaplet-hasql" = callPackage
-    ({ mkDerivation, base, hasql, hasql-backend, lens, mtl, snap }:
+    ({ mkDerivation, aeson, base, bytestring, clientsession
+     , configurator, hasql, hasql-backend, lens, mtl, snap, text, time
+     }:
      mkDerivation {
        pname = "snaplet-hasql";
-       version = "0.0.2";
-       sha256 = "1argaxdmr1znjgvhyj8cnbnygj98nan66la9n4knmbizaqy0yw3m";
-       buildDepends = [ base hasql hasql-backend lens mtl snap ];
-       jailbreak = true;
+       version = "1.0.2";
+       sha256 = "08gx096vg0swjc7z10nzlqsnjlr43cp190q4krkf08jb54ln3kcv";
+       buildDepends = [
+         aeson base bytestring clientsession configurator hasql
+         hasql-backend lens mtl snap text time
+       ];
+       homepage = "https://github.com/mikeplus64/snaplet-hasql";
        description = "A Hasql snaplet";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -116734,24 +117301,6 @@ self: {
        license = stdenv.lib.licenses.lgpl21;
      }) {};
 
-  "som" = callPackage
-    ({ mkDerivation, base, containers, grid, MonadRandom, QuickCheck
-     , random, test-framework, test-framework-quickcheck2
-     }:
-     mkDerivation {
-       pname = "som";
-       version = "8.0.5";
-       sha256 = "1cprlv1mbs722ap3cicgi0haph9xlz2xvcm374857d11ly31wav0";
-       buildDepends = [ base containers grid MonadRandom ];
-       testDepends = [
-         base containers grid MonadRandom QuickCheck random test-framework
-         test-framework-quickcheck2
-       ];
-       homepage = "https://github.com/mhwombat/som";
-       description = "Self-Organising Maps";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
   "sonic-visualiser" = callPackage
     ({ mkDerivation, array, base, bytestring, bzlib, containers, mtl
      , pretty, utf8-string, xml
@@ -117069,8 +117618,8 @@ self: {
      }:
      mkDerivation {
        pname = "sparse";
-       version = "0.9.1";
-       sha256 = "1pa1h21ca710fdjz60b79jg0v2lr0l11avpiynp9n1cw5bz137fk";
+       version = "0.9.2";
+       sha256 = "0ckjmpnav3rd40ylksrwc0awy4pigv6ngm15z1k6sicw73iyl3pd";
        buildDepends = [
          base contravariant deepseq hybrid-vectors lens primitive
          transformers vector vector-algorithms
@@ -117187,8 +117736,8 @@ self: {
     ({ mkDerivation, base, tasty, tasty-quickcheck, transformers }:
      mkDerivation {
        pname = "spdx";
-       version = "0.0.1.0";
-       sha256 = "0k4lpny0fl6yz92m3040dmsqjcyb5gslf0306hlsqbsbn1gzjjmm";
+       version = "0.1.2.0";
+       sha256 = "0mncj2053w1xsfrsx1472v85ia4spvshw18mp15xp3l6haxq7wxq";
        buildDepends = [ base transformers ];
        testDepends = [ base tasty tasty-quickcheck ];
        homepage = "https://github.com/phadej/spdx";
@@ -118217,9 +118766,9 @@ self: {
 
   "stack" = callPackage
     ({ mkDerivation, aeson, async, attoparsec, base, base16-bytestring
-     , base64-bytestring, bifunctors, binary, bytestring, Cabal, conduit
-     , conduit-combinators, conduit-extra, containers, cryptohash
-     , cryptohash-conduit, deepseq, directory, either
+     , base64-bytestring, bifunctors, binary, blaze-builder, bytestring
+     , Cabal, conduit, conduit-combinators, conduit-extra, containers
+     , cryptohash, cryptohash-conduit, deepseq, directory, either
      , enclosed-exceptions, exceptions, fast-logger, file-embed
      , filepath, hashable, hspec, http-client, http-client-tls
      , http-conduit, http-types, lifted-base, monad-control
@@ -118233,23 +118782,25 @@ self: {
      }:
      mkDerivation {
        pname = "stack";
-       version = "0.1.0.0";
-       sha256 = "0ws0d1gran02jag06176w5c2wrc13q5hp82mxdmm9sif93k2cvg6";
+       version = "9.9.9";
+       revision = "2";
+       sha256 = "1kpsza23b22mg970c2qs943khzad38imzsa1xzki2a3xvfiadana";
+       editedCabalFile = "e8298be03ed84f7858e9ce16a677a272c3a31b7e5180e094fa9ee120b03c6299";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
          aeson async attoparsec base base16-bytestring base64-bytestring
-         bifunctors binary bytestring Cabal conduit conduit-combinators
-         conduit-extra containers cryptohash cryptohash-conduit deepseq
-         directory either enclosed-exceptions exceptions fast-logger
-         file-embed filepath hashable http-client http-client-tls
-         http-conduit http-types lifted-base monad-control monad-logger
-         monad-loops mtl old-locale optparse-applicative optparse-simple
-         path persistent persistent-sqlite persistent-template pretty
-         process resourcet safe split stm streaming-commons tar
-         template-haskell temporary text time transformers transformers-base
-         unix unordered-containers vector vector-binary-instances void word8
-         yaml zlib
+         bifunctors binary blaze-builder bytestring Cabal conduit
+         conduit-combinators conduit-extra containers cryptohash
+         cryptohash-conduit deepseq directory either enclosed-exceptions
+         exceptions fast-logger file-embed filepath hashable http-client
+         http-client-tls http-conduit http-types lifted-base monad-control
+         monad-logger monad-loops mtl old-locale optparse-applicative
+         optparse-simple path persistent persistent-sqlite
+         persistent-template pretty process resourcet safe split stm
+         streaming-commons tar template-haskell temporary text time
+         transformers transformers-base unix unordered-containers vector
+         vector-binary-instances void word8 yaml zlib
        ];
        testDepends = [
          async base bytestring Cabal conduit conduit-extra containers
@@ -118257,10 +118808,10 @@ self: {
          monad-logger path process resourcet temporary text transformers
          unix-compat
        ];
+       jailbreak = true;
        homepage = "https://github.com/commercialhaskell/stack";
        description = "The Haskell Tool Stack";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "stack-prism" = callPackage
@@ -118620,6 +119171,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "stash" = callPackage
+    ({ mkDerivation, aeson, attoparsec, base, bytestring, directory
+     , hashable, text, vector
+     }:
+     mkDerivation {
+       pname = "stash";
+       version = "0.1";
+       sha256 = "01h3s19agw2aa6a0hw8f9k2qibmckqllvnx2yy2w2p1xlw8g9jwm";
+       buildDepends = [
+         aeson attoparsec base bytestring directory hashable text vector
+       ];
+       description = "To be written";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "state" = callPackage
     ({ mkDerivation, arrows, base, mtl }:
      mkDerivation {
@@ -120099,8 +120665,8 @@ self: {
      }:
      mkDerivation {
        pname = "structural-induction";
-       version = "0.2.0.1";
-       sha256 = "0ac5yhx6cbxzcdqy74lp791xwgammsnd8jazx0xy3ngxn4wwf23r";
+       version = "0.3";
+       sha256 = "1wykd33phjmz2aky2dynsxmrmxqpkh4h41majq57lh3dag87cwax";
        buildDepends = [ base containers genifunctors mtl pretty safe ];
        testDepends = [
          base geniplate language-haskell-extract mtl pretty QuickCheck safe
@@ -120267,6 +120833,30 @@ self: {
        license = "GPL";
      }) {};
 
+  "subhask" = callPackage
+    ({ mkDerivation, approximate, base, bloomfilter, bytes, bytestring
+     , cassava, containers, deepseq, erf, gamma, ghc-prim, hmatrix
+     , hyperloglog, lens, monad-primitive, MonadRandom, mtl, parallel
+     , pipes, primitive, QuickCheck, semigroups, template-haskell
+     , test-framework, test-framework-quickcheck2, vector
+     }:
+     mkDerivation {
+       pname = "subhask";
+       version = "0.1.0.1";
+       sha256 = "17r26mccarr9m7wxvax3bmwz94gcaxg732797js1qa12fdnbsn8m";
+       buildDepends = [
+         approximate base bloomfilter bytes bytestring cassava containers
+         deepseq erf gamma ghc-prim hmatrix hyperloglog lens monad-primitive
+         MonadRandom mtl parallel pipes primitive QuickCheck semigroups
+         template-haskell vector
+       ];
+       testDepends = [ base test-framework test-framework-quickcheck2 ];
+       jailbreak = true;
+       homepage = "http://github.com/mikeizbicki/subhask";
+       description = "Type safe interface for programming in subcategories of Hask";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "subnet" = callPackage
     ({ mkDerivation, base, split }:
      mkDerivation {
@@ -120821,6 +121411,7 @@ self: {
        jailbreak = true;
        description = "A simple web server for serving directories, similar to weborf";
        license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "syb" = callPackage
@@ -121383,8 +121974,8 @@ self: {
      }:
      mkDerivation {
        pname = "sys-process";
-       version = "0.1.5";
-       sha256 = "1lpysza901xv4942pixbgccpxh4rc8z9v819fb45zyxfakjcywbj";
+       version = "0.1.6";
+       sha256 = "04f6mbkc61qx8wjf95kwxhrqhv2qprl2wa73rkgsq8nc18gicf3q";
        buildDepends = [
          base bifunctors directory filepath lens mtl notzero process
          semigroupoids semigroups transformers
@@ -121874,8 +122465,8 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "tagged";
-       version = "0.8.0.1";
-       sha256 = "1w1xi107lmp8pfhf9d6hmaji2lp7himx0hqc8gh81w2rpr8g3bjh";
+       version = "0.8.1";
+       sha256 = "1hc2qzhhz5p1xd8k03sklrdnhcflkwhgpl82k6fam8yckww9ipav";
        buildDepends = [ base template-haskell ];
        homepage = "http://github.com/ekmett/tagged";
        description = "Haskell 98 phantom types to avoid unsafely passing dummy arguments";
@@ -121980,7 +122571,9 @@ self: {
      mkDerivation {
        pname = "taggy";
        version = "0.2.0";
+       revision = "1";
        sha256 = "01q2ccf3a8akaifh79ajnfr5yrjsq4xihq0pl7lsz173n7mhnsy3";
+       editedCabalFile = "0343ad030ba4e9fd651b383e92c213c6c4a6560ec33f561cfcfa9c5493deb50b";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -123620,6 +124213,17 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "testing-type-modifiers" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "testing-type-modifiers";
+       version = "0.1.0.1";
+       sha256 = "1wh2n95n39ivv6kbqn42vbzrj8zagsmk6f2al2qj40bg5kgdl2q5";
+       buildDepends = [ base ];
+       description = "Data type modifiers for property based testing";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "testloop" = callPackage
     ({ mkDerivation, base, Cabal, directory, filepath, fsnotify, hint
      , mtl, system-filepath, time, unix
@@ -123719,8 +124323,8 @@ self: {
      }:
      mkDerivation {
        pname = "texmath";
-       version = "0.8.2";
-       sha256 = "1dqx00ai4cgvrih0pwk46iajcpdq6a2dn8ndy1lficgqld6dvdzr";
+       version = "0.8.2.2";
+       sha256 = "1wy2rr18wsn9q06arrxibahpsnr8bqrzsimmpgwji6nxpzc95x51";
        isLibrary = true;
        isExecutable = true;
        buildDepends = [
@@ -124050,23 +124654,25 @@ self: {
 
   "text-show" = callPackage
     ({ mkDerivation, array, base, base-compat, base-orphans, bytestring
-     , bytestring-builder, ghc-prim, hspec, integer-gmp, nats
-     , QuickCheck, quickcheck-instances, semigroups, tagged
-     , template-haskell, text, transformers, transformers-compat, void
+     , bytestring-builder, containers, generic-deriving, ghc-prim, hspec
+     , integer-gmp, nats, QuickCheck, quickcheck-instances, semigroups
+     , tagged, template-haskell, text, transformers, transformers-compat
+     , void
      }:
      mkDerivation {
        pname = "text-show";
-       version = "0.8.1.1";
-       sha256 = "130nqg0fgvnzi5zl0c0cwxjm2jppjmxm9z04g0rv498cl783ag45";
+       version = "1";
+       sha256 = "1ac8pk2nsbzl080r2qqm6jmkq3yq4rx6czfdsfkxydxyklrvi83d";
        buildDepends = [
-         array base base-compat bytestring bytestring-builder ghc-prim
-         integer-gmp nats semigroups tagged template-haskell text
-         transformers void
+         array base base-compat bytestring bytestring-builder containers
+         generic-deriving ghc-prim integer-gmp nats semigroups tagged
+         template-haskell text transformers void
        ];
        testDepends = [
          array base base-compat base-orphans bytestring bytestring-builder
-         ghc-prim hspec nats QuickCheck quickcheck-instances tagged text
-         transformers transformers-compat void
+         generic-deriving ghc-prim hspec nats QuickCheck
+         quickcheck-instances tagged text transformers transformers-compat
+         void
        ];
        homepage = "https://github.com/RyanGlScott/text-show";
        description = "Efficient conversion of values into Text";
@@ -124074,30 +124680,29 @@ self: {
      }) {};
 
   "text-show-instances" = callPackage
-    ({ mkDerivation, base, base-compat, binary, bytestring, containers
-     , directory, haskeline, hoopl, hpc, hspec, old-locale, old-time
-     , pretty, QuickCheck, quickcheck-instances, random, semigroups
-     , tagged, template-haskell, terminfo, text, text-show, time
-     , transformers, transformers-compat, unix, unordered-containers
-     , utf8-string, vector, xhtml
+    ({ mkDerivation, base, base-compat, bifunctors, binary, bytestring
+     , containers, directory, ghc-prim, haskeline, hoopl, hpc, hspec
+     , old-locale, old-time, pretty, QuickCheck, quickcheck-instances
+     , random, semigroups, tagged, template-haskell, terminfo, text
+     , text-show, th-orphans, time, transformers, transformers-compat
+     , unix, unordered-containers, vector, xhtml
      }:
      mkDerivation {
        pname = "text-show-instances";
-       version = "0.4";
-       sha256 = "1zk3q11dsr8n15r6r9dhqwyh6irqv6s2q7mkgzlgzw1narvllil2";
+       version = "1";
+       sha256 = "0503bb8yy952gs5ywndm0qm2v1z5xm1k09vcwrnsxx979irmpksh";
        buildDepends = [
-         base base-compat binary bytestring containers directory haskeline
-         hoopl hpc old-locale old-time pretty random semigroups tagged
-         template-haskell terminfo text text-show time transformers
-         transformers-compat unix unordered-containers utf8-string vector
-         xhtml
+         base base-compat bifunctors binary bytestring containers directory
+         haskeline hoopl hpc old-locale old-time pretty random semigroups
+         tagged template-haskell terminfo text text-show time transformers
+         transformers-compat unix unordered-containers vector xhtml
        ];
        testDepends = [
-         base base-compat binary bytestring containers directory haskeline
-         hoopl hpc hspec old-locale old-time pretty QuickCheck
-         quickcheck-instances random semigroups tagged template-haskell
-         terminfo text-show time transformers transformers-compat unix
-         unordered-containers utf8-string vector xhtml
+         base base-compat bifunctors binary bytestring containers directory
+         ghc-prim haskeline hoopl hpc hspec old-locale old-time pretty
+         QuickCheck quickcheck-instances random semigroups tagged
+         template-haskell terminfo text-show th-orphans time transformers
+         transformers-compat unix unordered-containers vector xhtml
        ];
        homepage = "https://github.com/RyanGlScott/text-show-instances";
        description = "Additional instances for text-show";
@@ -125587,8 +126192,8 @@ self: {
      }:
      mkDerivation {
        pname = "timeplot";
-       version = "1.0.28";
-       sha256 = "1bazhm0hlhhkw6vhn34hsk8xk0h3k2dlram5xhpnn51g7z2b9v71";
+       version = "1.0.29";
+       sha256 = "01px3hyl5hb114jibjr3p6pda6ppvxv2alk31wwc82dywnjp1srx";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -125596,6 +126201,7 @@ self: {
          containers data-default lens regex-tdfa strptime template-haskell
          time transformers vcs-revision
        ];
+       jailbreak = true;
        homepage = "http://haskell.org/haskellwiki/Timeplot";
        description = "A tool for visualizing time series from log files";
        license = stdenv.lib.licenses.bsd3;
@@ -125603,20 +126209,18 @@ self: {
      }) {};
 
   "timerep" = callPackage
-    ({ mkDerivation, attoparsec, base, Cabal, cabal-test-quickcheck
-     , monoid-subclasses, QuickCheck, text, time, time-locale-compat
+    ({ mkDerivation, attoparsec, base, monoid-subclasses, QuickCheck
+     , tasty, tasty-hunit, tasty-quickcheck, text, time
      }:
      mkDerivation {
        pname = "timerep";
-       version = "2.0.0";
-       sha256 = "1s2m5z36ll4r2xijw6jv0wblva79jpzz6737l607hn3pvq13nbzz";
-       buildDepends = [
-         attoparsec base monoid-subclasses text time time-locale-compat
-       ];
+       version = "2.0.0.1";
+       sha256 = "0rk3svwx7axp77v92j1gpmnni0jlniw3sz55q5hpa6k43d2jr4b8";
+       buildDepends = [ attoparsec base monoid-subclasses text time ];
        testDepends = [
-         base Cabal cabal-test-quickcheck QuickCheck text time
-         time-locale-compat
+         base QuickCheck tasty tasty-hunit tasty-quickcheck text time
        ];
+       homepage = "https://github.com/HugoDaniel/timerep";
        description = "Parse and display time according to some RFCs (RFC3339, RFC2822, RFC822)";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -125764,7 +126368,9 @@ self: {
      mkDerivation {
        pname = "tinylog";
        version = "0.12.1";
+       revision = "1";
        sha256 = "1hh70788d0rd35raybix383s6bb3mnibmmpdxwbqybv2dgmm4jq9";
+       editedCabalFile = "b0e1cd3e83f3745355d1183935660d4b02ed152083da7af0ea4f386e155db04d";
        buildDepends = [
          auto-update base bytestring containers double-conversion
          fast-logger text transformers unix-time
@@ -125892,6 +126498,22 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "tld" = callPackage
+    ({ mkDerivation, base, containers, network-uri, template-haskell
+     , text
+     }:
+     mkDerivation {
+       pname = "tld";
+       version = "0.1.0.1";
+       sha256 = "1lda1h8ibkmnhxhnkfd1kj6aybk5w4s3hzhh379zrqbckdl0vfxb";
+       buildDepends = [
+         base containers network-uri template-haskell text
+       ];
+       jailbreak = true;
+       description = "This project separates subdomains, domains, and top-level-domains from URLs";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "tls" = callPackage
     ({ mkDerivation, asn1-encoding, asn1-types, async, base, byteable
      , bytestring, cereal, cryptonite, data-default-class, hourglass
@@ -127080,9 +127702,9 @@ self: {
      mkDerivation {
        pname = "ttrie";
        version = "0.1.2";
-       revision = "1";
+       revision = "2";
        sha256 = "09nbba623nxnlg1957sgcrrva3ycwb31asxnxihwjh0wxrqhh1k0";
-       editedCabalFile = "60673b32699d1b010c285811c892a1aa7b8890733083c82148ecd033b4db1222";
+       editedCabalFile = "f517a1ee4ab2eeefe39ec336a793845f84333835c59c3e90f885dd0711f8fbc0";
        buildDepends = [ atomic-primops base hashable primitive stm ];
        testDepends = [
          base containers hashable QuickCheck stm test-framework
@@ -127180,6 +127802,18 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "tuple-generic" = callPackage
+    ({ mkDerivation, base }:
+     mkDerivation {
+       pname = "tuple-generic";
+       version = "0.5.0.0";
+       sha256 = "0cbmiwmwav0g9di1s0sdry9shijqzpb9zaag9dz95w65wgqkfzbw";
+       buildDepends = [ base ];
+       homepage = "http://github.com/aelve/tuple-generic";
+       description = "Generic operations on tuples";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "tuple-hlist" = callPackage
     ({ mkDerivation, base, HList, OneTuple }:
      mkDerivation {
@@ -127225,8 +127859,8 @@ self: {
     ({ mkDerivation, base, containers, template-haskell }:
      mkDerivation {
        pname = "tuple-th";
-       version = "0.2.4";
-       sha256 = "1bhdg1yld8rbkc46fg04l32sk0pxwmbpvp9fmdp2b3snrg8hkvkn";
+       version = "0.2.5";
+       sha256 = "1mrl4vvxmby7sf1paf7hklzidnr6wq55822i73smqyz0xpf3gsjn";
        buildDepends = [ base containers template-haskell ];
        description = "Generate (non-recursive) utility functions for tuples of statically known size";
        license = stdenv.lib.licenses.bsd3;
@@ -127299,6 +127933,7 @@ self: {
          system-filepath temporary text time transformers unix
        ];
        testDepends = [ base doctest ];
+       jailbreak = true;
        description = "Shell programming, Haskell-style";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -128501,19 +129136,20 @@ self: {
 
   "uacpid" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, hslogger
-     , mtl, network, old-locale, process, regex-compat, time, unix
+     , mtl, network, process, regex-compat, time, time-locale-compat
+     , unix
      }:
      mkDerivation {
        pname = "uacpid";
-       version = "1.0.3.0";
-       sha256 = "02l88vpjs6qc0rwa4kn438i1gwc376sj8g2h5xqm3pz7adwfv24a";
+       version = "1.2";
+       sha256 = "1ml02xap95vxvzwqlqp68hfk7yjncf3xc1h13gga0nlhby9rjv14";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
-         base containers directory filepath hslogger mtl network old-locale
-         process regex-compat time unix
+         base containers directory filepath hslogger mtl network process
+         regex-compat time time-locale-compat unix
        ];
-       homepage = "http://ui3.info/d/proj/uacpid.html";
+       homepage = "http://hub.darcs.net/dino/uacpid";
        description = "Userspace Advanced Configuration and Power Interface event daemon";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -129899,8 +130535,8 @@ self: {
      }:
      mkDerivation {
        pname = "uri-bytestring";
-       version = "0.1.5";
-       sha256 = "0pl00n40b1nc3rnvayk8jz9lgv0s1lp33czyg962jdbffwhqgszj";
+       version = "0.1.6";
+       sha256 = "0wz45jrxrj2mqx26nv39hy962acmzchp97lbf3d2mjna9zcd1ij6";
        buildDepends = [ attoparsec base blaze-builder bytestring ];
        testDepends = [
          attoparsec base blaze-builder bytestring derive HUnit lens
@@ -130089,17 +130725,14 @@ self: {
      }) {};
 
   "urlencoded" = callPackage
-    ({ mkDerivation, base, mtl, network, split }:
+    ({ mkDerivation, base, mtl, network, network-uri, split }:
      mkDerivation {
        pname = "urlencoded";
-       version = "0.4.0";
-       revision = "1";
-       sha256 = "0idh70apfxx8bkbsxda4xhb0b5xf4x237dwi4v55ildrhxx4b68k";
-       editedCabalFile = "50c264958ee35f9fedb8b5e7e9640cb46d802b8f64dacc48802993e280c806a9";
+       version = "0.4.1";
+       sha256 = "16b7jxkfva8dyvl4fdg337jmv08aicycj041s79ak9r6zh41hhwi";
        isLibrary = true;
        isExecutable = true;
-       buildDepends = [ base mtl network split ];
-       jailbreak = true;
+       buildDepends = [ base mtl network network-uri split ];
        homepage = "https://github.com/pheaver/urlencoded";
        description = "Generate or process x-www-urlencoded data";
        license = stdenv.lib.licenses.bsd3;
@@ -130343,6 +130976,7 @@ self: {
          attoparsec base bytestring Cabal clock exceptions QuickCheck
          test-framework test-framework-quickcheck2 text
        ];
+       jailbreak = true;
        homepage = "https://github.com/lpeterse/haskell-utc";
        description = "A pragmatic time and date library";
        license = stdenv.lib.licenses.mit;
@@ -131104,8 +131738,8 @@ self: {
      }:
      mkDerivation {
        pname = "vcache-trie";
-       version = "0.1.1";
-       sha256 = "12nfik4fp5snxf8w3kp6r6v327i9izs18aflj90ib0gq267qrlnk";
+       version = "0.2.0";
+       sha256 = "0d56l8339ak9my6c37j3mykmfzz67405xyb90pl0i5lf35mbff32";
        buildDepends = [ array base bytestring bytestring-builder vcache ];
        homepage = "http://github.com/dmbarbour/haskell-vcache-trie";
        description = "patricia tries modeled above VCache";
@@ -132839,6 +133473,24 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "wai-middleware-prometheus" = callPackage
+    ({ mkDerivation, base, bytestring, data-default, doctest
+     , http-types, prometheus-client, text, time, wai
+     }:
+     mkDerivation {
+       pname = "wai-middleware-prometheus";
+       version = "0.1.0.1";
+       sha256 = "0drhprxja1pp0mibs2f4asl4mycy91pvyanxa0h364k9v6fwp93d";
+       buildDepends = [
+         base bytestring data-default http-types prometheus-client text time
+         wai
+       ];
+       testDepends = [ base doctest prometheus-client ];
+       homepage = "https://github.com/fimad/prometheus-haskell";
+       description = "WAI middlware for exposing http://prometheus.io metrics.";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "wai-middleware-route" = callPackage
     ({ mkDerivation, base, bytestring, http-types, HUnit
      , test-framework, test-framework-hunit, text, wai, wai-test
@@ -133056,8 +133708,8 @@ self: {
      }:
      mkDerivation {
        pname = "wai-session";
-       version = "0.3.1";
-       sha256 = "1h2z1zahbrlw9r489vd6xjwra7nmy67lmv77gr912zls5fpf9aws";
+       version = "0.3.2";
+       sha256 = "09l3gj8l127iybr8h4xcjxxcgz5b1mcy5iyyaidixnzi7jlrqww3";
        buildDepends = [
          base blaze-builder bytestring containers cookie http-types StateVar
          time transformers vault wai
@@ -133845,8 +134497,8 @@ self: {
      }:
      mkDerivation {
        pname = "webdriver";
-       version = "0.6.1";
-       sha256 = "1464i2hzriimhykgi0sinndyz3r7vajkzpwyp80fc75piq6vr7wi";
+       version = "0.6.2";
+       sha256 = "1cr668vn51bsdwxk6az4dk8zcsgy1y5vhb7xb9mahhbv1anpnzgr";
        buildDepends = [
          aeson attoparsec base base64-bytestring bytestring cond
          data-default directory directory-tree exceptions filepath
@@ -134591,6 +135243,7 @@ self: {
        extraLibraries = [ wlc ];
        description = "Haskell bindings for the wlc library";
        license = stdenv.lib.licenses.isc;
+       hydraPlatforms = stdenv.lib.platforms.none;
      }) { wlc = null;};
 
   "wobsurv" = callPackage
@@ -135526,6 +136179,21 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "xcp" = callPackage
+    ({ mkDerivation, base, bytestring, containers, mtl, network
+     , transformers
+     }:
+     mkDerivation {
+       pname = "xcp";
+       version = "0.1.0.1";
+       sha256 = "1hx9avr6zinrqar0c1zh0l49gy0d61gch8ff12am7zjxk7lbmmzs";
+       buildDepends = [
+         base bytestring containers mtl network transformers
+       ];
+       description = "Partial implementation of the XCP protocol with ethernet as transport layer";
+       license = stdenv.lib.licenses.gpl3;
+     }) {};
+
   "xdg-basedir" = callPackage
     ({ mkDerivation, base, directory, filepath }:
      mkDerivation {
@@ -135814,23 +136482,23 @@ self: {
 
   "xlsior" = callPackage
     ({ mkDerivation, attoparsec, base, blaze-markup, bytestring
-     , conduit, conduit-extra, data-default, exceptions, mtl, old-locale
-     , resourcet, scientific, text, time, vector, xml-conduit, xml-types
-     , zip-archive
+     , conduit, conduit-extra, data-default, exceptions, mtl, resourcet
+     , scientific, text, time, time-locale-compat, vector, xml-conduit
+     , xml-types, zip-archive
      }:
      mkDerivation {
        pname = "xlsior";
-       version = "0.1.0.0";
-       sha256 = "0gi8dh3iflny70dfylsin88j176i7nplhsrd09c8a6cbz93w1bd6";
+       version = "0.1.0.1";
+       sha256 = "0dkb3dkc2srvc1951hv6m69z3d7xprsaj7lsdkj9npykqpv6nkgk";
        buildDepends = [
          attoparsec base blaze-markup bytestring conduit conduit-extra
-         data-default exceptions mtl old-locale resourcet scientific text
-         time vector xml-conduit xml-types zip-archive
+         data-default exceptions mtl resourcet scientific text time
+         time-locale-compat vector xml-conduit xml-types zip-archive
        ];
        testDepends = [
-         base blaze-markup bytestring old-locale text time zip-archive
+         base blaze-markup bytestring text time time-locale-compat
+         zip-archive
        ];
-       jailbreak = true;
        description = "Streaming Excel file generation and parsing";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -136599,10 +137267,10 @@ self: {
     ({ mkDerivation, base, gtk, xmonad }:
      mkDerivation {
        pname = "xmonad-screenshot";
-       version = "0.1.1.0";
-       sha256 = "1iy6c8dis5jkgamkbbgxvbajz8f03bwhwdwk46l6wvlgmb072wl4";
+       version = "0.1.2";
+       sha256 = "1m7bmdhc1nlwflli1ymnjlmysg9d54w0shpxq05xwmiycg4jbwr1";
        buildDepends = [ base gtk xmonad ];
-       homepage = "http://github.com/supki/xmonad-screenshot";
+       homepage = "https://github.com/supki/xmonad-screenshot";
        description = "Workspaces screenshooting utility for XMonad";
        license = stdenv.lib.licenses.mit;
        hydraPlatforms = stdenv.lib.platforms.none;
@@ -137257,13 +137925,19 @@ self: {
      }) {};
 
   "yampa-glut" = callPackage
-    ({ mkDerivation, base, GLUT, newtype, OpenGL, vector-space, Yampa
+    ({ mkDerivation, base, GLUT, newtype, OpenGL, vector-space
+     , vector-space-opengl, Yampa-core
      }:
      mkDerivation {
        pname = "yampa-glut";
-       version = "0.1.1";
-       sha256 = "0sp4fwi3ibmd32vs7kdak7vrk3i2bayk2flcc617x2ax9250iyhv";
-       buildDepends = [ base GLUT newtype OpenGL vector-space Yampa ];
+       version = "0.1.1.1";
+       sha256 = "0163whn909s4zzmhgnbs0x90ky6kxvr6630g650i69hhqapbihpp";
+       isLibrary = true;
+       isExecutable = true;
+       buildDepends = [
+         base GLUT newtype OpenGL vector-space vector-space-opengl
+         Yampa-core
+       ];
        homepage = "https://github.com/ony/yampa-glut";
        description = "Connects Yampa and GLUT";
        license = stdenv.lib.licenses.gpl3;
@@ -137500,21 +138174,21 @@ self: {
      , blaze-markup, byteable, bytestring, conduit, conduit-extra
      , containers, cryptohash, data-default, email-validate, file-embed
      , http-client, http-conduit, http-types, lifted-base, mime-mail
-     , network-uri, persistent, persistent-template, random, resourcet
-     , safe, shakespeare, template-haskell, text, time, transformers
-     , unordered-containers, wai, yesod-core, yesod-form
+     , network-uri, nonce, persistent, persistent-template, random
+     , resourcet, safe, shakespeare, template-haskell, text, time
+     , transformers, unordered-containers, wai, yesod-core, yesod-form
      , yesod-persistent
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.4.5.1";
-       sha256 = "161gij0r82raih9lvdws4vsknpm36m00ikd17vhhlzz01q9z7l64";
+       version = "1.4.6";
+       sha256 = "0c0h1pivqk276l0l7nlrwpswvg72x39ikyfzbdnmxgmain878v2x";
        buildDepends = [
          aeson authenticate base base16-bytestring base64-bytestring binary
          blaze-builder blaze-html blaze-markup byteable bytestring conduit
          conduit-extra containers cryptohash data-default email-validate
          file-embed http-client http-conduit http-types lifted-base
-         mime-mail network-uri persistent persistent-template random
+         mime-mail network-uri nonce persistent persistent-template random
          resourcet safe shakespeare template-haskell text time transformers
          unordered-containers wai yesod-core yesod-form yesod-persistent
        ];
@@ -137579,13 +138253,12 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth-basic";
-       version = "0.1.0.1";
-       sha256 = "1q4fb2s71bg7r282327rsgvgcghq911knm8wf5yfq53s0k4dxkki";
+       version = "0.1.0.2";
+       sha256 = "0b4vyf731wb7idmbqz7n8zm4p7i7y66x94ph7kaxv1jvq05k7bxa";
        buildDepends = [
          base base64-bytestring bytestring exceptions text wai word8 yesod
        ];
        testDepends = [ base hlint hspec text yesod yesod-test ];
-       jailbreak = true;
        description = "Yesod Middleware for HTTP Basic Authentication";
        license = stdenv.lib.licenses.bsd3;
      }) {};
@@ -137730,8 +138403,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth-oauth2";
-       version = "0.1.1";
-       sha256 = "13z3h1x9n414vi7k2aqpwcxr7839lljwcrpxybazlf82zkwl4kj2";
+       version = "0.1.2";
+       sha256 = "1bprc8n2f591igm5yfrxga7zim5vyib07h413ainhfc7g8pbaky9";
        buildDepends = [
          aeson authenticate base bytestring hoauth2 http-conduit http-types
          lifted-base network-uri random text transformers yesod-auth
@@ -137811,8 +138484,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-bin";
-       version = "1.4.10";
-       sha256 = "1h55155l7ca664zdwq1x0c6p43gy35p1vvghpgd0ajzip8lsyfq1";
+       version = "1.4.11";
+       sha256 = "0n9ssbg7iggrgmxn3hb8niqic2rf453a4fqp0g9xx1rz6p323dv2";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -137886,8 +138559,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-core";
-       version = "1.4.11";
-       sha256 = "1lfbpfv43vjxx8r1yf8py64sai14abwwq7395gs45vk059zi5hfs";
+       version = "1.4.12";
+       sha256 = "1sdp2lg88c9gnwr3ffa8kj2vdd3y2kd7ark4qrm4gab07x2qflq3";
        buildDepends = [
          aeson auto-update base blaze-builder blaze-html blaze-markup
          bytestring case-insensitive cereal clientsession conduit
@@ -138461,6 +139134,7 @@ self: {
          mtl purescript regex-tdfa regex-tdfa-text shakespeare system-fileio
          system-filepath template-haskell text time transformers yesod-core
        ];
+       jailbreak = true;
        homepage = "https://github.com/mpietrzak/yesod-purescript";
        description = "PureScript integration for Yesod";
        license = stdenv.lib.licenses.mit;
@@ -138696,8 +139370,8 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-table";
-       version = "0.1.3";
-       sha256 = "1phbjcry1drl98ivv7yjqvwcray134zh9xqj37p1p7ki1850id3p";
+       version = "1.0.0";
+       sha256 = "0dy1rpwrccp6fcl91wb0f46djdkkzfdh870ylb9339msfgv9zchj";
        buildDepends = [ base containers contravariant text yesod-core ];
        homepage = "https://github.com/andrewthad/yesod-table";
        description = "HTML tables for Yesod";
@@ -139334,8 +140008,8 @@ self: {
      }:
      mkDerivation {
        pname = "yst";
-       version = "0.5.0.3";
-       sha256 = "15r381vsffqyzvgksipik0y9f41sy8ylsmvzw7hih4nrzp0w32ch";
+       version = "0.5.0.4";
+       sha256 = "1bnmh7caj9s6sfj2hhfwdnsg75wci1qw8c3pwryqy57knwcwbvkz";
        isLibrary = false;
        isExecutable = true;
        buildDepends = [
@@ -139430,6 +140104,7 @@ self: {
        buildDepends = [ base containers mtl ];
        testDepends = [ base hspec QuickCheck ];
        extraLibraries = [ gomp z3 ];
+       preBuild = stdenv.lib.optionalString stdenv.isDarwin "export DYLD_LIBRARY_PATH=${z3}/lib";
        homepage = "http://bitbucket.org/iago/z3-haskell";
        description = "Bindings for the Z3 Theorem Prover";
        license = stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/haskell-modules/mueval-fix.patch b/pkgs/development/haskell-modules/mueval-fix.patch
deleted file mode 100644
index 62a8f8f61e24..000000000000
--- a/pkgs/development/haskell-modules/mueval-fix.patch
+++ /dev/null
@@ -1,90 +0,0 @@
-diff --git a/Mueval/ArgsParse.hs b/Mueval/ArgsParse.hs
-index 05c8fd9..0c32e27 100644
---- a/Mueval/ArgsParse.hs
-+++ b/Mueval/ArgsParse.hs
-@@ -1,10 +1,9 @@
-+{-# LANGUAGE CPP #-}
- module Mueval.ArgsParse (Options(..), interpreterOpts, getOptions) where
- 
- import Control.Monad (liftM)
- import System.Console.GetOpt
- 
--import qualified Codec.Binary.UTF8.String as Codec (decodeString)
--
- import Mueval.Context (defaultModules, defaultPackages)
- 
- -- | See the results of --help for information on what each option means.
-@@ -98,4 +97,11 @@ header = "Usage: mueval [OPTION...] --expression EXPRESSION..."
- -- | Just give us the end result options; this parsing for
- --   us. Bonus points for handling UTF.
- getOptions :: [String] -> Either (Bool, String) Options
--getOptions = interpreterOpts . map Codec.decodeString
-\ No newline at end of file
-+getOptions = interpreterOpts . map decodeString
-+
-+decodeString :: String -> String
-+#if __GLASGOW_HASKELL__ >= 702
-+decodeString = id
-+#else
-+decodeString = Codec.decodeString
-+#endif
-diff --git a/Mueval/Context.hs b/Mueval/Context.hs
-index 78925cf..548514c 100644
---- a/Mueval/Context.hs
-+++ b/Mueval/Context.hs
-@@ -1,3 +1,4 @@
-+{-# LANGUAGE CPP #-}
- module Mueval.Context (
-   cleanModules,
-   defaultModules,
-@@ -32,7 +33,9 @@ defaultModules = ["Prelude",
-                   "Control.Monad.Error",
-                   "Control.Monad.Fix",
-                   "Control.Monad.Identity",
-+#if !MIN_VERSION_base(4,7,0)
-                   "Control.Monad.Instances",
-+#endif
-                   "Control.Monad.RWS",
-                   "Control.Monad.Reader",
-                   "Control.Monad.State",
-diff --git a/Mueval/Interpreter.hs b/Mueval/Interpreter.hs
-index 29b771f..6c39482 100644
---- a/Mueval/Interpreter.hs
-+++ b/Mueval/Interpreter.hs
-@@ -1,4 +1,5 @@
- {-# LANGUAGE PatternGuards #-}
-+{-# LANGUAGE FlexibleContexts #-}
- -- TODO: suggest the convenience functions be put into Hint proper?
- module Mueval.Interpreter where
- 
-@@ -12,8 +13,6 @@ import System.Exit (exitFailure)
- import System.FilePath.Posix (takeFileName)
- import qualified Control.Exception.Extensible as E (evaluate,catch,SomeException(..))
- 
--import qualified System.IO.UTF8 as UTF (putStrLn)
--
- import Language.Haskell.Interpreter (eval, set, reset, setImportsQ, loadModules, liftIO,
-                                      installedModulesInScope, languageExtensions,
-                                      typeOf, setTopLevelModules, runInterpreter, glasgowExtensions,
-@@ -100,7 +99,7 @@ mvload lfl = do canonfile <- makeRelativeToCurrentDirectory lfl
- -- flooding. Lambdabot has a similar limit.
- sayIO :: String -> IO ()
- sayIO str = do (out,b) <- render 1024 str
--               UTF.putStrLn out
-+               putStrLn out
-                when b exitFailure
- 
- -- | Oh no, something has gone wrong. If it's a compilation error pretty print
-diff --git a/mueval.cabal b/mueval.cabal
-index 3f9406d..b86d796 100644
---- a/mueval.cabal
-+++ b/mueval.cabal
-@@ -32,7 +32,7 @@ library
-         exposed-modules:     Mueval.Parallel, Mueval.Context, Mueval.Interpreter,
-                              Mueval.ArgsParse, Mueval.Resources
-         build-depends:       base>=4 && < 5, containers, directory, mtl>2, filepath, unix, process,
--                             hint>=0.3.1, show>=0.3, utf8-string, Cabal, extensible-exceptions, simple-reflect
-+                             hint>=0.3.1, show>=0.3, Cabal, extensible-exceptions, simple-reflect
-         ghc-options:         -Wall -static
- 
- executable mueval-core
diff --git a/pkgs/development/haskell-modules/mueval-nix.patch b/pkgs/development/haskell-modules/mueval-nix.patch
deleted file mode 100644
index a1f95120a1f7..000000000000
--- a/pkgs/development/haskell-modules/mueval-nix.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-diff --git a/Mueval/Interpreter.hs b/Mueval/Interpreter.hs
-index 29b771f..6360ee3 100644
---- a/Mueval/Interpreter.hs
-+++ b/Mueval/Interpreter.hs
-@@ -8,6 +8,7 @@ import Control.Monad.Writer (Any(..),runWriterT,tell)
- import Data.Char (isDigit)
- import Data.List (stripPrefix)
- import System.Directory (copyFile, makeRelativeToCurrentDirectory, removeFile, setCurrentDirectory)
-+import System.Environment (lookupEnv)
- import System.Exit (exitFailure)
- import System.FilePath.Posix (takeFileName)
- import qualified Control.Exception.Extensible as E (evaluate,catch,SomeException(..))
-@@ -47,6 +48,10 @@ interpreter Options { extensions = exts, namedExtensions = nexts,
-                                   -- Explicitly adding ImplicitPrelude because of
-                                   -- http://darcsden.com/jcpetruzza/hint/issue/1
-                                   unless (null lexts) $ set [languageExtensions := (UnknownExtension "ImplicitPrelude" : lexts)]
-+                                  pkgs' <- liftIO $ lookupEnv "NIX_GHC_LIBDIR"
-+                                  case pkgs' of
-+                                    Just pkgs -> unsafeSetGhcOption ("-package-db " ++ pkgs ++ "/package.conf.d")
-+                                    Nothing -> return ()
-                                   when trust $ do
-                                     unsafeSetGhcOption "-fpackage-trust"
-                                     forM_ (trustPkgs >>= words) $ \pkg ->
diff --git a/pkgs/development/interpreters/angelscript/default.nix b/pkgs/development/interpreters/angelscript/default.nix
index 4691b8be564f..a6e6cce9a8e1 100644
--- a/pkgs/development/interpreters/angelscript/default.nix
+++ b/pkgs/development/interpreters/angelscript/default.nix
@@ -3,10 +3,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="angelscript";
-    version = "2.30.0";
+    version = "2.30.1";
     name="${baseName}-${version}";
     url="http://www.angelcode.com/angelscript/sdk/files/angelscript_${version}.zip";
-    sha256 = "00w7h2g6g1lkq9ahsvzyk78nbdzhn1adsrns9mrqb2fbxv2wbz5d";
+    sha256 = "10ym7185h26gzmw5v6wz8zlycw8gzygv0aw87dmgjcyy7qfk74m4";
   };
   buildInputs = [
     unzip
diff --git a/pkgs/development/libraries/allegro/5-unstable.nix b/pkgs/development/libraries/allegro/5-unstable.nix
index 71a521e23096..dd0df768a689 100644
--- a/pkgs/development/libraries/allegro/5-unstable.nix
+++ b/pkgs/development/libraries/allegro/5-unstable.nix
@@ -16,7 +16,7 @@ let
   sourceInfo = rec {
     baseName="allegro";
     folderSuffix = "-unstable";
-    version = "5.1.10";
+    version = "5.1.11";
     name="${baseName}-${version}";
     project="alleg";
     url="mirror://sourceforge/project/${project}/${baseName}${folderSuffix}/${version}/${name}.tar.gz";
@@ -26,7 +26,7 @@ in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = "13dfs007pyh908bm1hg7hz71y8fr9fj51byh5w149h8dsq2dds78";
+    sha256 = "0zz07gdyc6xflpvkknwgzsyyyh9qiwd69j42rm9cw1ciwcsic1vs";
   };
 
   inherit (sourceInfo) name version;
diff --git a/pkgs/development/libraries/eigen/default.nix b/pkgs/development/libraries/eigen/default.nix
index 90f50037dce3..0e43b9fb6020 100644
--- a/pkgs/development/libraries/eigen/default.nix
+++ b/pkgs/development/libraries/eigen/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchurl, cmake}:
 
 let
-  version = "3.2.4";
+  version = "3.2.5";
 in
 stdenv.mkDerivation {
   name = "eigen-${version}";
@@ -9,7 +9,7 @@ stdenv.mkDerivation {
   src = fetchurl {
     url = "http://bitbucket.org/eigen/eigen/get/${version}.tar.gz";
     name = "eigen-${version}.tar.gz";
-    sha256 = "19c6as664a3kxvkhas2cq19r6ag19jw9lcz04sc0kza6i1hlh9xv";
+    sha256 = "1vjixip19lwfia2bjpjwm09j7l20ry75493i6mjsk9djszj61agi";
   };
   
   nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/gpgme/default.nix b/pkgs/development/libraries/gpgme/default.nix
index d4913ef21f6e..8cab2c25fc4d 100644
--- a/pkgs/development/libraries/gpgme/default.nix
+++ b/pkgs/development/libraries/gpgme/default.nix
@@ -11,11 +11,11 @@ let
     "${gnupg}/bin/gpg2";
 in
 stdenv.mkDerivation rec {
-  name = "gpgme-1.5.4";
+  name = "gpgme-1.5.5";
 
   src = fetchurl {
     url = "mirror://gnupg/gpgme/${name}.tar.bz2";
-    sha256 = "0v7azxazsfakvhrxzj5ysvcxma0892c89d27c17fkj8mi3nc0f5v";
+    sha256 = "01y28fkq52wwf4p470wscaxd2vgzl615irmafx3mj3380x8ksg8b";
   };
 
   propagatedBuildInputs = [ libgpgerror glib libassuan pth ];
diff --git a/pkgs/development/libraries/ilmbase/default.nix b/pkgs/development/libraries/ilmbase/default.nix
index 816a9c023e1d..742048c9ae66 100644
--- a/pkgs/development/libraries/ilmbase/default.nix
+++ b/pkgs/development/libraries/ilmbase/default.nix
@@ -1,13 +1,12 @@
-{ stdenv, openexr, automake, autoconf, libtool, which }:
+{ stdenv, fetchurl, automake, autoconf, libtool, which }:
 
-stdenv.mkDerivation {
-  name = "ilmbase-${openexr.source.version}";
-  
-  src = openexr.source.src;
+stdenv.mkDerivation rec {
+  name = "ilmbase-2.2.0";
 
-  prePatch = ''
-    cd IlmBase
-  '';
+  src = fetchurl {
+    url = "http://download.savannah.nongnu.org/releases/openexr/${name}.tar.gz";
+    sha256 = "1izddjwbh1grs8080vmaix72z469qy29wrvkphgmqmcm0sv1by7c";
+  };
 
   preConfigure = ''
     ./bootstrap
diff --git a/pkgs/development/libraries/leveldb/default.nix b/pkgs/development/libraries/leveldb/default.nix
index fd668fbcad95..c32372e841ce 100644
--- a/pkgs/development/libraries/leveldb/default.nix
+++ b/pkgs/development/libraries/leveldb/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ sqlite kyotocabinet ];
 
   buildPhase = ''
-    make all db_bench{,_sqlite3,_tree_db} leveldbutil
+    make all db_bench{,_sqlite3,_tree_db} leveldbutil libmemenv.a
   '';
 
   installPhase = "
@@ -22,6 +22,8 @@ stdenv.mkDerivation rec {
     cp -r include $out
     cp lib* $out/lib
     cp db_bench{,_sqlite3,_tree_db} leveldbutil $out/bin
+    mkdir -p $out/include/leveldb/helpers
+    cp helpers/memenv/memenv.h $out/include/leveldb/helpers
   ";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libbladeRF/default.nix b/pkgs/development/libraries/libbladeRF/default.nix
index 18bb9f002e59..b8a4466c8c33 100644
--- a/pkgs/development/libraries/libbladeRF/default.nix
+++ b/pkgs/development/libraries/libbladeRF/default.nix
@@ -1,14 +1,15 @@
-{ stdenv, fetchgit, pkgconfig, cmake, git, doxygen, help2man, tecla, libusb1, udev }:
+{ stdenv, fetchFromGitHub, pkgconfig, cmake, git, doxygen, help2man, tecla
+, libusb1, udev }:
 
 stdenv.mkDerivation rec {
-  version = "1.1.0";
+  version = "1.4.0";
   name = "libbladeRF-v${version}";
 
-  src = fetchgit {
-    url = "https://github.com/Nuand/bladeRF/";
-    rev = "refs/tags/libbladeRF_v${version}";
-    sha256 = "19qd26yflig51scknyjf3r3nmnc2bni75294jpsv0idzqfj87lbr";
-    name = "libbladeRF_v${version}-checkout";
+  src = fetchFromGitHub {
+    owner = "Nuand";
+    repo = "bladeRF";
+    rev = "libbladeRF_v${version}";
+    sha256 = "1y00hqsmqaix4dql8mb75zx87zvn8b483yxv53x9qyjspksbs60c";
   };
 
   buildInputs = [ pkgconfig cmake git doxygen help2man tecla libusb1 udev ];
@@ -19,7 +20,6 @@ stdenv.mkDerivation rec {
   # Let us avoid nettools as a dependency.
   patchPhase = ''
     sed -i 's/$(hostname)/hostname/' host/utilities/bladeRF-cli/src/cmd/doc/generate.bash
-    sed -i 's/ --no-info/ --no-info --no-discard-stderr/' host/utilities/bladeRF-cli/CMakeLists.txt
   '';
 
   cmakeFlags = [
@@ -29,11 +29,11 @@ stdenv.mkDerivation rec {
     "-DBUILD_DOCUMENTATION=ON"
   ];
 
-  meta = {
-    homepage = "https://www.nuand.com/";
+  meta = with stdenv.lib; {
+    homepage = https://www.nuand.com/;
     description = "Supporting library of the BladeRF SDR opensource hardware";
-    license = stdenv.lib.licenses.lgpl21;
-    maintainers = [ stdenv.lib.maintainers.funfunctor ];
-    platforms = with stdenv.lib.platforms; linux;
+    license = licenses.lgpl21;
+    maintainers = with maintainers; [ funfunctor ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libmediainfo/default.nix b/pkgs/development/libraries/libmediainfo/default.nix
index 947cee94bd90..5349026085f4 100644
--- a/pkgs/development/libraries/libmediainfo/default.nix
+++ b/pkgs/development/libraries/libmediainfo/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, automake, autoconf, libtool, pkgconfig, libzen, zlib }:
 
 stdenv.mkDerivation rec {
-  version = "0.7.74";
+  version = "0.7.75";
   name = "libmediainfo-${version}";
   src = fetchurl {
-    url = "http://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.bz2";
-    sha256 = "1dn7zwqkl08vafc979i1mx63r2jlr95gfazg4d2cc9v3pav28zpk";
+    url = "http://mediaarea.net/download/source/libmediainfo/${version}/libmediainfo_${version}.tar.xz";
+    sha256 = "1im39kd595ia6g41qvwgvszn1s10nwa3q5r2lj2g5fm4kgi0dwhr";
   };
 
   buildInputs = [ automake autoconf libtool pkgconfig libzen zlib ];
diff --git a/pkgs/development/libraries/libmwaw/default.nix b/pkgs/development/libraries/libmwaw/default.nix
index b8582a76ed8e..2ef10f41d9af 100644
--- a/pkgs/development/libraries/libmwaw/default.nix
+++ b/pkgs/development/libraries/libmwaw/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="libmwaw";
-    version="0.3.4";
+    version="0.3.5";
     name="${baseName}-${version}";
-    hash="1sn95flxrh85qjsg1kk700c1ggxaaccr9j1nnw7x4daw8lky25ac";
-    url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.3.4/libmwaw-0.3.4.tar.xz";
-    sha256="1sn95flxrh85qjsg1kk700c1ggxaaccr9j1nnw7x4daw8lky25ac";
+    hash="1vx9h419fcfcs0yj071hsg9d2qvkacgca6052m8hv3h743cdmzil";
+    url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.3.5/libmwaw-0.3.5.tar.xz";
+    sha256="1vx9h419fcfcs0yj071hsg9d2qvkacgca6052m8hv3h743cdmzil";
   };
   buildInputs = [
     boost pkgconfig cppunit zlib libwpg libwpd librevenge
diff --git a/pkgs/development/libraries/libodfgen/default.nix b/pkgs/development/libraries/libodfgen/default.nix
index c5491f96bb54..e8778ff413a0 100644
--- a/pkgs/development/libraries/libodfgen/default.nix
+++ b/pkgs/development/libraries/libodfgen/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="libodfgen";
-    version="0.1.3";
+    version="0.1.4";
     name="${baseName}-${version}";
-    hash="1flfh1i4r116aqdlqpgpmyzpcylwba48l7mddj25a2cwgsc9v86k";
-    url="mirror://sourceforge/project/libwpd/libodfgen/libodfgen-0.1.3/libodfgen-0.1.3.tar.xz";
-    sha256="1flfh1i4r116aqdlqpgpmyzpcylwba48l7mddj25a2cwgsc9v86k";
+    hash="1qgilnsd57ayv9mqh4sg9mkknifr98dv70a35gizxh5cw7c5x6r4";
+    url="mirror://sourceforge/project/libwpd/libodfgen/libodfgen-0.1.4/libodfgen-0.1.4.tar.xz";
+    sha256="1qgilnsd57ayv9mqh4sg9mkknifr98dv70a35gizxh5cw7c5x6r4";
   };
   buildInputs = [
     boost pkgconfig cppunit zlib libwpg libwpd librevenge
diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix
index 0b9b79f0c605..f73ddfe340eb 100644
--- a/pkgs/development/libraries/libre/default.nix
+++ b/pkgs/development/libraries/libre/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, zlib, openssl}:
 stdenv.mkDerivation rec {
-  version = "0.4.12";
+  version = "0.4.13";
   name = "libre-${version}";
   src=fetchurl {
     url = "http://www.creytiv.com/pub/re-${version}.tar.gz";
-    sha256 = "1wjdcf5wr50d86rysj5haz53v7d58j7sszpc6k5b4mn1x6604i0d";
+    sha256 = "0496nfi7vi6ivnyici5bqs147pwkdqn48w2rajhr5k8jd07pq5qp";
   };
   buildInputs = [zlib openssl];
   makeFlags = [
diff --git a/pkgs/development/libraries/libspotify/default.nix b/pkgs/development/libraries/libspotify/default.nix
index 56d15cd1e806..02bd1f966e6e 100644
--- a/pkgs/development/libraries/libspotify/default.nix
+++ b/pkgs/development/libraries/libspotify/default.nix
@@ -1,8 +1,11 @@
 { stdenv, fetchurl, libspotify, alsaLib, readline, pkgconfig, apiKey, unzip, gnused }:
 
-let version = "12.1.51"; in
+let 
+  version = "12.1.51"; 
+  isLinux = (stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux");
+in
 
-if (stdenv.system != "x86_64-linux" && stdenv.system != "x86_64-darwin")
+if (stdenv.system != "x86_64-linux" && stdenv.system != "x86_64-darwin" && stdenv.system != "i686-linux")
 then throw "Check https://developer.spotify.com/technologies/libspotify/ for a tarball for your system and add it here"
 else stdenv.mkDerivation {
   name = "libspotify-${version}";
@@ -18,6 +21,11 @@ else stdenv.mkDerivation {
         url    = "https://developer.spotify.com/download/libspotify/libspotify-${version}-Darwin-universal.zip";
         sha256 = "1gcgrc8arim3hnszcc886lmcdb4iigc08abkaa02l6gng43ky1c0";
       }
+    else if stdenv.system == "i686-linux" then
+      fetchurl {
+        url    = "https://developer.spotify.com/download/libspotify/libspotify-${version}-Linux-i686-release.tar.gz";
+        sha256 = "1bjmn64gbr4p9irq426yap4ipq9rb84zsyhjjr7frmmw22xb86ll";
+      }
     else
       null;
 
@@ -26,9 +34,9 @@ else stdenv.mkDerivation {
   # no patch or build phase for darwin
   phases = 
     [ "unpackPhase" ] ++ 
-    (stdenv.lib.optionals (stdenv.system == "x86_64-linux") [ "patchPhase" "buildPhase" ]) ++
+    (stdenv.lib.optionals (isLinux) [ "patchPhase" "buildPhase" ]) ++
     [ "installPhase" ];
-  installPhase = if (stdenv.system == "x86_64-linux")
+  installPhase = if (isLinux)
     then "installPhase"
     else ''
       mkdir -p "$out"/include/libspotify
@@ -46,11 +54,11 @@ else stdenv.mkDerivation {
   buildInputs = stdenv.lib.optional (stdenv.system == "x86_64-darwin") unzip;
 
   # linux-specific
-  installFlags = stdenv.lib.optionalString (stdenv.system == "x86_64-linux")
+  installFlags = stdenv.lib.optionalString (isLinux)
     "prefix=$(out)";
-  patchPhase = stdenv.lib.optionalString (stdenv.system == "x86_64-linux")
+  patchPhase = stdenv.lib.optionalString (isLinux)
     "${gnused}/bin/sed -i 's/ldconfig//' Makefile";
-  postInstall = stdenv.lib.optionalString (stdenv.system == "x86_64-linux")
+  postInstall = stdenv.lib.optionalString (isLinux)
     "mv -v share $out";
 
   passthru = {
diff --git a/pkgs/development/libraries/lmdb/default.nix b/pkgs/development/libraries/lmdb/default.nix
new file mode 100644
index 000000000000..fbf817dd8730
--- /dev/null
+++ b/pkgs/development/libraries/lmdb/default.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchzip }:
+
+stdenv.mkDerivation rec {
+  name = "lmdb-${version}";
+  version = "0.9.15";
+
+  src = fetchzip {
+    url = "https://github.com/LMDB/lmdb/archive/LMDB_${version}.tar.gz";
+    sha256 = "0p79fpyh1yx2jg1f0kag5zsdn4spkgs1j3dxibvqdy32wkbpxd0g";
+  };
+
+  postUnpack = "sourceRoot=\${sourceRoot}/libraries/liblmdb";
+
+  makeFlags = "prefix=$(out)";
+
+  doCheck = true;
+  checkPhase = "make test";
+
+  preInstall = ''
+    mkdir -p $out/{man/man1,bin,lib,include}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Lightning memory-mapped database";
+    longDescription = ''
+      LMDB is an ultra-fast, ultra-compact key-value embedded data store
+      developed by Symas for the OpenLDAP Project. It uses memory-mapped files,
+      so it has the read performance of a pure in-memory database while still
+      offering the persistence of standard disk-based databases, and is only
+      limited to the size of the virtual address space.
+    '';
+    homepage = http://symas.com/mdb/;
+    maintainers = with maintainers; [ jb55 ];
+    license = licenses.openldap;
+    platforms = platforms.all;
+  };
+}
diff --git a/pkgs/development/libraries/opencollada/default.nix b/pkgs/development/libraries/opencollada/default.nix
index 20003f238745..eaa90efc1319 100644
--- a/pkgs/development/libraries/opencollada/default.nix
+++ b/pkgs/development/libraries/opencollada/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchFromGitHub, cmake, pkgconfig, libxml2, pcre }:
 
 # The exact revision specified by Blender's install_deps.sh script.
-let rev = "18da7f4109a8eafaa290a33f5550501cc4c8bae8"; in
+let rev = "3335ac164e68b2512a40914b14c74db260e6ff7d"; in
 
 stdenv.mkDerivation {
   name = "opencollada-1.3-${rev}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     owner = "KhronosGroup";
     repo = "OpenCOLLADA";
     inherit rev;
-    sha256 = "0ach32ws95mh0ijd8sr22kxka3riq72bb9ng46vs3615dxn7h18d";
+    sha256 = "0s2m8crbg1kf09hpscrplv65a45dlg157b9c20chrv7wy0qizbw5";
   };
 
   buildInputs = [ cmake pkgconfig ];
diff --git a/pkgs/development/libraries/openexr/default.nix b/pkgs/development/libraries/openexr/default.nix
index 63a8c11a3416..71420ba425c9 100644
--- a/pkgs/development/libraries/openexr/default.nix
+++ b/pkgs/development/libraries/openexr/default.nix
@@ -1,33 +1,28 @@
-{ stdenv, callPackage, autoconf, automake, libtool, pkgconfig, zlib, ilmbase }:
-let
-  source = callPackage ./source.nix { };
-in
+{ lib, stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, zlib, ilmbase }:
+
 stdenv.mkDerivation rec {
-  name = "openexr-${source.version}";
-  
-  src = source.src;
+  name = "openexr-${lib.getVersion ilmbase}";
 
-  prePatch = ''
-    cd OpenEXR
-  '';
+  src = fetchurl {
+    url = "http://download.savannah.nongnu.org/releases/openexr/${name}.tar.gz";
+    sha256 = "0ca2j526n4wlamrxb85y2jrgcv0gf21b3a19rr0gh4rjqkv1581n";
+  };
 
   preConfigure = ''
     ./bootstrap
   '';
 
-  configureFlags = [ "--enable-imfexamples" ];
-  
   buildInputs = [ autoconf automake libtool pkgconfig ];
   propagatedBuildInputs = [ ilmbase zlib ];
 
+  enableParallelBuilding = true;
+
   patches = [ ./bootstrap.patch ];
-  
+
   meta = with stdenv.lib; {
     homepage = http://www.openexr.com/;
     license = licenses.bsd3;
     platforms = platforms.all;
     maintainers = with maintainers; [ wkennington ];
   };
-
-  passthru.source = source;
 }
diff --git a/pkgs/development/libraries/openexr/source.nix b/pkgs/development/libraries/openexr/source.nix
deleted file mode 100644
index 30675dc54ec0..000000000000
--- a/pkgs/development/libraries/openexr/source.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ fetchFromGitHub }:
-rec {
-  version = "2.2.0";
-
-  src = fetchFromGitHub {
-    owner = "openexr";
-    repo = "openexr";
-    rev = "v${version}";
-    sha256 = "030vj2jk3n65x1wl0rmxzpl1bd5mzmld2lzn7sg92svpnghry6a8";
-  };
-}
diff --git a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
index 8c1a6094dc5e..940b9d4e7a1f 100644
--- a/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
+++ b/pkgs/development/libraries/qt-5/5.4/setup-hook.sh
@@ -46,10 +46,11 @@ cp "@out@/bin/qmake" "$qtOut/bin"
 cat >"$qtOut/bin/qt.conf" <<EOF
 [Paths]
 Prefix = $qtOut
-Plugins = $qtOut/lib/qt5/plugins
-Imports = $qtOut/lib/qt5/imports
-Qml2Imports = $qtOut/lib/qt5/qml
+Plugins = lib/qt5/plugins
+Imports = lib/qt5/imports
+Qml2Imports = lib/qt5/qml
 EOF
+export QMAKE="$qtOut/bin/qmake"
 
 envHooks+=(addQtModule)
 preConfigurePhases+=" setQMakePath"
diff --git a/pkgs/development/ocaml-modules/csv/default.nix b/pkgs/development/ocaml-modules/csv/default.nix
index 09679ced7444..16f755f17b39 100644
--- a/pkgs/development/ocaml-modules/csv/default.nix
+++ b/pkgs/development/ocaml-modules/csv/default.nix
@@ -1,29 +1,30 @@
-{stdenv, fetchurl, ocaml, findlib}:
-
-assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "3.11";
+{ stdenv, fetchzip, ocaml, findlib }:
 
 stdenv.mkDerivation {
 
-  name = "ocaml-csv-1.3.3";
+  name = "ocaml-csv-1.4";
 
-  src = fetchurl {
-    url = "https://forge.ocamlcore.org/frs/download.php/1376/csv-1.3.3.tar.gz";
-    sha256 = "19qsvw3n7k4xpy0sw7n5s29kzj91myihjljhr5js6xcxwj4cydh2";
+  src = fetchzip {
+    url = https://github.com/Chris00/ocaml-csv/releases/download/1.4/csv-1.4.tar.gz;
+    sha256 = "0si0v79rxzyzmgyhd6lidpzxdlcpprlhg0pgrsf688g83xsclkwa";
   };
 
   buildInputs = [ ocaml findlib ];
 
   createFindlibDestdir = true;
 
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests";
 
   buildPhase = "ocaml setup.ml -build";
 
+  doCheck = true;
+  checkPhase = "ocaml setup.ml -test";
+
   installPhase = "ocaml setup.ml -install";
 
   meta = with stdenv.lib; {
     description = "A pure OCaml library to read and write CSV files";
-    homepage = "https://forge.ocamlcore.org/projects/csv/";
+    homepage = https://github.com/Chris00/ocaml-csv;
     license = licenses.lgpl21;
     maintainers = [ maintainers.vbgl ];
     platforms = ocaml.meta.platforms;
diff --git a/pkgs/development/ocaml-modules/qcheck/default.nix b/pkgs/development/ocaml-modules/qcheck/default.nix
new file mode 100644
index 000000000000..260a1fc9811a
--- /dev/null
+++ b/pkgs/development/ocaml-modules/qcheck/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchzip, ocaml, findlib, oasis, ounit }:
+
+assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4";
+
+stdenv.mkDerivation {
+
+  name = "ocaml-qcheck-0.4.0.1";
+  src = fetchzip {
+    url = https://github.com/c-cube/qcheck/archive/0.4.0.1.tar.gz;
+    sha256 = "0j2jdrfz8rrslgjihnfgg8yy12860z2vvf7hqzjbmfmf03hz4pgv";
+  };
+
+  buildInputs = [ ocaml findlib oasis ounit ];
+
+  configureFlags = "--enable-tests --enable-ounit";
+
+  doCheck = true;
+  checkPhase = "ocaml setup.ml -test";
+
+  createFindlibDestdir = true;
+
+  meta = {
+    description = "QuickCheck inspired property-based testing for OCaml";
+    homepage = https://github.com/c-cube/qcheck/;
+    license = stdenv.lib.licenses.bsd2;
+    maintainers = with stdenv.lib.maintainers; [ vbgl ];
+    platforms = ocaml.meta.platforms;
+  };
+}
diff --git a/pkgs/development/ocaml-modules/re/default.nix b/pkgs/development/ocaml-modules/re/default.nix
index 457b45a575ed..5e7ae1cba091 100644
--- a/pkgs/development/ocaml-modules/re/default.nix
+++ b/pkgs/development/ocaml-modules/re/default.nix
@@ -1,17 +1,19 @@
-{ stdenv, fetchzip, ocaml, findlib }:
+{ stdenv, fetchzip, ocaml, findlib, ounit }:
 
 stdenv.mkDerivation rec {
-  name = "ocaml-re-1.4.0";
+  name = "ocaml-re-1.4.1";
 
   src = fetchzip {
     url = "https://github.com/ocaml/ocaml-re/archive/${name}.tar.gz";
-    sha256 = "1xcfmhjgd7prqx2g1addlrk84xpfafmqnpjkqrvg7mw0hn1p7v2m";
+    sha256 = "1wmfgazydd20hc796zisqpmsw0sb5lv9g3x77ckmf50v3z8hyhvk";
   };
 
-  buildInputs = [ ocaml findlib ];
+  buildInputs = [ ocaml findlib ounit ];
 
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests";
   buildPhase = "ocaml setup.ml -build";
+  doCheck = true;
+  checkPhase = "ocaml setup.ml -test";
   installPhase = "ocaml setup.ml -install";
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/stringext/default.nix b/pkgs/development/ocaml-modules/stringext/default.nix
index dae947035d25..961ee4b1fcd5 100644
--- a/pkgs/development/ocaml-modules/stringext/default.nix
+++ b/pkgs/development/ocaml-modules/stringext/default.nix
@@ -1,19 +1,25 @@
-{ stdenv, fetchzip, ocaml, findlib }:
+{ stdenv, fetchzip, ocaml, findlib, ounit, qcheck
+# Optionally enable tests; test script use OCaml-4.01+ features
+, doCheck ? stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.01"
+}:
 
-let version = "1.3.0"; in
+let version = "1.4.0"; in
 
 stdenv.mkDerivation {
   name = "ocaml-stringext-${version}";
 
   src = fetchzip {
     url = "https://github.com/rgrinberg/stringext/archive/v${version}.tar.gz";
-    sha256 = "0sd1chyxclmip0nxqhasp1ri91bwxr8nszkkr5kpja45f6bav6k9";
+    sha256 = "1jp0x9rkss8a48z9wbnc4v5zvmnysin30345psl3xnxb2aqzwlii";
   };
 
-  buildInputs = [ ocaml findlib ];
+  buildInputs = [ ocaml findlib ounit qcheck ];
 
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  configurePhase = "ocaml setup.ml -configure --prefix $out"
+  + stdenv.lib.optionalString doCheck " --enable-tests";
   buildPhase = "ocaml setup.ml -build";
+  inherit doCheck;
+  checkPhase = "ocaml setup.ml -test";
   installPhase = "ocaml setup.ml -install";
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/ulex/default.nix b/pkgs/development/ocaml-modules/ulex/default.nix
index 7c8acafe769e..61c52278621f 100644
--- a/pkgs/development/ocaml-modules/ulex/default.nix
+++ b/pkgs/development/ocaml-modules/ulex/default.nix
@@ -26,7 +26,7 @@ stdenv.mkDerivation {
     homepage = http://www.cduce.org/download.html;
     description = "A lexer generator for Unicode and OCaml";
     license = stdenv.lib.licenses.mit;
-    platforms = stdenv.lib.platforms.linux;
+    platforms = ocaml.meta.platforms;
     maintainers = [ stdenv.lib.maintainers.roconnor ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/uri/default.nix b/pkgs/development/ocaml-modules/uri/default.nix
index 41cd2f64823e..03620d05f54d 100644
--- a/pkgs/development/ocaml-modules/uri/default.nix
+++ b/pkgs/development/ocaml-modules/uri/default.nix
@@ -1,25 +1,27 @@
-{ stdenv, fetchzip, ocaml, findlib, re, sexplib, stringext }:
+{ stdenv, fetchzip, ocaml, findlib, re, sexplib, stringext, ounit }:
 
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4";
 
-let version = "1.9.0"; in
+let version = "1.9.1"; in
 
 stdenv.mkDerivation {
   name = "ocaml-uri-${version}";
 
   src = fetchzip {
     url = "https://github.com/mirage/ocaml-uri/archive/v${version}.tar.gz";
-    sha256 = "13vbv6q7npl2bvvqfw03mav90jcrrvjbdpdp4y8mcjz0iax5ww9b";
+    sha256 = "0v3jxqgyi4kj92r3x83rszfpnvvzy9lyb913basch4q64yka3w85";
   };
 
-  buildInputs = [ ocaml findlib ];
+  buildInputs = [ ocaml findlib ounit ];
   propagatedBuildInputs = [ re sexplib stringext ];
 
-  configurePhase = "ocaml setup.ml -configure --prefix $out";
+  configurePhase = "ocaml setup.ml -configure --prefix $out --enable-tests";
   buildPhase = ''
     ocaml setup.ml -build
     ocaml setup.ml -doc
   '';
+  doCheck = true;
+  checkPhase = "ocaml setup.ml -test";
   installPhase = "ocaml setup.ml -install";
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/qtcreator/default.nix b/pkgs/development/qtcreator/default.nix
index 47564a112ee4..199df25d5523 100644
--- a/pkgs/development/qtcreator/default.nix
+++ b/pkgs/development/qtcreator/default.nix
@@ -3,8 +3,8 @@
 with stdenv.lib;
 
 let
-  baseVersion = "3.2";
-  revision = "1";
+  baseVersion = "3.4";
+  revision = "2";
   version = "${baseVersion}.${revision}";
 in
 
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.qt-project.org/official_releases/qtcreator/${baseVersion}/${version}/qt-creator-opensource-src-${version}.tar.gz";
-    sha256 = "0kp7czn9mzncdpq8bx15s3sy13g4xlcdz7y7zy0s9350g4ijs8fx";
+    sha256 = "1asbfphws0aqs92gjgh0iqzr1911kg51r9al44jxpfk88yazjzgm";
   };
 
   # This property can be used in a nix development environment to refer to the Qt package
diff --git a/pkgs/development/tools/build-managers/scons/default.nix b/pkgs/development/tools/build-managers/scons/default.nix
index 072688670440..9e54be8aa90f 100644
--- a/pkgs/development/tools/build-managers/scons/default.nix
+++ b/pkgs/development/tools/build-managers/scons/default.nix
@@ -2,7 +2,7 @@
 
 let
   name = "scons";
-  version = "2.3.4";
+  version = "2.3.5";
 in
 
 stdenv.mkDerivation {
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/scons/${name}-${version}.tar.gz";
-    sha256 = "0hdlci43wjz8maryj83mz04ir6rwcdrrzpd7cpzvdlzycqhdfmsb";
+    sha256 = "0hlwkrr5fkjpjgmwipp9a2bnc9riqks2pjc3rvjsq0a8j7hr72ca";
   };
 
   buildInputs = [python makeWrapper];
diff --git a/pkgs/development/tools/misc/ccache/default.nix b/pkgs/development/tools/misc/ccache/default.nix
index f7d2dfc4957c..0762d175e89d 100644
--- a/pkgs/development/tools/misc/ccache/default.nix
+++ b/pkgs/development/tools/misc/ccache/default.nix
@@ -1,23 +1,24 @@
-{ stdenv, fetchurl, runCommand, gcc, perl, zlib }:
+{ stdenv, fetchurl, runCommand, gcc, zlib }:
 
 let
   # TODO: find out if there's harm in just using 'rec' instead.
   name = "ccache-${version}";
   version = "3.2.2";
   sha256 = "1jm0qb3h5sypllaiyj81zp6m009vm50hzjnx994ril94kxlrj3ag";
-  doCheck = true;
 
   ccache =
 stdenv.mkDerivation {
-  inherit name doCheck;
+  inherit name;
   src = fetchurl {
     inherit sha256;
     url = "mirror://samba/ccache/${name}.tar.xz";
   };
 
-  # The test dependency on perl should be gone in the next release:
-  buildInputs = [ zlib ]
-    ++ stdenv.lib.optionals doCheck [ perl ];
+  patches = [ ./test-drop-perl-requirement.patch ];
+
+  buildInputs = [ zlib ];
+
+  doCheck = true;
 
   passthru = {
     # A derivation that provides gcc and g++ commands, but that
diff --git a/pkgs/development/tools/misc/ccache/test-drop-perl-requirement.patch b/pkgs/development/tools/misc/ccache/test-drop-perl-requirement.patch
new file mode 100644
index 000000000000..ca4c39edc300
--- /dev/null
+++ b/pkgs/development/tools/misc/ccache/test-drop-perl-requirement.patch
@@ -0,0 +1,36 @@
+Since perl is used in just one place and can easily be replaced by a
+little bit of shell, do so.  This makes testing on limited systems
+easier.
+
+Signed-off-by: Mike Frysinger <vapier@gentoo.org>
+---
+ INSTALL.txt | 1 -
+ test.sh     | 2 +-
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/INSTALL.txt b/INSTALL.txt
+index 256beab..f77cbe6 100644
+--- a/INSTALL.txt
++++ b/INSTALL.txt
+@@ -67,7 +67,6 @@ In addition to the prerequisites mentioned above, you also need:
+
+ To debug and run the performance test suite you'll also need:
+
+-- Perl (http://www.perl.org/)
+ - Python (http://www.python.org/)
+
+ Run "./autogen.sh" and then follow the steps mentioned under "Installation"
+diff --git a/test.sh b/test.sh
+index f14e287..1090649 100755
+--- a/test.sh
++++ b/test.sh
+@@ -1834,7 +1834,7 @@ prepare_cleanup_test() {
+     mkdir -p $dir
+     i=0
+     while [ $i -lt 10 ]; do
+-        perl -e 'print "A" x 4017' >$dir/result$i-4017.o
++        printf '%4017s' '' | tr ' ' 'A' >$dir/result$i-4017.o
+         touch $dir/result$i-4017.stderr
+         touch $dir/result$i-4017.d
+         if [ $i -gt 5 ]; then
+--
diff --git a/pkgs/development/tools/ocaml/ocp-index/default.nix b/pkgs/development/tools/ocaml/ocp-index/default.nix
index 767a5e17cb4a..c901d676b90e 100644
--- a/pkgs/development/tools/ocaml/ocp-index/default.nix
+++ b/pkgs/development/tools/ocaml/ocp-index/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchzip, ocaml, findlib, ocpBuild, ocpIndent, opam, cmdliner, ncurses, re, lambdaTerm, libev }:
+{ stdenv, fetchurl, fetchzip, ocaml, findlib, ocpBuild, ocpIndent, opam, cmdliner, ncurses, re, lambdaTerm, libev }:
 
 let inherit (stdenv.lib) getVersion versionAtLeast optional; in
 
@@ -6,7 +6,13 @@ assert versionAtLeast (getVersion ocaml) "3.12.1";
 assert versionAtLeast (getVersion ocpBuild) "1.99.6-beta";
 assert versionAtLeast (getVersion ocpIndent) "1.4.2";
 
-let version = "1.1.1"; in
+let
+  version = "1.1.2";
+  patch402 = fetchurl {
+    url = https://raw.githubusercontent.com/ocaml/opam-repository/master/packages/ocp-index/ocp-index.1.1.2/files/ocaml.4.02.patch;
+    sha256 = "1wcpn2pv7h8ia3ybmzdlm8v5hfvq1rgmlj02wwj0yh3vqjvxqvsm";
+  };
+in
 
 stdenv.mkDerivation {
 
@@ -14,9 +20,11 @@ stdenv.mkDerivation {
 
   src = fetchzip {
     url = "http://github.com/OCamlPro/ocp-index/archive/${version}.tar.gz";
-    sha256 = "173lqbyivwv1zf9ifpxa9f8m2y3kybzs3idrwyzy824ixdqv2fww";
+    sha256 = "0cz0bz5nisc5r23b1w07q2bl489gd09mg8rp9kyq9m6rj669b18l";
   };
 
+  patches = optional (versionAtLeast (getVersion ocaml) "4.02") patch402;
+
   buildInputs = [ ocaml findlib ocpBuild opam cmdliner ncurses re libev ]
   ++ optional (versionAtLeast (getVersion lambdaTerm) "1.7") lambdaTerm;
   propagatedBuildInputs = [ ocpIndent ];
diff --git a/pkgs/development/web/iojs/default.nix b/pkgs/development/web/iojs/default.nix
index 8c90e421944f..6fef81300aba 100644
--- a/pkgs/development/web/iojs/default.nix
+++ b/pkgs/development/web/iojs/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, python, utillinux, openssl_1_0_2, http-parser, zlib, libuv }:
 
 let
-  version = "2.3.1";
+  version = "2.3.3";
   inherit (stdenv.lib) optional maintainers licenses platforms;
 in stdenv.mkDerivation {
   name = "iojs-${version}";
 
   src = fetchurl {
     url = "https://iojs.org/dist/v${version}/iojs-v${version}.tar.gz";
-    sha256 = "1vkahs7ky551gl52l8j8f2w8ajasjblqqmhird5ll87wccx8w6f2";
+    sha256 = "12fdz0as1sa34bq4a701qwrznpn7y1wq0yxlr5yw494ifchfm103";
   };
 
   prePatch = ''
diff --git a/pkgs/development/web/nodejs/default.nix b/pkgs/development/web/nodejs/default.nix
index 2f5e4160923a..f0598f735596 100644
--- a/pkgs/development/web/nodejs/default.nix
+++ b/pkgs/development/web/nodejs/default.nix
@@ -42,9 +42,6 @@ in stdenv.mkDerivation {
 
   patches = if stdenv.isDarwin then [ ./no-xcode.patch ] else null;
 
-  postPatch = if stdenv.isDarwin then ''
-    (cd tools/gyp; patch -Np1 -i ${../../python-modules/gyp/no-darwin-cflags.patch})
-  '' else null;
 
   preBuild = if stdenv.isDarwin then ''
     patchShebangs .
diff --git a/pkgs/games/sgt-puzzles/default.nix b/pkgs/games/sgt-puzzles/default.nix
index 8aaf1f0865c4..67f74be9e1cd 100644
--- a/pkgs/games/sgt-puzzles/default.nix
+++ b/pkgs/games/sgt-puzzles/default.nix
@@ -1,40 +1,35 @@
-a :  
-let 
-  fetchsvn = a.fetchsvn;
-
-  version = a.lib.attrByPath ["version"] "r8541" a;
-  buildInputs = with a; [
+{stdenv, gtk, pkgconfig, libX11, perl, fetchsvn}:
+let
+  version = "10286";
+  buildInputs = [
     gtk pkgconfig libX11 perl
   ];
 in
-rec {
+stdenv.mkDerivation {
   src = fetchsvn {
    url = svn://svn.tartarus.org/sgt/puzzles;
-   rev = "9773";
-   sha256 = "1m0mmxbcj0zi44dlmhk4h30d9hdy8g9f59r7k7906pgnnyf49611";
-  } + "/";
-
+   rev = version;
+   sha256 = "1mp1s33hjikby7jy6bcjwyzkdwlw1bw9dcc4cg5d80wmzkb0sqv0";
+  };
+  name = "sgt-puzzles-r" + version;
   inherit buildInputs;
-  configureFlags = [];
-  makeFlags = ["prefix=$out" "gamesdir=$out/bin"];
-
-  neededDirs = ["$out/bin" "$out/share"];
-  extraDoc = ["puzzles.txt"];
-
-  mkMakefiles = a.fullDepEntry ''
+  makeFlags = ["prefix=$(out)" "gamesdir=$(out)/bin"];
+  preInstall = ''
+    mkdir -p "$out"/{bin,share/doc/sgtpuzzles}
+    cp puzzles.txt LICENCE README "$out/share/doc/sgtpuzzles"
+    cp LICENCE "$out/share/doc/sgtpuzzles/LICENSE"
+  '';
+  preConfigure = ''
     perl mkfiles.pl
-  '' ["minInit" "doUnpack" "addInputs"];
-
-  setVars = a.noDepEntry ''
     export NIX_LDFLAGS="$NIX_LDFLAGS -lX11"
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error"
+    cp Makefile.gtk Makefile
   '';
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["addInputs" "setVars" "mkMakefiles" "doMakeInstall"];
-
-  name = "sgt-puzzles-" + version;
   meta = {
+    inherit version;
     description = "Simon Tatham's portable puzzle collection";
+    license = stdenv.lib.licenses.mit ;
+    maintainers = [stdenv.lib.maintainers.raskin];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/games/zandronum/bin.nix b/pkgs/games/zandronum/bin.nix
index baf91a666229..f7fa9fc643e5 100644
--- a/pkgs/games/zandronum/bin.nix
+++ b/pkgs/games/zandronum/bin.nix
@@ -3,6 +3,7 @@
 , bzip2
 , cairo
 , fetchurl
+, fluidsynth
 , fontconfig
 , freetype
 , gdk_pixbuf
@@ -20,16 +21,17 @@
 assert stdenv.system == "x86_64-linux";
 
 stdenv.mkDerivation rec {
-  name = "zandronum-2.0";
+  name = "zandronum-2.1";
   src = fetchurl {
-    url = "http://zandronum.com/downloads/zandronum2.0-linux-x86_64.tar.bz2";
-    sha256 = "1k49az7x0ig40r2xisscpyhfcx9zzivx8w1l1ispj58g6qivicgc";
+    url = "http://zandronum.com/downloads/zandronum2.1-linux-x86_64.tar.bz2";
+    sha256 = "0fhk2gd0lqmc6brbli17ks5ywnlzkjyas1kfdqsf3d96w0z5rz11";
   };
 
   libPath = stdenv.lib.makeLibraryPath [
     atk
     bzip2
     cairo
+    fluidsynth
     fontconfig
     freetype
     gdk_pixbuf
diff --git a/pkgs/games/zandronum/default.nix b/pkgs/games/zandronum/default.nix
index ca60c364f0f3..812ea2681136 100644
--- a/pkgs/games/zandronum/default.nix
+++ b/pkgs/games/zandronum/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchhg, cmake, SDL, mesa, fmod42416, openssl, sqlite, sqlite-amalgamation }:
 
 stdenv.mkDerivation {
-  name = "zandronum-2.0";
+  name = "zandronum-2.1";
   src = fetchhg {
-    url = "https://bitbucket.org/Torr_Samaho/zandronum";
-    rev = "2fc02c0";
-    sha256 = "1syzy0iphm6jj5wag3xyr2fx7vyg2cjcmijhvgw2rc67rww85pv2";
+    url = "https://bitbucket.org/Torr_Samaho/zandronum-stable";
+    rev = "27275a8";
+    sha256 = "00xyrk0d1jrvy6zk059yawgd9b33z0fx4hvzcjvvbn03rqci60yc";
   };
 
   phases = [ "unpackPhase" "configurePhase" "buildPhase" "installPhase" ];
diff --git a/pkgs/games/zandronum/server.nix b/pkgs/games/zandronum/server.nix
index 506eee0e54f9..f0e0285f87e1 100644
--- a/pkgs/games/zandronum/server.nix
+++ b/pkgs/games/zandronum/server.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchhg, cmake, openssl, sqlite, sqlite-amalgamation, SDL }:
 
 stdenv.mkDerivation {
-  name = "zandronum-server-2.0";
+  name = "zandronum-server-2.1";
   src = fetchhg {
-    url = "https://bitbucket.org/Torr_Samaho/zandronum";
-    rev = "2fc02c0";
-    sha256 = "1syzy0iphm6jj5wag3xyr2fx7vyg2cjcmijhvgw2rc67rww85pv2";
+    url = "https://bitbucket.org/Torr_Samaho/zandronum-stable";
+    rev = "27275a8";
+    sha256 = "00xyrk0d1jrvy6zk059yawgd9b33z0fx4hvzcjvvbn03rqci60yc";
   };
 
   phases = [ "unpackPhase" "configurePhase" "buildPhase" "installPhase" ];
diff --git a/pkgs/misc/emulators/wine/stable.upstream b/pkgs/misc/emulators/wine/stable.upstream
deleted file mode 100644
index b5913798a886..000000000000
--- a/pkgs/misc/emulators/wine/stable.upstream
+++ /dev/null
@@ -1,8 +0,0 @@
-url http://sourceforge.net/projects/wine/files/Source/
-version_link '[-][0-9]+[.][0-9]*[24680][.]([0-9]+[.])*tar[.][^./]+/download$'
-SF_redirect
-do_overwrite () {
-  ensure_hash
-  set_var_value version "$CURRENT_VERSION"
-  set_var_value sha256 "$CURRENT_HASH"
-}
diff --git a/pkgs/misc/emulators/wine/unstable.upstream b/pkgs/misc/emulators/wine/unstable.upstream
deleted file mode 100644
index fa78360c76af..000000000000
--- a/pkgs/misc/emulators/wine/unstable.upstream
+++ /dev/null
@@ -1,9 +0,0 @@
-url http://sourceforge.net/projects/wine/files/Source/
-attribute_name wineUnstable
-version_link '[.]tar[.][^./]+/download$'
-SF_redirect
-do_overwrite () {
-  ensure_hash
-  set_var_value version "$CURRENT_VERSION"
-  set_var_value sha256 "$CURRENT_HASH"
-}
diff --git a/pkgs/misc/emulators/wine/versions.nix b/pkgs/misc/emulators/wine/versions.nix
index 84a3ff8f86d6..cdb62d4ada77 100644
--- a/pkgs/misc/emulators/wine/versions.nix
+++ b/pkgs/misc/emulators/wine/versions.nix
@@ -1,7 +1,7 @@
 {
   unstable = {
-    wineVersion = "1.7.43";
-    wineSha256  = "08kqj02m8xc1ppzhs5y83zzykjnz0qliq495rx1n90ybzyd9pm2k";
+    wineVersion = "1.7.46";
+    wineSha256  = "02rmhz64ianls3z9r6nxf97k49bvfmyhwmpjz5a31pknqrn09d4s";
     geckoVersion = "2.36";
     geckoSha256 = "12hjks32yz9jq4w3xhk3y1dy2g3iakqxd7aldrdj51cqiz75g95g";
     gecko64Version = "2.36";
@@ -23,8 +23,8 @@
     #monoSha256 = "00jl24qp7vh3hlqv7wsw1s529lr5p0ybif6s73jy85chqaxj7z1x";
   };
   staging = {
-    version = "1.7.43";
-    sha256 = "01b7npa8hc2nrv4hm16r9ikic4wd34nbz1lvfhy0ali2jbcsaqqb";
+    version = "1.7.46";
+    sha256 = "0nkqqrzx9hprwjzg7ffzirnldxpqa6wn9c1rcyd34k77ym1v44pa";
   };
   winetricks = {
     version = "20150416";
diff --git a/pkgs/misc/screensavers/xscreensaver/default.nix b/pkgs/misc/screensavers/xscreensaver/default.nix
index 1d039e0a4402..bc1c69c22019 100644
--- a/pkgs/misc/screensavers/xscreensaver/default.nix
+++ b/pkgs/misc/screensavers/xscreensaver/default.nix
@@ -4,12 +4,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "5.32";
+  version = "5.33";
   name = "xscreensaver-${version}";
 
   src = fetchurl {
     url = "http://www.jwz.org/xscreensaver/${name}.tar.gz";
-    sha256 = "1gckra8lsd383av15r7lv9rszw6mp8n1gpcb5qs5nbrdkl3sclj2";
+    sha256 = "0k9z64ynpcfy19a33lm6g75ry3mb6zilm3dnm0zq9whrj9hw386l";
   };
 
   buildInputs =
diff --git a/pkgs/misc/themes/albatross/default.nix b/pkgs/misc/themes/albatross/default.nix
new file mode 100644
index 000000000000..01b9d59aa7be
--- /dev/null
+++ b/pkgs/misc/themes/albatross/default.nix
@@ -0,0 +1,25 @@
+{stdenv, fetchgit}:
+
+stdenv.mkDerivation rec {
+  name = "Albatross-${version}";
+  version = "1.7.3";
+
+  src = fetchgit {
+    url = git://github.com/shimmerproject/Albatross.git;
+    rev = "refs/tags/v${version}";
+    sha256 = "7a585068dd59f753149c0d390f2ef541f2ace67e7d681613588edb9f962e3196";
+  };
+
+  dontBuild = true;
+
+  installPhase = ''
+    install -dm 755 $out/share/themes/Albatross
+    cp -dr --no-preserve='ownership' {LICENSE.GPL,README,index.theme,gtk-2.0,gtk-3.0,metacity-1,xfwm4} $out/share/themes/Albatross/
+  '';
+
+  meta = {
+    description = "Albatross";
+    homepage = "http://shimmerproject.org/our-projects/albatross/";
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
diff --git a/pkgs/misc/vim-plugins/default.nix b/pkgs/misc/vim-plugins/default.nix
index 6f6c8fd6e7b0..b91a1a2ae106 100644
--- a/pkgs/misc/vim-plugins/default.nix
+++ b/pkgs/misc/vim-plugins/default.nix
@@ -82,6 +82,17 @@ rec {
   webapi-vim          = WebAPI;
   yankring            = YankRing;
 
+  CSApprox = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+    name = "CSApprox-2013-07-26";
+    src = fetchgit {
+      url = "git://github.com/godlygeek/csapprox";
+      rev = "7981dac51d8b6776985aa08cb7b5ee98ea7f2ddd";
+      sha256 = "8ccb47eb79c7ab63109d32158388812bdca340985527af4f2a5489ff8683389f";
+    };
+    dependencies = [];
+
+  };
+
   Gist = buildVimPluginFrom2Nix { # created by nix#NixDerivation
     name = "Gist-2015-06-24";
     src = fetchgit {
@@ -876,6 +887,17 @@ rec {
 
   };
 
+  sleuth = buildVimPluginFrom2Nix { # created by nix#NixDerivation
+    name = "sleuth-2015-06-07";
+    src = fetchgit {
+      url = "git://github.com/tpope/vim-sleuth";
+      rev = "a17462708aa40a7fc0afd4effa559087d8a2c908";
+      sha256 = "72f4b7c5e60c942592e624806960736e71b9f109fbbfa3a5a2a37970b90f6025";
+    };
+    dependencies = [];
+
+  };
+
   snipmate = buildVimPluginFrom2Nix { # created by nix#NixDerivation
     name = "snipmate-2015-04-04";
     src = fetchgit {
diff --git a/pkgs/misc/vim-plugins/vim-plugin-names b/pkgs/misc/vim-plugins/vim-plugin-names
index c095237bc9a9..972754ec2baf 100644
--- a/pkgs/misc/vim-plugins/vim-plugin-names
+++ b/pkgs/misc/vim-plugins/vim-plugin-names
@@ -1,3 +1,4 @@
+"CSApprox"
 "Gist"
 "Gundo"
 "Hoogle"
@@ -63,6 +64,7 @@
 "quickfixstatus"
 "rainbow_parentheses"
 "rust"
+"sleuth"
 "sensible"
 "snipmate"
 "sourcemap"
diff --git a/pkgs/os-specific/linux/atop/default.nix b/pkgs/os-specific/linux/atop/default.nix
index 17adcabf2230..c9a51ae569a1 100644
--- a/pkgs/os-specific/linux/atop/default.nix
+++ b/pkgs/os-specific/linux/atop/default.nix
@@ -1,12 +1,12 @@
 {stdenv, fetchurl, zlib, ncurses}:
 
 stdenv.mkDerivation rec {
-  version = "2.1-1";
+  version = "2.2-3";
   name = "atop-${version}";
 
   src = fetchurl {
     url = "http://www.atoptool.nl/download/atop-${version}.tar.gz";
-    sha256 = "17wqqyym4d02cqmn1l1asah3sld939nlkc84g4ad939kpkzd98ir";
+    sha256 = "0p85isn6zih3xfprjym5xanqzazwqjj8x2mmwqyqpqjv6nibi1f7";
   };
 
   buildInputs = [zlib ncurses];
@@ -29,6 +29,7 @@ stdenv.mkDerivation rec {
 
   preInstall = ''
     mkdir -p "$out"/{bin,sbin}
+    make systemdinstall $makeFlags
   '';
 
   meta = {
diff --git a/pkgs/os-specific/linux/eudev/default.nix b/pkgs/os-specific/linux/eudev/default.nix
index de8ad00acc81..1932fc9d11f7 100644
--- a/pkgs/os-specific/linux/eudev/default.nix
+++ b/pkgs/os-specific/linux/eudev/default.nix
@@ -3,10 +3,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="eudev";
-    version = "3.1.1";
+    version = "3.1.2";
     name="${baseName}-${version}";
     url="http://dev.gentoo.org/~blueness/eudev/eudev-${version}.tar.gz";
-    sha256 = "1r1jbk1fwc4wl0ifm7xzkb2vjd8w1a39hx6mmy4pp4fl2gvcg86k";
+    sha256 = "0wq2w67ip957l5bi21jj3w2rv7s7klcrnlg6zpg1g0fxjfgbd4s3";
   };
   buildInputs = [
     glib pkgconfig gperf utillinux
diff --git a/pkgs/os-specific/linux/mcelog/default.nix b/pkgs/os-specific/linux/mcelog/default.nix
index 63bab2ddd76c..31c360051bb3 100644
--- a/pkgs/os-specific/linux/mcelog/default.nix
+++ b/pkgs/os-specific/linux/mcelog/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchFromGitHub }:
 
-let version = "120"; in
+let version = "121"; in
 stdenv.mkDerivation {
   name = "mcelog-${version}";
 
   src = fetchFromGitHub {
-    sha256 = "1x50g0vrarcv31x4xszcxkpwklkq6mrv2xr1dxbbds26qz8jk11l";
+    sha256 = "1psdcbr3ssavl35svjzgsy5xl0f2s57s740anvyqy8ziy4k5fjyv";
     rev = "v${version}";
     repo = "mcelog";
     owner = "andikleen";
diff --git a/pkgs/os-specific/linux/nvidia-x11/legacy340.nix b/pkgs/os-specific/linux/nvidia-x11/legacy340.nix
index 7fcdb40de03a..a53906ed0200 100644
--- a/pkgs/os-specific/linux/nvidia-x11/legacy340.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/legacy340.nix
@@ -25,6 +25,8 @@ stdenv.mkDerivation {
 
   builder = ./builder-legacy340.sh;
 
+  patches = [ ./nvidia-340.76-kernel-4.0.patch ];
+
   src =
     if stdenv.system == "i686-linux" then
       fetchurl {
diff --git a/pkgs/os-specific/linux/nvidia-x11/nvidia-340.76-kernel-4.0.patch b/pkgs/os-specific/linux/nvidia-x11/nvidia-340.76-kernel-4.0.patch
new file mode 100644
index 000000000000..c959190023b7
--- /dev/null
+++ b/pkgs/os-specific/linux/nvidia-x11/nvidia-340.76-kernel-4.0.patch
@@ -0,0 +1,28 @@
+--- a/kernel/nv-pat.c	2015-07-03 08:39:35.417031728 +0200
++++ b/kernel/nv-pat.c	2015-07-03 08:42:15.631838988 +0200
+@@ -35,8 +35,13 @@
+     unsigned long cr0 = read_cr0();
+     write_cr0(((cr0 & (0xdfffffff)) | 0x40000000));
+     wbinvd();
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0)
+     *cr4 = read_cr4();
+     if (*cr4 & 0x80) write_cr4(*cr4 & ~0x80);
++#else
++    *cr4 = __read_cr4();
++    if (*cr4 & 0x80) __write_cr4(*cr4 & ~0x80);
++#endif
+     __flush_tlb();
+ }
+
+@@ -46,7 +51,11 @@
+     wbinvd();
+     __flush_tlb();
+     write_cr0((cr0 & 0x9fffffff));
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3, 20, 0)
+     if (cr4 & 0x80) write_cr4(cr4);
++#else
++    if (cr4 & 0x80) __write_cr4(cr4);
++#endif
+ }
+
+ static int nv_determine_pat_mode(void)
diff --git a/pkgs/os-specific/linux/pam_mount/default.nix b/pkgs/os-specific/linux/pam_mount/default.nix
index 05438c6945ce..a4f52517df4b 100644
--- a/pkgs/os-specific/linux/pam_mount/default.nix
+++ b/pkgs/os-specific/linux/pam_mount/default.nix
@@ -1,21 +1,27 @@
-{ stdenv, fetchurl, autoconf, automake, pkgconfig, libtool, pam, libHX, utillinux, libxml2, pcre, perl, openssl, cryptsetup }:
+{ stdenv, fetchurl, autoconf, automake, pkgconfig, libtool, pam, libHX, libxml2, pcre, perl, openssl, cryptsetup, utillinux }:
 
 stdenv.mkDerivation rec {
-  name = "pam_mount-2.14";
+  name = "pam_mount-2.15";
 
   src = fetchurl {
-    url = "mirror://sourceforge/pam-mount/pam_mount/2.14/${name}.tar.xz";
-    sha256 = "1yfwg8i4n7af8yi3w3pkqzqz75wgjjlg5lslv1r5g1v88nrwnrkg";
+    url = "mirror://sourceforge/pam-mount/pam_mount/2.15/${name}.tar.xz";
+    sha256 = "091aq5zyc60wh21m1ryanjwknwxlaj9nvlswn5vjrmcdir5gnkm5";
   };
 
   buildInputs = [ autoconf automake pkgconfig libtool pam libHX utillinux libxml2 pcre perl openssl cryptsetup ];
 
-  preConfigure = "sh autogen.sh --prefix=$out";
+  patches = [ ./insert_utillinux_path_hooks.patch ];
+
+  preConfigure = ''
+    substituteInPlace src/mtcrypt.c --replace @@NIX_UTILLINUX@@ ${utillinux}/bin
+    sh autogen.sh --prefix=$out
+    '';
 
   makeFlags = "DESTDIR=$(out)";
 
   # Probably a hack, but using DESTDIR and PREFIX makes everything work!
   postInstall = ''
+    mkdir -p $out
     cp -r $out/$out/* $out
     rm -r $out/nix
     '';
diff --git a/pkgs/os-specific/linux/pam_mount/insert_utillinux_path_hooks.patch b/pkgs/os-specific/linux/pam_mount/insert_utillinux_path_hooks.patch
new file mode 100644
index 000000000000..6d9da05da295
--- /dev/null
+++ b/pkgs/os-specific/linux/pam_mount/insert_utillinux_path_hooks.patch
@@ -0,0 +1,30 @@
+diff -uNr pam_mount-2.15_old/src/mtcrypt.c pam_mount-2.15/src/mtcrypt.c
+--- pam_mount-2.15_old/src/mtcrypt.c	2015-07-04 16:00:12.917943336 +0200
++++ pam_mount-2.15/src/mtcrypt.c	2015-07-04 16:03:45.685302493 +0200
+@@ -534,7 +534,7 @@
+ 
+ 	/* candidate for replacement by some libmount calls, I guess. */
+ 	argk = 0;
+-	mount_args[argk++] = "mount";
++	mount_args[argk++] = "@@NIX_UTILLINUX@@/mount";
+ 	if (opt->fstype != NULL) {
+ 		mount_args[argk++] = "-t";
+ 		mount_args[argk++] = opt->fstype;
+@@ -668,7 +668,7 @@
+ 
+ 	if (!opt->no_update)
+ 		pmt_smtab_remove(mntpt, SMTABF_MOUNTPOINT);
+-	rmt_args[argk++] = "mount";
++	rmt_args[argk++] = "@@NIX_UTILLINUX@@/mount";
+ 	rmt_args[argk++] = "-o";
+ 	rmt_args[argk++] = opt->extra_opts;
+ 	rmt_args[argk++] = mntpt;
+@@ -749,7 +749,7 @@
+ 		pmt_smtab_remove(mountpoint, SMTABF_MOUNTPOINT);
+ 	pmt_cmtab_remove(mountpoint);
+ 
+-	umount_args[argk++] = "umount";
++	umount_args[argk++] = "@@NIX_UTILLINUX@@/umount";
+ 	umount_args[argk++] = "-i";
+ 	umount_args[argk++] = mountpoint;
+ 	umount_args[argk]   = NULL;
diff --git a/pkgs/os-specific/linux/perf-tools/default.nix b/pkgs/os-specific/linux/perf-tools/default.nix
index 0273fed3ec4a..7c9b319d2554 100644
--- a/pkgs/os-specific/linux/perf-tools/default.nix
+++ b/pkgs/os-specific/linux/perf-tools/default.nix
@@ -1,13 +1,13 @@
 { lib, stdenv, fetchFromGitHub, perl }:
 
 stdenv.mkDerivation {
-  name = "perf-tools-20150130";
+  name = "perf-tools-20150704";
 
   src = fetchFromGitHub {
     owner = "brendangregg";
     repo = "perf-tools";
-    rev = "85414b01247666c9fefad25a1406c8078011c936";
-    sha256 = "1g15nnndcmxd1k9radcvfpn223pp627vs9wh90yiy73v03g7b8cs";
+    rev = "30ff4758915a98fd43020c1b45a63341208fd8b9";
+    sha256 = "0x59xm96jmpfgik6f9d6q6v85dip3kvi4ncijpghhg59ayyd5i6a";
   };
 
   buildInputs = [ perl ];
diff --git a/pkgs/os-specific/linux/spl/default.nix b/pkgs/os-specific/linux/spl/default.nix
index b3332d88512c..e28412a29046 100644
--- a/pkgs/os-specific/linux/spl/default.nix
+++ b/pkgs/os-specific/linux/spl/default.nix
@@ -1,13 +1,13 @@
 { callPackage, fetchFromGitHub, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "0.6.4.1";
+  version = "0.6.4.2";
 
   src = fetchFromGitHub {
     owner = "zfsonlinux";
     repo = "spl";
     rev = "spl-${version}";
-    sha256 = "1rlflraj66ag2gcvzsyfl4zwhq4846ifyzdmnnmscwmdf2qxc1l8";
+    sha256 = "101c5fzhnz67ix5w33rb2pwazxmyz6rfvyszbwy1kgh6rz75bjr4";
   };
 
   patches = [ ./const.patch ./install_prefix.patch ];
diff --git a/pkgs/os-specific/linux/spl/git.nix b/pkgs/os-specific/linux/spl/git.nix
index da9f57824b9e..b2a2f9ffebcd 100644
--- a/pkgs/os-specific/linux/spl/git.nix
+++ b/pkgs/os-specific/linux/spl/git.nix
@@ -1,12 +1,12 @@
 { callPackage, fetchgit, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "2015-06-10";
+  version = "2015-06-29";
 
   src = fetchgit {
     url = git://github.com/zfsonlinux/spl.git;
-    rev = "2345368646151718fa59986d9e2d9d38bcdecb2c";
-    sha256 = "08k7ahqgqrf9i118mkfxm01h8s607zp8lyvbvm1crii50dwlvl3g";
+    rev = "77ab5dd33a99bdf7fb062f0ea327582236a225b3";
+    sha256 = "1hbn8hi305cn15nlcm9x99nczjqjkhdc38hzww11xn78py8d90w9";
   };
 
   patches = [ ./const.patch ./install_prefix.patch ];
diff --git a/pkgs/os-specific/linux/udisks/2-default.nix b/pkgs/os-specific/linux/udisks/2-default.nix
index 2dc99504c584..9b7a7501629b 100644
--- a/pkgs/os-specific/linux/udisks/2-default.nix
+++ b/pkgs/os-specific/linux/udisks/2-default.nix
@@ -4,11 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "udisks-2.1.4";
+  name = "udisks-2.1.6";
 
   src = fetchurl {
     url = "http://udisks.freedesktop.org/releases/${name}.tar.bz2";
-    sha256 = "1fqrwmdyn5vc5r7wixh2f013ca1qf3kwy4ia8mh9282a7bfliqd4";
+    sha256 = "0spl155k0g2l2hvqf8xyjv08i68gfyhzpjva6cwlzxx0bz4gbify";
   };
 
   patches = [ ./force-path.patch ];
diff --git a/pkgs/os-specific/linux/xsensors/default.nix b/pkgs/os-specific/linux/xsensors/default.nix
new file mode 100644
index 000000000000..a392d065e419
--- /dev/null
+++ b/pkgs/os-specific/linux/xsensors/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, lib, fetchurl, gtk2, pkgconfig, lm_sensors }:
+
+stdenv.mkDerivation rec {
+  name = "xsensors-${version}";
+  version = "0.70";
+  src = fetchurl {
+    url = "http://www.linuxhardware.org/xsensors/xsensors-${version}.tar.gz";
+    sha256 = "1siplsfgvcxamyqf44h71jx6jdfmvhfm7mh0y1q8ps4zs6pj2zwh";
+  };
+  buildInputs = [
+    gtk2 pkgconfig lm_sensors
+  ];
+  patches = [
+    ./remove-unused-variables.patch
+    ./replace-deprecated-gtk.patch
+  ];
+  meta = with lib; {
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/os-specific/linux/xsensors/remove-unused-variables.patch b/pkgs/os-specific/linux/xsensors/remove-unused-variables.patch
new file mode 100644
index 000000000000..7da97a0e56e8
--- /dev/null
+++ b/pkgs/os-specific/linux/xsensors/remove-unused-variables.patch
@@ -0,0 +1,39 @@
+Author: Nanley Chery <nanleychery@gmail.com>
+From: Jean Delvare <khali@linux-fr.org>
+Subject: Remove declared, but unused variables
+Bug-Debian: http://bugs.debian.org/625435
+---
+--- a/src/gui.c
++++ b/src/gui.c
+@@ -257,10 +257,9 @@
+ 
+ /* Start the sensor info update timer. */
+ gint start_timer( GtkWidget *widget, gpointer data ) {
+-    gint timer;
+ 
+     /* Setup timer for updates. */
+-    timer = g_timeout_add( update_time * 1000, 
++    g_timeout_add( update_time * 1000,
+                              (GtkFunction) update_sensor_data, 
+ 			     (gpointer) data );
+ 
+@@ -287,7 +286,7 @@
+ 
+     /* feature data */
+     updates *head = NULL;
+-    updates *current = NULL, *prev = NULL;
++    updates *current = NULL;
+ 
+     const sensors_feature *feature;
+ 
+@@ -347,10 +346,8 @@
+             new_node->pbar = featpbar;
+ 
+             if ( head == NULL ) {
+-                prev = head;
+                 head = current = new_node;
+             } else {
+-                prev = current;
+                 current = current->next = new_node;
+             }
+ 
diff --git a/pkgs/os-specific/linux/xsensors/replace-deprecated-gtk.patch b/pkgs/os-specific/linux/xsensors/replace-deprecated-gtk.patch
new file mode 100644
index 000000000000..fed4c7dc4c95
--- /dev/null
+++ b/pkgs/os-specific/linux/xsensors/replace-deprecated-gtk.patch
@@ -0,0 +1,168 @@
+Author: Nanley Chery <nanleychery@gmail.com>
+Subject: Update deprecated gtk casts and replace deprecated function calls with their analogous cairo counterparts.
+Bug-Debian: http://bugs.debian.org/622005
+Bug-Debian: http://bugs.debian.org/610321
+---
+--- a/src/gui.c
++++ b/src/gui.c
+@@ -27,10 +27,10 @@
+ GtkWidget *mainwindow = NULL;
+ 
+ GdkColor colorWhite = { 0, 0xFFFF, 0xFFFF, 0xFFFF };
+-    
+-GdkColormap *cmap = NULL;
+ 
+-GdkPixmap *theme = NULL;
++GdkPixbuf *theme = NULL;
++
++cairo_surface_t *surface = NULL;
+ 
+ /* Destroy the main window. */
+ gint destroy_gui( GtkWidget *widget, gpointer data ) {
+@@ -76,17 +76,16 @@
+     }
+ }
+ 
+-static void draw_digits( GtkWidget *widget, const gchar *digits, int highLow )
++static void draw_digits( GtkWidget *widget, cairo_t *cr, const gchar *digits, int highLow )
+ {
+     const gchar *digit = digits;
+     int pos = 0, x = 0, y = 0, w = 0;
+ 
+     while ( *digit ) {
+         get_pm_location( *digit, &x, &y, &w );
+-        gdk_draw_drawable( widget->window,
+-                           widget->style->fg_gc[ GTK_WIDGET_STATE
+-                           (widget) ], theme, x, y + highLow,
+-                           pos, 0, w, 30 );
++        cairo_set_source_surface (cr, surface, pos-x, 0-(y + highLow));
++		cairo_rectangle(cr, pos, 0, w, 30);
++		cairo_fill(cr);
+         pos += w;
+         digit++;
+     }
+@@ -102,6 +101,8 @@
+ 
+     gchar result[7];
+ 
++    cairo_t *cr = gdk_cairo_create(widget->window);
++
+ #ifdef DEBUG_XSENSORS
+     printf( "area.width = %d, area.height = %d\n", event->area.width,
+             event->area.height );
+@@ -117,13 +118,11 @@
+ 
+             /* Display the digits */
+             if ( g_snprintf( result, 6, "%5.0f", current->curvalue ) >= 0 )
+-               draw_digits( widget, result, highLow );
++               draw_digits( widget, cr, result, highLow );
+ 
+             /* Display RPM */
+-            gdk_draw_drawable( widget->window, 
+-                               widget->style->fg_gc[ GTK_WIDGET_STATE 
+-                               (widget) ], theme, 0, 120 + highLow, 
+-                               90, 0, 57, 30 );
++            cairo_set_source_surface (cr, surface, 90-0, 0-(120 + highLow));
++     	    cairo_rectangle(cr, 90, 0, 57, 30);
+             break;
+         case TEMP:
+             if ( current->curvalue > current->curmax )
+@@ -134,17 +133,15 @@
+ 
+             /* Display the digits */
+             if ( g_snprintf( result, 7, "%6.1f", current->curvalue ) >= 0 )
+-               draw_digits( widget, result, highLow );
++               draw_digits( widget, cr, result, highLow );
+ 
+             /* Display degree symbol */
+             if ( tf == FALSE )
+                 x = 0;
+             else
+                 x = 57;
+-            gdk_draw_drawable( widget->window, 
+-                             widget->style->fg_gc[ GTK_WIDGET_STATE 
+-                             (widget) ], theme, x, 60 + highLow, 
+-                             96, 0, 57, 30 );
++            cairo_set_source_surface (cr, surface, 96-x, 0-(60 + highLow));
++     	    cairo_rectangle(cr, 96, 0, 57, 30);
+             
+             break;
+         case VOLT:
+@@ -154,20 +151,17 @@
+             
+             /* Display the digits */
+             if ( g_snprintf( result, 7, "%6.2f", current->curvalue ) >= 0 )
+-               draw_digits( widget, result, highLow );
++               draw_digits( widget, cr, result, highLow );
+ 
+             /* Display V */
+-            gdk_draw_drawable( widget->window, 
+-                             widget->style->fg_gc[ GTK_WIDGET_STATE 
+-                             (widget) ], theme, 114, 60 + highLow, 
+-                             96, 0, 57, 30 );
+-
+-
++            cairo_set_source_surface (cr, surface, 96-114, 0-(60 + highLow));
++     	    cairo_rectangle(cr, 96, 0, 57, 30);
+             break;
+         default:
+             break;
+     }
+-            
++    cairo_fill(cr);
++    cairo_destroy(cr);
+     return TRUE;
+ }
+ 
+@@ -260,7 +254,7 @@
+ 
+     /* Setup timer for updates. */
+     g_timeout_add( update_time * 1000,
+-                             (GtkFunction) update_sensor_data, 
++                             (GSourceFunc) update_sensor_data,
+ 			     (gpointer) data );
+ 
+     return SUCCESS;
+@@ -460,8 +454,6 @@
+     g_signal_connect( G_OBJECT (mainwindow), "delete_event",
+                       G_CALLBACK (destroy_gui), NULL );
+ 
+-    /* Graphics needed for drawing info. */
+-    cmap = gtk_widget_get_colormap( mainwindow );
+ 
+     /* Set up the image file used for displaying characters. */
+     if ( imagefile == NULL ) {
+@@ -481,12 +473,10 @@
+                        "Image file not found in either location!  Exiting!\n" );
+                 exit( 1 );
+             } else {
+-                theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap,
+-                        NULL, NULL, "./images/default.xpm" );
++                theme = gdk_pixbuf_new_from_file("./images/default.xpm", NULL );
+             }
+         } else {
+-            theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap,
+-                    NULL, NULL, imagefile );
++            theme = gdk_pixbuf_new_from_file(imagefile, NULL );
+         }
+     } else {
+         if ( stat( imagefile, &sbuf ) != 0 ) {
+@@ -495,11 +485,15 @@
+                     "Image file not found in specified location!  Exiting!\n" );
+             exit( 1 );
+         } else {
+-            theme = gdk_pixmap_colormap_create_from_xpm( NULL, cmap,
+-                    NULL, NULL, imagefile );
++            theme = gdk_pixbuf_new_from_file(imagefile, NULL );
+         }
+     }
+-    
++    surface = cairo_image_surface_create_for_data(gdk_pixbuf_get_pixels(theme),
++                                        CAIRO_FORMAT_RGB24,
++										gdk_pixbuf_get_width(theme),
++										gdk_pixbuf_get_height(theme),
++										gdk_pixbuf_get_rowstride(theme));
++
+     /* Create notebook for sensors. */
+     notebook = gtk_notebook_new( );
+     gtk_widget_modify_bg( notebook, GTK_STATE_NORMAL, &colorWhite );
diff --git a/pkgs/os-specific/linux/zfs/default.nix b/pkgs/os-specific/linux/zfs/default.nix
index 6ed168c70bec..399169b364eb 100644
--- a/pkgs/os-specific/linux/zfs/default.nix
+++ b/pkgs/os-specific/linux/zfs/default.nix
@@ -1,17 +1,14 @@
 { callPackage, fetchFromGitHub, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "0.6.4.1";
+  version = "0.6.4.2";
 
   src = fetchFromGitHub {
     owner = "zfsonlinux";
     repo = "zfs";
     rev = "zfs-${version}";
-    sha256 = "15fh1b2rvzvx4j3vgkwrgy2sd553bzwcvk1zai6phjhb6i2rw8v4";
+    sha256 = "192x4z5am5wgrr4hb5skshyr5a6af52xpnk6pni4hs4pxvlpcs37";
   };
 
-  patches = [
-    ./nix-build.patch
-    ./kernel-4.1-compat.patch
-  ];
+  patches = [ ./nix-build.patch ];
 })
diff --git a/pkgs/os-specific/linux/zfs/git.nix b/pkgs/os-specific/linux/zfs/git.nix
index c6088595dcfc..0df47e612e2b 100644
--- a/pkgs/os-specific/linux/zfs/git.nix
+++ b/pkgs/os-specific/linux/zfs/git.nix
@@ -1,12 +1,12 @@
 { callPackage, stdenv, fetchgit, spl_git, ... } @ args:
 
 callPackage ./generic.nix (args // rec {
-  version = "2015-06-22";
+  version = "2015-07-01";
 
   src = fetchgit {
     url = git://github.com/zfsonlinux/zfs.git;
-    rev = "72540ea3148a2bc03860d7d59b2b5fdc9a5cdee7";
-    sha256 = "0428xg5whr7y7r6r1jcfk8q944j948vj2nnzwgsx7cgn3n3v1yyn";
+    rev = "a7b10a931911d3a98a90965795daad031c6d33a2";
+    sha256 = "0llqbc37f4szx7mwi6j3xmxxz03g3ib7cwypmpcyi0nwkssav5xi";
   };
 
   patches = [ ./nix-build.patch ];
diff --git a/pkgs/servers/http/nginx/unstable.nix b/pkgs/servers/http/nginx/unstable.nix
index ae8e2785d5fd..907fe98d6810 100644
--- a/pkgs/servers/http/nginx/unstable.nix
+++ b/pkgs/servers/http/nginx/unstable.nix
@@ -10,10 +10,10 @@
 with stdenv.lib;
 
 let
-  version = "1.9.1";
+  version = "1.9.2";
   mainSrc = fetchurl {
     url = "http://nginx.org/download/nginx-${version}.tar.gz";
-    sha256 = "1b8xikrr19p07n28xnar8p8l0vgm7795lmrb2x7r9h4lwvx5bx89";
+    sha256 = "0y7d87v9rvc4xvxaz8cag6zhdg7lfp3z65ain665q02aw5dl5dl0";
   };
 
   rtmp-ext = fetchFromGitHub {
diff --git a/pkgs/servers/monitoring/prometheus/alertmanager/default.nix b/pkgs/servers/monitoring/prometheus/alertmanager/default.nix
index 56fcee762786..f2f5eaa6f183 100644
--- a/pkgs/servers/monitoring/prometheus/alertmanager/default.nix
+++ b/pkgs/servers/monitoring/prometheus/alertmanager/default.nix
@@ -1,23 +1,23 @@
 { stdenv, lib, goPackages, fetchFromGitHub, protobuf, vim }:
 
 goPackages.buildGoPackage rec {
-  name = "prometheus-alertmanager-${version}";
-  version = "0.0.1";
+  name = "prometheus-alertmanager-${rev}";
+  rev = "0.0.4";
   goPackagePath = "github.com/prometheus/alertmanager";
 
   src = fetchFromGitHub {
     owner = "prometheus";
     repo = "alertmanager";
-    rev = "2b6c5caf89a492b013204e8d7db99fbb78c5dcd4";
-    sha256 = "13rdqnvmx11ks305dlnzv9gwf8c4zjyi5fkwcd69xgjfars2m4f3";
+    inherit rev;
+    sha256 = "0g656rzal7m284mihqdrw23vhs7yr65ax19nvi70jl51wdallv15";
   };
 
   buildInputs = [
-    goPackages.glog
     goPackages.protobuf
     goPackages.fsnotify.v0
     goPackages.httprouter
     goPackages.prometheus.client_golang
+    goPackages.prometheus.log
     goPackages.pushover
     protobuf
     vim
@@ -25,7 +25,7 @@ goPackages.buildGoPackage rec {
 
   buildFlagsArray = ''
     -ldflags=
-        -X main.buildVersion ${version}
+        -X main.buildVersion ${rev}
         -X main.buildBranch master
         -X main.buildUser nix@nixpkgs
         -X main.buildDate 20150101-00:00:00
diff --git a/pkgs/servers/monitoring/prometheus/node_exporter/default.nix b/pkgs/servers/monitoring/prometheus/node_exporter/default.nix
index c60985d3aa73..922c958b3f52 100644
--- a/pkgs/servers/monitoring/prometheus/node_exporter/default.nix
+++ b/pkgs/servers/monitoring/prometheus/node_exporter/default.nix
@@ -4,22 +4,22 @@ with goPackages;
 
 buildGoPackage rec {
   name = "prometheus-node-exporter-${rev}";
-  rev = "0.8.1";
+  rev = "0.10.0";
   goPackagePath = "github.com/prometheus/node_exporter";
 
   src = fetchFromGitHub {
     owner = "prometheus";
     repo = "node_exporter";
     inherit rev;
-    sha256 = "15vp88w0b7h6sryy61qk369yjr3p4qvpch1nbxd9rm51bdgsqyys";
+    sha256 = "0dmczav52v9vi0kxl8gd2s7x7c94g0vzazhyvlq1h3729is2nf0p";
   };
 
   buildInputs = [
-    glog
     go-runit
     ntp
     prometheus.client_golang
     prometheus.client_model
+    prometheus.log
     protobuf
   ];
 
diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix
index 4e42cc0e5e6d..6f306a868911 100644
--- a/pkgs/tools/X11/xdg-utils/default.nix
+++ b/pkgs/tools/X11/xdg-utils/default.nix
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
       substituteInPlace $item --replace "cut " "${coreutils}/bin/cut "
       substituteInPlace $item --replace "sed " "${gnused}/bin/sed "
       substituteInPlace $item --replace "egrep " "${gnugrep}/bin/egrep "
-      sed -i $item -e "s#[^e]grep #${gnugrep}/bin/grep #g" # Don't replace 'egrep'
+      sed -i $item -re "s#([^e])grep #\1${gnugrep}/bin/grep #g" # Don't replace 'egrep'
       substituteInPlace $item --replace "which " "${which}/bin/which "
       substituteInPlace $item --replace "/usr/bin/file" "${file}/bin/file"
     done
diff --git a/pkgs/tools/filesystems/duperemove/default.nix b/pkgs/tools/filesystems/duperemove/default.nix
index 087012d62a1f..4836e39d4393 100644
--- a/pkgs/tools/filesystems/duperemove/default.nix
+++ b/pkgs/tools/filesystems/duperemove/default.nix
@@ -1,12 +1,14 @@
-{ lib, stdenv, fetchurl, libgcrypt, pkgconfig, glib, linuxHeaders }:
+{ lib, stdenv, fetchFromGitHub, libgcrypt, pkgconfig, glib, linuxHeaders }:
 
 stdenv.mkDerivation rec {
   name = "duperemove-${version}";
-  version = "0.09.beta2";
+  version = "0.09.4";
 
-  src = fetchurl {
-    url = "https://github.com/markfasheh/duperemove/archive/v${version}.tar.gz";
-    sha256 = "0rn7lf9rjf4ypgfwms2y7b459rri4rfn809h6wx8xl9nbm5niil4";
+  src = fetchFromGitHub {
+    owner = "markfasheh";
+    repo = "duperemove";
+    rev = "v${version}";
+    sha256 = "1d586k6rbfqb5557i1p5xq8ngbppbwpxlkw8wqm7d900a3hp36nl";
   };
 
   buildInputs = [ libgcrypt pkgconfig glib linuxHeaders ];
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index bfb739fa84a0..55e4e17fa1fb 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -6,11 +6,11 @@ let
   s = # Generated upstream information 
   rec {
     baseName="glusterfs";
-    version="3.7.1";
+    version="3.7.2";
     name="${baseName}-${version}";
-    hash="0d1bcijwvc3rhr24xsn7nnp0b5xwlwvybamb05jzja5m7hapydpw";
-    url="http://download.gluster.org/pub/gluster/glusterfs/3.7/3.7.1/glusterfs-3.7.1.tar.gz";
-    sha256="0d1bcijwvc3rhr24xsn7nnp0b5xwlwvybamb05jzja5m7hapydpw";
+    hash="0cw6p21nnxcvzd8rymd5q0ydlaz4hx4rmv22hwbb39h7a2rvfv79";
+    url="http://download.gluster.org/pub/gluster/glusterfs/3.7/3.7.2/glusterfs-3.7.2.tar.gz";
+    sha256="0cw6p21nnxcvzd8rymd5q0ydlaz4hx4rmv22hwbb39h7a2rvfv79";
   };
   buildInputs = [
     fuse bison flex_2_5_35 openssl python ncurses readline
diff --git a/pkgs/tools/graphics/asymptote/default.nix b/pkgs/tools/graphics/asymptote/default.nix
index 01f3947cdfac..7a15b00b365f 100644
--- a/pkgs/tools/graphics/asymptote/default.nix
+++ b/pkgs/tools/graphics/asymptote/default.nix
@@ -10,7 +10,7 @@ let
     version="2.35";
     name="${baseName}-${version}";
     hash="11f28vxw0ybhvl7vxmqcdwvw7y6gz55ykw9ybgzb2px6lsvgag7z";
-    url="http://softlayer-ams.dl.sourceforge.net/project/asymptote/2.35/asymptote-2.35.src.tgz";
+    url="mirror://sourceforge/asymptote/2.35/asymptote-2.35.src.tgz";
     sha256="11f28vxw0ybhvl7vxmqcdwvw7y6gz55ykw9ybgzb2px6lsvgag7z";
   };
   buildInputs = [
diff --git a/pkgs/tools/misc/cloc/default.nix b/pkgs/tools/misc/cloc/default.nix
index 8d7ba0c70c82..bb278dbe1b19 100644
--- a/pkgs/tools/misc/cloc/default.nix
+++ b/pkgs/tools/misc/cloc/default.nix
@@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
 
   name = "cloc-${version}";
 
-  version = "1.62";
+  version = "1.64";
 
   src = fetchurl {
     url = "mirror://sourceforge/cloc/cloc-${version}.tar.gz";
-    sha256 = "1cxc663dccd0sc2m0aj5lxdbnbzrys6rh9n8q122h74bfvsiw4f4";
+    sha256 = "1w3mz69h2i7pscvi9q7yp7wimds8g38c5ph78cj5pvjl5wa035rh";
   };
 
   buildInputs = [ perl AlgorithmDiff RegexpCommon ];
diff --git a/pkgs/tools/misc/grub/trusted.nix b/pkgs/tools/misc/grub/trusted.nix
index 9f897d7e93a2..790870cf302f 100644
--- a/pkgs/tools/misc/grub/trusted.nix
+++ b/pkgs/tools/misc/grub/trusted.nix
@@ -1,26 +1,92 @@
-{stdenv, fetchgit, autoconf, automake, buggyBiosCDSupport ? true}:
+{ stdenv, fetchurl, fetchgit, autogen, flex, bison, python, autoconf, automake
+, gettext, ncurses, libusb, freetype, qemu, devicemapper
+}:
 
-stdenv.mkDerivation {
-  name = "trustedGRUB-1.1.5";
+with stdenv.lib;
+let
+  pcSystems = {
+    "i686-linux".target = "i386";
+    "x86_64-linux".target = "i386";
+  };
+
+  inPCSystems = any (system: stdenv.system == system) (mapAttrsToList (name: _: name) pcSystems);
+
+  version = "2.0-git-2015-07-04";
+
+  unifont_bdf = fetchurl {
+    url = "http://unifoundry.com/unifont-5.1.20080820.bdf.gz";
+    sha256 = "0s0qfff6n6282q28nwwblp5x295zd6n71kl43xj40vgvdqxv0fxx";
+  };
+
+  po_src = fetchurl {
+    name = "grub-2.02-beta2.tar.gz";
+    url = "http://alpha.gnu.org/gnu/grub/grub-2.02~beta2.tar.gz";
+    sha256 = "1lr9h3xcx0wwrnkxdnkfjwy08j7g7mdlmmbdip2db4zfgi69h0rm";
+
+  };
+
+in (
+
+stdenv.mkDerivation rec {
+  name = "trustedGRUB-${version}";
 
   src = fetchgit {
-     url = "https://github.com/ts468/TrustedGRUB";
-     rev = "954941c17e14c8f7b18e6cd3043ef5f946866f1c";
-     sha256 = "30c21765dc44f02275e66220d6724ec9cd45496226ca28c6db59a9147aa22685";
+    url = "https://github.com/Sirrix-AG/TrustedGRUB2";
+    rev = "1865d07bdef7f39916790c77103fb85e99de14a4";
+    sha256 = "e6bd9edfeb653e98e585fd691a31533b649b2fca1f4a903c70f6ea371014c9f7";
   };
 
-  # Autoconf/automake required for the splashimage patch.
-  buildInputs = [autoconf automake];
+  nativeBuildInputs = [ autogen flex bison python autoconf automake ];
+  buildInputs = [ ncurses libusb freetype gettext devicemapper ]
+    ++ optional doCheck qemu;
+
+  preConfigure =
+    '' for i in "tests/util/"*.in
+       do
+         sed -i "$i" -e's|/bin/bash|/bin/sh|g'
+       done
+
+       # Apparently, the QEMU executable is no longer called
+       # `qemu-system-i386', even on i386.
+       #
+       # In addition, use `-nodefaults' to avoid errors like:
+       #
+       #  chardev: opening backend "stdio" failed
+       #  qemu: could not open serial device 'stdio': Invalid argument
+       #
+       # See <http://www.mail-archive.com/qemu-devel@nongnu.org/msg22775.html>.
+       sed -i "tests/util/grub-shell.in" \
+           -e's/qemu-system-i386/qemu-system-x86_64 -nodefaults/g'
+    '';
+
+  prePatch =
+    '' tar zxf ${po_src} grub-2.02~beta2/po
+       rm -rf po
+       mv grub-2.02~beta2/po po
+       sh autogen.sh
+       gunzip < "${unifont_bdf}" > "unifont.bdf"
+       sed -i "configure" \
+           -e "s|/usr/src/unifont.bdf|$PWD/unifont.bdf|g"
+    '';
+
+  patches = [ ./fix-bash-completion.patch ];
+
+  # save target that grub is compiled for
+  grubTarget = if inPCSystems
+               then "${pcSystems.${stdenv.system}.target}-pc"
+               else "";
+
+  doCheck = false;
+  enableParallelBuilding = true;
 
-  preConfigure = ''
-    autoreconf
+  postInstall = ''
+    paxmark pms $out/sbin/grub-{probe,bios-setup}
   '';
 
-  meta = {
-    homepage = "http://sourceforge.net/projects/trustedgrub/";
-    repositories.git = https://github.com/ts468/TrustedGRUB;
-    description = "Legacy GRUB bootloader extended with TCG support";
-    platforms = stdenv.lib.platforms.linux;
-    maintainers = with stdenv.lib.maintainers; [ tstrobel ];
+  meta = with stdenv.lib; {
+    description = "GRUB 2.0 extended with TCG (TPM) support for integrity measured boot process (trusted boot)";
+    homepage = https://github.com/Sirrix-AG/TrustedGRUB2;
+    license = licenses.gpl3Plus;
+    platforms = platforms.gnu;
   };
-}
+})
diff --git a/pkgs/tools/networking/mailsend/default.nix b/pkgs/tools/networking/mailsend/default.nix
index a2579c559301..363c22c8bb89 100644
--- a/pkgs/tools/networking/mailsend/default.nix
+++ b/pkgs/tools/networking/mailsend/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="mailsend";
-    version="1.17b15";
+    version="1.18";
     name="${baseName}-${version}";
-    hash="0sxjrv9yn2xyjak9si0gw2zalsrfqqcvz0indq9ap5fyalj1pjvk";
-    url="https://github.com/muquit/mailsend/archive/1.17b15.tar.gz";
-    sha256="0sxjrv9yn2xyjak9si0gw2zalsrfqqcvz0indq9ap5fyalj1pjvk";
+    hash="1fjrb6q7y2dxx0qz7r0wlhqfkjqq1vfh7yb7jl77h5qi5kd5rm46";
+    url="https://github.com/muquit/mailsend/archive/1.18.tar.gz";
+    sha256="1fjrb6q7y2dxx0qz7r0wlhqfkjqq1vfh7yb7jl77h5qi5kd5rm46";
   };
   buildInputs = [
     openssl
diff --git a/pkgs/tools/networking/minidlna/config.patch b/pkgs/tools/networking/minidlna/config.patch
deleted file mode 100644
index 74442a756562..000000000000
--- a/pkgs/tools/networking/minidlna/config.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-diff -rc minidlna-1.0.24/genconfig.sh minidlna-1.0.24-new/genconfig.sh
-*** minidlna-1.0.24/genconfig.sh	2012-06-24 20:08:26.697884140 +0200
---- minidlna-1.0.24-new/genconfig.sh	2012-06-24 20:10:44.742874979 +0200
-***************
-*** 38,68 ****
-  
-  ${RM} ${CONFIGFILE}
-  
-- # Detect if there are missing headers
-- # NOTE: This check only works with a normal distro
-- [ ! -e "/usr/include/sqlite3.h" ] && MISSING="libsqlite3 $MISSING"
-- [ ! -e "/usr/include/jpeglib.h" ] && MISSING="libjpeg $MISSING"
-- [ ! -e "/usr/include/libexif/exif-loader.h" ] && MISSING="libexif $MISSING"
-- [ ! -e "/usr/include/id3tag.h" ] && MISSING="libid3tag $MISSING"
-- [ ! -e "/usr/include/ogg/ogg.h" ] && MISSING="libogg $MISSING"
-- [ ! -e "/usr/include/vorbis/codec.h" ] && MISSING="libvorbis $MISSING"
-- [ ! -e "/usr/include/FLAC/metadata.h" ] && MISSING="libflac $MISSING"
-- [ ! -e "/usr/include/ffmpeg/avutil.h" -a \
--   ! -e "/usr/include/libavutil/avutil.h" -a \
--   ! -e "/usr/include/ffmpeg/libavutil/avutil.h" ] && MISSING="libavutil $MISSING"
-- [ ! -e "/usr/include/ffmpeg/avformat.h" -a \
--   ! -e "/usr/include/libavformat/avformat.h" -a \
--   ! -e "/usr/include/ffmpeg/libavformat/avformat.h" ] && MISSING="libavformat $MISSING"
-- [ ! -e "/usr/include/ffmpeg/avcodec.h" -a \
--   ! -e "/usr/include/libavcodec/avcodec.h" -a \
--   ! -e "/usr/include/ffmpeg/libavcodec/avcodec.h" ] && MISSING="libavcodec $MISSING"
-- if [ -n "$MISSING" ]; then
-- 	echo -e "\nERROR!  Cannot continue."
-- 	echo -e "The following required libraries are either missing, or are missing development headers:\n"
-- 	echo -e "$MISSING\n"
-- 	exit 1
-- fi
-- 
-  echo "/* MiniDLNA Project" >> ${CONFIGFILE}
-  echo " * http://sourceforge.net/projects/minidlna/" >> ${CONFIGFILE}
-  echo " * (c) 2008-2009 Justin Maggard" >> ${CONFIGFILE}
---- 38,43 ----
-diff -rc minidlna-1.0.24/Makefile minidlna-1.0.24-new/Makefile
-*** minidlna-1.0.24/Makefile	2012-06-24 20:16:08.673195909 +0200
---- minidlna-1.0.24-new/Makefile	2012-06-24 20:16:18.615267052 +0200
-***************
-*** 64,70 ****
-  	$(INSTALL) -d $(ETCINSTALLDIR)
-  	$(INSTALL) --mode=0644 minidlna.conf $(ETCINSTALLDIR)
-  
-! minidlna:	$(BASEOBJS) $(LNXOBJS) $(LIBS)
-  	@echo Linking $@
-  	@$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(BASEOBJS) $(LNXOBJS) $(LIBS)
-  
---- 64,70 ----
-  	$(INSTALL) -d $(ETCINSTALLDIR)
-  	$(INSTALL) --mode=0644 minidlna.conf $(ETCINSTALLDIR)
-  
-! minidlna:	$(BASEOBJS) $(LNXOBJS) 
-  	@echo Linking $@
-  	@$(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(BASEOBJS) $(LNXOBJS) $(LIBS)
-  
diff --git a/pkgs/tools/networking/minidlna/default.nix b/pkgs/tools/networking/minidlna/default.nix
index 9db42f09d81a..1bf009863936 100644
--- a/pkgs/tools/networking/minidlna/default.nix
+++ b/pkgs/tools/networking/minidlna/default.nix
@@ -1,23 +1,20 @@
-{ stdenv, fetchurl, ffmpeg, flac, libvorbis, libogg, libid3tag, libexif, libjpeg, sqlite }:
+{ stdenv, fetchurl, ffmpeg, flac, libvorbis, libogg, libid3tag, libexif, libjpeg, sqlite, gettext }:
 
-let version = "1.0.25"; in
+let version = "1.1.4"; in
 
 stdenv.mkDerivation rec {
   name = "minidlna-${version}";
 
   src = fetchurl {
-    url = "mirror://sourceforge/project/minidlna/minidlna/${version}/minidlna_${version}_src.tar.gz";
-    sha256 = "0l987x3bx2apnlihnjbhywgk5b2g9ysiapwclz5vphj2w3xn018p";
+    url = "mirror://sourceforge/project/minidlna/minidlna/${version}/minidlna-${version}.tar.gz";
+    sha256 = "9814c04a2c506a0dd942c4218d30c07dedf90dabffbdef2d308a3f9f23545314";
   };
 
-  patches = [ ./config.patch ];
-
   preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${ffmpeg}/include/libavutil -I${ffmpeg}/include/libavcodec -I${ffmpeg}/include/libavformat"
     export makeFlags="INSTALLPREFIX=$out"
   '';
 
-  buildInputs = [ ffmpeg flac libvorbis libogg libid3tag libexif libjpeg sqlite ];
+  buildInputs = [ ffmpeg flac libvorbis libogg libid3tag libexif libjpeg sqlite gettext ];
 
   meta = {
     description = "Media server software";
diff --git a/pkgs/tools/package-management/nox/default.nix b/pkgs/tools/package-management/nox/default.nix
index 32af196c46e8..bbb576400f07 100644
--- a/pkgs/tools/package-management/nox/default.nix
+++ b/pkgs/tools/package-management/nox/default.nix
@@ -10,6 +10,8 @@ pythonPackages.buildPythonPackage rec {
     sha256 = "1s1jhickdhym70qrb5h4qxq1mvkpwgdppqpfb2jnpfaf1az6c207";
   };
 
+  patches = [ ./show-trace.patch ];
+
   buildInputs = [ pythonPackages.pbr ];
 
   pythonPath = with pythonPackages; [
diff --git a/pkgs/tools/package-management/nox/show-trace.patch b/pkgs/tools/package-management/nox/show-trace.patch
new file mode 100644
index 000000000000..6b464d3a4b2c
--- /dev/null
+++ b/pkgs/tools/package-management/nox/show-trace.patch
@@ -0,0 +1,41 @@
+From: Tobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>
+Date: Tue, 2 Jun 2015 13:04:19 +0200
+Subject: [PATCH] Run `nix-env` & `nix-shell` with `--show-trace`
+
+Evaluation is broken often enough that this seems wise.
+Debugging such errors without a backtrace is most unpleasant.
+
+diff -Naur nix-nox-0.0.1/nox/nixpkgs_repo.py nix-nox-0.0.1b/nox/nixpkgs_repo.py
+--- nox/nox/nixpkgs_repo.py	2014-10-26 21:50:33.000000000 +0100
++++ nox/nox/nixpkgs_repo.py	2015-07-03 04:46:08.114975479 +0200
+@@ -75,7 +75,7 @@
+ 
+ def packages(path):
+     """List all nix packages in the repo, as a set"""
+-    output = subprocess.check_output(['nix-env', '-f', path, '-qaP', '--drv-path'],
++    output = subprocess.check_output(['nix-env', '-f', path, '-qaP', '--drv-path', '--show-trace'],
+                                      universal_newlines=True)
+     return set(output.split('\n'))
+ 
+diff -Naur nix-nox-0.0.1/nox/search.py nix-nox-0.0.1b/nox/search.py
+--- nox/nox/search.py	2014-09-20 14:55:33.000000000 +0200
++++ nox/nox/search.py	2015-07-03 04:46:54.264813143 +0200
+@@ -10,7 +10,7 @@
+ 
+ def nix_packages_json():
+     click.echo('Refreshing cache')
+-    output = subprocess.check_output(['nix-env', '-qa', '--json'],
++    output = subprocess.check_output(['nix-env', '-qa', '--json', '--show-trace'],
+                                      universal_newlines=True)
+     return json.loads(output)
+ 
+@@ -70,7 +70,7 @@
+                                         value_proc=parse_input)
+         attributes = [p.attribute for p in packages]
+         if action == 'install':
+-            subprocess.check_call(['nix-env', '-iA'] + attributes)
++            subprocess.check_call(['nix-env', '-iA', '--show-trace'] + attributes)
+         elif action == 'shell':
+             attributes = [a[len('nixpkgs.'):] for a in attributes]
+-            subprocess.check_call(['nix-shell', '-p'] + attributes)
++            subprocess.check_call(['nix-shell', '-p', '--show-trace'] + attributes)
diff --git a/pkgs/tools/security/chaps/default.nix b/pkgs/tools/security/chaps/default.nix
new file mode 100644
index 000000000000..9a2ae0b5114b
--- /dev/null
+++ b/pkgs/tools/security/chaps/default.nix
@@ -0,0 +1,81 @@
+{ stdenv, fetchgit, fetchurl, trousers, leveldb, unzip, scons, pkgconfig
+, glib, dbus_cplusplus, dbus, protobuf, openssl, snappy, pam }:
+
+let
+  src_chromebase = fetchgit {
+    url = "https://chromium.googlesource.com/chromium/src/base.git";
+    rev = "2dfe404711e15e24e79799516400c61b2719d7af";
+    sha256 = "2bd93a3ace4b6767db2c1bd1e16f426c97b8d2133a9cb15f8372b2516cfa65c5";
+  };
+
+  src_gmock = fetchurl {
+    url = "https://googlemock.googlecode.com/files/gmock-1.7.0.zip";
+    sha256 = "0nq98cpnv2jsx2byp4ilam6kydcnziflkc16ikydajmp4mcvpz16";
+  };
+
+  src_platform2 = fetchgit {
+    url = "https://chromium.googlesource.com/chromiumos/platform2";
+    rev = "e999e989eaa71c3db7314fc7b4e20829b2b5473b";
+    sha256 = "bb43ef7918ec6219711cbba3ce91236413738f1341261a1845256b3d6cc9f843";
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "chaps-0.42-6812";
+  version = "0.42-6812";
+
+  src = fetchgit {
+    url = "https://github.com/google/chaps-linux";
+    rev = "989aadc45cdb216ca35b0c97d13fc691576fa1d7";
+    sha256 = "c58e08e89d36050cd831116819d555f0e24e7bf11047cb18f2a2eead45ba67be";
+  };
+
+  patches = [ ./fix_absolute_path.patch  ./fix_environment_variables.patch  ./fix_scons.patch  ./insert_prefetches.patch ];
+
+  postPatch = ''
+    substituteInPlace makefile --replace @@NIXOS_SRC_CHROMEBASE@@ ${src_chromebase}
+    substituteInPlace makefile --replace @@NIXOS_SRC_GMOCK@@ ${src_gmock}
+    substituteInPlace makefile --replace @@NIXOS_SRC_PLATFORM2@@ ${src_platform2}
+    substituteInPlace makefile --replace @@NIXOS_LEVELDB@@ ${leveldb}
+    '';
+
+  nativeBuildInputs = [ unzip scons pkgconfig ];
+
+  buildInputs = [ trousers glib dbus_cplusplus dbus protobuf openssl snappy leveldb pam ];
+
+  buildPhase = ''
+    make build
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp ${name}/out/chapsd $out/bin/.
+    cp ${name}/out/chaps_client $out/bin/.
+
+    mkdir -p $out/lib
+    cp ${name}/out/libchaps.so.* $out/lib/.
+    mkdir -p $out/lib/security
+    cp ${name}/out/pam_chaps.so $out/lib/security/.
+
+    mkdir -p $out/include
+    cp -r ${name}/out/chaps $out/include/.
+
+    mkdir -p $out/etc/dbus-1/system.d
+    cp ${name}/out/org.chromium.Chaps.conf $out/etc/dbus-1/system.d/.
+    mkdir -p $out/etc/dbus-1/system-services
+    cp ${name}/platform2/chaps/org.chromium.Chaps.service $out/etc/dbus-1/system-services/.
+
+    mkdir -p $out/usr/share/pam-configs/chaps
+    mkdir -p $out/usr/share/man/man8
+    cp ${name}/man/* $out/usr/share/man/man8/.
+    '';
+
+  meta = with stdenv.lib; {
+    description = "PKCS #11 implementation based on trusted platform module (TPM)";
+    homepage = "https://www.chromium.org/developers/design-documents/chaps-technical-design";
+    maintainers = [ maintainers.tstrobel ];
+    platforms = platforms.linux;
+    license = licenses.bsd3;
+  };
+}
diff --git a/pkgs/tools/security/chaps/fix_absolute_path.patch b/pkgs/tools/security/chaps/fix_absolute_path.patch
new file mode 100644
index 000000000000..7dbd60c73c42
--- /dev/null
+++ b/pkgs/tools/security/chaps/fix_absolute_path.patch
@@ -0,0 +1,18 @@
+diff --git a/patches/platform2/fix_echo.patch b/patches/platform2/fix_echo.patch
+new file mode 100644
+index 0000000..d2272f6
+--- /dev/null
++++ b/patches/platform2/fix_echo.patch
+@@ -0,0 +1,12 @@
++diff -uNr platform2/common-mk/common.mk platform2-new/common-mk/common.mk
++--- platform2/common-mk/common.mk	2015-07-03 12:07:47.482745292 +0200
+++++ platform2-new/common-mk/common.mk	2015-07-03 12:08:16.868600569 +0200
++@@ -263,7 +263,7 @@
++ $(eval $(call override_var,STRIP,strip))
++ 
++ RMDIR ?= rmdir
++-ECHO = /bin/echo -e
+++ECHO = echo -e
++ 
++ ifeq ($(lastword $(subst /, ,$(CC))),clang)
++ CDRIVER = clang
diff --git a/pkgs/tools/security/chaps/fix_environment_variables.patch b/pkgs/tools/security/chaps/fix_environment_variables.patch
new file mode 100644
index 000000000000..2d7ee0d9a734
--- /dev/null
+++ b/pkgs/tools/security/chaps/fix_environment_variables.patch
@@ -0,0 +1,42 @@
+diff --git a/extrasrc/Makefile b/extrasrc/Makefile
+index fb95845..77125c0 100644
+--- a/extrasrc/Makefile
++++ b/extrasrc/Makefile
+@@ -10,11 +10,11 @@ OUTDIR=$(SRCDIR)/out
+ GMOCK_DIR=$(SRCDIR)/gmock-$(GMOCK_VER)
+ GTEST_DIR=$(GMOCK_DIR)/gtest
+ 
+-INCLUDES="-I$(SRCDIR)/include -I$(SRCDIR)/platform2/libchromeos -isystem $(GTEST_DIR)/include -I$(GMOCK_DIR)/include -I$(SRCDIR)/leveldb/include"
++INCLUDES="-I$(SRCDIR)/include -I$(SRCDIR)/platform2/libchromeos -isystem $(GTEST_DIR)/include -I$(GMOCK_DIR)/include -I$(SRCDIR)/leveldb/include $(NIX_LDFLAG) $(NIX_CFLAGS_COMPILE)"
+ 
+ # To build Chaps, defer to platform2/chaps/Makefile
+ all: libchrome-$(BASE_VER).a libchromeos-$(BASE_VER).a | out
+-	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR) CXXFLAGS=$(INCLUDES) OUT=$(OUTDIR) CHAPS_VERSION_MAJOR=$(CHAPS_VERSION_MAJOR) CHAPS_VERSION_MINOR=$(CHAPS_VERSION_MINOR) $(MAKE)
++	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR):$(PKG_CONFIG_PATH) CXXFLAGS=$(INCLUDES) OUT=$(OUTDIR) CHAPS_VERSION_MAJOR=$(CHAPS_VERSION_MAJOR) CHAPS_VERSION_MINOR=$(CHAPS_VERSION_MINOR) $(MAKE)
+ 
+ # To build required Chromium components, defer to scons file.
+ libchrome-$(BASE_VER).a:
+@@ -38,7 +38,7 @@ out/libgmock.a: out/gmock-all.o
+ 	ar -rv $@ $<
+ 
+ test: out/libgtest.a out/libgmock.a libchrome-$(BASE_VER).a libchromeos-$(BASE_VER).a | out
+-	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR) CXXFLAGS=$(INCLUDES) LDLIBS="-L$(OUTDIR)" OUT=$(OUTDIR) $(MAKE) tests
++	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR):$(PKG_CONFIG_PATH) CXXFLAGS=$(INCLUDES) LDLIBS="-L$(OUTDIR)" OUT=$(OUTDIR) $(MAKE) tests
+ 
+ clean: clean_chaps clean_chromeos clean_chromebase clean_gmock clean_debian
+ clean_gmock:
+@@ -49,7 +49,7 @@ clean_chromebase:
+ clean_chromeos:
+ 	-BASE_VER=$(BASE_VER) scons -f Sconstruct.libchromeos -c
+ clean_chaps:
+-	-cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR) $(MAKE) clean
++	-cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR):$(PKG_CONFIG_PATH) $(MAKE) clean
+ 	rm -rf out
+ clean_debian:
+ 	dh_clean
+@@ -64,4 +64,4 @@ install_man:
+ 	$(INSTALL) -m 0644 -D man/chapsd.8 $(MANDIR)/man8/chapsd.8
+ 	$(INSTALL) -m 0644 -D man/chaps_client.8 $(MANDIR)/man8/chaps_client.8
+ install: install_man
+-	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR) CXXFLAGS=$(INCLUDES) OUT=$(OUTDIR) CHAPS_VERSION_MAJOR=$(CHAPS_VERSION_MAJOR) CHAPS_VERSION_MINOR=$(CHAPS_VERSION_MINOR) $(MAKE) install_files
++	cd platform2/chaps && BASE_VER=$(BASE_VER) LINUX_BUILD=1 PKG_CONFIG_PATH=$(SRCDIR):$(PKG_CONFIG_PATH) CXXFLAGS=$(INCLUDES) OUT=$(OUTDIR) CHAPS_VERSION_MAJOR=$(CHAPS_VERSION_MAJOR) CHAPS_VERSION_MINOR=$(CHAPS_VERSION_MINOR) $(MAKE) install_files
diff --git a/pkgs/tools/security/chaps/fix_scons.patch b/pkgs/tools/security/chaps/fix_scons.patch
new file mode 100644
index 000000000000..54843453c868
--- /dev/null
+++ b/pkgs/tools/security/chaps/fix_scons.patch
@@ -0,0 +1,26 @@
+diff --git a/extrasrc/Sconstruct.libchrome b/extrasrc/Sconstruct.libchrome
+index 4feb76d..311fe8a 100644
+--- a/extrasrc/Sconstruct.libchrome
++++ b/extrasrc/Sconstruct.libchrome
+@@ -103,7 +103,7 @@ base_lib = {
+     'pc_libs' : 'glib-2.0',
+ }
+ 
+-env = Environment()
++env = Environment(ENV = os.environ)
+ 
+ BASE_VER = os.environ.get('BASE_VER', '0')
+ GTEST_DIR = os.environ.get('GTEST_DIR', '0')
+diff --git a/extrasrc/Sconstruct.libchromeos b/extrasrc/Sconstruct.libchromeos
+index 1da6001..66f9acb 100644
+--- a/extrasrc/Sconstruct.libchromeos
++++ b/extrasrc/Sconstruct.libchromeos
+@@ -18,7 +18,7 @@ base_lib = {
+     'pc_libs' : 'dbus-c++-1',
+ }
+ 
+-env = Environment()
++env = Environment(ENV = os.environ)
+ 
+ PKG_CONFIG = os.environ.get('PKG_CONFIG', 'pkg-config')
+ BASE_VER = os.environ.get('BASE_VER', '0')
diff --git a/pkgs/tools/security/chaps/insert_prefetches.patch b/pkgs/tools/security/chaps/insert_prefetches.patch
new file mode 100644
index 000000000000..8b8449a6e661
--- /dev/null
+++ b/pkgs/tools/security/chaps/insert_prefetches.patch
@@ -0,0 +1,51 @@
+diff --git a/makefile b/makefile
+index b6865f3..c14f5ec 100644
+--- a/makefile
++++ b/makefile
+@@ -53,8 +53,8 @@ $(SRCDIR)/include/trousers/scoped_tss_type.h: extrasrc/scoped_tss_type.h | $(SRC
+ 	cp $< $@
+ # Chromium includes <leveldb/memenv.h>.  This requires an install of libleveldb-dev that has
+ # memenv support included; move this into a local leveldb/ subdirectory
+-$(SRCDIR)/include/leveldb/memenv.h: /usr/include/leveldb/helpers/memenv.h | $(SRCDIR)/include/leveldb
+-	cp $< $@
++$(SRCDIR)/include/leveldb/memenv.h: $(SRCDIR)/include/leveldb
++	cp @@NIXOS_LEVELDB@@/include/leveldb/helpers/memenv.h $@
+ # Chromium includes <include/testing/gtest/include/gtest/gtest_prod.h>, so have a local copy.
+ $(SRCDIR)/include/testing/gtest/include/gtest/gtest_prod.h: extrasrc/gtest_prod.h | $(SRCDIR)/include/testing/gtest/include/gtest
+ 	cp $< $@
+@@ -80,7 +80,7 @@ GMOCK_DIR=$(SRCDIR)/gmock-$(GMOCK_VERSION)
+ GTEST_DIR=$(GMOCK_DIR)/gtest
+ src_gmock: $(GMOCK_DIR)/LICENSE
+ $(GMOCK_DIR)/LICENSE: | $(SRCDIR)
+-	cd $(SRCDIR) && wget $(GMOCK_URL)
++	cd $(SRCDIR) && cp @@NIXOS_SRC_GMOCK@@ gmock-$(GMOCK_VERSION).zip && chmod +w gmock-$(GMOCK_VERSION).zip
+ 	cd $(SRCDIR) && unzip -q gmock-$(GMOCK_VERSION).zip
+ 	rm $(SRCDIR)/gmock-$(GMOCK_VERSION).zip
+ 	touch $@
+@@ -107,8 +107,7 @@ src_chromebase: $(SRCDIR)/base/base64.h
+ $(SRCDIR)/base: | $(SRCDIR)
+ 	mkdir -p $@
+ $(SRCDIR)/base/base64.h: | $(SRCDIR)/base
+-	git clone $(CHROMEBASE_GIT) $(SRCDIR)/base
+-	cd $(SRCDIR)/base && git checkout $(CHROMEBASE_COMMIT)
++	cp -r @@NIXOS_SRC_CHROMEBASE@@/. $(SRCDIR)/base && chmod -R +w $(SRCDIR)/base
+ 
+ # We need two subdirectories from the platform2 repository from ChromiumOS:
+ #   - chaps/ for the Chaps source code
+@@ -119,14 +118,8 @@ $(SRCDIR)/platform2:
+ PLATFORM2_GIT=https://chromium.googlesource.com/chromiumos/platform2
+ PATCHES=$(wildcard $(CURDIR)/patches/platform2/*.patch)
+ $(SRCDIR)/platform2/chaps/Makefile: | $(SRCDIR)/platform2
+-	cd $(SRCDIR)/platform2 && git init . && git remote add -f origin $(PLATFORM2_GIT)
+-	cd $(SRCDIR)/platform2 && git config core.sparsecheckout true
+-	cd $(SRCDIR)/platform2 && echo "chaps" > .git/info/sparse-checkout
+-	cd $(SRCDIR)/platform2 && echo "libchromeos/chromeos" >> .git/info/sparse-checkout
+-	cd $(SRCDIR)/platform2 && echo "common-mk/common.mk" >> .git/info/sparse-checkout
+-	cd $(SRCDIR)/platform2 && git pull origin master
+-	cd $(SRCDIR)/platform2 && git checkout $(CROS_BRANCH)
+-	cd $(SRCDIR)/platform2 && if [ ! -z "$(PATCHES)" ]; then git am $(PATCHES); fi
++	cd $(SRCDIR)/platform2 && cp -r @@NIXOS_SRC_PLATFORM2@@/. . && chmod -R +w $(SRCDIR)/platform2
++	cd $(SRCDIR)/platform2 && if [ ! -z "$(PATCHES)" ]; then patch -p1 < $(PATCHES); fi
+ 
+ 
+ # Copy man pages
diff --git a/pkgs/tools/security/tpm-luks/default.nix b/pkgs/tools/security/tpm-luks/default.nix
new file mode 100644
index 000000000000..eda86a4a97ff
--- /dev/null
+++ b/pkgs/tools/security/tpm-luks/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchgit, autoreconfHook, gawk, trousers, cryptsetup, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "tpm-luks-${version}";
+  version = "0.9pre";
+
+  src = fetchgit {
+    url = "https://github.com/shpedoikal/tpm-luks/";
+    rev = "3fa3ea4bbd34b5b02e9271e775a338fa49dc834f";
+    sha256 = "37a56f05ad492d3128b07b3cb9dbf85ba8a0dd791329323fb398eb1026dfc89c";
+  };
+
+  buildInputs = [ autoreconfHook gawk trousers cryptsetup openssl ];
+
+  installPhase = ''
+    mkdir -p $out
+    make install DESTDIR=$out
+    mv $out/$out/sbin $out/bin
+    rm -r $out/nix
+    '';
+
+  meta = with stdenv.lib; {
+    description = "LUKS key storage in TPM NVRAM";
+    homepage    = https://github.com/shpedoikal/tpm-luks/;
+    maintainers = [ maintainers.tstrobel ];
+    platforms   = platforms.linux;
+  };
+}
+
diff --git a/pkgs/tools/system/stress-ng/default.nix b/pkgs/tools/system/stress-ng/default.nix
index 74410426010e..4093eb7879d4 100644
--- a/pkgs/tools/system/stress-ng/default.nix
+++ b/pkgs/tools/system/stress-ng/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, attr }:
 
-let version = "0.04.07"; in
+let version = "0.04.10"; in
 stdenv.mkDerivation rec {
   name = "stress-ng-${version}";
 
   src = fetchurl {
-    sha256 = "0yzh0lkjll4qwhgjlrji9n9qps4nmh10240nsyqkgr4yv3my9fi0";
+    sha256 = "1y0jmcgwn8np22r3ajg7giai8dvfg0r5ddpgbiqs48cx2gz7iyhf";
     url = "http://kernel.ubuntu.com/~cking/tarballs/stress-ng/${name}.tar.gz";
   };
 
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 1a3d47d4595a..4f4cc1e442dc 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1170,15 +1170,23 @@ let
 
   cron = callPackage ../tools/system/cron { };
 
-  cudatoolkit5 = callPackage ../development/compilers/cudatoolkit/5.5.nix {
+  cudatoolkit5 = import ../development/compilers/cudatoolkit/5.5.nix {
+    inherit callPackage;
     python = python26;
   };
 
-  cudatoolkit6 = callPackage ../development/compilers/cudatoolkit/6.0.nix {
+  cudatoolkit6 = import ../development/compilers/cudatoolkit/6.0.nix {
+    inherit callPackage;
     python = python26;
   };
 
-  cudatoolkit65 = callPackage ../development/compilers/cudatoolkit/6.5.nix {
+  cudatoolkit65 = import ../development/compilers/cudatoolkit/6.5.nix {
+    inherit callPackage;
+    python = python26;
+  };
+
+  cudatoolkit7 = import ../development/compilers/cudatoolkit/7.0.nix {
+    inherit callPackage;
     python = python26;
   };
 
@@ -1702,10 +1710,7 @@ let
     automake = automake112x; # fails with 13 and 14
   };
 
-  trustedGrub = callPackage_i686 ../tools/misc/grub/trusted.nix {
-    buggyBiosCDSupport = config.grub.buggyBiosCDSupport or true;
-    automake = automake112x; # fails with 13 and 14
-  };
+  trustedGrub = callPackage_i686 ../tools/misc/grub/trusted.nix { };
 
   grub2 = grub2_full;
 
@@ -1971,9 +1976,7 @@ let
 
   makebootfat = callPackage ../tools/misc/makebootfat { };
 
-  minidlna = callPackage ../tools/networking/minidlna {
-    ffmpeg = ffmpeg_0;
-  };
+  minidlna = callPackage ../tools/networking/minidlna { };
 
   mmv = callPackage ../tools/misc/mmv { };
 
@@ -3108,6 +3111,10 @@ let
 
   tpm-tools = callPackage ../tools/security/tpm-tools { };
 
+  tpm-luks = callPackage ../tools/security/tpm-luks { };
+
+  chaps = callPackage ../tools/security/chaps { };
+
   trace-cmd = callPackage ../os-specific/linux/trace-cmd { };
 
   traceroute = callPackage ../tools/networking/traceroute { };
@@ -3322,6 +3329,8 @@ let
 
   xsettingsd = callPackage ../tools/X11/xsettingsd { };
 
+  xsensors = callPackage ../os-specific/linux/xsensors { };
+
   xcruiser = callPackage ../applications/misc/xcruiser { };
 
   unarj = callPackage ../tools/archivers/unarj { };
@@ -4504,6 +4513,10 @@ let
 
     pycaml = callPackage ../development/ocaml-modules/pycaml { };
 
+    qcheck = callPackage ../development/ocaml-modules/qcheck {
+      oasis = ocaml_oasis;
+    };
+
     qtest = callPackage ../development/ocaml-modules/qtest {
       oasis = ocaml_oasis;
     };
@@ -5369,6 +5382,8 @@ let
 
   docutils = pythonPackages.docutils;
 
+  dot2tex = pythonPackages.dot2tex;
+
   doxygen = callPackage ../development/tools/documentation/doxygen {
     qt4 = null;
   };
@@ -6023,10 +6038,10 @@ let
 
   fcgi = callPackage ../development/libraries/fcgi { };
 
-  ffmpeg_0_10 = callPackage ../development/libraries/ffmpeg/0.10.nix { };
-  ffmpeg_1_2 = callPackage ../development/libraries/ffmpeg/1.2.nix { };
-  ffmpeg_2_2 = callPackage ../development/libraries/ffmpeg/2.2.nix { };
-  ffmpeg_2_6 = callPackage ../development/libraries/ffmpeg/2.6.nix { };
+  ffmpeg_0_10 = import ../development/libraries/ffmpeg/0.10.nix { inherit callPackage; };
+  ffmpeg_1_2 = import ../development/libraries/ffmpeg/1.2.nix { inherit callPackage; };
+  ffmpeg_2_2 = import ../development/libraries/ffmpeg/2.2.nix { inherit callPackage; };
+  ffmpeg_2_6 = import ../development/libraries/ffmpeg/2.6.nix { inherit callPackage; };
   # Aliases
   ffmpeg_0 = ffmpeg_0_10;
   ffmpeg_1 = ffmpeg_1_2;
@@ -6569,6 +6584,8 @@ let
 
   leveldb = callPackage ../development/libraries/leveldb { };
 
+  lmdb = callPackage ../development/libraries/lmdb { };
+
   levmar = callPackage ../development/libraries/levmar { };
 
   leptonica = callPackage ../development/libraries/leptonica {
@@ -12392,11 +12409,13 @@ let
   };
 
   # urxvt plugins
+  urxvt_perl = callPackage ../applications/misc/rxvt_unicode-plugins/urxvt-perl { };
   urxvt_perls = callPackage ../applications/misc/rxvt_unicode-plugins/urxvt-perls { };
   urxvt_tabbedex = callPackage ../applications/misc/rxvt_unicode-plugins/urxvt-tabbedex { };
+  urxvt_font_size = callPackage ../applications/misc/rxvt_unicode-plugins/urxvt-font-size { };
 
   rxvt_unicode-with-plugins = callPackage ../applications/misc/rxvt_unicode/wrapper.nix {
-    plugins = [ urxvt_perls urxvt_tabbedex ];
+    plugins = [ urxvt_perl urxvt_perls urxvt_tabbedex urxvt_font_size ];
   };
 
   # FIXME: remove somewhere in future
@@ -13136,8 +13155,15 @@ let
 
   xen_4_4_1 = callPackage ../applications/virtualization/xen/4.4.1.nix { };
   xen_4_5_0 = callPackage ../applications/virtualization/xen/4.5.0.nix { };
+  xen_4_5_1 = callPackage ../applications/virtualization/xen/4.5.1.nix { };
   xen_xenServer = callPackage ../applications/virtualization/xen/4.5.0.nix { xenserverPatched = true; };
-  xen = xen_4_5_0;
+  xen = xen_4_5_1;
+
+  win-spice = callPackage ../applications/virtualization/driver/win-spice { };
+  win-virtio = callPackage ../applications/virtualization/driver/win-virtio { };
+  win-qemu = callPackage ../applications/virtualization/driver/win-qemu { };
+  win-pvdrivers = callPackage ../applications/virtualization/driver/win-pvdrivers { };
+  win-signed-gplpv-drivers = callPackage ../applications/virtualization/driver/win-signed-gplpv-drivers { };
 
   xfe = callPackage ../applications/misc/xfe {
     fox = fox_1_6;
@@ -13532,10 +13558,7 @@ let
 
   sdlmame = callPackage ../games/sdlmame { };
 
-  sgtpuzzles = builderDefsPackage (import ../games/sgt-puzzles) {
-    inherit pkgconfig fetchsvn perl gtk;
-    inherit (xlibs) libX11;
-  };
+  sgtpuzzles = callPackage (import ../games/sgt-puzzles) { };
 
   simutrans = callPackage ../games/simutrans { };
   # get binaries without data built by Hydra
@@ -13948,6 +13971,8 @@ let
 
   orion = callPackage ../misc/themes/orion {};
 
+  albatross = callPackage ../misc/themes/albatross { };
+
   oxygen-gtk2 = callPackage ../misc/themes/gtk2/oxygen-gtk { };
 
   oxygen-gtk3 = callPackage ../misc/themes/gtk3/oxygen-gtk3 { };
@@ -14866,6 +14891,8 @@ let
 
   xboxdrv = callPackage ../misc/drivers/xboxdrv { };
 
+  xhyve = callPackage ../applications/virtualization/xhyve { };
+
   xinput_calibrator = callPackage ../tools/X11/xinput_calibrator {
     inherit (xlibs) libXi inputproto;
   };
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 6b37718afeae..8ffa3ce8ebf9 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -34,6 +34,9 @@ rec {
     ghc7101 = callPackage ../development/compilers/ghc/7.10.1.nix ({ ghc = compiler.ghc784; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
       libiconv = pkgs.darwin.libiconv;
     });
+    ghc7102 = callPackage ../development/compilers/ghc/7.10.2.nix ({ ghc = compiler.ghc784; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
+      libiconv = pkgs.darwin.libiconv;
+    });
     ghcHEAD = callPackage ../development/compilers/ghc/head.nix ({ inherit (packages.ghc784) ghc alex happy; } // stdenv.lib.optionalAttrs stdenv.isDarwin {
       libiconv = pkgs.darwin.libiconv;
     });
@@ -84,6 +87,10 @@ rec {
       ghc = compiler.ghc7101;
       packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { };
     };
+    ghc7102 = callPackage ../development/haskell-modules {
+      ghc = compiler.ghc7102;
+      packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-7.10.x.nix { };
+    };
     ghcHEAD = callPackage ../development/haskell-modules {
       ghc = compiler.ghcHEAD;
       packageSetConfig = callPackage ../development/haskell-modules/configuration-ghc-head.nix { };
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 95ac67eca822..005f9e962105 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -633,6 +633,27 @@ let
     };
   };
 
+  atomiclong = buildPythonPackage rec {
+    version = "0.1.1";
+    name = "atomiclong-${version}";
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/a/atomiclong/atomiclong-${version}.tar.gz";
+      sha256 = "1gjbc9lvpkgg8vj7dspif1gz9aq4flkhxia16qj6yvb7rp27h4yb";
+    };
+
+    buildInputs = with self; [ pytest ];
+    propagatedBuildInputs = with self; [ cffi ];
+
+    meta = {
+      description = "Long data type with atomic operations using CFFI";
+      homepage = https://github.com/dreid/atomiclong;
+      license = licenses.mit;
+      maintainers = with maintainers; [ robbinch ];
+    };
+
+  };
+
   atomicwrites = buildPythonPackage rec {
     version = "0.1.0";
     name = "atomicwrites-${version}";
@@ -2159,6 +2180,22 @@ let
       platforms = platforms.all;
     };
   };
+  
+  cytoolz = buildPythonPackage rec {
+    name = "cytoolz-${version}";
+    version = "0.7.3";
+    
+    src = pkgs.fetchurl{
+      url = "https://pypi.python.org/packages/source/c/cytoolz/cytoolz-${version}.tar.gz";
+      md5 = "e9f0441d9f340a23c60357f68f25d163";
+    };
+    
+    meta = {
+      homepage = "http://github.com/pytoolz/cytoolz/";
+      description = "Cython implementation of Toolz: High performance functional utilities";
+      license = "licenses.bsd3";   
+    };
+  };
 
   cryptacular = buildPythonPackage rec {
     name = "cryptacular-1.4.1";
@@ -4130,11 +4167,11 @@ let
   radicale = buildPythonPackage rec {
     name = "radicale-${version}";
     namePrefix = "";
-    version = "0.9";
+    version = "0.10";
 
     src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/R/Radicale/Radicale-${version}.tar.gz";
-      sha256 = "77bf813fd26f0d359c1a7b7bcce9b842b4503c5516989a4a0a4f648e299e41f7";
+      sha256 = "0r1x23h9raadpdmxnanvhajvkk0ix377mv94jlazr18nfpsj4r8c";
     };
 
     propagatedBuildInputs = with self; [
@@ -4146,7 +4183,7 @@ let
     doCheck = false;
 
     meta = {
-      homepage = "http://www.radicale.org/";
+      homepage = http://www.radicale.org/;
       description = "CalDAV CardDAV server";
       longDescription = ''
         The Radicale Project is a complete CalDAV (calendar) and CardDAV
@@ -4156,7 +4193,7 @@ let
         on mobile phones or computers.
       '';
       license = licenses.gpl3Plus;
-      maintainers = with maintainers; [ edwtjo ];
+      maintainers = with maintainers; [ edwtjo pSub ];
     };
   };
 
@@ -6660,12 +6697,12 @@ let
   };
 
   klaus = buildPythonPackage rec {
-    version = "0.4.9";
+    version = "0.4.10";
     name = "klaus-${version}";
 
     src = pkgs.fetchurl {
       url = "https://github.com/jonashaag/klaus/archive/${version}.tar.gz";
-      sha256 = "0qcbv3shz530mn53pdc68fx38ylz72033xsrz77ffi0cks32az2w";
+      sha256 = "1yq1dz3cd2qdn8vi1ivf6biab76cfmcvis07d6a8039w5wxdzc80";
     };
 
     propagatedBuildInputs = with self;
@@ -7664,19 +7701,25 @@ let
 
 
   namebench = buildPythonPackage (rec {
-    name = "namebench-1.0.5";
-    disabled = isPy3k;
+    name = "namebench-1.3.1";
+    disabled = isPy3k || isPyPy;
 
     src = pkgs.fetchurl {
-      url = "http://namebench.googlecode.com/files/${name}.tgz";
-      sha256 = "6cbde35ce94d1f31e7d48f5d8eec13238b4dbc505675a33f1e183e600c1482c3";
+      url = "http://namebench.googlecode.com/files/${name}-source.tgz";
+      sha256 = "09clbcd6wxgk4r6qw7hb78h818mvca7lijigy1mlq5y1f3lgkk1h";
     };
 
-    # No support of GUI yet.
-
     # error: invalid command 'test'
     doCheck = false;
 
+    propagatedBuildInputs = [ self.tkinter ];
+
+    # namebench expects to be run from its own source tree (it uses relative
+    # paths to various resources), make it work.
+    postInstall = ''
+      sed -i "s|import os|import os; os.chdir(\"$out/namebench\")|" "$out/bin/namebench.py"
+    '';
+
     meta = {
       homepage = http://namebench.googlecode.com/;
       description = "Find fastest DNS servers available";
@@ -8495,7 +8538,24 @@ let
     };
   };
 
-
+  patsy = buildPythonPackage rec {
+    name = "patsy-${version}";
+    version = "0.3.0";
+    
+    src = pkgs.fetchurl{
+      url = "https://pypi.python.org/packages/source/p/patsy/${name}.zip";
+      md5 = "7545518b413136ba8343dcebea07e5e2";
+    };
+    
+    propagatedBuildInputs = with self; [six numpy];
+    
+    meta = {
+      description = "A Python package for describing statistical models";
+      homepage = "https://github.com/pydata/patsy";
+      license = licenses.bsd2;
+    };
+  };
+  
   paste = buildPythonPackage rec {
     name = "paste-1.7.5.1";
     disabled = isPy3k;
@@ -9075,10 +9135,10 @@ let
 
   prompt_toolkit = buildPythonPackage rec {
     name = "prompt_toolkit-${version}";
-    version = "0.41";
+    version = "0.42";
 
     src = pkgs.fetchurl {
-      sha256 = "0s8zsa06vbs8n959ri2cc2fk5dkxjfr0zabqzjvx7klasxwzmsra";
+      sha256 = "04nywwyxzkl3qgah29i959irsbqi8viiadxfkxycqh7hq2yq8h86";
       url = "https://pypi.python.org/packages/source/p/prompt_toolkit/${name}.tar.gz";
     };
 
@@ -10733,16 +10793,18 @@ let
 
 
   pytz = buildPythonPackage rec {
-    name = "pytz-2013.9";
+    name = "pytz-${version}";
+    version = "2015.4";
 
     src = pkgs.fetchurl {
       url = "http://pypi.python.org/packages/source/p/pytz/${name}.tar.bz2";
-      md5 = "ec7076947a46a8a3cb33cbf2983a562c";
+      md5 = "39f7375c4b1fa34cdcb4b4765d08f817";
     };
 
     meta = {
       description = "World timezone definitions, modern and historical";
-      homepage = http://pytz.sourceforge.net/;
+      homepage = "http://pythonhosted.org/pytz";
+      license = licenses.mit;
     };
   };
 
@@ -12997,6 +13059,22 @@ let
     };
   };
 
+  toolz = buildPythonPackage rec{
+    name = "toolz-${version}";
+    version = "0.7.2";
+    
+    src = pkgs.fetchurl{
+      url = "https://pypi.python.org/packages/source/t/toolz/toolz-${version}.tar.gz";
+      md5 = "6f045541a9e7ee755b7b00fced4a7fde";
+    };
+    
+    meta = {
+      homepage = "http://github.com/pytoolz/toolz/";
+      description = "List processing tools and functional utilities";
+      license = "licenses.bsd3";   
+    };
+  };
+  
   tox = buildPythonPackage rec {
     name = "tox-1.8.1";
 
@@ -16225,5 +16303,24 @@ let
     };
   };
 
+  dot2tex = buildPythonPackage rec {
+    name = "dot2tex-2.9.0";
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/d/dot2tex/dot2tex-2.9.0.tar.gz";
+      md5 = "2dbaeac905424d0410751235bde4b8b2";
+    };
+
+    propagatedBuildInputs = with self; [
+      pyparsing
+    ];
+
+    meta = {
+      description = "Convert graphs generated by Graphviz to LaTeX friendly formats";
+      homepage = "https://github.com/kjellmf/dot2tex";
+      license = licenses.mit;
+    };
+  };
+
 
 }; in pythonPackages