summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/editors/emacs-24/default.nix2
-rw-r--r--pkgs/applications/editors/sublime/default.nix14
-rw-r--r--pkgs/applications/misc/abook/default.nix21
-rw-r--r--pkgs/applications/misc/calibre/default.nix5
-rw-r--r--pkgs/applications/misc/mupdf/default.nix17
-rw-r--r--pkgs/applications/misc/vanitygen/default.nix1
-rw-r--r--pkgs/applications/networking/browsers/chromium/sources.nix18
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix6
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix2
-rw-r--r--pkgs/applications/networking/sniffers/kismet/default.nix25
-rw-r--r--pkgs/applications/office/ledger/3.0.nix21
-rw-r--r--pkgs/applications/office/libreoffice/default.nix157
-rwxr-xr-x[-rw-r--r--]pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh2
-rw-r--r--pkgs/applications/office/libreoffice/libreoffice-srcs.nix348
-rw-r--r--pkgs/applications/science/logic/coq/default.nix1
-rw-r--r--pkgs/applications/science/math/maxima/default.nix6
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-annex/default.nix4
-rw-r--r--pkgs/applications/version-management/meld/default.nix3
-rw-r--r--pkgs/applications/window-managers/xmonad/xmonad-extras.nix4
-rw-r--r--pkgs/development/compilers/go/1.1.nix11
-rw-r--r--pkgs/development/compilers/urweb/default.nix4
-rw-r--r--pkgs/development/interpreters/ruby/generated.nix303
-rw-r--r--pkgs/development/interpreters/ruby/patches.nix8
-rw-r--r--pkgs/development/libraries/aspell/dictionaries.nix36
-rw-r--r--pkgs/development/libraries/cogl/default.nix33
-rw-r--r--pkgs/development/libraries/gsoap/default.nix33
-rw-r--r--pkgs/development/libraries/haskell/Cabal/1.18.0.nix26
-rw-r--r--pkgs/development/libraries/haskell/Chart-cairo/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/Chart-gtk/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/Chart/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/HsOpenSSL/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/Strafunski-StrategyLib/default.nix13
-rw-r--r--pkgs/development/libraries/haskell/accelerate-cuda/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/aeson/default.nix6
-rw-r--r--pkgs/development/libraries/haskell/bindings-DSL/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/case-insensitive/1.1.nix17
-rw-r--r--pkgs/development/libraries/haskell/cipher-aes/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/cipher-blowfish/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/cipher-camellia/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/cipher-des/default.nix20
-rw-r--r--pkgs/development/libraries/haskell/clientsession/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/cmdtheline/default.nix19
-rw-r--r--pkgs/development/libraries/haskell/cprng-aes/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/crypto-numbers/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/crypto-pubkey/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/crypto-random/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/cryptocipher/default.nix18
-rw-r--r--pkgs/development/libraries/haskell/cryptohash/default.nix10
-rw-r--r--pkgs/development/libraries/haskell/final/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/ghc-mod/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/github/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/groups/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/hakyll/default.nix3
-rw-r--r--pkgs/development/libraries/haskell/hint/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hoogle/default.nix5
-rw-r--r--pkgs/development/libraries/haskell/hsemail/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hspec-expectations/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hspec-meta/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/hspec/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/http-conduit/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/http-reverse-proxy/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/http-types/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/linear/default.nix21
-rw-r--r--pkgs/development/libraries/haskell/miniutter/default.nix9
-rw-r--r--pkgs/development/libraries/haskell/mmap/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/mongoDB/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/monoid-extras/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/multiarg/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/network-conduit-tls/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/network-multicast/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/operational/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/postgresql-libpq/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/rosezipper/default.nix12
-rw-r--r--pkgs/development/libraries/haskell/skein/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/snap/core.nix4
-rw-r--r--pkgs/development/libraries/haskell/snap/server.nix4
-rw-r--r--pkgs/development/libraries/haskell/syz/default.nix14
-rw-r--r--pkgs/development/libraries/haskell/tasty/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/test-framework-th-prime/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/thyme/default.nix22
-rw-r--r--pkgs/development/libraries/haskell/tls-extra/default.nix9
-rw-r--r--pkgs/development/libraries/haskell/tls/default.nix11
-rw-r--r--pkgs/development/libraries/haskell/uuid/default.nix8
-rw-r--r--pkgs/development/libraries/haskell/vault/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/wai-app-static/default.nix16
-rw-r--r--pkgs/development/libraries/haskell/wai-extra/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/wai/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/warp-tls/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/warp/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/xmlhtml/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/yesod-static/default.nix10
-rw-r--r--pkgs/development/libraries/icu/default.nix1
-rw-r--r--pkgs/development/libraries/kerberos/krb5.nix6
-rw-r--r--pkgs/development/libraries/libctemplate/default.nix4
-rw-r--r--pkgs/development/libraries/libusb1/default.nix11
-rw-r--r--pkgs/development/libraries/libvisio/default.nix4
-rw-r--r--pkgs/development/libraries/libwpd/default.nix8
-rw-r--r--pkgs/development/libraries/libwpg/default.nix4
-rw-r--r--pkgs/development/libraries/mdds/default.nix7
-rw-r--r--pkgs/development/libraries/unixODBC/default.nix8
-rw-r--r--pkgs/development/perl-modules/net-amazon-s3-credentials-provider.patch291
-rw-r--r--pkgs/development/ruby-modules/fake-s3-list-bucket.patch30
-rw-r--r--pkgs/development/ruby-modules/rake/default.nix22
-rw-r--r--pkgs/development/tools/haskell/HaRe/default.nix23
-rw-r--r--pkgs/development/tools/haskell/hslogger/default.nix4
-rw-r--r--pkgs/development/tools/haskell/timeplot/default.nix13
-rw-r--r--pkgs/development/tools/haskell/uuagc/cabal.nix4
-rw-r--r--pkgs/development/tools/haskell/uuagc/default.nix4
-rw-r--r--pkgs/development/tools/misc/lttng-tools/default.nix4
-rw-r--r--pkgs/development/tools/misc/lttng-ust/default.nix4
-rw-r--r--pkgs/development/tools/misc/uncrustify/default.nix18
-rw-r--r--pkgs/development/web/nodejs/build-node-package.nix2
-rw-r--r--pkgs/games/vessel/default.nix1
-rw-r--r--pkgs/lib/maintainers.nix1
-rw-r--r--pkgs/lib/modules.nix14
-rw-r--r--pkgs/misc/emulators/vice/default.nix6
-rw-r--r--pkgs/os-specific/linux/bluez/bluez5.nix34
-rw-r--r--pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix5
-rw-r--r--pkgs/os-specific/linux/kernel/common-config.nix8
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.10.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.11.nix17
-rw-r--r--pkgs/os-specific/linux/kernel/linux-3.4.nix4
-rw-r--r--pkgs/os-specific/linux/lm-sensors/default.nix6
-rw-r--r--pkgs/os-specific/linux/lttng-modules/default.nix4
-rw-r--r--pkgs/os-specific/linux/microcode/amd.nix17
-rw-r--r--pkgs/os-specific/linux/microcode/intel.nix17
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/default.nix1
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/nvidia-drivers-linux-3.11-incremental.patch25
-rw-r--r--pkgs/servers/firebird/default.nix49
-rw-r--r--pkgs/servers/samba/default.nix5
-rw-r--r--pkgs/servers/search/elasticsearch/default.nix19
-rw-r--r--pkgs/servers/search/elasticsearch/es-home.patch49
-rw-r--r--pkgs/shells/zsh/default.nix6
-rw-r--r--pkgs/tools/backup/bacula/default.nix18
-rw-r--r--pkgs/tools/backup/store-backup/default.nix109
-rw-r--r--pkgs/tools/bluetooth/obexftp/default.nix10
-rw-r--r--pkgs/tools/bluetooth/openobex/default.nix14
-rw-r--r--pkgs/tools/filesystems/fuse-exfat/default.nix29
-rw-r--r--pkgs/tools/graphics/jbig2enc/default.nix6
-rw-r--r--pkgs/tools/misc/heimdall/default.nix10
-rw-r--r--pkgs/tools/misc/stow/default.nix34
-rw-r--r--pkgs/tools/package-management/cabal-install/1.18.0.nix30
-rw-r--r--pkgs/tools/package-management/nix/unstable.nix6
-rw-r--r--pkgs/tools/security/scrypt/default.nix20
-rw-r--r--pkgs/tools/system/collectd/default.nix17
-rw-r--r--pkgs/tools/system/smartmontools/default.nix5
-rw-r--r--pkgs/tools/system/vboot_reference/default.nix18
-rw-r--r--pkgs/tools/text/source-highlight/default.nix4
-rw-r--r--pkgs/tools/text/unoconv/default.nix41
-rw-r--r--pkgs/tools/text/unoconv/unoconv-python3.patch374
-rw-r--r--pkgs/tools/text/xml/basex/basex.svg81
-rw-r--r--pkgs/tools/text/xml/basex/default.nix73
-rw-r--r--pkgs/tools/typesetting/tex/tetex/default.nix43
-rw-r--r--pkgs/tools/typesetting/tex/texlive/aggregate.nix15
-rw-r--r--pkgs/tools/typesetting/tex/texlive/default.nix72
-rw-r--r--pkgs/top-level/all-packages.nix67
-rw-r--r--pkgs/top-level/haskell-packages.nix52
-rw-r--r--pkgs/top-level/node-packages-generated.nix2253
-rw-r--r--pkgs/top-level/node-packages.json19
-rw-r--r--pkgs/top-level/node-packages.nix2
-rw-r--r--pkgs/top-level/perl-packages.nix1280
162 files changed, 5636 insertions, 1529 deletions
diff --git a/pkgs/applications/editors/emacs-24/default.nix b/pkgs/applications/editors/emacs-24/default.nix
index fbb7d7a4b160..bdb7c2a565a7 100644
--- a/pkgs/applications/editors/emacs-24/default.nix
+++ b/pkgs/applications/editors/emacs-24/default.nix
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
     (if withX then 
       [ "--with-x-toolkit=gtk" "--with-xft"]
     else
-      [ "--with-x-toolkit=no" ])
+      [ "--with-x=no --with-xpm=no --with-jpeg=no --with-png=no --with-gif=no --with-tiff=no" ])
     # On NixOS, help Emacs find `crt*.o'.
     ++ stdenv.lib.optional (stdenv ? glibc)
          [ "--with-crt-dir=${stdenv.glibc}/lib" ];
diff --git a/pkgs/applications/editors/sublime/default.nix b/pkgs/applications/editors/sublime/default.nix
index 22fc42c6c59f..6aa0b34314ac 100644
--- a/pkgs/applications/editors/sublime/default.nix
+++ b/pkgs/applications/editors/sublime/default.nix
@@ -5,19 +5,19 @@ in
 assert stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux";
 
 stdenv.mkDerivation rec {
-  name = "sublimetext-2.0.1";
+  name = "sublimetext-2.0.2";
   src = 
     if stdenv.system == "i686-linux" then
       fetchurl {
-        name = "sublimetext-2.0.1.tar.bz2";
-        url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1.tar.bz2;
-        sha256 = "1x6vmlfn5mdbf23nyfr7dhhi6y60lnpcmqj59svl3bzvayijsxaf";
+        name = "sublimetext-2.0.2.tar.bz2";
+        url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2.tar.bz2;
+        sha256 = "026g5mppk28lzzzn9ibykcqkrd5msfmg0sc0z8w8jd7v3h28wcq7";
       }
     else
       fetchurl {
-        name = "sublimetext-2.0.1.tar.bz2";
-        url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.1%20x64.tar.bz2;
-        sha256 = "0174dnp9zika5as25mcls5y0qzhh8mnc5ajxsxz7qjrk4lrzk3c5";
+        name = "sublimetext-2.0.2.tar.bz2";
+        url = http://c758482.r82.cf2.rackcdn.com/Sublime%20Text%202.0.2%20x64.tar.bz2;
+        sha256 = "115b71nbv9mv8cz6bkjwpbdf2ywnjc1zy2d3080f6ck4sqqfvfh1";
       };
   buildCommand = ''
     tar xvf ${src}
diff --git a/pkgs/applications/misc/abook/default.nix b/pkgs/applications/misc/abook/default.nix
new file mode 100644
index 000000000000..09345576487e
--- /dev/null
+++ b/pkgs/applications/misc/abook/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, pkgconfig, ncurses, readline }:
+
+let version = "0.6.0pre2"; in
+stdenv.mkDerivation rec {
+  name = "abook-${version}";
+
+  src = fetchurl {
+    url = "http://abook.sourceforge.net/devel/${name}.tar.gz";
+    sha256 = "59d444504109dd96816e003b3023175981ae179af479349c34fa70bc12f6d385";
+  };
+
+  buildInputs = [ pkgconfig ncurses readline ];
+
+  meta = {
+    homepage = "http://abook.sourceforge.net/";
+    description = "Abook is a text-based addressbook program designed to use with mutt mail client.";
+    license = "GPLv2";
+    maintainers = [ stdenv.lib.maintainers.edwtjo ];
+    platforms = with stdenv.lib.platforms; linux;
+  };
+}
diff --git a/pkgs/applications/misc/calibre/default.nix b/pkgs/applications/misc/calibre/default.nix
index c74795f52c43..f75fee9983fb 100644
--- a/pkgs/applications/misc/calibre/default.nix
+++ b/pkgs/applications/misc/calibre/default.nix
@@ -4,12 +4,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "calibre-1.0.0";
-  # 0.9.12+ versions won't build due to missing qt4 private headers: https://bugs.launchpad.net/calibre/+bug/1094719
+  name = "calibre-1.1.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/calibre/${name}.tar.xz";
-    sha256 = "0qz369n46ijk8jbbgwnvj3v0byp5npn2zdb4lvc6mwa143mr6d62";
+    sha256 = "1gb6h6jn2fj5b1xv5xkmsrdrid2k8zp496alnfi88x7dmahfb6f6";
   };
 
   inherit python;
diff --git a/pkgs/applications/misc/mupdf/default.nix b/pkgs/applications/misc/mupdf/default.nix
index eccd11f6041a..220309a8e221 100644
--- a/pkgs/applications/misc/mupdf/default.nix
+++ b/pkgs/applications/misc/mupdf/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pkgconfig, zlib, freetype, libjpeg, jbig2dec, openjpeg
 , libX11, libXext }:
 stdenv.mkDerivation rec {
-  name = "mupdf-1.1";
+  name = "mupdf-1.3";
 
   src = fetchurl {
     url = "http://mupdf.com/download/archive/${name}-source.tar.gz";
-    sha256 = "e54666bbe1d9f0a5464349bfbeffcf676c4a0fcad3efb89eba1f20d4ac991f34";
+    sha256 = "0y247nka5gkr1ajn47jrlp5rcnf6h4ff7dfsprma3h4wxqdv7a5b";
   };
 
   buildInputs = [ pkgconfig zlib freetype libjpeg jbig2dec openjpeg libX11 libXext ];
@@ -15,6 +15,19 @@ stdenv.mkDerivation rec {
     export NIX_CFLAGS_COMPILE=" $NIX_CFLAGS_COMPILE -I$(echo ${openjpeg}/include/openjpeg-*) "
   '';
 
+  postInstall = ''
+    mkdir -p $out/share/applications
+    cat > $out/share/applications/mupdf.desktop <<EOF
+    [Desktop Entry]
+    Type=Application
+    Version=1.0
+    Name=mupdf
+    Comment=PDF viewer
+    Exec=$out/bin/mupdf-x11
+    Terminal=false
+    EOF
+  '';
+
   meta = {
     homepage = http://mupdf.com/;
     description = "Lightweight PDF viewer and toolkit written in portable C";
diff --git a/pkgs/applications/misc/vanitygen/default.nix b/pkgs/applications/misc/vanitygen/default.nix
index c68767290ee0..e16767d4c261 100644
--- a/pkgs/applications/misc/vanitygen/default.nix
+++ b/pkgs/applications/misc/vanitygen/default.nix
@@ -34,5 +34,6 @@ stdenv.mkDerivation rec {
       '';
       homepage = "https://github.com/samr7/vanitygen";
       license = "AGPLv3";
+      platforms = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/applications/networking/browsers/chromium/sources.nix b/pkgs/applications/networking/browsers/chromium/sources.nix
index bfdcef1373d9..e83f99485358 100644
--- a/pkgs/applications/networking/browsers/chromium/sources.nix
+++ b/pkgs/applications/networking/browsers/chromium/sources.nix
@@ -1,18 +1,18 @@
 # This file is autogenerated from update.sh in the same directory.
 {
   dev = {
-    version = "30.0.1599.10";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.10.tar.xz";
-    sha256 = "1h6wak2sy0cawsk63gdbg7ggq8lg7cahs1v8i0hvzwm9k6apwphs";
+    version = "31.0.1612.0";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-31.0.1612.0.tar.xz";
+    sha256 = "19h6i8jdnpzbvyq8pk9jq89lghnydpij9yj8xfs7qdgqgyxxcl5w";
   };
   beta = {
-    version = "29.0.1547.57";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.57.tar.xz";
-    sha256 = "0xl595fng7qzlc8vh73lslzchr6ayd4vlmz2mpqppb8pai520xxf";
+    version = "30.0.1599.22";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-30.0.1599.22.tar.xz";
+    sha256 = "0955q7fz6nfr7nbxa8hp9q7mgljlan42rjg8ql5x2vn6c80sjji8";
   };
   stable = {
-    version = "29.0.1547.57";
-    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.57.tar.xz";
-    sha256 = "0xl595fng7qzlc8vh73lslzchr6ayd4vlmz2mpqppb8pai520xxf";
+    version = "29.0.1547.65";
+    url = "http://commondatastorage.googleapis.com/chromium-browser-official/chromium-29.0.1547.65.tar.xz";
+    sha256 = "0vmb5dsh61jyr68838pnczlc2mhvvil4hjkrmwklzlfz30c8s2w6";
   };
 }
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index b780152905d9..fe4360463398 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -19,9 +19,9 @@ assert useSystemCairo -> cairo != null;
 let optional = stdenv.lib.optional;
 in rec {
 
-  firefoxVersion = "23.0";
+  firefoxVersion = "23.0.1";
 
-  xulVersion = "23.0"; # this attribute is used by other packages
+  xulVersion = "23.0.1"; # this attribute is used by other packages
 
 
   src = fetchurl {
@@ -31,7 +31,7 @@ in rec {
         # Fall back to this url for versions not available at releases.mozilla.org.
         "ftp://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${firefoxVersion}/source/firefox-${firefoxVersion}.source.tar.bz2"
     ];
-    sha1 = "31936d2ddb727640c96a3ae697bf145c42a2a20e";
+    sha1 = "66361fcvyl9liyh41gvgysiim90wsywk";
   };
 
   commonConfigureFlags =
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index 94d1d08b9e47..08758c55a4e4 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
     sha1 = "4bcbb33f0b3ea050e805723680b5669d80438812";
   };
 
-  enableParallelBuilding = true;
+  #enableParallelBuilding = true;
 
   buildInputs =
     [ pkgconfig perl python zip unzip bzip2 gtk dbus_glib alsaLib libIDL nspr
diff --git a/pkgs/applications/networking/sniffers/kismet/default.nix b/pkgs/applications/networking/sniffers/kismet/default.nix
index 9e41e8b7aaf6..1bff834791dc 100644
--- a/pkgs/applications/networking/sniffers/kismet/default.nix
+++ b/pkgs/applications/networking/sniffers/kismet/default.nix
@@ -1,19 +1,22 @@
-{stdenv, fetchurl, libpcap, ncurses, expat, pcre}:
+{ stdenv, fetchurl, pkgconfig, libpcap, ncurses, expat, pcre, libnl }:
 
-stdenv.mkDerivation {
-  name = "kismet-2011-03-r2";
+stdenv.mkDerivation rec {
+  name = "kismet-${version}";
+  version = "2013-03-R1b";
 
   src = fetchurl {
-    url = http://www.kismetwireless.net/code/kismet-2011-03-R2.tar.gz;
-    sha256 = "0r1admlaiq7k0v13d9ci9i9mf5m25i1r5r18bkawsla9fbxrk83i";
+    url = "http://www.kismetwireless.net/code/${name}.tar.xz";
+    sha256 = "0b3wabdkh0p3msphihm4kz5yw02p27ska5lfippfcyn6z1z4svb3";
   };
 
-  buildInputs = [libpcap ncurses expat pcre];
-  postConfigure =
-    "sed -e 's@-o \$(INSTUSR)@@' \\
-        -e 's@-g \$(INSTGRP)@@' \\
-        -e 's@-g \$(MANGRP)@@' \\
-        -i Makefile";
+  buildInputs = [ pkgconfig libpcap ncurses expat pcre libnl ];
+  postConfigure = ''
+    sed -e 's/-o $(INSTUSR)//' \
+        -e 's/-g $(INSTGRP)//' \
+        -e 's/-g $(MANGRP)//' \
+        -e 's/-g $(SUIDGROUP)//' \
+        -i Makefile
+  '';
 
   meta = {
     description = "Wireless network sniffer";
diff --git a/pkgs/applications/office/ledger/3.0.nix b/pkgs/applications/office/ledger/3.0.nix
index b51fd6fe41e2..8b74dbad6f8e 100644
--- a/pkgs/applications/office/ledger/3.0.nix
+++ b/pkgs/applications/office/ledger/3.0.nix
@@ -1,25 +1,30 @@
 { stdenv, fetchgit, cmake, boost, gmp, mpfr, libedit, python, texinfo }:
 
 let
-  rev = "26d7197";
+  rev = "0ec4291";
 in
 stdenv.mkDerivation {
-  name = "ledger3-2013.06.${rev}";
+  name = "ledger3-2013.08.${rev}";
 
   src = fetchgit {
     url = "https://github.com/ledger/ledger.git";
     inherit rev;
-    sha256 = "02nf4kdrd61q9rf5rrarwmx47y2ya5qix7n82cj9qi9p4v3k3m2g";
+    sha256 = "1y4rcbx8y2fxkdc7i06n1i5jf3cq05bvzpb8498mis2gwfmkw470";
   };
 
   buildInputs = [ cmake boost gmp mpfr libedit python texinfo ];
 
-  # Unit tests fail in the current git snapshot. Try enabling them again
-  # when updating this package!
-  doCheck = false;
-
+  # Tests on Darwin are failing
+  doCheck = !stdenv.isDarwin;
   enableParallelBuilding = true;
 
+  # Skip byte-compiling of emacs-lisp files because this is currently
+  # broken in ledger...
+  postInstall = ''
+    mkdir -p $out/share/emacs/site-lisp/
+    cp -v $src/lisp/*.el $out/share/emacs/site-lisp/
+  '';
+
   meta = {
     homepage = "http://ledger-cli.org/";
     description = "A double-entry accounting system with a command-line reporting interface";
@@ -33,6 +38,6 @@ stdenv.mkDerivation {
     '';
 
     platforms = stdenv.lib.platforms.all;
-    maintainers = [ stdenv.lib.maintainers.simons ];
+    maintainers = with stdenv.lib.maintainers; [ simons the-kenny ];
   };
 }
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index ebc653940810..e07fe69b70cc 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -1,4 +1,10 @@
-{ stdenv, fetchurl, pam, python, tcsh, libxslt, perl, ArchiveZip
+# when updating version, wait for the build to fail
+# run make without sourcing the environment and let libreoffice
+# download all extra files
+# then list extra files separated by newline and pipe them to
+# generate-libreoffice-srcs.sh and copy output to libreoffice-srcs.nix
+
+{ stdenv, fetchurl, pam, python3, tcsh, libxslt, perl, ArchiveZip
 , CompressZlib, zlib, libjpeg, expat, pkgconfigUpstream, freetype, libwpd
 , libxml2, db4, sablotron, curl, libXaw, fontconfig, libsndfile, neon
 , bison, flex, zip, unzip, gtk, libmspack, getopt, file, cairo, which
@@ -6,54 +12,117 @@
 , libXinerama, openssl, gperf, cppunit, GConf, ORBit2, poppler
 , librsvg, gnome_vfs, gstreamer, gst_plugins_base, mesa
 , autoconf, automake, openldap, bash, hunspell, librdf_redland, nss, nspr
-, libwpg, dbus_glib, qt4, kde4, clucene_core, libcdr, lcms, vigra
-, libiodbc, mdds, saneBackends, mythes, libexttextcat, libvisio
-, fontsConf
-, langs ? [ "en-US" "en-GB" "ca" "ru" "eo" "fr" "nl" "de" ]
+, libwpg, dbus_glib, glibc, qt4, kde4, clucene_core, libcdr, lcms, vigra
+, unixODBC, mdds, saneBackends, mythes, libexttextcat, libvisio
+, fontsConf, pkgconfig, libzip, bluez5, libtool, maven
+, langs ? [ "ALL" ]
 }:
 
 let
   langsSpaces = stdenv.lib.concatStringsSep " " langs;
-  major = "3";
-  minor = "6";
-  patch = "6";
+  major = "4";
+  minor = "0";
+  patch = "5";
   tweak = "2";
   subdir = "${major}.${minor}.${patch}";
   version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
+
+  # configure phase dependency
+  liborcus = stdenv.mkDerivation rec {
+     version = "0.3.0";
+     name = "liborcus-${version}";
+
+     src = fetchurl {
+       url = "http://dev-www.libreoffice.org/src/8755aac23317494a9028569374dc87b2-liborcus_0.3.0.tar.bz2";
+       sha256 = "0xrw13s390mcpm50apclydl38sw2sdq27csrr1k0d39jna2990ih";
+     };
+
+     configureFlags = "--disable-werror";
+
+     buildInputs = [ zlib boost mdds pkgconfig libixion libzip ];
+  };
+
+  # configure phase dependency
+  liblangtag = stdenv.mkDerivation rec {
+     version = "0.4.0";
+     name = "liblangtag-${version}";
+
+     src = fetchurl {
+       url = "http://dev-www.libreoffice.org/src/54e578c91b1b68e69c72be22adcb2195-${name}.tar.bz2";
+       sha256 = "1bjb0fxjmvzxlhr5by9wgisf6w5yvy6wgfzfkjyw6igk39fivdyb";
+     };
+
+     buildInputs = [ libtool pkgconfig libxml2 ];
+  };
+  
+  # doesn't work with srcs versioning
+  libmspub = stdenv.mkDerivation rec {
+     version = "0.0.6";
+     name = "libmspub-${version}";
+
+     src = fetchurl {
+       url = "http://dev-www.libreoffice.org/src/${name}.tar.gz";
+       sha256 = "1zdcvnm0dpac5yqdv34hq9j38cnhyqzyjgb19iyp54ajnwfjhmcq";
+     };
+
+     configureFlags = "--disable-werror";
+ 
+     buildInputs = [ zlib libwpd libwpg pkgconfig boost icu ];  
+  };
+
+  # doesn't exist in srcs
+  libixion = stdenv.mkDerivation rec {
+     version = "0.5.0";
+     name = "libixion-${version}";
+
+     src = fetchurl {
+       url = "http://kohei.us/files/ixion/src/${name}.tar.bz2";
+       sha256 = "010k33bfkckx28r4rdk5mkd0mmayy5ng9ja0j0zg0z237gcfgrzb";
+     };
+
+     configureFlags = "--with-boost=${boost}";
+
+     buildInputs = [ boost mdds pkgconfig ];  
+  };
+
   fetchThirdParty = {name, md5}: fetchurl {
     inherit name md5;
     url = "http://dev-www.libreoffice.org/src/${md5}-${name}";
   };
+
   fetchSrc = {name, sha256}: fetchurl {
     url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${name}-${version}.tar.xz";
     inherit sha256;
   };
+
   srcs = {
     third_party = [ (fetchurl rec {
         url = "http://dev-www.libreoffice.org/extern/${md5}-${name}";
         md5 = "185d60944ea767075d27247c3162b3bc";
         name = "unowinreg.dll";
       }) ] ++ (map fetchThirdParty (import ./libreoffice-srcs.nix));
+
     translations = fetchSrc {
       name = "translations";
-      sha256 = "1n3yk2077adyxrhs0jpkbm8dg3lxpn3sy63f0dl87ifv7ha1rfpn";
+      sha256 = "0x96wlwr5m7w4k3ygydzak3ycq35hjq60vfi6nfxczlr8pfjyjxv";
     };
 
+    # TODO: dictionaries
+
     help = fetchSrc {
       name = "help";
-      sha256 = "12rb5mw6sbi41w1zaxrj4qffiis9qcx8ibp5cpmwsz07nsdv5sxk";
+      sha256 = "0nab5jcgrrgn0v1yrm18nl9avp4vifbas48l1absz3jmzf9wka7b";
     };
 
-    core = fetchSrc {
-      name = "core";
-      sha256 = "0xw36sa73cgk3k3fv1spv5pavm95bc02lszn8415ay36lcc098pn";
-    };
   };
 in
 stdenv.mkDerivation rec {
   name = "libreoffice-${version}";
 
-  src = srcs.core;
+  src = fetchurl {
+    url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
+    sha256 = "195g1iab7j2x7sl326xbq7vya412ns57xrwpv9hqdrb7iiz2n8la";
+  };
 
   # Openoffice will open libcups dynamically, so we link it directly
   # to make its dlopen work.
@@ -69,31 +138,35 @@ stdenv.mkDerivation rec {
   '' + (stdenv.lib.concatMapStrings (f: "ln -sv ${f} $sourceRoot/src/${f.outputHash}-${f.name}\n") srcs.third_party)
   + ''
     ln -sv ${srcs.help} $sourceRoot/src/${srcs.help.name}
+    tar xf $sourceRoot/src/${srcs.help.name} -C $sourceRoot/../
     ln -sv ${srcs.translations} $sourceRoot/src/${srcs.translations.name}
+    tar xf $sourceRoot/src/${srcs.translations.name} -C $sourceRoot/../
   '';
 
   patchPhase = ''
     find . -type f -print0 | xargs -0 sed -i \
       -e 's,! */bin/bash,!${bash}/bin/bash,' -e 's,\(!\|SHELL=\) */usr/bin/env bash,\1${bash}/bin/bash,' \
       -e 's,! */usr/bin/perl,!${perl}/bin/perl,' -e 's,! */usr/bin/env perl,!${perl}/bin/perl,' \
-      -e 's,! */usr/bin/python,!${python}/bin/python,' -e 's,! */usr/bin/env python,!${python}/bin/python,'
-    sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
+      -e 's,! */usr/bin/python,!${python3}/bin/${python3.executable},' -e 's,! */usr/bin/env python,!${python3}/bin/${python3.executable},'
+    #sed -i 's,ANT_OPTS+="\(.*\)",ANT_OPTS+=\1,' apache-commons/java/*/makefile.mk
   '';
 
   QT4DIR = qt4;
   KDE4DIR = kde4.kdelibs;
 
-  # I set --with-num-cpus=$NIX_BUILD_CORES, as it's the equivalent of
-  # enableParallelBuilding=true in this build system.
   preConfigure = ''
     # Needed to find genccode
     PATH=$PATH:${icu}/sbin
 
-    configureFlagsArray=("--with-lang=${langsSpaces}" "--with-num-cpus=$NIX_BUILD_CORES")
+    configureFlagsArray=(
+      "--with-parallelism=$NIX_BUILD_CORES"
+    );
   '';
 
   makeFlags = "SHELL=${bash}/bin/bash";
 
+  enableParallelBuilding = true;
+
   buildPhase = ''
     # This is required as some cppunittests require fontconfig configured
     export FONTCONFIG_FILE=${fontsConf}
@@ -111,15 +184,22 @@ stdenv.mkDerivation rec {
 
   # It installs only things to $out/lib/libreoffice
   postInstall = ''
-    mkdir -p $out/bin
+    mkdir -p $out/bin $out/share
     for a in sbase scalc sdraw smath swriter spadmin simpress soffice; do
       ln -s $out/lib/libreoffice/program/$a $out/bin/$a
     done
     ln -s $out/bin/soffice $out/bin/libreoffice
+
+    ln -s $out/lib/libreoffice/share/xdg $out/share/applications
+    for f in $out/share/applications/*.desktop; do
+      substituteInPlace "$f" --replace "Exec=libreoffice4.0" "$out/bin/soffice"
+      substituteInPlace "$f" --replace "Exec=libreoffice" "$out/bin/soffice"
+    done
   '';
 
   configureFlags = [
-    #"--enable-verbose"
+    "--with-lang=${langsSpaces}"
+    "--with-vender=NixOS"
 
     # Without these, configure does not finish
     "--without-junit"
@@ -131,16 +211,16 @@ stdenv.mkDerivation rec {
     "--disable-odk"
     "--with-system-cairo"
     "--with-system-libs"
+    "--with-system-headers"
+    "--with-system-openssl"
+    "--with-system-openldap"
     "--with-boost-libdir=${boost}/lib"
-    "--with-system-db"
-    "--with-openldap" "--enable-ldap"
-    "--without-system-libwps"
+    "--without-system-libwps"  # TODO
     "--without-doxygen"
 
     # I imagine this helps. Copied from go-oo.
     "--disable-epm"
     "--disable-mathmldtd"
-    "--disable-mozilla"
     "--disable-kde"
     "--disable-postgresql-sdbc"
     "--with-package-format=native"
@@ -156,28 +236,33 @@ stdenv.mkDerivation rec {
     "--without-system-altlinuxhyph"
     "--without-system-lpsolve"
     "--without-system-graphite"
-    "--without-system-mozilla-headers"
+    "--without-system-npapi-headers"
     "--without-system-libcmis"
-
-    "--with-java-target-version=1.6" # The default 1.7 not supported
+    "--without-system-mozilla"
   ];
 
+  checkPhase = ''
+    make unitcheck
+    make slowcheck
+  '';
+
   buildInputs =
     [ ant ArchiveZip autoconf automake bison boost cairo clucene_core
       CompressZlib cppunit cups curl db4 dbus_glib expat file flex fontconfig
       freetype GConf getopt gnome_vfs gperf gst_plugins_base gstreamer gtk
-      hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat libiodbc libjpeg
+      hunspell icu jdk kde4.kdelibs lcms libcdr libexttextcat unixODBC libjpeg
       libmspack librdf_redland librsvg libsndfile libvisio libwpd libwpg libX11
       libXaw libXext libXi libXinerama libxml2 libxslt libXtst mdds mesa mythes
       neon nspr nss openldap openssl ORBit2 pam perl pkgconfigUpstream poppler
-      python sablotron saneBackends tcsh unzip vigra which zip zlib
+      python3 sablotron saneBackends tcsh unzip vigra which zip zlib
+      mdds bluez5 glibc libmspub libixion liborcus liblangtag
     ];
 
-  meta = {
-    description = "Libre-office, variant of openoffice.org";
+  meta = with stdenv.lib; {
+    description = "LibreOffice is a comprehensive, professional-quality productivity suite, a variant of openoffice.org";
     homepage = http://libreoffice.org/;
-    license = "LGPL";
-    maintainers = [ stdenv.lib.maintainers.viric ];
-    platforms = stdenv.lib.platforms.linux;
+    license = licenses.lgpl3;
+    maintainers = [ maintainers.viric ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh b/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
index fb8cc8161145..ab6c4e3fb079 100644..100755
--- a/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
+++ b/pkgs/applications/office/libreoffice/generate-libreoffice-srcs.sh
@@ -1,4 +1,4 @@
-#!/var/run/current-system/bin/bash
+#!/run/current-system/sw/bin/bash
 
 # Take the list of files from the main package, ooo.lst.in
 
diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
index 7f8f2c089f3b..6ed1a5e2c639 100644
--- a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
@@ -1,374 +1,114 @@
 [
 {
-  name = "hyphen-2.8.3.tar.gz";
-  md5 = "86261f06c097d3e425a2f6d0b0635380";
-}
-{
-  name = "openssl-0.9.8v.tar.gz";
-  md5 = "51a40a81b3b7abe8a5c33670bd3da0ce";
-}
-{
-  name = "pixman-0.24.4.tar.bz2";
-  md5 = "c63f411b3ad147db2bcce1bf262a0e02";
-}
-{
-  name = "README_apache-commons.txt";
-  md5 = "0b49ede71c21c0599b0cc19b353a6cb3";
-}
-{
-  name = "libexttextcat-3.3.1.tar.bz2";
-  md5 = "6097739c841f671cb21332b9cc593ae7";
-}
-{
-  name = "hsqldb_1_8_0.zip";
-  md5 = "17410483b5b5f267aa18b7e00b65e6e0";
-}
-{
-  name = "Adobe-Core35_AFMs-314.tar.gz";
-  md5 = "1756c4fa6c616ae15973c104cd8cb256";
-}
-{
-  name = "STLport-4.5.tar.gz";
-  md5 = "18f577b374d60b3c760a3a3350407632";
-}
-{
-  name = "xmlsec1-1.2.14.tar.gz";
-  md5 = "1f24ab1d39f4a51faf22244c94a6203f";
-}
-{
-  name = "LICENSE_source-9.0.0.7-bj.html";
-  md5 = "24be19595acad0a2cae931af77a0148a";
-}
-{
-  name = "lp_solve_5.5.tar.gz";
-  md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
-}
-{
-  name = "raptor-1.4.18.tar.gz";
-  md5 = "284e768eeda0e2898b0d5bf7e26a016e";
-}
-{
-  name = "jakarta-tomcat-5.0.30-src.tar.gz";
-  md5 = "2a177023f9ea8ec8bd00837605c5df1b";
-}
-{
-  name = "commons-lang-2.3-src.tar.gz";
-  md5 = "2ae988b339daec234019a7066f96733e";
-}
-{
-  name = "commons-httpclient-3.1-src.tar.gz";
-  md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
-}
-{
-  name = "liberation-fonts-ttf-1.07.1.tar.gz";
-  md5 = "0be45d54cc5e1c2e3102e32b8c190346";
-}
-{
-  name = "liberation-fonts-ttf-2.00.0.tar.gz";
-  md5 = "cfbf1ac6f61bf6cf45342a0cc9381be5";
-}
-{
-  name = "swingExSrc.zip";
-  md5 = "35c94d2df8893241173de1d16b6034c0";
-}
-{
-  name = "gentiumbasic-fonts-1.10.zip";
-  md5 = "35efabc239af896dfb79be7ebdd6e6b9";
-}
-{
-  name = "sacjava-1.3.zip";
-  md5 = "39bb3fcea1514f1369fcfc87542390fd";
-}
-{
-  name = "epm-3.7.tar.gz";
-  md5 = "3ade8cfe7e59ca8e65052644fed9fca4";
-}
-{
-  name = "commons-logging-1.1.1-src.tar.gz";
-  md5 = "3c219630e4302863a9a83d0efde889db";
-}
-{
-  name = "README_source-9.0.0.7-bj.txt";
-  md5 = "48470d662650c3c074e1c3fabbc67bbd";
-}
-{
-  name = "clucene-core-2.3.3.4.tar.gz";
-  md5 = "48d647fbd8ef8889e5a7f422c1bfda94";
-}
-{
   name = "glibc-2.1.3-stub.tar.gz";
   md5 = "4a660ce8466c9df01f19036435425c3a";
 }
 {
-  name = "cairo-1.10.2.tar.gz";
-  md5 = "f101a9e88b783337b20b2e26dfd26d5f";
+  name = "ucpp-1.3.2.tar.gz";
+  md5 = "0168229624cfac409e766913506961a8";
 }
 {
-  name = "xpdf-3.02.tar.gz";
-  md5 = "599dc4cc65a07ee868cf92a667a913d2";
+  name = "commons-logging-1.1.1-src.tar.gz";
+  md5 = "3c219630e4302863a9a83d0efde889db";
 }
 {
-  name = "libxml2-2.7.6.tar.gz";
-  md5 = "7740a8ec23878a2f50120e1faa2730f2";
+  name = "liblayout-0.2.10.zip";
+  md5 = "db60e4fde8dd6d6807523deb71ee34dc";
 }
 {
-  name = "STLport-4.5-0119.tar.gz";
-  md5 = "7376930b0d3f3d77a685d94c4a3acda8";
+  name = "hsqldb_1_8_0.zip";
+  md5 = "17410483b5b5f267aa18b7e00b65e6e0";
 }
 {
   name = "rhino1_5R5.zip";
   md5 = "798b2ffdc8bcfe7bca2cf92b62caf685";
 }
 {
-  name = "curl-7.19.7.tar.gz";
-  md5 = "ecb2e37e45c9933e2a963cabe03670ab";
-}
-{
-  name = "stax-api-1.0-2-sources.jar";
-  md5 = "8294d6c42e3553229af9934c5c0ed997";
-}
-{
-  name = "cppunit-1.12.1.tar.gz";
-  md5 = "bd30e9cf5523cdfc019b94f5e1d7fd19";
-}
-{
-  name = "seamonkey-1.1.14.source.tar.gz";
-  md5 = "a169ab152209200a7bad29a275cb0333";
-}
-{
-  name = "LICENSE_stax-api-1.0-2-sources.html";
-  md5 = "a4d9b30810a434a3ed39fc0003bbd637";
-}
-{
-  name = "xsltml_2.1.2.zip";
-  md5 = "a7983f859eafb2677d7ff386a023bc40";
-}
-{
-  name = "source-9.0.0.7-bj.zip";
-  md5 = "ada24d37d8d638b3d8a9985e80bc2978";
-}
-{
-  name = "commons-codec-1.3-src.tar.gz";
-  md5 = "af3c3acf618de6108d65fcdc92b492e1";
-}
-{
-  name = "LICENSE_Python-2.6.1";
-  md5 = "bc702168a2af16869201dbe91e46ae48";
-}
-{
-  name = "STLport-4.0.tar.gz";
-  md5 = "c441926f3a552ed3e5b274b62e86af16";
-}
-{
-  name = "redland-1.0.8.tar.gz";
-  md5 = "ca66e26082cab8bb817185a116db809b";
-}
-{
-  name = "core.zip";
-  md5 = "d4c4d91ab3a8e52a2e69d48d34ef4df4";
-}
-{
-  name = "db-4.7.25.NC-custom.tar.gz";
-  md5 = "d70951c80dabecc2892c919ff5d07172";
-}
-{
-  name = "README_db-4.7.25.NC-custom.txt";
-  md5 = "e0707ff896045731ff99e99799606441";
-}
-{
-  name = "Python-2.6.1.tar.bz2";
-  md5 = "e81c2f0953aa60f8062c05a4673f2be0";
-}
-{
-  name = "libxslt-1.1.26.tar.gz";
-  md5 = "e61d0364a30146aaa3001296f853b2b9";
-}
-{
   name = "bsh-2.0b1-src.tar.gz";
   md5 = "ea570af93c284aa9e5621cd563f54f4d";
 }
 {
-  name = "vigra1.4.0.tar.gz";
-  md5 = "ea91f2fb4212a21d708aced277e6e85a";
-}
-{
-  name = "expat-2.1.0.tar.gz";
-  md5 = "dd7dab7a5fea97d2a6a43f511449b7cd";
-}
-{
-  name = "README_stax-api-1.0-2-sources.txt";
-  md5 = "fb7ba5c2182be4e73748859967455455";
-}
-{
-  name = "rasqal-0.9.16.tar.gz";
-  md5 = "fca8706f2c4619e2fa3f8f42f8fc1e9d";
-}
-{
-  name = "dejavu-fonts-ttf-2.33.zip";
-  md5 = "f872f4ac066433d8ff92f5e316b36ff9";
-}
-{
-  name = "mysql-connector-c++-1.1.0.tar.gz";
-  md5 = "0981bda6548a8c8233ffce2b6e4b2a23";
-}
-{
-  name = "postgresql-9.1.1.tar.bz2";
-  md5 = "061a9f17323117c9358ed60f33ecff78";
-}
-{
-  name = "mythes-1.2.2.tar.gz";
-  md5 = "e1e255dc43dbcbb34cb19e8a0eba90ae";
-}
-{
-  name = "libformula-1.1.7.zip";
-  md5 = "3404ab6b1792ae5f16bbd603bd1e1d03";
-}
-{
-  name = "libfonts-1.1.6.zip";
-  md5 = "3bdf40c0d199af31923e900d082ca2dd";
+  name = "xmlsec1-1.2.14.tar.gz";
+  md5 = "1f24ab1d39f4a51faf22244c94a6203f";
 }
 {
   name = "librepository-1.1.6.zip";
   md5 = "8ce2fcd72becf06c41f7201d15373ed9";
 }
 {
-  name = "libloader-1.1.6.zip";
-  md5 = "97b2d4dba862397f446b217e2b623e71";
-}
-{
-  name = "libxml-1.1.7.zip";
-  md5 = "ace6ab49184e329db254e454a010f56d";
-}
-{
-  name = "flute-1.1.6.zip";
-  md5 = "d8bd5eed178db6e2b18eeed243f85aa8";
-}
-{
-  name = "liblayout-0.2.10.zip";
-  md5 = "db60e4fde8dd6d6807523deb71ee34dc";
-}
-{
   name = "libbase-1.1.6.zip";
   md5 = "eeb2c7ddf0d302fba4bfc6e97eac9624";
 }
 {
-  name = "libserializer-1.1.6.zip";
-  md5 = "f94d9870737518e3b597f9265f4e9803";
-}
-{
-  name = "flow-engine-0.9.4.zip";
-  md5 = "ba2930200c9f019c2d93a8c88c651a0f";
-}
-{
-  name = "neon-0.29.5.tar.gz";
-  md5 = "ff369e69ef0f0143beb5626164e87ae2";
-}
-{
-  name = "gettext-0.18.1.1.tar.gz";
-  md5 = "3dd55b952826d2b32f51308f2f91aa89";
-}
-{
-  name = "glib-2.28.1.tar.gz";
-  md5 = "9f6e85e1e38490c3956f4415bcd33e6e";
-}
-{
-  name = "gdk-pixbuf-2.23.0.tar.gz";
-  md5 = "a7d6c5f2fe2d481149ed3ba807b5c043";
+  name = "lp_solve_5.5.tar.gz";
+  md5 = "26b3e95ddf3d9c077c480ea45874b3b8";
 }
 {
-  name = "libgsf-1.14.19.tar.gz";
-  md5 = "3a84ac2da37cae5bf7ce616228c6fbde";
+  name = "libloader-1.1.6.zip";
+  md5 = "97b2d4dba862397f446b217e2b623e71";
 }
 {
-  name = "pango-1.28.3.tar.gz";
-  md5 = "22ad1c8d3fda7e73b0798035f3dd96bc";
+  name = "graphite2-1.2.0.tgz";
+  md5 = "f5ef3f7f10fa8c3542c6a085a233080b";
 }
 {
-  name = "libcroco-0.6.2.tar.gz";
-  md5 = "0611e099e807210cf738dcb41425d104";
+  name = "jakarta-tomcat-5.0.30-src.tar.gz";
+  md5 = "2a177023f9ea8ec8bd00837605c5df1b";
 }
 {
-  name = "librsvg-2.32.1.tar.gz";
-  md5 = "d7a242ca43e33e1b63d3073f9d46a6a8";
+  name = "hyphen-2.8.4.tar.gz";
+  md5 = "a2f6010987e1c601274ab5d63b72c944";
 }
 {
-  name = "libpng-1.5.10.tar.gz";
-  md5 = "9e5d864bce8f06751bbd99962ecf4aad";
+  name = "libserializer-1.1.6.zip";
+  md5 = "f94d9870737518e3b597f9265f4e9803";
 }
 {
-  name = "jpeg-8c.tar.gz";
-  md5 = "a2c10c04f396a9ce72894beb18b4e1f9";
+  name = "commons-lang-2.3-src.tar.gz";
+  md5 = "2ae988b339daec234019a7066f96733e";
 }
 {
-  name = "zlib-1.2.7.tar.bz2";
-  md5 = "2ab442d169156f34c379c968f3f482dd";
+  name = "libxml-1.1.7.zip";
+  md5 = "ace6ab49184e329db254e454a010f56d";
 }
 {
-  name = "icu4c-49_1_1-src.tgz";
-  md5 = "7c53f83e0327343f4060c0eb83842daf";
+  name = "commons-httpclient-3.1-src.tar.gz";
+  md5 = "2c9b0f83ed5890af02c0df1c1776f39b";
 }
 {
-  name = "ConvertTextToNumber-1.3.2.oxt";
-  md5 = "451ccf439a36a568653b024534669971";
+  name = "commons-codec-1.3-src.tar.gz";
+  md5 = "af3c3acf618de6108d65fcdc92b492e1";
 }
 {
-  name = "JLanguageTool-1.7.0.tar.bz2";
-  md5 = "b63e6340a02ff1cacfeadb2c42286161";
+  name = "libformula-1.1.7.zip";
+  md5 = "3404ab6b1792ae5f16bbd603bd1e1d03";
 }
 {
-  name = "ixion-0.2.0.tar.gz";
-  md5 = "0f63ee487fda8f21fafa767b3c447ac9";
+  name = "libcmis-0.3.0.tar.gz";
+  md5 = "b2371dc7cf4811c9d32146eec913d296";
 }
 {
-  name = "nss-3.13.5-with-nspr-4.9.1.tar.gz";
-  md5 = "a0a861f539f0e7a91d05e6b9457e4db1";
+  name = "swingExSrc.zip";
+  md5 = "35c94d2df8893241173de1d16b6034c0";
 }
 {
-  name = "libwpg-0.2.1.tar.bz2";
-  md5 = "9d283e02441d8cebdcd1e5d9df227d67";
+  name = "flow-engine-0.9.4.zip";
+  md5 = "ba2930200c9f019c2d93a8c88c651a0f";
 }
 {
-  name = "libwpd-0.9.4.tar.bz2";
-  md5 = "c01351d7db2b205de755d58769288224";
+  name = "sacjava-1.3.zip";
+  md5 = "39bb3fcea1514f1369fcfc87542390fd";
 }
 {
   name = "libwps-0.2.7.tar.bz2";
   md5 = "d197bd6211669a2fa4ca648faf04bcb1";
 }
 {
-  name = "mdds_0.6.1.tar.bz2";
-  md5 = "9f9e15966b5624834157fe3d748312bc";
-}
-{
-  name = "boost_1_44_0.tar.bz2";
-  md5 = "f02578f5218f217a9f20e9c30e119c6a";
-}
-{
-  name = "hunspell-1.3.2.tar.gz";
-  md5 = "3121aaf3e13e5d88dfff13fb4a5f1ab8";
-}
-{
-  name = "graphite2-1.0.3.tgz";
-  md5 = "3bf481ca95109b14435125c0dd1f2217";
-}
-{
-  name = "libvisio-0.0.19.tar.bz2";
-  md5 = "94e7f271e38c976462558b4278590178";
-}
-{
-  name = "LinLibertineG-20120116.zip";
-  md5 = "e7a384790b13c29113e22e596ade9687";
-}
-{
-  name = "libcmis-0.2.3.tar.gz";
-  md5 = "0d2dcdfbf28d6208751b33057f5361f0";
-}
-{
-  name = "libcdr-0.0.9.tar.bz2";
-  md5 = "3c0037fb07dea2f0bbae8386fa7c6a9a";
+  name = "libfonts-1.1.6.zip";
+  md5 = "3bdf40c0d199af31923e900d082ca2dd";
 }
 {
-  name = "lcms2-2.3.tar.gz";
-  md5 = "327348d67c979c88c2dec59a23a17d85";
+  name = "flute-1.1.6.zip";
+  md5 = "d8bd5eed178db6e2b18eeed243f85aa8";
 }
 ]
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index 85c69413bfb1..b4a7a203a3c4 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -55,5 +55,6 @@ stdenv.mkDerivation {
     homepage = "http://coq.inria.fr";
     license = "LGPL";
     maintainers = [ stdenv.lib.maintainers.roconnor ];
+    platforms = stdenv.lib.platforms.linux;
   };
 }
diff --git a/pkgs/applications/science/math/maxima/default.nix b/pkgs/applications/science/math/maxima/default.nix
index d644a1633cbb..f5fec36756d3 100644
--- a/pkgs/applications/science/math/maxima/default.nix
+++ b/pkgs/applications/science/math/maxima/default.nix
@@ -2,7 +2,7 @@
 
 let
   name    = "maxima";
-  version = "5.29.1";
+  version = "5.30.0";
 
   searchPath =
     stdenv.lib.makeSearchPath "bin"
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/${name}/${name}-${version}.tar.gz";
-    sha256 = "1p94l28adcn0826nah460r9pz71h7wd5klsg885sl2gzds75bn74";
+    sha256 = "1mhx7g0kzpiagg97s2zhaplsq1li9ya2764mhwl7jgfw2vp3jlm0";
   };
 
   buildInputs = [sbcl texinfo perl makeWrapper];
@@ -21,7 +21,7 @@ stdenv.mkDerivation {
   postInstall = ''
     # Make sure that maxima can find its runtime dependencies.
     for prog in "$out/bin/"*; do
-      wrapProgram "$prog" --prefix PATH ":" "${searchPath}"
+      wrapProgram "$prog" --prefix PATH ":" "$out/bin:${searchPath}"
     done
     # Move emacs modules and documentation into the right place.
     mkdir -p $out/share/emacs $out/share/doc
diff --git a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
index d45e6e210f06..38d972aa2434 100644
--- a/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-annex/default.nix
@@ -14,8 +14,8 @@
 
 cabal.mkDerivation (self: {
   pname = "git-annex";
-  version = "4.20130815";
-  sha256 = "0c4fvqmnvyrncmiz0dxwax2rnb4yrqw1y54q2zkqiifzrihcyi71";
+  version = "4.20130827";
+  sha256 = "07kfp0d2wg3p8s0v2100r4giw5ay1il5j15lrah43fk2rrszgm5z";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index 9c547b2193d4..73b21728e165 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -24,9 +24,10 @@ stdenv.mkDerivation {
     wrapProgram $out/bin/meld --prefix PYTHONPATH : $PYTHONPATH:${pygtk}/lib/${python.libPrefix}/site-packages/gtk-2.0
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Visual diff and merge tool";
     homepage = http://meld.sourceforge.net;
     license = "GPLv2+";
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/applications/window-managers/xmonad/xmonad-extras.nix b/pkgs/applications/window-managers/xmonad/xmonad-extras.nix
index f4aed5a18503..1976e393baad 100644
--- a/pkgs/applications/window-managers/xmonad/xmonad-extras.nix
+++ b/pkgs/applications/window-managers/xmonad/xmonad-extras.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "xmonad-extras";
-  version = "0.11";
-  sha256 = "09r64z09mfdz86k7v5c6zds9ng0fjcp44kd8f5qg1sz40yblrny5";
+  version = "0.12";
+  sha256 = "1gyj9j6x21rvs6kg6g74wr0jdd36c5ml63a670456fhjr96s8y0g";
   buildDepends = [
     hint libmpd mtl network parsec random regexPosix split X11 xmonad
     xmonadContrib
diff --git a/pkgs/development/compilers/go/1.1.nix b/pkgs/development/compilers/go/1.1.nix
index 01a8f1b6b186..5aeb053e1107 100644
--- a/pkgs/development/compilers/go/1.1.nix
+++ b/pkgs/development/compilers/go/1.1.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata}:
+{ stdenv, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc }:
 
 let
   loader386 = "${glibc}/lib/ld-linux.so.2";
@@ -7,11 +7,11 @@ let
 in
 
 stdenv.mkDerivation {
-  name = "go-1.1.1";
+  name = "go-1.1.2";
 
   src = fetchurl {
-    url = http://go.googlecode.com/files/go1.1.1.src.tar.gz;
-    sha1 = "f365aed8183e487a48a66ace7bf36e5974dffbb3";
+    url = http://go.googlecode.com/files/go1.1.2.src.tar.gz;
+    sha256 = "0w7bchhb4b053az3wjp6z342rs9lp9nxf4w2mnfd1b89d6sb7izz";
   };
 
   buildInputs = [ bison glibc bash makeWrapper ];
@@ -36,6 +36,7 @@ stdenv.mkDerivation {
     sed -i 's,/lib64/ld-linux-x86-64.so.2,${loaderAmd64},' src/cmd/6l/asm.c
     sed -i 's,/lib64/ld-linux-x86-64.so.3,${loaderArm},' src/cmd/5l/asm.c
     sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/pkg/time/zoneinfo_unix.go
+    sed -i 's,/etc/protocols,${iana_etc}/etc/protocols,' src/pkg/net/lookup_unix.go
 
     #sed -i -e 's,/bin/cat,${coreutils}/bin/cat,' \
     #  -e 's,/bin/echo,${coreutils}/bin/echo,' \
@@ -49,8 +50,6 @@ stdenv.mkDerivation {
     sed -i 's,/bin/pwd,'"`type -P pwd`", src/pkg/os/os_test.go
     # Disable the hostname test
     sed -i '/TestHostname/areturn' src/pkg/os/os_test.go
-    # Disable a failing icmp test (maybe because not being root?)
-    sed -i '/ip[46]:.*icmp.*nil/d' src/pkg/net/ipraw_test.go
   '';
 
   patches = [ ./cacert.patch ];
diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix
index 7c0ddde66128..66b15e3499d9 100644
--- a/pkgs/development/compilers/urweb/default.nix
+++ b/pkgs/development/compilers/urweb/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   pname = "urweb";
-  version = "20120807";
+  version = "20130421";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://www.impredicative.com/ur/${name}.tgz";
-    sha256 = "15g1cz108dkzlp433cg56x76f20y6zcs9sbgxgdniyfakmn4ld6l";
+    sha256 = "1dglcial9bzximw778wbfqx99khy34qpf9gw4bbncn9f742ji872";
   };
 
   buildInputs = [ stdenv.gcc file openssl mlton mysql postgresql sqlite ];
diff --git a/pkgs/development/interpreters/ruby/generated.nix b/pkgs/development/interpreters/ruby/generated.nix
index da0de9768247..7c062a44ca17 100644
--- a/pkgs/development/interpreters/ruby/generated.nix
+++ b/pkgs/development/interpreters/ruby/generated.nix
@@ -15,29 +15,33 @@ g: # Get dependencies from patched gems
     atomic = g.atomic_1_1_13;
     atoulme_Antwrap = g.atoulme_Antwrap_0_7_4;
     autotest_rails = g.autotest_rails_4_1_2;
-    aws_sdk = g.aws_sdk_1_15_0;
-    bitbucket_backup = g.bitbucket_backup_0_2_2;
+    aws_sdk = g.aws_sdk_1_16_1;
+    backports = g.backports_3_3_3;
+    bitbucket_backup = g.bitbucket_backup_0_3_0;
     builder = g.builder_3_2_2;
     buildr = g.buildr_1_4_12;
     bundler = g.bundler_1_3_5;
     childprocess = g.childprocess_0_3_9;
-    chronic = g.chronic_0_9_1;
+    chronic = g.chronic_0_10_1;
+    coderay = g.coderay_1_0_9;
     daemons = g.daemons_1_1_9;
     diff_lcs = g.diff_lcs_1_1_3;
     dimensions = g.dimensions_1_2_0;
     domain_name = g.domain_name_0_5_13;
-    dotenv = g.dotenv_0_8_0;
+    dotenv = g.dotenv_0_9_0;
     em_resolv_replace = g.em_resolv_replace_1_1_3;
     erubis = g.erubis_2_7_0;
+    ethon = g.ethon_0_6_1;
     eventmachine = g.eventmachine_1_0_3;
     eventmachine_tail = g.eventmachine_tail_0_6_4;
     fakes3 = g.fakes3_0_1_5;
     faraday = g.faraday_0_8_8;
-    faraday_middleware = g.faraday_middleware_0_8_8;
+    faraday_middleware = g.faraday_middleware_0_9_0;
     ffi = g.ffi_1_9_0;
     file_tail = g.file_tail_1_0_12;
     foreman = g.foreman_0_63_0;
-    gettext = g.gettext_2_3_9;
+    gettext = g.gettext_3_0_0;
+    gh = g.gh_0_12_0;
     highline = g.highline_1_6_19;
     hike = g.hike_1_2_3;
     hoe = g.hoe_3_1_0;
@@ -48,12 +52,14 @@ g: # Get dependencies from patched gems
     jsduck = g.jsduck_5_1_0;
     json = g.json_1_8_0;
     json_pure = g.json_pure_1_8_0;
+    launchy = g.launchy_2_3_0;
     locale = g.locale_2_0_8;
     lockfile = g.lockfile_2_1_0;
     macaddr = g.macaddr_1_6_1;
     mail = g.mail_2_5_4;
     mechanize = g.mechanize_2_7_2;
-    mime_types = g.mime_types_1_24;
+    method_source = g.method_source_0_8_2;
+    mime_types = g.mime_types_1_25;
     mini_portile = g.mini_portile_0_5_1;
     minitar = g.minitar_0_5_3;
     minitest = g.minitest_4_7_5;
@@ -61,8 +67,10 @@ g: # Get dependencies from patched gems
     multipart_post = g.multipart_post_1_2_0;
     net_http_digest_auth = g.net_http_digest_auth_1_4;
     net_http_persistent = g.net_http_persistent_2_9;
+    net_http_pipeline = g.net_http_pipeline_1_0_1;
     net_sftp = g.net_sftp_2_0_5;
     net_ssh = g.net_ssh_2_6_8;
+    netrc = g.netrc_0_7_7;
     nix = g.nix_0_1_1;
     nokogiri = g.nokogiri_1_6_0;
     ntlm_http = g.ntlm_http_0_1_1;
@@ -70,6 +78,8 @@ g: # Get dependencies from patched gems
     papertrail_cli = g.papertrail_cli_0_9_3;
     parallel = g.parallel_0_7_1;
     polyglot = g.polyglot_0_3_3;
+    pry = g.pry_0_9_12_2;
+    pusher_client = g.pusher_client_0_3_1;
     rack = g.rack_1_5_2;
     rack_protection = g.rack_protection_1_5_0;
     rack_test = g.rack_test_0_6_2;
@@ -88,26 +98,30 @@ g: # Get dependencies from patched gems
     rspec_core = g.rspec_core_2_11_1;
     rspec_expectations = g.rspec_expectations_2_11_3;
     rspec_mocks = g.rspec_mocks_2_11_3;
+    ruby_hmac = g.ruby_hmac_0_4_0;
     rubyforge = g.rubyforge_2_0_4;
     rubyzip = g.rubyzip_0_9_9;
     sass = g.sass_3_2_10;
-    selenium_webdriver = g.selenium_webdriver_2_35_0;
+    selenium_webdriver = g.selenium_webdriver_2_35_1;
     servolux = g.servolux_0_10_0;
     sinatra = g.sinatra_1_3_2;
+    slop = g.slop_3_4_6;
     sprockets = g.sprockets_2_10_0;
     sprockets_rails = g.sprockets_rails_2_0_0;
     syslog_protocol = g.syslog_protocol_0_9_2;
     systemu = g.systemu_2_5_2;
     taskjuggler = g.taskjuggler_3_5_0;
     term_ansicolor = g.term_ansicolor_1_2_2;
-    text = g.text_1_2_1;
+    text = g.text_1_2_3;
     thin = g.thin_1_5_1;
     thor = g.thor_0_18_1;
     thread_safe = g.thread_safe_0_1_2;
     tilt = g.tilt_1_4_1;
-    tins = g.tins_0_8_4;
+    tins = g.tins_0_9_0;
+    travis = g.travis_1_5_3;
     treetop = g.treetop_1_4_15;
     trollop = g.trollop_2_0;
+    typhoeus = g.typhoeus_0_6_5;
     tzinfo = g.tzinfo_0_3_37;
     unf = g.unf_0_1_2;
     unf_ext = g.unf_ext_0_0_6;
@@ -120,7 +134,7 @@ g: # Get dependencies from patched gems
     xml_simple = g.xml_simple_1_1_1;
     yajl_ruby = g.yajl_ruby_1_1_0;
   };
-  gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
+  gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
   gems = {
     ZenTest_4_9_3 = {
       basename = ''ZenTest'';
@@ -296,27 +310,38 @@ rails support and extra plugins for migrations and fixtures.'';
       requiredGems = [ g.ZenTest_4_9_3 ];
       sha256 = ''1wkb5jayb39yx0i8ly7sibygf9f9c3w24jg2z1qgm135zlb070v4'';
     };
-    aws_sdk_1_15_0 = {
+    aws_sdk_1_16_1 = {
       basename = ''aws_sdk'';
       meta = {
         description = ''AWS SDK for Ruby'';
         homepage = ''http://aws.amazon.com/sdkforruby'';
         longDescription = ''AWS SDK for Ruby'';
       };
-      name = ''aws-sdk-1.15.0'';
+      name = ''aws-sdk-1.16.1'';
       requiredGems = [ g.uuidtools_2_1_4 g.nokogiri_1_5_10 g.json_1_8_0 ];
-      sha256 = ''1lan7sgp7n5r2x2amcqswckdmkymrp89pj92arxdalis9jamma7q'';
+      sha256 = ''1i6njmzfcmjb9xdaqw727pdqr17w3gad1nl5zln4mv6i4x0nbc3n'';
     };
-    bitbucket_backup_0_2_2 = {
+    backports_3_3_3 = {
+      basename = ''backports'';
+      meta = {
+        description = ''Backports of Ruby features for older Ruby.'';
+        homepage = ''http://github.com/marcandre/backports'';
+        longDescription = ''Essential backports that enable many of the nice features of Ruby 1.8.7 up to 2.0.0 for earlier versions.'';
+      };
+      name = ''backports-3.3.3'';
+      requiredGems = [  ];
+      sha256 = ''0y1la483wlv7gam1470shskc0bjsif9hld6qikx165yw9gmbgxsy'';
+    };
+    bitbucket_backup_0_3_0 = {
       basename = ''bitbucket_backup'';
       meta = {
         description = ''A tool to backup Bitbucket repos.'';
         homepage = ''https://bitbucket.org/seth/bitbucket-backup'';
         longDescription = ''A tool to backup Bitbucket repos.'';
       };
-      name = ''bitbucket-backup-0.2.2'';
+      name = ''bitbucket-backup-0.3.0'';
       requiredGems = [ g.highline_1_6_19 g.json_1_8_0 ];
-      sha256 = ''1kzg6pkzw04n96i6mhb74gpg4c899wly5fc2m1y6m2xvn71qksys'';
+      sha256 = ''075bz4bhxim2kh5191qc9kpq7z81aa2smgqq5bfldjqvk70hr87y'';
     };
     builder_3_1_3 = {
       basename = ''builder'';
@@ -404,16 +429,27 @@ for those one-off tasks, with a language that's a joy to use.
       requiredGems = [ g.ffi_1_9_0 ];
       sha256 = ''0jbz2ix7ff9ry8717lhcq9w8j8yd45akw48giwgdqccay5mlph7d'';
     };
-    chronic_0_9_1 = {
+    chronic_0_10_1 = {
       basename = ''chronic'';
       meta = {
         description = ''Natural language date/time parsing.'';
         homepage = ''http://github.com/mojombo/chronic'';
         longDescription = ''Chronic is a natural language date/time parser written in pure Ruby.'';
       };
-      name = ''chronic-0.9.1'';
+      name = ''chronic-0.10.1'';
+      requiredGems = [  ];
+      sha256 = ''0p822hry4njncxpf59nrvjayg2pxk1zh8gykjgsmqrphdkqqmp1w'';
+    };
+    coderay_1_0_9 = {
+      basename = ''coderay'';
+      meta = {
+        description = ''Fast syntax highlighting for selected languages.'';
+        homepage = ''http://coderay.rubychan.de'';
+        longDescription = ''Fast and easy syntax highlighting for selected languages, written in Ruby. Comes with RedCloth integration and LOC counter.'';
+      };
+      name = ''coderay-1.0.9'';
       requiredGems = [  ];
-      sha256 = ''0kspaxpfy7yvyk1lvpx31w852qfj8wb9z04mcj5bzi70ljb9awqk'';
+      sha256 = ''1pbjsvd6r2daxd6aicp19fnb1j5z7fxadflsm1h0r33cy3vi7iy8'';
     };
     daemons_1_1_9 = {
       basename = ''daemons'';
@@ -477,16 +513,16 @@ Suffix List.
       requiredGems = [ g.unf_0_1_2 ];
       sha256 = ''0m57vacj2bmdfp094gjylfzz5gqdpn95pcypk5friab3svrambxv'';
     };
-    dotenv_0_8_0 = {
+    dotenv_0_9_0 = {
       basename = ''dotenv'';
       meta = {
         description = ''Loads environment variables from `.env`.'';
         homepage = ''https://github.com/bkeepers/dotenv'';
         longDescription = ''Loads environment variables from `.env`.'';
       };
-      name = ''dotenv-0.8.0'';
+      name = ''dotenv-0.9.0'';
       requiredGems = [  ];
-      sha256 = ''1l93ksw6szh77yzrsl4pzsg0ryry3j5n9k0xf8614gyl07p9rh51'';
+      sha256 = ''1gl0m6s8d6m72wcm4p86kzzjdihyryi5mh6v70qkqd0dl1gj73l3'';
     };
     em_resolv_replace_1_1_3 = {
       basename = ''em_resolv_replace'';
@@ -521,6 +557,17 @@ Suffix List.
       requiredGems = [  ];
       sha256 = ''1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3'';
     };
+    ethon_0_6_1 = {
+      basename = ''ethon'';
+      meta = {
+        description = ''Libcurl wrapper.'';
+        homepage = ''https://github.com/typhoeus/ethon'';
+        longDescription = ''Very lightweight libcurl wrapper.'';
+      };
+      name = ''ethon-0.6.1'';
+      requiredGems = [ g.ffi_1_9_0 g.mime_types_1_25 ];
+      sha256 = ''05mw10bh4pif0j6pjzyhcsm8kzv7xn94dcjcb15dmbjx2za0daa7'';
+    };
     eventmachine_1_0_3 = {
       basename = ''eventmachine'';
       meta = {
@@ -583,6 +630,17 @@ using TCP/IP, especially if custom protocols are required.'';
       requiredGems = [ g.faraday_0_8_8 ];
       sha256 = ''1n0g8pm7ynx6ffyqhscc1cqw97zhvd8isr31yfyj15335j1jsncz'';
     };
+    faraday_middleware_0_9_0 = {
+      basename = ''faraday_middleware'';
+      meta = {
+        description = ''Various middleware for Faraday'';
+        homepage = ''https://github.com/pengwynn/faraday_middleware'';
+        longDescription = ''Various middleware for Faraday'';
+      };
+      name = ''faraday_middleware-0.9.0'';
+      requiredGems = [ g.faraday_0_8_8 ];
+      sha256 = ''1kwvi2sdxd6j764a7q5iir73dw2v6816zx3l8cgfv0wr2m47icq2'';
+    };
     ffi_1_9_0 = {
       basename = ''ffi'';
       meta = {
@@ -602,7 +660,7 @@ using TCP/IP, especially if custom protocols are required.'';
         longDescription = ''Library to tail files in Ruby'';
       };
       name = ''file-tail-1.0.12'';
-      requiredGems = [ g.tins_0_8_4 ];
+      requiredGems = [ g.tins_0_9_0 ];
       sha256 = ''0mzxxnwj7k5pwxs0rdbmb3b41zgvzw7x40sf3qlkch4zdfx91i1j'';
     };
     foreman_0_63_0 = {
@@ -613,10 +671,10 @@ using TCP/IP, especially if custom protocols are required.'';
         longDescription = ''Process manager for applications with multiple components'';
       };
       name = ''foreman-0.63.0'';
-      requiredGems = [ g.thor_0_18_1 g.dotenv_0_8_0 ];
+      requiredGems = [ g.thor_0_18_1 g.dotenv_0_9_0 ];
       sha256 = ''0yqyjix9jm4iwyc4f3wc32vxr28rpjcw1c9ni5brs4s2a24inzlk'';
     };
-    gettext_2_3_9 = {
+    gettext_3_0_0 = {
       basename = ''gettext'';
       meta = {
         description = ''Gettext is a pure Ruby libary and tools to localize messages.'';
@@ -626,9 +684,20 @@ The catalog file(po-file) is same format with GNU gettext.
 So you can use GNU gettext tools for maintaining.
 '';
       };
-      name = ''gettext-2.3.9'';
-      requiredGems = [ g.locale_2_0_8 g.text_1_2_1 ];
-      sha256 = ''1i4kzkan7mnyr1ihphx0sqs3k4qj9i1ldg4a1cwf5h2fz657wvjj'';
+      name = ''gettext-3.0.0'';
+      requiredGems = [ g.locale_2_0_8 g.text_1_2_3 ];
+      sha256 = ''1qlqd6c39bjn930qh93i40gbz1bs20gzpwvw3d8rxnkls5a6pl1y'';
+    };
+    gh_0_12_0 = {
+      basename = ''gh'';
+      meta = {
+        description = ''layered github client'';
+        homepage = ''http://gh.rkh.im/'';
+        longDescription = ''multi-layer client for the github api v3'';
+      };
+      name = ''gh-0.12.0'';
+      requiredGems = [ g.faraday_0_8_8 g.backports_3_3_3 g.multi_json_1_7_9 g.addressable_2_3_5 g.net_http_persistent_2_9 g.net_http_pipeline_1_0_1 ];
+      sha256 = ''180jmg6rwilzcbzvyg74q27zpr09pv6pw3cfcjxr0bcklv203q3n'';
     };
     highline_1_6_19 = {
       basename = ''highline'';
@@ -779,6 +848,17 @@ For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf'';
       requiredGems = [  ];
       sha256 = ''0kkn5zhiffav2cffj43wwvzj07825r4j463ilfjgik034vnbjs83'';
     };
+    launchy_2_3_0 = {
+      basename = ''launchy'';
+      meta = {
+        description = ''Launchy is helper class for launching cross-platform applications in a fire and forget manner.'';
+        homepage = ''http://github.com/copiousfreetime/launchy'';
+        longDescription = ''Launchy is helper class for launching cross-platform applications in a fire and forget manner. There are application concepts (browser, email client, etc) that are common across all platforms, and they may be launched differently on each platform. Launchy is here to make a common approach to launching external application from within ruby programs.'';
+      };
+      name = ''launchy-2.3.0'';
+      requiredGems = [ g.addressable_2_3_5 ];
+      sha256 = ''0ckvs40f29ancs0ki12pqb94k380cz41b4gbjplm85ly6kd57sph'';
+    };
     locale_2_0_8 = {
       basename = ''locale'';
       meta = {
@@ -821,7 +901,7 @@ For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf'';
         longDescription = ''A really Ruby Mail handler.'';
       };
       name = ''mail-2.5.4'';
-      requiredGems = [ g.mime_types_1_24 g.treetop_1_4_15 ];
+      requiredGems = [ g.mime_types_1_25 g.treetop_1_4_15 ];
       sha256 = ''0z15ksb8blcppchv03g34844f7xgf36ckp484qjj2886ig1qara4'';
     };
     mechanize_2_7_2 = {
@@ -836,17 +916,54 @@ submitted.  Mechanize also keeps track of the sites that you have visited as
 a history.'';
       };
       name = ''mechanize-2.7.2'';
-      requiredGems = [ g.net_http_digest_auth_1_4 g.net_http_persistent_2_9 g.mime_types_1_24 g.http_cookie_1_0_1 g.nokogiri_1_6_0 g.ntlm_http_0_1_1 g.webrobots_0_1_1 g.domain_name_0_5_13 ];
+      requiredGems = [ g.net_http_digest_auth_1_4 g.net_http_persistent_2_9 g.mime_types_1_25 g.http_cookie_1_0_1 g.nokogiri_1_6_0 g.ntlm_http_0_1_1 g.webrobots_0_1_1 g.domain_name_0_5_13 ];
       sha256 = ''1w1rnn6jps1393gywi38saw5iqrvyai3vmvbv2kbc9j0zj5csyrl'';
     };
-    mime_types_1_24 = {
+    method_source_0_8_2 = {
+      basename = ''method_source'';
+      meta = {
+        description = ''retrieve the sourcecode for a method'';
+        homepage = ''http://banisterfiend.wordpress.com'';
+        longDescription = ''retrieve the sourcecode for a method'';
+      };
+      name = ''method_source-0.8.2'';
+      requiredGems = [  ];
+      sha256 = ''1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2'';
+    };
+    mime_types_1_25 = {
       basename = ''mime_types'';
       meta = {
         description = ''This library allows for the identification of a file's likely MIME content type'';
         homepage = ''http://mime-types.rubyforge.org/'';
         longDescription = ''This library allows for the identification of a file's likely MIME content
-type. This is release 1.24, adding and updating a few MIME types and fixing
-some issues with documentation.
+type. This is release 1.25, adding experimental caching and lazy loading
+functionality.
+
+The caching and lazy loading features were initially implemented by Greg
+Brockman (gdb). As these features are experimental, they are disabled by
+default and must be enabled through the use of environment variables. The cache
+is invalidated on a per-version basis; the cache for version 1.25 will not be
+reused for version 1.26.
+
+To use lazy loading, set the environment variable +RUBY_MIME_TYPES_LAZY_LOAD+
+to any value other than 'false'. When using lazy loading, the initial startup
+of MIME::Types is around 12–25× faster than normal startup (on my system,
+normal startup is about 90 ms; lazy startup is about 4 ms). This isn't
+generally useful, however, as the MIME::Types database has not been loaded.
+Lazy startup and load is just *slightly* faster—around 1 ms. The real advantage
+comes from using the cache.
+
+To enable the cache, set the environment variable +RUBY_MIME_TYPES_CACHE+ to a
+filename where MIME::Types will have read-write access. The first time a new
+version of MIME::Types is run using this file, it will be created, taking a
+little longer than normal. Subsequent loads using the same cache file will be
+approximately 3½× faster (25 ms) than normal loads. This can be combined with
++RUBY_MIME_TYPES_LAZY_LOAD+, but this is *not* recommended in a multithreaded
+or multiprocess environment where all threads or processes will be using the
+same cache file.
+
+As the caching interface is still experimental, the only values cached are the
+default MIME::Types database, not any custom MIME::Types added by users.
 
 MIME types are used in MIME-compliant communications, as in e-mail or HTTP
 traffic, to indicate the type of content which is transmitted. MIME::Types
@@ -866,9 +983,9 @@ tracks the {IANA registry}[http://www.iana.org/assignments/media-types/]
 added from the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp]
 and added by the users of MIME::Types.'';
       };
-      name = ''mime-types-1.24'';
+      name = ''mime-types-1.25'';
       requiredGems = [  ];
-      sha256 = ''1g9wmcimvighiyc2pq1qyl3v9420aai86qplyndvvkh7qw78xl9a'';
+      sha256 = ''0hd6hpl05jyx3siznk70z46bmrzwmcyrr24yfaqg6nar35zw8bgf'';
     };
     mini_portile_0_5_1 = {
       basename = ''mini_portile'';
@@ -1014,6 +1131,19 @@ and retry according to RFC 2616.'';
       requiredGems = [  ];
       sha256 = ''0k9bp7q5fsh908jnkwfj71ky04i4ih0ky6sqi5vl6zcpjsczgfcb'';
     };
+    net_http_pipeline_1_0_1 = {
+      basename = ''net_http_pipeline'';
+      meta = {
+        description = ''An HTTP/1.1 pipelining implementation atop Net::HTTP'';
+        homepage = ''http://docs.seattlerb.org/net-http-pipeline'';
+        longDescription = ''An HTTP/1.1 pipelining implementation atop Net::HTTP.  A pipelined connection
+sends multiple requests to the HTTP server without waiting for the responses.
+The server will respond in-order.'';
+      };
+      name = ''net-http-pipeline-1.0.1'';
+      requiredGems = [  ];
+      sha256 = ''0bxjy33yhxwsbnld8xj3zv64ibgfjn9rjpiqkyd5ipmz50pww8v9'';
+    };
     net_sftp_2_0_5 = {
       basename = ''net_sftp'';
       meta = {
@@ -1047,6 +1177,17 @@ and retry according to RFC 2616.'';
       requiredGems = [  ];
       sha256 = ''0vf9w8b9f5ha94nwhvwxyqk4lfpy42ihl1g0qib8dfvswlkqw3mx'';
     };
+    netrc_0_7_7 = {
+      basename = ''netrc'';
+      meta = {
+        description = ''Library to read and write netrc files.'';
+        homepage = ''https://github.com/geemus/netrc'';
+        longDescription = ''This library can read and update netrc files, preserving formatting including comments and whitespace.'';
+      };
+      name = ''netrc-0.7.7'';
+      requiredGems = [  ];
+      sha256 = ''1y64v93hsxdwgx3dfkyzdki3zqd1slm42dmi23v0zy3kap4vpard'';
+    };
     nix_0_1_1 = {
       basename = ''nix'';
       meta = {
@@ -1107,7 +1248,7 @@ enough of it.'';
         longDescription = ''Command-line client for Papertrail hosted log management service. Tails and searches app server logs and system syslog. Supports Boolean search and works with grep and pipe output (Unix).'';
       };
       name = ''papertrail-0.9.7'';
-      requiredGems = [ g.addressable_2_3_5 g.yajl_ruby_1_1_0 g.chronic_0_9_1 g.faraday_0_8_8 g.faraday_middleware_0_8_8 ];
+      requiredGems = [ g.addressable_2_3_5 g.yajl_ruby_1_1_0 g.chronic_0_10_1 g.faraday_0_8_8 g.faraday_middleware_0_8_8 ];
       sha256 = ''0v0m1v0qabbr9pmyl77znz39qy1m7p0xwvf3lf9hyq6n524f2dwr'';
     };
     papertrail_cli_0_9_3 = {
@@ -1145,6 +1286,28 @@ augments 'require' to find and load matching files.'';
       requiredGems = [  ];
       sha256 = ''082zmail2h3cxd9z1wnibhk6aj4sb1f3zzwra6kg9bp51kx2c00v'';
     };
+    pry_0_9_12_2 = {
+      basename = ''pry'';
+      meta = {
+        description = ''An IRB alternative and runtime developer console'';
+        homepage = ''http://pry.github.com'';
+        longDescription = ''An IRB alternative and runtime developer console'';
+      };
+      name = ''pry-0.9.12.2'';
+      requiredGems = [ g.coderay_1_0_9 g.slop_3_4_6 g.method_source_0_8_2 ];
+      sha256 = ''141slzb62zfzdhrygqjmrzh68s3vzrb4mwyipy2lhps5q4b46y9s'';
+    };
+    pusher_client_0_3_1 = {
+      basename = ''pusher_client'';
+      meta = {
+        description = ''Client for consuming WebSockets from http://pusher.com'';
+        homepage = ''http://github.com/pusher/pusher-ruby-client'';
+        longDescription = ''Client for consuming WebSockets from http://pusher.com'';
+      };
+      name = ''pusher-client-0.3.1'';
+      requiredGems = [ g.websocket_1_0_7 g.ruby_hmac_0_4_0 ];
+      sha256 = ''1mxqy960iln065fypk1ww3xgv7q396fpl6v0rp7ipls6aj86j970'';
+    };
     rack_1_5_2 = {
       basename = ''rack'';
       meta = {
@@ -1434,6 +1597,19 @@ in JSDuck.
       requiredGems = [  ];
       sha256 = ''1rna3ii52rlhhca49zigk692hdcmz7qib42i4hhny478k04wx0qg'';
     };
+    ruby_hmac_0_4_0 = {
+      basename = ''ruby_hmac'';
+      meta = {
+        description = ''This module provides common interface to HMAC functionality'';
+        homepage = ''http://ruby-hmac.rubyforge.org'';
+        longDescription = ''This module provides common interface to HMAC functionality. HMAC is a kind of "Message Authentication Code" (MAC) algorithm whose standard is documented in RFC2104. Namely, a MAC provides a way to check the integrity of information transmitted over or stored in an unreliable medium, based on a secret key.
+
+Originally written by Daiki Ueno. Converted to a RubyGem by Geoffrey Grosenbach'';
+      };
+      name = ''ruby-hmac-0.4.0'';
+      requiredGems = [  ];
+      sha256 = ''01zym41f8fqbmxfz8zv19627swi62ka3gp33bfbkc87v5k7mw954'';
+    };
     rubyforge_2_0_4 = {
       basename = ''rubyforge'';
       meta = {
@@ -1477,16 +1653,16 @@ in JSDuck.
       requiredGems = [  ];
       sha256 = ''0anfff4hz8fz1wbimmp9vv4mjfl1swg7ww74j549788x41l4x283'';
     };
-    selenium_webdriver_2_35_0 = {
+    selenium_webdriver_2_35_1 = {
       basename = ''selenium_webdriver'';
       meta = {
         description = ''The next generation developer focused tool for automated testing of webapps'';
         homepage = ''http://selenium.googlecode.com'';
         longDescription = ''WebDriver is a tool for writing automated tests of websites. It aims to mimic the behaviour of a real user, and as such interacts with the HTML of the application.'';
       };
-      name = ''selenium-webdriver-2.35.0'';
+      name = ''selenium-webdriver-2.35.1'';
       requiredGems = [ g.multi_json_1_7_9 g.rubyzip_0_9_9 g.childprocess_0_3_9 g.websocket_1_0_7 ];
-      sha256 = ''1y9p7njw26j571mhnvqrh0hvszx78kfci4d7qps38l32zid5qa7m'';
+      sha256 = ''0251nbh6kbb96dv21n6fgbnw31p5gqr7anvhl8phrar5ylircqj6'';
     };
     servolux_0_10_0 = {
       basename = ''servolux'';
@@ -1513,6 +1689,17 @@ interpreters.'';
       requiredGems = [ g.rack_1_5_2 g.rack_protection_1_5_0 g.tilt_1_4_1 ];
       sha256 = ''05blf915zpiwyz7agcn9rwdmddwxz0z4l3gd4qlqmrgd2vkw4sxc'';
     };
+    slop_3_4_6 = {
+      basename = ''slop'';
+      meta = {
+        description = ''Simple Lightweight Option Parsing'';
+        homepage = ''http://github.com/injekt/slop'';
+        longDescription = ''A simple DSL for gathering options and parsing the command line'';
+      };
+      name = ''slop-3.4.6'';
+      requiredGems = [  ];
+      sha256 = ''0fdp3nkljjs2d5yhgjzcqi0f6xq67byfbrayg5aj7r76rsw0hmal'';
+    };
     sprockets_2_10_0 = {
       basename = ''sprockets'';
       meta = {
@@ -1584,19 +1771,19 @@ management.
         longDescription = ''This library uses ANSI escape sequences to control the attributes of terminal output'';
       };
       name = ''term-ansicolor-1.2.2'';
-      requiredGems = [ g.tins_0_8_4 ];
+      requiredGems = [ g.tins_0_9_0 ];
       sha256 = ''1b41q1q6mqcgzq9fhzhmjvfg5sfs5v7gkb8z57r4hajcp89lflxr'';
     };
-    text_1_2_1 = {
+    text_1_2_3 = {
       basename = ''text'';
       meta = {
         description = ''A collection of text algorithms'';
         homepage = ''http://github.com/threedaymonk/text'';
         longDescription = ''A collection of text algorithms: Levenshtein, Soundex, Metaphone, Double Metaphone, Porter Stemming'';
       };
-      name = ''text-1.2.1'';
+      name = ''text-1.2.3'';
       requiredGems = [  ];
-      sha256 = ''0s186kh125imdr7dahr10payc1gmxgk6wjy1v3agdyvl53yn5z3z'';
+      sha256 = ''14p1b3m7sxjs4ckjnd1whz82hkv0cj08j3rpkvcbavwbm07zpsd0'';
     };
     thin_1_5_1 = {
       basename = ''thin'';
@@ -1642,16 +1829,27 @@ management.
       requiredGems = [  ];
       sha256 = ''00sr3yy7sbqaq7cb2d2kpycajxqf1b1wr1yy33z4bnzmqii0b0ir'';
     };
-    tins_0_8_4 = {
+    tins_0_9_0 = {
       basename = ''tins'';
       meta = {
         description = ''Useful stuff.'';
         homepage = ''http://flori.github.com/tins'';
         longDescription = ''All the stuff that isn't good/big enough for a real library.'';
       };
-      name = ''tins-0.8.4'';
+      name = ''tins-0.9.0'';
       requiredGems = [  ];
-      sha256 = ''1j1mkxh9m4qkhgyl9naxd2gxv03c6svbwcm7vl8c2s9p4gfg0x7s'';
+      sha256 = ''17147yzxhbcby9ycswai6sgc9cxdlbfa897amjsimkyqv1lh9pbc'';
+    };
+    travis_1_5_3 = {
+      basename = ''travis'';
+      meta = {
+        description = ''Travis CI client'';
+        homepage = ''https://github.com/travis-ci/travis'';
+        longDescription = ''CLI and Ruby client library for Travis CI'';
+      };
+      name = ''travis-1.5.3'';
+      requiredGems = [ g.faraday_0_8_8 g.faraday_middleware_0_9_0 g.highline_1_6_19 g.netrc_0_7_7 g.backports_3_3_3 g.gh_0_12_0 g.launchy_2_3_0 g.pry_0_9_12_2 g.typhoeus_0_6_5 g.pusher_client_0_3_1 ];
+      sha256 = ''052kqfd0280ar9ci9vplihbc4a69l06m8chfrriygvjxc14npx97'';
     };
     treetop_1_4_15 = {
       basename = ''treetop'';
@@ -1678,6 +1876,17 @@ specify.'';
       requiredGems = [  ];
       sha256 = ''0iz5k7ax7a5jm9x6p81k6f4mgp48wxxb0j55ypnwxnznih8fsghz'';
     };
+    typhoeus_0_6_5 = {
+      basename = ''typhoeus'';
+      meta = {
+        description = ''Parallel HTTP library on top of libcurl multi.'';
+        homepage = ''https://github.com/typhoeus/typhoeus'';
+        longDescription = ''Like a modern code version of the mythical beast with 100 serpent heads, Typhoeus runs HTTP requests in parallel while cleanly encapsulating handling logic.'';
+      };
+      name = ''typhoeus-0.6.5'';
+      requiredGems = [ g.ethon_0_6_1 ];
+      sha256 = ''13xwy86iv98ypagrb6d95k1xf6yllnfqnh4ipfqix87npirjaxji'';
+    };
     tzinfo_0_3_37 = {
       basename = ''tzinfo'';
       meta = {
diff --git a/pkgs/development/interpreters/ruby/patches.nix b/pkgs/development/interpreters/ruby/patches.nix
index e236a71b5542..7c80cdfe0653 100644
--- a/pkgs/development/interpreters/ruby/patches.nix
+++ b/pkgs/development/interpreters/ruby/patches.nix
@@ -116,4 +116,12 @@ in
     extraWrapperFlags = "--prefix RUBYLIB : .";
   };
   
+  pry = { gemFlags = "--no-ri --no-rdoc"; };
+
+  fakes3 = {
+    postInstall = ''
+      cd $out/${ruby.gemPath}/gems/*
+      patch -Np1 -i ${../../ruby-modules/fake-s3-list-bucket.patch}
+    '';
+  };
 }
diff --git a/pkgs/development/libraries/aspell/dictionaries.nix b/pkgs/development/libraries/aspell/dictionaries.nix
index 131da4112e8f..0f27705160fb 100644
--- a/pkgs/development/libraries/aspell/dictionaries.nix
+++ b/pkgs/development/libraries/aspell/dictionaries.nix
@@ -28,6 +28,15 @@ let
 
 in {
 
+  cs = buildDict {
+    shortName = "cs-20040614-1";
+    fullName = "Czech";
+    src = fetchurl {
+      url = mirror://gnu/aspell/dict/cs/aspell6-cs-20040614-1.tar.bz2;
+      sha256 = "0rihj4hsw96pd9casvmpvw3r8040pfa28p1h73x4vyn20zwr3h01";
+    };
+  };
+
   de = buildDict {
     shortName = "de-20030222-1";
     fullName = "German";
@@ -91,6 +100,15 @@ in {
     };
   };
 
+  nb = buildDict {
+    shortName = "nb-0.50.1-0";
+    fullName = "Norwegian Bokmal";
+    src = fetchurl {
+      url = "mirror://gnu/aspell/dict/nb/aspell-nb-0.50.1-0.tar.bz2";
+      sha256 = "12i2bmgdnlkzfinb20j2a0j4a20q91a9j8qpq5vgabbvc65nwx77";
+    };
+  };
+
   nl = buildDict {
     shortName = "nl-0.50-2";
     fullName = "Dutch";
@@ -104,6 +122,15 @@ in {
     '';
   };
 
+  nn = buildDict {
+    shortName = "nn-0.50.1-0";
+    fullName = "Norwegian Nynorsk";
+    src = fetchurl {
+      url = "mirror://gnu/aspell/dict/nn/aspell-nn-0.50.1-1.tar.bz2";
+      sha256 = "0w2k5l5rbqpliripgqwiqixz5ghnjf7i9ggbrc4ly4vy1ia10rmc";
+    };
+  };
+
   pl = buildDict {
     shortName = "pl-6.0_20061121-0";
     fullName = "Polish";
@@ -122,4 +149,13 @@ in {
     };
   };
 
+  sv = buildDict {
+    shortName = "sv-0.51-0";
+    fullName = "Swedish";
+    src = fetchurl {
+      url = mirror://gnu/aspell/dict/sv/aspell-sv-0.51-0.tar.bz2;
+      sha256 = "02jwkjhr32kvyibnyzgx3smbnm576jwdzg3avdf6zxwckhy5fw4v";
+    };
+  };
+
 }
diff --git a/pkgs/development/libraries/cogl/default.nix b/pkgs/development/libraries/cogl/default.nix
index b697ed87edc4..9c3a1a4d6747 100644
--- a/pkgs/development/libraries/cogl/default.nix
+++ b/pkgs/development/libraries/cogl/default.nix
@@ -1,6 +1,6 @@
-{ stdenv, fetchurl, pkgconfig, mesa, glib, gdk_pixbuf
-, pangoSupport ? true, pango, cairo
-, libXfixes, libXcomposite, libXdamage }:
+{ stdenv, fetchurl, pkgconfig, mesa, glib, gdk_pixbuf, libXfixes, libXcomposite
+, libXdamage, libintlOrEmpty
+, pangoSupport ? true, pango, cairo }:
 
 stdenv.mkDerivation rec {
   name = "cogl-1.8.2";
@@ -13,19 +13,28 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ pkgconfig ];
 
   propagatedBuildInputs =
-    [ mesa glib gdk_pixbuf libXfixes libXcomposite libXdamage ];
+    [ mesa glib gdk_pixbuf libXfixes libXcomposite libXdamage ]
+    ++ libintlOrEmpty;
 
   buildInputs = stdenv.lib.optionals pangoSupport [ pango cairo ];
 
-  meta = {
+  COGL_PANGO_DEP_CFLAGS
+    = stdenv.lib.optionalString (stdenv.isDarwin && pangoSupport)
+      "-I${pango}/include/pango-1.0 -I${cairo}/include/cairo";
+
+  NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
+
+  meta = with stdenv.lib; {
     description = "A small open source library for using 3D graphics hardware for rendering";
-    longDescription =
-      ''
-        Cogl is a small open source library for using 3D graphics hardware for
-        rendering. The API departs from the flat state machine style of OpenGL
-        and is designed to make it easy to write orthogonal components that can
-        render without stepping on each others toes.
-      '';
+    maintainers = with maintainers; [ lovek323 ];
+
+    longDescription = ''
+      Cogl is a small open source library for using 3D graphics hardware for
+      rendering. The API departs from the flat state machine style of OpenGL
+      and is designed to make it easy to write orthogonal components that can
+      render without stepping on each other's toes.
+    '';
+
     inherit (glib.meta) platforms;
   };
 }
diff --git a/pkgs/development/libraries/gsoap/default.nix b/pkgs/development/libraries/gsoap/default.nix
index 4d661d4088f3..d1140319611d 100644
--- a/pkgs/development/libraries/gsoap/default.nix
+++ b/pkgs/development/libraries/gsoap/default.nix
@@ -1,19 +1,32 @@
-{ stdenv, fetchurl, m4, bison, flex, openssl, zlib }:
+{ stdenv, fetchurl, unzip, m4, bison, flex, openssl, zlib }:
 
-let version = "2.7.15"; in
-
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
   name = "gsoap-${version}";
+  version = "2.8.16";
 
   src = fetchurl {
-    url = "mirror://sourceforge/gsoap2/files/gSOAP/2.7.15%20stable/gsoap_${version}.tar.gz";
-    sha256 = "3ed883ab1a3d32b5bb2bf599306f247f6de3ffedd8890eb0e6303ae15995dc12";
+    url = "mirror://sourceforge/project/gsoap2/gSOAP/gsoap_${version}.zip";
+    sha256 = "00lhhysa9f9ychkvn1ij0ngr54l1dl9ww801yrliwq5c05gql7a6";
   };
 
-  buildInputs = [ m4 bison flex openssl zlib ];
-  meta = {
+  buildInputs = [ unzip m4 bison flex openssl zlib ];
+
+  meta = with stdenv.lib; {
+    description = "C/C++ toolkit for SOAP web services and XML-based applications";
     homepage = "http://www.cs.fsu.edu/~engelen/soap.html";
-    description = "The gSOAP toolkit is an open source C and C++ software development toolkit for SOAP/WSDL and XML Web services.";
-    license = "free-non-copyleft";
+    # gsoap is dual/triple licensed (see homepage for details):
+    # 1. gSOAP Public License 1.3 (based on Mozilla Public License 1.1).
+    #    Components NOT covered by the gSOAP Public License are:
+    #     - wsdl2h tool and its source code output,
+    #     - soapcpp2 tool and its source code output,
+    #     - UDDI code,
+    #     - the webserver example code in gsoap/samples/webserver,
+    #     - and several example applications in the gsoap/samples directory.
+    # 2. GPLv2 covers all of the software
+    # 3. Proprietary commercial software development license (removes GPL
+    #    restrictions)
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
   };
 }
diff --git a/pkgs/development/libraries/haskell/Cabal/1.18.0.nix b/pkgs/development/libraries/haskell/Cabal/1.18.0.nix
new file mode 100644
index 000000000000..6e0d3074bdb3
--- /dev/null
+++ b/pkgs/development/libraries/haskell/Cabal/1.18.0.nix
@@ -0,0 +1,26 @@
+{ cabal, deepseq, extensibleExceptions, filepath, HUnit, QuickCheck
+, regexPosix, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, time
+}:
+
+cabal.mkDerivation (self: {
+  pname = "Cabal";
+  version = "1.18.0";
+  sha256 = "1nxvkfkjkyxsa4nbrwl59r84j63qh2qx4cbd3vnr6vvdnflbix8f";
+  buildDepends = [ deepseq filepath time ];
+  testDepends = [
+    extensibleExceptions filepath HUnit QuickCheck regexPosix
+    testFramework testFrameworkHunit testFrameworkQuickcheck2
+  ];
+  doCheck = false;
+  meta = {
+    homepage = "http://www.haskell.org/cabal/";
+    description = "A framework for packaging Haskell software";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [
+      self.stdenv.lib.maintainers.andres
+      self.stdenv.lib.maintainers.simons
+    ];
+  };
+})
diff --git a/pkgs/development/libraries/haskell/Chart-cairo/default.nix b/pkgs/development/libraries/haskell/Chart-cairo/default.nix
new file mode 100644
index 000000000000..99ab741be492
--- /dev/null
+++ b/pkgs/development/libraries/haskell/Chart-cairo/default.nix
@@ -0,0 +1,18 @@
+{ cabal, cairo, Chart, colour, dataDefaultClass, mtl, operational
+, time
+}:
+
+cabal.mkDerivation (self: {
+  pname = "Chart-cairo";
+  version = "1.0";
+  sha256 = "0z5qhsq9v5sd32d18gl09svxic8n6s65v4nyq04zcp76219mhp55";
+  buildDepends = [
+    cairo Chart colour dataDefaultClass mtl operational time
+  ];
+  meta = {
+    homepage = "https://github.com/timbod7/haskell-chart/wiki";
+    description = "Cairo backend for Charts";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/Chart-gtk/default.nix b/pkgs/development/libraries/haskell/Chart-gtk/default.nix
index dd6c54cf6b89..d97fdc21f035 100644
--- a/pkgs/development/libraries/haskell/Chart-gtk/default.nix
+++ b/pkgs/development/libraries/haskell/Chart-gtk/default.nix
@@ -1,14 +1,10 @@
-{ cabal, cairo, Chart, colour, dataAccessor, dataAccessorTemplate
-, gtk, mtl, time
-}:
+{ cabal, cairo, Chart, ChartCairo, colour, gtk, mtl, time }:
 
 cabal.mkDerivation (self: {
   pname = "Chart-gtk";
-  version = "0.17";
-  sha256 = "1i411kdpz75azyhfaryazr0bpij5xcl0y82m9a7k23w8mhybqwc7";
-  buildDepends = [
-    cairo Chart colour dataAccessor dataAccessorTemplate gtk mtl time
-  ];
+  version = "1.0";
+  sha256 = "06i53922hdc7dvh2a76ccvwrwfhvhji0ya8j4f2lddg5zckvp3yj";
+  buildDepends = [ cairo Chart ChartCairo colour gtk mtl time ];
   meta = {
     homepage = "https://github.com/timbod7/haskell-chart/wiki";
     description = "Utility functions for using the chart library with GTK";
diff --git a/pkgs/development/libraries/haskell/Chart/default.nix b/pkgs/development/libraries/haskell/Chart/default.nix
index dafa834e4d43..0d9dd690758e 100644
--- a/pkgs/development/libraries/haskell/Chart/default.nix
+++ b/pkgs/development/libraries/haskell/Chart/default.nix
@@ -1,13 +1,11 @@
-{ cabal, cairo, colour, dataAccessor, dataAccessorTemplate, mtl
-, time
-}:
+{ cabal, colour, dataDefaultClass, lens, mtl, operational, time }:
 
 cabal.mkDerivation (self: {
   pname = "Chart";
-  version = "0.17";
-  sha256 = "1ip1a61ryypwfzj6dc6n6pl92rflf7lqf1760ppjyg05q5pn6qxg";
+  version = "1.0";
+  sha256 = "137njda84vxrj3pk12bmkf11wh8fj89nxpz067wrycrgw9xy5rd3";
   buildDepends = [
-    cairo colour dataAccessor dataAccessorTemplate mtl time
+    colour dataDefaultClass lens mtl operational time
   ];
   meta = {
     homepage = "https://github.com/timbod7/haskell-chart/wiki";
diff --git a/pkgs/development/libraries/haskell/HsOpenSSL/default.nix b/pkgs/development/libraries/haskell/HsOpenSSL/default.nix
index 9eefaaef84a0..8df2209ffbf7 100644
--- a/pkgs/development/libraries/haskell/HsOpenSSL/default.nix
+++ b/pkgs/development/libraries/haskell/HsOpenSSL/default.nix
@@ -2,13 +2,13 @@
 
 cabal.mkDerivation (self: {
   pname = "HsOpenSSL";
-  version = "0.10.3.3";
-  sha256 = "04d2nd2hcbglw8blwhi3d32vazdxnvs9s52788qyllgm7gmay6a5";
+  version = "0.10.3.4";
+  sha256 = "1xgnzivphnzb4yf31406yg5fjycrfypwrlxi2s8lfzgja8m1l7h5";
   buildDepends = [ network time ];
   extraLibraries = [ openssl ];
   meta = {
     homepage = "https://github.com/phonohawk/HsOpenSSL";
-    description = "(Incomplete) OpenSSL binding for Haskell";
+    description = "Partial OpenSSL binding for Haskell";
     license = self.stdenv.lib.licenses.publicDomain;
     platforms = self.ghc.meta.platforms;
     maintainers = [ self.stdenv.lib.maintainers.andres ];
diff --git a/pkgs/development/libraries/haskell/Strafunski-StrategyLib/default.nix b/pkgs/development/libraries/haskell/Strafunski-StrategyLib/default.nix
new file mode 100644
index 000000000000..b7b8b6336e65
--- /dev/null
+++ b/pkgs/development/libraries/haskell/Strafunski-StrategyLib/default.nix
@@ -0,0 +1,13 @@
+{ cabal, mtl, syb }:
+
+cabal.mkDerivation (self: {
+  pname = "Strafunski-StrategyLib";
+  version = "5.0.0.3";
+  sha256 = "1s7410dfzkqd9j8n5g92pvh9rwglngj3ca9ipcr6xsq0n6yhs51y";
+  buildDepends = [ mtl syb ];
+  meta = {
+    description = "Library for strategic programming";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
index 53f1514bcb6d..bc428ab1dc45 100644
--- a/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
+++ b/pkgs/development/libraries/haskell/accelerate-cuda/default.nix
@@ -12,6 +12,7 @@ cabal.mkDerivation (self: {
     hashtables languageCQuote mainlandPretty mtl SafeSemaphore srcloc
     text transformers unorderedContainers
   ];
+  jailbreak = true;
   meta = {
     homepage = "https://github.com/AccelerateHS/accelerate-cuda/";
     description = "Accelerate backend for NVIDIA GPUs";
diff --git a/pkgs/development/libraries/haskell/aeson/default.nix b/pkgs/development/libraries/haskell/aeson/default.nix
index 3c4135feb724..bcb202c64d07 100644
--- a/pkgs/development/libraries/haskell/aeson/default.nix
+++ b/pkgs/development/libraries/haskell/aeson/default.nix
@@ -5,15 +5,15 @@
 
 cabal.mkDerivation (self: {
   pname = "aeson";
-  version = "0.6.1.0";
-  sha256 = "16hjwcybmgmk1sg8x02r9bxisx4gl61rlq8w2zsxfgkxwjpfhkbx";
+  version = "0.6.2.0";
+  sha256 = "1f7bzgwl9pm5a79gr3a8wxh7dyz4k2508d0bw4l0mbjgv6r7s4an";
   buildDepends = [
     attoparsec blazeBuilder deepseq dlist hashable mtl syb text time
     unorderedContainers vector
   ];
   testDepends = [
     attoparsec QuickCheck testFramework testFrameworkQuickcheck2 text
-    time
+    time unorderedContainers vector
   ];
   doCheck = false;
   meta = {
diff --git a/pkgs/development/libraries/haskell/bindings-DSL/default.nix b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
index 9d6e8d1a04d5..d333a2877497 100644
--- a/pkgs/development/libraries/haskell/bindings-DSL/default.nix
+++ b/pkgs/development/libraries/haskell/bindings-DSL/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "bindings-DSL";
-  version = "1.0.16";
-  sha256 = "1sly88585f94dsnhyw6nagnr4jfjixnn61my85x05987flf325px";
+  version = "1.0.17";
+  sha256 = "1203n6wzdp21hd7zdhvhppxhkz4xr3qykwkb8j5mb2s4kijx01bn";
   meta = {
     homepage = "http://bitbucket.org/mauricio/bindings-dsl";
     description = "FFI domain specific language, on top of hsc2hs";
diff --git a/pkgs/development/libraries/haskell/case-insensitive/1.1.nix b/pkgs/development/libraries/haskell/case-insensitive/1.1.nix
new file mode 100644
index 000000000000..fb3a9d271011
--- /dev/null
+++ b/pkgs/development/libraries/haskell/case-insensitive/1.1.nix
@@ -0,0 +1,17 @@
+{ cabal, deepseq, hashable, HUnit, testFramework
+, testFrameworkHunit, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "case-insensitive";
+  version = "1.1";
+  sha256 = "1likcqdlhbbk78s887n5g9a4jjxxyh46hj4wc7l7snf6f9ygd5lj";
+  buildDepends = [ deepseq hashable text ];
+  testDepends = [ HUnit testFramework testFrameworkHunit text ];
+  meta = {
+    homepage = "https://github.com/basvandijk/case-insensitive";
+    description = "Case insensitive string comparison";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cipher-aes/default.nix b/pkgs/development/libraries/haskell/cipher-aes/default.nix
index e27f203306e2..5fc5905ebb92 100644
--- a/pkgs/development/libraries/haskell/cipher-aes/default.nix
+++ b/pkgs/development/libraries/haskell/cipher-aes/default.nix
@@ -1,11 +1,15 @@
-{ cabal, QuickCheck, testFramework, testFrameworkQuickcheck2 }:
+{ cabal, byteable, cryptoCipherTests, cryptoCipherTypes, QuickCheck
+, securemem, testFramework, testFrameworkQuickcheck2
+}:
 
 cabal.mkDerivation (self: {
   pname = "cipher-aes";
-  version = "0.1.8";
-  sha256 = "171mj9abm0x9bg6mf225mhb25i7xh4v5la5866llb1qrrpvsk1xf";
+  version = "0.2.5";
+  sha256 = "1ayypdfn2nnxp595dpyivmzw2jc4iyjz2in3z7ldccx36gn5j6b3";
+  buildDepends = [ byteable cryptoCipherTypes securemem ];
   testDepends = [
-    QuickCheck testFramework testFrameworkQuickcheck2
+    byteable cryptoCipherTests cryptoCipherTypes QuickCheck
+    testFramework testFrameworkQuickcheck2
   ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-cipher-aes";
diff --git a/pkgs/development/libraries/haskell/cipher-blowfish/default.nix b/pkgs/development/libraries/haskell/cipher-blowfish/default.nix
new file mode 100644
index 000000000000..af8114c6d028
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cipher-blowfish/default.nix
@@ -0,0 +1,20 @@
+{ cabal, byteable, cryptoCipherTests, cryptoCipherTypes, QuickCheck
+, securemem, testFramework, testFrameworkQuickcheck2, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cipher-blowfish";
+  version = "0.0.1";
+  sha256 = "0bz8jd65idcalyzcbmgz16hr6y5mnw7mckk5yvrm9k19cr6mwq52";
+  buildDepends = [ byteable cryptoCipherTypes securemem vector ];
+  testDepends = [
+    byteable cryptoCipherTests cryptoCipherTypes QuickCheck
+    testFramework testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "http://github.com/vincenthz/hs-crypto-cipher";
+    description = "Blowfish cipher";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cipher-camellia/default.nix b/pkgs/development/libraries/haskell/cipher-camellia/default.nix
new file mode 100644
index 000000000000..6d29792ea337
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cipher-camellia/default.nix
@@ -0,0 +1,20 @@
+{ cabal, byteable, cryptoCipherTests, cryptoCipherTypes, QuickCheck
+, securemem, testFramework, testFrameworkQuickcheck2, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cipher-camellia";
+  version = "0.0.1";
+  sha256 = "11narl4h77v7317hdqy8zxhym3k7xrmw97yfwh0vr8k1y5dkiqh3";
+  buildDepends = [ byteable cryptoCipherTypes securemem vector ];
+  testDepends = [
+    byteable cryptoCipherTests cryptoCipherTypes QuickCheck
+    testFramework testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "http://github.com/vincenthz/hs-crypto-cipher";
+    description = "Camellia block cipher primitives";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cipher-des/default.nix b/pkgs/development/libraries/haskell/cipher-des/default.nix
new file mode 100644
index 000000000000..588a28f3a258
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cipher-des/default.nix
@@ -0,0 +1,20 @@
+{ cabal, byteable, cryptoCipherTests, cryptoCipherTypes, QuickCheck
+, securemem, testFramework, testFrameworkQuickcheck2
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cipher-des";
+  version = "0.0.3";
+  sha256 = "1gcpwfxrlgwl34yy7k3vhpmcrmyiirbmz40zssk2lv6cfrylc4z7";
+  buildDepends = [ byteable cryptoCipherTypes securemem ];
+  testDepends = [
+    byteable cryptoCipherTests cryptoCipherTypes QuickCheck
+    testFramework testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "http://github.com/vincenthz/hs-crypto-cipher";
+    description = "DES and 3DES primitives";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/clientsession/default.nix b/pkgs/development/libraries/haskell/clientsession/default.nix
index 6cb8d26bd39a..00df46640e15 100644
--- a/pkgs/development/libraries/haskell/clientsession/default.nix
+++ b/pkgs/development/libraries/haskell/clientsession/default.nix
@@ -1,14 +1,15 @@
 { cabal, base64Bytestring, cereal, cipherAes, cprngAes, cryptoApi
-, entropy, hspec, HUnit, QuickCheck, skein, tagged, transformers
+, cryptoRandom, entropy, hspec, HUnit, QuickCheck, skein, tagged
+, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "clientsession";
-  version = "0.9.0.2";
-  sha256 = "0vl310nickavp8wkaad1wfnvm8gfsg9jcfw3rgjz7698avynv3ni";
+  version = "0.9.0.3";
+  sha256 = "0w7mkyrd8gx5d6mcqprn7ll05414vm2j5fbyi6pj9cxd2m4qc9b1";
   buildDepends = [
-    base64Bytestring cereal cipherAes cprngAes cryptoApi entropy skein
-    tagged
+    base64Bytestring cereal cipherAes cprngAes cryptoApi cryptoRandom
+    entropy skein tagged
   ];
   testDepends = [ cereal hspec HUnit QuickCheck transformers ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/cmdtheline/default.nix b/pkgs/development/libraries/haskell/cmdtheline/default.nix
new file mode 100644
index 000000000000..c49093f68596
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cmdtheline/default.nix
@@ -0,0 +1,19 @@
+{ cabal, filepath, HUnit, parsec, testFramework, testFrameworkHunit
+, transformers
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cmdtheline";
+  version = "0.2.3";
+  sha256 = "1jwbr34xgccjbz6nm58bdsg1vqyv87rh45yia5j36vlfbaclyb04";
+  buildDepends = [ filepath parsec transformers ];
+  testDepends = [
+    filepath HUnit parsec testFramework testFrameworkHunit transformers
+  ];
+  meta = {
+    homepage = "http://github.com/eli-frey/cmdtheline";
+    description = "Declarative command-line option parsing and documentation library";
+    license = self.stdenv.lib.licenses.mit;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cprng-aes/default.nix b/pkgs/development/libraries/haskell/cprng-aes/default.nix
index 4f2aa58b7d29..fb6d2ff456b8 100644
--- a/pkgs/development/libraries/haskell/cprng-aes/default.nix
+++ b/pkgs/development/libraries/haskell/cprng-aes/default.nix
@@ -1,12 +1,10 @@
-{ cabal, cipherAes, cryptoApi, cryptoRandomApi, entropy, random }:
+{ cabal, byteable, cipherAes, cryptoRandom, random }:
 
 cabal.mkDerivation (self: {
   pname = "cprng-aes";
-  version = "0.3.4";
-  sha256 = "0k1zh4nw30qgdrkgn6x6zfbpp129f9cparzyqsdqfbf44j0mf2rw";
-  buildDepends = [
-    cipherAes cryptoApi cryptoRandomApi entropy random
-  ];
+  version = "0.5.1";
+  sha256 = "1bw76y2krcshimvwzph76d69bdfaxfi21w4dxfslmqm78knlls47";
+  buildDepends = [ byteable cipherAes cryptoRandom random ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-cprng-aes";
     description = "Crypto Pseudo Random Number Generator using AES in counter mode";
diff --git a/pkgs/development/libraries/haskell/crypto-numbers/default.nix b/pkgs/development/libraries/haskell/crypto-numbers/default.nix
index af6985cd9ede..eba1b906d5b9 100644
--- a/pkgs/development/libraries/haskell/crypto-numbers/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-numbers/default.nix
@@ -1,15 +1,15 @@
-{ cabal, cryptoRandomApi, HUnit, QuickCheck, testFramework
+{ cabal, byteable, cryptoRandom, HUnit, QuickCheck, testFramework
 , testFrameworkHunit, testFrameworkQuickcheck2, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "crypto-numbers";
-  version = "0.1.3";
-  sha256 = "115lgnay3ly5r53flh3v5jygqks0rg1i8qmbvrqf9nkmnmw6a5x1";
-  buildDepends = [ cryptoRandomApi vector ];
+  version = "0.2.0";
+  sha256 = "1s4q9qqb7qb0shaxmhhxixsnhgwn2h6nxxblkfqqqvkdiwis278j";
+  buildDepends = [ cryptoRandom vector ];
   testDepends = [
-    cryptoRandomApi HUnit QuickCheck testFramework testFrameworkHunit
-    testFrameworkQuickcheck2 vector
+    byteable cryptoRandom HUnit QuickCheck testFramework
+    testFrameworkHunit testFrameworkQuickcheck2 vector
   ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-crypto-numbers";
diff --git a/pkgs/development/libraries/haskell/crypto-pubkey/default.nix b/pkgs/development/libraries/haskell/crypto-pubkey/default.nix
index 47e8dc179ae3..a4f98e5a2a1a 100644
--- a/pkgs/development/libraries/haskell/crypto-pubkey/default.nix
+++ b/pkgs/development/libraries/haskell/crypto-pubkey/default.nix
@@ -1,17 +1,17 @@
-{ cabal, cryptohash, cryptoNumbers, cryptoPubkeyTypes
-, cryptoRandomApi, HUnit, QuickCheck, testFramework
+{ cabal, byteable, cryptohash, cryptoNumbers, cryptoPubkeyTypes
+, cryptoRandom, HUnit, QuickCheck, testFramework
 , testFrameworkHunit, testFrameworkQuickcheck2
 }:
 
 cabal.mkDerivation (self: {
   pname = "crypto-pubkey";
-  version = "0.1.4";
-  sha256 = "13ah3ip6gdv7b1zz5qwi7515a3k8pp3l0jr1kq4q2a0vqy24gkn1";
+  version = "0.2.1";
+  sha256 = "06cb2h9c3r1ycgcw7scc191gbr86qi8pxil07207n5fccq3vpjys";
   buildDepends = [
-    cryptohash cryptoNumbers cryptoPubkeyTypes cryptoRandomApi
+    byteable cryptohash cryptoNumbers cryptoPubkeyTypes cryptoRandom
   ];
   testDepends = [
-    cryptohash cryptoNumbers cryptoRandomApi HUnit QuickCheck
+    byteable cryptohash cryptoNumbers cryptoRandom HUnit QuickCheck
     testFramework testFrameworkHunit testFrameworkQuickcheck2
   ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/crypto-random/default.nix b/pkgs/development/libraries/haskell/crypto-random/default.nix
new file mode 100644
index 000000000000..583e9e5805b3
--- /dev/null
+++ b/pkgs/development/libraries/haskell/crypto-random/default.nix
@@ -0,0 +1,14 @@
+{ cabal, securemem, vector }:
+
+cabal.mkDerivation (self: {
+  pname = "crypto-random";
+  version = "0.0.5";
+  sha256 = "1wvbbqqfqaylq9w8pyiz243d06ivh982mhb2ci5yhjl06vqv2gk3";
+  buildDepends = [ securemem vector ];
+  meta = {
+    homepage = "http://github.com/vincenthz/hs-crypto-random";
+    description = "Simple cryptographic random related types";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cryptocipher/default.nix b/pkgs/development/libraries/haskell/cryptocipher/default.nix
index 0f99ccdfe389..57d0e2483f86 100644
--- a/pkgs/development/libraries/haskell/cryptocipher/default.nix
+++ b/pkgs/development/libraries/haskell/cryptocipher/default.nix
@@ -1,20 +1,14 @@
-{ cabal, cereal, cipherAes, cipherRc4, cpu, cryptoApi, cryptohash
-, entropy, primitive, QuickCheck, testFramework
-, testFrameworkQuickcheck2, vector
+{ cabal, cipherAes, cipherBlowfish, cipherCamellia, cipherDes
+, cipherRc4, cryptoCipherTypes
 }:
 
 cabal.mkDerivation (self: {
   pname = "cryptocipher";
-  version = "0.5.2";
-  sha256 = "0ffd3w2hvi1zbhgk0xvgbnlfzzwijbrs5b9b4g2vc5p69wkv24zr";
-  isLibrary = true;
-  isExecutable = true;
+  version = "0.6.1";
+  sha256 = "1qa0s7mr1a3nv4ppyk8wr57rxbfc2qpw9rq26pfziwnpin5k2j3x";
   buildDepends = [
-    cereal cipherAes cipherRc4 cpu cryptoApi primitive vector
-  ];
-  testDepends = [
-    cryptoApi cryptohash entropy QuickCheck testFramework
-    testFrameworkQuickcheck2 vector
+    cipherAes cipherBlowfish cipherCamellia cipherDes cipherRc4
+    cryptoCipherTypes
   ];
   meta = {
     homepage = "http://github.com/vincenthz/hs-crypto-cipher";
diff --git a/pkgs/development/libraries/haskell/cryptohash/default.nix b/pkgs/development/libraries/haskell/cryptohash/default.nix
index 03fee5bac928..d598b3639339 100644
--- a/pkgs/development/libraries/haskell/cryptohash/default.nix
+++ b/pkgs/development/libraries/haskell/cryptohash/default.nix
@@ -1,12 +1,12 @@
-{ cabal, byteable, cereal, cryptoApi, HUnit, QuickCheck, tagged
-, testFramework, testFrameworkHunit, testFrameworkQuickcheck2
+{ cabal, byteable, HUnit, QuickCheck, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2
 }:
 
 cabal.mkDerivation (self: {
   pname = "cryptohash";
-  version = "0.9.1";
-  sha256 = "164j43dja91k2cssh0s2dw9riibijl02bap9mn8jn1h6vjb6w9z0";
-  buildDepends = [ byteable cereal cryptoApi tagged ];
+  version = "0.10.0";
+  sha256 = "0szvx1dxf16chlksmp08g9qxy7f87w6hspigwbw78aygc3q9mzaq";
+  buildDepends = [ byteable ];
   testDepends = [
     HUnit QuickCheck testFramework testFrameworkHunit
     testFrameworkQuickcheck2
diff --git a/pkgs/development/libraries/haskell/final/default.nix b/pkgs/development/libraries/haskell/final/default.nix
new file mode 100644
index 000000000000..632261741187
--- /dev/null
+++ b/pkgs/development/libraries/haskell/final/default.nix
@@ -0,0 +1,14 @@
+{ cabal, stm, transformers }:
+
+cabal.mkDerivation (self: {
+  pname = "final";
+  version = "0.1";
+  sha256 = "189vby5ym6hcjpz6y9chlgkyzl8wnndqkhzk7s7qy8mksr3g66f9";
+  buildDepends = [ stm transformers ];
+  meta = {
+    homepage = "http://github.com/errge/final";
+    description = "utility to add extra safety to monadic returns";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 93230af44118..b90944816d68 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "2.0.3";
-  sha256 = "0f0n4cqpspad3ygw89rp8wj1gxb7mv5zrd8938zm1rn2mimihggr";
+  version = "3.0.0";
+  sha256 = "1ll2vn4vv4k7jaah0ngr2ml381cpprqy9ndqpf8cn44m5xd9qn6p";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/github/default.nix b/pkgs/development/libraries/haskell/github/default.nix
index 511b1b70f289..6154ed6c9a77 100644
--- a/pkgs/development/libraries/haskell/github/default.nix
+++ b/pkgs/development/libraries/haskell/github/default.nix
@@ -11,6 +11,7 @@ cabal.mkDerivation (self: {
     aeson attoparsec caseInsensitive conduit dataDefault failure HTTP
     httpConduit httpTypes network text time unorderedContainers vector
   ];
+  jailbreak = true;
   meta = {
     homepage = "https://github.com/fpco/github";
     description = "Access to the Github API, v3";
diff --git a/pkgs/development/libraries/haskell/groups/default.nix b/pkgs/development/libraries/haskell/groups/default.nix
new file mode 100644
index 000000000000..a03094970706
--- /dev/null
+++ b/pkgs/development/libraries/haskell/groups/default.nix
@@ -0,0 +1,12 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "groups";
+  version = "0.3.0.0";
+  sha256 = "07swv09l98fxh563w1x8n8xzgh9q7n9dbx4gx3i77kwi72vmxl8x";
+  meta = {
+    description = "Haskell 98 groups";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/hakyll/default.nix b/pkgs/development/libraries/haskell/hakyll/default.nix
index f3f2562a0735..a594ce878803 100644
--- a/pkgs/development/libraries/haskell/hakyll/default.nix
+++ b/pkgs/development/libraries/haskell/hakyll/default.nix
@@ -26,6 +26,9 @@ cabal.mkDerivation (self: {
     testFrameworkHunit testFrameworkQuickcheck2 text time
   ];
   doCheck = false;
+  patchPhase = ''
+    sed -i -e 's|cryptohash.*,|cryptohash,|' hakyll.cabal
+  '';
   meta = {
     homepage = "http://jaspervdj.be/hakyll";
     description = "A static website compiler library";
diff --git a/pkgs/development/libraries/haskell/hint/default.nix b/pkgs/development/libraries/haskell/hint/default.nix
index 8cf1accca9c7..3512bce96118 100644
--- a/pkgs/development/libraries/haskell/hint/default.nix
+++ b/pkgs/development/libraries/haskell/hint/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hint";
-  version = "0.3.3.6";
-  sha256 = "080wnds99lg9p4n2h9d4bpgvk73yzc3im2ysn1r8f3nqai4b2can";
+  version = "0.3.3.7";
+  sha256 = "1aba9dfkxlpmvbvllw4qnlrd300vnr0ismkn3kva1pv1cay5pifk";
   buildDepends = [
     extensibleExceptions filepath ghcMtl ghcPaths haskellSrc
     MonadCatchIOMtl mtl random utf8String
diff --git a/pkgs/development/libraries/haskell/hoogle/default.nix b/pkgs/development/libraries/haskell/hoogle/default.nix
index 38ee62dd5af3..c0b05ea82e0a 100644
--- a/pkgs/development/libraries/haskell/hoogle/default.nix
+++ b/pkgs/development/libraries/haskell/hoogle/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hoogle";
-  version = "4.2.20";
-  sha256 = "0sff230qc9lk3kqr9azg399fsaybwqpic9pj52jyw61ffasnl2dd";
+  version = "4.2.21";
+  sha256 = "167iw0rp37c1bixmaa5l06c943h33b457symllh8rcbmf880z09i";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
@@ -19,7 +19,6 @@ cabal.mkDerivation (self: {
   testDepends = [
     conduit hspec hspecExpectations HUnit systemFileio transformers
   ];
-  doCheck = false;
   meta = {
     homepage = "http://www.haskell.org/hoogle/";
     description = "Haskell API Search";
diff --git a/pkgs/development/libraries/haskell/hsemail/default.nix b/pkgs/development/libraries/haskell/hsemail/default.nix
index 1d823d6f8404..e9822f758297 100644
--- a/pkgs/development/libraries/haskell/hsemail/default.nix
+++ b/pkgs/development/libraries/haskell/hsemail/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hsemail";
-  version = "1.7.6";
-  sha256 = "0v4c6ljrzc7680i85wyxq7fkfs2j00941ps3rn8r16x3x2r8di04";
+  version = "1.7.7";
+  sha256 = "16wqrpzi5njv26za1rckn74jsqmyswndb6k38yz1567h1y4w7ai5";
   buildDepends = [ mtl parsec ];
   testDepends = [ doctest hspec parsec ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/hspec-expectations/default.nix b/pkgs/development/libraries/haskell/hspec-expectations/default.nix
index 4aaa5fe5e953..789ff5d7b2a4 100644
--- a/pkgs/development/libraries/haskell/hspec-expectations/default.nix
+++ b/pkgs/development/libraries/haskell/hspec-expectations/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec-expectations";
-  version = "0.3.2";
-  sha256 = "0962wlngqck0wc7mcby9bzci1s8d9a91vsm39rnab5wifhc2c6xi";
+  version = "0.3.3";
+  sha256 = "0sg7wkgr9qmwv0bki1q8wvl5jrlsvn0c7sd2qpqp3cccdhwj9c5k";
   buildDepends = [ HUnit ];
   testDepends = [ hspec HUnit markdownUnlit silently ];
   doCheck = false;
diff --git a/pkgs/development/libraries/haskell/hspec-meta/default.nix b/pkgs/development/libraries/haskell/hspec-meta/default.nix
index 374dd9eaf677..ff6c0f204d70 100644
--- a/pkgs/development/libraries/haskell/hspec-meta/default.nix
+++ b/pkgs/development/libraries/haskell/hspec-meta/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec-meta";
-  version = "1.7.0";
-  sha256 = "0a1s7pkymn41kk8gp5i7v141vq5yx857rma1l2xffs9lh4qalnq8";
+  version = "1.7.1";
+  sha256 = "08g327jnv7alamabxafhsv7ssisgymgsf91khr73zja5x8idfkxc";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/hspec/default.nix b/pkgs/development/libraries/haskell/hspec/default.nix
index d7925b41816a..0c9783c9a9c9 100644
--- a/pkgs/development/libraries/haskell/hspec/default.nix
+++ b/pkgs/development/libraries/haskell/hspec/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hspec";
-  version = "1.7.0";
-  sha256 = "0cw24vmns06z5308wva9bb5czs9i5wm6qdhymgiyl2i47ibxp5bj";
+  version = "1.7.1";
+  sha256 = "0fc8phc36876f8qydc5iwz3i7nri0n6b4dlxv0w4rcxgv9hp7ls0";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/http-conduit/default.nix b/pkgs/development/libraries/haskell/http-conduit/default.nix
index eb7f1a0d468a..6d6ac6b3fd0e 100644
--- a/pkgs/development/libraries/haskell/http-conduit/default.nix
+++ b/pkgs/development/libraries/haskell/http-conduit/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-conduit";
-  version = "1.9.4.3";
-  sha256 = "0lmshqv1ybim4201nb9wskyhg4fnslbm4ymvlmhn5zx0nwd777p9";
+  version = "1.9.4.5";
+  sha256 = "04b459x60dspd827k6ccikkm4j0cl7phcprvsdcqbc78yjf7vqpg";
   buildDepends = [
     asn1Data base64Bytestring blazeBuilder blazeBuilderConduit
     caseInsensitive certificate conduit cookie cprngAes dataDefault
diff --git a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
index 9be23188db40..c44e489519ca 100644
--- a/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
+++ b/pkgs/development/libraries/haskell/http-reverse-proxy/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-reverse-proxy";
-  version = "0.2.0";
-  sha256 = "01kqf9c2yr3x5jwzyn44gs76fbffpacxs2j89aa902l0rz6l8ral";
+  version = "0.2.1";
+  sha256 = "1f1087igr4kisb3z3lxznb85sfhzr2s08am1za3jg8cgffmrais8";
   buildDepends = [
     blazeBuilder caseInsensitive classyPrelude conduit dataDefault
     httpConduit httpTypes liftedBase monadControl network
diff --git a/pkgs/development/libraries/haskell/http-types/default.nix b/pkgs/development/libraries/haskell/http-types/default.nix
index c4c064fbf811..b0b68eec434e 100644
--- a/pkgs/development/libraries/haskell/http-types/default.nix
+++ b/pkgs/development/libraries/haskell/http-types/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "http-types";
-  version = "0.8.0";
-  sha256 = "14d1gzgwhinkwx3lmc6hvqj6ivjrvy4m6fm2walnyk1zv24zli75";
+  version = "0.8.1";
+  sha256 = "07hxxlhgnwsvjr2dzqbswwwkjxwsc0pk6shpkvzgclrsyn3xrg7p";
   buildDepends = [ blazeBuilder caseInsensitive text ];
   testDepends = [ blazeBuilder hspec QuickCheck text ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/linear/default.nix b/pkgs/development/libraries/haskell/linear/default.nix
new file mode 100644
index 000000000000..ba0f2ce1a3a9
--- /dev/null
+++ b/pkgs/development/libraries/haskell/linear/default.nix
@@ -0,0 +1,21 @@
+{ cabal, distributive, doctest, filepath, hashable, lens
+, reflection, semigroupoids, semigroups, simpleReflect, tagged
+, transformers, unorderedContainers, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "linear";
+  version = "1.2";
+  sha256 = "0mna8k6plq0akki5j5zjk1xk1hgks1076q1h5s14v87d0h45wlrh";
+  buildDepends = [
+    distributive hashable reflection semigroupoids semigroups tagged
+    transformers unorderedContainers vector
+  ];
+  testDepends = [ doctest filepath lens simpleReflect ];
+  meta = {
+    homepage = "http://github.com/ekmett/linear/";
+    description = "Linear Algebra";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/miniutter/default.nix b/pkgs/development/libraries/haskell/miniutter/default.nix
index 22018087226e..346e1c6a428d 100644
--- a/pkgs/development/libraries/haskell/miniutter/default.nix
+++ b/pkgs/development/libraries/haskell/miniutter/default.nix
@@ -1,11 +1,12 @@
-{ cabal, HUnit, minimorph, testFramework, testFrameworkHunit, text
+{ cabal, binary, HUnit, minimorph, testFramework
+, testFrameworkHunit, text
 }:
 
 cabal.mkDerivation (self: {
   pname = "miniutter";
-  version = "0.4.0";
-  sha256 = "1l275aad8svrqp22jv9s0mmlam7wbdlf6m4m97658rm8ks4j2mbx";
-  buildDepends = [ minimorph text ];
+  version = "0.4.2";
+  sha256 = "00027aqxa0631v3n1jsv4aj9kf39s5yivi3dl573s5nj0wibj008";
+  buildDepends = [ binary minimorph text ];
   testDepends = [ HUnit testFramework testFrameworkHunit text ];
   meta = {
     homepage = "https://github.com/Mikolaj/miniutter";
diff --git a/pkgs/development/libraries/haskell/mmap/default.nix b/pkgs/development/libraries/haskell/mmap/default.nix
index 4d0b9fcabeb7..53785f45c221 100644
--- a/pkgs/development/libraries/haskell/mmap/default.nix
+++ b/pkgs/development/libraries/haskell/mmap/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mmap";
-  version = "0.5.8";
-  sha256 = "17zsb95ynyrqj51h4jxi9glsih4vq33hbxycgw13z5fivv261m7y";
+  version = "0.5.9";
+  sha256 = "1y5mk3yf4b8r6rzmlx1xqn4skaigrqnv08sqq0v7r3nbw42bpz2q";
   isLibrary = true;
   isExecutable = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/mongoDB/default.nix b/pkgs/development/libraries/haskell/mongoDB/default.nix
index 12c65deb4453..2d269fc7a92b 100644
--- a/pkgs/development/libraries/haskell/mongoDB/default.nix
+++ b/pkgs/development/libraries/haskell/mongoDB/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "mongoDB";
-  version = "1.4.1";
-  sha256 = "1r1ywqy3igcmmwxjy4fjqdnf8m4zqbc8l0nj43h2xwrl86lhfym9";
+  version = "1.4.1.1";
+  sha256 = "1c9980x3i0jgacgz7mx65l5nyp3h83mqp9b52pzxq90lix6xnwhi";
   buildDepends = [
     binary bson cryptohash liftedBase monadControl mtl network parsec
     random randomShuffle text transformersBase
diff --git a/pkgs/development/libraries/haskell/monoid-extras/default.nix b/pkgs/development/libraries/haskell/monoid-extras/default.nix
index 2025ceaffe50..a9a2b07e81b9 100644
--- a/pkgs/development/libraries/haskell/monoid-extras/default.nix
+++ b/pkgs/development/libraries/haskell/monoid-extras/default.nix
@@ -1,10 +1,10 @@
-{ cabal, semigroupoids, semigroups }:
+{ cabal, groupoids, groups, semigroupoids, semigroups }:
 
 cabal.mkDerivation (self: {
   pname = "monoid-extras";
-  version = "0.3.1.0";
-  sha256 = "0nxdkx0j67nb41ingp1yl0appfx64ikf5709f48469qbaf3pgax3";
-  buildDepends = [ semigroupoids semigroups ];
+  version = "0.3.2.0";
+  sha256 = "0yhb55v0a2221xbpbm8jiqzqvps0lab5n8iakpq69ndr2l0d2r3x";
+  buildDepends = [ groupoids groups semigroupoids semigroups ];
   meta = {
     description = "Various extra monoid-related definitions and utilities";
     license = self.stdenv.lib.licenses.bsd3;
diff --git a/pkgs/development/libraries/haskell/multiarg/default.nix b/pkgs/development/libraries/haskell/multiarg/default.nix
index 77c81362d244..555435d3c583 100644
--- a/pkgs/development/libraries/haskell/multiarg/default.nix
+++ b/pkgs/development/libraries/haskell/multiarg/default.nix
@@ -1,10 +1,10 @@
-{ cabal, explicitException, utf8String }:
+{ cabal, utf8String }:
 
 cabal.mkDerivation (self: {
   pname = "multiarg";
-  version = "0.18.0.0";
-  sha256 = "1wgnpsnzjsspjvg5srjrzr4mqxhyisidkjj26cangxlhmb88rlwi";
-  buildDepends = [ explicitException utf8String ];
+  version = "0.22.0.0";
+  sha256 = "1fswkgrn8mc92lrzmrxhv6hbgch2lqdvmjn88k4ajqc0gpmpb750";
+  buildDepends = [ utf8String ];
   meta = {
     homepage = "https://github.com/massysett/multiarg";
     description = "Combinators to build command line parsers";
diff --git a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
index 2b1a56940447..bfb96e304802 100644
--- a/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
+++ b/pkgs/development/libraries/haskell/network-conduit-tls/default.nix
@@ -1,15 +1,15 @@
-{ cabal, aeson, certificate, conduit, cryptoApi, cryptoRandomApi
-, network, networkConduit, pem, systemFileio, systemFilepath, tls
-, tlsExtra, transformers
+{ cabal, aeson, certificate, conduit, cprngAes, cryptoApi
+, cryptoRandomApi, network, networkConduit, pem, systemFileio
+, systemFilepath, tls, tlsExtra, transformers
 }:
 
 cabal.mkDerivation (self: {
   pname = "network-conduit-tls";
-  version = "1.0.1";
-  sha256 = "0h2svqllm85vambssq0j4ghx2b44cjg0kj04bamp72ly22mcg9d6";
+  version = "1.0.1.1";
+  sha256 = "0v5rspcjhd2vid5i74dy1sdcvci7dlr88sgr0v9vjp4gcyb29qlj";
   buildDepends = [
-    aeson certificate conduit cryptoApi cryptoRandomApi network
-    networkConduit pem systemFileio systemFilepath tls tlsExtra
+    aeson certificate conduit cprngAes cryptoApi cryptoRandomApi
+    network networkConduit pem systemFileio systemFilepath tls tlsExtra
     transformers
   ];
   meta = {
diff --git a/pkgs/development/libraries/haskell/network-multicast/default.nix b/pkgs/development/libraries/haskell/network-multicast/default.nix
index 59a0d77d67cf..3a9531488bb4 100644
--- a/pkgs/development/libraries/haskell/network-multicast/default.nix
+++ b/pkgs/development/libraries/haskell/network-multicast/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "network-multicast";
-  version = "0.0.8";
-  sha256 = "0jsbp8z2a69x5h6dc3b16wdxs0shv6438mnf5mg0jxq7xddbhph8";
+  version = "0.0.10";
+  sha256 = "092v4ba6mrl5ykx2fscclcsc5dbnq99hbn93sc2mjnnr8c9r0n5x";
   buildDepends = [ network ];
   meta = {
     description = "Simple multicast library";
diff --git a/pkgs/development/libraries/haskell/operational/default.nix b/pkgs/development/libraries/haskell/operational/default.nix
new file mode 100644
index 000000000000..f059f86d68ff
--- /dev/null
+++ b/pkgs/development/libraries/haskell/operational/default.nix
@@ -0,0 +1,16 @@
+{ cabal, mtl, random }:
+
+cabal.mkDerivation (self: {
+  pname = "operational";
+  version = "0.2.2.1";
+  sha256 = "1w4bln8mj4hw5i40amah570p77wimxfpn7l2mmjk9z07zavx1rv2";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [ mtl random ];
+  meta = {
+    homepage = "http://haskell.org/haskellwiki/Operational";
+    description = "Implementation of difficult monads made easy with operational semantics";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/postgresql-libpq/default.nix b/pkgs/development/libraries/haskell/postgresql-libpq/default.nix
index a3ffd276c2c6..53e6066f968c 100644
--- a/pkgs/development/libraries/haskell/postgresql-libpq/default.nix
+++ b/pkgs/development/libraries/haskell/postgresql-libpq/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "postgresql-libpq";
-  version = "0.8.2.3";
-  sha256 = "08l3va5v8ppajgl8ywmzjdvd6v2vhqfj0y55mb1jxkdpvkd5hckl";
+  version = "0.8.2.4";
+  sha256 = "1dqb4pnsvd6378rhmlhi151sin06wfm9sx12m3ir9x0j5ppb5sx6";
   extraLibraries = [ postgresql ];
   meta = {
     homepage = "http://github.com/lpsmith/postgresql-libpq";
diff --git a/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix
new file mode 100644
index 000000000000..08c2f6556e28
--- /dev/null
+++ b/pkgs/development/libraries/haskell/regex-compat-tdfa/default.nix
@@ -0,0 +1,14 @@
+{ cabal, regexBase, regexTdfa }:
+
+cabal.mkDerivation (self: {
+  pname = "regex-compat-tdfa";
+  version = "0.95.1.2";
+  sha256 = "0b7pp5xq4ybgji5shz5v1a91y6wwzila3vjiyq4nma0xj3njy802";
+  buildDepends = [ regexBase regexTdfa ];
+  meta = {
+    homepage = "http://hub.darcs.net/shelarcy/regex-compat-tdfa";
+    description = "Unicode Support version of Text.Regex, using regex-tdfa";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/rosezipper/default.nix b/pkgs/development/libraries/haskell/rosezipper/default.nix
new file mode 100644
index 000000000000..3c25392e7c94
--- /dev/null
+++ b/pkgs/development/libraries/haskell/rosezipper/default.nix
@@ -0,0 +1,12 @@
+{ cabal }:
+
+cabal.mkDerivation (self: {
+  pname = "rosezipper";
+  version = "0.2";
+  sha256 = "1g6ppa8cappdbq9923lsac504dfjh0ks64gbm6qbihrc34f4zavc";
+  meta = {
+    description = "Generic zipper implementation for Data.Tree";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/skein/default.nix b/pkgs/development/libraries/haskell/skein/default.nix
index 4a89019906f9..6b8fc7eda284 100644
--- a/pkgs/development/libraries/haskell/skein/default.nix
+++ b/pkgs/development/libraries/haskell/skein/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "skein";
-  version = "1.0.3";
-  sha256 = "15vzydywhwjdgybabvv6lfk1vjs7blvs3k2apwxjdjh2q7jmgkam";
+  version = "1.0.6";
+  sha256 = "0jdh618k66bhiwrxb9i2yckxz0w3cpc7q15ilz49lqjjpl86bndk";
   buildDepends = [ cereal cryptoApi tagged ];
   testDepends = [ cereal cryptoApi filepath hspec tagged ];
   jailbreak = true;
diff --git a/pkgs/development/libraries/haskell/snap/core.nix b/pkgs/development/libraries/haskell/snap/core.nix
index f2440ef250f9..52da653da3e3 100644
--- a/pkgs/development/libraries/haskell/snap/core.nix
+++ b/pkgs/development/libraries/haskell/snap/core.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap-core";
-  version = "0.9.4.0";
-  sha256 = "08afaj4ln4nl7ymdixijzjx8hc7nnr70gz7avpzaanq5nrw0k054";
+  version = "0.9.4.1";
+  sha256 = "0yacbpd20y49jw1qkrm5r4qick0fhimgb07883bg1lp3ai4ysrk5";
   buildDepends = [
     attoparsec attoparsecEnumerator blazeBuilder blazeBuilderEnumerator
     bytestringMmap caseInsensitive deepseq enumerator filepath hashable
diff --git a/pkgs/development/libraries/haskell/snap/server.nix b/pkgs/development/libraries/haskell/snap/server.nix
index c11dfe4f398f..7bf332811a99 100644
--- a/pkgs/development/libraries/haskell/snap/server.nix
+++ b/pkgs/development/libraries/haskell/snap/server.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "snap-server";
-  version = "0.9.3.3";
-  sha256 = "1n50xyhg4rva7ifv70825177606q87ip7f9p5kf94i9kci0kmlig";
+  version = "0.9.3.4";
+  sha256 = "0i95gf7wpf0gyns4rnl1wp2f53cwfmjg0qb8jxpynwklvsm6zf88";
   buildDepends = [
     attoparsec attoparsecEnumerator blazeBuilder blazeBuilderEnumerator
     caseInsensitive enumerator MonadCatchIOTransformers mtl network
diff --git a/pkgs/development/libraries/haskell/syz/default.nix b/pkgs/development/libraries/haskell/syz/default.nix
new file mode 100644
index 000000000000..67e6bc58436a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/syz/default.nix
@@ -0,0 +1,14 @@
+{ cabal, syb }:
+
+cabal.mkDerivation (self: {
+  pname = "syz";
+  version = "0.2.0.0";
+  sha256 = "1m5395937yyxsa1bmlfn1dxa1jr15yjhlz9s15bpwapshcd8119y";
+  buildDepends = [ syb ];
+  meta = {
+    homepage = "http://www.cs.indiana.edu/~adamsmd/papers/scrap_your_zippers/";
+    description = "Scrap Your Zippers";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/tasty/default.nix b/pkgs/development/libraries/haskell/tasty/default.nix
index b9f403bcc3d0..37030681e340 100644
--- a/pkgs/development/libraries/haskell/tasty/default.nix
+++ b/pkgs/development/libraries/haskell/tasty/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "tasty";
-  version = "0.2";
-  sha256 = "1shd4bl0wb67abs7vv3cagvpinkz2348fh7fdh3rq8l5g1jflp8q";
+  version = "0.3";
+  sha256 = "0sgc0529sqhj0b75a4mkdw0bkx56ynyl4msmi8hd20jvv5wnzyi6";
   buildDepends = [
     ansiTerminal mtl optparseApplicative regexPosix stm tagged
   ];
diff --git a/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix b/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
index ebcd608eb6a6..43791413a7f9 100644
--- a/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
+++ b/pkgs/development/libraries/haskell/test-framework-th-prime/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "test-framework-th-prime";
-  version = "0.0.5";
-  sha256 = "0lsxnbckh88cq38azml86szdcvx3rhs3is13ib4z0ryfqnv4hhpl";
+  version = "0.0.6";
+  sha256 = "11fk7sk644ky8f22imrfqk8yx07050vy9szha0pnkkjk9i3bqfcq";
   buildDepends = [ cpphs haskellSrcExts testFramework ];
   meta = {
     description = "Template Haskell for test framework";
diff --git a/pkgs/development/libraries/haskell/thyme/default.nix b/pkgs/development/libraries/haskell/thyme/default.nix
new file mode 100644
index 000000000000..1e372d8f5bae
--- /dev/null
+++ b/pkgs/development/libraries/haskell/thyme/default.nix
@@ -0,0 +1,22 @@
+{ cabal, attoparsec, deepseq, lens, QuickCheck
+, random, text, time, transformers, vector
+, vectorSpace
+}:
+
+cabal.mkDerivation (self: {
+  pname = "thyme";
+  version = "0.3.0.0";
+  sha256 = "0nv8kp5ax0088z0d9y93xkv59v1i8wrrdprsj7bknk3yn0gd2gb3";
+  buildDepends = [
+    attoparsec deepseq lens QuickCheck random text time transformers
+    vector vectorSpace
+  ];
+  # have some strange test depends
+  doCheck = false;
+  meta = {
+    homepage = "https://github.com/liyang/thyme";
+    description = "A faster time library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/tls-extra/default.nix b/pkgs/development/libraries/haskell/tls-extra/default.nix
index 55b2582017c5..8c2a50255b1b 100644
--- a/pkgs/development/libraries/haskell/tls-extra/default.nix
+++ b/pkgs/development/libraries/haskell/tls-extra/default.nix
@@ -1,17 +1,16 @@
 { cabal, certificate, cipherAes, cipherRc4, cryptohash
-, cryptoPubkey, cryptoRandomApi, mtl, network, pem, text, time, tls
-, vector
+, cryptoPubkey, cryptoRandom, mtl, network, pem, time, tls, vector
 }:
 
 cabal.mkDerivation (self: {
   pname = "tls-extra";
-  version = "0.6.4";
-  sha256 = "058ia1cabs7ribz287iqkkjvqpp2n7c219f3xc92fhm0qq00mh5n";
+  version = "0.6.5";
+  sha256 = "09b8wxg4k88gdzpbxhd2apf0x5y51zh2zbw2cvraffjnnfkgvzqc";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
     certificate cipherAes cipherRc4 cryptohash cryptoPubkey
-    cryptoRandomApi mtl network pem text time tls vector
+    cryptoRandom mtl network pem time tls vector
   ];
   jailbreak = true;
   meta = {
diff --git a/pkgs/development/libraries/haskell/tls/default.nix b/pkgs/development/libraries/haskell/tls/default.nix
index 72e0976ceaff..569999149895 100644
--- a/pkgs/development/libraries/haskell/tls/default.nix
+++ b/pkgs/development/libraries/haskell/tls/default.nix
@@ -1,18 +1,17 @@
 { cabal, cereal, certificate, cprngAes, cryptohash, cryptoPubkey
-, cryptoRandomApi, mtl, network, QuickCheck, testFramework
+, cryptoRandom, mtl, network, QuickCheck, testFramework
 , testFrameworkQuickcheck2, time
 }:
 
 cabal.mkDerivation (self: {
   pname = "tls";
-  version = "1.1.2";
-  sha256 = "1vg1mnz6cxxgs48pbpjp4hwyvsysxyzvjfy4p1vd23lwc32cdjqg";
+  version = "1.1.4";
+  sha256 = "0fq6hnc3j54kkzlvcvhskjrj740p44y65fggnj3m4kgfiwjphw5p";
   buildDepends = [
-    cereal certificate cryptohash cryptoPubkey cryptoRandomApi mtl
-    network
+    cereal certificate cryptohash cryptoPubkey cryptoRandom mtl network
   ];
   testDepends = [
-    cereal certificate cprngAes cryptoPubkey cryptoRandomApi mtl
+    cereal certificate cprngAes cryptoPubkey cryptoRandom mtl
     QuickCheck testFramework testFrameworkQuickcheck2 time
   ];
   doCheck = false;
diff --git a/pkgs/development/libraries/haskell/uuid/default.nix b/pkgs/development/libraries/haskell/uuid/default.nix
index 2aa30d8823ec..65115ef9a98f 100644
--- a/pkgs/development/libraries/haskell/uuid/default.nix
+++ b/pkgs/development/libraries/haskell/uuid/default.nix
@@ -1,14 +1,16 @@
 { cabal, binary, criterion, cryptohash, deepseq, HUnit, maccatcher
-, mersenneRandomPure64, QuickCheck, random, time
+, mersenneRandomPure64, QuickCheck, random, testFramework
+, testFrameworkHunit, testFrameworkQuickcheck2, time
 }:
 
 cabal.mkDerivation (self: {
   pname = "uuid";
-  version = "1.2.13";
-  sha256 = "0y9r71iqvabmvyrglw42g37skgisyknkv3pkfih2qfrfkk75zw0s";
+  version = "1.2.14";
+  sha256 = "13r2yzhb9nj1h6wfy7w9k59d27z9iza5r4apmf72zby2fi9vdnwy";
   buildDepends = [ binary cryptohash maccatcher random time ];
   testDepends = [
     criterion deepseq HUnit mersenneRandomPure64 QuickCheck random
+    testFramework testFrameworkHunit testFrameworkQuickcheck2
   ];
   doCheck = false;
   meta = {
diff --git a/pkgs/development/libraries/haskell/vault/default.nix b/pkgs/development/libraries/haskell/vault/default.nix
index 6039e7424772..f73633b4f248 100644
--- a/pkgs/development/libraries/haskell/vault/default.nix
+++ b/pkgs/development/libraries/haskell/vault/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "vault";
-  version = "0.2.0.4";
-  sha256 = "1a63rarksp4waj64b9kv8q77wbhdnsnxahkixl1klp25hkp8aan3";
+  version = "0.3.0.0";
+  sha256 = "1lvv2sw5j48jbxniw55bxq88dhn46l7lk0blv2cnaf1vw6wms4m8";
   buildDepends = [ hashable unorderedContainers ];
   meta = {
     homepage = "https://github.com/HeinrichApfelmus/vault";
diff --git a/pkgs/development/libraries/haskell/wai-app-static/default.nix b/pkgs/development/libraries/haskell/wai-app-static/default.nix
index 74ec00c58fdd..ec0612ae1170 100644
--- a/pkgs/development/libraries/haskell/wai-app-static/default.nix
+++ b/pkgs/development/libraries/haskell/wai-app-static/default.nix
@@ -1,17 +1,19 @@
 { cabal, base64Bytestring, blazeBuilder, blazeHtml, blazeMarkup
-, cereal, cryptoConduit, cryptohash, fileEmbed, hspec, httpDate
-, httpTypes, mimeTypes, network, systemFileio, systemFilepath, text
-, time, transformers, unixCompat, wai, waiTest
+, cereal, cryptoApi, cryptoConduit, cryptohashCryptoapi, fileEmbed
+, hspec, httpDate, httpTypes, mimeTypes, network, systemFileio
+, systemFilepath, text, time, transformers, unixCompat, wai
+, waiTest
 }:
 
 cabal.mkDerivation (self: {
   pname = "wai-app-static";
-  version = "1.3.1.3";
-  sha256 = "0h6m1an3srkvyaz50w16v2mhjyfdqbqq2d7ng3yhrrmb1fyvhas1";
+  version = "1.3.1.4";
+  sha256 = "1457643xkigqnacg1fw25jp9kjqiy55d22ll8fml07bxs37hlr63";
   buildDepends = [
     base64Bytestring blazeBuilder blazeHtml blazeMarkup cereal
-    cryptoConduit cryptohash fileEmbed httpDate httpTypes mimeTypes
-    systemFileio systemFilepath text time transformers unixCompat wai
+    cryptoApi cryptoConduit cryptohashCryptoapi fileEmbed httpDate
+    httpTypes mimeTypes systemFileio systemFilepath text time
+    transformers unixCompat wai
   ];
   testDepends = [
     hspec httpDate httpTypes mimeTypes network text time transformers
diff --git a/pkgs/development/libraries/haskell/wai-extra/default.nix b/pkgs/development/libraries/haskell/wai-extra/default.nix
index 270ca004c491..917000364c35 100644
--- a/pkgs/development/libraries/haskell/wai-extra/default.nix
+++ b/pkgs/development/libraries/haskell/wai-extra/default.nix
@@ -7,8 +7,8 @@
 
 cabal.mkDerivation (self: {
   pname = "wai-extra";
-  version = "1.3.4.3";
-  sha256 = "19vj47awkazn6h4kf37f4sp4g8lhm125wjqnp1wa1wa8zlndp8wy";
+  version = "1.3.4.4";
+  sha256 = "0x7nm3vrp1jhcdvcspdpgpgm12rcafng81f9kq9c01z5270myg2f";
   buildDepends = [
     ansiTerminal base64Bytestring blazeBuilder blazeBuilderConduit
     caseInsensitive conduit dataDefault dateCache fastLogger httpTypes
diff --git a/pkgs/development/libraries/haskell/wai/default.nix b/pkgs/development/libraries/haskell/wai/default.nix
index 9b3b1083bc00..425d5237a713 100644
--- a/pkgs/development/libraries/haskell/wai/default.nix
+++ b/pkgs/development/libraries/haskell/wai/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "wai";
-  version = "1.4.0.1";
-  sha256 = "1d08mp7dpf8iw50yjysr5p7fc9jgdcwql943p9c11x35n2ks6z2n";
+  version = "1.4.0.2";
+  sha256 = "0mmnl2zn3jsa5yan58kf2d7cvc343cld0l8mydb9qnq4if2kq94q";
   buildDepends = [
     blazeBuilder conduit httpTypes network text transformers vault
   ];
diff --git a/pkgs/development/libraries/haskell/warp-tls/default.nix b/pkgs/development/libraries/haskell/warp-tls/default.nix
index 5655ed9d8a10..dd1404e02fd2 100644
--- a/pkgs/development/libraries/haskell/warp-tls/default.nix
+++ b/pkgs/development/libraries/haskell/warp-tls/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp-tls";
-  version = "1.4.1.3";
-  sha256 = "0g26cw86kjg61agplqskhjb41ywcydyfzb46pjjc38g77xlcm2wx";
+  version = "1.4.1.4";
+  sha256 = "1w6i26r5xjjc594h53q07bad835ryg3k6vmbzf5d59xngfvm7b9k";
   buildDepends = [
     certificate conduit cprngAes cryptocipher cryptoRandomApi network
     networkConduit pem tls tlsExtra transformers wai warp
diff --git a/pkgs/development/libraries/haskell/warp/default.nix b/pkgs/development/libraries/haskell/warp/default.nix
index 2134077e61ab..c96e7bfd7383 100644
--- a/pkgs/development/libraries/haskell/warp/default.nix
+++ b/pkgs/development/libraries/haskell/warp/default.nix
@@ -6,8 +6,8 @@
 
 cabal.mkDerivation (self: {
   pname = "warp";
-  version = "1.3.9.1";
-  sha256 = "0s8jrgn9pxqkjvdbgvrxd0bnclkhn3hix2mff66hqpx8x4znh0zv";
+  version = "1.3.9.2";
+  sha256 = "0l4iq7dl7iv9sf0bj52g577x9i84miscfr27b2vm8g8n6306jr77";
   buildDepends = [
     blazeBuilder blazeBuilderConduit caseInsensitive conduit hashable
     httpAttoparsec httpTypes liftedBase network networkConduit
diff --git a/pkgs/development/libraries/haskell/xmlhtml/default.nix b/pkgs/development/libraries/haskell/xmlhtml/default.nix
index 66c1f645267a..80f092ce2fda 100644
--- a/pkgs/development/libraries/haskell/xmlhtml/default.nix
+++ b/pkgs/development/libraries/haskell/xmlhtml/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "xmlhtml";
-  version = "0.2.1";
-  sha256 = "1nqkjbhpzr7zxpjvlxy6pync6zyarvjblcxg8igq75dyzk7qhafg";
+  version = "0.2.3";
+  sha256 = "0yg56rj8ylnaawqx3h54g0dlayql87h40anbp7lccnl70pzbk6c7";
   buildDepends = [
     blazeBuilder blazeHtml blazeMarkup parsec text unorderedContainers
   ];
diff --git a/pkgs/development/libraries/haskell/yesod-static/default.nix b/pkgs/development/libraries/haskell/yesod-static/default.nix
index d341434345bd..c4aba1ddfeb2 100644
--- a/pkgs/development/libraries/haskell/yesod-static/default.nix
+++ b/pkgs/development/libraries/haskell/yesod-static/default.nix
@@ -1,21 +1,21 @@
 { cabal, base64Bytestring, cereal, conduit, cryptoConduit
-, cryptohash, dataDefault, fileEmbed, hspec, httpTypes
+, cryptohashCryptoapi, dataDefault, fileEmbed, hspec, httpTypes
 , shakespeareCss, systemFileio, systemFilepath, text, transformers
 , unixCompat, wai, waiAppStatic, yesodCore
 }:
 
 cabal.mkDerivation (self: {
   pname = "yesod-static";
-  version = "1.2.0";
-  sha256 = "18fkphk8qzshm5r0ivdvllmbmvl5q6m84zsf1g0fmridqz2xywjz";
+  version = "1.2.0.1";
+  sha256 = "1ij0j1m9j6l63rl4zdfik36a3sb3k0zpqjg85sgis6wdqr18gsi5";
   buildDepends = [
-    base64Bytestring cereal conduit cryptoConduit cryptohash
+    base64Bytestring cereal conduit cryptoConduit cryptohashCryptoapi
     dataDefault fileEmbed httpTypes shakespeareCss systemFileio
     systemFilepath text transformers unixCompat wai waiAppStatic
     yesodCore
   ];
   testDepends = [
-    base64Bytestring cereal conduit cryptoConduit cryptohash
+    base64Bytestring cereal conduit cryptoConduit cryptohashCryptoapi
     dataDefault fileEmbed hspec httpTypes shakespeareCss systemFileio
     systemFilepath text transformers unixCompat wai waiAppStatic
     yesodCore
diff --git a/pkgs/development/libraries/icu/default.nix b/pkgs/development/libraries/icu/default.nix
index 3d37db20edcd..838d6f7b75fd 100644
--- a/pkgs/development/libraries/icu/default.nix
+++ b/pkgs/development/libraries/icu/default.nix
@@ -1,6 +1,7 @@
 {stdenv, fetchurl}:
 
 let
+
   pname = "icu4c";
   version = "51.1";
 in
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index a903a600da3d..5c408e9a76c5 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -2,7 +2,7 @@
 
 let
   pname = "krb5";
-  version = "1.10.5";
+  version = "1.11.3";
   name = "${pname}-${version}";
   webpage = http://web.mit.edu/kerberos/;
 in
@@ -11,8 +11,8 @@ stdenv.mkDerivation (rec {
   inherit name;
 
   src = fetchurl {
-    url = "${webpage}/dist/krb5/1.10/${name}-signed.tar";
-    sha256 = "1nf195j9s8g55sh5dzbhy2l21kcdwgpn4acxrbwkvngdz9mv7g4k";
+    url = "${webpage}/dist/krb5/1.11/${name}-signed.tar";
+    sha256 = "1daiaxgkxcryqs37w28v4x1vajqmay4l144d1zd9c2d7jjxr9gcs";
   };
 
   buildInputs = [ perl ncurses yacc ];
diff --git a/pkgs/development/libraries/libctemplate/default.nix b/pkgs/development/libraries/libctemplate/default.nix
index 3af7e7e43877..36652f7abc7e 100644
--- a/pkgs/development/libraries/libctemplate/default.nix
+++ b/pkgs/development/libraries/libctemplate/default.nix
@@ -12,11 +12,11 @@ stdenv.mkDerivation rec {
   };
 
   pname = "ctemplate";
-  version = "2.0";
+  version = "2.2";
   name = "${pname}-${version}";
 
   src = fetchurl {
     url = "http://ctemplate.googlecode.com/files/${name}.tar.gz";
-    sha256 = "0scdqqbp8fy9jiak60dj1051gbyb8xmlm4rdz4h1myxifjagwbfa";
+    sha256 = "0vv8gvyndppm9m5s1i5k0jvwcz41l1vfgg04r7nssdpzyz0cpwq4";
   };
 }
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index 811909c659d2..c01baa2fd0f6 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -1,19 +1,20 @@
-{ stdenv, fetchurl, pkgconfig }:
+{ stdenv, fetchurl, pkgconfig, udev }:
 
 stdenv.mkDerivation rec {
-  name = "libusb-1.0.9";
+  name = "libusb-1.0.16";
 
   src = fetchurl {
-    url = "mirror://sourceforge/libusb/${name}.tar.bz2";
-    sha256 = "16sz34ix6hw2wwl3kqx6rf26fg210iryr68wc439dc065pffw879";
+    url = "mirror://sourceforge/libusbx/libusbx-1.0.16.tar.bz2";
+    sha256 = "105m9jvjr3vrriyg0mwmyf7qla4l71iwwnymrsk3sy9dazwmqcsv";
   };
 
   buildInputs = [ pkgconfig ];
+  propagatedBuildInputs = stdenv.lib.optional (stdenv.isLinux) udev;
 
   meta = {
     homepage = http://www.libusb.org;
     description = "User-space USB library";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = stdenv.lib.platforms.unix;
     maintainers = [ stdenv.lib.maintainers.urkud ];
   };
 }
diff --git a/pkgs/development/libraries/libvisio/default.nix b/pkgs/development/libraries/libvisio/default.nix
index 77e7e0a56f64..7d24fc9a8a66 100644
--- a/pkgs/development/libraries/libvisio/default.nix
+++ b/pkgs/development/libraries/libvisio/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, boost, libwpd, libwpg, pkgconfig }:
+{ stdenv, fetchurl, boost, libwpd, libwpg, pkgconfig, zlib }:
 
 stdenv.mkDerivation rec {
   name = "libvisio-0.0.19";
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [ pkgconfig ];
-  buildInputs = [ boost libwpd libwpg ];
+  buildInputs = [ boost libwpd libwpg zlib ];
 
   configureFlags = "--disable-werror";
 
diff --git a/pkgs/development/libraries/libwpd/default.nix b/pkgs/development/libraries/libwpd/default.nix
index 1c56022de580..3df58615aa6d 100644
--- a/pkgs/development/libraries/libwpd/default.nix
+++ b/pkgs/development/libraries/libwpd/default.nix
@@ -1,14 +1,14 @@
-{ stdenv, fetchurl, pkgconfig, glib, libgsf, libxml2 }:
+{ stdenv, fetchurl, zlib, pkgconfig, glib, libgsf, libxml2 }:
 
 stdenv.mkDerivation rec {
-  name = "libwpd-0.9.4";
+  name = "libwpd-0.9.5";
   
   src = fetchurl {
     url = "mirror://sourceforge/libwpd/${name}.tar.xz";
-    sha256 = "0qba429cqd72nwn1mzpj7llyi3kwykb2lplcfxffvq8svzxyzkxy";
+    sha256 = "1qvmnszql8c900py83wrxnj2pyyy4107scdhvmhapp4gpmccmg7f";
   };
   
-  buildInputs = [ glib libgsf libxml2 ];
+  buildInputs = [ glib libgsf libxml2 zlib ];
 
   nativeBuildInputs = [ pkgconfig ];
 }
diff --git a/pkgs/development/libraries/libwpg/default.nix b/pkgs/development/libraries/libwpg/default.nix
index a97b8fc2fd85..18a8e49beea7 100644
--- a/pkgs/development/libraries/libwpg/default.nix
+++ b/pkgs/development/libraries/libwpg/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libwpd }:
+{ stdenv, fetchurl, pkgconfig, libwpd, zlib }:
 
 stdenv.mkDerivation rec {
   name = "libwpg-0.2.1";
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "0d83nx4rxkrq2sbfbbqpddni56h1328dzmraxyl6vh9p4f19rh5d";
   };
 
-  buildInputs = [ libwpd ];
+  buildInputs = [ libwpd zlib ];
   nativeBuildInputs = [ pkgconfig ];
 
   meta = {
diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix
index 484f878a55ef..9c6c8e5e3340 100644
--- a/pkgs/development/libraries/mdds/default.nix
+++ b/pkgs/development/libraries/mdds/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "mdds-0.6.0";
+  version = "0.7.1";
+  name = "mdds-${version}";
 
   src = fetchurl {
-    url = http://multidimalgorithm.googlecode.com/files/mdds_0.6.0.tar.bz2;
-    sha256 = "0yx6cx2cxk9wpmfpv6k3agkr1sjzxdgxrm3zfj34zwyxr3sh0ql4";
+    url = "http://multidimalgorithm.googlecode.com/files/mdds_${version}.tar.bz2";
+    sha256 = "0zhrx7m04pknc8i2cialmbna1hmwa0fzs8qphan4rdxibf0c4yzy";
   };
 
   meta = {
diff --git a/pkgs/development/libraries/unixODBC/default.nix b/pkgs/development/libraries/unixODBC/default.nix
index 932873ffe94c..74c822e28853 100644
--- a/pkgs/development/libraries/unixODBC/default.nix
+++ b/pkgs/development/libraries/unixODBC/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "unixODBC-2.2.11";
+stdenv.mkDerivation rec {
+  name = "unixODBC-2.3.1";
   src = fetchurl {
-    url = mirror://sourceforge/unixodbc/unixODBC-2.2.11.tar.gz;
-    md5 = "9ae806396844e38244cf65ad26ba0f23";
+    url = "ftp://ftp.unixodbc.org/pub/unixODBC/${name}.tar.gz";
+    md5 = "86788d4006620fa1f171c13d07fdcaab";
   };
   configureFlags = "--disable-gui --sysconfdir=/etc";
 }
diff --git a/pkgs/development/perl-modules/net-amazon-s3-credentials-provider.patch b/pkgs/development/perl-modules/net-amazon-s3-credentials-provider.patch
new file mode 100644
index 000000000000..e24c44d7e159
--- /dev/null
+++ b/pkgs/development/perl-modules/net-amazon-s3-credentials-provider.patch
@@ -0,0 +1,291 @@
+commit 4afa16864ac8ae23a450abf95db023b0c8bea698
+Author: Shea Levy <shea@shealevy.com>
+Date:   Thu Aug 29 07:09:34 2013 -0400
+
+    Use CredentialsProviders à la the Java API
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/lib/Net/Amazon/Auth/CredentialsProvider.pm b/lib/Net/Amazon/Auth/CredentialsProvider.pm
+new file mode 100755
+index 0000000..527acae
+--- /dev/null
++++ b/lib/Net/Amazon/Auth/CredentialsProvider.pm
+@@ -0,0 +1,9 @@
++package Net::Amazon::Auth::CredentialsProvider;
++
++use Moose::Role 0.85;
++
++requires 'get_credentials';
++
++sub refresh { }
++
++1;
+diff --git a/lib/Net/Amazon/Auth/CredentialsProviderChain.pm b/lib/Net/Amazon/Auth/CredentialsProviderChain.pm
+new file mode 100755
+index 0000000..85cd8e0
+--- /dev/null
++++ b/lib/Net/Amazon/Auth/CredentialsProviderChain.pm
+@@ -0,0 +1,41 @@
++package Net::Amazon::Auth::CredentialsProviderChain;
++
++use Moose 0.85;
++use MooseX::StrictConstructor 0.16;
++use Net::Amazon::Auth::EnvironmentVariableCredentialsProvider;
++use Net::Amazon::Auth::InstanceProfileCredentialsProvider;
++
++with 'Net::Amazon::Auth::CredentialsProvider';
++
++has 'providers' => ( is => 'ro', isa => 'ArrayRef[Net::Amazon::Auth::CredentialsProvider]', required => 1 );
++
++sub refresh {
++    my $self = shift;
++
++    map { $_->refresh } @{$self->providers};
++}
++
++sub get_credentials {
++    my $self = shift;
++
++    foreach my $provider (@{$self->providers}) {
++        my $res = $provider->get_credentials;
++        if (defined $res->{access_key_id}) {
++            return $res;
++        }
++    }
++
++    return {};
++}
++
++sub default_chain {
++    my $class = shift;
++    return $class->new(providers => [
++            Net::Amazon::Auth::EnvironmentVariableCredentialsProvider->new,
++            Net::Amazon::Auth::InstanceProfileCredentialsProvider->new
++        ]);
++}
++
++__PACKAGE__->meta->make_immutable;
++
++1;
+diff --git a/lib/Net/Amazon/Auth/EnvironmentVariableCredentialsProvider.pm b/lib/Net/Amazon/Auth/EnvironmentVariableCredentialsProvider.pm
+new file mode 100755
+index 0000000..ac38a84
+--- /dev/null
++++ b/lib/Net/Amazon/Auth/EnvironmentVariableCredentialsProvider.pm
+@@ -0,0 +1,26 @@
++package Net::Amazon::Auth::EnvironmentVariableCredentialsProvider;
++
++use Moose 0.85;
++use MooseX::StrictConstructor 0.16;
++
++extends 'Net::Amazon::Auth::FixedCredentialsProvider';
++
++around BUILDARGS => sub {
++    my $orig = shift;
++    my $class = shift;
++
++    my %args = (
++        access_key_id => $ENV{AWS_ACCESS_KEY_ID},
++        secret_access_key => $ENV{AWS_SECRET_ACCESS_KEY}
++    );
++
++    if (exists $ENV{AWS_SESSION_TOKEN}) {
++        $args{session_token} = $ENV{AWS_SESSION_TOKEN};
++    }
++
++    return $class->$orig(\%args);
++};
++
++__PACKAGE__->meta->make_immutable;
++
++1;
+diff --git a/lib/Net/Amazon/Auth/FixedCredentialsProvider.pm b/lib/Net/Amazon/Auth/FixedCredentialsProvider.pm
+new file mode 100755
+index 0000000..21d56c7
+--- /dev/null
++++ b/lib/Net/Amazon/Auth/FixedCredentialsProvider.pm
+@@ -0,0 +1,23 @@
++package Net::Amazon::Auth::FixedCredentialsProvider;
++
++use Moose 0.85;
++use MooseX::StrictConstructor 0.16;
++
++with 'Net::Amazon::Auth::CredentialsProvider';
++
++has 'access_key_id'     => ( is => 'ro', isa => 'Maybe[Str]', required => 1 );
++has 'secret_access_key' => ( is => 'ro', isa => 'Maybe[Str]', required => 1 );
++has 'session_token' => ( is => 'ro', isa => 'Maybe[Str]', required => 0 );
++
++sub get_credentials {
++    my $self = shift;
++    return {
++        access_key_id => $self->access_key_id,
++        secret_access_key => $self->secret_access_key,
++        session_token => $self->session_token
++    };
++}
++
++__PACKAGE__->meta->make_immutable;
++
++1;
+diff --git a/lib/Net/Amazon/Auth/InstanceProfileCredentialsProvider.pm b/lib/Net/Amazon/Auth/InstanceProfileCredentialsProvider.pm
+new file mode 100755
+index 0000000..b9f826a
+--- /dev/null
++++ b/lib/Net/Amazon/Auth/InstanceProfileCredentialsProvider.pm
+@@ -0,0 +1,57 @@
++package Net::Amazon::Auth::InstanceProfileCredentialsProvider;
++
++use Moose 0.85;
++use MooseX::StrictConstructor 0.16;
++use HTTP::Date;
++use JSON;
++
++with 'Net::Amazon::Auth::CredentialsProvider';
++
++has '_ua' => ( is => 'rw', isa => 'LWP::UserAgent', required => 0 );
++has '_access_key_id'     => ( is => 'rw', isa => 'Str', required => 0 );
++has '_secret_access_key' => ( is => 'rw', isa => 'Str', required => 0 );
++has '_session_token' => ( is => 'rw', isa => 'Str', required => 0 );
++has '_expiration_date' => ( is => 'rw', isa => 'Int', required => 0, default => 0 );
++
++sub BUILD {
++    my $self = shift;
++    my $ua = LWP::UserAgent->new;
++    $ua->timeout(10);
++    $self->_ua($ua);
++}
++
++sub refresh {
++    my $self = shift;
++
++    my $role_name_response =
++        $self->_ua->get("http://169.254.169.254/latest/meta-data/iam/security-credentials/");
++    if ($role_name_response->code == 200) {
++        my $credentials_response = $self->_ua->get("http://169.254.169.254/latest/meta-data/iam/security-credentials/" . $role_name_response->content);
++
++        if ($credentials_response->code == 200) {
++            my $credentials = decode_json($credentials_response->content);
++            $self->_expiration_date(str2time($credentials->{Expiration}));
++            $self->_access_key_id($credentials->{AccessKeyId});
++            $self->_secret_access_key($credentials->{SecretAccessKey});
++            $self->_session_token($credentials->{Token});
++        }
++    }
++}
++
++sub get_credentials {
++    my $self = shift;
++
++    if (time() - $self->_expiration_date > -5 * 60) { #Credentials available 5 minutes before expiry
++        $self->refresh;
++    }
++
++    return {
++        access_key_id => $self->_access_key_id,
++        secret_access_key => $self->_secret_access_key,
++        session_token => $self->_session_token
++    };
++}
++
++__PACKAGE__->meta->make_immutable;
++
++1;
+diff --git a/lib/Net/Amazon/S3.pm b/lib/Net/Amazon/S3.pm
+index 907113e..a369e4b 100755
+--- a/lib/Net/Amazon/S3.pm
++++ b/lib/Net/Amazon/S3.pm
+@@ -133,9 +133,10 @@ use LWP::UserAgent::Determined;
+ use URI::Escape qw(uri_escape_utf8);
+ use XML::LibXML;
+ use XML::LibXML::XPathContext;
++use Net::Amazon::Auth::FixedCredentialsProvider;
++use Net::Amazon::Auth::CredentialsProviderChain;
+ 
+-has 'aws_access_key_id'     => ( is => 'ro', isa => 'Str', required => 1 );
+-has 'aws_secret_access_key' => ( is => 'ro', isa => 'Str', required => 1 );
++has 'credentials_provider' => ( is => 'ro', isa => 'Net::Amazon::Auth::CredentialsProvider', required => 0, default => sub { return Net::Amazon::Auth::CredentialsProviderChain->default_chain; } );
+ has 'secure' => ( is => 'ro', isa => 'Bool', required => 0, default => 0 );
+ has 'timeout' => ( is => 'ro', isa => 'Num',  required => 0, default => 30 );
+ has 'retry'   => ( is => 'ro', isa => 'Bool', required => 0, default => 0 );
+@@ -144,7 +145,23 @@ has 'libxml' => ( is => 'rw', isa => 'XML::LibXML',    required => 0 );
+ has 'ua'     => ( is => 'rw', isa => 'LWP::UserAgent', required => 0 );
+ has 'err'    => ( is => 'rw', isa => 'Maybe[Str]',     required => 0 );
+ has 'errstr' => ( is => 'rw', isa => 'Maybe[Str]',     required => 0 );
+-has 'aws_session_token' => ( is => 'ro', isa => 'Str', required => 0 );
++
++around BUILDARGS => sub {
++    my $orig = shift;
++    my $class = shift;
++
++    my $args = $class->$orig(@_);
++
++    if (exists $args->{aws_access_key_id}) {
++        $args->{credentials_provider} = Net::Amazon::Auth::FixedCredentialsProvider->new({
++                access_key_id => $args->{aws_access_key_id},
++                secret_access_key => $args->{aws_secret_access_key},
++                session_token => $args->{aws_session_token}
++            });
++        delete @{$args}{qw(aws_access_key_id aws_secret_access_key aws_session_token)};
++    }
++    return $args;
++};
+ 
+ __PACKAGE__->meta->make_immutable;
+ 
+@@ -223,6 +240,24 @@ sub BUILD {
+ 
+     $self->ua($ua);
+     $self->libxml( XML::LibXML->new );
++
++    die "No AWS credentials found!" unless defined $self->credentials_provider->get_credentials->{access_key_id};
++}
++
++# Backwards compatibility
++sub aws_access_key_id {
++    my $self = shift;
++    return $self->credentials_provider->get_credentials->{access_key_id};
++}
++
++sub aws_secret_access_key {
++    my $self = shift;
++    return $self->credentials_provider->get_credentials->{secret_access_key};
++}
++
++sub aws_session_token {
++    my $self = shift;
++    return $self->credentials_provider->get_credentials->{session_token};
+ }
+ 
+ =head2 buckets
+diff --git a/lib/Net/Amazon/S3/HTTPRequest.pm b/lib/Net/Amazon/S3/HTTPRequest.pm
+index 69c6327..d49e95b 100755
+--- a/lib/Net/Amazon/S3/HTTPRequest.pm
++++ b/lib/Net/Amazon/S3/HTTPRequest.pm
+@@ -63,8 +63,9 @@ sub query_string_authentication_uri {
+     my $path    = $self->path;
+     my $headers = $self->headers;
+ 
+-    my $aws_access_key_id     = $self->s3->aws_access_key_id;
+-    my $aws_secret_access_key = $self->s3->aws_secret_access_key;
++    my $creds = $self->s3->credentials_provider->get_credentials;
++    my $aws_access_key_id     = $creds->{access_key_id};
++    my $aws_secret_access_key = $creds->{secret_access_key};
+     my $canonical_string
+         = $self->_canonical_string( $method, $path, $headers, $expires );
+     my $encoded_canonical
+@@ -86,9 +87,10 @@ sub query_string_authentication_uri {
+ 
+ sub _add_auth_header {
+     my ( $self, $headers, $method, $path ) = @_;
+-    my $aws_access_key_id     = $self->s3->aws_access_key_id;
+-    my $aws_secret_access_key = $self->s3->aws_secret_access_key;
+-    my $aws_session_token     = $self->s3->aws_session_token;
++    my $creds = $self->s3->credentials_provider->get_credentials;
++    my $aws_access_key_id     = $creds->{access_key_id};
++    my $aws_secret_access_key = $creds->{secret_access_key};
++    my $aws_session_token     = $creds->{session_token};
+ 
+     if ( not $headers->header('Date') ) {
+         $headers->header( Date => time2str(time) );
diff --git a/pkgs/development/ruby-modules/fake-s3-list-bucket.patch b/pkgs/development/ruby-modules/fake-s3-list-bucket.patch
new file mode 100644
index 000000000000..251935161d18
--- /dev/null
+++ b/pkgs/development/ruby-modules/fake-s3-list-bucket.patch
@@ -0,0 +1,30 @@
+commit 983634ea6b81910529596c262644eacfa2c2c4f9
+Author: Shea Levy <shea@shealevy.com>
+Date:   Wed Sep 4 16:16:12 2013 -0400
+
+    Fix LS_BUCKET
+    
+    GET foo.s3.amazonaws.com/ and GET s3.amazonaws.com/foo should result in
+    an LS_BUCKET request, but under the previous logic it would result in a
+    LIST_BUCKETS request. GET s3.amazonaws.com/ still results in a
+    LIST_BUCKETS request due to the 'if path == "/" and s_req.is_path_style'
+    conditional.
+    
+    Signed-off-by: Shea Levy <shea@shealevy.com>
+
+diff --git a/lib/fakes3/server.rb b/lib/fakes3/server.rb
+index 6958151..36d9cad 100644
+--- a/lib/fakes3/server.rb
++++ b/lib/fakes3/server.rb
+@@ -213,10 +213,7 @@ module FakeS3
+           elems = path.split("/")
+         end
+ 
+-        if elems.size == 0
+-          # List buckets
+-          s_req.type = Request::LIST_BUCKETS
+-        elsif elems.size == 1
++        if elems.size < 2
+           s_req.type = Request::LS_BUCKET
+           s_req.query = query
+         else
diff --git a/pkgs/development/ruby-modules/rake/default.nix b/pkgs/development/ruby-modules/rake/default.nix
deleted file mode 100644
index e1cec53aaa06..000000000000
--- a/pkgs/development/ruby-modules/rake/default.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{stdenv, fetchurl, ruby}:
-
-stdenv.mkDerivation {
-  name = "rake-0.8.1";
-  src = fetchurl {
-    url = "http://rubyforge.org/frs/download.php/29752/rake-0.8.1.tgz";
-    sha256 = "1kggvkkj609hj1xvpadzchki66i7ynz3qq4nc2hmfkf536fx8c03";
-  };
-  buildInputs = [ruby];
-  patchPhase = ''
-    sed -i install.rb \
-        -e 's/$bindir  = destdir + $bindir/prefix = CONFIG["prefix"];$bindir = $bindir.slice(prefix.length..$bindir.length);$bindir = destdir + $bindir/' \
-        -e 's/$sitedir = destdir + $sitedir/$sitedir = $sitedir.slice(prefix.length..$sitedir.length);$sitedir = destdir + $sitedir/'
-  '';
-  buildPhase = "true";
-  installPhase = ''
-    mkdir -p $out/lib
-    mkdir -p $out/bin
-    export DESTDIR=$out
-    ruby install.rb
-  '';
-}
diff --git a/pkgs/development/tools/haskell/HaRe/default.nix b/pkgs/development/tools/haskell/HaRe/default.nix
index 88f5d0baee67..cb0ad759d55a 100644
--- a/pkgs/development/tools/haskell/HaRe/default.nix
+++ b/pkgs/development/tools/haskell/HaRe/default.nix
@@ -1,12 +1,25 @@
-{ cabal, filepath, hint, mtl, network, syb }:
+{ cabal, cmdtheline, deepseq, Diff, filepath, ghcMod, ghcPaths
+, ghcSybUtils, hslogger, hspec, HUnit, mtl, parsec, QuickCheck
+, rosezipper, silently, StrafunskiStrategyLib, stringbuilder, syb
+, syz, time, transformers
+}:
 
 cabal.mkDerivation (self: {
   pname = "HaRe";
-  version = "0.6.0.2";
-  sha256 = "13mi6z37fszrl97mll4injhq8dyhqzm344x7y2vw8krr5xjj3kw2";
-  isLibrary = false;
+  version = "0.7.0.1";
+  sha256 = "1ykbyc6p71k6rs85vcsjgk47cxd2lda3iw78jzs0fx43qr1dywnl";
+  isLibrary = true;
   isExecutable = true;
-  buildDepends = [ filepath hint mtl network syb ];
+  buildDepends = [
+    cmdtheline filepath ghcMod ghcPaths ghcSybUtils hslogger mtl parsec
+    rosezipper StrafunskiStrategyLib syb syz time transformers
+  ];
+  testDepends = [
+    deepseq Diff filepath ghcMod ghcPaths ghcSybUtils hslogger hspec
+    HUnit mtl QuickCheck rosezipper silently StrafunskiStrategyLib
+    stringbuilder syb syz time transformers
+  ];
+  jailbreak = true;
   meta = {
     homepage = "http://www.cs.kent.ac.uk/projects/refactor-fp";
     description = "the Haskell Refactorer";
diff --git a/pkgs/development/tools/haskell/hslogger/default.nix b/pkgs/development/tools/haskell/hslogger/default.nix
index f99a4585ec69..a851b8912c71 100644
--- a/pkgs/development/tools/haskell/hslogger/default.nix
+++ b/pkgs/development/tools/haskell/hslogger/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "hslogger";
-  version = "1.2.2";
-  sha256 = "0j15nma6yf3cxb9j232kif1a836zmncfyklz9wp1mx064nblr5jf";
+  version = "1.2.3";
+  sha256 = "0rmijkrf24srcg8zgizf5vidpsgr4171wbzbwgrg66l704mkkb7m";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ mtl network time ];
diff --git a/pkgs/development/tools/haskell/timeplot/default.nix b/pkgs/development/tools/haskell/timeplot/default.nix
index b2f6316dd99c..71a0835713c5 100644
--- a/pkgs/development/tools/haskell/timeplot/default.nix
+++ b/pkgs/development/tools/haskell/timeplot/default.nix
@@ -1,18 +1,17 @@
-{ cabal, bytestringLexing, cairo, Chart, colour, dataAccessor
-, dataAccessorTemplate, regexTdfa, strptime, time, transformers
+{ cabal, bytestringLexing, cairo, Chart, ChartCairo, colour
+, dataDefault, lens, regexTdfa, strptime, time, transformers
 , vcsRevision
 }:
 
 cabal.mkDerivation (self: {
   pname = "timeplot";
-  version = "1.0.21";
-  sha256 = "0x9f95w235yijp98xx9nry0ibsxr0iyshk6cd89n51xrk1zpk41l";
+  version = "1.0.22";
+  sha256 = "1dp1prcx3d6a0fr3xrdj6flp27sy7qbng5bbdjgjbb7rq8497if9";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
-    bytestringLexing cairo Chart colour dataAccessor
-    dataAccessorTemplate regexTdfa strptime time transformers
-    vcsRevision
+    bytestringLexing cairo Chart ChartCairo colour dataDefault lens
+    regexTdfa strptime time transformers vcsRevision
   ];
   meta = {
     homepage = "http://haskell.org/haskellwiki/Timeplot";
diff --git a/pkgs/development/tools/haskell/uuagc/cabal.nix b/pkgs/development/tools/haskell/uuagc/cabal.nix
index ea981ad423b0..38be593a1f04 100644
--- a/pkgs/development/tools/haskell/uuagc/cabal.nix
+++ b/pkgs/development/tools/haskell/uuagc/cabal.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uuagc-cabal";
-  version = "1.0.4.0";
-  sha256 = "0m6q8lfbrzcdxd923s175x0z1rnniv7gk08ninzpq16fisscr4lf";
+  version = "1.0.5.0";
+  sha256 = "0p3rc1gszd62wwzzqz0hmj6jdmwdnpx92rdf6mgd7w63ic1wdxj5";
   buildDepends = [ Cabal filepath mtl uulib ];
   meta = {
     homepage = "http://www.cs.uu.nl/wiki/HUT/WebHome";
diff --git a/pkgs/development/tools/haskell/uuagc/default.nix b/pkgs/development/tools/haskell/uuagc/default.nix
index 69c956ef1de5..165ea131dd9e 100644
--- a/pkgs/development/tools/haskell/uuagc/default.nix
+++ b/pkgs/development/tools/haskell/uuagc/default.nix
@@ -2,8 +2,8 @@
 
 cabal.mkDerivation (self: {
   pname = "uuagc";
-  version = "0.9.42.3";
-  sha256 = "0rn0wqccg2v4akh3wj16s5y60fscdfjpvrpsmvbc2vfq2v33y53n";
+  version = "0.9.50";
+  sha256 = "0vyydqgmyl590ry63ibwshfpj2w9dd2v0nmr4jqlfw0m0d9ff50j";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [ filepath haskellSrcExts mtl uuagcCabal uulib ];
diff --git a/pkgs/development/tools/misc/lttng-tools/default.nix b/pkgs/development/tools/misc/lttng-tools/default.nix
index 9bc24b9387bf..42d11ebe7c57 100644
--- a/pkgs/development/tools/misc/lttng-tools/default.nix
+++ b/pkgs/development/tools/misc/lttng-tools/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, popt, libuuid, liburcu, lttngUst }:
 
 stdenv.mkDerivation rec {
-  name = "lttng-tools-2.2.3";
+  name = "lttng-tools-2.3.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-tools/${name}.tar.bz2";
-    sha256 = "1p16n42j34xkaj17zg2g12rzkfwpdv9ay1h4bkdq6038v320mljv";
+    sha256 = "16j55xqrh00mjbcvdmdkfxchavi7jsxlpnfjqc1g1d3x65ss9wri";
   };
 
   buildInputs = [ popt libuuid liburcu lttngUst ];
diff --git a/pkgs/development/tools/misc/lttng-ust/default.nix b/pkgs/development/tools/misc/lttng-ust/default.nix
index d234a7b74f8a..014a97a91581 100644
--- a/pkgs/development/tools/misc/lttng-ust/default.nix
+++ b/pkgs/development/tools/misc/lttng-ust/default.nix
@@ -12,11 +12,11 @@
 # Debian builds with std.h (systemtap).
 
 stdenv.mkDerivation rec {
-  name = "lttng-ust-2.2.1";
+  name = "lttng-ust-2.3.0";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-ust/${name}.tar.bz2";
-    sha256 = "0881ri3v96fjii24qnwgsypk4crri4qp6mc4zp7kwghz8gys9rla";
+    sha256 = "1hazjybrppyaakvfp1bs92vx0n2sgcsw0m6i5hwq7xq8vij7cj4q";
   };
 
   buildInputs = [ liburcu ];
diff --git a/pkgs/development/tools/misc/uncrustify/default.nix b/pkgs/development/tools/misc/uncrustify/default.nix
new file mode 100644
index 000000000000..cf1ec5edbcd9
--- /dev/null
+++ b/pkgs/development/tools/misc/uncrustify/default.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "uncrustify-0.60";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/uncrustify/${name}.tar.gz";
+    sha256 = "1v3wlkh669mfzbyg68xz7c1hj3kj7l6cavbvbj3jr47ickc3wzsa";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Source code beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA";
+    homepage = http://uncrustify.sourceforge.net/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/development/web/nodejs/build-node-package.nix b/pkgs/development/web/nodejs/build-node-package.nix
index 975ec896fe20..217c81d43176 100644
--- a/pkgs/development/web/nodejs/build-node-package.nix
+++ b/pkgs/development/web/nodejs/build-node-package.nix
@@ -52,7 +52,7 @@ stdenv.mkDerivation ({
       fi
     '') args.passthru.names)}
     ${concatStrings (concatMap (dep: map (name: ''
-      mv node_modules/${dep.name} $out/lib/node_modules
+      mv node_modules/${name} $out/lib/node_modules
     '') dep.names) peerDependencies)}
     mv node_modules/.bin $out/lib/node_modules 2>/dev/null || true
     mv node_modules $out/.dependent-node-modules
diff --git a/pkgs/games/vessel/default.nix b/pkgs/games/vessel/default.nix
index e6f3523fa246..9b9dd6c1f43f 100644
--- a/pkgs/games/vessel/default.nix
+++ b/pkgs/games/vessel/default.nix
@@ -78,7 +78,6 @@ stdenv.mkDerivation rec {
     homepage = http://www.strangeloopgames.com;
     license = [ "unfree" ];
     maintainers = with stdenv.lib.maintainers; [ jcumming ];
-    platforms = [ "i686-linux"] ;
   };
 
 }
diff --git a/pkgs/lib/maintainers.nix b/pkgs/lib/maintainers.nix
index 78c77f61f4e5..373d2a8da4d3 100644
--- a/pkgs/lib/maintainers.nix
+++ b/pkgs/lib/maintainers.nix
@@ -19,6 +19,7 @@
   bodil = "Bodil Stokke <nix@bodil.org>";
   chaoflow = "Florian Friesdorf <flo@chaoflow.net>";
   coconnor = "Corey O'Connor <coreyoconnor@gmail.com>";
+  edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
   eelco = "Eelco Dolstra <eelco.dolstra@logicblox.com>";
   ertes = "Ertugrul Söylemez <es@ertes.de>";
   garbas = "Rok Garbas <rok@garbas.si>";
diff --git a/pkgs/lib/modules.nix b/pkgs/lib/modules.nix
index 9dda89b09f0c..acd10e7bf576 100644
--- a/pkgs/lib/modules.nix
+++ b/pkgs/lib/modules.nix
@@ -46,25 +46,21 @@ rec {
   unifyModuleSyntax = m:
     let
       delayedModule = delayProperties m;
-      getImports =
-        if m ? config || m ? options then
-          m.imports or []
-        else
-          toList (rmProperties (delayedModule.require or []));
 
+      getImports =
+        toList (rmProperties (delayedModule.require or []));
       getImportedPaths = filter isPath getImports;
       getImportedSets = filter (x: !isPath x) getImports;
 
       getConfig =
-        removeAttrs delayedModule ["require" "key"];
+        removeAttrs delayedModule ["require" "key" "imports"];
 
     in
       if isModule m then
         { key = "<unknown location>"; } // m
       else
-        {
-          key = "<unknown location>";
-          imports = getImportedPaths;
+        { key = "<unknown location>";
+          imports = (m.imports or []) ++ getImportedPaths;
           config = getConfig;
         } // (
           if getImportedSets != [] then
diff --git a/pkgs/misc/emulators/vice/default.nix b/pkgs/misc/emulators/vice/default.nix
index 12f1222553ef..8323ca082b7f 100644
--- a/pkgs/misc/emulators/vice/default.nix
+++ b/pkgs/misc/emulators/vice/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, lib, perl, gettext, libpng, giflib, libjpeg, alsaLib, readline, mesa
+{ stdenv, fetchurl, perl, gettext, libpng, giflib, libjpeg, alsaLib, readline, mesa, libX11
 , pkgconfig, gtk, SDL, autoconf, automake, makeDesktopItem
 }:
 
@@ -28,6 +28,8 @@ stdenv.mkDerivation rec {
     autoreconf -f -i
   '';
   
+  NIX_LDFLAGS = "-lX11 -L${libX11}/lib";
+  
   postInstall = ''
     mkdir -p $out/share/applications
     cp ${desktopItem}/share/applications/* $out/share/applications
@@ -37,6 +39,6 @@ stdenv.mkDerivation rec {
     description = "Commodore 64, 128 and other emulators";
     homepage = http://www.viceteam.org;
     license = "GPLv2+";
-    maintainers = [ lib.maintainers.sander ];
+    maintainers = [ stdenv.lib.maintainers.sander ];
   };
 }
diff --git a/pkgs/os-specific/linux/bluez/bluez5.nix b/pkgs/os-specific/linux/bluez/bluez5.nix
index 561f2d8e1e70..6bc0759c1a2b 100644
--- a/pkgs/os-specific/linux/bluez/bluez5.nix
+++ b/pkgs/os-specific/linux/bluez/bluez5.nix
@@ -1,23 +1,22 @@
-{ stdenv, fetchurl, pkgconfig, dbus, glib, libusb, alsaLib, python, makeWrapper
-, pythonDBus, pygobject, readline, libsndfile, udev, libical, systemd }:
+{ stdenv, fetchurl, pkgconfig, dbus, glib, libusb, alsaLib, python,
+  pythonPackages, pythonDBus, readline, libsndfile, udev, libical,
+  systemd }:
 
 assert stdenv.isLinux;
 
-let
-  pythonpath = "${pythonDBus}/lib/${python.libPrefix}/site-packages:"
-    + "${pygobject}/lib/${python.libPrefix}/site-packages";
-in
-   
 stdenv.mkDerivation rec {
-  name = "bluez-5.3";
+  name = "bluez-5.8";
    
   src = fetchurl {
     url = "mirror://kernel/linux/bluetooth/${name}.tar.xz";
-    sha256 = "41b0559e3a8436a739eb7cc79156ca91daf8c115f57971b6bcb422ee0213db42";
+    sha256 = "1l33lq1lpg7hy26138ir5dj4gl3mql2qxpj20rjnnwyckc3jk700";
   };
 
+  pythonPath = with pythonPackages;
+    [ pythonDBus pygobject3 recursivePthLoader ];
+
   buildInputs =
-    [ pkgconfig dbus.libs glib libusb alsaLib python makeWrapper
+    [ pkgconfig dbus.libs glib libusb alsaLib python pythonPackages.wrapPython
       readline libsndfile udev libical
       # Disables GStreamer; not clear what it gains us other than a
       # zillion extra dependencies.
@@ -49,7 +48,9 @@ stdenv.mkDerivation rec {
   # FIXME: Move these into a separate package to prevent Bluez from
   # depending on Python etc.
   postInstall = ''
-    pushd test
+    mkdir $out/test
+    cp -a test $out
+    pushd $out/test
     for a in \
             simple-agent \
             test-adapter \
@@ -58,14 +59,19 @@ stdenv.mkDerivation rec {
             list-devices \
             monitor-bluetooth \
             ; do
-      cp $a $out/bin/bluez-$a
-      wrapProgram $out/bin/bluez-$a --prefix PYTHONPATH : ${pythonpath}
+      ln -s ../test/$a $out/bin/bluez-$a
     done
     popd
+    wrapPythonProgramsIn $out/test "$out/test $pythonPath"
+
+    # for bluez4 compatibility for NixOS
+    mkdir $out/sbin
+    ln -s ../libexec/bluetooth/bluetoothd $out/sbin/bluetoothd
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.bluez.org/;
     description = "Bluetooth support for Linux";
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
index 9ddddfde259a..f5efc565753c 100644
--- a/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
+++ b/pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
@@ -54,8 +54,8 @@ in stdenv.mkDerivation {
   buildInputs = [ dpkg ];
 
   installPhase = ''
-    mkdir -p $out/share
-    cp -r lib/firmware/* "$out/"
+    mkdir -p $out/share $out/lib/firmware
+    cp -r lib/firmware/* "$out/lib/firmware/"
     cp -r usr/share/doc $out/share/
     find $out/share -name changelog.gz | xargs rm
   '';
@@ -65,6 +65,5 @@ in stdenv.mkDerivation {
     homepage = http://packages.debian.org/sid/firmware-linux-nonfree;
     license = stdenv.lib.licenses.unfreeRedistributableFirmware;
     platforms = stdenv.lib.platforms.linux;
-    priority = 10; # low priority so that other packages can override this big package
   };
 }
diff --git a/pkgs/os-specific/linux/kernel/common-config.nix b/pkgs/os-specific/linux/kernel/common-config.nix
index 90210b8d5ebb..d4f7c4e67187 100644
--- a/pkgs/os-specific/linux/kernel/common-config.nix
+++ b/pkgs/os-specific/linux/kernel/common-config.nix
@@ -24,9 +24,7 @@ with stdenv.lib;
   # Support drivers that need external firmware.
   STANDALONE n
 
-  # Enable the complete Linux kernel ".config" file to be saved in the kernel.
-  # Also, make it available at runtime as /proc/config.gz.
-  IKCONFIG y
+  # Make /proc/config.gz available.
   IKCONFIG_PROC y
 
   # Optimize with -O2, not -Os.
@@ -103,7 +101,9 @@ with stdenv.lib;
   FB_SIS_300 y
   FB_SIS_315 y
   FB_3DFX_ACCEL y
-  FB_GEODE y
+  ${optionalString (versionOlder version "3.9" || stdenv.system == "i686-linux") ''
+    FB_GEODE y
+  ''}
 
   # Video configuration.
   # Enable KMS for devices whose X.org driver supports it.
diff --git a/pkgs/os-specific/linux/kernel/linux-3.10.nix b/pkgs/os-specific/linux/kernel/linux-3.10.nix
index e054e5e16f5c..fa57fdd93ddc 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.10.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.10.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.10.9";
+  version = "3.10.10";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "1kwi5v4rw06rmb548wjkgi27amsfvpfd2n07bmyjvjqnqrldm5bk";
+    sha256 = "01cpg6j1jsjh4vgvmia12y6rci4gqb967gc0gqpz5gcimzg4bb5p";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/kernel/linux-3.11.nix b/pkgs/os-specific/linux/kernel/linux-3.11.nix
new file mode 100644
index 000000000000..34b2d4882897
--- /dev/null
+++ b/pkgs/os-specific/linux/kernel/linux-3.11.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, ... } @ args:
+
+import ./generic.nix (args // rec {
+  version = "3.11";
+  modDirVersion = "3.11.0";
+
+  src = fetchurl {
+    url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
+    sha256 = "1yfpa4fzhsn4r5dwkcf3azy0vqdms865jaikn3fdwbabmpqchgl0";
+  };
+
+  features.iwlwifi = true;
+  features.efiBootStub = true;
+  features.needsCifsUtils = true;
+  features.canDisableNetfilterConntrackHelpers = true;
+  features.netfilterRPFilter = true;
+})
diff --git a/pkgs/os-specific/linux/kernel/linux-3.4.nix b/pkgs/os-specific/linux/kernel/linux-3.4.nix
index 8dc4b0e4ddce..5bcb8aaf2506 100644
--- a/pkgs/os-specific/linux/kernel/linux-3.4.nix
+++ b/pkgs/os-specific/linux/kernel/linux-3.4.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.4.59";
+  version = "3.4.60";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/linux-${version}.tar.xz";
-    sha256 = "19ylh9k9qykr8x29jcqv1q6agmyvzx7q5md2yxph4sykjsccqzj7";
+    sha256 = "16pg9sdsf5nwp1lc583dcbn1ay67b7yb55xg8cgv63bvmh4h3vrb";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/lm-sensors/default.nix b/pkgs/os-specific/linux/lm-sensors/default.nix
index 4cfbdd6e691b..354027dbd714 100644
--- a/pkgs/os-specific/linux/lm-sensors/default.nix
+++ b/pkgs/os-specific/linux/lm-sensors/default.nix
@@ -1,13 +1,13 @@
 { stdenv, fetchurl, bison, flex, which, perl }:
 
-let version = "3.3.1"; in
+let version = "3.3.4"; in
 
 stdenv.mkDerivation rec {
-  name = "lm-sensors-3.3.1";
+  name = "lm-sensors-${version}";
   
   src = fetchurl {
     url = "http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-${version}.tar.bz2";
-    sha256 = "13v2gszagmx8hwjyzh2k47rdpc2kyg9zky3kdqhdbgzp8lwpik6g";
+    sha256 = "0vd7dgpcri7cbvgl5fwvja53lqz829vkbbp17x7b5r2xrc88cq5l";
   };
 
   buildInputs = [ bison flex which perl ];
diff --git a/pkgs/os-specific/linux/lttng-modules/default.nix b/pkgs/os-specific/linux/lttng-modules/default.nix
index 7495deb231d2..e58d61e426ba 100644
--- a/pkgs/os-specific/linux/lttng-modules/default.nix
+++ b/pkgs/os-specific/linux/lttng-modules/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl, kernelDev }:
 
 stdenv.mkDerivation rec {
-  pname = "lttng-modules-2.2.1";
+  pname = "lttng-modules-2.3.0";
   name = "${pname}-${kernelDev.version}";
 
   src = fetchurl {
     url = "https://lttng.org/files/lttng-modules/${pname}.tar.bz2";
-    sha256 = "00ww1443ssv614s1ix6zby8llaf6zzlxcf5k4w7jsyji47ng33m2";
+    sha256 = "0l9fbmpsjvm5pbrc6axy8chdp21j4b8fm0hmjhpk658ll0iixmpb";
   };
 
   patches = [ ./lttng-fix-build-error-on-linux-3.2.patch ];
diff --git a/pkgs/os-specific/linux/microcode/amd.nix b/pkgs/os-specific/linux/microcode/amd.nix
index dc5959d400d1..0ca33fa31f04 100644
--- a/pkgs/os-specific/linux/microcode/amd.nix
+++ b/pkgs/os-specific/linux/microcode/amd.nix
@@ -1,22 +1,25 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-
   name = "amd-ucode-2012-09-10";
 
   src = fetchurl {
-    url = "http://www.amd64.org/pub/microcode/${name}.tar";
+    urls =
+      [ "http://pkgs.fedoraproject.org/repo/pkgs/microcode_ctl/${name}.tar/559bc355d3799538584add80df2996f0/${name}.tar"
+        "http://www.amd64.org/pub/microcode/${name}.tar"
+      ];
     sha256 = "065phvhx5hx5ssdd1x2p5m1yv26ak7l5aaw6yk6h95x9mxn5r111";
   };
 
   installPhase = ''
-    mkdir -p $out/amd-ucode
-    mv microcode_amd_fam15h.bin microcode_amd.bin $out/amd-ucode/
+    mkdir -p $out/lib/firmware/amd-ucode $out/share/doc/amd-ucode
+    mv microcode_amd_fam15h.bin microcode_amd.bin $out/lib/firmware/amd-ucode/
+    mv LICENSE $out/share/doc/amd-ucode
   '';
 
   meta = {
-    description = "AMD Processor Microcode Patch";
-    homepage = "http://www.amd64.org/support/microcode.html";
-    license = "non-free";
+    description = "AMD Processor microcode patch";
+    homepage = http://www.amd64.org/support/microcode.html;
+    license = stdenv.lib.licenses.unfreeRedistributableFirmware;
   };
 }
diff --git a/pkgs/os-specific/linux/microcode/intel.nix b/pkgs/os-specific/linux/microcode/intel.nix
index e85ab29078b2..ad7cea180846 100644
--- a/pkgs/os-specific/linux/microcode/intel.nix
+++ b/pkgs/os-specific/linux/microcode/intel.nix
@@ -1,15 +1,17 @@
 { stdenv, fetchurl, microcode2ucode }:
 
-let version = "20120606";
-    num = "21385";
-in stdenv.mkDerivation {
+let version = "20130808"; in
+
+stdenv.mkDerivation {
   name = "microcode-intel-${version}";
+
   src = fetchurl {
-    url = "http://downloadmirror.intel.com/${num}/eng/microcode-${version}.tgz";
-    sha256 = "0hs95lj24zx3jscc64zg3hf8xc95vrnsyqlid66h453ib0wf8fg1";
+    url = "http://downloadmirror.intel.com/23082/eng/microcode-${version}.tgz";
+    sha256 = "19v0059v6dxv7ly57wgqy9nkjjnmprgwz4s94khdf213k5vikpfm";
   };
 
   buildInputs = [ microcode2ucode ];
+
   sourceRoot = ".";
 
   buildPhase = ''
@@ -17,12 +19,13 @@ in stdenv.mkDerivation {
   '';
 
   installPhase = ''
-    ensureDir $out
-    cp -r intel-ucode "$out/"
+    mkdir -p $out/lib/firmware
+    cp -r intel-ucode "$out/lib/firmware/"
   '';
 
   meta = {
     homepage = http://www.intel.com/;
     description = "Microcode for Intel processors";
+    license = stdenv.lib.licenses.unfree;
   };
 }
diff --git a/pkgs/os-specific/linux/nvidia-x11/default.nix b/pkgs/os-specific/linux/nvidia-x11/default.nix
index 455a763c7f0f..f8413b0e5416 100644
--- a/pkgs/os-specific/linux/nvidia-x11/default.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/default.nix
@@ -21,6 +21,7 @@ stdenv.mkDerivation {
 
   patches =
     [ ./version-test.patch ]
+    ++ optional (!libsOnly && versionAtLeast kernelDev.version "3.11") ./nvidia-drivers-linux-3.11-incremental.patch
     ;
 
   src =
diff --git a/pkgs/os-specific/linux/nvidia-x11/nvidia-drivers-linux-3.11-incremental.patch b/pkgs/os-specific/linux/nvidia-x11/nvidia-drivers-linux-3.11-incremental.patch
new file mode 100644
index 000000000000..bb6fad932e3c
--- /dev/null
+++ b/pkgs/os-specific/linux/nvidia-x11/nvidia-drivers-linux-3.11-incremental.patch
@@ -0,0 +1,25 @@
+From 8a8647ad942c8ac5161e1335f7f3e9dbb34dbf9e Mon Sep 17 00:00:00 2001
+From: Lukas Elsner <open@mindrunner.de>
+Date: Wed, 17 Jul 2013 01:16:04 +0200
+Subject: [PATCH] replace num_physpages with totalram_pages
+
+---
+ kernel/nv-linux.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/kernel/nv-linux.h b/kernel/nv-linux.h
+index 4e5ed89..46c51ec 100644
+--- a/kernel/nv-linux.h
++++ b/kernel/nv-linux.h
+@@ -957,7 +957,7 @@ static inline int nv_execute_on_all_cpus(void (*func)(void *info), void *info)
+ #endif
+ 
+ #if !defined(NV_VMWARE)
+-#define NV_NUM_PHYSPAGES                num_physpages
++#define NV_NUM_PHYSPAGES                totalram_pages
+ #define NV_GET_CURRENT_PROCESS()        current->tgid
+ #define NV_IN_ATOMIC()                  in_atomic()
+ #define NV_LOCAL_BH_DISABLE()           local_bh_disable()
+-- 
+1.8.3.2
+
diff --git a/pkgs/servers/firebird/default.nix b/pkgs/servers/firebird/default.nix
index 8ad16a3df2e9..365af29595c1 100644
--- a/pkgs/servers/firebird/default.nix
+++ b/pkgs/servers/firebird/default.nix
@@ -1,4 +1,20 @@
-{stdenv, fetchurl, libedit, icu
+{stdenv, fetchurl, libedit, ncurses, automake, autoconf, libtool
+, 
+  # icu = null: use icu which comes with firebird
+
+  # icu = pkgs.icu => you may have trouble sharing database files with windows
+  # users if "Collation unicode" columns are being used
+  # windows icu version is *30.dll, however neither the icu 3.0 nor the 3.6
+  # sources look close to what ships with this package.
+  # Thus I think its best to trust firebird devs and use their version
+
+  # icu version missmatch may cause such error when selecting from a table:
+  # "Collation unicode for character set utf8 is not installed"
+
+  # icu 3.0 can still be build easily by nix (by dropping the #elif case and
+  # make | make)
+  icu ? null
+
 , superServer ? false
 , port ? 3050
 , serviceName ? "gds_db"
@@ -6,9 +22,9 @@
 
 /*
    there are 3 ways to use firebird:
-   a) superserver 
+   a) superserver
     - one process, one thread for each connection
-   b) classic 
+   b) classic
     - is built by default
     - one process for each connection
     - on linux direct io operations (?)
@@ -22,23 +38,38 @@
 */
 
 stdenv.mkDerivation rec {
-  version = "2.5.2.26539-0";
+  version = "2.5.2.26540-0";
   name = "firebird-${version}";
 
+  # enableParallelBuilding = false; build fails
+
+  # http://tracker.firebirdsql.org/browse/CORE-3246
+  preConfigure = ''
+    makeFlags="$makeFlags CPU=$NIX_BUILD_CORES"
+  '';
+
   configureFlags =
     [ "--with-serivec-port=${builtins.toString port}"
       "--with-service-name=${serviceName}"
-      # "--with-system-icu"
-      # "--with-system-editline"
+      # "--disable-static"
+      "--with-system-editline"
+      "--with-fblog=/var/log/firebird"
+      "--with-fbconf=/etc/firebird"
+      "--with-fbsecure-db=/var/db/firebird/system"
     ]
-    ++ (stdenv.lib.optional superServer "--enable-superserver=true");
+    ++ (stdenv.lib.optional  (icu != null) "--with-system-icu")
+    ++ (stdenv.lib.optional superServer "--enable-superserver");
 
   src = fetchurl {
     url = "mirror://sourceforge/firebird/Firebird-${version}.tar.bz2";
-    sha256 = "1j5bcfl35hr6i4lcd08zls19bal2js3ar16gnwkzbhwxkxbyb43b";
+    sha256 = "0887a813wffp44hnc2gmwbc4ylpqw3fh3hz3bf6q3648344a9fdv";
   };
 
-  buildInputs = [libedit icu];
+  # configurePhase = ''
+  #   sed -i 's@cp /usr/share/automake-.*@@' autogen.sh
+  #   sh autogen.sh $configureFlags --prefix=$out
+  # '';
+  buildInputs = [libedit icu automake autoconf libtool];
 
   # TODO: Probably this hase to be tidied up..
   # make install requires beeing. disabling the root checks
diff --git a/pkgs/servers/samba/default.nix b/pkgs/servers/samba/default.nix
index dacfa75181f3..568daf36773f 100644
--- a/pkgs/servers/samba/default.nix
+++ b/pkgs/servers/samba/default.nix
@@ -68,8 +68,13 @@ stdenv.mkDerivation rec {
       ln -sv ../../../bin/smbspool $out/lib/cups/backend/smb
       mkdir -pv $out/etc/openldap/schema
       cp ../examples/LDAP/samba.schema $out/etc/openldap/schema
+
+      # For nsswitch. Glibc >= 2.1 looks for libnss_<name>.so.2 (see man
+      # nsswitch.conf), so provide that too.
       cp -v ../nsswitch/libnss_wins.so "$out/lib"
       cp -v ../nsswitch/libnss_winbind.so "$out/lib"
+      (cd "$out/lib" && ln -s libnss_winbind.so libnss_winbind.so.2)
+      (cd "$out/lib" && ln -s libnss_wins.so libnss_wins.so.2)
     '' # */
     + stdenv.lib.optionalString (configDir == "") "touch $out/lib/smb.conf";
 
diff --git a/pkgs/servers/search/elasticsearch/default.nix b/pkgs/servers/search/elasticsearch/default.nix
index 9afbc62ce8c7..f99ecded098b 100644
--- a/pkgs/servers/search/elasticsearch/default.nix
+++ b/pkgs/servers/search/elasticsearch/default.nix
@@ -1,17 +1,30 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl, makeWrapper, jre, utillinux }:
 stdenv.mkDerivation rec {
-  name = "elasticsearch-0.20.5";
+  name = "elasticsearch-0.90.3";
 
   src = fetchurl {
     url = "https://download.elasticsearch.org/elasticsearch/elasticsearch/${name}.tar.gz";
-    sha256 = "0r0h9znyflajps1k8hl9naixhg1gqmhz7glc009pzzv94ncdzrq1";
+    sha256 = "1l6rnp4yvlz4z6z4v3af08yd4sl91c4zz20a8yyif2p234lh3n2s";
   };
 
   patches = [ ./es-home.patch ];
 
+  buildInputs = [ makeWrapper jre utillinux ];
+
   installPhase = ''
     mkdir -p $out
     cp -R bin config lib $out
+
+    # don't want to have binary with name plugin
+    mv $out/bin/plugin $out/bin/elasticsearch-plugin
+
+    # set ES_CLASSPATH and JAVA_HOME
+    wrapProgram $out/bin/elasticsearch \
+      --prefix ES_CLASSPATH : "$out/lib/${name}.jar":"$out/lib/*":"$out/lib/sigar/*" \
+      --prefix PATH : "${utillinux}/bin/" \
+      --set JAVA_HOME "${jre}"
+    wrapProgram $out/bin/elasticsearch-plugin \
+      --prefix ES_CLASSPATH : "$out/lib/${name}.jar":"$out/lib/*":"$out/lib/sigar/*" --set JAVA_HOME "${jre}"
   '';
 
   meta = {
diff --git a/pkgs/servers/search/elasticsearch/es-home.patch b/pkgs/servers/search/elasticsearch/es-home.patch
index f9e460198a98..d75a5a8c052f 100644
--- a/pkgs/servers/search/elasticsearch/es-home.patch
+++ b/pkgs/servers/search/elasticsearch/es-home.patch
@@ -1,6 +1,6 @@
-diff -rc elasticsearch-0.20.5/bin/elasticsearch elasticsearch-0.20.5-new/bin/elasticsearch
-*** elasticsearch-0.20.5/bin/elasticsearch	2013-03-07 12:16:31.152494626 +0100
---- elasticsearch-0.20.5-new/bin/elasticsearch	2013-03-07 12:24:41.076081272 +0100
+diff -rc elasticsearch-0.90.3/bin/elasticsearch elasticsearch-0.90.3-new/bin/elasticsearch
+*** elasticsearch-0.90.3/bin/elasticsearch	2013-08-06 15:19:22.000000000 +0200
+--- elasticsearch-0.90.3-new/bin/elasticsearch	2013-08-27 16:42:00.935880011 +0200
 ***************
 *** 62,68 ****
   done
@@ -10,11 +10,50 @@ diff -rc elasticsearch-0.20.5/bin/elasticsearch elasticsearch-0.20.5-new/bin/ela
   
   # make ELASTICSEARCH_HOME absolute
   ES_HOME=`cd "$ES_HOME"; pwd`
---- 62,68 ----
+--- 62,71 ----
   done
   
   # determine elasticsearch home
-! ES_HOME=${ES_HOME:=`dirname "$SCRIPT"`/..}
+! if [ -z "$ES_HOME" ]; then
+!     echo "You must set the ES_HOME var" >&2
+!     exit 1
+! fi
   
   # make ELASTICSEARCH_HOME absolute
   ES_HOME=`cd "$ES_HOME"; pwd`
+diff -rc elasticsearch-0.90.3/bin/plugin elasticsearch-0.90.3-new/bin/plugin
+*** elasticsearch-0.90.3/bin/plugin	2013-08-06 15:19:22.000000000 +0200
+--- elasticsearch-0.90.3-new/bin/plugin	2013-08-27 16:49:01.024160295 +0200
+***************
+*** 16,22 ****
+  done
+  
+  # determine elasticsearch home
+! ES_HOME=`dirname "$SCRIPT"`/..
+  
+  # make ELASTICSEARCH_HOME absolute
+  ES_HOME=`cd "$ES_HOME"; pwd`
+--- 16,25 ----
+  done
+  
+  # determine elasticsearch home
+! if [ -z "$ES_HOME" ]; then
+!     echo "You must set the ES_HOME var" >&2
+!     exit 1
+! fi
+  
+  # make ELASTICSEARCH_HOME absolute
+  ES_HOME=`cd "$ES_HOME"; pwd`
+***************
+*** 46,50 ****
+    shift
+  done
+  
+! exec $JAVA $JAVA_OPTS -Xmx64m -Xms16m -Delasticsearch -Des.path.home="$ES_HOME" $properties -cp "$ES_HOME/lib/*" org.elasticsearch.plugins.PluginManager $args
+  
+--- 49,53 ----
+    shift
+  done
+  
+! exec $JAVA $JAVA_OPTS -Xmx64m -Xms16m -Delasticsearch -Des.path.home="$ES_HOME" $properties -cp "$ES_CLASSPATH/lib/*" org.elasticsearch.plugins.PluginManager $args
+  
diff --git a/pkgs/shells/zsh/default.nix b/pkgs/shells/zsh/default.nix
index 4fd717fa936d..50a33700b3b2 100644
--- a/pkgs/shells/zsh/default.nix
+++ b/pkgs/shells/zsh/default.nix
@@ -2,11 +2,11 @@
 
 let
 
-  version = "4.3.15";
+  version = "5.0.2";
 
   documentation = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}-doc.tar.bz2";
-    sha256 = "73b7ee1a737fbaf9be77cf6b55b27cca96bac39bc5ef25efa9ceb427cd1b5ad4";
+    sha256 = "99ee08cfc91935af8714bd98db652f016d6c7a8a71ba7c6d6223910cd0b7fbf1";
   };
   
 in
@@ -16,7 +16,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "mirror://sourceforge/zsh/zsh-${version}.tar.bz2";
-    sha256 = "8708f485823fb7e51aa696776d0dfac7d3558485182672cf9311c12a50a95486";
+    sha256 = "eb220ae5a8076191ec6b4c6a5a2f18122d074a19f25b45f0320b44b8166c5a03";
   };
   
   buildInputs = [ ncurses coreutils ];
diff --git a/pkgs/tools/backup/bacula/default.nix b/pkgs/tools/backup/bacula/default.nix
index d3acdf747539..4882097c91a7 100644
--- a/pkgs/tools/backup/bacula/default.nix
+++ b/pkgs/tools/backup/bacula/default.nix
@@ -1,14 +1,16 @@
-{stdenv, fetchurl, sqlite, postgresql, zlib, acl, ncurses, openssl, readline}:
+{ stdenv, fetchurl, sqlite, postgresql, zlib, acl, ncurses, openssl, readline }:
 
 stdenv.mkDerivation rec {
   name = "bacula-5.2.13";
 
   src = fetchurl {
-    url = "mirror://sourceforge/bacula/${name}.tar.gz";
+    url    = "mirror://sourceforge/bacula/${name}.tar.gz";
     sha256 = "1n3sc0kd7r0afpyi708y3md0a24rbldnfcdz0syqj600pxcd9gm4";
   };
 
-  buildInputs = [ postgresql sqlite zlib acl ncurses openssl readline ];
+  buildInputs = [ postgresql sqlite zlib ncurses openssl readline ]
+    # acl relies on attr, which I can't get to build on darwin
+    ++ stdenv.lib.optional (!stdenv.isDarwin) acl;
 
   configureFlags = [ 
     "--with-sqlite3=${sqlite}" 
@@ -20,11 +22,11 @@ stdenv.mkDerivation rec {
     ln -s $out/sbin/* $out/bin
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Enterprise ready, Network Backup Tool";
-    homepage = http://bacula.org/;
-    license = "GPLv2";
-    platforms = stdenv.lib.platforms.all;
-    maintainers = [ stdenv.lib.maintainers.iElectric ];
+    homepage    = http://bacula.org/;
+    license     = "GPLv2";
+    maintainers = with maintainers; [ iElectric lovek323 ];
+    platforms   = stdenv.lib.platforms.all;
   };
 }
diff --git a/pkgs/tools/backup/store-backup/default.nix b/pkgs/tools/backup/store-backup/default.nix
new file mode 100644
index 000000000000..e9b98fec7100
--- /dev/null
+++ b/pkgs/tools/backup/store-backup/default.nix
@@ -0,0 +1,109 @@
+{stdenv, which, coreutils, perl, fetchurl, perlPackages, makeWrapper, diffutils , writeScriptBin, bzip2}:
+
+# quick usage:
+# storeBackup.pl --sourceDir /home/user --backupDir /tmp/my_backup_destination
+# Its slow the first time because it compresses all files bigger than 1k (default setting)
+# The backup tool is bookkeeping which files got compressed
+
+# btrfs warning: you may run out of hardlinks soon
+
+# known impurity: test cases seem to bu using /tmp/storeBackup.lock ..
+
+let dummyMount = writeScriptBin "mount" "#!/bin/sh";
+in
+
+stdenv.mkDerivation {
+
+  name = "store-backup-3.4";
+
+  enableParallelBuilding = true;
+
+  buildInputs = [ perl makeWrapper ];
+
+  src = fetchurl {
+    url = http://download.savannah.gnu.org/releases/storebackup/storeBackup-3.4.tar.bz2;
+    sha256 = "101k3nhyfjj8y8hg0v0xqxsr4vlcfkmlczgbihvlv722fb7n5gi3";
+  };
+
+  installPhase = ''
+    ensureDir $out/scripts
+    mv * $out
+    mv $out/_ATTENTION_ $out/doc
+    mv $out/{correct.sh,cron-storebackup} $out/scripts
+
+    find $out -name "*.pl" | xargs sed -i \
+      -e 's@/bin/pwd@${coreutils}/bin/pwd@' \
+      -e 's@/bin/sync@${coreutils}/bin/sync@' \
+      -e '1 s@/usr/bin/env perl@${perl}/bin/perl@'
+
+    for p in $out/bin/*
+      do wrapProgram "$p" \
+      --prefix PERL5LIB ":" "${perlPackages.DBFile}/lib/perl5/site_perl" \
+      --prefix PATH ":" "${which}/bin:${bzip2}/bin"
+    done
+
+    patchShebangs $out
+    # do a dummy test ensuring this works
+
+    PATH=$PATH:${dummyMount}/bin
+
+
+    { # simple sanity test, test backup/restore of simple store paths
+
+      mkdir backup
+
+      backupRestore(){
+        source="$2"
+        echo =========
+        echo RUNNING TEST "$1" source: "$source"
+        mkdir restored
+
+        $out/bin/storeBackup.pl --sourceDir "$source" --backupDir backup
+        latestBackup=backup/default/$(ls -1 backup/default | sort | tail -n 1)
+        $out/bin/storeBackupRecover.pl -b "$latestBackup" -t restored -r /
+        ${diffutils}/bin/diff -r "$source" restored
+
+        # storeBackupCheckSource should return 0
+        $out/bin/storeBackupCheckSource.pl -s "$source" -b "$latestBackup"
+        # storeBackupCheckSource should return not 0 when using different source
+        ! $out/bin/storeBackupCheckSource.pl -s $TMP -b "$latestBackup"
+
+        # storeBackupCheckBackup should return 0
+        $out/bin/storeBackupCheckBackup.pl -c "$latestBackup"
+
+        chmod -R +w restored
+        rm -fr restored
+      }
+
+      testDir=$TMP/testDir
+
+      mkdir $testDir
+      echo X > $testDir/X
+      ln -s ./X $testDir/Y
+
+      backupRestore 'test 1: backup, restore' $testDir
+
+      # test huge blocks, according to docs files bigger than 100MB get split
+      # into pieces
+      dd if=/dev/urandom bs=100M of=block-1 count=1
+      dd if=/dev/urandom bs=100M of=block-2 count=1
+      cat block-1 block-2 > $testDir/block
+      backupRestore 'test 1 with huge block' $testDir
+
+      cat block-2 block-1 > $testDir/block
+      backupRestore 'test 1 with huge block reversed' $testDir
+
+      backupRestore 'test 2: backup, restore' $out
+      backupRestore 'test 3: backup, restore' $out
+      backupRestore 'test 4: backup diffutils to same backup locations, restore' ${diffutils}
+    }
+  '';
+
+  meta = {
+    description = "Storebackup is a backup suite that stores files on other disks";
+    homepage = http://savannah.nongnu.org/projects/storebackup;
+    license = stdenv.lib.licenses.gpl3Plus;
+    maintainers = [stdenv.lib.maintainers.marcweber];
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/bluetooth/obexftp/default.nix b/pkgs/tools/bluetooth/obexftp/default.nix
index 7326b1b40752..4a40b4393c37 100644
--- a/pkgs/tools/bluetooth/obexftp/default.nix
+++ b/pkgs/tools/bluetooth/obexftp/default.nix
@@ -1,14 +1,14 @@
-{stdenv, fetchurl, pkgconfig, openobex, bluez}:
+{stdenv, fetchurl, pkgconfig, openobex, bluez, cmake}:
    
 stdenv.mkDerivation rec {
-  name = "obexftp-0.23";
+  name = "obexftp-0.24";
    
   src = fetchurl {
-    url = "mirror://sourceforge/openobex/${name}.tar.bz2";
-    sha256 = "0djv239b14p221xjxzza280w3pnnwzpw4ssd6mshz36ki3r4z9s4";
+    url = "mirror://sourceforge/openobex/${name}-Source.tar.gz";
+    sha256 = "0szy7p3y75bd5h4af0j5kf0fpzx2w560fpy4kg3603mz11b9c1xr";
   };
 
-  buildInputs = [pkgconfig bluez];
+  buildInputs = [pkgconfig bluez cmake];
 
   propagatedBuildInputs = [openobex];
 
diff --git a/pkgs/tools/bluetooth/openobex/default.nix b/pkgs/tools/bluetooth/openobex/default.nix
index 97ed96371c8f..fc4d8611f877 100644
--- a/pkgs/tools/bluetooth/openobex/default.nix
+++ b/pkgs/tools/bluetooth/openobex/default.nix
@@ -1,17 +1,21 @@
-{stdenv, fetchurl, pkgconfig, bluez, libusb}:
+{stdenv, fetchurl, pkgconfig, bluez, libusb, cmake}:
    
 stdenv.mkDerivation rec {
-  name = "openobex-1.5";
+  name = "openobex-1.7.1";
    
   src = fetchurl {
-    url = "mirror://kernel/linux/bluetooth/${name}.tar.gz";
-    sha256 = "0rayjci99ahhvs2d16as1qql3vrcizd0nhi8n3n4g6krf1sh80p6";
+    url = "mirror://sourceforge/openobex/${name}-Source.tar.gz";
+    sha256 = "0mza0mrdrbcw4yix6qvl31kqy7bdkgxjycr0yx7yl089v5jlc9iv";
   };
 
-  buildInputs = [pkgconfig bluez libusb];
+  buildInputs = [pkgconfig bluez libusb cmake];
 
   configureFlags = "--enable-apps";
 
+  patchPhase = ''
+    sed -i "s!/lib/udev!$out/lib/udev!" udev/CMakeLists.txt
+    '';
+
   meta = {
     homepage = http://dev.zuckschwerdt.org/openobex/;
     description = "An open source implementation of the Object Exchange (OBEX) protocol";
diff --git a/pkgs/tools/filesystems/fuse-exfat/default.nix b/pkgs/tools/filesystems/fuse-exfat/default.nix
new file mode 100644
index 000000000000..093b01bb1417
--- /dev/null
+++ b/pkgs/tools/filesystems/fuse-exfat/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, pkgconfig, fuse, scons }:
+
+stdenv.mkDerivation rec {
+  name = "fuse-exfat-1.0.1";
+
+  src = fetchurl {
+    url = "http://exfat.googlecode.com/files/${name}.tar.gz";
+    sha256 = "0n27hpi45lj9hpi7k8d7npiwyhasf1v832g7ckpknd6lnyhipb0j";
+  };
+
+  buildInputs = [ pkgconfig fuse scons ];
+
+  buildPhase = ''
+    export CCFLAGS="-O2 -Wall -std=c99 -I${fuse}/include"
+    export LDFLAGS="-L${fuse}/lib"
+    mkdir -pv $out/sbin
+    scons DESTDIR=$out/sbin install
+  '';
+
+  installPhase = ":";
+
+  meta = {
+    homepage = http://code.google.com/p/exfat/;
+    description = "A FUSE-based filesystem that allows read and write access to exFAT devices";
+    platforms = stdenv.lib.platforms.linux;
+    license = stdenv.lib.licenses.gpl2;
+  };
+}
+
diff --git a/pkgs/tools/graphics/jbig2enc/default.nix b/pkgs/tools/graphics/jbig2enc/default.nix
index 60704d6300c3..71f0789286a1 100644
--- a/pkgs/tools/graphics/jbig2enc/default.nix
+++ b/pkgs/tools/graphics/jbig2enc/default.nix
@@ -16,4 +16,10 @@
   preFixup = ''
     make clean
   '';
+
+  meta = {
+    description = "Encoder for the JBIG2 image compression format";
+    license = stdenv.lib.licenses.asl20;
+    platforms = stdenv.lib.platforms.all;
+  };
 }
diff --git a/pkgs/tools/misc/heimdall/default.nix b/pkgs/tools/misc/heimdall/default.nix
index 0b0120ab2791..ab6102cf23c5 100644
--- a/pkgs/tools/misc/heimdall/default.nix
+++ b/pkgs/tools/misc/heimdall/default.nix
@@ -3,12 +3,12 @@
 }:
 
 stdenv.mkDerivation {
-  name = "heimdall-1.3.0";
+  name = "heimdall-1.4.0";
 
   src = fetchgit {
     url = git://github.com/Benjamin-Dobell/Heimdall.git;
-    rev = "ed9b08e5d9e3db60d52bccf6cb6919fb4bd47602";
-    sha256 = "e65f18299a05699595548cb27393a01b4e1dbbced82d4add8d0d55ef6514a691";
+    rev = "refs/tags/v1.4.0";
+    sha256 = "285785d83fd4edbe98c0fa38c27772f72950a5887b255c00937a1f11c79ebf57";
   };
 
   buildInputs =
@@ -16,14 +16,14 @@ stdenv.mkDerivation {
     ++ stdenv.lib.optional enableGUI qt4 ;
 
   makeFlags = "udevrulesdir=$(out)/lib/udev/rules.d";
-  
+
   preConfigure =
     ''
       pushd libpit
       ./configure
       make
       popd
-    
+
       cd heimdall
       substituteInPlace Makefile.in --replace sudo true
 
diff --git a/pkgs/tools/misc/stow/default.nix b/pkgs/tools/misc/stow/default.nix
new file mode 100644
index 000000000000..e0d7985ae07c
--- /dev/null
+++ b/pkgs/tools/misc/stow/default.nix
@@ -0,0 +1,34 @@
+{ stdenv, fetchurl, perl, perlPackages }:
+
+stdenv.mkDerivation {
+  name = "stow-2.2.0";
+
+  src = fetchurl {
+    url = mirror://gnu/stow/stow-2.2.0.tar.bz2;
+    sha256 = "01bbsqjmrnd9925s3grvgjnrl52q4w65imrvzy05qaij3pz31g46";
+  };
+
+  buildInputs = [ perl perlPackages.TestOutput ];
+
+  doCheck = true;
+
+  meta = {
+    description = "Stow is a tool for managing the installation of multiple software packages in the same run-time directory tree.";
+
+    longDescription = ''
+      GNU Stow is a symlink farm manager which takes distinct packages
+      of software and/or data located in separate directories on the
+      filesystem, and makes them appear to be installed in the same
+      place. For example, /usr/local/bin could contain symlinks to
+      files within /usr/local/stow/emacs/bin, /usr/local/stow/perl/bin
+      etc., and likewise recursively for any other subdirectories such
+      as .../share, .../man, and so on.
+    '';
+
+    license = "GPLv3+";
+    homepage = http://www.gnu.org/software/stow/;
+
+    maintainers = with stdenv.lib.maintainers; [ the-kenny ];
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/tools/package-management/cabal-install/1.18.0.nix b/pkgs/tools/package-management/cabal-install/1.18.0.nix
new file mode 100644
index 000000000000..8b093bc925ca
--- /dev/null
+++ b/pkgs/tools/package-management/cabal-install/1.18.0.nix
@@ -0,0 +1,30 @@
+{ cabal, Cabal, filepath, HTTP, HUnit, mtl, network, QuickCheck
+, random, stm, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2, time, zlib
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cabal-install";
+  version = "1.18.0";
+  sha256 = "14c4i8cy2rnvjj2krv3swna53k2674xhpzqkmcr56lxnyzych5wh";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    Cabal filepath HTTP mtl network random stm time zlib
+  ];
+  testDepends = [
+    Cabal filepath HTTP HUnit mtl network QuickCheck stm testFramework
+    testFrameworkHunit testFrameworkQuickcheck2 time zlib
+  ];
+  postInstall = ''
+    mkdir $out/etc
+    mv bash-completion $out/etc/bash_completion.d
+  '';
+  meta = {
+    homepage = "http://www.haskell.org/cabal/";
+    description = "The command-line interface for Cabal and Hackage";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    maintainers = [ self.stdenv.lib.maintainers.andres ];
+  };
+})
diff --git a/pkgs/tools/package-management/nix/unstable.nix b/pkgs/tools/package-management/nix/unstable.nix
index 4d5eeca12c1f..f61f5e2b95a8 100644
--- a/pkgs/tools/package-management/nix/unstable.nix
+++ b/pkgs/tools/package-management/nix/unstable.nix
@@ -5,11 +5,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "nix-1.6pre3187_3fb7ae0";
+  name = "nix-1.6pre3215_2c1ecf8";
 
   src = fetchurl {
-    url = "http://hydra.nixos.org/build/5663853/download/5/${name}.tar.xz";
-    sha256 = "3cd695b3bb23ea7f9e4779f5b79180319444204b30120ed2cc0f0bf1e070403f";
+    url = "http://hydra.nixos.org/build/5940181/download/5/${name}.tar.xz";
+    sha256 = "404fe856ae534b09e9a81d69751127e0987fea6bf2d0ec01acac3a9ea4ce72ae";
   };
 
   nativeBuildInputs = [ perl pkgconfig ];
diff --git a/pkgs/tools/security/scrypt/default.nix b/pkgs/tools/security/scrypt/default.nix
new file mode 100644
index 000000000000..ca2c9f43dfcd
--- /dev/null
+++ b/pkgs/tools/security/scrypt/default.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, openssl }:
+
+stdenv.mkDerivation rec {
+  name = "scrypt-${version}";
+  version = "1.1.6";
+
+  src = fetchurl {
+    url = "https://www.tarsnap.com/scrypt/scrypt-1.1.6.tgz";
+    sha256 = "dfd0d1a544439265bbb9b58043ad3c8ce50a3987b44a61b1d39fd7a3ed5b7fb8";
+  };
+
+  buildInputs = [ openssl ];
+
+  meta = {
+    description = "The scrypt encryption utility";
+    homepage = https://www.tarsnap.com/scrypt.html;
+    license = "BSD";
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/tools/system/collectd/default.nix b/pkgs/tools/system/collectd/default.nix
new file mode 100644
index 000000000000..7da45c596ef4
--- /dev/null
+++ b/pkgs/tools/system/collectd/default.nix
@@ -0,0 +1,17 @@
+{stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "collectd-5.4.0";
+  
+  src = fetchurl {
+    url = "http://collectd.org/files/${name}.tar.bz2";
+    sha256 = "0gljf5c60q6i0nrii6addxy1p76qqixww8zy17a7a1zil6a3i5wh";
+  };
+
+  meta = {
+    homepage = http://collectd.org;
+    description = "collectd is a daemon which collects system performance statistics periodically";
+    platforms = stdenv.lib.platforms.linux;
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/tools/system/smartmontools/default.nix b/pkgs/tools/system/smartmontools/default.nix
index be34fc52c7aa..0290d1961ce5 100644
--- a/pkgs/tools/system/smartmontools/default.nix
+++ b/pkgs/tools/system/smartmontools/default.nix
@@ -1,9 +1,10 @@
 { stdenv, fetchurl }:
 
 let
+  dbrev = "3849";
   driverdb = fetchurl {
-    url = "http://smartmontools.svn.sourceforge.net/viewvc/smartmontools/trunk/smartmontools/drivedb.h?revision=3812";
-    sha256 = "1x22ammjwlb7p3cmd13shqq1payb7nr9pgfa9xifs19qyr77mrwp";
+    url = "http://sourceforge.net/p/smartmontools/code/${dbrev}/tree/trunk/smartmontools/drivedb.h?format=raw";
+    sha256 = "06c1cl0x4sq64l3rmd5rk8wsbggjixphpgj0kf4awqhjgsi102xz";
     name = "smartmontools-drivedb.h";
   };
 in
diff --git a/pkgs/tools/system/vboot_reference/default.nix b/pkgs/tools/system/vboot_reference/default.nix
index 4c3c58b35cdd..ed48a9976d4c 100644
--- a/pkgs/tools/system/vboot_reference/default.nix
+++ b/pkgs/tools/system/vboot_reference/default.nix
@@ -1,13 +1,9 @@
 { stdenv, fetchgit, pkgconfig, libuuid, openssl }:
 
-let
-  arch = if stdenv.system == "x86_64-linux" then "x86_64"
-    else if stdenv.system == "i686-linux" then "x86"
-    else throw "vboot_reference for: ${stdenv.system} not supported!";
-
+stdenv.mkDerivation rec {
   version = "20130507";
   checkout = "25/50225/2";
-in stdenv.mkDerivation {
+
   name = "vboot_reference-${version}";
 
   src = fetchgit {
@@ -22,6 +18,10 @@ in stdenv.mkDerivation {
                  else [ (stdenv.lib.overrideDerivation libuuid
                           (args: { configureFlags = args.configureFlags + " --enable-static"; })) ]);
 
+  arch = if stdenv.system == "x86_64-linux" then "x86_64"
+    else if stdenv.system == "i686-linux" then "x86"
+    else throw "vboot_reference for: ${stdenv.system} not supported!";
+
   buildPhase = ''
     make ARCH=${arch} `pwd`/build/cgpt/cgpt
     make ARCH=${arch} `pwd`/build/utility/vbutil_kernel
@@ -38,4 +38,10 @@ in stdenv.mkDerivation {
     cp build/utility/vbutil_keyblock $out/bin
     cp build/utility/vbutil_firmware $out/bin
   '';
+
+  meta = {
+    description = "Chrome OS partitioning and kernel signing tools.";
+    license = stdenv.lib.licenses.bsd3;
+    platforms = stdenv.lib.platforms.linux;
+  };
 }
diff --git a/pkgs/tools/text/source-highlight/default.nix b/pkgs/tools/text/source-highlight/default.nix
index ca3ec39da71f..148bbfce99da 100644
--- a/pkgs/tools/text/source-highlight/default.nix
+++ b/pkgs/tools/text/source-highlight/default.nix
@@ -2,14 +2,14 @@
 
 let
   name = "source-highlight";
-  version = "3.1.6";
+  version = "3.1.7";
 in
 stdenv.mkDerivation {
   name = "${name}-${version}";
 
   src = fetchurl {
       url = "mirror://gnu/src-highlite/${name}-${version}.tar.gz";
-      sha256 = "0a5zh876nc1gig8z586b953r8ahh9zbs1lmi8vxjrkwp6zqzf4xm";
+      sha256 = "1s49ld8cnpzhhwq0r7s0sfm3cg3nhhm0wla27lwraifrrl3y1cp1";
     };
 
   configureFlags = [ "--with-boost=${boost}" ];
diff --git a/pkgs/tools/text/unoconv/default.nix b/pkgs/tools/text/unoconv/default.nix
new file mode 100644
index 000000000000..ac90cb556f90
--- /dev/null
+++ b/pkgs/tools/text/unoconv/default.nix
@@ -0,0 +1,41 @@
+{ stdenv, fetchurl, python3, libreoffice, asciidoc, makeWrapper
+# whether to install odt2pdf/odt2doc/... symlinks to unoconv
+, installSymlinks ? true
+}:
+
+# IMPORTANT: unoconv must use the same python version as libreoffice (unless it
+# will not be able to load the pyuno module from libreoffice).
+
+stdenv.mkDerivation rec {
+  name = "unoconv-0.6";
+
+  src = fetchurl {
+    url = "http://dag.wieers.com/home-made/unoconv/${name}.tar.gz";
+    sha256 = "1m3kv942zf5rzyrbkil0nhmyq9mm3007y64bb3s7w88mhr5n23kr";
+  };
+
+  buildInputs = [ asciidoc makeWrapper ];
+
+  # We need to use python3 because libreoffice 4.x uses it. This patch comes
+  # from unoconv.git, so it will be a part of the next release.
+  patches = [ ./unoconv-python3.patch ];
+
+  preBuild = ''
+    makeFlags=prefix="$out"
+  '';
+
+  postInstall = ''
+    sed -i "s|/usr/bin/env python.*|${python3}/bin/${python3.executable}|" "$out/bin/unoconv"
+    wrapProgram "$out/bin/unoconv" --set UNO_PATH "${libreoffice}/lib/libreoffice/program/"
+  '' + (if installSymlinks then ''
+    make install-links prefix="$out"
+  '' else "");
+
+  meta = with stdenv.lib; {
+    description = "Convert between any document format supported by LibreOffice/OpenOffice";
+    homepage = http://dag.wieers.com/home-made/unoconv/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/tools/text/unoconv/unoconv-python3.patch b/pkgs/tools/text/unoconv/unoconv-python3.patch
new file mode 100644
index 000000000000..b23f5d54c18f
--- /dev/null
+++ b/pkgs/tools/text/unoconv/unoconv-python3.patch
@@ -0,0 +1,374 @@
+commit fc59dd90f03cf88f4cf16c07204809f2239284ee
+Author: Riccardo Magliocchetti <riccardo.magliocchetti@gmail.com>
+Date:   Thu Dec 20 00:02:53 2012 +0100
+
+    Add support for python3
+    
+    Libreoffice 4.0 will switch its internal python version to 3.3.0
+    so it's to support that.
+    
+    Porting done automatically 2to3 plus print_function import added
+    manually. Tested on both libreoffice master with internal python
+    and with libreoffince 3.6.4 on debian with system python 2.7.
+    
+    This bumps the minimal python version to 2.6 since 2.5 does not
+    have the print function.
+
+diff --git a/unoconv b/unoconv
+index 30e6706..f72cf08 100755
+--- a/unoconv
++++ b/unoconv
+@@ -14,6 +14,8 @@
+ ### Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+ ### Copyright 2007-2010 Dag Wieers <dag@wieers.com>
+ 
++from __future__ import print_function
++
+ from distutils.version import LooseVersion
+ import getopt
+ import glob
+@@ -77,11 +79,11 @@ def find_offices():
+     else:
+ 
+         if os.name in ( 'nt', 'os2' ):
+-            if 'PROGRAMFILES' in os.environ.keys():
++            if 'PROGRAMFILES' in list(os.environ.keys()):
+                 extrapaths += glob.glob(os.environ['PROGRAMFILES']+'\\LibreOffice*') + \
+                               glob.glob(os.environ['PROGRAMFILES']+'\\OpenOffice.org*')
+ 
+-            if 'PROGRAMFILES(X86)' in os.environ.keys():
++            if 'PROGRAMFILES(X86)' in list(os.environ.keys()):
+                 extrapaths += glob.glob(os.environ['PROGRAMFILES(X86)']+'\\LibreOffice*') + \
+                               glob.glob(os.environ['PROGRAMFILES(X86)']+'\\OpenOffice.org*')
+ 
+@@ -233,18 +235,18 @@ def office_environ(office):
+ 
+ def debug_office():
+     if 'URE_BOOTSTRAP' in os.environ:
+-        print >>sys.stderr, 'URE_BOOTSTRAP=%s' % os.environ['URE_BOOTSTRAP']
++        print('URE_BOOTSTRAP=%s' % os.environ['URE_BOOTSTRAP'], file=sys.stderr)
+     if 'UNO_PATH' in os.environ:
+-        print >>sys.stderr, 'UNO_PATH=%s' % os.environ['UNO_PATH']
++        print('UNO_PATH=%s' % os.environ['UNO_PATH'], file=sys.stderr)
+     if 'UNO_TYPES' in os.environ:
+-        print >>sys.stderr, 'UNO_TYPES=%s' % os.environ['UNO_TYPES']
+-    print 'PATH=%s' % os.environ['PATH']
++        print('UNO_TYPES=%s' % os.environ['UNO_TYPES'], file=sys.stderr)
++    print('PATH=%s' % os.environ['PATH'])
+     if 'PYTHONHOME' in os.environ:
+-        print >>sys.stderr, 'PYTHONHOME=%s' % os.environ['PYTHONHOME']
++        print('PYTHONHOME=%s' % os.environ['PYTHONHOME'], file=sys.stderr)
+     if 'PYTHONPATH' in os.environ:
+-        print >>sys.stderr, 'PYTHONPATH=%s' % os.environ['PYTHONPATH']
++        print('PYTHONPATH=%s' % os.environ['PYTHONPATH'], file=sys.stderr)
+     if 'LD_LIBRARY_PATH' in os.environ:
+-        print >>sys.stderr, 'LD_LIBRARY_PATH=%s' % os.environ['LD_LIBRARY_PATH']
++        print('LD_LIBRARY_PATH=%s' % os.environ['LD_LIBRARY_PATH'], file=sys.stderr)
+ 
+ def python_switch(office):
+     if office.pythonhome:
+@@ -335,11 +337,11 @@ class FmtList:
+         return ret
+ 
+     def display(self, doctype):
+-        print >>sys.stderr, "The following list of %s formats are currently available:\n" % doctype
++        print("The following list of %s formats are currently available:\n" % doctype, file=sys.stderr)
+         for fmt in self.list:
+             if fmt.doctype == doctype:
+-                print >>sys.stderr, "  %-8s - %s" % (fmt.name, fmt)
+-        print >>sys.stderr
++                print("  %-8s - %s" % (fmt.name, fmt), file=sys.stderr)
++        print(file=sys.stderr)
+ 
+ fmts = FmtList()
+ 
+@@ -530,14 +532,14 @@ class Options:
+                  'outputpath', 'password=', 'pipe=', 'port=', 'server=',
+                  'timeout=', 'show', 'stdout', 'template', 'verbose',
+                  'version'] )
+-        except getopt.error, exc:
+-            print 'unoconv: %s, try unoconv -h for a list of all the options' % str(exc)
++        except getopt.error as exc:
++            print('unoconv: %s, try unoconv -h for a list of all the options' % str(exc))
+             sys.exit(255)
+ 
+         for opt, arg in opts:
+             if opt in ['-h', '--help']:
+                 self.usage()
+-                print
++                print()
+                 self.help()
+                 sys.exit(1)
+             elif opt in ['-c', '--connection']:
+@@ -562,7 +564,7 @@ class Options:
+                         except ValueError:
+                             self.exportfilter.append( PropertyValue( name, 0, value, 0 ) )
+                 else:
+-                    print >>sys.stderr, 'Warning: Option %s cannot be parsed, ignoring.' % arg
++                    print('Warning: Option %s cannot be parsed, ignoring.' % arg, file=sys.stderr)
+             elif opt in ['-f', '--format']:
+                 self.format = arg
+             elif opt in ['-i', '--import']:
+@@ -581,7 +583,7 @@ class Options:
+                         except ValueError:
+                             self.importfilter.append( PropertyValue( name, 0, value, 0 ) )
+                 else:
+-                    print >>sys.stderr, 'Warning: Option %s cannot be parsed, ignoring.' % arg
++                    print('Warning: Option %s cannot be parsed, ignoring.' % arg, file=sys.stderr)
+             elif opt in ['-l', '--listener']:
+                 self.listener = True
+             elif opt in ['-n', '--no-launch']:
+@@ -589,7 +591,7 @@ class Options:
+             elif opt in ['-o', '--output']:
+                 self.output = arg
+             elif opt in ['--outputpath']:
+-                print >>sys.stderr, 'Warning: This option is deprecated by --output.'
++                print('Warning: This option is deprecated by --output.', file=sys.stderr)
+                 self.output = arg
+             elif opt in ['--password']:
+                 self.password = arg
+@@ -615,13 +617,13 @@ class Options:
+ 
+         ### Enable verbosity
+         if self.verbose >= 2:
+-            print >>sys.stderr, 'Verbosity set to level %d' % self.verbose
++            print('Verbosity set to level %d' % self.verbose, file=sys.stderr)
+ 
+         self.filenames = args
+ 
+         if not self.listener and not self.showlist and self.doctype != 'list' and not self.filenames:
+-            print >>sys.stderr, 'unoconv: you have to provide a filename as argument'
+-            print >>sys.stderr, 'Try `unoconv -h\' for more information.'
++            print('unoconv: you have to provide a filename as argument', file=sys.stderr)
++            print('Try `unoconv -h\' for more information.', file=sys.stderr)
+             sys.exit(255)
+ 
+         ### Set connection string
+@@ -659,21 +661,21 @@ class Options:
+         ### Get office product information
+         product = uno.getComponentContext().ServiceManager.createInstance("com.sun.star.configuration.ConfigurationProvider").createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess", UnoProps(nodepath="/org.openoffice.Setup/Product"))
+ 
+-        print 'unoconv %s' % VERSION
+-        print 'Written by Dag Wieers <dag@wieers.com>'
+-        print 'Homepage at http://dag.wieers.com/home-made/unoconv/'
+-        print
+-        print 'platform %s/%s' % (os.name, sys.platform)
+-        print 'python %s' % sys.version
+-        print product.ooName, product.ooSetupVersion
++        print('unoconv %s' % VERSION)
++        print('Written by Dag Wieers <dag@wieers.com>')
++        print('Homepage at http://dag.wieers.com/home-made/unoconv/')
++        print()
++        print('platform %s/%s' % (os.name, sys.platform))
++        print('python %s' % sys.version)
++        print(product.ooName, product.ooSetupVersion)
+ #        print
+ #        print 'build revision $Rev$'
+ 
+     def usage(self):
+-        print >>sys.stderr, 'usage: unoconv [options] file [file2 ..]'
++        print('usage: unoconv [options] file [file2 ..]', file=sys.stderr)
+ 
+     def help(self):
+-        print >>sys.stderr, '''Convert from and to any format supported by LibreOffice
++        print('''Convert from and to any format supported by LibreOffice
+ 
+ unoconv options:
+   -c, --connection=string  use a custom connection string
+@@ -698,7 +700,7 @@ unoconv options:
+   -t, --template=file      import the styles from template (.ott)
+   -T, --timeout=secs       timeout after secs if connection to listener fails
+   -v, --verbose            be more and more verbose (-vvv for debugging)
+-'''
++''', file=sys.stderr)
+ 
+ class Convertor:
+     def __init__(self):
+@@ -714,7 +716,7 @@ class Convertor:
+         info(3, 'Connection type: %s' % op.connection)
+         try:
+             unocontext = resolver.resolve("uno:%s" % op.connection)
+-        except NoConnectException, e:
++        except NoConnectException as e:
+ #            info(3, "Existing listener not found.\n%s" % e)
+             info(3, "Existing listener not found.")
+ 
+@@ -749,7 +751,7 @@ class Convertor:
+                         raise
+                 else:
+                     error("Failed to connect to %s (pid=%s) in %d seconds.\n%s" % (office.binary, ooproc.pid, op.timeout, e))
+-            except Exception, e:
++            except Exception as e:
+                 raise
+                 error("Launch of %s failed.\n%s" % (office.binary, e))
+ 
+@@ -799,9 +801,9 @@ class Convertor:
+         ### No format found, throw error
+         if not outputfmt:
+             if doctype:
+-                print >>sys.stderr, 'unoconv: format [%s/%s] is not known to unoconv.' % (op.doctype, op.format)
++                print('unoconv: format [%s/%s] is not known to unoconv.' % (op.doctype, op.format), file=sys.stderr)
+             else:
+-                print >>sys.stderr, 'unoconv: format [%s] is not known to unoconv.' % op.format
++                print('unoconv: format [%s] is not known to unoconv.' % op.format, file=sys.stderr)
+             die(1)
+ 
+         return outputfmt
+@@ -813,10 +815,10 @@ class Convertor:
+         outputfmt = self.getformat(inputfn)
+ 
+         if op.verbose > 0:
+-            print >>sys.stderr, 'Input file:', inputfn
++            print('Input file:', inputfn, file=sys.stderr)
+ 
+         if not os.path.exists(inputfn):
+-            print >>sys.stderr, 'unoconv: file `%s\' does not exist.' % inputfn
++            print('unoconv: file `%s\' does not exist.' % inputfn, file=sys.stderr)
+             exitcode = 1
+ 
+         try:
+@@ -854,7 +856,7 @@ class Convertor:
+                     templateurl = unohelper.absolutize(self.cwd, unohelper.systemPathToFileUrl(op.template))
+                     document.StyleFamilies.loadStylesFromURL(templateurl, templateprops)
+                 else:
+-                    print >>sys.stderr, 'unoconv: template file `%s\' does not exist.' % op.template
++                    print('unoconv: template file `%s\' does not exist.' % op.template, file=sys.stderr)
+                     exitcode = 1
+ 
+             ### Update document links
+@@ -924,40 +926,40 @@ class Convertor:
+ 
+             try:
+                 document.storeToURL(outputurl, tuple(outputprops) )
+-            except IOException, e:
++            except IOException as e:
+                 raise UnoException("Unable to store document to %s (ErrCode %d)\n\nProperties: %s" % (outputurl, e.ErrCode, outputprops), None)
+ 
+             phase = "dispose"
+             document.dispose()
+             document.close(True)
+ 
+-        except SystemError, e:
++        except SystemError as e:
+             error("unoconv: SystemError during %s phase:\n%s" % (phase, e))
+             exitcode = 1
+ 
+-        except RuntimeException, e:
++        except RuntimeException as e:
+             error("unoconv: RuntimeException during %s phase:\nOffice probably died. %s" % (phase, e))
+             exitcode = 6
+ 
+-        except DisposedException, e:
++        except DisposedException as e:
+             error("unoconv: DisposedException during %s phase:\nOffice probably died. %s" % (phase, e))
+             exitcode = 7
+ 
+-        except IllegalArgumentException, e:
++        except IllegalArgumentException as e:
+             error("UNO IllegalArgument during %s phase:\nSource file cannot be read. %s" % (phase, e))
+             exitcode = 8
+ 
+-        except IOException, e:
++        except IOException as e:
+ #            for attr in dir(e): print '%s: %s', (attr, getattr(e, attr))
+             error("unoconv: IOException during %s phase:\n%s" % (phase, e.Message))
+             exitcode = 3
+ 
+-        except CannotConvertException, e:
++        except CannotConvertException as e:
+ #            for attr in dir(e): print '%s: %s', (attr, getattr(e, attr))
+             error("unoconv: CannotConvertException during %s phase:\n%s" % (phase, e.Message))
+             exitcode = 4
+ 
+-        except UnoException, e:
++        except UnoException as e:
+             if hasattr(e, 'ErrCode'):
+                 error("unoconv: UnoException during %s phase in %s (ErrCode %d)" % (phase, repr(e.__class__), e.ErrCode))
+                 exitcode = e.ErrCode
+@@ -982,7 +984,7 @@ class Listener:
+             product = self.svcmgr.createInstance("com.sun.star.configuration.ConfigurationProvider").createInstanceWithArguments("com.sun.star.configuration.ConfigurationAccess", UnoProps(nodepath="/org.openoffice.Setup/Product"))
+             try:
+                 unocontext = resolver.resolve("uno:%s" % op.connection)
+-            except NoConnectException, e:
++            except NoConnectException as e:
+                 pass
+             else:
+                 info(1, "Existing %s listener found, nothing to do." % product.ooName)
+@@ -991,25 +993,25 @@ class Listener:
+                 subprocess.call([office.binary, "-headless", "-invisible", "-nocrashreport", "-nodefault", "-nologo", "-nofirststartwizard", "-norestore", "-accept=%s" % op.connection], env=os.environ)
+             else:
+                 subprocess.call([office.binary, "--headless", "--invisible", "--nocrashreport", "--nodefault", "--nologo", "--nofirststartwizard", "--norestore", "--accept=%s" % op.connection], env=os.environ)
+-        except Exception, e:
++        except Exception as e:
+             error("Launch of %s failed.\n%s" % (office.binary, e))
+         else:
+             info(1, "Existing %s listener found, nothing to do." % product.ooName)
+ 
+ def error(msg):
+     "Output error message"
+-    print >>sys.stderr, msg
++    print(msg, file=sys.stderr)
+ 
+ def info(level, msg):
+     "Output info message"
+     if 'op' not in globals():
+         pass
+     elif op.verbose >= 3 and level >= 3:
+-        print >>sys.stderr, "DEBUG:", msg
++        print("DEBUG:", msg, file=sys.stderr)
+     elif not op.stdout and level <= op.verbose:
+-        print >>sys.stdout, msg
++        print(msg, file=sys.stdout)
+     elif level <= op.verbose:
+-        print >>sys.stderr, msg
++        print(msg, file=sys.stderr)
+ 
+ def die(ret, msg=None):
+     "Print optional error and exit with errorcode"
+@@ -1031,7 +1033,7 @@ def die(ret, msg=None):
+                     subprocess.Popen([office.binary, "--headless", "--invisible", "--nocrashreport", "--nodefault", "--nofirststartwizard", "--nologo", "--norestore", "--unaccept=%s" % op.connection], env=os.environ)
+                 ooproc.wait()
+                 info(2, '%s listener successfully disabled.' % product.ooName)
+-            except Exception, e:
++            except Exception as e:
+                 error("Terminate using %s failed.\n%s" % (office.binary, e))
+ 
+         ### If there is no GUI attached to the instance, terminate instance
+@@ -1080,7 +1082,7 @@ def main():
+             for inputfn in op.filenames:
+                 convertor.convert(inputfn)
+ 
+-    except NoConnectException, e:
++    except NoConnectException as e:
+         error("unoconv: could not find an existing connection to LibreOffice at %s:%s." % (op.server, op.port))
+         if op.connection:
+             info(0, "Please start an LibreOffice instance on server '%s' by doing:\n\n    unoconv --listener --server %s --port %s\n\nor alternatively:\n\n    soffice -nologo -nodefault -accept=\"%s\"" % (op.server, op.server, op.port, op.connection))
+@@ -1110,14 +1112,14 @@ if __name__ == '__main__':
+             break
+         except:
+ #            debug_office()
+-            print >>sys.stderr, "unoconv: Cannot find a suitable pyuno library and python binary combination in %s" % of
+-            print >>sys.stderr, "ERROR:", sys.exc_info()[1]
+-            print >>sys.stderr
++            print("unoconv: Cannot find a suitable pyuno library and python binary combination in %s" % of, file=sys.stderr)
++            print("ERROR:", sys.exc_info()[1], file=sys.stderr)
++            print(file=sys.stderr)
+     else:
+ #        debug_office()
+-        print >>sys.stderr, "unoconv: Cannot find a suitable office installation on your system."
+-        print >>sys.stderr, "ERROR: Please locate your office installation and send your feedback to:"
+-        print >>sys.stderr, "       http://github.com/dagwieers/unoconv/issues"
++        print("unoconv: Cannot find a suitable office installation on your system.", file=sys.stderr)
++        print("ERROR: Please locate your office installation and send your feedback to:", file=sys.stderr)
++        print("       http://github.com/dagwieers/unoconv/issues", file=sys.stderr)
+         sys.exit(1)
+ 
+     ### Now that we have found a working pyuno library, let's import some classes
+@@ -1160,6 +1162,6 @@ if __name__ == '__main__':
+ 
+     try:
+         main()
+-    except KeyboardInterrupt, e:
++    except KeyboardInterrupt as e:
+         die(6, 'Exiting on user request')
+     die(exitcode)
diff --git a/pkgs/tools/text/xml/basex/basex.svg b/pkgs/tools/text/xml/basex/basex.svg
new file mode 100644
index 000000000000..9d476cec2ca1
--- /dev/null
+++ b/pkgs/tools/text/xml/basex/basex.svg
@@ -0,0 +1,81 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://web.resource.org/cc/"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2178"
+   sodipodi:version="0.32"
+   inkscape:version="0.45"
+   width="1568"
+   height="1164"
+   version="1.0"
+   sodipodi:docbase="F:\Uni\Scholl\Research\Conferences\BTW2007\Poster"
+   sodipodi:docname="Logo.svg"
+   inkscape:output_extension="org.inkscape.output.svg.inkscape"
+   sodipodi:modified="true">
+  <metadata
+     id="metadata2183">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs2181" />
+  <sodipodi:namedview
+     inkscape:window-height="1150"
+     inkscape:window-width="1143"
+     inkscape:pageshadow="2"
+     inkscape:pageopacity="0.0"
+     guidetolerance="10.0"
+     gridtolerance="10.0"
+     objecttolerance="10.0"
+     borderopacity="1.0"
+     bordercolor="#666666"
+     pagecolor="#ffffff"
+     id="base"
+     inkscape:zoom="0.64948454"
+     inkscape:cx="784"
+     inkscape:cy="584.00852"
+     inkscape:window-x="412"
+     inkscape:window-y="20"
+     inkscape:current-layer="layer2"
+     showgrid="false"
+     inkscape:object-bbox="true"
+     inkscape:object-points="true"
+     gridempspacing="10" />
+  <g
+     inkscape:groupmode="layer"
+     id="layer2"
+     style="opacity:1">
+    <path
+       style="font-size:1470px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:19.98425102;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;font-family:Clarendo"
+       d="M 628.08008,847.55762 C 613.24569,864.30587 601.88095,879.3791 593.98584,892.77734 C 586.08995,906.17595 582.1422,916.94254 582.14258,925.07715 C 582.1422,937.9972 586.92735,947.08899 596.49805,952.35254 C 606.06796,957.61633 624.49079,960.24816 651.7666,960.24805 L 720.67285,960.24805 L 720.67285,1072.2207 L 207.46484,1072.2207 L 207.46484,960.24805 L 256.27344,960.24805 C 284.9843,960.24816 308.07265,955.94152 325.53857,947.32813 C 343.00426,938.71498 364.89633,919.09586 391.21484,888.4707 L 673.2998,568.34375 L 441.45898,276.92773 C 416.57596,245.82505 393.60723,224.77038 372.55273,213.76367 C 351.4979,202.75868 325.89734,197.25576 295.75098,197.25488 L 245.50684,197.25488 L 245.50684,86 L 767.32813,86 L 767.32813,197.25488 L 699.85742,197.25488 C 685.97999,197.25576 675.45266,199.76796 668.27539,204.7915 C 661.0972,209.81678 657.50834,217.11414 657.50879,226.68359 C 657.50834,233.38365 659.30277,240.20249 662.89209,247.14014 C 666.4805,254.07943 672.58156,262.57308 681.19531,272.62109 L 810.39453,429.81348 L 967.58691,265.44336 C 974.76388,258.26644 980.50606,250.84945 984.81348,243.19238 C 989.11933,235.53697 991.27265,229.07702 991.27344,223.8125 C 991.27265,215.20008 985.88936,208.62049 975.12354,204.07373 C 964.35618,199.5287 948.20629,197.25576 926.67383,197.25488 L 869.25195,197.25488 L 869.25195,86 L 1332.2158,86 L 1332.2158,197.25488 L 1279.1006,197.25488 C 1241.2968,197.25576 1189.8564,233.14439 1124.7793,304.9209 L 1123.3438,306.35645 L 905.8584,544.65723 L 1155.6436,856.1709 C 1194.8808,904.97966 1224.6684,934.52797 1245.0063,944.81592 C 1265.3422,955.10412 1294.412,960.24816 1332.2158,960.24805 L 1376,960.24805 L 1376,1072.2207 L 810.39453,1072.2207 L 810.39453,960.24805 L 877.86523,960.24805 C 901.79032,960.24816 919.25612,958.21447 930.2627,954.14697 C 941.26782,950.07971 946.77074,943.26087 946.77148,933.69043 C 946.77074,926.51284 945.3352,918.97623 942.46484,911.08057 C 939.59302,903.18523 935.28638,895.64861 929.54492,888.4707 L 768.76367,685.34082 L 628.08008,847.55762 z "
+       id="text2175" />
+    <path
+       style="font-size:500px;font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#e00000;fill-opacity:1;stroke:#ffffff;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;font-family:Arial Black"
+       d="M 146.16714,395.52869 L 353.19839,395.52869 C 387.70332,395.52904 414.19255,404.07396 432.66616,421.16345 C 451.13913,438.25361 460.37577,459.41244 460.37612,484.64001 C 460.37577,505.79912 453.78398,523.94688 440.60073,539.08337 C 431.81135,549.17472 418.95329,557.14998 402.02651,563.00916 C 427.74234,569.19424 446.66322,579.81434 458.78921,594.86951 C 470.9145,609.92499 476.97732,628.84587 476.97768,651.6322 C 476.97732,670.18697 472.66417,686.8699 464.03823,701.68103 C 455.41158,716.49227 443.61146,728.211 428.63784,736.83728 C 419.36019,742.20839 405.3628,746.11463 386.64565,748.55603 C 361.74306,751.81124 345.22289,753.43884 337.08511,753.43884 L 146.16714,753.43884 L 146.16714,395.52869 z M 257.7394,535.90955 L 305.83511,535.90955 C 323.0875,535.90976 335.09107,532.93939 341.84585,526.99841 C 348.60017,521.05789 351.97744,512.47229 351.97768,501.24158 C 351.97744,490.82517 348.60017,482.68716 341.84585,476.82751 C 335.09107,470.96842 323.33164,468.03874 306.56753,468.03845 L 257.7394,468.03845 L 257.7394,535.90955 z M 257.7394,676.53455 L 314.13589,676.53455 C 333.17863,676.53462 346.60635,673.15735 354.41909,666.40271 C 362.23134,659.64825 366.13758,650.57436 366.13784,639.18103 C 366.13758,628.60173 362.27203,620.0975 354.54116,613.66833 C 346.8098,607.23944 333.26001,604.02493 313.89175,604.02478 L 257.7394,604.02478 L 257.7394,676.53455 z "
+       id="text2205" />
+    <path
+       style="font-size:500px;font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#e00000;fill-opacity:1;stroke:#ffffff;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;font-family:Arial Black"
+       d="M 703.69272,694.35681 L 577.71616,694.35681 L 560.38217,753.43884 L 447.34506,753.43884 L 581.86655,395.52869 L 702.47202,395.52869 L 836.9935,753.43884 L 721.27084,753.43884 L 703.69272,694.35681 z M 680.49936,616.96423 L 640.94858,488.30212 L 601.64194,616.96423 L 680.49936,616.96423 z "
+       id="text3180" />
+    <path
+       style="font-size:500px;font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#e00000;fill-opacity:1;stroke:#ffffff;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;font-family:Arial Black"
+       d="M 810.90509,641.13416 L 916.1297,634.54236 C 918.40822,651.63231 923.04689,664.65313 930.04572,673.60486 C 941.4388,688.09061 957.71482,695.33344 978.87384,695.33337 C 994.6614,695.33344 1006.8277,691.63064 1015.3729,684.22498 C 1023.9176,676.81946 1028.19,668.23386 1028.1902,658.46814 C 1028.19,649.19091 1024.121,640.89013 1015.9832,633.5658 C 1007.845,626.24171 988.96479,619.3244 959.34259,612.81384 C 910.83987,601.90905 876.25331,587.42339 855.58282,569.35681 C 834.74945,551.29061 824.33279,528.26004 824.33282,500.26501 C 824.33279,481.87337 829.66319,464.49871 840.32404,448.14099 C 850.98479,431.7839 867.01667,418.92584 888.41974,409.56677 C 909.82262,400.20841 939.16015,395.52905 976.43243,395.52869 C 1022.1679,395.52905 1057.0393,404.03327 1081.0467,421.04138 C 1105.0535,438.05017 1119.3358,465.10906 1123.8934,502.21814 L 1019.6453,508.32166 C 1016.8782,492.20864 1011.0595,480.4899 1002.1893,473.16541 C 993.31863,465.84148 981.07092,462.17937 965.44611,462.17908 C 952.58787,462.17937 942.90364,464.90561 936.39337,470.35779 C 929.88282,475.81055 926.62761,482.44303 926.62775,490.25525 C 926.62761,495.95213 929.31316,501.07908 934.68439,505.63611 C 939.89257,510.35641 952.26235,514.75094 971.79376,518.8197 C 1020.1334,529.2366 1054.7606,539.77533 1075.6756,550.43591 C 1096.59,561.09692 1111.8081,574.32119 1121.3299,590.10876 C 1130.851,605.89668 1135.6118,623.55617 1135.6121,643.08728 C 1135.6118,666.03659 1129.2641,687.19543 1116.5692,706.56384 C 1103.8735,725.93237 1086.1327,740.62148 1063.3465,750.63123 C 1040.5598,760.64099 1011.8326,765.64587 977.16486,765.64587 C 916.29234,765.64587 874.13743,753.92713 850.70001,730.48962 C 827.26248,707.05218 813.99752,677.26705 810.90509,641.13416 L 810.90509,641.13416 z "
+       id="text3184" />
+    <path
+       style="font-size:500px;font-style:normal;font-variant:normal;font-weight:800;font-stretch:normal;text-align:start;line-height:125%;writing-mode:lr-tb;text-anchor:start;fill:#e00000;fill-opacity:1;stroke:#ffffff;stroke-width:20;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;font-family:Arial Black"
+       d="M 1139.0592,395.52869 L 1435.4459,395.52869 L 1435.4459,471.9447 L 1249.899,471.9447 L 1249.899,528.82947 L 1422.0182,528.82947 L 1422.0182,601.82751 L 1249.899,601.82751 L 1249.899,672.38416 L 1440.817,672.38416 L 1440.817,753.43884 L 1139.0592,753.43884 L 1139.0592,395.52869 z "
+       id="text3188" />
+  </g>
+</svg>
diff --git a/pkgs/tools/text/xml/basex/default.nix b/pkgs/tools/text/xml/basex/default.nix
new file mode 100644
index 000000000000..4f120601c8e7
--- /dev/null
+++ b/pkgs/tools/text/xml/basex/default.nix
@@ -0,0 +1,73 @@
+{ stdenv, fetchurl, unzip, jre, coreutils, makeDesktopItem }:
+
+stdenv.mkDerivation rec {
+  name = "basex-7.7";
+
+  src = fetchurl {
+    url = "http://files.basex.org/releases/7.7/BaseX77.zip";
+    sha256 = "1wnndq8lcnfx29bc3j2sgswk6dxgv2nln2chmwbf7h4a05fcavdj";
+  };
+
+  buildInputs = [ unzip jre ];
+
+  desktopItem = makeDesktopItem {
+    name = "basex";
+    exec = "basexgui %f";
+    icon = "${./basex.svg}"; # icon copied from Ubuntu basex package
+    comment = "Visually query and analyse your XML data";
+    desktopName = "BaseX XML Database";
+    genericName = "XML database tool";
+    categories = "Development;Utility;Database";
+    mimeType = "text/xml";
+  };
+
+  # We're using a pre-built package
+  configurePhase = "true";
+  buildPhase = "true";
+  installPhase = ''
+    mkdir -p "$out"
+    cp -r * "$out"
+
+    # Remove Windows batch files (unclutter $out/bin)
+    rm -f "$out"/bin/*.bat
+
+    # Move some top-level stuff to $out/share/basex (unclutter $out)
+    mkdir -p "$out/share/basex"
+    mv "$out"/*.txt "$out/share/basex/"
+    mv "$out"/webapp "$out/share/basex/"
+
+    # Remove empty directories
+    rmdir "$out/repo"
+    rmdir "$out/data"
+
+    # Install desktop file
+    mkdir -p "$out/share/applications"
+    cp "$desktopItem"/share/applications/* "$out/share/applications/"
+
+    # Use substitutions instead of wrapper scripts
+    for file in "$out"/bin/*; do
+        sed -i -e "s|/usr/bin/env bash|${stdenv.shell}|" \
+               -e "s|java|${jre}/bin/java|" \
+               -e "s|readlink|${coreutils}/bin/readlink|" \
+               -e "s|dirname|${coreutils}/bin/dirname|" \
+               -e "s|basename|${coreutils}/bin/basename|" \
+               -e "s|echo|${coreutils}/bin/echo|" \
+            "$file"
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "XML database and XPath/XQuery processor";
+    longDescription = ''
+      BaseX is a very fast and light-weight, yet powerful XML database and
+      XPath/XQuery processor, including support for the latest W3C Full Text
+      and Update Recommendations. It supports large XML instances and offers a
+      highly interactive front-end (basexgui). Apart from two local standalone
+      modes, BaseX offers a client/server architecture.
+    '';
+    homepage = http://basex.org/;
+    license = licenses.bsd3;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.bjornfor ];
+  };
+}
diff --git a/pkgs/tools/typesetting/tex/tetex/default.nix b/pkgs/tools/typesetting/tex/tetex/default.nix
index bb1e3f8b4b03..5cd3228aced3 100644
--- a/pkgs/tools/typesetting/tex/tetex/default.nix
+++ b/pkgs/tools/typesetting/tex/tetex/default.nix
@@ -15,30 +15,33 @@ stdenv.mkDerivation {
 
   buildInputs = [ flex bison zlib libpng ncurses ed ];
 
+  # fixes "error: conflicting types for 'calloc'", etc.
+  preBuild = stdenv.lib.optionalString stdenv.isDarwin ''
+    sed -i 57d texk/kpathsea/c-std.h
+  '';
+
   patches = [ ./environment.patch ./getline.patch ];
 
   setupHook = ./setup-hook.sh;
 
   configureFlags =
-    [ "--disable-multiplatform"
-      "--without-x11"
-      "--without-xdvik"
-      "--without-oxdvik"
-      "--without-texinfo"
-      "--without-texi2html"
-      "--with-system-zlib"
-      "--with-system-pnglib"
-      "--with-system-ncurses"
-    ];
-
-  postUnpack =
-    ''
-      mkdir -p $out/share/texmf
-      mkdir -p $out/share/texmf-dist
-      gunzip < $texmf | (cd $out/share/texmf-dist && tar xvf -)
-    '';
-
-  meta = {
-    description = "A full-featured (La)TeX distribution";
+    [ "--disable-multiplatform" "--without-x11" "--without-xdvik"
+      "--without-oxdvik" "--without-texinfo" "--without-texi2html"
+      "--with-system-zlib" "--with-system-pnglib" "--with-system-ncurses" ]
+    # couldn't get gsftopk working on darwin
+    ++ stdenv.lib.optional stdenv.isDarwin "--without-gsftopk";
+
+  postUnpack = ''
+    mkdir -p $out/share/texmf
+    mkdir -p $out/share/texmf-dist
+    gunzip < $texmf | (cd $out/share/texmf-dist && tar xvf -)
+  '';
+
+  meta = with stdenv.lib; {
+    description  = "A full-featured (La)TeX distribution";
+    homepage     = http://www.tug.org/tetex/;
+    matintainers = with maintainers; [ lovek323 ];
+    platforms    = platforms.unix;
   };
 }
+
diff --git a/pkgs/tools/typesetting/tex/texlive/aggregate.nix b/pkgs/tools/typesetting/tex/texlive/aggregate.nix
index c2ccecab0896..84fa1cfab75a 100644
--- a/pkgs/tools/typesetting/tex/texlive/aggregate.nix
+++ b/pkgs/tools/typesetting/tex/texlive/aggregate.nix
@@ -1,12 +1,13 @@
 args : with args;
 rec {
-  phaseNames = ["doAggregate"];
   name = "TeXLive-linkdir";
 
-  buildInputs = lib.closePropagation paths;
+  buildInputs = lib.closePropagation paths
+    ++ stdenv.lib.optional stdenv.isDarwin makeWrapper;
 
-  doAggregate = fullDepEntry (''
+  phaseNames = [ "doAggregate" ];
 
+  doAggregate = fullDepEntry (''
     mkdir -p $out/bin
     for currentPath in ${lib.concatStringsSep " " buildInputs}; do
         echo Symlinking "$currentPath"
@@ -54,7 +55,13 @@ rec {
     yes | PATH=$PATH:$out/bin mktexlsr $out/texmf*
     yes | TEXMFCONFIG=$out/texmf-config HOME=$PWD PATH=$PATH:$out/bin updmap --syncwithtrees
     yes | PATH=$PATH:$out/bin mktexlsr $out/texmf*
-  '') ["minInit" "defEnsureDir" "addInputs"];
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    # did the same thing in texLive, but couldn't get it to carry to the
+    # binaries installed by texLiveFull
+    for prog in $out/bin/*; do
+      wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "${poppler}/lib"
+    done
+  '' ) [ "minInit" "defEnsureDir" "addInputs" ];
 
   meta = {
     description = "TeX distribution directory";
diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix
index 7f512bade8a3..f119dbd1e4a1 100644
--- a/pkgs/tools/typesetting/tex/texlive/default.nix
+++ b/pkgs/tools/typesetting/tex/texlive/default.nix
@@ -17,7 +17,9 @@ rec {
 
   setupHook = ./setup-hook.sh;
 
-  doMainBuild = fullDepEntry (''
+  doMainBuild = fullDepEntry ( stdenv.lib.optionalString stdenv.isDarwin ''
+    export DYLD_LIBRARY_PATH="${poppler}/lib"
+  '' + ''
     mkdir -p $out
     mkdir -p $out/nix-support
     cp ${setupHook} $out/nix-support/setup-hook.sh
@@ -40,24 +42,26 @@ rec {
     ./Build --prefix="$out" --datadir="$out/share" --mandir "$out/share/man" --infodir "$out/share/info" \
       ${args.lib.concatStringsSep " " configureFlags}
     cd Work
-  '') ["minInit" "doUnpack" "addInputs" "defEnsureDir"];
+  '' ) [ "minInit" "doUnpack" "addInputs" "defEnsureDir" ];
 
-  doPostInstall = fullDepEntry(''
+  doPostInstall = fullDepEntry( ''
     mkdir -p $out/libexec/
     mv $out/bin $out/libexec/$(uname -m)
     mkdir -p $out/bin
     for i in "$out/libexec/"* "$out/libexec/"*/* ; do
         test \( \! -d "$i" \) -a \( -x "$i" -o -L "$i" \) || continue
-	if [ -x "$i" ]; then
-	    echo -ne "#! $SHELL\\nexec $i \"\$@\"" >$out/bin/$(basename $i)
-            chmod a+x $out/bin/$(basename $i)
-	else
-	    mv "$i" "$out/libexec"
-	    ln -s "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/bin/$(basename "$i")";
-	    ln -sf "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/libexec/$(uname -m)/$(basename "$i")";
-            rm "$out/libexec/$(basename "$i")"
-	fi;
+
+      if [ -x "$i" ]; then
+          echo -ne "#! $SHELL\\nexec $i \"\$@\"" >$out/bin/$(basename $i)
+                chmod a+x $out/bin/$(basename $i)
+      else
+          mv "$i" "$out/libexec"
+          ln -s "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/bin/$(basename "$i")";
+          ln -sf "$(readlink -f "$out/libexec/$(basename "$i")")" "$out/libexec/$(uname -m)/$(basename "$i")";
+          rm "$out/libexec/$(basename "$i")"
+      fi;
     done
+
     [ -d $out/texmf-config ] || ln -s $out/texmf $out/texmf-config
     ln -s -v "$out/"*texmf* "$out/share/" || true
 
@@ -80,29 +84,37 @@ rec {
     PATH="$PATH:$out/bin" fmtutil-sys --all || true
 
     PATH=$PATH:$out/bin mktexlsr $out/texmf*
- '') ["minInit" "defEnsureDir" "doUnpack" "doMakeInstall"];
+  '' + stdenv.lib.optionalString stdenv.isDarwin ''
+    for prog in $out/bin/*; do
+      wrapProgram "$prog" --prefix DYLD_LIBRARY_PATH : "${poppler}/lib"
+    done
+  '' ) [ "minInit" "defEnsureDir" "doUnpack" "doMakeInstall" ];
 
-  buildInputs = [
-    zlib bzip2 ncurses libpng flex bison libX11 libICE
-    xproto freetype t1lib gd libXaw icu ghostscript ed
-    libXt libXpm libXmu libXext xextproto perl libSM
-    ruby expat curl libjpeg python fontconfig xz
-    pkgconfig poppler silgraphite lesstif zziplib
-  ];
+  buildInputs = [ zlib bzip2 ncurses libpng flex bison libX11 libICE xproto
+    freetype t1lib gd libXaw icu ghostscript ed libXt libXpm libXmu libXext
+    xextproto perl libSM ruby expat curl libjpeg python fontconfig xz pkgconfig
+    poppler silgraphite lesstif zziplib ]
+    ++ stdenv.lib.optionals stdenv.isDarwin [ makeWrapper ];
 
-  configureFlags = [ "--with-x11"
-    "--enable-ipc" "--with-mktexfmt" "--enable-shared"
-    "--disable-native-texlive-build" "--with-system-zziplib"
-    "--with-system-icu" "--with-system-libgs" "--with-system-t1lib"
-    "--with-system-freetype2"
-  ];
+  configureFlags = [ "--with-x11" "--enable-ipc" "--with-mktexfmt"
+    "--enable-shared" "--disable-native-texlive-build" "--with-system-zziplib"
+    "--with-system-libgs" "--with-system-t1lib" "--with-system-freetype2" ]
+    ++ ( if stdenv.isDarwin
+         # ironically, couldn't get xetex compiling on darwin
+         then [ "--disable-xetex" "--disable-xdv2pdf" "--disable-xdvipdfmx" ]
+         # couldn't seem to get system icu working on darwin
+         else [ "--with-system-icu" ] );
 
-  phaseNames = ["addInputs" "doMainBuild" "doMakeInstall" "doPostInstall"];
+  phaseNames = [ "addInputs" "doMainBuild" "doMakeInstall" "doPostInstall" ];
 
   name = "texlive-core-2012";
-  meta = {
+
+  meta = with stdenv.lib; {
     description = "A TeX distribution";
-    maintainers = [ args.lib.maintainers.raskin ];
-    platforms = args.lib.platforms.linux ++ args.lib.platforms.freebsd ;
+    homepage    = http://www.tug.org/texlive;
+    license     = stdenv.lib.licenses.gpl2;
+    maintainers = with maintainers; [ lovek323 raskin ];
+    platforms   = platforms.unix;
   };
 }
+
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 7e2f349286b7..bf319ca4526c 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -417,9 +417,7 @@ let
       mesa ncurses readline gsl libsigsegv python zlib perl
       texinfo lzma;
     texLive = texLiveAggregationFun {
-      paths = [
-        texLive texLiveExtra
-      ];
+      paths = [ texLive texLiveExtra ];
     };
   };
 
@@ -501,6 +499,8 @@ let
 
   azureus = callPackage ../tools/networking/p2p/azureus { };
 
+  basex = callPackage ../tools/text/xml/basex { };
+
   babeld = callPackage ../tools/networking/babeld { };
 
   banner = callPackage ../games/banner {};
@@ -631,6 +631,8 @@ let
 
   convertlit = callPackage ../tools/text/convertlit { };
 
+  collectd = callPackage ../tools/system/collectd { };
+
   colormake = callPackage ../development/tools/build-managers/colormake { };
 
   cowsay = callPackage ../tools/misc/cowsay { };
@@ -886,6 +888,8 @@ let
 
   fuse_zip = callPackage ../tools/filesystems/fuse-zip { };
 
+  fuse_exfat = callPackage ../tools/filesystems/fuse-exfat { };
+
   dos2unix = callPackage ../tools/text/dos2unix { };
 
   uni2ascii = callPackage ../tools/text/uni2ascii { };
@@ -1676,6 +1680,8 @@ let
 
   scrot = callPackage ../tools/graphics/scrot { };
 
+  scrypt = callPackage ../tools/security/scrypt { };
+
   sdcv = callPackage ../applications/misc/sdcv { };
 
   seccure = callPackage ../tools/security/seccure/0.4.nix { };
@@ -1731,7 +1737,10 @@ let
 
   socat = callPackage ../tools/networking/socat { };
 
-  sourceHighlight = callPackage ../tools/text/source-highlight { };
+  sourceHighlight = callPackage ../tools/text/source-highlight {
+    # Boost 1.54 causes the "test_regexranges" test to fail
+    boost = boost153;
+  };
 
   socat2pre = lowPrio (builderDefsPackage ../tools/networking/socat/2.0.0-b3.nix {
     inherit fetchurl stdenv openssl;
@@ -1753,6 +1762,10 @@ let
 
   ssss = callPackage ../tools/security/ssss { };
 
+  storeBackup = callPackage ../tools/backup/store-backup { };
+
+  stow = callPackage ../tools/misc/stow { };
+
   stun = callPackage ../tools/networking/stun { };
 
   stunnel = callPackage ../tools/networking/stunnel { };
@@ -1828,6 +1841,8 @@ let
 
   unfs3 = callPackage ../servers/unfs3 { };
 
+  unoconv = callPackage ../tools/text/unoconv { };
+
   upx = callPackage ../tools/compression/upx { };
 
   usbmuxd = callPackage ../tools/misc/usbmuxd {};
@@ -3198,7 +3213,7 @@ let
 
   rubyLibs = recurseIntoAttrs (callPackage ../development/interpreters/ruby/libs.nix { });
 
-  rake = callPackage ../development/ruby-modules/rake { };
+  rake = rubyLibs.rake;
 
   rubySqlite3 = callPackage ../development/ruby-modules/sqlite3 { };
 
@@ -3685,6 +3700,8 @@ let
 
   uisp = callPackage ../development/tools/misc/uisp { };
 
+  uncrustify = callPackage ../development/tools/misc/uncrustify { };
+
   gdb = callPackage ../development/tools/misc/gdb {
     hurd = gnu.hurdCross;
     inherit (gnu) mig;
@@ -5969,7 +5986,8 @@ let
 
   fingerd_bsd = callPackage ../servers/fingerd/bsd-fingerd { };
 
-  firebird = callPackage ../servers/firebird { };
+  firebird = callPackage ../servers/firebird { icu = null; };
+  firebirdSuper = callPackage ../servers/firebird { superServer = true; };
 
   freepops = callPackage ../servers/mail/freepops { };
 
@@ -6288,7 +6306,11 @@ let
 
   drbd = callPackage ../os-specific/linux/drbd { };
 
-  dstat = callPackage ../os-specific/linux/dstat { };
+  dstat = callPackage ../os-specific/linux/dstat {
+    # pythonFull includes the "curses" standard library module, for pretty
+    # dstat color output
+    python = pythonFull;
+  };
 
   libuuid =
     if crossSystem != null && crossSystem.config == "i586-pc-gnu"
@@ -6480,6 +6502,18 @@ let
       ];
   };
 
+  linux_3_11 = makeOverridable (import ../os-specific/linux/kernel/linux-3.11.nix) {
+    inherit fetchurl stdenv perl mktemp bc kmod ubootChooser;
+    kernelPatches =
+      [
+        kernelPatches.sec_perm_2_6_24
+      ] ++ lib.optionals (platform.kernelArch == "mips")
+      [ kernelPatches.mips_fpureg_emu
+        kernelPatches.mips_fpu_sigill
+        kernelPatches.mips_ext3_n32
+      ];
+  };
+
   /* Linux kernel modules are inherently tied to a specific kernel.  So
      rather than provide specific instances of those packages for a
      specific kernel, we have a function that builds those packages
@@ -6601,8 +6635,9 @@ let
   linuxPackages_3_6_rpi = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_6_rpi linuxPackages_3_6_rpi);
   linuxPackages_3_9 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_9 linuxPackages_3_9);
   linuxPackages_3_10 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_10 linuxPackages_3_10);
+  linuxPackages_3_11 = recurseIntoAttrs (linuxPackagesFor pkgs.linux_3_11 linuxPackages_3_11);
   # Update this when adding a new version!
-  linuxPackages_latest = pkgs.linuxPackages_3_10;
+  linuxPackages_latest = pkgs.linuxPackages_3_11;
 
   # The current default kernel / kernel modules.
   linux = linuxPackages.kernel;
@@ -7105,6 +7140,8 @@ let
     inherit (gnome) libglade libgnomecanvas;
   };
 
+  abook = callPackage ../applications/misc/abook { };
+
   adobeReader = callPackage_i686 ../applications/misc/adobe-reader { };
 
   aewan = callPackage ../applications/editors/aewan { };
@@ -9796,13 +9833,12 @@ let
   texFunctions = import ../tools/typesetting/tex/nix pkgs;
 
   texLive = builderDefsPackage (import ../tools/typesetting/tex/texlive) {
-    inherit builderDefs zlib bzip2 ncurses libpng ed lesstif
+    inherit builderDefs zlib bzip2 ncurses libpng ed lesstif ruby
       gd t1lib freetype icu perl expat curl xz pkgconfig zziplib
-      libjpeg bison python fontconfig flex poppler silgraphite;
+      libjpeg bison python fontconfig flex poppler silgraphite makeWrapper;
     inherit (xlibs) libXaw libX11 xproto libXt libXpm
       libXmu libXext xextproto libSM libICE;
     ghostscript = ghostscriptX;
-    ruby = ruby18;
   };
 
   texLiveFull = lib.setName "texlive-full" (texLiveAggregationFun {
@@ -9823,8 +9859,9 @@ let
   You need to use texLiveAggregationFun to regenerate, say, ls-R (TeX-related file list)
   Just installing a few packages doesn't work.
   */
-  texLiveAggregationFun =
-    (builderDefsPackage (import ../tools/typesetting/tex/texlive/aggregate.nix));
+  texLiveAggregationFun = params:
+    builderDefsPackage (import ../tools/typesetting/tex/texlive/aggregate.nix)
+      ({inherit poppler makeWrapper;} // params);
 
   texDisser = callPackage ../tools/typesetting/tex/disser {};
 
@@ -9862,7 +9899,9 @@ let
 
   thinkfan = callPackage ../tools/system/thinkfan { };
 
-  vice = callPackage ../misc/emulators/vice { };
+  vice = callPackage ../misc/emulators/vice {
+    libX11 = xlibs.libX11;
+  };
 
   viewnior = callPackage ../applications/graphics/viewnior { };
 
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 9cf3c5815b91..8ccaffbeb064 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -64,7 +64,7 @@
 # modifyPrio argument can be set to lowPrio to make all Haskell packages have
 # low priority.
 
-let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
+let result = let callPackage = x : y : modifyPrio (newScope result.finalReturn x y);
                  self = (prefFun result) result; in
 
 # Indentation deliberately broken at this point to keep the bulk
@@ -72,7 +72,9 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
 {
 
-  final = self;
+  finalReturn = self;
+
+  callPackage = callPackage;
 
   # GHC and its wrapper
   #
@@ -141,7 +143,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
     inherit (self) cabal ghc;
     async        = self.async_2_0_1_4;
     attoparsec   = self.attoparsec_0_10_4_0;
-    caseInsensitive = self.caseInsensitive_1_0_0_1;
+    caseInsensitive = self.caseInsensitive_1_1;
     cgi          = self.cgi_3001_1_7_5;
     fgl          = self.fgl_5_4_2_4;
     GLUT         = self.GLUT_2_4_0_0;
@@ -166,12 +168,12 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
     stm          = self.stm_2_4_2;
     syb          = self.syb_0_4_1;
     text         = self.text_0_11_3_1;
-    transformers = self.transformers_0_3_0_0;
+    transformers = null;                        # this has become a core package in GHC 7.7
     unorderedContainers = self.unorderedContainers_0_2_3_0;
     vector       = self.vector_0_10_0_1;
     xhtml        = self.xhtml_3000_2_1;
     zlib         = self.zlib_0_5_4_1;
-    cabalInstall = self.cabalInstall_1_16_0_2;
+    cabalInstall = self.cabalInstall_1_18_0;
     alex         = self.alex_3_0_5;
     haddock      = self.haddock_2_13_2;
     happy        = self.happy_1_18_10;
@@ -651,6 +653,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   Cabal_1_14_0 = callPackage ../development/libraries/haskell/Cabal/1.14.0.nix { cabal = self.cabal.override { Cabal = null; }; };
   Cabal_1_16_0_3 = callPackage ../development/libraries/haskell/Cabal/1.16.0.3.nix { cabal = self.cabal.override { Cabal = null; }; };
+  Cabal_1_18_0 = callPackage ../development/libraries/haskell/Cabal/1.18.0.nix { cabal = self.cabal.override { Cabal = null; }; };
   Cabal = null; # core package in GHC
 
   cabalFileTh = callPackage ../development/libraries/haskell/cabal-file-th {};
@@ -665,8 +668,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   carray = callPackage ../development/libraries/haskell/carray {};
 
   caseInsensitive_1_0_0_1 = callPackage ../development/libraries/haskell/case-insensitive/1.0.0.1.nix {};
-  caseInsensitive_1_0_0_2 = callPackage ../development/libraries/haskell/case-insensitive/1.0.0.2.nix {};
-  caseInsensitive = self.caseInsensitive_1_0_0_2;
+  caseInsensitive_1_1 = callPackage ../development/libraries/haskell/case-insensitive/1.1.nix {};
+  caseInsensitive = self.caseInsensitive_1_1;
 
   cautiousFile = callPackage ../development/libraries/haskell/cautious-file {};
 
@@ -685,7 +688,7 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   cgi = self.cgi_3001_1_8_4;
 
   Chart = callPackage ../development/libraries/haskell/Chart {};
-
+  ChartCairo = callPackage ../development/libraries/haskell/Chart-cairo {};
   ChartGtk = callPackage ../development/libraries/haskell/Chart-gtk {};
 
   ChasingBottoms = callPackage ../development/libraries/haskell/ChasingBottoms {};
@@ -696,6 +699,12 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   cipherAes = callPackage ../development/libraries/haskell/cipher-aes {};
 
+  cipherBlowfish = callPackage ../development/libraries/haskell/cipher-blowfish {};
+
+  cipherCamellia = callPackage ../development/libraries/haskell/cipher-camellia {};
+
+  cipherDes = callPackage ../development/libraries/haskell/cipher-des {};
+
   cipherRc4 = callPackage ../development/libraries/haskell/cipher-rc4 {};
 
   circlePacking = callPackage ../development/libraries/haskell/circle-packing {};
@@ -710,6 +719,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   cmdlib = callPackage ../development/libraries/haskell/cmdlib {};
 
+  cmdtheline = callPackage ../development/libraries/haskell/cmdtheline {};
+
   colorizeHaskell = callPackage ../development/libraries/haskell/colorize-haskell {};
 
   colour = callPackage ../development/libraries/haskell/colour {};
@@ -770,6 +781,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   cryptoPubkey = callPackage ../development/libraries/haskell/crypto-pubkey {};
 
+  cryptoRandom = callPackage ../development/libraries/haskell/crypto-random {};
+
   cryptoRandomApi = callPackage ../development/libraries/haskell/crypto-random-api {};
 
   cuda = callPackage ../development/libraries/haskell/cuda {
@@ -960,6 +973,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   filesystemConduit = callPackage ../development/libraries/haskell/filesystem-conduit {};
 
+  final = callPackage ../development/libraries/haskell/final {};
+
   fgl_5_4_2_2 = callPackage ../development/libraries/haskell/fgl/5.4.2.2.nix {};
   fgl_5_4_2_3 = callPackage ../development/libraries/haskell/fgl/5.4.2.3.nix {};
   fgl_5_4_2_4 = callPackage ../development/libraries/haskell/fgl/5.4.2.4.nix {};
@@ -1077,6 +1092,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   graphviz = callPackage ../development/libraries/haskell/graphviz {};
 
+  groups = callPackage ../development/libraries/haskell/groups {};
+
   groupoids = callPackage ../development/libraries/haskell/groupoids {};
 
   hakyll = callPackage ../development/libraries/haskell/hakyll {};
@@ -1350,6 +1367,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   liftedBase = callPackage ../development/libraries/haskell/lifted-base {};
 
+  linear = callPackage ../development/libraries/haskell/linear {};
+
   List = callPackage ../development/libraries/haskell/List {};
 
   ListLike = callPackage ../development/libraries/haskell/ListLike {};
@@ -1546,6 +1565,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   OpenGLRaw_1_3_0_0 = callPackage ../development/libraries/haskell/OpenGLRaw/1.3.0.0.nix {};
   OpenGLRaw = self.OpenGLRaw_1_3_0_0;
 
+  operational = callPackage ../development/libraries/haskell/operational {};
+
   optparseApplicative = callPackage ../development/libraries/haskell/optparse-applicative {};
 
   pathPieces = callPackage ../development/libraries/haskell/path-pieces {};
@@ -1722,6 +1743,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   regexCompat93 = self.regexCompat_0_93_1;
   regexCompat = self.regexCompat_0_71_0_1;
 
+  regexCompatTdfa = callPackage ../development/libraries/haskell/regex-compat-tdfa {};
+
   regexPosix_0_72_0_3 = callPackage ../development/libraries/haskell/regex-posix/0.72.0.3.nix {};
   regexPosix_0_94_1 = callPackage ../development/libraries/haskell/regex-posix/0.94.1.nix {};
   regexPosix_0_94_2 = callPackage ../development/libraries/haskell/regex-posix/0.94.2.nix {};
@@ -1757,6 +1780,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   resourcet = callPackage ../development/libraries/haskell/resourcet {};
 
+  rosezipper = callPackage ../development/libraries/haskell/rosezipper {};
+
   RSA = callPackage ../development/libraries/haskell/RSA {};
 
   sampleFrame = callPackage ../development/libraries/haskell/sample-frame {};
@@ -1817,6 +1842,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   statistics = callPackage ../development/libraries/haskell/statistics {};
 
+  StrafunskiStrategyLib = callPackage ../development/libraries/haskell/Strafunski-StrategyLib {};
+
   streamproc = callPackage ../development/libraries/haskell/streamproc {};
 
   strict = callPackage ../development/libraries/haskell/strict {};
@@ -1850,6 +1877,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   sybWithClassInstancesText = callPackage ../development/libraries/haskell/syb/syb-with-class-instances-text.nix {};
 
+  syz = callPackage ../development/libraries/haskell/syz {};
+
   SDLImage = callPackage ../development/libraries/haskell/SDL-image {};
 
   SDLMixer = callPackage ../development/libraries/haskell/SDL-mixer {};
@@ -1985,6 +2014,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
   threads = callPackage ../development/libraries/haskell/threads {};
 
+  thyme = callPackage ../development/libraries/haskell/thyme {};
+
   time_1_1_2_4 = callPackage ../development/libraries/haskell/time/1.1.2.4.nix {};
   time_1_4_1 = callPackage ../development/libraries/haskell/time/1.4.1.nix {};
   # time is in the core package set. It should only be necessary to
@@ -2351,7 +2382,8 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
   cabalInstall_0_10_2 = callPackage ../tools/package-management/cabal-install/0.10.2.nix {};
   cabalInstall_0_14_0 = callPackage ../tools/package-management/cabal-install/0.14.0.nix {};
   cabalInstall_1_16_0_2 = callPackage ../tools/package-management/cabal-install/1.16.0.2.nix {};
-  cabalInstall = self.cabalInstall_1_16_0_2;
+  cabalInstall_1_18_0 = callPackage ../tools/package-management/cabal-install/1.18.0.nix {};
+  cabalInstall = self.cabalInstall_1_18_0;
 
   gitAnnex = callPackage ../applications/version-management/git-and-tools/git-annex {};
 
@@ -2381,4 +2413,4 @@ let result = let callPackage = x : y : modifyPrio (newScope result.final x y);
 
 };
 
-in result.final
+in result.finalReturn
diff --git a/pkgs/top-level/node-packages-generated.nix b/pkgs/top-level/node-packages-generated.nix
index 7bb1a67c489f..15c01748a44b 100644
--- a/pkgs/top-level/node-packages-generated.nix
+++ b/pkgs/top-level/node-packages-generated.nix
@@ -2,32 +2,33 @@
 
 {
   full."CSSselect"."0.x" = lib.makeOverridable self.buildNodePackage {
-    name = "CSSselect-0.3.1";
+    name = "CSSselect-0.3.5";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/CSSselect/-/CSSselect-0.3.1.tgz";
-        sha1 = "ad91c2821658320c5047ba899201a236922c42f9";
+        url = "http://registry.npmjs.org/CSSselect/-/CSSselect-0.3.5.tgz";
+        sha1 = "b85cae765678432aa54be73c140e3d4de78938a1";
       })
     ];
     buildInputs =
       (self.nativeDeps."CSSselect"."0.x" or []);
     deps = [
-      self.full."CSSwhat".">= 0.1"
+      self.full."CSSwhat"."0.3"
+      self.full."domutils"."1"
     ];
     peerDependencies = [
     ];
     passthru.names = [ "CSSselect" ];
   };
-  full."CSSwhat".">= 0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "CSSwhat-0.2.0";
+  full."CSSwhat"."0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "CSSwhat-0.3.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/CSSwhat/-/CSSwhat-0.2.0.tgz";
-        sha1 = "c952fdc67f01c991805fd2c7f6defaedf90e992d";
+        url = "http://registry.npmjs.org/CSSwhat/-/CSSwhat-0.3.0.tgz";
+        sha1 = "44e93c6a50dab70f59575a539cb09f4016e188ae";
       })
     ];
     buildInputs =
-      (self.nativeDeps."CSSwhat".">= 0.1" or []);
+      (self.nativeDeps."CSSwhat"."0.3" or []);
     deps = [
     ];
     peerDependencies = [
@@ -50,6 +51,22 @@
     ];
     passthru.names = [ "abbrev" ];
   };
+  full."abbrev"."1.0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "abbrev-1.0.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/abbrev/-/abbrev-1.0.4.tgz";
+        sha1 = "bd55ae5e413ba1722ee4caba1f6ea10414a59ecd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."abbrev"."1.0.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "abbrev" ];
+  };
   full."abbrev"."~1.0.4" = lib.makeOverridable self.buildNodePackage {
     name = "abbrev-1.0.4";
     src = [
@@ -115,6 +132,39 @@
     ];
     passthru.names = [ "adm-zip" ];
   };
+  full."adm-zip"."~0.4.3" = lib.makeOverridable self.buildNodePackage {
+    name = "adm-zip-0.4.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/adm-zip/-/adm-zip-0.4.3.tgz";
+        sha1 = "28d6a3809abb7845a0ffa38f9fff455c2c6f6f6c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."adm-zip"."~0.4.3" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "adm-zip" ];
+  };
+  full."almond"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "almond-0.2.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/almond/-/almond-0.2.6.tgz";
+        sha1 = "7165a9246894239efe74ec4a41d6c97898eafc05";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."almond"."*" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "almond" ];
+  };
+  "almond" = self.full."almond"."*";
   full."ambi"."~2.0.0" = lib.makeOverridable self.buildNodePackage {
     name = "ambi-2.0.0";
     src = [
@@ -132,6 +182,23 @@
     ];
     passthru.names = [ "ambi" ];
   };
+  full."ambi"."~2.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "ambi-2.1.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ambi/-/ambi-2.1.1.tgz";
+        sha1 = "254ea79bf4203ed74a7038632e176e64640bb91d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ambi"."~2.1.0" or []);
+    deps = [
+      self.full."typechecker"."~2.0.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "ambi" ];
+  };
   full."amdefine"."*" = lib.makeOverridable self.buildNodePackage {
     name = "amdefine-0.0.8";
     src = [
@@ -263,6 +330,24 @@
     ];
     passthru.names = [ "apparatus" ];
   };
+  full."archiver"."~0.4.6" = lib.makeOverridable self.buildNodePackage {
+    name = "archiver-0.4.9";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/archiver/-/archiver-0.4.9.tgz";
+        sha1 = "7c8a5c8f186497b430698855b1a827af81ce94f1";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."archiver"."~0.4.6" or []);
+    deps = [
+      self.full."readable-stream"."~1.0.2"
+      self.full."iconv-lite"."~0.2.11"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "archiver" ];
+  };
   full."archy"."0" = lib.makeOverridable self.buildNodePackage {
     name = "archy-0.0.2";
     src = [
@@ -478,6 +563,22 @@
     ];
     passthru.names = [ "async" ];
   };
+  full."async"."~0.1.22" = lib.makeOverridable self.buildNodePackage {
+    name = "async-0.1.22";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/async/-/async-0.1.22.tgz";
+        sha1 = "0fc1aaa088a0e3ef0ebe2d8831bab0dcf8845061";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."async"."~0.1.22" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "async" ];
+  };
   full."async"."~0.2.6" = lib.makeOverridable self.buildNodePackage {
     name = "async-0.2.9";
     src = [
@@ -543,11 +644,11 @@
     passthru.names = [ "async" ];
   };
   full."aws-sdk"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "aws-sdk-1.5.0";
+    name = "aws-sdk-1.5.1";
     src = [
       (self.patchLatest {
-        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.5.0.tgz";
-        sha1 = "30081b392fcb7d093754d7dc6e8a7bb6f0dc405a";
+        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.5.1.tgz";
+        sha1 = "5927d9539c9c82116501aed0747a2073375dfacd";
       })
     ];
     buildInputs =
@@ -562,11 +663,11 @@
   };
   "aws-sdk" = self.full."aws-sdk"."*";
   full."aws-sdk".">=1.2.0 <2" = lib.makeOverridable self.buildNodePackage {
-    name = "aws-sdk-1.5.0";
+    name = "aws-sdk-1.5.1";
     src = [
       (self.patchLatest {
-        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.5.0.tgz";
-        sha1 = "30081b392fcb7d093754d7dc6e8a7bb6f0dc405a";
+        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-1.5.1.tgz";
+        sha1 = "5927d9539c9c82116501aed0747a2073375dfacd";
       })
     ];
     buildInputs =
@@ -819,12 +920,66 @@
     ];
     passthru.names = [ "boom" ];
   };
+  full."bower"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "bower-1.2.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bower/-/bower-1.2.6.tgz";
+        sha1 = "a8b7bd344601554821957b9ab62fb436febc674d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."bower"."*" or []);
+    deps = [
+      self.full."abbrev"."~1.0.4"
+      self.full."archy"."0.0.2"
+      self.full."bower-config"."~0.5.0"
+      self.full."bower-endpoint-parser"."~0.2.0"
+      self.full."bower-json"."~0.4.0"
+      self.full."bower-logger"."~0.2.1"
+      self.full."bower-registry-client"."~0.1.4"
+      self.full."cardinal"."~0.4.0"
+      self.full."chalk"."~0.2.0"
+      self.full."chmodr"."~0.1.0"
+      self.full."fstream"."~0.1.22"
+      self.full."fstream-ignore"."~0.0.6"
+      self.full."glob"."~3.2.1"
+      self.full."graceful-fs"."~2.0.0"
+      self.full."handlebars"."~1.0.11"
+      self.full."inquirer"."~0.3.0"
+      self.full."junk"."~0.2.0"
+      self.full."mkdirp"."~0.3.5"
+      self.full."mout"."~0.6.0"
+      self.full."nopt"."~2.1.1"
+      self.full."lru-cache"."~2.3.0"
+      self.full."open"."~0.0.3"
+      self.full."osenv"."0.0.3"
+      self.full."promptly"."~0.2.0"
+      self.full."q"."~0.9.2"
+      self.full."request"."~2.27.0"
+      self.full."request-progress"."~0.3.0"
+      self.full."retry"."~0.6.0"
+      self.full."rimraf"."~2.2.0"
+      self.full."semver"."~2.1.0"
+      self.full."stringify-object"."~0.1.4"
+      self.full."sudo-block"."~0.2.0"
+      self.full."tar"."~0.1.17"
+      self.full."tmp"."~0.0.20"
+      self.full."unzip"."~0.1.7"
+      self.full."update-notifier"."~0.1.3"
+      self.full."which"."~1.0.5"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "bower" ];
+  };
+  "bower" = self.full."bower"."*";
   full."bower".">=0.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "bower-1.2.4";
+    name = "bower-1.2.6";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/bower/-/bower-1.2.4.tgz";
-        sha1 = "7dce66cef5ffab8ef56c053d8df5aa1f1356cfac";
+        url = "http://registry.npmjs.org/bower/-/bower-1.2.6.tgz";
+        sha1 = "a8b7bd344601554821957b9ab62fb436febc674d";
       })
     ];
     buildInputs =
@@ -832,7 +987,7 @@
     deps = [
       self.full."abbrev"."~1.0.4"
       self.full."archy"."0.0.2"
-      self.full."bower-config"."~0.4.3"
+      self.full."bower-config"."~0.5.0"
       self.full."bower-endpoint-parser"."~0.2.0"
       self.full."bower-json"."~0.4.0"
       self.full."bower-logger"."~0.2.1"
@@ -845,17 +1000,18 @@
       self.full."glob"."~3.2.1"
       self.full."graceful-fs"."~2.0.0"
       self.full."handlebars"."~1.0.11"
-      self.full."inquirer"."~0.2.2"
+      self.full."inquirer"."~0.3.0"
       self.full."junk"."~0.2.0"
       self.full."mkdirp"."~0.3.5"
       self.full."mout"."~0.6.0"
       self.full."nopt"."~2.1.1"
       self.full."lru-cache"."~2.3.0"
       self.full."open"."~0.0.3"
+      self.full."osenv"."0.0.3"
       self.full."promptly"."~0.2.0"
       self.full."q"."~0.9.2"
       self.full."request"."~2.27.0"
-      self.full."request-progress"."~0.2.0"
+      self.full."request-progress"."~0.3.0"
       self.full."retry"."~0.6.0"
       self.full."rimraf"."~2.2.0"
       self.full."semver"."~2.1.0"
@@ -872,11 +1028,11 @@
     passthru.names = [ "bower" ];
   };
   full."bower-config"."~0.4.3" = lib.makeOverridable self.buildNodePackage {
-    name = "bower-config-0.4.4";
+    name = "bower-config-0.4.5";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/bower-config/-/bower-config-0.4.4.tgz";
-        sha1 = "33c6a772397f24d46322a294b415128a6e3090ff";
+        url = "http://registry.npmjs.org/bower-config/-/bower-config-0.4.5.tgz";
+        sha1 = "baa7cee382f53b13bb62a4afaee7c05f20143c13";
       })
     ];
     buildInputs =
@@ -891,6 +1047,26 @@
     ];
     passthru.names = [ "bower-config" ];
   };
+  full."bower-config"."~0.5.0" = lib.makeOverridable self.buildNodePackage {
+    name = "bower-config-0.5.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bower-config/-/bower-config-0.5.0.tgz";
+        sha1 = "d081d43008816b1beb876dee272219851dd4c89c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."bower-config"."~0.5.0" or []);
+    deps = [
+      self.full."graceful-fs"."~2.0.0"
+      self.full."mout"."~0.6.0"
+      self.full."optimist"."~0.6.0"
+      self.full."osenv"."0.0.3"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "bower-config" ];
+  };
   full."bower-endpoint-parser"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
     name = "bower-endpoint-parser-0.2.1";
     src = [
@@ -1009,11 +1185,11 @@
     passthru.names = [ "broadway" ];
   };
   full."browserchannel"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "browserchannel-1.0.6";
+    name = "browserchannel-1.0.7";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/browserchannel/-/browserchannel-1.0.6.tgz";
-        sha1 = "9d3b33cac45b66611c35cd84ef237ad2c1d660d9";
+        url = "http://registry.npmjs.org/browserchannel/-/browserchannel-1.0.7.tgz";
+        sha1 = "0966d021d6001011f3fae3377db4bd2992458b57";
       })
     ];
     buildInputs =
@@ -1108,22 +1284,6 @@
     ];
     passthru.names = [ "buffer-crc32" ];
   };
-  full."buffer-equal"."~0.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "buffer-equal-0.0.0";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.0.tgz";
-        sha1 = "4a68196ac33522daa17ec99858b302a636b62cf1";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."buffer-equal"."~0.0.0" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "buffer-equal" ];
-  };
   full."buffers"."~0.1.1" = lib.makeOverridable self.buildNodePackage {
     name = "buffers-0.1.1";
     src = [
@@ -1173,23 +1333,6 @@
     ];
     passthru.names = [ "buffertools" ];
   };
-  full."bunker"."0.1.X" = lib.makeOverridable self.buildNodePackage {
-    name = "bunker-0.1.2";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/bunker/-/bunker-0.1.2.tgz";
-        sha1 = "c88992464a8e2a6ede86930375f92b58077ef97c";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."bunker"."0.1.X" or []);
-    deps = [
-      self.full."burrito".">=0.2.5 <0.3"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "bunker" ];
-  };
   full."bunyan"."0.21.1" = lib.makeOverridable self.buildNodePackage {
     name = "bunyan-0.21.1";
     src = [
@@ -1208,24 +1351,6 @@
     ];
     passthru.names = [ "bunyan" ];
   };
-  full."burrito".">=0.2.5 <0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "burrito-0.2.12";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/burrito/-/burrito-0.2.12.tgz";
-        sha1 = "d0d6e6ac81d5e99789c6fa4accb0b0031ea54f6b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."burrito".">=0.2.5 <0.3" or []);
-    deps = [
-      self.full."traverse"."~0.5.1"
-      self.full."uglify-js"."~1.1.1"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "burrito" ];
-  };
   full."bytes"."0.2.0" = lib.makeOverridable self.buildNodePackage {
     name = "bytes-0.2.0";
     src = [
@@ -1314,11 +1439,11 @@
     passthru.names = [ "chalk" ];
   };
   full."chalk"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "chalk-0.2.0";
+    name = "chalk-0.2.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/chalk/-/chalk-0.2.0.tgz";
-        sha1 = "47270e80edce0e219911af65479d17db525ff5db";
+        url = "http://registry.npmjs.org/chalk/-/chalk-0.2.1.tgz";
+        sha1 = "7613e1575145b21386483f7f485aa5ffa8cbd10c";
       })
     ];
     buildInputs =
@@ -1347,22 +1472,6 @@
     ];
     passthru.names = [ "character-parser" ];
   };
-  full."charm"."0.1.x" = lib.makeOverridable self.buildNodePackage {
-    name = "charm-0.1.2";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/charm/-/charm-0.1.2.tgz";
-        sha1 = "06c21eed1a1b06aeb67553cdc53e23274bac2296";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."charm"."0.1.x" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "charm" ];
-  };
   full."cheerio"."~0.10.8" = lib.makeOverridable self.buildNodePackage {
     name = "cheerio-0.10.8";
     src = [
@@ -1384,11 +1493,11 @@
     passthru.names = [ "cheerio" ];
   };
   full."cheerio"."~0.12.0" = lib.makeOverridable self.buildNodePackage {
-    name = "cheerio-0.12.1";
+    name = "cheerio-0.12.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.12.1.tgz";
-        sha1 = "82cf2b7e9a260f216142cf3c41e94289a3ea4aa3";
+        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.12.2.tgz";
+        sha1 = "d9908e29679e6d1b501c2cfe0e4ada330ea278c7";
       })
     ];
     buildInputs =
@@ -1404,11 +1513,11 @@
     passthru.names = [ "cheerio" ];
   };
   full."cheerio"."~0.12.1" = lib.makeOverridable self.buildNodePackage {
-    name = "cheerio-0.12.1";
+    name = "cheerio-0.12.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.12.1.tgz";
-        sha1 = "82cf2b7e9a260f216142cf3c41e94289a3ea4aa3";
+        url = "http://registry.npmjs.org/cheerio/-/cheerio-0.12.2.tgz";
+        sha1 = "d9908e29679e6d1b501c2cfe0e4ada330ea278c7";
       })
     ];
     buildInputs =
@@ -1504,6 +1613,23 @@
     ];
     passthru.names = [ "chownr" ];
   };
+  full."clean-css"."~1.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "clean-css-1.0.12";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/clean-css/-/clean-css-1.0.12.tgz";
+        sha1 = "e6e0d977860466363d9110a17423d27cd6874300";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."clean-css"."~1.0.4" or []);
+    deps = [
+      self.full."commander"."1.3.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "clean-css" ];
+  };
   full."cli"."0.4.x" = lib.makeOverridable self.buildNodePackage {
     name = "cli-0.4.5";
     src = [
@@ -1626,18 +1752,18 @@
     passthru.names = [ "cmd-shim" ];
   };
   full."cmd-shim"."~1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "cmd-shim-1.1.0";
+    name = "cmd-shim-1.1.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/cmd-shim/-/cmd-shim-1.1.0.tgz";
-        sha1 = "e69fe26e9a8b9040c7b61dc8ad6b04d7dbabe767";
+        url = "http://registry.npmjs.org/cmd-shim/-/cmd-shim-1.1.1.tgz";
+        sha1 = "348b292db32ed74c8283fcf6c48549b84c6658a7";
       })
     ];
     buildInputs =
       (self.nativeDeps."cmd-shim"."~1.1.0" or []);
     deps = [
       self.full."mkdirp"."~0.3.3"
-      self.full."graceful-fs"."1.2"
+      self.full."graceful-fs"."2"
     ];
     peerDependencies = [
     ];
@@ -1708,6 +1834,22 @@
     ];
     passthru.names = [ "coffee-script" ];
   };
+  full."coffee-script"."~1.3.3" = lib.makeOverridable self.buildNodePackage {
+    name = "coffee-script-1.3.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz";
+        sha1 = "150d6b4cb522894369efed6a2101c20bc7f4a4f4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."coffee-script"."~1.3.3" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "coffee-script" ];
+  };
   full."coffee-script"."~1.6" = lib.makeOverridable self.buildNodePackage {
     name = "coffee-script-1.6.3";
     src = [
@@ -1788,6 +1930,22 @@
     ];
     passthru.names = [ "colors" ];
   };
+  full."colors"."~0.6.0-1" = lib.makeOverridable self.buildNodePackage {
+    name = "colors-0.6.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/colors/-/colors-0.6.2.tgz";
+        sha1 = "2423fe6678ac0c5dae8852e5d0e5be08c997abcc";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."colors"."~0.6.0-1" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "colors" ];
+  };
   full."combined-stream"."~0.0.4" = lib.makeOverridable self.buildNodePackage {
     name = "combined-stream-0.0.4";
     src = [
@@ -1870,6 +2028,23 @@
     ];
     passthru.names = [ "commander" ];
   };
+  full."commander"."1.3.x" = lib.makeOverridable self.buildNodePackage {
+    name = "commander-1.3.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/commander/-/commander-1.3.2.tgz";
+        sha1 = "8a8f30ec670a6fdd64af52f1914b907d79ead5b5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."commander"."1.3.x" or []);
+    deps = [
+      self.full."keypress"."0.1.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "commander" ];
+  };
   full."commander"."2.0.0" = lib.makeOverridable self.buildNodePackage {
     name = "commander-2.0.0";
     src = [
@@ -2037,16 +2212,16 @@
     ];
     passthru.names = [ "connect" ];
   };
-  full."connect"."2.8.5" = lib.makeOverridable self.buildNodePackage {
-    name = "connect-2.8.5";
+  full."connect"."2.8.8" = lib.makeOverridable self.buildNodePackage {
+    name = "connect-2.8.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/connect/-/connect-2.8.5.tgz";
-        sha1 = "20572077ba1f626fdb740b0ad7068f9130d701b8";
+        url = "http://registry.npmjs.org/connect/-/connect-2.8.8.tgz";
+        sha1 = "b9abf8caf0bd9773cb3dea29344119872582446d";
       })
     ];
     buildInputs =
-      (self.nativeDeps."connect"."2.8.5" or []);
+      (self.nativeDeps."connect"."2.8.8" or []);
     deps = [
       self.full."qs"."0.6.5"
       self.full."formidable"."1.0.14"
@@ -2066,11 +2241,11 @@
     passthru.names = [ "connect" ];
   };
   full."connect"."~2" = lib.makeOverridable self.buildNodePackage {
-    name = "connect-2.8.5";
+    name = "connect-2.8.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/connect/-/connect-2.8.5.tgz";
-        sha1 = "20572077ba1f626fdb740b0ad7068f9130d701b8";
+        url = "http://registry.npmjs.org/connect/-/connect-2.8.8.tgz";
+        sha1 = "b9abf8caf0bd9773cb3dea29344119872582446d";
       })
     ];
     buildInputs =
@@ -2094,11 +2269,11 @@
     passthru.names = [ "connect" ];
   };
   full."connect"."~2.8.4" = lib.makeOverridable self.buildNodePackage {
-    name = "connect-2.8.5";
+    name = "connect-2.8.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/connect/-/connect-2.8.5.tgz";
-        sha1 = "20572077ba1f626fdb740b0ad7068f9130d701b8";
+        url = "http://registry.npmjs.org/connect/-/connect-2.8.8.tgz";
+        sha1 = "b9abf8caf0bd9773cb3dea29344119872582446d";
       })
     ];
     buildInputs =
@@ -2189,17 +2364,17 @@
     passthru.names = [ "console-browserify" ];
   };
   full."constantinople"."~1.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "constantinople-1.0.1";
+    name = "constantinople-1.0.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/constantinople/-/constantinople-1.0.1.tgz";
-        sha1 = "038727385eb70567ffb5a825abc44870b56f4de9";
+        url = "http://registry.npmjs.org/constantinople/-/constantinople-1.0.2.tgz";
+        sha1 = "0e64747dc836644d3f659247efd95231b48c3e71";
       })
     ];
     buildInputs =
       (self.nativeDeps."constantinople"."~1.0.1" or []);
     deps = [
-      self.full."uglify-js"."~2.3.6"
+      self.full."uglify-js"."~2.4.0"
     ];
     peerDependencies = [
     ];
@@ -2367,6 +2542,27 @@
     ];
     passthru.names = [ "couch-login" ];
   };
+  full."coveralls"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "coveralls-2.2.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/coveralls/-/coveralls-2.2.0.tgz";
+        sha1 = "9bfe310447895b5665fee55bfee0743cc47fa4e4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."coveralls"."*" or []);
+    deps = [
+      self.full."yaml"."0.2.3"
+      self.full."request"."2.16.2"
+      self.full."lcov-parse"."0.0.4"
+      self.full."log-driver"."1.2.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "coveralls" ];
+  };
+  "coveralls" = self.full."coveralls"."*";
   full."cryptiles"."0.1.x" = lib.makeOverridable self.buildNodePackage {
     name = "cryptiles-0.1.3";
     src = [
@@ -2531,6 +2727,38 @@
     ];
     passthru.names = [ "dargs" ];
   };
+  full."dateformat"."1.0.2-1.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "dateformat-1.0.2-1.2.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz";
+        sha1 = "b0220c02de98617433b72851cf47de3df2cdbee9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."dateformat"."1.0.2-1.2.3" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "dateformat" ];
+  };
+  full."dateformat"."~1.0.6" = lib.makeOverridable self.buildNodePackage {
+    name = "dateformat-1.0.6-1.2.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/dateformat/-/dateformat-1.0.6-1.2.3.tgz";
+        sha1 = "6b3de9f974f698d8b2d3ff9094bbaac8d696c16b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."dateformat"."~1.0.6" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "dateformat" ];
+  };
   full."debug"."*" = lib.makeOverridable self.buildNodePackage {
     name = "debug-0.7.2";
     src = [
@@ -2627,28 +2855,12 @@
     ];
     passthru.names = [ "deep-equal" ];
   };
-  full."deep-equal"."~0.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-equal-0.0.0";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/deep-equal/-/deep-equal-0.0.0.tgz";
-        sha1 = "99679d3bbd047156fcd450d3d01eeb9068691e83";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."deep-equal"."~0.0.0" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "deep-equal" ];
-  };
   full."deep-extend"."~0.2.5" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-extend-0.2.5";
+    name = "deep-extend-0.2.6";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/deep-extend/-/deep-extend-0.2.5.tgz";
-        sha1 = "04471b170de4afdb150f2e8b530b2974dbfee90d";
+        url = "http://registry.npmjs.org/deep-extend/-/deep-extend-0.2.6.tgz";
+        sha1 = "1f767e02b46d88d0a4087affa4b11b1b0b804250";
       })
     ];
     buildInputs =
@@ -2659,22 +2871,6 @@
     ];
     passthru.names = [ "deep-extend" ];
   };
-  full."deep-is"."0.1.x" = lib.makeOverridable self.buildNodePackage {
-    name = "deep-is-0.1.2";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/deep-is/-/deep-is-0.1.2.tgz";
-        sha1 = "9ced65ea0bc0b09f42a6d79c1b1903f9d913cc18";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."deep-is"."0.1.x" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "deep-is" ];
-  };
   full."delayed-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
     name = "delayed-stream-0.0.5";
     src = [
@@ -2740,11 +2936,11 @@
     passthru.names = [ "diff" ];
   };
   full."diff"."~1.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "diff-1.0.5";
+    name = "diff-1.0.6";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/diff/-/diff-1.0.5.tgz";
-        sha1 = "664b6bdb113fb3a51ced79aff621badeed29a02c";
+        url = "http://registry.npmjs.org/diff/-/diff-1.0.6.tgz";
+        sha1 = "987bbd1ed596bd2f0c61d57ba2d9eb27b34f7e50";
       })
     ];
     buildInputs =
@@ -2756,11 +2952,11 @@
     passthru.names = [ "diff" ];
   };
   full."diff"."~1.0.4" = lib.makeOverridable self.buildNodePackage {
-    name = "diff-1.0.5";
+    name = "diff-1.0.6";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/diff/-/diff-1.0.5.tgz";
-        sha1 = "664b6bdb113fb3a51ced79aff621badeed29a02c";
+        url = "http://registry.npmjs.org/diff/-/diff-1.0.6.tgz";
+        sha1 = "987bbd1ed596bd2f0c61d57ba2d9eb27b34f7e50";
       })
     ];
     buildInputs =
@@ -2771,25 +2967,6 @@
     ];
     passthru.names = [ "diff" ];
   };
-  full."difflet"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "difflet-0.2.6";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/difflet/-/difflet-0.2.6.tgz";
-        sha1 = "ab23b31f5649b6faa8e3d2acbd334467365ca6fa";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."difflet"."~0.2.0" or []);
-    deps = [
-      self.full."traverse"."0.6.x"
-      self.full."charm"."0.1.x"
-      self.full."deep-is"."0.1.x"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "difflet" ];
-  };
   full."director"."1.1.10" = lib.makeOverridable self.buildNodePackage {
     name = "director-1.1.10";
     src = [
@@ -2839,6 +3016,23 @@
     ];
     passthru.names = [ "domhandler" ];
   };
+  full."domutils"."1" = lib.makeOverridable self.buildNodePackage {
+    name = "domutils-1.1.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/domutils/-/domutils-1.1.4.tgz";
+        sha1 = "14b774276187066c76f80141f7eac47a22f77248";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."domutils"."1" or []);
+    deps = [
+      self.full."domelementtype"."1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "domutils" ];
+  };
   full."domutils"."1.0" = lib.makeOverridable self.buildNodePackage {
     name = "domutils-1.0.1";
     src = [
@@ -2857,11 +3051,11 @@
     passthru.names = [ "domutils" ];
   };
   full."domutils"."1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "domutils-1.1.2";
+    name = "domutils-1.1.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/domutils/-/domutils-1.1.2.tgz";
-        sha1 = "fcf1d3596cd419818041cdaf6f7894a8d127bb07";
+        url = "http://registry.npmjs.org/domutils/-/domutils-1.1.4.tgz";
+        sha1 = "14b774276187066c76f80141f7eac47a22f77248";
       })
     ];
     buildInputs =
@@ -2955,17 +3149,17 @@
     passthru.names = [ "emitter-component" ];
   };
   full."encoding"."~0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "encoding-0.1.6";
+    name = "encoding-0.1.7";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/encoding/-/encoding-0.1.6.tgz";
-        sha1 = "fec66b6d1c6b8cc554aa78c05ece35bef11a913f";
+        url = "http://registry.npmjs.org/encoding/-/encoding-0.1.7.tgz";
+        sha1 = "25cc19b34e9225d120c2ea769f9136c91cecc908";
       })
     ];
     buildInputs =
       (self.nativeDeps."encoding"."~0.1" or []);
     deps = [
-      self.full."iconv-lite"."0.2.7"
+      self.full."iconv-lite"."~0.2.11"
     ];
     peerDependencies = [
     ];
@@ -3036,12 +3230,47 @@
     passthru.names = [ "escape-html" ];
   };
   "escape-html" = self.full."escape-html"."*";
+  full."escodegen"."0.0.23" = lib.makeOverridable self.buildNodePackage {
+    name = "escodegen-0.0.23";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/escodegen/-/escodegen-0.0.23.tgz";
+        sha1 = "9acf978164368e42276571f18839c823b3a844df";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."escodegen"."0.0.23" or []);
+    deps = [
+      self.full."esprima"."~1.0.2"
+      self.full."estraverse"."~0.0.4"
+      self.full."source-map".">= 0.1.2"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "escodegen" ];
+  };
+  full."esprima"."1.0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "esprima-1.0.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz";
+        sha1 = "9f557e08fc3b4d26ece9dd34f8fbf476b62585ad";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esprima"."1.0.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "esprima" ];
+  };
   full."esprima"."~ 1.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "esprima-1.0.3";
+    name = "esprima-1.0.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz";
-        sha1 = "7bdb544f95526d424808654d3b8fbe928650c0fe";
+        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz";
+        sha1 = "9f557e08fc3b4d26ece9dd34f8fbf476b62585ad";
       })
     ];
     buildInputs =
@@ -3053,11 +3282,11 @@
     passthru.names = [ "esprima" ];
   };
   full."esprima"."~1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "esprima-1.0.3";
+    name = "esprima-1.0.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.3.tgz";
-        sha1 = "7bdb544f95526d424808654d3b8fbe928650c0fe";
+        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz";
+        sha1 = "9f557e08fc3b4d26ece9dd34f8fbf476b62585ad";
       })
     ];
     buildInputs =
@@ -3068,6 +3297,38 @@
     ];
     passthru.names = [ "esprima" ];
   };
+  full."esprima"."~1.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "esprima-1.0.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz";
+        sha1 = "9f557e08fc3b4d26ece9dd34f8fbf476b62585ad";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esprima"."~1.0.2" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "esprima" ];
+  };
+  full."estraverse"."~0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "estraverse-0.0.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz";
+        sha1 = "01a0932dfee574684a598af5a67c3bf9b6428db2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."estraverse"."~0.0.4" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "estraverse" ];
+  };
   full."event-emitter"."~0.2.2" = lib.makeOverridable self.buildNodePackage {
     name = "event-emitter-0.2.2";
     src = [
@@ -3134,6 +3395,22 @@
     ];
     passthru.names = [ "eventemitter2" ];
   };
+  full."eventemitter2"."~0.4.9" = lib.makeOverridable self.buildNodePackage {
+    name = "eventemitter2-0.4.13";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.13.tgz";
+        sha1 = "0a8ab97f9c1b563361b8927f9e80606277509153";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."eventemitter2"."~0.4.9" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "eventemitter2" ];
+  };
   full."events.node".">= 0.4.0" = lib.makeOverridable self.buildNodePackage {
     name = "events.node-0.4.9";
     src = [
@@ -3151,17 +3428,17 @@
     passthru.names = [ "events.node" ];
   };
   full."express"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "express-3.3.5";
+    name = "express-3.3.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-3.3.5.tgz";
-        sha1 = "3fd077660c9ccae4710fcfb326290a01d1e72566";
+        url = "http://registry.npmjs.org/express/-/express-3.3.8.tgz";
+        sha1 = "8e98ac30d81f4c95b85d71d2af6cf84f62ef19bd";
       })
     ];
     buildInputs =
       (self.nativeDeps."express"."*" or []);
     deps = [
-      self.full."connect"."2.8.5"
+      self.full."connect"."2.8.8"
       self.full."commander"."1.2.0"
       self.full."range-parser"."0.0.4"
       self.full."mkdirp"."0.3.5"
@@ -3233,17 +3510,17 @@
     passthru.names = [ "express" ];
   };
   full."express"."3.x" = lib.makeOverridable self.buildNodePackage {
-    name = "express-3.3.5";
+    name = "express-3.3.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-3.3.5.tgz";
-        sha1 = "3fd077660c9ccae4710fcfb326290a01d1e72566";
+        url = "http://registry.npmjs.org/express/-/express-3.3.8.tgz";
+        sha1 = "8e98ac30d81f4c95b85d71d2af6cf84f62ef19bd";
       })
     ];
     buildInputs =
       (self.nativeDeps."express"."3.x" or []);
     deps = [
-      self.full."connect"."2.8.5"
+      self.full."connect"."2.8.8"
       self.full."commander"."1.2.0"
       self.full."range-parser"."0.0.4"
       self.full."mkdirp"."0.3.5"
@@ -3323,11 +3600,11 @@
     passthru.names = [ "express-partials" ];
   };
   full."extend"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "extend-1.1.3";
+    name = "extend-1.2.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/extend/-/extend-1.1.3.tgz";
-        sha1 = "5ae3d12e33009879dfb574e911a2da1e3da29ef4";
+        url = "http://registry.npmjs.org/extend/-/extend-1.2.0.tgz";
+        sha1 = "da1a81af472a5a3e7fd607f85cdeaf69c169294d";
       })
     ];
     buildInputs =
@@ -3454,6 +3731,24 @@
     ];
     passthru.names = [ "faye-websocket" ];
   };
+  full."fileset"."0.1.x" = lib.makeOverridable self.buildNodePackage {
+    name = "fileset-0.1.5";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/fileset/-/fileset-0.1.5.tgz";
+        sha1 = "acc423bfaf92843385c66bf75822264d11b7bd94";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."fileset"."0.1.x" or []);
+    deps = [
+      self.full."minimatch"."0.x"
+      self.full."glob"."3.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "fileset" ];
+  };
   full."findup-sync"."~0.1.0" = lib.makeOverridable self.buildNodePackage {
     name = "findup-sync-0.1.2";
     src = [
@@ -4081,11 +4376,11 @@
     passthru.names = [ "generator-mocha" ];
   };
   full."generator-webapp"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "generator-webapp-0.3.1";
+    name = "generator-webapp-0.4.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/generator-webapp/-/generator-webapp-0.3.1.tgz";
-        sha1 = "def094ddf1b079fd1e33fe381bc898c4f094bd1e";
+        url = "http://registry.npmjs.org/generator-webapp/-/generator-webapp-0.4.1.tgz";
+        sha1 = "b2d3f1b3ea83fbbc0043c81fdf82a3fe725b6001";
       })
     ];
     buildInputs =
@@ -4170,6 +4465,24 @@
     ];
     passthru.names = [ "glob" ];
   };
+  full."glob"."3.x" = lib.makeOverridable self.buildNodePackage {
+    name = "glob-3.2.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/glob/-/glob-3.2.6.tgz";
+        sha1 = "28c805b47bc6c19ba3059cbdf079b98ff62442f2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."glob"."3.x" or []);
+    deps = [
+      self.full."minimatch"."~0.2.11"
+      self.full."inherits"."2"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "glob" ];
+  };
   full."glob".">= 3.1.4" = lib.makeOverridable self.buildNodePackage {
     name = "glob-3.2.6";
     src = [
@@ -4438,6 +4751,90 @@
     ];
     passthru.names = [ "growl" ];
   };
+  full."grunt"."0.4.x" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-0.4.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz";
+        sha1 = "d5892e5680add9ed1befde9aa635cf46b8f49729";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt"."0.4.x" or []);
+    deps = [
+      self.full."async"."~0.1.22"
+      self.full."coffee-script"."~1.3.3"
+      self.full."colors"."~0.6.0-1"
+      self.full."dateformat"."1.0.2-1.2.3"
+      self.full."eventemitter2"."~0.4.9"
+      self.full."findup-sync"."~0.1.0"
+      self.full."glob"."~3.1.21"
+      self.full."hooker"."~0.2.3"
+      self.full."iconv-lite"."~0.2.5"
+      self.full."minimatch"."~0.2.6"
+      self.full."nopt"."~1.0.10"
+      self.full."rimraf"."~2.0.2"
+      self.full."lodash"."~0.9.0"
+      self.full."underscore.string"."~2.2.0rc"
+      self.full."which"."~1.0.5"
+      self.full."js-yaml"."~2.0.2"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "grunt" ];
+  };
+  full."grunt"."~0.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-0.4.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt/-/grunt-0.4.1.tgz";
+        sha1 = "d5892e5680add9ed1befde9aa635cf46b8f49729";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt"."~0.4.0" or []);
+    deps = [
+      self.full."async"."~0.1.22"
+      self.full."coffee-script"."~1.3.3"
+      self.full."colors"."~0.6.0-1"
+      self.full."dateformat"."1.0.2-1.2.3"
+      self.full."eventemitter2"."~0.4.9"
+      self.full."findup-sync"."~0.1.0"
+      self.full."glob"."~3.1.21"
+      self.full."hooker"."~0.2.3"
+      self.full."iconv-lite"."~0.2.5"
+      self.full."minimatch"."~0.2.6"
+      self.full."nopt"."~1.0.10"
+      self.full."rimraf"."~2.0.2"
+      self.full."lodash"."~0.9.0"
+      self.full."underscore.string"."~2.2.0rc"
+      self.full."which"."~1.0.5"
+      self.full."js-yaml"."~2.0.2"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "grunt" ];
+  };
+  full."grunt-cli"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-cli-0.1.9";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-cli/-/grunt-cli-0.1.9.tgz";
+        sha1 = "3f08bfb0bef30ba33083defe53efe0575cbe4e14";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-cli"."*" or []);
+    deps = [
+      self.full."nopt"."~1.0.10"
+      self.full."findup-sync"."~0.1.0"
+      self.full."resolve"."~0.3.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "grunt-cli" ];
+  };
+  "grunt-cli" = self.full."grunt-cli"."*";
   full."grunt-cli"."~0.1.7" = lib.makeOverridable self.buildNodePackage {
     name = "grunt-cli-0.1.9";
     src = [
@@ -4457,6 +4854,158 @@
     ];
     passthru.names = [ "grunt-cli" ];
   };
+  full."grunt-contrib-cssmin"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-cssmin-0.6.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-contrib-cssmin/-/grunt-contrib-cssmin-0.6.1.tgz";
+        sha1 = "534e632bfe19521b21c364677157b8b11e173efc";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-contrib-cssmin"."*" or []);
+    deps = [
+      self.full."clean-css"."~1.0.4"
+      self.full."grunt-lib-contrib"."~0.6.0"
+    ];
+    peerDependencies = [
+      self.full."grunt"."~0.4.0"
+    ];
+    passthru.names = [ "grunt-contrib-cssmin" ];
+  };
+  "grunt-contrib-cssmin" = self.full."grunt-contrib-cssmin"."*";
+  full."grunt-contrib-jshint"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-jshint-0.6.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-contrib-jshint/-/grunt-contrib-jshint-0.6.4.tgz";
+        sha1 = "c5a0e56c13d3f758cf1b5d0786dcb4a7d4b4d748";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-contrib-jshint"."*" or []);
+    deps = [
+      self.full."jshint"."~2.1.10"
+    ];
+    peerDependencies = [
+      self.full."grunt"."~0.4.0"
+    ];
+    passthru.names = [ "grunt-contrib-jshint" ];
+  };
+  "grunt-contrib-jshint" = self.full."grunt-contrib-jshint"."*";
+  full."grunt-contrib-less"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-less-0.7.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-contrib-less/-/grunt-contrib-less-0.7.0.tgz";
+        sha1 = "35f6513e47ec5f3c99188d46efa9dcf378207be8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-contrib-less"."*" or []);
+    deps = [
+      self.full."less"."~1.4.0"
+      self.full."grunt-lib-contrib"."~0.6.1"
+    ];
+    peerDependencies = [
+      self.full."grunt"."~0.4.0"
+    ];
+    passthru.names = [ "grunt-contrib-less" ];
+  };
+  "grunt-contrib-less" = self.full."grunt-contrib-less"."*";
+  full."grunt-contrib-requirejs"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-requirejs-0.4.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-contrib-requirejs/-/grunt-contrib-requirejs-0.4.1.tgz";
+        sha1 = "862ba167141b8a8f36af5444feab3272bb8cf4bd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-contrib-requirejs"."*" or []);
+    deps = [
+      self.full."requirejs"."~2.1.0"
+    ];
+    peerDependencies = [
+      self.full."grunt"."~0.4.0"
+    ];
+    passthru.names = [ "grunt-contrib-requirejs" ];
+  };
+  "grunt-contrib-requirejs" = self.full."grunt-contrib-requirejs"."*";
+  full."grunt-contrib-uglify"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-uglify-0.2.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-contrib-uglify/-/grunt-contrib-uglify-0.2.4.tgz";
+        sha1 = "51113f28a72432521e35e63f7f18a251fda2fd49";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-contrib-uglify"."*" or []);
+    deps = [
+      self.full."uglify-js"."~2.4.0"
+      self.full."grunt-lib-contrib"."~0.6.1"
+    ];
+    peerDependencies = [
+      self.full."grunt"."~0.4.0"
+    ];
+    passthru.names = [ "grunt-contrib-uglify" ];
+  };
+  "grunt-contrib-uglify" = self.full."grunt-contrib-uglify"."*";
+  full."grunt-karma"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-karma-0.7.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-karma/-/grunt-karma-0.7.1.tgz";
+        sha1 = "7fb8c40988b8e88da454afb821a7a925ed05ff81";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-karma"."*" or []);
+    deps = [
+      self.full."optimist"."~0.6.0"
+    ];
+    peerDependencies = [
+      self.full."grunt"."0.4.x"
+      self.full."karma"."~0.10.0"
+    ];
+    passthru.names = [ "grunt-karma" ];
+  };
+  "grunt-karma" = self.full."grunt-karma"."*";
+  full."grunt-lib-contrib"."~0.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-lib-contrib-0.6.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz";
+        sha1 = "3f56adb7da06e814795ee2415b0ebe5fb8903ebb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-lib-contrib"."~0.6.0" or []);
+    deps = [
+      self.full."zlib-browserify"."0.0.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "grunt-lib-contrib" ];
+  };
+  full."grunt-lib-contrib"."~0.6.1" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-lib-contrib-0.6.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/grunt-lib-contrib/-/grunt-lib-contrib-0.6.1.tgz";
+        sha1 = "3f56adb7da06e814795ee2415b0ebe5fb8903ebb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."grunt-lib-contrib"."~0.6.1" or []);
+    deps = [
+      self.full."zlib-browserify"."0.0.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "grunt-lib-contrib" ];
+  };
   full."guifi-earth"."https://github.com/jmendeth/guifi-earth/tarball/f3ee96835fd4fb0e3e12fadbd2cb782770d64854 " = lib.makeOverridable self.buildNodePackage {
     name = "guifi-earth-0.2.1";
     src = [
@@ -4497,6 +5046,24 @@
     passthru.names = [ "gzippo" ];
   };
   "gzippo" = self.full."gzippo"."*";
+  full."handlebars"."1.0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "handlebars-1.0.12";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/handlebars/-/handlebars-1.0.12.tgz";
+        sha1 = "18c6d3440c35e91b19b3ff582b9151ab4985d4fc";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."handlebars"."1.0.x" or []);
+    deps = [
+      self.full."optimist"."~0.3"
+      self.full."uglify-js"."~2.3"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "handlebars" ];
+  };
   full."handlebars"."~1.0.11" = lib.makeOverridable self.buildNodePackage {
     name = "handlebars-1.0.12";
     src = [
@@ -4547,6 +5114,26 @@
     ];
     passthru.names = [ "hat" ];
   };
+  full."hawk"."~0.10.0" = lib.makeOverridable self.buildNodePackage {
+    name = "hawk-0.10.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/hawk/-/hawk-0.10.2.tgz";
+        sha1 = "9b361dee95a931640e6d504e05609a8fc3ac45d2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."hawk"."~0.10.0" or []);
+    deps = [
+      self.full."hoek"."0.7.x"
+      self.full."boom"."0.3.x"
+      self.full."cryptiles"."0.1.x"
+      self.full."sntp"."0.1.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "hawk" ];
+  };
   full."hawk"."~0.10.2" = lib.makeOverridable self.buildNodePackage {
     name = "hawk-0.10.2";
     src = [
@@ -4672,6 +5259,22 @@
     ];
     passthru.names = [ "hoek" ];
   };
+  full."hooker"."~0.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "hooker-0.2.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz";
+        sha1 = "b834f723cc4a242aa65963459df6d984c5d3d959";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."hooker"."~0.2.3" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "hooker" ];
+  };
   full."hooks"."0.2.1" = lib.makeOverridable self.buildNodePackage {
     name = "hooks-0.2.1";
     src = [
@@ -4891,23 +5494,23 @@
     passthru.names = [ "i18next" ];
   };
   "i18next" = self.full."i18next"."*";
-  full."iconv-lite"."0.2.7" = lib.makeOverridable self.buildNodePackage {
-    name = "iconv-lite-0.2.7";
+  full."iconv-lite"."~0.2.10" = lib.makeOverridable self.buildNodePackage {
+    name = "iconv-lite-0.2.11";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.7.tgz";
-        sha1 = "45be2390d27af4b7613aac4ee4d957e3f4cbdb54";
+        url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz";
+        sha1 = "1ce60a3a57864a292d1321ff4609ca4bb965adc8";
       })
     ];
     buildInputs =
-      (self.nativeDeps."iconv-lite"."0.2.7" or []);
+      (self.nativeDeps."iconv-lite"."~0.2.10" or []);
     deps = [
     ];
     peerDependencies = [
     ];
     passthru.names = [ "iconv-lite" ];
   };
-  full."iconv-lite"."~0.2.10" = lib.makeOverridable self.buildNodePackage {
+  full."iconv-lite"."~0.2.11" = lib.makeOverridable self.buildNodePackage {
     name = "iconv-lite-0.2.11";
     src = [
       (fetchurl {
@@ -4916,28 +5519,28 @@
       })
     ];
     buildInputs =
-      (self.nativeDeps."iconv-lite"."~0.2.10" or []);
+      (self.nativeDeps."iconv-lite"."~0.2.11" or []);
     deps = [
     ];
     peerDependencies = [
     ];
     passthru.names = [ "iconv-lite" ];
   };
-  full."inherits"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "inherits-2.0.1";
+  full."iconv-lite"."~0.2.5" = lib.makeOverridable self.buildNodePackage {
+    name = "iconv-lite-0.2.11";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz";
-        sha1 = "b17d08d326b4423e568eff719f91b0b1cbdf69f1";
+        url = "http://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz";
+        sha1 = "1ce60a3a57864a292d1321ff4609ca4bb965adc8";
       })
     ];
     buildInputs =
-      (self.nativeDeps."inherits"."*" or []);
+      (self.nativeDeps."iconv-lite"."~0.2.5" or []);
     deps = [
     ];
     peerDependencies = [
     ];
-    passthru.names = [ "inherits" ];
+    passthru.names = [ "iconv-lite" ];
   };
   full."inherits"."1" = lib.makeOverridable self.buildNodePackage {
     name = "inherits-1.0.0";
@@ -5107,7 +5710,7 @@
     ];
     passthru.names = [ "init-package-json" ];
   };
-  full."inquirer"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
+  full."inquirer"."~0.2.4" = lib.makeOverridable self.buildNodePackage {
     name = "inquirer-0.2.5";
     src = [
       (fetchurl {
@@ -5116,7 +5719,7 @@
       })
     ];
     buildInputs =
-      (self.nativeDeps."inquirer"."~0.2.0" or []);
+      (self.nativeDeps."inquirer"."~0.2.4" or []);
     deps = [
       self.full."lodash"."~1.2.1"
       self.full."async"."~0.2.8"
@@ -5127,16 +5730,16 @@
     ];
     passthru.names = [ "inquirer" ];
   };
-  full."inquirer"."~0.2.2" = lib.makeOverridable self.buildNodePackage {
-    name = "inquirer-0.2.5";
+  full."inquirer"."~0.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "inquirer-0.3.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/inquirer/-/inquirer-0.2.5.tgz";
-        sha1 = "6b49a9cbe03de776122211f174ef9fe2822c08f6";
+        url = "http://registry.npmjs.org/inquirer/-/inquirer-0.3.2.tgz";
+        sha1 = "a061f2ad3488bd2b38e5ac237c059a79f160bdd4";
       })
     ];
     buildInputs =
-      (self.nativeDeps."inquirer"."~0.2.2" or []);
+      (self.nativeDeps."inquirer"."~0.3.0" or []);
     deps = [
       self.full."lodash"."~1.2.1"
       self.full."async"."~0.2.8"
@@ -5147,16 +5750,16 @@
     ];
     passthru.names = [ "inquirer" ];
   };
-  full."inquirer"."~0.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "inquirer-0.2.5";
+  full."inquirer"."~0.3.1" = lib.makeOverridable self.buildNodePackage {
+    name = "inquirer-0.3.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/inquirer/-/inquirer-0.2.5.tgz";
-        sha1 = "6b49a9cbe03de776122211f174ef9fe2822c08f6";
+        url = "http://registry.npmjs.org/inquirer/-/inquirer-0.3.2.tgz";
+        sha1 = "a061f2ad3488bd2b38e5ac237c059a79f160bdd4";
       })
     ];
     buildInputs =
-      (self.nativeDeps."inquirer"."~0.2.4" or []);
+      (self.nativeDeps."inquirer"."~0.3.1" or []);
     deps = [
       self.full."lodash"."~1.2.1"
       self.full."async"."~0.2.8"
@@ -5167,19 +5770,19 @@
     ];
     passthru.names = [ "inquirer" ];
   };
-  full."insight"."~0.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "insight-0.1.3";
+  full."insight"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "insight-0.2.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/insight/-/insight-0.1.3.tgz";
-        sha1 = "868a1135460e48dc0603f1ba2ddd7d3c772e1c97";
+        url = "http://registry.npmjs.org/insight/-/insight-0.2.0.tgz";
+        sha1 = "3b430f3c903558d690d1b96c7479b6f1b9186a5e";
       })
     ];
     buildInputs =
-      (self.nativeDeps."insight"."~0.1.0" or []);
+      (self.nativeDeps."insight"."~0.2.0" or []);
     deps = [
       self.full."chalk"."~0.2.0"
-      self.full."request"."~2.26.0"
+      self.full."request"."~2.27.0"
       self.full."configstore"."~0.1.0"
       self.full."async"."~0.2.9"
       self.full."lodash"."~1.3.1"
@@ -5206,11 +5809,11 @@
     passthru.names = [ "intersect" ];
   };
   full."ironhorse"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "ironhorse-0.0.6";
+    name = "ironhorse-0.0.7";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ironhorse/-/ironhorse-0.0.6.tgz";
-        sha1 = "de774f72022630a258158acdcb590e1542a09b58";
+        url = "http://registry.npmjs.org/ironhorse/-/ironhorse-0.0.7.tgz";
+        sha1 = "5217f2cced8caffe15df95033492f8582e44e5ef";
       })
     ];
     buildInputs =
@@ -5269,6 +5872,33 @@
     ];
     passthru.names = [ "isbinaryfile" ];
   };
+  full."istanbul"."~0.1.41" = lib.makeOverridable self.buildNodePackage {
+    name = "istanbul-0.1.43";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/istanbul/-/istanbul-0.1.43.tgz";
+        sha1 = "8dfd86802b345209f366d29093330ace17f1539d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."istanbul"."~0.1.41" or []);
+    deps = [
+      self.full."esprima"."1.0.x"
+      self.full."escodegen"."0.0.23"
+      self.full."handlebars"."1.0.x"
+      self.full."mkdirp"."0.3.x"
+      self.full."nopt"."2.1.x"
+      self.full."fileset"."0.1.x"
+      self.full."which"."1.0.x"
+      self.full."async"."0.2.x"
+      self.full."abbrev"."1.0.x"
+      self.full."wordwrap"."0.0.x"
+      self.full."resolve"."0.4.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "istanbul" ];
+  };
   full."jade"."*" = lib.makeOverridable self.buildNodePackage {
     name = "jade-0.35.0";
     src = [
@@ -5386,6 +6016,24 @@
     ];
     passthru.names = [ "js-yaml" ];
   };
+  full."js-yaml"."~2.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "js-yaml-2.0.5";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/js-yaml/-/js-yaml-2.0.5.tgz";
+        sha1 = "a25ae6509999e97df278c6719da11bd0687743a8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."js-yaml"."~2.0.2" or []);
+    deps = [
+      self.full."argparse"."~ 0.1.11"
+      self.full."esprima"."~ 1.0.2"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "js-yaml" ];
+  };
   full."js-yaml"."~2.1.0" = lib.makeOverridable self.buildNodePackage {
     name = "js-yaml-2.1.0";
     src = [
@@ -5426,6 +6074,27 @@
     passthru.names = [ "jshint" ];
   };
   "jshint" = self.full."jshint"."*";
+  full."jshint"."~2.1.10" = lib.makeOverridable self.buildNodePackage {
+    name = "jshint-2.1.10";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/jshint/-/jshint-2.1.10.tgz";
+        sha1 = "0c015ec5bc5ad65c11c4b5152f221f24b7af5522";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."jshint"."~2.1.10" or []);
+    deps = [
+      self.full."shelljs"."0.1.x"
+      self.full."underscore"."1.4.x"
+      self.full."cli"."0.4.x"
+      self.full."minimatch"."0.x.x"
+      self.full."console-browserify"."0.1.x"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "jshint" ];
+  };
   full."json-schema"."0.2.2" = lib.makeOverridable self.buildNodePackage {
     name = "json-schema-0.2.2";
     src = [
@@ -5543,15 +6212,15 @@
     passthru.names = [ "junk" ];
   };
   full."karma"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "karma-0.10.2";
+    name = "karma-0.11.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/karma/-/karma-0.10.2.tgz";
-        sha1 = "4e100bd346bb24a1260dcd34b5b3d2d4a9b27b17";
+        url = "http://registry.npmjs.org/karma/-/karma-0.11.0.tgz";
+        sha1 = "554ff769ad9b5f3c78f051ad7e607c529b6c825e";
       })
       (fetchurl {
-        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.2.tgz";
-        sha1 = "4f4b8271ffbb7aba543daf38bbc004f4f7f28da3";
+        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.3.tgz";
+        sha1 = "b7f3b87973ea8e9e1ebfa721188876c31c5fa3be";
       })
       (fetchurl {
         url = "http://registry.npmjs.org/karma-requirejs/-/karma-requirejs-0.1.0.tgz";
@@ -5618,15 +6287,15 @@
   };
   "karma" = self.full."karma"."*";
   full."karma".">=0.9" = lib.makeOverridable self.buildNodePackage {
-    name = "karma-0.10.2";
+    name = "karma-0.11.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/karma/-/karma-0.10.2.tgz";
-        sha1 = "4e100bd346bb24a1260dcd34b5b3d2d4a9b27b17";
+        url = "http://registry.npmjs.org/karma/-/karma-0.11.0.tgz";
+        sha1 = "554ff769ad9b5f3c78f051ad7e607c529b6c825e";
       })
       (fetchurl {
-        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.2.tgz";
-        sha1 = "4f4b8271ffbb7aba543daf38bbc004f4f7f28da3";
+        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.3.tgz";
+        sha1 = "b7f3b87973ea8e9e1ebfa721188876c31c5fa3be";
       })
       (fetchurl {
         url = "http://registry.npmjs.org/karma-requirejs/-/karma-requirejs-0.1.0.tgz";
@@ -5692,6 +6361,80 @@
     passthru.names = [ "karma" "karma-jasmine" "karma-requirejs" "karma-coffee-preprocessor" "karma-html2js-preprocessor" "karma-chrome-launcher" "karma-firefox-launcher" "karma-phantomjs-launcher" "karma-script-launcher" ];
   };
   full."karma".">=0.9.3" = lib.makeOverridable self.buildNodePackage {
+    name = "karma-0.11.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma/-/karma-0.11.0.tgz";
+        sha1 = "554ff769ad9b5f3c78f051ad7e607c529b6c825e";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.3.tgz";
+        sha1 = "b7f3b87973ea8e9e1ebfa721188876c31c5fa3be";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-requirejs/-/karma-requirejs-0.1.0.tgz";
+        sha1 = "d9554aa0f11f2c0ff2e933ab5043a633b1305622";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-coffee-preprocessor/-/karma-coffee-preprocessor-0.1.0.tgz";
+        sha1 = "713affc9990707e43eb6f64afdaf312072b73aab";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-html2js-preprocessor/-/karma-html2js-preprocessor-0.1.0.tgz";
+        sha1 = "2f7cf881f54a5d0b72154cc6ee1241c44292c7fe";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-0.1.0.tgz";
+        sha1 = "d29f42911358a640ba4a13f1d2110819ae2e5cea";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-firefox-launcher/-/karma-firefox-launcher-0.1.0.tgz";
+        sha1 = "e5517590eea029d10d500b5f82ae423aafe069d4";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-phantomjs-launcher/-/karma-phantomjs-launcher-0.1.0.tgz";
+        sha1 = "9ef8243751524e32e67b97e3f8a321ee68a3fa2f";
+      })
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-script-launcher/-/karma-script-launcher-0.1.0.tgz";
+        sha1 = "b643e7c2faead1a52cdb2eeaadcf7a245f0d772a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."karma".">=0.9.3" or [])
+      ++ (self.nativeDeps."karma-jasmine"."*" or [])
+      ++ (self.nativeDeps."karma-requirejs"."*" or [])
+      ++ (self.nativeDeps."karma-coffee-preprocessor"."*" or [])
+      ++ (self.nativeDeps."karma-html2js-preprocessor"."*" or [])
+      ++ (self.nativeDeps."karma-chrome-launcher"."*" or [])
+      ++ (self.nativeDeps."karma-firefox-launcher"."*" or [])
+      ++ (self.nativeDeps."karma-phantomjs-launcher"."*" or [])
+      ++ (self.nativeDeps."karma-script-launcher"."*" or []);
+    deps = [
+      self.full."di"."~0.0.1"
+      self.full."socket.io"."~0.9.13"
+      self.full."chokidar"."~0.6"
+      self.full."glob"."~3.1.21"
+      self.full."minimatch"."~0.2"
+      self.full."http-proxy"."~0.10"
+      self.full."optimist"."~0.3"
+      self.full."coffee-script"."~1.6"
+      self.full."rimraf"."~2.1"
+      self.full."q"."~0.9"
+      self.full."colors"."0.6.0-1"
+      self.full."lodash"."~1.1"
+      self.full."mime"."~1.2"
+      self.full."log4js"."~0.6.3"
+      self.full."useragent"."~2.0.4"
+      self.full."graceful-fs"."~1.2.1"
+      self.full."connect"."~2.8.4"
+      self.full."phantomjs"."~1.9"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "karma" "karma-jasmine" "karma-requirejs" "karma-coffee-preprocessor" "karma-html2js-preprocessor" "karma-chrome-launcher" "karma-firefox-launcher" "karma-phantomjs-launcher" "karma-script-launcher" ];
+  };
+  full."karma"."~0.10.0" = lib.makeOverridable self.buildNodePackage {
     name = "karma-0.10.2";
     src = [
       (fetchurl {
@@ -5699,8 +6442,8 @@
         sha1 = "4e100bd346bb24a1260dcd34b5b3d2d4a9b27b17";
       })
       (fetchurl {
-        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.2.tgz";
-        sha1 = "4f4b8271ffbb7aba543daf38bbc004f4f7f28da3";
+        url = "http://registry.npmjs.org/karma-jasmine/-/karma-jasmine-0.1.3.tgz";
+        sha1 = "b7f3b87973ea8e9e1ebfa721188876c31c5fa3be";
       })
       (fetchurl {
         url = "http://registry.npmjs.org/karma-requirejs/-/karma-requirejs-0.1.0.tgz";
@@ -5732,7 +6475,7 @@
       })
     ];
     buildInputs =
-      (self.nativeDeps."karma".">=0.9.3" or [])
+      (self.nativeDeps."karma"."~0.10.0" or [])
       ++ (self.nativeDeps."karma-jasmine"."*" or [])
       ++ (self.nativeDeps."karma-requirejs"."*" or [])
       ++ (self.nativeDeps."karma-coffee-preprocessor"."*" or [])
@@ -5765,14 +6508,95 @@
     ];
     passthru.names = [ "karma" "karma-jasmine" "karma-requirejs" "karma-coffee-preprocessor" "karma-html2js-preprocessor" "karma-chrome-launcher" "karma-firefox-launcher" "karma-phantomjs-launcher" "karma-script-launcher" ];
   };
-  full."karma-chrome-launcher"."*" = self.full."karma".">=0.9.3";
-  full."karma-coffee-preprocessor"."*" = self.full."karma".">=0.9.3";
-  full."karma-firefox-launcher"."*" = self.full."karma".">=0.9.3";
-  full."karma-html2js-preprocessor"."*" = self.full."karma".">=0.9.3";
-  full."karma-jasmine"."*" = self.full."karma".">=0.9.3";
-  full."karma-phantomjs-launcher"."*" = self.full."karma".">=0.9.3";
-  full."karma-requirejs"."*" = self.full."karma".">=0.9.3";
-  full."karma-script-launcher"."*" = self.full."karma".">=0.9.3";
+  full."karma-chrome-launcher"."*" = self.full."karma"."~0.10.0";
+  "karma-chrome-launcher" = self.full."karma-chrome-launcher"."*";
+  full."karma-coffee-preprocessor"."*" = self.full."karma"."~0.10.0";
+  full."karma-coverage"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "karma-coverage-0.1.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-coverage/-/karma-coverage-0.1.0.tgz";
+        sha1 = "6d5d03352cbe2d529807e558688dceea55f9dbb0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."karma-coverage"."*" or []);
+    deps = [
+      self.full."istanbul"."~0.1.41"
+      self.full."dateformat"."~1.0.6"
+    ];
+    peerDependencies = [
+      self.full."karma".">=0.9"
+    ];
+    passthru.names = [ "karma-coverage" ];
+  };
+  "karma-coverage" = self.full."karma-coverage"."*";
+  full."karma-firefox-launcher"."*" = self.full."karma"."~0.10.0";
+  full."karma-html2js-preprocessor"."*" = self.full."karma"."~0.10.0";
+  full."karma-jasmine"."*" = self.full."karma"."~0.10.0";
+  full."karma-junit-reporter"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "karma-junit-reporter-0.1.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-junit-reporter/-/karma-junit-reporter-0.1.0.tgz";
+        sha1 = "7af72b64d7e9f192d1a40f4ef063ffbcf9e7bba5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."karma-junit-reporter"."*" or []);
+    deps = [
+      self.full."xmlbuilder"."0.4.2"
+    ];
+    peerDependencies = [
+      self.full."karma".">=0.9"
+    ];
+    passthru.names = [ "karma-junit-reporter" ];
+  };
+  "karma-junit-reporter" = self.full."karma-junit-reporter"."*";
+  full."karma-mocha"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "karma-mocha-0.1.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-mocha/-/karma-mocha-0.1.0.tgz";
+        sha1 = "451cfef48c51850e45db9d119927502e6a2feb40";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."karma-mocha"."*" or []);
+    deps = [
+    ];
+    peerDependencies = [
+      self.full."karma".">=0.9"
+      self.full."mocha"."*"
+    ];
+    passthru.names = [ "karma-mocha" ];
+  };
+  "karma-mocha" = self.full."karma-mocha"."*";
+  full."karma-phantomjs-launcher"."*" = self.full."karma"."~0.10.0";
+  full."karma-requirejs"."*" = self.full."karma"."~0.10.0";
+  "karma-requirejs" = self.full."karma-requirejs"."*";
+  full."karma-sauce-launcher"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "karma-sauce-launcher-0.1.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/karma-sauce-launcher/-/karma-sauce-launcher-0.1.0.tgz";
+        sha1 = "46be4b9888fda09e6512516cd5dc6ab8b114d392";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."karma-sauce-launcher"."*" or []);
+    deps = [
+      self.full."wd"."~0.0.32"
+      self.full."sauce-connect-launcher"."~0.1.10"
+      self.full."q"."~0.9.6"
+    ];
+    peerDependencies = [
+      self.full."karma".">=0.9"
+    ];
+    passthru.names = [ "karma-sauce-launcher" ];
+  };
+  "karma-sauce-launcher" = self.full."karma-sauce-launcher"."*";
+  full."karma-script-launcher"."*" = self.full."karma"."~0.10.0";
   full."keep-alive-agent"."0.0.1" = lib.makeOverridable self.buildNodePackage {
     name = "keep-alive-agent-0.0.1";
     src = [
@@ -5897,6 +6721,60 @@
     ];
     passthru.names = [ "lazy" ];
   };
+  full."lcov-parse"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "lcov-parse-0.0.4";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lcov-parse/-/lcov-parse-0.0.4.tgz";
+        sha1 = "3853a4f132f04581db0e74c180542d90f0d1c66b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lcov-parse"."0.0.4" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "lcov-parse" ];
+  };
+  full."lcov-result-merger"."*" = lib.makeOverridable self.buildNodePackage {
+    name = "lcov-result-merger-0.0.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lcov-result-merger/-/lcov-result-merger-0.0.1.tgz";
+        sha1 = "8b0e68a7f9136de084f62d92ecafcfa41ce9e4d9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lcov-result-merger"."*" or []);
+    deps = [
+      self.full."glob"."~3.2.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "lcov-result-merger" ];
+  };
+  "lcov-result-merger" = self.full."lcov-result-merger"."*";
+  full."less"."~1.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "less-1.4.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/less/-/less-1.4.2.tgz";
+        sha1 = "b7deefe98a3a87bee364411b3df2d1efe5a412d0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."less"."~1.4.0" or []);
+    deps = [
+      self.full."mime"."1.2.x"
+      self.full."request".">=2.12.0"
+      self.full."mkdirp"."~0.3.4"
+      self.full."ycssmin".">=1.0.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "less" ];
+  };
   full."libyaml"."*" = lib.makeOverridable self.buildNodePackage {
     name = "libyaml-0.2.2";
     src = [
@@ -5946,12 +6824,28 @@
     ];
     passthru.names = [ "lockfile" ];
   };
+  full."lodash"."~0.9.0" = lib.makeOverridable self.buildNodePackage {
+    name = "lodash-0.9.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lodash/-/lodash-0.9.2.tgz";
+        sha1 = "8f3499c5245d346d682e5b0d3b40767e09f1a92c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lodash"."~0.9.0" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "lodash" ];
+  };
   full."lodash"."~1.0.1" = lib.makeOverridable self.buildNodePackage {
     name = "lodash-1.0.1";
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.0.1.tgz";
-        sha1 = "b751fb1c141fe8bcee6fc1bad44a30f9b9ccd95e";
+        sha1 = "57945732498d92310e5bd4b1ff4f273a79e6c9fc";
       })
     ];
     buildInputs =
@@ -5967,7 +6861,7 @@
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.1.1.tgz";
-        sha1 = "7b7384521f12bef886368a9450162ebec14fa394";
+        sha1 = "41a2b2e9a00e64d6d1999f143ff6b0755f6bbb24";
       })
     ];
     buildInputs =
@@ -5983,7 +6877,7 @@
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.1.1.tgz";
-        sha1 = "7b7384521f12bef886368a9450162ebec14fa394";
+        sha1 = "41a2b2e9a00e64d6d1999f143ff6b0755f6bbb24";
       })
     ];
     buildInputs =
@@ -5999,7 +6893,7 @@
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.2.1.tgz";
-        sha1 = "fc16f434d3a5c2afd0be336262dacda6b14237b8";
+        sha1 = "ed47b16e46f06b2b40309b68e9163c17e93ea304";
       })
     ];
     buildInputs =
@@ -6015,7 +6909,7 @@
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.3.1.tgz";
-        sha1 = "8a5f251d744f2f33d81931e04d60a5a1610b7827";
+        sha1 = "a4663b53686b895ff074e2ba504dfb76a8e2b770";
       })
     ];
     buildInputs =
@@ -6031,7 +6925,7 @@
     src = [
       (fetchurl {
         url = "http://registry.npmjs.org/lodash/-/lodash-1.3.1.tgz";
-        sha1 = "8a5f251d744f2f33d81931e04d60a5a1610b7827";
+        sha1 = "a4663b53686b895ff074e2ba504dfb76a8e2b770";
       })
     ];
     buildInputs =
@@ -6042,6 +6936,22 @@
     ];
     passthru.names = [ "lodash" ];
   };
+  full."log-driver"."1.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "log-driver-1.2.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/log-driver/-/log-driver-1.2.1.tgz";
+        sha1 = "ada8202a133e99764306652e195e28268b0bea5b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."log-driver"."1.2.1" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "log-driver" ];
+  };
   full."log4js"."~0.6.3" = lib.makeOverridable self.buildNodePackage {
     name = "log4js-0.6.8";
     src = [
@@ -6293,6 +7203,22 @@
     ];
     passthru.names = [ "mime" ];
   };
+  full."mime"."1.2.x" = lib.makeOverridable self.buildNodePackage {
+    name = "mime-1.2.11";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/mime/-/mime-1.2.11.tgz";
+        sha1 = "58203eed86e3a5ef17aed2b7d9ebd47f0a60dd10";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."mime"."1.2.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "mime" ];
+  };
   full."mime"."~1.2" = lib.makeOverridable self.buildNodePackage {
     name = "mime-1.2.11";
     src = [
@@ -6426,6 +7352,24 @@
     ];
     passthru.names = [ "minimatch" ];
   };
+  full."minimatch"."0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "minimatch-0.2.12";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz";
+        sha1 = "ea82a012ac662c7ddfaa144f1c147e6946f5dafb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."minimatch"."0.x" or []);
+    deps = [
+      self.full."lru-cache"."2"
+      self.full."sigmund"."~1.0.0"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "minimatch" ];
+  };
   full."minimatch"."0.x.x" = lib.makeOverridable self.buildNodePackage {
     name = "minimatch-0.2.12";
     src = [
@@ -6534,12 +7478,30 @@
     ];
     passthru.names = [ "minimatch" ];
   };
+  full."minimatch"."~0.2.6" = lib.makeOverridable self.buildNodePackage {
+    name = "minimatch-0.2.12";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.2.12.tgz";
+        sha1 = "ea82a012ac662c7ddfaa144f1c147e6946f5dafb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."minimatch"."~0.2.6" or []);
+    deps = [
+      self.full."lru-cache"."2"
+      self.full."sigmund"."~1.0.0"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "minimatch" ];
+  };
   full."minimist"."~0.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "minimist-0.0.1";
+    name = "minimist-0.0.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/minimist/-/minimist-0.0.1.tgz";
-        sha1 = "fa2439fbf7da8525c51b2a74e2815b380abc8ab6";
+        url = "http://registry.npmjs.org/minimist/-/minimist-0.0.2.tgz";
+        sha1 = "3297e0500be195b8fcb56668c45b925bc9bca7ab";
       })
     ];
     buildInputs =
@@ -6679,22 +7641,6 @@
     ];
     passthru.names = [ "mkdirp" ];
   };
-  full."mkdirp"."~0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "mkdirp-0.3.5";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz";
-        sha1 = "de3e5f8961c88c787ee1368df849ac4413eca8d7";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."mkdirp"."~0.3" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "mkdirp" ];
-  };
   full."mkdirp"."~0.3.3" = lib.makeOverridable self.buildNodePackage {
     name = "mkdirp-0.3.5";
     src = [
@@ -6744,11 +7690,11 @@
     passthru.names = [ "mkdirp" ];
   };
   full."mocha"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "mocha-1.12.0";
+    name = "mocha-1.12.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mocha/-/mocha-1.12.0.tgz";
-        sha1 = "95fc936622ce156b8b19ff8def466ac2f3a3f29e";
+        url = "http://registry.npmjs.org/mocha/-/mocha-1.12.1.tgz";
+        sha1 = "5212e3f5914eef8c0888ae344e6a7dd2e5ac294a";
       })
     ];
     buildInputs =
@@ -6760,7 +7706,6 @@
       self.full."diff"."1.0.2"
       self.full."debug"."*"
       self.full."mkdirp"."0.3.5"
-      self.full."ms"."0.3.0"
       self.full."glob"."3.2.1"
     ];
     peerDependencies = [
@@ -7096,34 +8041,17 @@
     ];
     passthru.names = [ "ms" ];
   };
-  full."ms"."0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "ms-0.3.0";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/ms/-/ms-0.3.0.tgz";
-        sha1 = "03edc348d613e66a56486cfdac53bcbe899cbd61";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."ms"."0.3.0" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "ms" ];
-  };
   full."msgpack".">= 0.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "msgpack-0.2.0";
+    name = "msgpack-0.2.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/msgpack/-/msgpack-0.2.0.tgz";
-        sha1 = "d022af5c7db98eff5c01dd48942bc5354e167817";
+        url = "http://registry.npmjs.org/msgpack/-/msgpack-0.2.1.tgz";
+        sha1 = "5da246daa2138b4163640e486c00c4f3961e92ac";
       })
     ];
     buildInputs =
       (self.nativeDeps."msgpack".">= 0.0.1" or []);
     deps = [
-      self.full."nodeunit"."https://github.com/godsflaw/nodeunit/tarball/master"
     ];
     peerDependencies = [
     ];
@@ -7194,11 +8122,11 @@
     passthru.names = [ "mv" ];
   };
   full."nan"."~0.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "nan-0.3.1";
+    name = "nan-0.3.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/nan/-/nan-0.3.1.tgz";
-        sha1 = "672523b3fbdbc8e73213dc1951b636e98b3b176f";
+        url = "http://registry.npmjs.org/nan/-/nan-0.3.2.tgz";
+        sha1 = "0df1935cab15369075ef160ad2894107aa14dc2d";
       })
     ];
     buildInputs =
@@ -7653,23 +8581,6 @@
     passthru.names = [ "nodemon" ];
   };
   "nodemon" = self.full."nodemon"."*";
-  full."nodeunit"."https://github.com/godsflaw/nodeunit/tarball/master" = lib.makeOverridable self.buildNodePackage {
-    name = "nodeunit-0.7.4";
-    src = [
-      (fetchurl {
-        url = "https://github.com/godsflaw/nodeunit/tarball/master";
-        sha256 = "c79333b5b54ca3b9eb42e42d6ea48d261aa9e015c0ad9cf340abacb528d0ee3a";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."nodeunit"."https://github.com/godsflaw/nodeunit/tarball/master" or []);
-    deps = [
-      self.full."tap".">=0.2.3"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "nodeunit" ];
-  };
   full."nopt"."2" = lib.makeOverridable self.buildNodePackage {
     name = "nopt-2.1.2";
     src = [
@@ -7704,16 +8615,16 @@
     ];
     passthru.names = [ "nopt" ];
   };
-  full."nopt"."~1.0.10" = lib.makeOverridable self.buildNodePackage {
-    name = "nopt-1.0.10";
+  full."nopt"."2.1.x" = lib.makeOverridable self.buildNodePackage {
+    name = "nopt-2.1.2";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz";
-        sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee";
+        url = "http://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz";
+        sha1 = "6cccd977b80132a07731d6e8ce58c2c8303cf9af";
       })
     ];
     buildInputs =
-      (self.nativeDeps."nopt"."~1.0.10" or []);
+      (self.nativeDeps."nopt"."2.1.x" or []);
     deps = [
       self.full."abbrev"."1"
     ];
@@ -7721,16 +8632,16 @@
     ];
     passthru.names = [ "nopt" ];
   };
-  full."nopt"."~2" = lib.makeOverridable self.buildNodePackage {
-    name = "nopt-2.1.2";
+  full."nopt"."~1.0.10" = lib.makeOverridable self.buildNodePackage {
+    name = "nopt-1.0.10";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz";
-        sha1 = "6cccd977b80132a07731d6e8ce58c2c8303cf9af";
+        url = "http://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz";
+        sha1 = "6ddd21bd2a31417b92727dd585f8a6f37608ebee";
       })
     ];
     buildInputs =
-      (self.nativeDeps."nopt"."~2" or []);
+      (self.nativeDeps."nopt"."~1.0.10" or []);
     deps = [
       self.full."abbrev"."1"
     ];
@@ -8070,11 +8981,11 @@
     passthru.names = [ "npmconf" ];
   };
   full."npmconf"."~0.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "npmconf-0.1.2";
+    name = "npmconf-0.1.3";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.2.tgz";
-        sha1 = "99af8122f0067802436a5b71dbf8c3539697e62c";
+        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.3.tgz";
+        sha1 = "e17832649a36785f086dac3d50705508e4f996e6";
       })
     ];
     buildInputs =
@@ -8094,11 +9005,11 @@
     passthru.names = [ "npmconf" ];
   };
   full."npmconf"."~0.1.2" = lib.makeOverridable self.buildNodePackage {
-    name = "npmconf-0.1.2";
+    name = "npmconf-0.1.3";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.2.tgz";
-        sha1 = "99af8122f0067802436a5b71dbf8c3539697e62c";
+        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.3.tgz";
+        sha1 = "e17832649a36785f086dac3d50705508e4f996e6";
       })
     ];
     buildInputs =
@@ -8418,6 +9329,24 @@
     ];
     passthru.names = [ "optimist" ];
   };
+  full."optimist"."0.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "optimist-0.6.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/optimist/-/optimist-0.6.0.tgz";
+        sha1 = "69424826f3405f79f142e6fc3d9ae58d4dbb9200";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."optimist"."0.6.0" or []);
+    deps = [
+      self.full."wordwrap"."~0.0.2"
+      self.full."minimist"."~0.0.1"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "optimist" ];
+  };
   full."optimist"."~0.3" = lib.makeOverridable self.buildNodePackage {
     name = "optimist-0.3.7";
     src = [
@@ -8746,11 +9675,11 @@
     passthru.names = [ "pause" ];
   };
   full."phantomjs"."~1.9" = lib.makeOverridable self.buildNodePackage {
-    name = "phantomjs-1.9.1-8";
+    name = "phantomjs-1.9.1-9";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/phantomjs/-/phantomjs-1.9.1-8.tgz";
-        sha1 = "1fb7a800b403474974a696afebfbaa20b616e040";
+        url = "http://registry.npmjs.org/phantomjs/-/phantomjs-1.9.1-9.tgz";
+        sha1 = "f18671f4bcbbb5d5fc4a20ddcd6800ab0edc4453";
       })
     ];
     buildInputs =
@@ -9010,6 +9939,22 @@
     ];
     passthru.names = [ "pullstream" ];
   };
+  full."q"."0.9.x" = lib.makeOverridable self.buildNodePackage {
+    name = "q-0.9.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/q/-/q-0.9.6.tgz";
+        sha1 = "5884b2154bdb3b6d5765e0fafddcb1506e133619";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."q"."0.9.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "q" ];
+  };
   full."q".">= 0.0.1" = lib.makeOverridable self.buildNodePackage {
     name = "q-0.9.6";
     src = [
@@ -9058,6 +10003,22 @@
     ];
     passthru.names = [ "q" ];
   };
+  full."q"."~0.9.6" = lib.makeOverridable self.buildNodePackage {
+    name = "q-0.9.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/q/-/q-0.9.6.tgz";
+        sha1 = "5884b2154bdb3b6d5765e0fafddcb1506e133619";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."q"."~0.9.6" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "q" ];
+  };
   full."qs"."0.5.1" = lib.makeOverridable self.buildNodePackage {
     name = "qs-0.5.1";
     src = [
@@ -9106,6 +10067,22 @@
     ];
     passthru.names = [ "qs" ];
   };
+  full."qs"."~0.5.0" = lib.makeOverridable self.buildNodePackage {
+    name = "qs-0.5.6";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/qs/-/qs-0.5.6.tgz";
+        sha1 = "31b1ad058567651c526921506b9a8793911a0384";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."qs"."~0.5.0" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "qs" ];
+  };
   full."qs"."~0.5.4" = lib.makeOverridable self.buildNodePackage {
     name = "qs-0.5.6";
     src = [
@@ -9351,11 +10328,11 @@
     passthru.names = [ "read-package-json" ];
   };
   full."readable-stream"."1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.15";
+    name = "readable-stream-1.0.17";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.15.tgz";
-        sha1 = "a2c160237235951da985a1572d0a3af585e4be95";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.17.tgz";
+        sha1 = "cbc295fdf394dfa1225d225d02e6b6d0f409fd4b";
       })
     ];
     buildInputs =
@@ -9367,11 +10344,11 @@
     passthru.names = [ "readable-stream" ];
   };
   full."readable-stream"."~1.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.15";
+    name = "readable-stream-1.0.17";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.15.tgz";
-        sha1 = "a2c160237235951da985a1572d0a3af585e4be95";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.17.tgz";
+        sha1 = "cbc295fdf394dfa1225d225d02e6b6d0f409fd4b";
       })
     ];
     buildInputs =
@@ -9383,11 +10360,11 @@
     passthru.names = [ "readable-stream" ];
   };
   full."readable-stream"."~1.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.15";
+    name = "readable-stream-1.0.17";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.15.tgz";
-        sha1 = "a2c160237235951da985a1572d0a3af585e4be95";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.17.tgz";
+        sha1 = "cbc295fdf394dfa1225d225d02e6b6d0f409fd4b";
       })
     ];
     buildInputs =
@@ -9616,6 +10593,33 @@
     ];
     passthru.names = [ "request" ];
   };
+  full."request"."2.16.2" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.16.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.16.2.tgz";
+        sha1 = "83a028be61be4a05163e7e2e7a4b40e35df1bcb9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request"."2.16.2" or []);
+    deps = [
+      self.full."form-data"."~0.0.3"
+      self.full."mime"."~1.2.7"
+      self.full."hawk"."~0.10.0"
+      self.full."node-uuid"."~1.4.0"
+      self.full."cookie-jar"."~0.2.0"
+      self.full."aws-sign"."~0.2.0"
+      self.full."oauth-sign"."~0.2.0"
+      self.full."forever-agent"."~0.2.0"
+      self.full."tunnel-agent"."~0.2.0"
+      self.full."json-stringify-safe"."~3.0.0"
+      self.full."qs"."~0.5.0"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
   full."request"."2.16.x" = lib.makeOverridable self.buildNodePackage {
     name = "request-2.16.6";
     src = [
@@ -9659,6 +10663,34 @@
     ];
     passthru.names = [ "request" ];
   };
+  full."request".">=2.12.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.27.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.27.0.tgz";
+        sha1 = "dfb1a224dd3a5a9bade4337012503d710e538668";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request".">=2.12.0" or []);
+    deps = [
+      self.full."qs"."~0.6.0"
+      self.full."json-stringify-safe"."~5.0.0"
+      self.full."forever-agent"."~0.5.0"
+      self.full."tunnel-agent"."~0.3.0"
+      self.full."http-signature"."~0.10.0"
+      self.full."hawk"."~1.0.0"
+      self.full."aws-sign"."~0.3.0"
+      self.full."oauth-sign"."~0.3.0"
+      self.full."cookie-jar"."~0.3.0"
+      self.full."node-uuid"."~1.4.0"
+      self.full."mime"."~1.2.9"
+      self.full."form-data"."~0.1.0"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
   full."request"."~2" = lib.makeOverridable self.buildNodePackage {
     name = "request-2.27.0";
     src = [
@@ -9798,34 +10830,6 @@
     ];
     passthru.names = [ "request" ];
   };
-  full."request"."~2.26.0" = lib.makeOverridable self.buildNodePackage {
-    name = "request-2.26.0";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/request/-/request-2.26.0.tgz";
-        sha1 = "79b03075cbac2e22ebe41aa7fca884e869c1c212";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."request"."~2.26.0" or []);
-    deps = [
-      self.full."qs"."~0.6.0"
-      self.full."json-stringify-safe"."~5.0.0"
-      self.full."forever-agent"."~0.5.0"
-      self.full."tunnel-agent"."~0.3.0"
-      self.full."http-signature"."~0.10.0"
-      self.full."hawk"."~1.0.0"
-      self.full."aws-sign"."~0.3.0"
-      self.full."oauth-sign"."~0.3.0"
-      self.full."cookie-jar"."~0.3.0"
-      self.full."node-uuid"."~1.4.0"
-      self.full."mime"."~1.2.9"
-      self.full."form-data"."~0.1.0"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "request" ];
-  };
   full."request"."~2.27.0" = lib.makeOverridable self.buildNodePackage {
     name = "request-2.27.0";
     src = [
@@ -9854,16 +10858,16 @@
     ];
     passthru.names = [ "request" ];
   };
-  full."request-progress"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "request-progress-0.2.3";
+  full."request-progress"."~0.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-progress-0.3.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/request-progress/-/request-progress-0.2.3.tgz";
-        sha1 = "5be7088f66642e2739e9058a07cceef0c2868b8b";
+        url = "http://registry.npmjs.org/request-progress/-/request-progress-0.3.1.tgz";
+        sha1 = "0721c105d8a96ac6b2ce8b2c89ae2d5ecfcf6b3a";
       })
     ];
     buildInputs =
-      (self.nativeDeps."request-progress"."~0.2.0" or []);
+      (self.nativeDeps."request-progress"."~0.3.0" or []);
     deps = [
       self.full."throttleit"."~0.0.2"
     ];
@@ -9888,6 +10892,38 @@
     ];
     passthru.names = [ "request-replay" ];
   };
+  full."requirejs"."~2.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "requirejs-2.1.8";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/requirejs/-/requirejs-2.1.8.tgz";
+        sha1 = "f0dfa656d60d404947da796f9c661d92c1b0257a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."requirejs"."~2.1.0" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "requirejs" ];
+  };
+  full."resolve"."0.4.x" = lib.makeOverridable self.buildNodePackage {
+    name = "resolve-0.4.3";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/resolve/-/resolve-0.4.3.tgz";
+        sha1 = "dcadad202e7cacc2467e3a38800211f42f9c13df";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."resolve"."0.4.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "resolve" ];
+  };
   full."resolve"."~0.3.1" = lib.makeOverridable self.buildNodePackage {
     name = "resolve-0.3.1";
     src = [
@@ -10120,23 +11156,6 @@
     ];
     passthru.names = [ "rimraf" ];
   };
-  full."runforcover"."~0.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "runforcover-0.0.2";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/runforcover/-/runforcover-0.0.2.tgz";
-        sha1 = "344f057d8d45d33aebc6cc82204678f69c4857cc";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."runforcover"."~0.0.2" or []);
-    deps = [
-      self.full."bunker"."0.1.X"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "runforcover" ];
-  };
   full."s3http"."*" = lib.makeOverridable self.buildNodePackage {
     name = "s3http-0.0.2";
     src = [
@@ -10158,22 +11177,41 @@
   };
   "s3http" = self.full."s3http"."*";
   full."safefs"."~3.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "safefs-3.0.1";
+    name = "safefs-3.0.3";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/safefs/-/safefs-3.0.1.tgz";
-        sha1 = "a4fd36bcd4805782f0d702e97b47323eafc94cb8";
+        url = "http://registry.npmjs.org/safefs/-/safefs-3.0.3.tgz";
+        sha1 = "1d511e2945f0e7eccdd6bb12ec2e309abf13514e";
       })
     ];
     buildInputs =
       (self.nativeDeps."safefs"."~3.0.1" or []);
     deps = [
-      self.full."taskgroup".">=3 <3.2"
+      self.full."taskgroup"."~3.2.0"
     ];
     peerDependencies = [
     ];
     passthru.names = [ "safefs" ];
   };
+  full."sauce-connect-launcher"."~0.1.10" = lib.makeOverridable self.buildNodePackage {
+    name = "sauce-connect-launcher-0.1.11";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/sauce-connect-launcher/-/sauce-connect-launcher-0.1.11.tgz";
+        sha1 = "71ac88bdab7bd8396a3f7d9feb165a4e457c3ecd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."sauce-connect-launcher"."~0.1.10" or []);
+    deps = [
+      self.full."lodash"."~1.3.1"
+      self.full."async"."~0.2.9"
+      self.full."adm-zip"."~0.4.3"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "sauce-connect-launcher" ];
+  };
   full."sax"."0.5.x" = lib.makeOverridable self.buildNodePackage {
     name = "sax-0.5.5";
     src = [
@@ -10742,22 +11780,6 @@
     ];
     passthru.names = [ "sliced" ];
   };
-  full."slide"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "slide-1.1.5";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/slide/-/slide-1.1.5.tgz";
-        sha1 = "31732adeae78f1d2d60a29b63baf6a032df7c25d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."slide"."*" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "slide" ];
-  };
   full."slide"."~1.1.3" = lib.makeOverridable self.buildNodePackage {
     name = "slide-1.1.5";
     src = [
@@ -11006,6 +12028,23 @@
     passthru.names = [ "source-map" ];
   };
   "source-map" = self.full."source-map"."*";
+  full."source-map".">= 0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "source-map-0.1.29";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/source-map/-/source-map-0.1.29.tgz";
+        sha1 = "39d571a0988fb7a548a676c4de72db78914d173c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."source-map".">= 0.1.2" or []);
+    deps = [
+      self.full."amdefine".">=0.0.4"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "source-map" ];
+  };
   full."source-map"."~0.1.7" = lib.makeOverridable self.buildNodePackage {
     name = "source-map-0.1.29";
     src = [
@@ -11161,11 +12200,11 @@
     passthru.names = [ "streamsearch" ];
   };
   full."stringify-object"."~0.1.4" = lib.makeOverridable self.buildNodePackage {
-    name = "stringify-object-0.1.5";
+    name = "stringify-object-0.1.6";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/stringify-object/-/stringify-object-0.1.5.tgz";
-        sha1 = "87d8b63a3e5dfb189370622f241beeedf706ab3b";
+        url = "http://registry.npmjs.org/stringify-object/-/stringify-object-0.1.6.tgz";
+        sha1 = "f6f66711ef72225ea6e82e6147e43b03e732e40c";
       })
     ];
     buildInputs =
@@ -11347,32 +12386,6 @@
     ];
     passthru.names = [ "sylvester" ];
   };
-  full."tap".">=0.2.3" = lib.makeOverridable self.buildNodePackage {
-    name = "tap-0.4.4";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/tap/-/tap-0.4.4.tgz";
-        sha1 = "122ee7afee3fc7f327660a4fda1e5ac9db2b7714";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."tap".">=0.2.3" or []);
-    deps = [
-      self.full."inherits"."*"
-      self.full."yamlish"."*"
-      self.full."slide"."*"
-      self.full."runforcover"."~0.0.2"
-      self.full."nopt"."~2"
-      self.full."mkdirp"."~0.3"
-      self.full."difflet"."~0.2.0"
-      self.full."deep-equal"."~0.0.0"
-      self.full."buffer-equal"."~0.0.0"
-      self.full."glob"."~3.2.1"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "tap" ];
-  };
   full."tar"."*" = lib.makeOverridable self.buildNodePackage {
     name = "tar-0.1.18";
     src = [
@@ -11469,7 +12482,7 @@
     ];
     passthru.names = [ "tar" ];
   };
-  full."taskgroup".">=3 <3.2" = lib.makeOverridable self.buildNodePackage {
+  full."taskgroup"."~3.1.1" = lib.makeOverridable self.buildNodePackage {
     name = "taskgroup-3.1.2";
     src = [
       (fetchurl {
@@ -11478,7 +12491,7 @@
       })
     ];
     buildInputs =
-      (self.nativeDeps."taskgroup".">=3 <3.2" or []);
+      (self.nativeDeps."taskgroup"."~3.1.1" or []);
     deps = [
       self.full."ambi"."~2.0.0"
       self.full."eventemitter2"."~0.4.11"
@@ -11487,19 +12500,18 @@
     ];
     passthru.names = [ "taskgroup" ];
   };
-  full."taskgroup"."~3.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "taskgroup-3.1.2";
+  full."taskgroup"."~3.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "taskgroup-3.2.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/taskgroup/-/taskgroup-3.1.2.tgz";
-        sha1 = "81fec5dc7eb647fd5a0ba8ed02ee3a730244ca16";
+        url = "http://registry.npmjs.org/taskgroup/-/taskgroup-3.2.0.tgz";
+        sha1 = "ac45e79852a080bd20716eae6d79931968d637d2";
       })
     ];
     buildInputs =
-      (self.nativeDeps."taskgroup"."~3.1.1" or []);
+      (self.nativeDeps."taskgroup"."~3.2.0" or []);
     deps = [
-      self.full."ambi"."~2.0.0"
-      self.full."eventemitter2"."~0.4.11"
+      self.full."ambi"."~2.1.0"
     ];
     peerDependencies = [
     ];
@@ -11655,22 +12667,6 @@
     ];
     passthru.names = [ "transformers" ];
   };
-  full."traverse"."0.6.x" = lib.makeOverridable self.buildNodePackage {
-    name = "traverse-0.6.3";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/traverse/-/traverse-0.6.3.tgz";
-        sha1 = "a053ffa1b6179b9240ea16d74bfd604bd6b6e41b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."traverse"."0.6.x" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "traverse" ];
-  };
   full."traverse".">=0.3.0 <0.4" = lib.makeOverridable self.buildNodePackage {
     name = "traverse-0.3.9";
     src = [
@@ -11687,22 +12683,6 @@
     ];
     passthru.names = [ "traverse" ];
   };
-  full."traverse"."~0.5.1" = lib.makeOverridable self.buildNodePackage {
-    name = "traverse-0.5.2";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/traverse/-/traverse-0.5.2.tgz";
-        sha1 = "e203c58d5f7f0e37db6e74c0acb929bb09b61d85";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."traverse"."~0.5.1" or []);
-    deps = [
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "traverse" ];
-  };
   full."tunnel-agent"."~0.2.0" = lib.makeOverridable self.buildNodePackage {
     name = "tunnel-agent-0.2.0";
     src = [
@@ -11767,36 +12747,21 @@
     ];
     passthru.names = [ "uglify-js" ];
   };
-  full."uglify-js"."2.3.6" = lib.makeOverridable self.buildNodePackage {
-    name = "uglify-js-2.3.6";
+  full."uglify-js"."2.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "uglify-js-2.4.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz";
-        sha1 = "fa0984770b428b7a9b2a8058f46355d14fef211a";
+        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.4.0.tgz";
+        sha1 = "a5f2b6b1b817fb34c16a04234328c89ba1e77137";
       })
     ];
     buildInputs =
-      (self.nativeDeps."uglify-js"."2.3.6" or []);
+      (self.nativeDeps."uglify-js"."2.4.0" or []);
     deps = [
       self.full."async"."~0.2.6"
       self.full."source-map"."~0.1.7"
       self.full."optimist"."~0.3.5"
-    ];
-    peerDependencies = [
-    ];
-    passthru.names = [ "uglify-js" ];
-  };
-  full."uglify-js"."~1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "uglify-js-1.1.1";
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-1.1.1.tgz";
-        sha1 = "ee71a97c4cefd06a1a9b20437f34118982aa035b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."uglify-js"."~1.1.1" or []);
-    deps = [
+      self.full."uglify-to-browserify"."~1.0.0"
     ];
     peerDependencies = [
     ];
@@ -11839,25 +12804,42 @@
     ];
     passthru.names = [ "uglify-js" ];
   };
-  full."uglify-js"."~2.3.6" = lib.makeOverridable self.buildNodePackage {
-    name = "uglify-js-2.3.6";
+  full."uglify-js"."~2.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "uglify-js-2.4.0";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.3.6.tgz";
-        sha1 = "fa0984770b428b7a9b2a8058f46355d14fef211a";
+        url = "http://registry.npmjs.org/uglify-js/-/uglify-js-2.4.0.tgz";
+        sha1 = "a5f2b6b1b817fb34c16a04234328c89ba1e77137";
       })
     ];
     buildInputs =
-      (self.nativeDeps."uglify-js"."~2.3.6" or []);
+      (self.nativeDeps."uglify-js"."~2.4.0" or []);
     deps = [
       self.full."async"."~0.2.6"
       self.full."source-map"."~0.1.7"
       self.full."optimist"."~0.3.5"
+      self.full."uglify-to-browserify"."~1.0.0"
     ];
     peerDependencies = [
     ];
     passthru.names = [ "uglify-js" ];
   };
+  full."uglify-to-browserify"."~1.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "uglify-to-browserify-1.0.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.1.tgz";
+        sha1 = "0e9ada5d4ca358a59a00bb33c8061e2f40ef97d2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."uglify-to-browserify"."~1.0.0" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "uglify-to-browserify" ];
+  };
   full."uid-number"."0" = lib.makeOverridable self.buildNodePackage {
     name = "uid-number-0.0.3";
     src = [
@@ -12003,6 +12985,22 @@
     ];
     passthru.names = [ "underscore" ];
   };
+  full."underscore.string"."~2.2.0rc" = lib.makeOverridable self.buildNodePackage {
+    name = "underscore.string-2.2.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/underscore.string/-/underscore.string-2.2.1.tgz";
+        sha1 = "d7c0fa2af5d5a1a67f4253daee98132e733f0f19";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."underscore.string"."~2.2.0rc" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "underscore.string" ];
+  };
   full."underscore.string"."~2.3.1" = lib.makeOverridable self.buildNodePackage {
     name = "underscore.string-2.3.3";
     src = [
@@ -12020,11 +13018,11 @@
     passthru.names = [ "underscore.string" ];
   };
   full."ungit"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "ungit-0.1.6";
+    name = "ungit-0.1.8";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ungit/-/ungit-0.1.6.tgz";
-        sha1 = "83c7aa319fea9201ae1b5ed43612303881b593d2";
+        url = "http://registry.npmjs.org/ungit/-/ungit-0.1.8.tgz";
+        sha1 = "9d6c45b3771d983bf011424f4cb284c1e79ef0c8";
       })
     ];
     buildInputs =
@@ -12048,6 +13046,7 @@
       self.full."semver"."2.0.8"
       self.full."forever-monitor"."1.1.0"
       self.full."open"."0.0.4"
+      self.full."optimist"."0.6.0"
     ];
     peerDependencies = [
     ];
@@ -12055,11 +13054,11 @@
   };
   "ungit" = self.full."ungit"."*";
   full."unzip"."~0.1.7" = lib.makeOverridable self.buildNodePackage {
-    name = "unzip-0.1.8";
+    name = "unzip-0.1.9";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/unzip/-/unzip-0.1.8.tgz";
-        sha1 = "b6ca171798242150b06fca320544592231aeb158";
+        url = "http://registry.npmjs.org/unzip/-/unzip-0.1.9.tgz";
+        sha1 = "12ac4d05c0a19fc4546df4c50ae0a7f4706a9424";
       })
     ];
     buildInputs =
@@ -12250,6 +13249,22 @@
     ];
     passthru.names = [ "validator" ];
   };
+  full."vargs"."~0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "vargs-0.1.0";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/vargs/-/vargs-0.1.0.tgz";
+        sha1 = "6b6184da6520cc3204ce1b407cac26d92609ebff";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."vargs"."~0.1.0" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "vargs" ];
+  };
   full."vasync"."1.3.3" = lib.makeOverridable self.buildNodePackage {
     name = "vasync-1.3.3";
     src = [
@@ -12426,6 +13441,28 @@
     ];
     passthru.names = [ "watchr" ];
   };
+  full."wd"."~0.0.32" = lib.makeOverridable self.buildNodePackage {
+    name = "wd-0.0.34";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/wd/-/wd-0.0.34.tgz";
+        sha1 = "c8d00ccdbb2862f914b7bd5935330a53cfa88562";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."wd"."~0.0.32" or []);
+    deps = [
+      self.full."async"."0.2.x"
+      self.full."underscore"."1.4.x"
+      self.full."vargs"."~0.1.0"
+      self.full."q"."0.9.x"
+      self.full."request"."~2.21.0"
+      self.full."archiver"."~0.4.6"
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "wd" ];
+  };
   full."websocket-driver".">=0.2.0" = lib.makeOverridable self.buildNodePackage {
     name = "websocket-driver-0.2.2";
     src = [
@@ -12474,6 +13511,22 @@
     ];
     passthru.names = [ "which" ];
   };
+  full."which"."1.0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "which-1.0.5";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/which/-/which-1.0.5.tgz";
+        sha1 = "5630d6819dda692f1464462e7956cb42c0842739";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."which"."1.0.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "which" ];
+  };
   full."which"."~1.0.5" = lib.makeOverridable self.buildNodePackage {
     name = "which-1.0.5";
     src = [
@@ -12602,22 +13655,38 @@
     passthru.names = [ "winston" ];
   };
   full."with"."~1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "with-1.1.0";
+    name = "with-1.1.1";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/with/-/with-1.1.0.tgz";
-        sha1 = "7f722ce4050ab55310777327b014194c544c66dd";
+        url = "http://registry.npmjs.org/with/-/with-1.1.1.tgz";
+        sha1 = "66bd6664deb318b2482dd0424ccdebe822434ac0";
       })
     ];
     buildInputs =
       (self.nativeDeps."with"."~1.1.0" or []);
     deps = [
-      self.full."uglify-js"."2.3.6"
+      self.full."uglify-js"."2.4.0"
     ];
     peerDependencies = [
     ];
     passthru.names = [ "with" ];
   };
+  full."wordwrap"."0.0.x" = lib.makeOverridable self.buildNodePackage {
+    name = "wordwrap-0.0.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz";
+        sha1 = "b79669bb42ecb409f83d583cad52ca17eaa1643f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."wordwrap"."0.0.x" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "wordwrap" ];
+  };
   full."wordwrap".">=0.0.1 <0.1.0" = lib.makeOverridable self.buildNodePackage {
     name = "wordwrap-0.0.2";
     src = [
@@ -12651,11 +13720,11 @@
     passthru.names = [ "wordwrap" ];
   };
   full."ws"."0.4.x" = lib.makeOverridable self.buildNodePackage {
-    name = "ws-0.4.29";
+    name = "ws-0.4.30";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ws/-/ws-0.4.29.tgz";
-        sha1 = "4b79ef62b4f3f782a05ba56b41b122d1252d4f90";
+        url = "http://registry.npmjs.org/ws/-/ws-0.4.30.tgz";
+        sha1 = "5e2c18b7bb7ee0f9c9fcc3d3ec50f513ba5f99e8";
       })
     ];
     buildInputs =
@@ -12754,6 +13823,22 @@
     ];
     passthru.names = [ "xmlbuilder" ];
   };
+  full."xmlbuilder"."0.4.2" = lib.makeOverridable self.buildNodePackage {
+    name = "xmlbuilder-0.4.2";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-0.4.2.tgz";
+        sha1 = "1776d65f3fdbad470a08d8604cdeb1c4e540ff83";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."xmlbuilder"."0.4.2" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "xmlbuilder" ];
+  };
   full."xmlhttprequest"."1.4.2" = lib.makeOverridable self.buildNodePackage {
     name = "xmlhttprequest-1.4.2";
     src = [
@@ -12786,21 +13871,37 @@
     ];
     passthru.names = [ "xoauth2" ];
   };
-  full."yamlish"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "yamlish-0.0.5";
+  full."yaml"."0.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "yaml-0.2.3";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yamlish/-/yamlish-0.0.5.tgz";
-        sha1 = "86c6c8e6b28b0827416dcc86f7419bba5610b57d";
+        url = "http://registry.npmjs.org/yaml/-/yaml-0.2.3.tgz";
+        sha1 = "b5450e92e76ef36b5dd24e3660091ebaeef3e5c7";
       })
     ];
     buildInputs =
-      (self.nativeDeps."yamlish"."*" or []);
+      (self.nativeDeps."yaml"."0.2.3" or []);
     deps = [
     ];
     peerDependencies = [
     ];
-    passthru.names = [ "yamlish" ];
+    passthru.names = [ "yaml" ];
+  };
+  full."ycssmin".">=1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "ycssmin-1.0.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ycssmin/-/ycssmin-1.0.1.tgz";
+        sha1 = "7cdde8db78cfab00d2901c3b2301e304faf4df16";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ycssmin".">=1.0.1" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "ycssmin" ];
   };
   full."yeoman-generator"."~0.10.0" = lib.makeOverridable self.buildNodePackage {
     name = "yeoman-generator-0.10.5";
@@ -12834,11 +13935,11 @@
     passthru.names = [ "yeoman-generator" ];
   };
   full."yeoman-generator"."~0.13.0" = lib.makeOverridable self.buildNodePackage {
-    name = "yeoman-generator-0.13.3";
+    name = "yeoman-generator-0.13.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.3.tgz";
-        sha1 = "5e0f0a74d6ebb61e72689d446404c200e915d14c";
+        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.4.tgz";
+        sha1 = "066798dd978026d37be6657b2672a17bc4f4ce34";
       })
     ];
     buildInputs =
@@ -12858,7 +13959,7 @@
       self.full."isbinaryfile"."~0.1.8"
       self.full."dargs"."~0.1.0"
       self.full."async"."~0.2.8"
-      self.full."inquirer"."~0.2.0"
+      self.full."inquirer"."~0.3.1"
       self.full."iconv-lite"."~0.2.10"
       self.full."shelljs"."~0.1.4"
       self.full."findup-sync"."~0.1.2"
@@ -12870,11 +13971,11 @@
     passthru.names = [ "yeoman-generator" ];
   };
   full."yeoman-generator"."~0.13.1" = lib.makeOverridable self.buildNodePackage {
-    name = "yeoman-generator-0.13.3";
+    name = "yeoman-generator-0.13.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.3.tgz";
-        sha1 = "5e0f0a74d6ebb61e72689d446404c200e915d14c";
+        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.4.tgz";
+        sha1 = "066798dd978026d37be6657b2672a17bc4f4ce34";
       })
     ];
     buildInputs =
@@ -12894,7 +13995,7 @@
       self.full."isbinaryfile"."~0.1.8"
       self.full."dargs"."~0.1.0"
       self.full."async"."~0.2.8"
-      self.full."inquirer"."~0.2.0"
+      self.full."inquirer"."~0.3.1"
       self.full."iconv-lite"."~0.2.10"
       self.full."shelljs"."~0.1.4"
       self.full."findup-sync"."~0.1.2"
@@ -12906,11 +14007,11 @@
     passthru.names = [ "yeoman-generator" ];
   };
   full."yeoman-generator"."~0.13.2" = lib.makeOverridable self.buildNodePackage {
-    name = "yeoman-generator-0.13.3";
+    name = "yeoman-generator-0.13.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.3.tgz";
-        sha1 = "5e0f0a74d6ebb61e72689d446404c200e915d14c";
+        url = "http://registry.npmjs.org/yeoman-generator/-/yeoman-generator-0.13.4.tgz";
+        sha1 = "066798dd978026d37be6657b2672a17bc4f4ce34";
       })
     ];
     buildInputs =
@@ -12930,7 +14031,7 @@
       self.full."isbinaryfile"."~0.1.8"
       self.full."dargs"."~0.1.0"
       self.full."async"."~0.2.8"
-      self.full."inquirer"."~0.2.0"
+      self.full."inquirer"."~0.3.1"
       self.full."iconv-lite"."~0.2.10"
       self.full."shelljs"."~0.1.4"
       self.full."findup-sync"."~0.1.2"
@@ -12942,11 +14043,11 @@
     passthru.names = [ "yeoman-generator" ];
   };
   full."yo"."*" = lib.makeOverridable self.buildNodePackage {
-    name = "yo-1.0.3";
+    name = "yo-1.0.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yo/-/yo-1.0.3.tgz";
-        sha1 = "7235b66201eb66e523204a463a0ed2cf3c2ee45b";
+        url = "http://registry.npmjs.org/yo/-/yo-1.0.4.tgz";
+        sha1 = "666b5965a8e920df877d351da793f89bd1c8707a";
       })
     ];
     buildInputs =
@@ -12956,11 +14057,11 @@
       self.full."nopt"."~2.1.1"
       self.full."lodash"."~1.3.1"
       self.full."update-notifier"."~0.1.3"
-      self.full."insight"."~0.1.0"
+      self.full."insight"."~0.2.0"
       self.full."sudo-block"."~0.2.0"
       self.full."async"."~0.2.9"
       self.full."open"."0.0.4"
-      self.full."chalk"."~0.1.0"
+      self.full."chalk"."~0.2.0"
     ];
     peerDependencies = [
       self.full."grunt-cli"."~0.1.7"
@@ -12970,11 +14071,11 @@
   };
   "yo" = self.full."yo"."*";
   full."yo".">=1.0.0-rc.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "yo-1.0.3";
+    name = "yo-1.0.4";
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/yo/-/yo-1.0.3.tgz";
-        sha1 = "7235b66201eb66e523204a463a0ed2cf3c2ee45b";
+        url = "http://registry.npmjs.org/yo/-/yo-1.0.4.tgz";
+        sha1 = "666b5965a8e920df877d351da793f89bd1c8707a";
       })
     ];
     buildInputs =
@@ -12984,11 +14085,11 @@
       self.full."nopt"."~2.1.1"
       self.full."lodash"."~1.3.1"
       self.full."update-notifier"."~0.1.3"
-      self.full."insight"."~0.1.0"
+      self.full."insight"."~0.2.0"
       self.full."sudo-block"."~0.2.0"
       self.full."async"."~0.2.9"
       self.full."open"."0.0.4"
-      self.full."chalk"."~0.1.0"
+      self.full."chalk"."~0.2.0"
     ];
     peerDependencies = [
       self.full."grunt-cli"."~0.1.7"
@@ -13012,4 +14113,20 @@
     ];
     passthru.names = [ "zeparser" ];
   };
+  full."zlib-browserify"."0.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "zlib-browserify-0.0.1";
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/zlib-browserify/-/zlib-browserify-0.0.1.tgz";
+        sha1 = "4fa6a45d00dbc15f318a4afa1d9afc0258e176cc";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."zlib-browserify"."0.0.1" or []);
+    deps = [
+    ];
+    peerDependencies = [
+    ];
+    passthru.names = [ "zlib-browserify" ];
+  };
 }
diff --git a/pkgs/top-level/node-packages.json b/pkgs/top-level/node-packages.json
index 05892068dc82..d3dcbe665c5b 100644
--- a/pkgs/top-level/node-packages.json
+++ b/pkgs/top-level/node-packages.json
@@ -73,8 +73,25 @@
 , "generator-webapp"
 , "generator-angular"
 , "statsd"
-, "karma"
 , "ungit"
 , { "node-uptime": "https://github.com/fzaninotto/uptime/tarball/1c65756575f90f563a752e2a22892ba2981c79b7" }
 , { "guifi-earth": "https://github.com/jmendeth/guifi-earth/tarball/f3ee96835fd4fb0e3e12fadbd2cb782770d64854 " }
+, "bower"
+, "grunt-cli"
+, "grunt-contrib-jshint"
+, "grunt-contrib-requirejs"
+, "grunt-contrib-less"
+, "grunt-contrib-cssmin"
+, "grunt-contrib-uglify"
+, "grunt-karma"
+, "karma"
+, "karma-mocha"
+, "karma-coverage"
+, "karma-requirejs"
+, "karma-sauce-launcher"
+, "karma-chrome-launcher"
+, "karma-junit-reporter"
+, "almond"
+, "lcov-result-merger"
+, "coveralls"
 ]
diff --git a/pkgs/top-level/node-packages.nix b/pkgs/top-level/node-packages.nix
index 2b050b1319a2..8725ce1e9cd7 100644
--- a/pkgs/top-level/node-packages.nix
+++ b/pkgs/top-level/node-packages.nix
@@ -3,7 +3,7 @@
 {
   nativeDeps = {
     "node-expat"."*" = [ pkgs.expat ];
-    "rbytes"."0.0.2" = [ pkgs.openssl ];
+    "rbytes"."*" = [ pkgs.openssl ];
     "phantomjs"."~1.9" = [ pkgs.phantomjs ];
   };
 
diff --git a/pkgs/top-level/perl-packages.nix b/pkgs/top-level/perl-packages.nix
index f7d316a75148..870f5fa67b9e 100644
--- a/pkgs/top-level/perl-packages.nix
+++ b/pkgs/top-level/perl-packages.nix
@@ -9,7 +9,7 @@
 
 rec {
 
-  inherit (pkgs) buildPerlPackage fetchurl stdenv perl fetchsvn;
+  inherit (pkgs) buildPerlPackage fetchurl stdenv perl fetchsvn gnused;
 
   inherit __overrides;
 
@@ -30,11 +30,15 @@ rec {
       url = "mirror://cpan/authors/id/P/PE/PETDANCE/${name}.tar.gz";
       sha256 = "de5560f2ce6334f3f83bef4ee942fdb09b792f05cf534fe67be3cb0431bf758f";
     };
+    # use gnused so that the preCheck command passes
+    buildInputs = stdenv.lib.optional stdenv.isDarwin [ gnused ];
     propagatedBuildInputs = [ FileNext ];
-    meta = {
+    meta = with stdenv.lib; {
       description = "A grep-like tool tailored to working with large trees of source code";
-      homepage = http://betterthangrep.com/;
-      license = "free";  # Artistic 2.0
+      homepage    = http://betterthangrep.com/;
+      license     = "free";  # Artistic 2.0
+      maintainers = with maintainers; [ lovek323 ];
+      platforms   = stdenv.lib.platforms.unix;
     };
     # t/swamp/{0,perl-without-extension} are datafiles for the test
     # t/ack-show-types.t, but the perl generic builder confuses them
@@ -231,13 +235,19 @@ rec {
     propagatedBuildInputs = [DigestHMAC];
   };
 
-  Autobox = buildPerlPackage rec {
-    name = "autobox-2.55";
+  autobox = pkgs.perlPackages.Autobox;
+
+  Autobox = buildPerlPackage {
+    name = "autobox-2.79";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/C/CH/CHOCOLATE/${name}.tar.gz";
-      sha256 = "1kfn8zqbv9rjri39hh0xvqx74h35iwhix7w6ncajw06br8m9pizh";
+      url = mirror://cpan/authors/id/C/CH/CHOCOLATE/autobox-2.79.tar.gz;
+      sha256 = "8acc8c4a69e1bbb05304d0832d483a07258597529072d869b5960193a2ab950f";
+    };
+    propagatedBuildInputs = [ ScopeGuard ];
+    meta = {
+      description = "Call methods on native types";
+      license = "perl";
     };
-    propagatedBuildInputs = [ScopeGuard];
   };
 
   Autodia = buildPerlPackage rec {
@@ -323,11 +333,15 @@ rec {
     propagatedBuildInputs = [CarpClan];
   };
 
-  BKeywords = buildPerlPackage rec {
-    name = "B-Keywords-1.09";
+  BKeywords = buildPerlPackage {
+    name = "B-Keywords-1.13";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/J/JJ/JJORE/${name}.tar.gz";
-      sha256 = "9a231f54a01a705c574a38702cb3fe8bbb301ea7357a09797e3da876a265d395";
+      url = mirror://cpan/authors/id/R/RU/RURBAN/B-Keywords-1.13.tar.gz;
+      sha256 = "073eb916f69bd337261de6cb6cab8ccdb06f67415d8c7291453ebdfdfe0be405";
+    };
+    meta = {
+      description = "Lists of reserved barewords and symbol names";
+      license = "unknown";
     };
   };
 
@@ -1106,6 +1120,16 @@ rec {
     };
   };
 
+  ClassIterator = buildPerlPackage {
+    name = "Class-Iterator-0.3";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/T/TE/TEXMEC/Class-Iterator-0.3.tar.gz;
+      sha256 = "db1ba87ca9107f161fe9c1e9e7e267c0026defc26fe3e73bcad8ab8ffc18ef9d";
+    };
+    meta = {
+    };
+  };
+
   ClassMakeMethods = buildPerlPackage rec {
     name = "Class-MakeMethods-1.009";
     src = fetchurl {
@@ -1309,6 +1333,49 @@ rec {
     };
   };
 
+  ConfigINI = buildPerlPackage {
+    name = "Config-INI-0.020";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Config-INI-0.020.tar.gz;
+      sha256 = "0ef298da75e3a7becd1f358422cea621c5cf0420278aa6a1bdd2dd14efe07bc9";
+    };
+    propagatedBuildInputs = [ IOString MixinLinewise ];
+    meta = {
+      homepage = https://github.com/rjbs/Config-INI;
+      description = "Simple .ini-file format";
+      license = "perl";
+    };
+  };
+
+  ConfigMVP = buildPerlPackage {
+    name = "Config-MVP-2.200004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-2.200004.tar.gz;
+      sha256 = "dbe473f4b0fc649b82574aa71b0c5da3359058e181928d5e9197fc0ef247c3ec";
+    };
+    buildInputs = [ TestFatal ];
+    propagatedBuildInputs = [ ClassLoad Moose MooseXOneArgNew ParamsUtil RoleHasMessage RoleIdentifiable Throwable TieIxHash TryTiny ];
+    meta = {
+      homepage = https://github.com/rjbs/config-mvp;
+      description = "Multivalue-property package-oriented configuration";
+      license = "perl";
+    };
+  };
+
+  ConfigMVPReaderINI = buildPerlPackage {
+    name = "Config-MVP-Reader-INI-2.101462";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Config-MVP-Reader-INI-2.101462.tar.gz;
+      sha256 = "cd113c3361cfb468655cfcd7b4747b50f990db2cb9452f5d8ffa409422d7df9f";
+    };
+    propagatedBuildInputs = [ ConfigINI ConfigMVP Moose ];
+    meta = {
+      homepage = https://github.com/rjbs/Config-MVP-Reader-INI;
+      description = "An MVP config reader for .ini files";
+      license = "perl";
+    };
+  };
+
   ConfigTiny = buildPerlPackage rec {
     name = "Config-Tiny-2.12";
     src = fetchurl {
@@ -1342,6 +1409,8 @@ rec {
     propagatedBuildInputs = [ SymbolUtil ];
   };
 
+  constantdefer = pkgs.perlPackages.constant-defer;
+
   constant-defer = buildPerlPackage rec {
     name = "constant-defer-5";
     src = fetchurl {
@@ -1378,6 +1447,18 @@ rec {
     propagatedBuildInputs = [ AnyEvent Guard CommonSense ];
   };
 
+  CPANChanges = buildPerlPackage {
+    name = "CPAN-Changes-0.23";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BR/BRICAS/CPAN-Changes-0.23.tar.gz;
+      sha256 = "445a5c751d047c2a2e20680aa86d8bdab25e52891bac24681e9b4f24e98a347c";
+    };
+    meta = {
+      description = "Read and write Changes files";
+      license = "perl";
+    };
+  };
+
   CPANMeta = buildPerlPackage {
     name = "CPAN-Meta-2.120921";
     src = fetchurl {
@@ -1434,6 +1515,20 @@ rec {
     };
   };
 
+  CPANUploader = buildPerlPackage {
+    name = "CPAN-Uploader-0.103004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/CPAN-Uploader-0.103004.tar.gz;
+      sha256 = "cfaf6d4ad32a92cdefabb3abaf1f43c7c11aca5afd5561ea6f691065ac396e97";
+    };
+    propagatedBuildInputs = [ FileHomeDir GetoptLongDescriptive HTTPMessage LWP LWPProtocolhttps TermReadKey ];
+    meta = {
+      homepage = https://github.com/rjbs/cpan-uploader;
+      description = "Upload things to the CPAN";
+      license = "perl";
+    };
+  };
+
   CryptCBC = buildPerlPackage rec {
     name = "Crypt-CBC-2.30";
     src = fetchurl {
@@ -1672,6 +1767,20 @@ rec {
     propagatedBuildInputs = [TestException ClassAccessorChained];
   };
 
+  DataSection = buildPerlPackage {
+    name = "Data-Section-0.101622";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Data-Section-0.101622.tar.gz;
+      sha256 = "33613e5daf0791fc2c5878fd82ef260e944b1e1fa205bcc753c31c62f5b7c7d3";
+    };
+    propagatedBuildInputs = [ MROCompat SubExporter ];
+    meta = {
+      homepage = https://github.com/rjbs/data-section;
+      description = "Read multiple hunks of data out of your DATA section";
+      license = "perl";
+    };
+  };
+
   DataSerializer = buildPerlPackage {
     name = "Data-Serializer-0.59";
     src = fetchurl {
@@ -2166,6 +2275,20 @@ rec {
     };
   };
 
+  DevelFindPerl = buildPerlPackage {
+    name = "Devel-FindPerl-0.006";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/L/LE/LEONT/Devel-FindPerl-0.006.tar.gz;
+      sha256 = "60d5a0fd6880e5cfda381159acd3dbbc21c1121dc44c94ecd323ad5a148e03ff";
+    };
+    buildInputs = [ CaptureTiny ];
+    propagatedBuildInputs = [ ExtUtilsConfig ];
+    meta = {
+      description = "Find the path to your perl";
+      license = "perl";
+    };
+  };
+
   DevelGlobalDestruction = buildPerlPackage {
     name = "Devel-GlobalDestruction-0.09";
     src = fetchurl {
@@ -2314,6 +2437,317 @@ rec {
     };
   };
 
+  DistZilla = buildPerlPackage {
+    name = "Dist-Zilla-4.300036";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-4.300036.tar.gz;
+      sha256 = "d78c1425d51571d9bc61ed3b20c5aaec1eb59e756ceda3ac40ed727e6c93bf21";
+    };
+    buildInputs = [ FileShareDirInstall SoftwareLicense TestFatal TestFileShareDir TestScript ];
+    propagatedBuildInputs = [ AppCmd CPANUploader ClassLoad ConfigINI ConfigMVP ConfigMVPReaderINI DataSection DateTime FileCopyRecursive FileFindRule FileHomeDir FileShareDir FileShareDirInstall Filepushd HashMergeSimple JSON ListAllUtils ListMoreUtils LogDispatchouli Moose MooseAutobox MooseXLazyRequire MooseXRoleParameterized MooseXSetOnce MooseXTypes MooseXTypesPathClass MooseXTypesPerl PPI ParamsUtil PathClass PerlPrereqScanner PerlVersion PodEventual SoftwareLicense StringFormatter StringRewritePrefix SubExporter SubExporterForMethods TermReadKey TestDeep TextGlob TextTemplate TryTiny YAMLTiny autobox namespaceautoclean CPANMetaRequirements ];
+    meta = {
+      homepage = http://dzil.org/;
+      description = "Distribution builder; installer not included!";
+      license = "perl";
+    };
+    doCheck = false;
+  };
+
+  DistZillaPluginBundleTestingMania = buildPerlPackage {
+    name = "Dist-Zilla-PluginBundle-TestingMania-0.20";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-PluginBundle-TestingMania-0.20.tar.gz;
+      sha256 = "073e17a98b0f88a1b60ce45a325d7447a19db394fcc6f01472bacb1956106da8";
+    };
+    buildInputs = [ CaptureTiny DistZilla MooseAutobox perl ];
+    propagatedBuildInputs = [ DistZilla DistZillaPluginMojibakeTests DistZillaPluginNoTabsTests DistZillaPluginTestCPANChanges DistZillaPluginTestCPANMetaJSON DistZillaPluginTestCompile DistZillaPluginTestDistManifest DistZillaPluginTestEOL DistZillaPluginTestKwalitee DistZillaPluginTestMinimumVersion DistZillaPluginTestPerlCritic DistZillaPluginTestPodLinkCheck DistZillaPluginTestPortability DistZillaPluginTestSynopsis DistZillaPluginTestUnusedVars DistZillaPluginTestVersion JSONPP ListMoreUtils Moose PodCoverageTrustPod TestCPANMeta TestPerlCritic TestVersion namespaceautoclean ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-PluginBundle-TestingMania/;
+      description = "Test your dist with every testing plugin conceivable";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginCheckChangeLog = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-CheckChangeLog-0.01";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/F/FA/FAYLAND/Dist-Zilla-Plugin-CheckChangeLog-0.01.tar.gz;
+      sha256 = "153dbe5ff8cb3c060901e003237a0515d7b9b5cc870eebfd417a6c91e28edec2";
+    };
+    propagatedBuildInputs = [ DistZilla ];
+    meta = {
+      description = "Dist::Zilla with Changes check";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginMojibakeTests = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-MojibakeTests-0.5";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/S/SY/SYP/Dist-Zilla-Plugin-MojibakeTests-0.5.tar.gz;
+      sha256 = "0630acc9bcb415feba49b55a1b70da6e49a740673b4a483fc8058d03c6a21676";
+    };
+    propagatedBuildInputs = [ DistZilla Moose TestMojibake UnicodeCheckUTF8 ];
+    meta = {
+      homepage = https://github.com/creaktive/Dist-Zilla-Plugin-MojibakeTests;
+      description = "Release tests for source encoding";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginNoTabsTests = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-NoTabsTests-0.01";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/F/FL/FLORA/Dist-Zilla-Plugin-NoTabsTests-0.01.tar.gz;
+      sha256 = "fd4ed380de4fc2bad61db377cc50ab26b567e53b3a1efd0b8d8baab80256ef9e";
+    };
+    propagatedBuildInputs = [ DistZilla Moose TestNoTabs namespaceautoclean ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Dist-Zilla-Plugin-NoTabsTests;
+      description = "Release tests making sure hard tabs aren't used";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginPodWeaver = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-PodWeaver-3.101642";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Dist-Zilla-Plugin-PodWeaver-3.101642.tar.gz;
+      sha256 = "66066a236be7bd0a3e0ae764a4b9ac10408d40693a1c800c5fdd7e03c3542e00";
+    };
+    buildInputs = [ FileFindRule ];
+    propagatedBuildInputs = [ DistZilla ListMoreUtils Moose PPI PodElementalPerlMunger PodWeaver namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/Dist-Zilla-Plugin-PodWeaver;
+      description = "Weave your Pod together from configuration and Dist::Zilla";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginReadmeAnyFromPod = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-ReadmeAnyFromPod-0.131500";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RT/RTHOMPSON/Dist-Zilla-Plugin-ReadmeAnyFromPod-0.131500.tar.gz;
+      sha256 = "4d02ce5f185e0d9061019c1925a410931d0c1848db7e5ba5f8e676f04634b06e";
+    };
+    buildInputs = [ DistZilla TestMost ];
+    propagatedBuildInputs = [ DistZilla FileSlurp IOstringy Moose MooseAutobox MooseXHasSugar PodMarkdown ];
+    meta = {
+      homepage = https://github.com/DarwinAwardWinner/Dist-Zilla-Plugin-ReadmeAnyFromPod;
+      description = "Automatically convert POD to a README in any format for Dist::Zilla";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginReadmeMarkdownFromPod = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-ReadmeMarkdownFromPod-0.120120";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RT/RTHOMPSON/Dist-Zilla-Plugin-ReadmeMarkdownFromPod-0.120120.tar.gz;
+      sha256 = "5a3346daab4e2bba850ee4a7898467da9f80bc93cc10d2d625f9880a46092160";
+    };
+    buildInputs = [ DistZilla TestMost ];
+    propagatedBuildInputs = [ DistZillaPluginReadmeAnyFromPod Moose ];
+    meta = {
+      homepage = https://github.com/DarwinAwardWinner/Dist-Zilla-Plugin-ReadmeMarkdownFromPod;
+      description = "Automatically convert POD to a README.mkdn for Dist::Zilla";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestCPANChanges = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-CPAN-Changes-0.008";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-CPAN-Changes-0.008.tar.gz;
+      sha256 = "e8e49a23fb6fa021dec4fc4ab0a05a2ad50ac26195536c109a96b681ba4decd2";
+    };
+    buildInputs = [ CPANChanges DistZilla MooseAutobox ];
+    propagatedBuildInputs = [ CPANChanges DataSection DistZilla Moose ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-CPAN-Changes/;
+      description = "Release tests for your changelog";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestCPANMetaJSON = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-CPAN-Meta-JSON-0.003";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-CPAN-Meta-JSON-0.003.tar.gz;
+      sha256 = "c76b9f5745f4626969bb9c60e1330ebd0d8b197f8dd33f9a6e6fce63877b4883";
+    };
+    buildInputs = [ DistZilla ];
+    propagatedBuildInputs = [ DistZilla Moose MooseAutobox ];
+    meta = {
+      homepage = http://p3rl.org/Dist::Zilla::Plugin::Test::CPAN::Meta::JSON;
+      description = "Release tests for your META.json";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestCompile = buildPerlModule {
+    name = "Dist-Zilla-Plugin-Test-Compile-2.021";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Compile-2.021.tar.gz;
+      sha256 = "665c48de1c7c33e9b00e8ddc0204d02b45009e60b9b65033fa4a832dfe9fc808";
+    };
+    buildInputs = [ DistCheckConflicts DistZilla JSON ModuleBuildTiny PathClass TestCheckDeps TestWarnings ];
+    propagatedBuildInputs = [ DataSection DistCheckConflicts DistZilla Moose PathTiny SubExporterForMethods namespaceautoclean ModuleCoreList ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Dist-Zilla-Plugin-Test-Compile/;
+      description = "Common tests to check syntax of your modules";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestDistManifest = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-DistManifest-2.000004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-DistManifest-2.000004.tar.gz;
+      sha256 = "a832d9d04f85e9dd09f30af67c5d636efe79847ec3790939de081ee5e412fb68";
+    };
+    buildInputs = [ CaptureTiny DistZilla MooseAutobox TestOutput ];
+    propagatedBuildInputs = [ DistZilla Moose TestDistManifest ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-DistManifest/;
+      description = "Release tests for the manifest";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestEOL = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-EOL-0.07";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/X/XE/XENO/Dist-Zilla-Plugin-Test-EOL-0.07.tar.gz;
+      sha256 = "c010ef618478e82fbc601abfc241c74fed1fdafe954d8b3ebcb7abe0e09967a8";
+    };
+    buildInputs = [ DistZilla TestScript ];
+    propagatedBuildInputs = [ DistZilla Moose TestEOL namespaceautoclean ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Dist-Zilla-Plugin-Test-EOL/;
+      description = "Author tests making sure correct line endings are used";
+      license = "artistic_2";
+    };
+  };
+
+  DistZillaPluginTestKwalitee = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-Kwalitee-2.06";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/ET/ETHER/Dist-Zilla-Plugin-Test-Kwalitee-2.06.tar.gz;
+      sha256 = "1723beb96d4048fd4fb0fea2ed36c0c6f3ea4648ce7f93d4cb73e5d49e274bf6";
+    };
+    buildInputs = [ CaptureTiny DistZilla PathClass perl ];
+    propagatedBuildInputs = [ DataSection DistZilla Moose SubExporterForMethods namespaceautoclean ];
+    meta = {
+      homepage = https://metacpan.org/release/Dist-Zilla-Plugin-Test-Kwalitee;
+      description = "Release tests for kwalitee";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestMinimumVersion = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-MinimumVersion-2.000005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-MinimumVersion-2.000005.tar.gz;
+      sha256 = "988c71a3158e94e7a0b23f346f19af4a0ed67e101a2653c3185c5ae49981132b";
+    };
+    buildInputs = [ DistZilla MooseAutobox TestOutput ];
+    propagatedBuildInputs = [ DistZilla Moose TestMinimumVersion ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-MinimumVersion/;
+      description = "Release tests for minimum required versions";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestPerlCritic = buildPerlModule {
+    name = "Dist-Zilla-Plugin-Test-Perl-Critic-2.112410";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/J/JQ/JQUELIN/Dist-Zilla-Plugin-Test-Perl-Critic-2.112410.tar.gz;
+      sha256 = "3ce59ce3ef6cf56d7de0debb33c26f899492d9742c8b82073e257787fd85630f";
+    };
+    buildInputs = [ DistZilla MooseAutobox ];
+    propagatedBuildInputs = [ DataSection DistZilla Moose namespaceautoclean ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Dist-Zilla-Plugin-Test-Perl-Critic/;
+      description = "Tests to check your code against best practices";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestPodLinkCheck = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-Pod-LinkCheck-1.001";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RW/RWSTAUNER/Dist-Zilla-Plugin-Test-Pod-LinkCheck-1.001.tar.gz;
+      sha256 = "d75682175dff1f79928794ba30ea29389a4666f781a50cba281c25cfd3c95bbd";
+    };
+    propagatedBuildInputs = [ DistZilla Moose TestPodLinkCheck ];
+    meta = {
+      homepage = http://github.com/rwstauner/Dist-Zilla-Plugin-Test-Pod-LinkCheck;
+      description = "Add release tests for POD links";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestPortability = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-Portability-2.000005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-Portability-2.000005.tar.gz;
+      sha256 = "b32d0a4b1d78ba76fabedd299c1a11efed05c3ce9752d7da6babe06d3515242b";
+    };
+    buildInputs = [ CaptureTiny DistZilla MooseAutobox TestOutput ];
+    propagatedBuildInputs = [ DistZilla Moose TestPortabilityFiles ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-Portability/;
+      description = "Release tests for portability";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestSynopsis = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-Synopsis-2.000004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-Synopsis-2.000004.tar.gz;
+      sha256 = "d073de3206c5e588f60f55e4be64fab4c2595f5bc3013cd91307993691598d59";
+    };
+    buildInputs = [ CaptureTiny DistZilla MooseAutobox TestOutput ];
+    propagatedBuildInputs = [ DistZilla Moose TestSynopsis ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-Synopsis/;
+      description = "Release tests for synopses";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestUnusedVars = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-UnusedVars-2.000005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/D/DO/DOHERTY/Dist-Zilla-Plugin-Test-UnusedVars-2.000005.tar.gz;
+      sha256 = "37ec462dc82f45cfd9d6d92ee59b8fd215a9a14b18d179b05912baee77359804";
+    };
+    buildInputs = [ CaptureTiny DistZilla MooseAutobox TestOutput ];
+    propagatedBuildInputs = [ DistZilla Moose TestVars namespaceautoclean ];
+    meta = {
+      homepage = http://metacpan.org/release/Dist-Zilla-Plugin-Test-UnusedVars/;
+      description = "Release tests for unused variables";
+      license = "perl";
+    };
+  };
+
+  DistZillaPluginTestVersion = buildPerlPackage {
+    name = "Dist-Zilla-Plugin-Test-Version-0.002004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/X/XE/XENO/Dist-Zilla-Plugin-Test-Version-0.002004.tar.gz;
+      sha256 = "4ae5055071e07442223d07d818e9484430368b59c15966b90b18c8abc06f8e36";
+    };
+    buildInputs = [ DistZilla TestNoTabs TestScript ];
+    propagatedBuildInputs = [ DistZilla Moose TestVersion namespaceautoclean ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Dist-Zilla-Plugin-Test-Version/;
+      description = "Release Test::Version tests";
+      license = "artistic_2";
+    };
+  };
+
   EmailAbstract = buildPerlPackage {
     name = "Email-Abstract-3.004";
     src = fetchurl {
@@ -2733,10 +3167,10 @@ rec {
   };
 
   FileChangeNotify = buildPerlModule rec {
-    name = "File-ChangeNotify-0.20";
+    name = "File-ChangeNotify-0.23";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/File/${name}.tar.gz";
-      sha256 = "000aiiijf16j5cf8gql4vr6l9y561famkfb5qv5d29xz2ad4mmd9";
+      url = "mirror://cpan/authors/id/D/DR/DROLSKY/${name}.tar.gz";
+      sha256 = "18aq6lcldniciw189ihmcji98y6zqa1gdl3mjqdg8f37i9amn4i3";
     };
     buildInputs = [ TestException ];
     propagatedBuildInputs =
@@ -2788,15 +3222,53 @@ rec {
     propagatedBuildInputs = [ FileBaseDir ];
   };
 
+  FileFindIterator = buildPerlPackage {
+    name = "File-Find-Iterator-0.4";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/T/TE/TEXMEC/File-Find-Iterator-0.4.tar.gz;
+      sha256 = "a2b87ab9756a2e5bb674adbd39937663ed20c28c716bf5a1095a3ca44d54ab2c";
+    };
+    propagatedBuildInputs = [ ClassIterator ];
+    meta = {
+    };
+  };
+
   FileFindRule = buildPerlPackage rec {
-    name = "File-Find-Rule-0.32";
+    name = "File-Find-Rule-0.33";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/File/${name}.tar.gz";
-      sha256 = "0fdci3k9j8x69p28jb793gni4y9qbgzpfnnj1avzf8nnib9w1wrd";
+      url = "mirror://cpan/authors/id/R/RC/RCLAMP/${name}.tar.gz";
+      sha256 = "0w73b4jr2fcrd74a1w3b2jryq3mqzc8z5mk7ia9p85xn3qmpa5r4";
     };
     propagatedBuildInputs = [ NumberCompare TextGlob ];
   };
 
+  FileFindRulePerl = buildPerlPackage {
+    name = "File-Find-Rule-Perl-1.13";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AD/ADAMK/File-Find-Rule-Perl-1.13.tar.gz;
+      sha256 = "d2ecb270778ddf54c536a78d02fe6ee7a675f7dcb7f3497ba1a76493f1bd2476";
+    };
+    propagatedBuildInputs = [ FileFindRule ParamsUtil ];
+    meta = {
+      description = "Common rules for searching for Perl things";
+      license = "perl";
+    };
+  };
+
+  FileHomeDir = buildPerlPackage {
+    name = "File-HomeDir-1.00";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AD/ADAMK/File-HomeDir-1.00.tar.gz;
+      sha256 = "85b94f3513093ec0a25b91f9f2571918519ae6f2b7a1e8546f8f78d09a877143";
+    };
+    propagatedBuildInputs = [ FileWhich ];
+    meta = {
+      description = "Find your home and other directories on any platform";
+      license = "perl";
+    };
+    preCheck = "export HOME=$TMPDIR";
+  };
+
   FileListing = buildPerlPackage rec {
     name = "File-Listing-6.04";
     src = fetchurl {
@@ -3114,6 +3586,20 @@ rec {
     };
   };
 
+  HashMergeSimple = buildPerlPackage {
+    name = "Hash-Merge-Simple-0.051";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RO/ROKR/Hash-Merge-Simple-0.051.tar.gz;
+      sha256 = "1c56327873d2f04d5722777f044863d968910466997740d55a754071c6287b73";
+    };
+    buildInputs = [ TestMost ];
+    propagatedBuildInputs = [ Clone ];
+    meta = {
+      description = "Recursively merge two or more hashes, simply";
+      license = "perl";
+    };
+  };
+
   HashMultiValue = buildPerlPackage {
     name = "Hash-MultiValue-0.13";
     src = fetchurl {
@@ -3412,7 +3898,7 @@ rec {
   HTTPParserXS = buildPerlPackage rec {
     name = "HTTP-Parser-XS-0.14";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/HTTP/${name}.tar.gz";
+      url = "mirror://cpan/authors/id/K/KA/KAZUHO/${name}.tar.gz";
       sha256 = "06srbjc380kvvj76r8n5c2y282j5zfgn0s0zmb9h3shwrynfqj05";
     };
     buildInputs = [ TestMore ];
@@ -3459,6 +3945,16 @@ rec {
     };
   };
 
+  "if" = buildPerlPackage {
+    name = "if-0.0601";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/I/IL/ILYAZ/modules/if-0.0601.tar.gz;
+      sha256 = "fb2b7329aa111a673cd22dc2889167e52058aead0de2fe0855b32dd658d5c1b7";
+    };
+    meta = {
+    };
+  };
+
   IOAll = buildPerlPackage {
     name = "IO-All-0.46";
     src = fetchurl {
@@ -3577,6 +4073,8 @@ rec {
     };
   };
 
+  IOstringy = pkgs.perlPackages.IOStringy;
+
   IOStringy = buildPerlPackage rec {
     name = "IO-stringy-2.110";
     src = fetchurl {
@@ -3782,6 +4280,8 @@ rec {
     };
   };
 
+  libintlperl = pkgs.perlPackages.libintl_perl;
+
   libintl_perl = buildPerlPackage rec {
     name = "libintl-perl-1.23";
     src = fetchurl {
@@ -3822,7 +4322,7 @@ rec {
   LinguaENInflectPhrase = buildPerlPackage rec {
     name = "Lingua-EN-Inflect-Phrase-0.10";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Lingua/${name}.tar.gz";
+      url = "mirror://cpan/authors/id/R/RK/RKITOVER/${name}.tar.gz";
       sha256 = "1l7sjnibnvgb7a73cjhysmrg4j2bfcn0x5yrqmh0v23laj9fsbbm";
     };
     buildInputs = [ TestMore ];
@@ -3979,6 +4479,36 @@ rec {
     };
   };
 
+  LogDispatchArray = buildPerlPackage {
+    name = "Log-Dispatch-Array-1.002";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatch-Array-1.002.tar.gz;
+      sha256 = "268ec720eec3651d3dadcad7d16f033b47f883c72d6f2547c4ccbe7fb22a4940";
+    };
+    buildInputs = [ TestDeep ];
+    propagatedBuildInputs = [ LogDispatch ];
+    meta = {
+      homepage = https://github.com/rjbs/log-dispatch-array;
+      description = "Log events to an array (reference)";
+      license = "perl";
+    };
+  };
+
+  LogDispatchouli = buildPerlPackage {
+    name = "Log-Dispatchouli-2.006";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Log-Dispatchouli-2.006.tar.gz;
+      sha256 = "bd33b4fcf88ccfb694593ea6d7b330f053e6afee40f27acdf690c24547365354";
+    };
+    buildInputs = [ TestDeep TestFatal ];
+    propagatedBuildInputs = [ LogDispatch LogDispatchArray ParamsUtil StringFlogger SubExporter SubExporterGlobExporter TryTiny ];
+    meta = {
+      homepage = https://github.com/rjbs/log-dispatchouli;
+      description = "A simple wrapper around Log::Dispatch";
+      license = "perl";
+    };
+  };
+
   LWP = buildPerlPackage {
     name = "libwww-perl-6.05";
     src = fetchurl {
@@ -4005,6 +4535,8 @@ rec {
     };
   };
 
+  LWPProtocolhttps = pkgs.perlPackages.LWPProtocolHttps;
+
   LWPProtocolHttps = buildPerlPackage rec {
     name = "LWP-Protocol-https-6.04";
     src = fetchurl {
@@ -4244,6 +4776,20 @@ rec {
     };
   };
 
+  MixinLinewise = buildPerlPackage {
+    name = "Mixin-Linewise-0.004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Mixin-Linewise-0.004.tar.gz;
+      sha256 = "7a50d171850d3e0dde51e041eecd40abc68396ea822baa4381951a7710833dd9";
+    };
+    propagatedBuildInputs = [ IOString SubExporter ];
+    meta = {
+      homepage = https://github.com/rjbs/mixin-linewise;
+      description = "Write your linewise code for handles; this does the rest";
+      license = "perl";
+    };
+  };
+
   ModuleBuild = buildPerlPackage {
     name = "Module-Build-0.4005";
     src = fetchurl {
@@ -4258,10 +4804,10 @@ rec {
   };
 
   ModuleBuildTiny = buildPerlModule {
-    name = "Module-Build-Tiny-0.023";
+    name = "Module-Build-Tiny-0.026";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LE/LEONT/Module-Build-Tiny-0.023.tar.gz;
-      sha256 = "eba7fbfea2dd84310ab00f22fd29bbf774b10a465df3f6133ca7da88c0bd6ac4";
+      url = mirror://cpan/authors/id/L/LE/LEONT/Module-Build-Tiny-0.026.tar.gz;
+      sha256 = "9a1860325404c4ea20e2a79e7236c5ad9203ab71bacab9667044e3fad1eb31ad";
     };
     buildInputs = [ ExtUtilsConfig ExtUtilsHelpers ExtUtilsInstallPaths JSONPP perl ];
     propagatedBuildInputs = [ ExtUtilsConfig ExtUtilsHelpers ExtUtilsInstallPaths JSONPP ];
@@ -4280,6 +4826,19 @@ rec {
     propagatedBuildInputs = [ ExtUtilsXSpp ExtUtilsCppGuess ];
   };
 
+  ModuleCoreList = buildPerlPackage {
+    name = "Module-CoreList-2.97";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BI/BINGOS/Module-CoreList-2.97.tar.gz;
+      sha256 = "fa39c487d43088e7010467621f57d8e3f57b72d2bbf711fc509e87a501f35e09";
+    };
+    meta = {
+      homepage = http://dev.perl.org/;
+      description = "What modules shipped with versions of perl";
+      license = "perl";
+    };
+  };
+
   ModuleFind = buildPerlPackage {
     name = "Module-Find-0.11";
     src = fetchurl {
@@ -4347,6 +4906,20 @@ rec {
     };
   };
 
+  ModuleManifest = buildPerlPackage {
+    name = "Module-Manifest-1.08";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AD/ADAMK/Module-Manifest-1.08.tar.gz;
+      sha256 = "722ed428afcbe5b5b441b0165cbafbd8534fa63d7856d4089e6e25ac21e6445d";
+    };
+    buildInputs = [ TestException TestWarn ];
+    propagatedBuildInputs = [ ParamsUtil ];
+    meta = {
+      description = "Parse and examine a Perl distribution MANIFEST file";
+      license = "perl";
+    };
+  };
+
   ModuleMetadata = buildPerlPackage rec {
     name = "Module-Metadata-1.000005";
     src = fetchurl {
@@ -4356,6 +4929,19 @@ rec {
     propagatedBuildInputs = [ version ];
   };
 
+  ModulePath = buildPerlPackage {
+    name = "Module-Path-0.09";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/N/NE/NEILB/Module-Path-0.09.tar.gz;
+      sha256 = "5330a76ff56800778d825548b4d631510a1a6b4f04725dddca95e68c4ed3ac18";
+    };
+    buildInputs = [ DevelFindPerl ];
+    meta = {
+      description = "Get the full path to a locally installed module";
+      license = "perl";
+    };
+  };
+
   ModulePluggable = buildPerlPackage {
     name = "Module-Pluggable-4.8";
     src = fetchurl {
@@ -4457,13 +5043,18 @@ rec {
     };
   };
 
-  MooseAutobox = buildPerlPackage rec {
-    name = "Moose-Autobox-0.09";
+  MooseAutobox = buildPerlPackage {
+    name = "Moose-Autobox-0.13";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/R/RJ/RJBS/${name}.tar.gz";
-      sha256 = "12wsm576mc5sdqc1bhim9iazdx4fy336gz10zwwalygri3arlvgh";
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Moose-Autobox-0.13.tar.gz;
+      sha256 = "3474b3e6dfe099fcca34089375ace6612cca35d4d8f9a0b8b4e48fbf88541b21";
+    };
+    buildInputs = [ TestException ];
+    propagatedBuildInputs = [ Moose SyntaxKeywordJunction autobox ];
+    meta = {
+      description = "Autoboxed wrappers for Native Perl datatypes";
+      license = "perl";
     };
-    propagatedBuildInputs = [Moose TestException Autobox Perl6Junction];
   };
 
   MooseXABC = buildPerlPackage {
@@ -4610,6 +5201,36 @@ rec {
     };
   };
 
+  MooseXHasSugar = buildPerlModule {
+    name = "MooseX-Has-Sugar-0.05070421";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/K/KE/KENTNL/MooseX-Has-Sugar-0.05070421.tar.gz;
+      sha256 = "5acf92a6dcac50a6edfcbdb2c38802f8c1f9dc7194a79d0b85a3d4105ebba7df";
+    };
+    buildInputs = [ Moose MooseXTypes TestFatal namespaceautoclean ];
+    propagatedBuildInputs = [ SubExporter ];
+    meta = {
+      homepage = https://github.com/kentfredric/MooseX-Has-Sugar;
+      description = "Sugar Syntax for moose 'has' fields";
+      license = "perl";
+    };
+  };
+
+  MooseXLazyRequire = buildPerlPackage {
+    name = "MooseX-LazyRequire-0.10";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/ET/ETHER/MooseX-LazyRequire-0.10.tar.gz;
+      sha256 = "a555f80c0e91bc428f040015f00dd98f3c022704ec089516b9b3507f3d437090";
+    };
+    buildInputs = [ TestCheckDeps TestFatal ];
+    propagatedBuildInputs = [ Moose aliased namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/karenetheridge/moosex-lazyrequire;
+      description = "Required attributes which fail only when trying to use them";
+      license = "perl";
+    };
+  };
+
   MooseXMarkAsMethods = buildPerlPackage {
     name = "MooseX-MarkAsMethods-0.15";
     src = fetchurl {
@@ -4654,6 +5275,21 @@ rec {
     };
   };
 
+  MooseXOneArgNew = buildPerlPackage {
+    name = "MooseX-OneArgNew-0.003";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-OneArgNew-0.003.tar.gz;
+      sha256 = "bd1879192f542dbc0741dbd1ba71f29bd22a0fce372d7a6ae04dbded51d71123";
+    };
+    buildInputs = [ Moose ];
+    propagatedBuildInputs = [ Moose MooseXRoleParameterized namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/moosex-oneargnew;
+      description = "Teach ->new to accept single, non-hashref arguments";
+      license = "perl";
+    };
+  };
+
   MooseXRelatedClassRoles = buildPerlPackage rec {
     name = "MooseX-RelatedClassRoles-0.004";
     src = fetchurl {
@@ -4866,6 +5502,19 @@ rec {
     };
   };
 
+  MooseXTypesPerl = buildPerlPackage {
+    name = "MooseX-Types-Perl-0.101341";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/MooseX-Types-Perl-0.101341.tar.gz;
+      sha256 = "d1081a734d62121f3262b18170022de2f51ebcc0a8b8afe1b1273d7cb3e58c97";
+    };
+    propagatedBuildInputs = [ MooseXTypes ParamsUtil ];
+    meta = {
+      description = "Moose types that check against Perl syntax";
+      license = "perl";
+    };
+  };
+
   MooseXTypesStringlike = buildPerlPackage {
     name = "MooseX-Types-Stringlike-0.001";
     src = fetchurl {
@@ -5041,7 +5690,10 @@ rec {
       sha256 = "94f2bd6b317a9142e400d7d17bd573dc9d22284c3ceaa4864474ba674e0e2e9f";
     };
     buildInputs = [ LWP TestException ];
-    propagatedBuildInputs = [ DataStreamBulk DateTimeFormatHTTP DigestHMAC DigestMD5File FileFindRule HTTPDate HTTPMessage LWPUserAgentDetermined MIMETypes Moose MooseXStrictConstructor MooseXTypesDateTimeMoreCoercions PathClass RegexpCommon TermEncoding TermProgressBarSimple URI XMLLibXML ];
+    propagatedBuildInputs = [ DataStreamBulk DateTimeFormatHTTP DigestHMAC DigestMD5File FileFindRule HTTPDate HTTPMessage LWPUserAgentDetermined MIMETypes Moose MooseXStrictConstructor MooseXTypesDateTimeMoreCoercions PathClass RegexpCommon TermEncoding TermProgressBarSimple URI XMLLibXML JSON ];
+    # See https://github.com/pfig/net-amazon-s3/pull/25
+    patches =
+      [ ../development/perl-modules/net-amazon-s3-credentials-provider.patch ];
     meta = {
       description = "Use the Amazon S3 - Simple Storage Service";
       license = "perl";
@@ -5477,16 +6129,19 @@ rec {
     };
   };
 
-  PerlCritic = buildPerlPackage rec {
-    name = "Perl-Critic-1.105";
+  PerlCritic = buildPerlPackage {
+    name = "Perl-Critic-1.118";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/E/EL/ELLIOTJS/${name}.tar.gz";
-      sha256 = "3e1bd5ab4912ebe20cd3cb81b36ee28dbdd8d410374a31025dc9fb289921ff27";
+      url = mirror://cpan/authors/id/T/TH/THALJEF/Perl-Critic-1.118.tar.gz;
+      sha256 = "666d2bef3ac924598c06a05277680da5910e10d94c5ec161336f6509c11155e8";
+    };
+    buildInputs = [ TestDeep ];
+    propagatedBuildInputs = [ BKeywords ConfigTiny EmailAddress ExceptionClass IOString ListMoreUtils PPI PPIxRegexp PPIxUtilities PerlTidy PodSpell Readonly StringFormat TaskWeaken ];
+    meta = {
+      homepage = http://perlcritic.com;
+      description = "Critique Perl source code for best-practices";
+      license = "perl";
     };
-    propagatedBuildInputs = [
-      PPI BKeywords ConfigTiny ExceptionClass Readonly StringFormat
-      EmailAddress FileWhich PerlTidy PodSpell ReadonlyXS RegexpParser
-    ];
   };
 
   PerlIOeol = buildPerlPackage {
@@ -5610,25 +6265,48 @@ rec {
     };
   };
 
-  PPI = buildPerlPackage rec {
-    name = "PPI-1.210";
+  PPI = buildPerlPackage {
+    name = "PPI-1.215";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/A/AD/ADAMK/${name}.tar.gz";
-      sha256 = "6c851e86475242fa0def2f02565743d41ab703ff6df3e826166ee9df5b961c7a";
+      url = mirror://cpan/authors/id/A/AD/ADAMK/PPI-1.215.tar.gz;
+      sha256 = "db238e84da705b952b69f25554019ce70124079a0ad43713d0638aa14ba54878";
+    };
+    buildInputs = [ ClassInspector FileRemove TestNoWarnings TestObject TestSubCalls ];
+    propagatedBuildInputs = [ Clone IOString ListMoreUtils ParamsUtil TaskWeaken ];
+    meta = {
+      description = "Parse, Analyze and Manipulate Perl (without perl)";
+      license = "perl";
     };
-    propagatedBuildInputs = [
-      ClassInspector
-      Clone
-      FileRemove
-      IOString
-      ListMoreUtils
-      ParamsUtil
-      TaskWeaken
-      TestNoWarnings TestObject TestSubCalls
-    ];
     doCheck = false;
   };
 
+  PPIxRegexp = buildPerlPackage {
+    name = "PPIx-Regexp-0.034";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/W/WY/WYANT/PPIx-Regexp-0.034.tar.gz;
+      sha256 = "512a358f4bd6196df0601ff36f7831e0ba142fb8ef2bc3995e19bceabd0b5ae7";
+    };
+    propagatedBuildInputs = [ ListMoreUtils PPI TaskWeaken ];
+    meta = {
+      description = "Parse regular expressions";
+      license = "perl";
+    };
+  };
+
+  PPIxUtilities = buildPerlPackage {
+    name = "PPIx-Utilities-1.001000";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/EL/ELLIOTJS/PPIx-Utilities-1.001000.tar.gz;
+      sha256 = "03a483386fd6a2c808f09778d44db06b02c3140fb24ba4bf12f851f46d3bcb9b";
+    };
+    buildInputs = [ PPI TestDeep ];
+    propagatedBuildInputs = [ ExceptionClass PPI Readonly TaskWeaken ];
+    meta = {
+      description = "Extensions to L<PPI|PPI>";
+      license = "perl";
+    };
+  };
+
   ProcWaitStat = buildPerlPackage rec {
     name = "Proc-WaitStat-1.00";
     src = fetchurl {
@@ -5664,6 +6342,48 @@ rec {
     };
   };
 
+  PerlMinimumVersion = buildPerlPackage {
+    name = "Perl-MinimumVersion-1.32";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/C/CH/CHORNY/Perl-MinimumVersion-1.32.tar.gz;
+      sha256 = "fa9884abee80c7afc260a28a4e6a6804a0335f5f582e3931c3a53b8504f1a27a";
+    };
+    buildInputs = [ TestScript ];
+    propagatedBuildInputs = [ FileFindRule FileFindRulePerl PPI PPIxRegexp ParamsUtil PerlCritic ];
+    meta = {
+      description = "Find a minimum required version of perl for Perl code";
+      license = "perl";
+    };
+  };
+
+  PerlPrereqScanner = buildPerlPackage {
+    name = "Perl-PrereqScanner-1.016";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Perl-PrereqScanner-1.016.tar.gz;
+      sha256 = "1ab70723f3d036ef91684572beacab40bf99f5ed69922769aa077664c778c474";
+    };
+    buildInputs = [ PPI TryTiny ];
+    propagatedBuildInputs = [ GetoptLongDescriptive ListMoreUtils ModulePath Moose PPI ParamsUtil StringRewritePrefix namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/perl-prereqscanner;
+      description = "A tool to scan your Perl code for its prerequisites";
+      license = "perl";
+    };
+  };
+
+  PerlVersion = buildPerlPackage {
+    name = "Perl-Version-1.011";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AN/ANDYA/Perl-Version-1.011.tar.gz;
+      sha256 = "12ede8a87a12574fcd525c1d23d8a5b2fa2918ff5b78eb56cf701251a81af19b";
+    };
+    propagatedBuildInputs = [ FileSlurp ];
+    meta = {
+      description = "Parse and manipulate Perl version strings";
+      license = "perl";
+    };
+  };
+
   PodCoverage = buildPerlPackage rec {
     name = "Pod-Coverage-0.19";
     src = fetchurl {
@@ -5673,6 +6393,50 @@ rec {
     propagatedBuildInputs = [DevelSymdump];
   };
 
+  PodCoverageTrustPod = buildPerlPackage {
+    name = "Pod-Coverage-TrustPod-0.100002";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Coverage-TrustPod-0.100002.tar.gz;
+      sha256 = "2389f8085c16087b10f59f1bd1b9de5d83cca5eb203778a2af1cee897b89bb6e";
+    };
+    propagatedBuildInputs = [ PodCoverage PodEventual ];
+    meta = {
+      homepage = https://github.com/rjbs/pod-coverage-trustpod;
+      description = "Allow a module's pod to contain Pod::Coverage hints";
+      license = "perl";
+    };
+  };
+
+  PodElemental = buildPerlPackage {
+    name = "Pod-Elemental-0.102362";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-0.102362.tar.gz;
+      sha256 = "2b56a2783650f170bc7131bb36de65e4e3372a54bab596a798debebbf2af8732";
+    };
+    buildInputs = [ TestDeep TestDifferences ];
+    propagatedBuildInputs = [ MixinLinewise Moose MooseAutobox MooseXTypes PodEventual StringRewritePrefix StringTruncate SubExporter SubExporterForMethods TestDeep TestDifferences namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/pod-elemental;
+      description = "Work with nestable Pod elements";
+      license = "perl";
+    };
+  };
+
+  PodElementalPerlMunger = buildPerlPackage {
+    name = "Pod-Elemental-PerlMunger-0.093332";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Elemental-PerlMunger-0.093332.tar.gz;
+      sha256 = "fc4c4ef76d2b557c590b998d08393b189a2af969d4d195439f37e7d7d466d062";
+    };
+    buildInputs = [ Moose PodElemental ];
+    propagatedBuildInputs = [ ListMoreUtils Moose PPI PodElemental namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/pod-elemental-perlmunger;
+      description = "A thing that takes a string of Perl and rewrites its documentation";
+      license = "perl";
+    };
+  };
+
   PodEscapes = buildPerlPackage {
     name = "Pod-Escapes-1.04";
     src = fetchurl {
@@ -5681,6 +6445,47 @@ rec {
     };
   };
 
+  PodEventual = buildPerlPackage {
+    name = "Pod-Eventual-0.093330";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Eventual-0.093330.tar.gz;
+      sha256 = "29de14a69df8a26f7e8ff73daca5afa7acc84cc9b7ae28093a5b1af09a4830b6";
+    };
+    propagatedBuildInputs = [ MixinLinewise TestDeep ];
+    meta = {
+      description = "Read a POD document as a series of trivial events";
+      license = "perl";
+    };
+  };
+
+  podlinkcheck = buildPerlPackage {
+    name = "podlinkcheck-12";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/K/KR/KRYDE/podlinkcheck-12.tar.gz;
+      sha256 = "c5da0e390b58655934e1df57937d29d7de13b99f5638fe44833832a5b39c8aa5";
+    };
+    propagatedBuildInputs = [ FileFindIterator IPCRun constantdefer libintlperl ];
+    meta = {
+      homepage = http://user42.tuxfamily.org/podlinkcheck/index.html;
+      description = "Check POD L<> link references";
+      license = "gpl";
+    };
+  };
+
+  PodMarkdown = buildPerlPackage {
+    name = "Pod-Markdown-1.322";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RW/RWSTAUNER/Pod-Markdown-1.322.tar.gz;
+      sha256 = "375091d89d9662b0c41bedad391927d6904d05f740e1bb689b494b4b35e979f7";
+    };
+    buildInputs = [ TestDifferences ];
+    meta = {
+      homepage = https://github.com/rwstauner/Pod-Markdown;
+      description = "Convert POD to Markdown";
+      license = "perl";
+    };
+  };
+
   PodSimple = buildPerlPackage {
     name = "Pod-Simple-3.05";
     src = fetchurl {
@@ -5698,6 +6503,21 @@ rec {
     };
   };
 
+  PodWeaver = buildPerlPackage {
+    name = "Pod-Weaver-3.101638";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Pod-Weaver-3.101638.tar.gz;
+      sha256 = "1232b761016221e331a266a42661fa352447d0da075ebdb41dc4c4d71e60629c";
+    };
+    buildInputs = [ PPI SoftwareLicense TestDifferences ];
+    propagatedBuildInputs = [ ConfigMVP ConfigMVPReaderINI DateTime ListMoreUtils LogDispatchouli Moose MooseAutobox ParamsUtil PodElemental StringFlogger StringFormatter StringRewritePrefix namespaceautoclean ];
+    meta = {
+      homepage = https://github.com/rjbs/pod-weaver;
+      description = "Weave together a Pod document from an outline";
+      license = "perl";
+    };
+  };
+
   ProbePerl = buildPerlPackage rec {
     name = "Probe-Perl-0.01";
     src = fetchurl {
@@ -5761,11 +6581,16 @@ rec {
     };
   };
 
-  RegexpParser = buildPerlPackage rec {
-    name = "Regexp-Parser-0.20";
+  RegexpParser = buildPerlPackage {
+    name = "Regexp-Parser-0.21";
     src = fetchurl {
-      url = "mirror://cpan/authors/id/P/PI/PINYAN/${name}.tar.gz";
-      sha256 = "0dfdbe060724396697303c5522e697679ab6e74151f3c3ef8df49f3bda30a2a5";
+      url = mirror://cpan/authors/id/T/TO/TODDR/Regexp-Parser-0.21.tar.gz;
+      sha256 = "d70cb66821f1f67a9b1ff53f0fa33c06aec8693791e0a5943be6760c25d2768d";
+    };
+    meta = {
+      homepage = http://wiki.github.com/toddr/Regexp-Parser;
+      description = "Base class for parsing regexes";
+      license = "unknown";
     };
   };
 
@@ -5801,6 +6626,34 @@ rec {
     };
   };
 
+  RoleHasMessage = buildPerlPackage {
+    name = "Role-HasMessage-0.005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-HasMessage-0.005.tar.gz;
+      sha256 = "bc6cecf3022159dc415fb931e38291425d6aa8a9542d980b14ea692141337ca9";
+    };
+    buildInputs = [ Moose ];
+    propagatedBuildInputs = [ Moose MooseXRoleParameterized StringErrf TryTiny namespaceclean ];
+    meta = {
+      description = "A thing with a message method";
+      license = "perl";
+    };
+  };
+
+  RoleIdentifiable = buildPerlPackage {
+    name = "Role-Identifiable-0.005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Role-Identifiable-0.005.tar.gz;
+      sha256 = "86910b6052d50bc64d1613bc1274f2ae17d553bfc3f0247a3fe3f7bb2cdd3aee";
+    };
+    buildInputs = [ Moose ];
+    propagatedBuildInputs = [ Moose ];
+    meta = {
+      description = "A thing with a list of tags";
+      license = "perl";
+    };
+  };
+
   RoleTiny = buildPerlPackage {
     name = "Role-Tiny-1.002004";
     src = fetchurl {
@@ -5929,6 +6782,20 @@ rec {
     buildInputs = [ pkgs.which ];
   };
 
+  SoftwareLicense = buildPerlPackage {
+    name = "Software-License-0.103005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Software-License-0.103005.tar.gz;
+      sha256 = "050a14e0b3fb15763fd267fdd8ccc7ec8c459d8cc830b0bdc39ce09f5910f88c";
+    };
+    propagatedBuildInputs = [ DataSection SubInstall TextTemplate ];
+    meta = {
+      homepage = https://github.com/rjbs/software-license;
+      description = "Packages that provide templated software licenses";
+      license = "perl";
+    };
+  };
+
   SortVersions = buildPerlPackage rec {
     name = "Sort-Versions-1.5";
     src = fetchurl {
@@ -6113,6 +6980,20 @@ rec {
       };
   };
 
+  StringErrf = buildPerlPackage {
+    name = "String-Errf-0.006";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Errf-0.006.tar.gz;
+      sha256 = "2c09631fbece8e85a94785abede882f5d29e0f21f72239d01332b3bafd9c53ac";
+    };
+    buildInputs = [ JSON TimeDate ];
+    propagatedBuildInputs = [ ParamsUtil StringFormatter SubExporter ];
+    meta = {
+      description = "A simple sprintf-like dialect";
+      license = "perl";
+    };
+  };
+
   StringEscape = buildPerlPackage rec {
     name = "String-Escape-2010.002";
     src = fetchurl {
@@ -6121,6 +7002,20 @@ rec {
     };
   };
 
+  StringFlogger = buildPerlPackage {
+    name = "String-Flogger-1.101243";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Flogger-1.101243.tar.gz;
+      sha256 = "05e3f55198e96d56d27867b81c244d801a5d85e5b19b7acc3352993aefbd29fd";
+    };
+    propagatedBuildInputs = [ JSON ParamsUtil SubExporter ];
+    meta = {
+      homepage = https://github.com/rjbs/string-flogger;
+      description = "String munging for loggers";
+      license = "perl";
+    };
+  };
+
   StringFormat = buildPerlPackage rec {
     name = "String-Format-1.16";
     src = fetchurl {
@@ -6129,6 +7024,19 @@ rec {
     };
   };
 
+  StringFormatter = buildPerlPackage {
+    name = "String-Formatter-0.102082";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Formatter-0.102082.tar.gz;
+      sha256 = "93d787dd8f13832a3683d219e086eaf4eb6c5391e396bfcc364c414423b0051a";
+    };
+    propagatedBuildInputs = [ ParamsUtil SubExporter ];
+    meta = {
+      description = "Build sprintf-like functions of your own";
+      license = "gpl";
+    };
+  };
+
   StringMkPasswd = buildPerlPackage {
     name = "String-MkPasswd-0.02";
     src = fetchurl {
@@ -6169,6 +7077,19 @@ rec {
       [ LinguaENInflectPhrase TextUnidecode namespaceclean ];
   };
 
+  StringTruncate = buildPerlPackage {
+    name = "String-Truncate-1.100600";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/String-Truncate-1.100600.tar.gz;
+      sha256 = "e2665f82254a05b2a43c51bb8244661130ad9e052d4d8423b2ce2e9549c0bb5c";
+    };
+    propagatedBuildInputs = [ SubExporter SubInstall ];
+    meta = {
+      description = "A module for when strings are too long to be displayed in..";
+      license = "perl";
+    };
+  };
+
   StringTT = buildPerlPackage {
     name = "String-TT-0.03";
     src = fetchurl {
@@ -6209,6 +7130,33 @@ rec {
     };
   };
 
+  SubExporterForMethods = buildPerlPackage {
+    name = "Sub-Exporter-ForMethods-0.100050";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-ForMethods-0.100050.tar.gz;
+      sha256 = "67dfaa39c58995ed1d341d7f2e785a68b7ba4ade72608f491459b8d2dee6df33";
+    };
+    propagatedBuildInputs = [ SubExporter SubName ];
+    meta = {
+      description = "Helper routines for using Sub::Exporter to build methods";
+      license = "perl";
+    };
+  };
+
+  SubExporterGlobExporter = buildPerlPackage {
+    name = "Sub-Exporter-GlobExporter-0.003";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Sub-Exporter-GlobExporter-0.003.tar.gz;
+      sha256 = "4cb082331151360756f3b2f8122fdd44597a207d62bd3f2ecb13578005116ab1";
+    };
+    propagatedBuildInputs = [ SubExporter ];
+    meta = {
+      homepage = https://github.com/rjbs/sub-exporter-globexporter;
+      description = "Export shared globs with Sub::Exporter collectors";
+      license = "perl";
+    };
+  };
+
   SubExporterProgressive = buildPerlPackage {
     name = "Sub-Exporter-Progressive-0.001006";
     src = fetchurl {
@@ -6345,6 +7293,33 @@ rec {
     };
   };
 
+  syntax = buildPerlPackage {
+    name = "syntax-0.004";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/P/PH/PHAYLON/syntax-0.004.tar.gz;
+      sha256 = "fe19b6da8a8f43a5aa2ee571441bc0e339fb156d0081c157a1a24e9812c7d365";
+    };
+    propagatedBuildInputs = [ DataOptList namespaceclean ];
+    meta = {
+      homepage = https://github.com/phaylon/syntax/wiki;
+      description = "Activate syntax extensions";
+      license = "perl";
+    };
+  };
+
+  SyntaxKeywordJunction = buildPerlPackage {
+    name = "Syntax-Keyword-Junction-0.003006";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/F/FR/FREW/Syntax-Keyword-Junction-0.003006.tar.gz;
+      sha256 = "182ab56d86bf3acf292d4ed5893ae0134f43843cdadba3e18f9885e6f86035ec";
+    };
+    propagatedBuildInputs = [ SubExporterProgressive TestRequires syntax ];
+    meta = {
+      description = "Perl6 style Junction operators in Perl5";
+      license = "perl";
+    };
+  };
+
   SysHostnameLong = buildPerlPackage rec {
     name = "Sys-Hostname-Long-1.4";
     src = fetchurl {
@@ -6572,17 +7547,29 @@ rec {
     propagatedBuildInputs = [ Spiffy ];
   };
 
-  TestCheckDeps = buildPerlPackage {
-    name = "Test-CheckDeps-0.002";
+  TestCheckDeps = buildPerlModule {
+    name = "Test-CheckDeps-0.006";
     src = fetchurl {
-      url = mirror://cpan/authors/id/L/LE/LEONT/Test-CheckDeps-0.002.tar.gz;
-      sha256 = "0fmm9xsgial599bqb6rcrc6xp0627rcdp0ivx8wsy807py5jk5i6";
+      url = mirror://cpan/authors/id/L/LE/LEONT/Test-CheckDeps-0.006.tar.gz;
+      sha256 = "774c1455566d11746118fd95305d1dbd111af86eac78058918e72468c43d9bcb";
     };
+    buildInputs = [ ModuleBuildTiny ];
     propagatedBuildInputs = [ CPANMetaCheck ];
     meta = {
-      homepage = http://search.cpan.org/perldoc?CPAN::Meta::Spec;
       description = "Check for presence of dependencies";
-      license = "perl5";
+      license = "perl";
+    };
+  };
+
+  TestCPANMeta = buildPerlPackage {
+    name = "Test-CPAN-Meta-0.23";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BA/BARBIE/Test-CPAN-Meta-0.23.tar.gz;
+      sha256 = "dda70c5cb61eddc6d3148cb66b6ff5eb4546a065257f4c104112a8a8a3575116";
+    };
+    meta = {
+      description = "Validate your CPAN META.yml files";
+      license = "artistic_2";
     };
   };
 
@@ -6611,6 +7598,21 @@ rec {
     };
   };
 
+  TestDistManifest = buildPerlPackage {
+    name = "Test-DistManifest-1.012";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/ET/ETHER/Test-DistManifest-1.012.tar.gz;
+      sha256 = "4b128bef9beea2f03bdca037ceb722de43b4a2c516c3f50c2a26421548a72208";
+    };
+    buildInputs = [ TestNoWarnings ];
+    propagatedBuildInputs = [ ModuleManifest ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Test-DistManifest;
+      description = "Author test that validates a package MANIFEST";
+      license = "perl";
+    };
+  };
+
   TestEOL = buildPerlPackage {
     name = "Test-EOL-1.5";
     src = fetchurl {
@@ -6661,6 +7663,21 @@ rec {
     };
   };
 
+  TestFileShareDir = buildPerlModule {
+    name = "Test-File-ShareDir-0.3.3";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/K/KE/KENTNL/Test-File-ShareDir-0.3.3.tar.gz;
+      sha256 = "877e14afb6f432bd888ef730c0afd776dd149b14bc520bc2ce842d114e5886a2";
+    };
+    buildInputs = [ TestFatal ];
+    propagatedBuildInputs = [ FileCopyRecursive FileShareDir PathTiny ];
+    meta = {
+      homepage = https://github.com/kentfredric/Test-File-ShareDir;
+      description = "Create a Fake ShareDir for your modules for testing";
+      license = "perl";
+    };
+  };
+
   TestHarness = buildPerlPackage rec {
     name = "Test-Harness-3.17";
     src = fetchurl {
@@ -6752,6 +7769,19 @@ rec {
     };
   };
 
+  TestMojibake = buildPerlPackage {
+    name = "Test-Mojibake-0.8";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/S/SY/SYP/Test-Mojibake-0.8.tar.gz;
+      sha256 = "66d82ca4fe539bb69ee8179d96370e50777a9547176428baf4dbe190ef78b4cb";
+    };
+    meta = {
+      homepage = https://github.com/creaktive/Test-Mojibake;
+      description = "Check your source for encoding misbehavior";
+      license = "perl";
+    };
+  };
+
   TestMore = TestSimple;
 
   TestMost = buildPerlPackage {
@@ -6842,6 +7872,33 @@ rec {
     propagatedBuildInputs = [PodCoverage];
   };
 
+  TestPodLinkCheck = buildPerlPackage {
+    name = "Test-Pod-LinkCheck-0.007";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AP/APOCAL/Test-Pod-LinkCheck-0.007.tar.gz;
+      sha256 = "de2992e756fca96824411bb3ab2b94b05567cb3f2c5e3ffd8162ffdfd1f77c88";
+    };
+    buildInputs = [ TestTester ];
+    propagatedBuildInputs = [ CaptureTiny Moose TestPod podlinkcheck ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Test-Pod-LinkCheck/;
+      description = "Tests POD for invalid links";
+      license = "perl";
+    };
+  };
+
+  TestPortabilityFiles = buildPerlPackage {
+    name = "Test-Portability-Files-0.06";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/A/AB/ABRAXXA/Test-Portability-Files-0.06.tar.gz;
+      sha256 = "3e0fd033387ab82df8aedd42a14a8e64200aebd59447ad62a3bc411ff4a808a8";
+    };
+    meta = {
+      description = "Check file names portability";
+      license = "perl";
+    };
+  };
+
   TestRequires = buildPerlPackage {
     name = "Test-Requires-0.06";
     src = fetchurl {
@@ -6881,7 +7938,7 @@ rec {
   TestSharedFork = buildPerlPackage rec {
     name = "Test-SharedFork-0.18";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/Test/${name}.tar.gz";
+      url = "mirror://cpan/authors/id/T/TO/TOKUHIROM/${name}.tar.gz";
       sha256 = "1wc41jzi780w75m2ry1038mzxyz7386r8rmhbnmj3krcdxy676cc";
     };
   };
@@ -6897,6 +7954,18 @@ rec {
     propagatedBuildInputs = [ HookLexWrap ];
   };
 
+  TestSynopsis = buildPerlPackage {
+    name = "Test-Synopsis-0.06";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/M/MI/MIYAGAWA/Test-Synopsis-0.06.tar.gz;
+      sha256 = "fb3eed184eaf8a3c2338ec14b7235fa75fc43cf5f3774d927a4c947a5141db1b";
+    };
+    meta = {
+      description = "Test your SYNOPSIS code";
+      license = "perl";
+    };
+  };
+
   TestTableDriven = buildPerlPackage {
     name = "Test-TableDriven-0.02";
     src = fetchurl {
@@ -6969,6 +8038,20 @@ rec {
     };
   };
 
+  TestWarnings = buildPerlModule {
+    name = "Test-Warnings-0.008";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/E/ET/ETHER/Test-Warnings-0.008.tar.gz;
+      sha256 = "119f2a279fe7d0681dcf4517f1bcb056e4596cfbae7b9ee447118f036cf089e4";
+    };
+    buildInputs = [ CaptureTiny ModuleBuildTiny TestCheckDeps TestDeep TestTester pkgs.perlPackages."if" ];
+    meta = {
+      homepage = https://github.com/karenetheridge/Test-Warnings;
+      description = "Test for warnings and the lack of them";
+      license = "perl";
+    };
+  };
+
   TestWithoutModule = buildPerlPackage {
     name = "Test-Without-Module-0.17";
     src = fetchurl {
@@ -7116,6 +8199,20 @@ rec {
     };
   };
 
+  TestMinimumVersion = buildPerlPackage {
+    name = "Test-MinimumVersion-0.101080";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/R/RJ/RJBS/Test-MinimumVersion-0.101080.tar.gz;
+      sha256 = "51fc0bd73ece9d41887f8d0a57ee27fbc205c271c5b5246111efe7d3247ddfb0";
+    };
+    buildInputs = [ TestTester ];
+    propagatedBuildInputs = [ FileFindRule FileFindRulePerl PerlMinimumVersion YAMLTiny ];
+    meta = {
+      description = "Does your code require newer perl than you think?";
+      license = "perl";
+    };
+  };
+
   TextMicroTemplate = buildPerlPackage {
     name = "Text-MicroTemplate-0.19";
     src = fetchurl {
@@ -7187,6 +8284,18 @@ rec {
     propagatedBuildInputs = [TextAligner];
   };
 
+  TextTemplate = buildPerlPackage {
+    name = "Text-Template-1.46";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/M/MJ/MJD/Text-Template-1.46.tar.gz;
+      sha256 = "77d812cb86e48091bcd59aa8522ef887b33a0ff758f8a269da8c2b733889d580";
+    };
+    meta = {
+      description = "Unknown";
+      license = "unknown";
+    };
+  };
+
   TestTrap = buildPerlPackage {
     name = "Test-Trap-v0.2.2";
     src = fetchurl {
@@ -7201,6 +8310,34 @@ rec {
     };
   };
 
+  TestVars = buildPerlModule {
+    name = "Test-Vars-0.005";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/G/GF/GFUJI/Test-Vars-0.005.tar.gz;
+      sha256 = "2aec9787332dd2f12bd7b07e18530ff9c07954116bbaae8ae902a8befff57ae7";
+    };
+    meta = {
+      homepage = https://github.com/gfx/p5-Test-Vars;
+      description = "Detects unused variables";
+      license = "perl";
+    };
+  };
+
+  TestVersion = buildPerlPackage {
+    name = "Test-Version-1.002001";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/X/XE/XENO/Test-Version-1.002001.tar.gz;
+      sha256 = "84e741a1b9196b41130a7ec3f07b94e0e97e7e3f8abfb65e599f2760e01202ad";
+    };
+    buildInputs = [ TestException TestRequires TestTester ];
+    propagatedBuildInputs = [ FileFindRulePerl ];
+    meta = {
+      homepage = http://search.cpan.org/dist/Test-Version/;
+      description = "Check to see that version's in modules are sane";
+      license = "artistic_2";
+    };
+  };
+
   TextTrim = buildPerlPackage {
     name = "Text-Trim-1.02";
     src = fetchurl {
@@ -7388,6 +8525,17 @@ rec {
     };
   };
 
+  UnicodeCheckUTF8 = buildPerlPackage {
+    name = "Unicode-CheckUTF8-1.03";
+    src = fetchurl {
+      url = mirror://cpan/authors/id/B/BR/BRADFITZ/Unicode-CheckUTF8-1.03.tar.gz;
+      sha256 = "97f84daf033eb9b49cd8fe31db221fef035a5c2ee1d757f3122c88cf9762414c";
+    };
+    meta = {
+      license = "unknown";
+    };
+  };
+
   UnicodeICUCollator = buildPerlPackage {
     name = "Unicode-ICU-Collator-0.002";
     src = fetchurl {
@@ -7731,10 +8879,10 @@ rec {
   };
 
   YAMLTiny = buildPerlPackage rec {
-    name = "YAML-Tiny-1.50";
+    name = "YAML-Tiny-1.53";
     src = fetchurl {
-      url = "mirror://cpan/modules/by-module/YAML/${name}.tar.gz";
-      sha256 = "0ag1llgf0qn3sxy832xhvc1mq6s0bdv13ij7vh7df8nv0jnxyyd3";
+      url = "mirror://cpan/authors/id/E/ET/ETHER/${name}.tar.gz";
+      sha256 = "14p93i60x394ba6sdwpnckmv2vq7pfi9q7rzksp3nkxsz4484qmm";
     };
   };