summary refs log tree commit diff
diff options
context:
space:
mode:
authorVladimír Čunát <vcunat@gmail.com>2014-11-05 15:00:44 +0100
committerVladimír Čunát <vcunat@gmail.com>2014-11-05 15:00:44 +0100
commit52404a868ddc6665da66f54dab5f102908843784 (patch)
treeda856ff0f583e67a7a209d8d75826f796df5a3bb
parentc0e2aceef46033e43ab8b4f6aa0b36b25ba35f3d (diff)
parent8e02bde1a8ea913ecaa4801898057968412efa01 (diff)
downloadnixlib-52404a868ddc6665da66f54dab5f102908843784.tar
nixlib-52404a868ddc6665da66f54dab5f102908843784.tar.gz
nixlib-52404a868ddc6665da66f54dab5f102908843784.tar.bz2
nixlib-52404a868ddc6665da66f54dab5f102908843784.tar.lz
nixlib-52404a868ddc6665da66f54dab5f102908843784.tar.xz
nixlib-52404a868ddc6665da66f54dab5f102908843784.tar.zst
nixlib-52404a868ddc6665da66f54dab5f102908843784.zip
Merge recent master into staging
Nixpkgs Hydra: ?compare=1157272

TODO: port e22889064f82be3

Conflicts:
	nixos/tests/gnome3_10.nix (auto-solved)
	pkgs/applications/video/aegisub/default.nix
	pkgs/development/libraries/boost/1.55.nix
-rw-r--r--lib/maintainers.nix3
-rwxr-xr-xmaintainers/scripts/vanity.sh36
-rw-r--r--nixos/lib/make-iso9660-image.nix13
-rw-r--r--nixos/lib/make-iso9660-image.sh48
-rw-r--r--nixos/modules/config/update-users-groups.pl7
-rw-r--r--nixos/modules/config/users-groups.nix78
-rw-r--r--nixos/modules/installer/cd-dvd/installation-cd-base.nix5
-rw-r--r--nixos/modules/installer/cd-dvd/iso-image.nix132
-rw-r--r--nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix1
-rw-r--r--nixos/modules/profiles/base.nix1
-rw-r--r--nixos/modules/rename.nix1
-rw-r--r--nixos/modules/services/logging/syslog-ng.nix18
-rw-r--r--nixos/modules/services/monitoring/graphite.nix24
-rw-r--r--nixos/modules/services/monitoring/zabbix-server.nix13
-rw-r--r--nixos/modules/services/torrent/transmission.nix2
-rw-r--r--nixos/modules/system/boot/stage-1.nix4
-rw-r--r--nixos/modules/testing/test-instrumentation.nix2
-rw-r--r--nixos/modules/virtualisation/amazon-image.nix5
-rw-r--r--nixos/modules/virtualisation/docker-image.nix12
-rw-r--r--nixos/tests/gnome3.nix2
-rw-r--r--nixos/tests/gnome3_10.nix2
-rw-r--r--nixos/tests/run-in-machine.nix8
-rw-r--r--pkgs/applications/audio/guitarix/default.nix2
-rw-r--r--pkgs/applications/audio/ingen/default.nix2
-rw-r--r--pkgs/applications/audio/pamixer/default.nix2
-rw-r--r--pkgs/applications/audio/picard/default.nix35
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix2
-rw-r--r--pkgs/applications/editors/emacs-24/macport-24.3.nix100
-rw-r--r--pkgs/applications/editors/emacs-24/macport-24.4.nix (renamed from pkgs/applications/editors/emacs-24/macport.nix)0
-rw-r--r--pkgs/applications/editors/emacs-modes/magit/default.nix9
-rw-r--r--pkgs/applications/editors/idea/default.nix107
-rw-r--r--pkgs/applications/editors/kdevelop/default.nix4
-rw-r--r--pkgs/applications/editors/vim/macvim.nix10
-rw-r--r--pkgs/applications/graphics/freecad/default.nix2
-rw-r--r--pkgs/applications/graphics/geeqie/default.nix40
-rw-r--r--pkgs/applications/graphics/luminance-hdr/default.nix2
-rw-r--r--pkgs/applications/graphics/openimageio/default.nix2
-rw-r--r--pkgs/applications/graphics/openscad/default.nix2
-rw-r--r--pkgs/applications/graphics/rapcad/default.nix8
-rw-r--r--pkgs/applications/graphics/sxiv/146.patch25
-rw-r--r--pkgs/applications/graphics/sxiv/default.nix23
-rw-r--r--pkgs/applications/graphics/synfigstudio/default.nix26
-rw-r--r--pkgs/applications/graphics/zgrviewer/default.nix4
-rw-r--r--pkgs/applications/misc/bitcoin/default.nix4
-rw-r--r--pkgs/applications/misc/bitcoin/dogecoin.nix1
-rw-r--r--pkgs/applications/misc/blender/default.nix2
-rw-r--r--pkgs/applications/misc/d4x/default.nix4
-rw-r--r--pkgs/applications/misc/freicoin/default.nix2
-rw-r--r--pkgs/applications/misc/gnuradio/default.nix2
-rw-r--r--pkgs/applications/misc/kdeconnect/default.nix10
-rw-r--r--pkgs/applications/misc/librecad/2.0.nix2
-rw-r--r--pkgs/applications/misc/monero/default.nix2
-rw-r--r--pkgs/applications/misc/namecoin/default.nix2
-rw-r--r--pkgs/applications/misc/namecoin/qt.nix2
-rw-r--r--pkgs/applications/misc/twmn/default.nix2
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/default.nix200
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb219
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb48
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/sources.nix192
-rw-r--r--pkgs/applications/networking/browsers/firefox/default.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/ekiga/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/kadu/default.nix6
-rw-r--r--pkgs/applications/networking/instant-messengers/twinkle/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/vacuum/default.nix8
-rw-r--r--pkgs/applications/networking/linssid/default.nix2
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix124
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/generate_nix.rb213
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb46
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix120
-rw-r--r--pkgs/applications/networking/mailreaders/thunderbird/default.nix4
-rw-r--r--pkgs/applications/networking/p2p/eiskaltdcpp/default.nix2
-rw-r--r--pkgs/applications/networking/p2p/frostwire/default.nix36
-rw-r--r--pkgs/applications/networking/p2p/qbittorrent/default.nix15
-rw-r--r--pkgs/applications/networking/p2p/twister/default.nix1
-rw-r--r--pkgs/applications/office/ledger/3.0.nix2
-rw-r--r--pkgs/applications/office/libreoffice/default.nix22
-rw-r--r--pkgs/applications/office/libreoffice/libreoffice-srcs.nix6
-rw-r--r--pkgs/applications/science/electronics/pulseview/default.nix2
-rw-r--r--pkgs/applications/science/logic/coq/HEAD.nix6
-rw-r--r--pkgs/applications/science/logic/coq/default.nix4
-rw-r--r--pkgs/applications/science/logic/stp/default.nix2
-rw-r--r--pkgs/applications/science/math/sage/default.nix9
-rw-r--r--pkgs/applications/version-management/gource/default.nix4
-rw-r--r--pkgs/applications/video/aegisub/default.nix1
-rw-r--r--pkgs/applications/video/gnash/default.nix9
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix1
-rw-r--r--pkgs/applications/video/mythtv/default.nix22
-rw-r--r--pkgs/applications/video/mythtv/settings.patch13
-rw-r--r--pkgs/applications/video/xbmc/default.nix6
-rw-r--r--pkgs/applications/video/xbmc/plugins.nix6
-rw-r--r--pkgs/applications/video/xbmc/wrapper.nix9
-rw-r--r--pkgs/applications/virtualization/virt-viewer/default.nix4
-rw-r--r--pkgs/applications/virtualization/virtualbox/default.nix8
-rw-r--r--pkgs/applications/virtualization/virtualbox/guest-additions/default.nix2
-rwxr-xr-xpkgs/build-support/fetchgit/nix-prefetch-git5
-rw-r--r--pkgs/build-support/fetchurl/mirrors.nix33
-rw-r--r--pkgs/data/fonts/freefont-ttf/default.nix10
-rw-r--r--pkgs/data/fonts/junicode/default.nix11
-rw-r--r--pkgs/data/fonts/redhat-liberation-fonts/binary.nix49
-rw-r--r--pkgs/data/fonts/redhat-liberation-fonts/default.nix12
-rw-r--r--pkgs/desktops/xfce/applications/ristretto.nix12
-rw-r--r--pkgs/development/compilers/elm/elm-get.nix24
-rw-r--r--pkgs/development/compilers/elm/elm-reactor.nix29
-rw-r--r--pkgs/development/compilers/elm/elm-repl.nix28
-rw-r--r--pkgs/development/compilers/fpc/lazarus.nix6
-rw-r--r--pkgs/development/compilers/gcl/default.nix6
-rw-r--r--pkgs/development/compilers/go/1.1.nix1
-rw-r--r--pkgs/development/compilers/go/1.2.nix1
-rw-r--r--pkgs/development/compilers/go/default.nix1
-rw-r--r--pkgs/development/compilers/hhvm/default.nix2
-rw-r--r--pkgs/development/compilers/julia/0.3.2.nix159
-rw-r--r--pkgs/development/compilers/nasm/default.nix4
-rw-r--r--pkgs/development/compilers/sbcl/default.nix4
-rw-r--r--pkgs/development/compilers/uhc/default.nix48
-rw-r--r--pkgs/development/guile-modules/guile-sdl/default.nix35
-rw-r--r--pkgs/development/interpreters/angelscript/default.nix4
-rw-r--r--pkgs/development/interpreters/guile/default.nix4
-rw-r--r--pkgs/development/interpreters/php/5.4.nix4
-rw-r--r--pkgs/development/interpreters/picolisp/default.nix6
-rw-r--r--pkgs/development/interpreters/regina/default.nix4
-rw-r--r--pkgs/development/libraries/CGAL/default.nix8
-rw-r--r--pkgs/development/libraries/afflib/default.nix26
-rw-r--r--pkgs/development/libraries/aspell/dictionaries.nix10
-rw-r--r--pkgs/development/libraries/audio/lvtk/default.nix2
-rw-r--r--pkgs/development/libraries/babl/0_0_22.nix16
-rw-r--r--pkgs/development/libraries/boost/1.44.nix93
-rw-r--r--pkgs/development/libraries/boost/1.49.nix96
-rw-r--r--pkgs/development/libraries/boost/1.55.nix99
-rw-r--r--pkgs/development/libraries/boost/1.56.nix144
-rw-r--r--pkgs/development/libraries/boost/CVE-2013-0252.patch48
-rw-r--r--pkgs/development/libraries/boost/boost-149-cstdint.patch15
-rw-r--r--pkgs/development/libraries/boost/boost-149-darwin.patch40
-rw-r--r--pkgs/development/libraries/boost/boost_filesystem_post_1_49_0.patch12
-rw-r--r--pkgs/development/libraries/boost/generic.nix166
-rw-r--r--pkgs/development/libraries/boost/strip-header-path.sh12
-rw-r--r--pkgs/development/libraries/boost/time_utc.patch320
-rw-r--r--pkgs/development/libraries/boost/time_utc_144.patch520
-rw-r--r--pkgs/development/libraries/botan/default.nix64
-rw-r--r--pkgs/development/libraries/botan/generic.nix35
-rw-r--r--pkgs/development/libraries/botan/unstable.nix64
-rw-r--r--pkgs/development/libraries/cpp-netlib/default.nix2
-rw-r--r--pkgs/development/libraries/exempi/default.nix4
-rw-r--r--pkgs/development/libraries/ffmpeg/2.x.nix4
-rw-r--r--pkgs/development/libraries/fox/fox-1.6.nix1
-rw-r--r--pkgs/development/libraries/gegl/0_0_22.nix21
-rw-r--r--pkgs/development/libraries/geoclue/2.0.nix4
-rw-r--r--pkgs/development/libraries/gmp/4.3.2.nix1
-rw-r--r--pkgs/development/libraries/gvfs/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/cairo/0.12.5.3.nix22
-rw-r--r--pkgs/development/libraries/haskell/cairo/0.13.0.4.nix (renamed from pkgs/development/libraries/haskell/cairo/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/ghc-mod/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/glib/0.12.5.4.nix21
-rw-r--r--pkgs/development/libraries/haskell/glib/0.13.0.5.nix (renamed from pkgs/development/libraries/haskell/glib/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/glib/gtk2hs.patch15
-rw-r--r--pkgs/development/libraries/haskell/graphviz/default.nix1
-rw-r--r--pkgs/development/libraries/haskell/gtk/0.12.5.7.nix22
-rw-r--r--pkgs/development/libraries/haskell/gtk/0.13.0.3.nix (renamed from pkgs/development/libraries/haskell/gtk/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/gtk/gtk.patch10
-rw-r--r--pkgs/development/libraries/haskell/hsc3-server/default.nix30
-rw-r--r--pkgs/development/libraries/haskell/linear/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/pango/0.12.5.3.nix22
-rw-r--r--pkgs/development/libraries/haskell/pango/0.13.0.3.nix (renamed from pkgs/development/libraries/haskell/pango/default.nix)0
-rw-r--r--pkgs/development/libraries/haskell/pango/pango.patch10
-rw-r--r--pkgs/development/libraries/haskell/profunctors/default.nix4
-rw-r--r--pkgs/development/libraries/haskell/sdl2/default.nix4
-rw-r--r--pkgs/development/libraries/imlib2/default.nix8
-rw-r--r--pkgs/development/libraries/imlib2/giflib51.patch64
-rw-r--r--pkgs/development/libraries/libcaca/default.nix4
-rw-r--r--pkgs/development/libraries/libcec/default.nix10
-rw-r--r--pkgs/development/libraries/libfakekey/default.nix21
-rw-r--r--pkgs/development/libraries/libmwaw/default.nix7
-rw-r--r--pkgs/development/libraries/libotr/default.nix4
-rw-r--r--pkgs/development/libraries/libre/default.nix4
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/0.16.nix6
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/default.nix32
-rw-r--r--pkgs/development/libraries/libtorrent-rasterbar/generic.nix30
-rw-r--r--pkgs/development/libraries/mdds/default.nix4
-rw-r--r--pkgs/development/libraries/ogre/default.nix11
-rw-r--r--pkgs/development/libraries/opencsg/default.nix4
-rw-r--r--pkgs/development/libraries/wxGTK-2.8/default.nix4
-rw-r--r--pkgs/development/libraries/wxGTK-2.9/default.nix4
-rw-r--r--pkgs/development/libraries/wxGTK-3.0/default.nix4
-rw-r--r--pkgs/development/libraries/x265/default.nix7
-rw-r--r--pkgs/development/libraries/x265/generic.nix58
-rw-r--r--pkgs/development/libraries/x265/hg.nix7
-rw-r--r--pkgs/development/lisp-modules/asdf/default.nix9
-rw-r--r--pkgs/development/lisp-modules/lisp-packages.nix7
-rw-r--r--pkgs/development/ocaml-modules/eliom/default.nix36
-rw-r--r--pkgs/development/ocaml-modules/gg/default.nix48
-rw-r--r--pkgs/development/ocaml-modules/lablgtk/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/lwt/default.nix17
-rw-r--r--pkgs/development/ocaml-modules/ocsigen-server/default.nix14
-rw-r--r--pkgs/development/ocaml-modules/otfm/default.nix49
-rw-r--r--pkgs/development/ocaml-modules/tyxml/default.nix10
-rw-r--r--pkgs/development/ocaml-modules/vg/default.nix62
-rw-r--r--pkgs/development/python-modules/wxPython/2.8.nix4
-rw-r--r--pkgs/development/python-modules/wxPython/3.0.nix6
-rw-r--r--pkgs/development/r-modules/cran-packages.nix2
-rw-r--r--pkgs/development/tools/build-managers/leiningen/builder.sh1
-rw-r--r--pkgs/development/tools/build-managers/leiningen/default.nix6
-rw-r--r--pkgs/development/tools/build-managers/sbt/default.nix4
-rw-r--r--pkgs/development/tools/haskell/hscope/default.nix6
-rw-r--r--pkgs/development/tools/haskell/threadscope/default.nix1
-rw-r--r--pkgs/development/tools/haskell/threadscope/threadscope.patch14
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.11.x.nix1
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.12.x.nix1
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.13.x.nix1
-rw-r--r--pkgs/development/tools/misc/automake/automake-1.14.x.nix1
-rw-r--r--pkgs/development/tools/misc/cgdb/default.nix9
-rw-r--r--pkgs/development/tools/misc/swig/3.x.nix4
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff2
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/default.nix12
-rw-r--r--pkgs/development/tools/ocaml/merlin/default.nix14
-rw-r--r--pkgs/development/tools/ocaml/oasis/default.nix6
-rw-r--r--pkgs/development/tools/ocaml/ocamlscript/Makefile.patch25
-rw-r--r--pkgs/development/tools/ocaml/ocamlscript/default.nix26
-rw-r--r--pkgs/development/tools/ocaml/opam/1.2.0-src_ext-Makefile.patch11
-rw-r--r--pkgs/development/tools/ocaml/opam/1.2.0.nix79
-rw-r--r--pkgs/development/tools/parsing/flex/2.5.35.nix1
-rw-r--r--pkgs/development/tools/slimerjs/default.nix4
-rw-r--r--pkgs/games/asc/default.nix2
-rw-r--r--pkgs/games/globulation/default.nix100
-rw-r--r--pkgs/games/pingus/default.nix2
-rw-r--r--pkgs/games/quake3/game/default.nix16
-rw-r--r--pkgs/games/spring/default.nix2
-rw-r--r--pkgs/games/spring/springlobby.nix2
-rw-r--r--pkgs/games/steam/default.nix11
-rw-r--r--pkgs/games/stuntrally/default.nix23
-rw-r--r--pkgs/games/wesnoth/default.nix2
-rw-r--r--pkgs/misc/emulators/retroarch/cores.nix4
-rw-r--r--pkgs/misc/emulators/wine/unstable.nix4
-rw-r--r--pkgs/os-specific/linux/audit/default.nix4
-rw-r--r--pkgs/os-specific/linux/firejail/default.nix12
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix10
-rw-r--r--pkgs/os-specific/linux/sysdig/default.nix4
-rw-r--r--pkgs/os-specific/linux/sysklogd/default.nix6
-rw-r--r--pkgs/os-specific/linux/syslinux/default.nix6
-rw-r--r--pkgs/servers/amqp/qpid-cpp/default.nix2
-rw-r--r--pkgs/servers/http/nginx/unstable.nix132
-rw-r--r--pkgs/servers/http/nginx/unstable.upstream8
-rw-r--r--pkgs/servers/monitoring/zabbix/2.2.nix18
-rw-r--r--pkgs/servers/mpd/default.nix4
-rw-r--r--pkgs/servers/nosql/apache-jena/binary.nix6
-rw-r--r--pkgs/servers/nosql/mongodb/default.nix2
-rw-r--r--pkgs/servers/nosql/rethinkdb/default.nix2
-rw-r--r--pkgs/servers/rippled/default.nix18
-rw-r--r--pkgs/servers/rippled/scons-env.patch46
-rw-r--r--pkgs/servers/search/elasticsearch/plugins.nix25
-rw-r--r--pkgs/servers/sql/mysql/5.5.x.nix6
-rw-r--r--pkgs/servers/squid/squids.nix4
-rw-r--r--pkgs/tools/admin/awscli/default.nix4
-rw-r--r--pkgs/tools/backup/bareos/default.nix43
-rw-r--r--pkgs/tools/compression/lbzip2/default.nix18
-rw-r--r--pkgs/tools/filesystems/bcache-tools/bcache-udev-modern.patch52
-rw-r--r--pkgs/tools/filesystems/bcache-tools/default.nix4
-rw-r--r--pkgs/tools/filesystems/btrfsprogs/default.nix4
-rw-r--r--pkgs/tools/filesystems/ceph/default.nix11
-rw-r--r--pkgs/tools/filesystems/glusterfs/default.nix12
-rw-r--r--pkgs/tools/filesystems/grive/default.nix2
-rw-r--r--pkgs/tools/filesystems/jfsrec/default.nix23
-rw-r--r--pkgs/tools/filesystems/jfsrec/jfsrec-gcc-4.3.patch24
-rw-r--r--pkgs/tools/filesystems/nilfs-utils/default.nix50
-rw-r--r--pkgs/tools/graphics/enblend-enfuse/default.nix2
-rw-r--r--pkgs/tools/graphics/povray/default.nix5
-rw-r--r--pkgs/tools/misc/pipelight/default.nix10
-rw-r--r--pkgs/tools/misc/pipelight/pipelight.patch27
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/badvpn/default.nix4
-rw-r--r--pkgs/tools/networking/iperf/3.nix4
-rw-r--r--pkgs/tools/networking/tinc/pre.nix6
-rw-r--r--pkgs/tools/security/meo/default.nix2
-rw-r--r--pkgs/tools/security/oath-toolkit/default.nix4
-rw-r--r--pkgs/tools/system/freeipmi/default.nix4
-rw-r--r--pkgs/tools/system/ioping/default.nix9
-rw-r--r--pkgs/tools/system/ioping/default.upstream5
-rw-r--r--pkgs/tools/system/monit/default.nix4
-rw-r--r--pkgs/tools/system/syslog-ng-incubator/default.nix18
-rw-r--r--pkgs/tools/system/syslog-ng/default.nix9
-rw-r--r--pkgs/tools/text/source-highlight/default.nix6
-rw-r--r--pkgs/tools/typesetting/tex/auctex/default.nix4
-rw-r--r--pkgs/tools/typesetting/tex/disser/default.nix4
-rw-r--r--pkgs/top-level/all-packages.nix150
-rw-r--r--pkgs/top-level/haskell-packages.nix54
-rw-r--r--pkgs/top-level/node-packages-generated.nix5656
-rw-r--r--pkgs/top-level/node-packages.json17
-rw-r--r--pkgs/top-level/node-packages.nix1
-rw-r--r--pkgs/top-level/python-packages.nix65
-rw-r--r--pkgs/top-level/release.nix1
288 files changed, 8078 insertions, 4262 deletions
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 1236324f032c..e3b3b05067f7 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -64,8 +64,10 @@
   fuuzetsu = "Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>";
   gal_bolle = "Florent Becker <florent.becker@ens-lyon.org>";
   garbas = "Rok Garbas <rok@garbas.si>";
+  gavin = "Gavin Rogers <gavin@praxeology.co.uk>";
   goibhniu = "Cillian de Róiste <cillian.deroiste@gmail.com>";
   guibert = "David Guibert <david.guibert@gmail.com>";
+  henrytill = "Henry Till <henrytill@gmail.com>";
   hinton = "Tom Hinton <t@larkery.com>";
   hrdinka = "Christoph Hrdinka <c.nix@hrdinka.at>";
   ianwookim = "Ian-Woo Kim <ianwookim@gmail.com>";
@@ -137,6 +139,7 @@
   thammers = "Tobias Hammerschmidt <jawr@gmx.de>";
   the-kenny = "Moritz Ulrich <moritz@tarn-vedra.de>";
   thoughtpolice = "Austin Seipp <aseipp@pobox.com>";
+  titanous = "Jonathan Rudenberg <jonathan@titanous.com>";
   tomberek = "Thomas Bereknyei <tomberek@gmail.com>";
   tstrobel = "Thomas Strobel <ts468@cam.ac.uk>";
   ttuegel = "Thomas Tuegel <ttuegel@gmail.com>";
diff --git a/maintainers/scripts/vanity.sh b/maintainers/scripts/vanity.sh
index 5a1b8b08b601..6759df444ef3 100755
--- a/maintainers/scripts/vanity.sh
+++ b/maintainers/scripts/vanity.sh
@@ -4,26 +4,26 @@ export LANG=C LC_ALL=C LC_COLLATE=C
 
 # Load git log
 raw_git_log="$(git log)"
-git_data="$(echo "$raw_git_log" | grep 'Author:' | 
-  sed -e 's/^ *Author://; s/\\//g; s/^ *//; s/ *$//; 
+git_data="$(echo "$raw_git_log" | grep 'Author:' |
+  sed -e 's/^ *Author://; s/\\//g; s/^ *//; s/ *$//;
   s/ @ .*//; s/ *[<]/\t/; s/[>]//')"
 
 # Name - nick - email correspondence from log and from maintainer list
 # Also there are a few manual entries
-maintainers="$(cat "$(dirname "$0")/../../lib/maintainers.nix" | 
+maintainers="$(cat "$(dirname "$0")/../../lib/maintainers.nix" |
   grep '=' | sed -re 's/\\"/''/g;
   s/ *([^ =]*) *= *" *(.*[^ ]) *[<](.*)[>] *".*/\1\t\2\t\3/')"
-git_lines="$( ( echo "$git_data"; 
+git_lines="$( ( echo "$git_data";
     cat "$(dirname "$0")/vanity-manual-equalities.txt") | sort |uniq)"
 
-emails="$( 
-    ( echo "$maintainers" | cut -f 3; echo "$git_data" | cut -f 2 ) | 
-    sort | uniq | grep -E ".+@.+[.].+" 
+emails="$(
+    ( echo "$maintainers" | cut -f 3; echo "$git_data" | cut -f 2 ) |
+    sort | uniq | grep -E ".+@.+[.].+"
     )"
 
 fetchGithubName () {
     commitid="$(
-        echo "$raw_git_log" | grep -B3 "Author: .*[<]$1[>]" | head -n 3 | 
+        echo "$raw_git_log" | grep -B3 "Author: .*[<]$1[>]" | head -n 3 |
             grep '^commit ' | tail -n 1 | sed -e 's/^commit //'
     )"
     userid="$(
@@ -36,7 +36,7 @@ fetchGithubName () {
 }
 
 [ -n "$NIXPKGS_GITHUB_NAME_CACHE" ] && {
-    echo "$emails" | while read email; do 
+    echo "$emails" | while read email; do
         line="$(grep "$email	" "$NIXPKGS_GITHUB_NAME_CACHE")"
 	[ -z "$line" ] && {
             echo "$email	$(fetchGithubName "$email")" >> \
@@ -47,11 +47,11 @@ fetchGithubName () {
 
 # For RDF
 normalize_name () {
-	sed -e 's/%/%25/g; s/ /%20/g; s/'\''/%27/g; s/"/%22/g;'
+	sed -e 's/%/%25/g; s/ /%20/g; s/'\''/%27/g; s/"/%22/g; s/`/%60/g'
 }
 
 denormalize_name () {
-	sed -e 's/%20/ /g; s/%27/'\''/g; s/%22/"/g; s/%25/%/g;';
+	sed -e 's/%20/ /g; s/%27/'\''/g; s/%22/"/g; s/%60/`/g; s/%25/%/g;';
 }
 
 n3="$(mktemp --suffix .n3)"
@@ -80,8 +80,8 @@ name_list="$(
 	  ?x <my://can-be>+ ?y.
 	  ?x <my://is-name> ?g.
         }
-	" | tail -n +2 | 
-	sed -re 's@<my://name/@@g; s@<my://@@g; s@>@@g;' | 
+	" | tail -n +2 |
+	sed -re 's@<my://name/@@g; s@<my://@@g; s@>@@g;' |
 	sort -k 2,3 -t '	'
 )"
 github_name_list="$(
@@ -89,14 +89,14 @@ github_name_list="$(
 	select ?x ?y where {
 	  ?x (<my://can-be>+ / <my://at-github>) ?y.
         }
-	" | tail -n +2 | 
+	" | tail -n +2 |
 	sed -re 's@<my://(name|github)/@@g; s@<my://@@g; s@>@@g;'
 )"
 
 # Take first spelling option for every person
 name_list_canonical="$(echo "$name_list" | cut -f 1,2 | uniq -f1)"
 
-cleaner_script="$(echo "$name_list_canonical" | denormalize_name | 
+cleaner_script="$(echo "$name_list_canonical" | denormalize_name |
   sed -re 's/(.*)\t(.*)/s#^\2$#\1#g/g')"
 
 # Add github usernames
@@ -104,9 +104,9 @@ if [ -n "$NIXPKGS_GITHUB_NAME_CACHE" ]; then
     github_adder_script="$(echo "$github_name_list" |
         grep -E "$(echo "$name_list_canonical" | cut -f 2 |
 	    tr '\n' '|' )" |
-	sort | uniq | 
+	sort | uniq |
         sed -re 's/(.*)\t(.*)/s| \1$| \1\t\2|g;/' |
-	denormalize_name 
+	denormalize_name
 	)"
 else
     github_adder_script=''
@@ -117,6 +117,6 @@ echo "$name_list" | denormalize_name
 echo
 
 echo "$git_data" | cut -f 1 |
-    sed -re "$cleaner_script" | 
+    sed -e "$cleaner_script" |
     sort | uniq -c | sort -k1n | sed -re "$github_adder_script" |
     sed -re 's/^ *([0-9]+) /\1\t/'
diff --git a/nixos/lib/make-iso9660-image.nix b/nixos/lib/make-iso9660-image.nix
index 5ad546e9534d..b2409c6006bc 100644
--- a/nixos/lib/make-iso9660-image.nix
+++ b/nixos/lib/make-iso9660-image.nix
@@ -1,4 +1,4 @@
-{ stdenv, perl, cdrkit, pathsFromGraph
+{ stdenv, perl, pathsFromGraph, xorriso, syslinux
 
 , # The file name of the resulting ISO image.
   isoName ? "cd.iso"
@@ -22,12 +22,18 @@
 , # Whether this should be an efi-bootable El-Torito CD.
   efiBootable ? false
 
+, # Wheter this should be an hybrid CD (bootable from USB as well as CD).
+  usbBootable ? false
+
 , # The path (in the ISO file system) of the boot image.
   bootImage ? ""
 
 , # The path (in the ISO file system) of the efi boot image.
   efiBootImage ? ""
 
+, # The path (outside the ISO file system) of the isohybrid-mbr image.
+  isohybridMbrImage ? ""
+
 , # Whether to compress the resulting ISO image with bzip2.
   compressImage ? false
 
@@ -38,13 +44,14 @@
 
 assert bootable -> bootImage != "";
 assert efiBootable -> efiBootImage != "";
+assert usbBootable -> isohybridMbrImage != "";
 
 stdenv.mkDerivation {
   name = "iso9660-image";
   builder = ./make-iso9660-image.sh;
-  buildInputs = [perl cdrkit];
+  buildInputs = [perl xorriso syslinux];
 
-  inherit isoName bootable bootImage compressImage volumeID pathsFromGraph efiBootImage efiBootable;
+  inherit isoName bootable bootImage compressImage volumeID pathsFromGraph efiBootImage efiBootable isohybridMbrImage usbBootable;
 
   # !!! should use XML.
   sources = map (x: x.source) contents;
diff --git a/nixos/lib/make-iso9660-image.sh b/nixos/lib/make-iso9660-image.sh
index 675b5bb35148..c8522513aa23 100644
--- a/nixos/lib/make-iso9660-image.sh
+++ b/nixos/lib/make-iso9660-image.sh
@@ -31,11 +31,20 @@ if test -n "$bootable"; then
         fi
     done
 
-    bootFlags="-b $bootImage -c .boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table"
+    isoBootFlags="-eltorito-boot ${bootImage}
+                  -eltorito-catalog .boot.cat
+                  -no-emul-boot -boot-load-size 4 -boot-info-table"
+fi
+
+if test -n "$usbBootable"; then
+    usbBootFlags="-isohybrid-mbr ${isohybridMbrImage}"
 fi
 
 if test -n "$efiBootable"; then
-    bootFlags="$bootFlags -eltorito-alt-boot -e $efiBootImage -no-emul-boot"
+    efiBootFlags="-eltorito-alt-boot
+                  -e $efiBootImage
+                  -no-emul-boot
+                  -isohybrid-gpt-basdat"
 fi
 
 touch pathlist
@@ -74,18 +83,41 @@ for ((n = 0; n < ${#objects[*]}; n++)); do
     fi
 done
 
-# !!! what does this do?
+# Escape filenames that contain '='.
+# TODO: Handle this properly. This fails for filenames
+#       that contain multiple '=' symbols.
 cat pathlist | sed -e 's/=\(.*\)=\(.*\)=/\\=\1=\2\\=/' | tee pathlist.safer
 
 
 mkdir -p $out/iso
-genCommand="genisoimage -iso-level 4 -r -J $bootFlags -hide-rr-moved -graft-points -path-list pathlist.safer ${volumeID:+-V $volumeID}"
-if test -z "$compressImage"; then
-    $genCommand -o $out/iso/$isoName
-else
-    $genCommand | bzip2 > $out/iso/$isoName.bz2
+
+xorriso="xorriso
+ -as mkisofs
+ -iso-level 3
+ -volid ${volumeID}
+ -appid nixos
+ -publisher nixos
+ -graft-points
+ -full-iso9660-filenames
+ ${isoBootFlags}
+ ${usbBootFlags}
+ ${efiBootFlags}
+ -r
+ -path-list pathlist.safer
+ --sort-weight 0 /
+ --sort-weight 1 /isolinux" # Make sure isolinux is near the beginning of the ISO
+
+$xorriso -output $out/iso/$isoName
+
+if test -n "$usbBootable"; then
+    echo "Making image hybrid..."
+    isohybrid --uefi $out/iso/$isoName
 fi
 
+if test -n "$compressImage"; then
+    echo "Compressing image..."
+    bzip2 $out/iso/$isoName
+fi
 
 mkdir -p $out/nix-support
 echo $system > $out/nix-support/system
diff --git a/nixos/modules/config/update-users-groups.pl b/nixos/modules/config/update-users-groups.pl
index abcb082af8e5..63e1c82dd6de 100644
--- a/nixos/modules/config/update-users-groups.pl
+++ b/nixos/modules/config/update-users-groups.pl
@@ -169,6 +169,12 @@ foreach my $u (@{$spec->{users}}) {
     } else {
         $u->{uid} = allocUid($u->{isSystemUser}) if !defined $u->{uid};
 
+        if (defined $u->{initialPassword}) {
+            $u->{hashedPassword} = hashPassword($u->{initialPassword});
+        } elsif (defined $u->{initialHashedPassword}) {
+            $u->{hashedPassword} = $u->{initialHashedPassword};
+        }
+
         # Create a home directory.
         if ($u->{createHome}) {
             make_path($u->{home}, { mode => 0700 }) if ! -e $u->{home};
@@ -222,6 +228,7 @@ foreach my $line (-f "/etc/shadow" ? read_file("/etc/shadow") : ()) {
     my ($name, $hashedPassword, @rest) = split(':', $line, -9);
     my $u = $usersOut{$name};;
     next if !defined $u;
+    $hashedPassword = "!" if !$spec->{mutableUsers};
     $hashedPassword = $u->{hashedPassword} if defined $u->{hashedPassword} && !$spec->{mutableUsers}; # FIXME
     push @shadowNew, join(":", $name, $hashedPassword, @rest) . "\n";
     $shadowSeen{$name} = 1;
diff --git a/nixos/modules/config/users-groups.nix b/nixos/modules/config/users-groups.nix
index 773f9b412afe..256c5888cb94 100644
--- a/nixos/modules/config/users-groups.nix
+++ b/nixos/modules/config/users-groups.nix
@@ -8,19 +8,19 @@ let
   cfg = config.users;
 
   passwordDescription = ''
-    The options <literal>hashedPassword</literal>,
-    <literal>password</literal> and <literal>passwordFile</literal>
+    The options <option>hashedPassword</option>,
+    <option>password</option> and <option>passwordFile</option>
     controls what password is set for the user.
-    <literal>hashedPassword</literal> overrides both
-    <literal>password</literal> and <literal>passwordFile</literal>.
-    <literal>password</literal> overrides <literal>passwordFile</literal>.
+    <option>hashedPassword</option> overrides both
+    <option>password</option> and <option>passwordFile</option>.
+    <option>password</option> overrides <option>passwordFile</option>.
     If none of these three options are set, no password is assigned to
     the user, and the user will not be able to do password logins.
-    If the option <literal>users.mutableUsers</literal> is true, the
+    If the option <option>users.mutableUsers</option> is true, the
     password defined in one of the three options will only be set when
     the user is created for the first time. After that, you are free to
     change the password with the ordinary user management commands. If
-    <literal>users.mutableUsers</literal> is false, you cannot change
+    <option>users.mutableUsers</option> is false, you cannot change
     user passwords, they will always be set according to the password
     options.
   '';
@@ -155,7 +155,7 @@ let
         default = false;
         description = ''
           If true, the user's shell will be set to
-          <literal>cfg.defaultUserShell</literal>.
+          <option>users.defaultUserShell</option>.
         '';
       };
 
@@ -163,7 +163,7 @@ let
         type = with types; uniq (nullOr str);
         default = null;
         description = ''
-          Specifies the (hashed) password for the user.
+          Specifies the hashed password for the user.
           ${passwordDescription}
         '';
       };
@@ -191,6 +191,37 @@ let
           ${passwordDescription}
         '';
       };
+
+      initialHashedPassword = mkOption {
+        type = with types; uniq (nullOr str);
+        default = null;
+        description = ''
+          Specifies the initial hashed password for the user, i.e. the
+          hashed password assigned if the user does not already
+          exist. If <option>users.mutableUsers</option> is true, the
+          password can be changed subsequently using the
+          <command>passwd</command> command. Otherwise, it's
+          equivalent to setting the <option>password</option> option.
+        '';
+      };
+
+      initialPassword = mkOption {
+        type = with types; uniq (nullOr str);
+        default = null;
+        description = ''
+          Specifies the initial password for the user, i.e. the
+          password assigned if the user does not already exist. If
+          <option>users.mutableUsers</option> is true, the password
+          can be changed subsequently using the
+          <command>passwd</command> command. Otherwise, it's
+          equivalent to setting the <option>password</option>
+          option. The same caveat applies: the password specified here
+          is world-readable in the Nix store, so it should only be
+          used for guest accounts or passwords that will be changed
+          promptly.
+        '';
+      };
+
     };
 
     config = mkMerge
@@ -204,6 +235,14 @@ let
           useDefaultShell = mkDefault true;
           isSystemUser = mkDefault false;
         })
+        # If !mutableUsers, setting ‘initialPassword’ is equivalent to
+        # setting ‘password’ (and similarly for hashed passwords).
+        (mkIf (!cfg.mutableUsers && config.initialPassword != null) {
+          password = mkDefault config.initialPassword;
+        })
+        (mkIf (!cfg.mutableUsers && config.initialHashedPassword != null) {
+          hashedPassword = mkDefault config.initialHashedPassword;
+        })
       ];
 
   };
@@ -306,7 +345,8 @@ let
     users = mapAttrsToList (n: u:
       { inherit (u)
           name uid group description home shell createHome isSystemUser
-          password passwordFile hashedPassword;
+          password passwordFile hashedPassword
+          initialPassword initialHashedPassword;
       }) cfg.extraUsers;
     groups = mapAttrsToList (n: g:
       { inherit (g) name gid;
@@ -386,24 +426,12 @@ in {
       options = [ groupOpts ];
     };
 
+    # FIXME: obsolete - will remove.
     security.initialRootPassword = mkOption {
       type = types.str;
       default = "!";
       example = "";
-      description = ''
-        The (hashed) password for the root account set on initial
-        installation. The empty string denotes that root can login
-        locally without a password (but not via remote services such
-        as SSH, or indirectly via <command>su</command> or
-        <command>sudo</command>). The string <literal>!</literal>
-        prevents root from logging in using a password.
-        Note that setting this option sets
-        <literal>users.extraUsers.root.hashedPassword</literal>.
-        Also, if <literal>users.mutableUsers</literal> is false
-        you cannot change the root password manually, so in that case
-        the name of this option is a bit misleading, since it will define
-        the root password beyond the user initialisation phase.
-      '';
+      visible = false;
     };
 
   };
@@ -421,7 +449,7 @@ in {
         shell = mkDefault cfg.defaultUserShell;
         group = "root";
         extraGroups = [ "grsecurity" ];
-        hashedPassword = mkDefault config.security.initialRootPassword;
+        initialHashedPassword = mkDefault config.security.initialRootPassword;
       };
       nobody = {
         uid = ids.uids.nobody;
diff --git a/nixos/modules/installer/cd-dvd/installation-cd-base.nix b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
index 0a39e8dde9de..a68581c113fc 100644
--- a/nixos/modules/installer/cd-dvd/installation-cd-base.nix
+++ b/nixos/modules/installer/cd-dvd/installation-cd-base.nix
@@ -36,6 +36,9 @@ with lib;
   # EFI booting
   isoImage.makeEfiBootable = true;
 
+  # USB booting
+  isoImage.makeUsbBootable = true;
+
   # Add Memtest86+ to the CD.
   boot.loader.grub.memtest86.enable = true;
 
@@ -46,5 +49,5 @@ with lib;
   boot.supportedFilesystems = [ "zfs" "btrfs" ];
 
   # Allow the user to log in as root without a password.
-  security.initialRootPassword = "";
+  users.extraUsers.root.initialHashedPassword = "";
 }
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index 22f31c460802..f387c64cb9c9 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -8,45 +8,37 @@ with lib;
 
 let
 
-  # The Grub image.
-  grubImage = pkgs.runCommand "grub_eltorito" {}
+  # The configuration file for syslinux.
+  isolinuxCfg =
     ''
-      ${pkgs.grub2}/bin/grub-mkimage -p /boot/grub -O i386-pc -o tmp biosdisk iso9660 help linux linux16 chain png jpeg echo gfxmenu reboot
-      cat ${pkgs.grub2}/lib/grub/*/cdboot.img tmp > $out
-    ''; # */
-
-
-  # The configuration file for Grub.
-  grubCfg =
-    ''
-      set default=${builtins.toString config.boot.loader.grub.default}
-      set timeout=${builtins.toString config.boot.loader.grub.timeout}
-
-      if loadfont /boot/grub/unicode.pf2; then
-        set gfxmode=640x480
-        insmod gfxterm
-        insmod vbe
-        terminal_output gfxterm
-
-        insmod png
-        if background_image /boot/grub/splash.png; then
-          set color_normal=white/black
-          set color_highlight=black/white
-        else
-          set menu_color_normal=cyan/blue
-          set menu_color_highlight=white/blue
-        fi
-
-      fi
-
-      ${config.boot.loader.grub.extraEntries}
+    SERIAL 0 38400
+    UI vesamenu.c32
+    MENU TITLE NixOS
+    MENU BACKGROUND /isolinux/background.png
+
+    LABEL boot
+    MENU LABEL Boot NixOS
+    LINUX /boot/bzImage init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}
+    INITRD /boot/initrd
+
+    LABEL chain
+    MENU LABEL Boot existing OS
+    COM32 chain.c32
+    APPEND hd0 0
+
+    LABEL reboot
+    MENU LABEL Reboot
+    COM32 reboot.c32
+
+    LABEL poweroff
+    MENU LABEL Power Off
+    COM32 poweroff.c32
     '';
 
-
   # The efi boot image
   efiDir = pkgs.runCommand "efi-directory" {} ''
-    mkdir -p $out/efi/boot
-    cp -v ${pkgs.gummiboot}/lib/gummiboot/gummiboot${targetArch}.efi $out/efi/boot/boot${targetArch}.efi
+    mkdir -p $out/EFI/boot
+    cp -v ${pkgs.gummiboot}/lib/gummiboot/gummiboot${targetArch}.efi $out/EFI/boot/boot${targetArch}.efi
     mkdir -p $out/loader/entries
     echo "title NixOS LiveCD" > $out/loader/entries/nixos-livecd.conf
     echo "linux /boot/bzImage" >> $out/loader/entries/nixos-livecd.conf
@@ -152,6 +144,22 @@ in
       '';
     };
 
+    isoImage.makeUsbBootable = mkOption {
+      default = false;
+      description = ''
+        Whether the ISO image should be bootable from CD as well as USB.
+      '';
+    };
+
+    isoImage.splashImage = mkOption {
+      default = pkgs.fetchurl {
+          url = https://raw.githubusercontent.com/NixOS/nixos-artwork/5729ab16c6a5793c10a2913b5a1b3f59b91c36ee/ideas/grub-splash/grub-nixos-1.png;
+          sha256 = "43fd8ad5decf6c23c87e9026170a13588c2eba249d9013cb9f888da5e2002217";
+        };
+      description = ''
+        The splash image to use in the bootloader.
+      '';
+    };
 
   };
 
@@ -166,7 +174,7 @@ in
 
     # !!! Hack - attributes expected by other modules.
     system.boot.loader.kernelFile = "bzImage";
-    environment.systemPackages = [ pkgs.grub2 ];
+    environment.systemPackages = [ pkgs.grub2 pkgs.syslinux ];
 
     # In stage 1 of the boot, mount the CD as the root FS by label so
     # that we don't need to know its device.  We pass the label of the
@@ -213,7 +221,7 @@ in
         options = "allow_other,cow,nonempty,chroot=/mnt-root,max_files=32768,hide_meta_files,dirs=/nix/.rw-store=rw:/nix/.ro-store=ro";
       };
 
-    boot.initrd.availableKernelModules = [ "squashfs" "iso9660" ];
+    boot.initrd.availableKernelModules = [ "squashfs" "iso9660" "usb-storage" ];
 
     boot.initrd.kernelModules = [ "loop" ];
 
@@ -233,15 +241,12 @@ in
     # Individual files to be included on the CD, outside of the Nix
     # store on the CD.
     isoImage.contents =
-      [ { source = grubImage;
-          target = "/boot/grub/grub_eltorito";
-        }
-        { source = pkgs.substituteAll  {
-            name = "grub.cfg";
-            src = pkgs.writeText "grub.cfg-in" grubCfg;
+      [ { source = pkgs.substituteAll  {
+            name = "isolinux.cfg";
+            src = pkgs.writeText "isolinux.cfg-in" isolinuxCfg;
             bootRoot = "/boot";
           };
-          target = "/boot/grub/grub.cfg";
+          target = "/isolinux/isolinux.cfg";
         }
         { source = config.boot.kernelPackages.kernel + "/bzImage";
           target = "/boot/bzImage";
@@ -249,51 +254,38 @@ in
         { source = config.system.build.initialRamdisk + "/initrd";
           target = "/boot/initrd";
         }
-        { source = "${pkgs.grub2}/share/grub/unicode.pf2";
-          target = "/boot/grub/unicode.pf2";
-        }
-        { source = config.boot.loader.grub.splashImage;
-          target = "/boot/grub/splash.png";
-        }
         { source = config.system.build.squashfsStore;
           target = "/nix-store.squashfs";
         }
+        { source = "${pkgs.syslinux}/share/syslinux";
+          target = "/isolinux";
+        }
+        { source = config.isoImage.splashImage;
+          target = "/isolinux/background.png";
+        }
       ] ++ optionals config.isoImage.makeEfiBootable [
         { source = efiImg;
           target = "/boot/efi.img";
         }
-        { source = "${efiDir}/efi";
-          target = "/efi";
+        { source = "${efiDir}/EFI";
+          target = "/EFI";
         }
         { source = "${efiDir}/loader";
           target = "/loader";
         }
-      ] ++ mapAttrsToList (n: v: { source = v; target = "/boot/${n}"; }) config.boot.loader.grub.extraFiles;
-
-    # The Grub menu.
-    boot.loader.grub.extraEntries =
-      ''
-        menuentry "NixOS ${config.system.nixosVersion} Installer" {
-          linux /boot/bzImage init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams}
-          initrd /boot/initrd
-        }
-
-        menuentry "Boot from hard disk" {
-          set root=(hd0)
-          chainloader +1
-        }
-      '';
-
-    boot.loader.grub.timeout = 10;
+      ];
 
     # Create the ISO image.
     system.build.isoImage = import ../../../lib/make-iso9660-image.nix ({
-      inherit (pkgs) stdenv perl cdrkit pathsFromGraph;
+      inherit (pkgs) stdenv perl pathsFromGraph xorriso syslinux;
 
       inherit (config.isoImage) isoName compressImage volumeID contents;
 
       bootable = true;
-      bootImage = "/boot/grub/grub_eltorito";
+      bootImage = "/isolinux/isolinux.bin";
+    } // optionalAttrs config.isoImage.makeUsbBootable {
+      usbBootable = true;
+      isohybridMbrImage = "${pkgs.syslinux}/share/syslinux/isohdpfx.bin";
     } // optionalAttrs config.isoImage.makeEfiBootable {
       efiBootable = true;
       efiBootImage = "boot/efi.img";
diff --git a/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix b/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix
index 7d3346e4ea1f..bbf0311c04d6 100644
--- a/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix
+++ b/nixos/modules/installer/cd-dvd/system-tarball-fuloong2f.nix
@@ -76,7 +76,6 @@ in
       pkgs.ntfsprogs # for resizing NTFS partitions
       pkgs.btrfsProgs
       pkgs.jfsutils
-      pkgs.jfsrec
 
       # Some compression/archiver tools.
       pkgs.unzip
diff --git a/nixos/modules/profiles/base.nix b/nixos/modules/profiles/base.nix
index 7a6f76572058..3d1412b56859 100644
--- a/nixos/modules/profiles/base.nix
+++ b/nixos/modules/profiles/base.nix
@@ -34,7 +34,6 @@
     pkgs.xfsprogs
     pkgs.jfsutils
     pkgs.f2fs-tools
-    #pkgs.jfsrec # disabled because of Boost dependency
 
     # Some compression/archiver tools.
     pkgs.unzip
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index ea7d9763ce64..073a22207652 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -131,6 +131,5 @@ in zipModules ([]
 ++ obsolete' [ "programs" "bash" "enable" ]
 ++ obsolete' [ "services" "samba" "defaultShare" ]
 ++ obsolete' [ "services" "syslog-ng" "serviceName" ]
-++ obsolete' [ "services" "syslog-ng" "listenToJournal" ]
 
 )
diff --git a/nixos/modules/services/logging/syslog-ng.nix b/nixos/modules/services/logging/syslog-ng.nix
index 2bf6d1ff7904..f3991a411ec4 100644
--- a/nixos/modules/services/logging/syslog-ng.nix
+++ b/nixos/modules/services/logging/syslog-ng.nix
@@ -43,6 +43,15 @@ in {
           The package providing syslog-ng binaries.
         '';
       };
+      listenToJournal = mkOption {
+        type = types.bool;
+        default = true;
+        description = ''
+          Whether syslog-ng should listen to the syslog socket used
+          by journald, and therefore receive all logs that journald
+          produces.
+        '';
+      };
       extraModulePaths = mkOption {
         type = types.listOf types.str;
         default = [];
@@ -65,7 +74,7 @@ in {
       configHeader = mkOption {
         type = types.lines;
         default = ''
-          @version: 3.6
+          @version: 3.5
           @include "scl.conf"
         '';
         description = ''
@@ -77,13 +86,18 @@ in {
   };
 
   config = mkIf cfg.enable {
+    systemd.sockets.syslog = mkIf cfg.listenToJournal {
+      wantedBy = [ "sockets.target" ];
+      socketConfig.Service = "syslog-ng.service";
+    };
     systemd.services.syslog-ng = {
       description = "syslog-ng daemon";
       preStart = "mkdir -p /{var,run}/syslog-ng";
-      wantedBy = [ "multi-user.target" ];
+      wantedBy = optional (!cfg.listenToJournal) "multi-user.target";
       after = [ "multi-user.target" ]; # makes sure hostname etc is set
       serviceConfig = {
         Type = "notify";
+        Sockets = if cfg.listenToJournal then "syslog.socket" else null;
         StandardOutput = "null";
         Restart = "on-failure";
         ExecStart = "${cfg.package}/sbin/syslog-ng ${concatStringsSep " " syslogngOptions}";
diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix
index bc716957e3f8..bbbbcbccb9be 100644
--- a/nixos/modules/services/monitoring/graphite.nix
+++ b/nixos/modules/services/monitoring/graphite.nix
@@ -535,16 +535,18 @@ in {
       environment.systemPackages = [ pkgs.pythonPackages.graphite_pager ];
     })
 
-    # Disabled: Don't create this user unconditionally!
-    #
-    # {
-    #   users.extraUsers = singleton {
-    #     name = "graphite";
-    #     uid = config.ids.uids.graphite;
-    #     description = "Graphite daemon user";
-    #     home = dataDir;
-    #   };
-    #   users.extraGroups.graphite.gid = config.ids.gids.graphite;
-    # }
+    (mkIf (
+      cfg.carbon.enableCache || cfg.carbon.enableAggregator || cfg.carbon.enableRelay ||
+      cfg.web.enable || cfg.api.enable ||
+      cfg.seyren.enable || cfg.pager.enable
+     ) {
+      users.extraUsers = singleton {
+        name = "graphite";
+        uid = config.ids.uids.graphite;
+        description = "Graphite daemon user";
+        home = dataDir;
+      };
+      users.extraGroups.graphite.gid = config.ids.gids.graphite;
+    })
   ];
 }
diff --git a/nixos/modules/services/monitoring/zabbix-server.nix b/nixos/modules/services/monitoring/zabbix-server.nix
index ca283ea2a99f..acd1279ddf47 100644
--- a/nixos/modules/services/monitoring/zabbix-server.nix
+++ b/nixos/modules/services/monitoring/zabbix-server.nix
@@ -32,6 +32,8 @@ let
       ${optionalString (cfg.dbPassword != "") ''
         DBPassword = ${cfg.dbPassword}
       ''}
+
+      ${config.services.zabbixServer.extraConfig}
     '';
 
   useLocalPostgres = cfg.dbServer == "localhost" || cfg.dbServer == "";
@@ -46,6 +48,7 @@ in
 
     services.zabbixServer.enable = mkOption {
       default = false;
+      type = types.bool;
       description = ''
         Whether to run the Zabbix server on this machine.
       '';
@@ -53,6 +56,7 @@ in
 
     services.zabbixServer.dbServer = mkOption {
       default = "localhost";
+      type = types.str;
       description = ''
         Hostname or IP address of the database server.
         Use an empty string ("") to use peer authentication.
@@ -61,9 +65,18 @@ in
 
     services.zabbixServer.dbPassword = mkOption {
       default = "";
+      type = types.str;
       description = "Password used to connect to the database server.";
     };
 
+    services.zabbixServer.extraConfig = mkOption {
+      default = "";
+      type = types.lines;
+      description = ''
+        Configuration that is injected verbatim into the configuration file.
+      '';
+    };
+
   };
 
   ###### implementation
diff --git a/nixos/modules/services/torrent/transmission.nix b/nixos/modules/services/torrent/transmission.nix
index 02db4a7a5b2b..1b38ea3b679b 100644
--- a/nixos/modules/services/torrent/transmission.nix
+++ b/nixos/modules/services/torrent/transmission.nix
@@ -88,7 +88,7 @@ in
   config = mkIf cfg.enable {
     systemd.services.transmission = {
       description = "Transmission BitTorrent Service";
-      after = [ "network.target" ] ++ optional apparmor "apparmor.service";
+      after = [ "local-fs.target" "network.target" ] ++ optional apparmor "apparmor.service";
       requires = mkIf apparmor [ "apparmor.service" ];
       wantedBy = [ "multi-user.target" ];
 
diff --git a/nixos/modules/system/boot/stage-1.nix b/nixos/modules/system/boot/stage-1.nix
index 74087c0ce632..859f9e6daa8c 100644
--- a/nixos/modules/system/boot/stage-1.nix
+++ b/nixos/modules/system/boot/stage-1.nix
@@ -130,6 +130,7 @@ let
       cp -v ${udev}/lib/udev/rules.d/80-drivers.rules $out/
       cp -v ${pkgs.lvm2}/lib/udev/rules.d/*.rules $out/
       cp -v ${pkgs.mdadm}/lib/udev/rules.d/*.rules $out/
+      cp -v ${pkgs.bcache-tools}/lib/udev/rules.d/*.rules $out/
 
       for i in $out/*.rules; do
           substituteInPlace $i \
@@ -139,7 +140,8 @@ let
             --replace ${pkgs.utillinux}/sbin/blkid ${extraUtils}/bin/blkid \
             --replace /sbin/blkid ${extraUtils}/bin/blkid \
             --replace ${pkgs.lvm2}/sbin ${extraUtils}/bin \
-            --replace /sbin/mdadm ${extraUtils}/bin/mdadm
+            --replace /sbin/mdadm ${extraUtils}/bin/mdadm \
+            --replace /bin/sh ${extraUtils}/bin/sh
       done
 
       # Work around a bug in QEMU, which doesn't implement the "READ
diff --git a/nixos/modules/testing/test-instrumentation.nix b/nixos/modules/testing/test-instrumentation.nix
index 54a376c9560e..4b4284d85319 100644
--- a/nixos/modules/testing/test-instrumentation.nix
+++ b/nixos/modules/testing/test-instrumentation.nix
@@ -98,7 +98,7 @@ let kernel = config.boot.kernelPackages.kernel; in
     networking.usePredictableInterfaceNames = false;
 
     # Make it easy to log in as root when running the test interactively.
-    security.initialRootPassword = mkDefault "";
+    users.extraUsers.root.initialHashedPassword = mkOverride 150 "";
 
   };
 
diff --git a/nixos/modules/virtualisation/amazon-image.nix b/nixos/modules/virtualisation/amazon-image.nix
index 552d787b4478..d175bac3074d 100644
--- a/nixos/modules/virtualisation/amazon-image.nix
+++ b/nixos/modules/virtualisation/amazon-image.nix
@@ -191,10 +191,5 @@ in
     environment.systemPackages = [ pkgs.cryptsetup ];
 
     boot.initrd.supportedFilesystems = [ "unionfs-fuse" ];
-
-    # Prevent logging in as root without a password.  This doesn't really matter,
-    # since the only PAM services that allow logging in with a null
-    # password are local ones that are inaccessible on EC2 machines.
-    security.initialRootPassword = mkDefault "!";
   };
 }
diff --git a/nixos/modules/virtualisation/docker-image.nix b/nixos/modules/virtualisation/docker-image.nix
index 13b861dc9884..cabb1712b6c0 100644
--- a/nixos/modules/virtualisation/docker-image.nix
+++ b/nixos/modules/virtualisation/docker-image.nix
@@ -38,8 +38,8 @@ in {
     '';
 
 
-  # docker image config
-  require = [
+  # Docker image config.
+  imports = [
     ../installer/cd-dvd/channel.nix
     ../profiles/minimal.nix
     ../profiles/clone-config.nix
@@ -47,16 +47,16 @@ in {
 
   boot.isContainer = true;
 
-  # Iptables do not work in docker
+  # Iptables do not work in Docker.
   networking.firewall.enable = false;
 
   services.openssh.enable = true;
 
-  # Socket activated ssh presents problem in docker
+  # Socket activated ssh presents problem in Docker.
   services.openssh.startWhenNeeded = false;
 
-  # Allow the user to login as root without password
-  security.initialRootPassword = "";
+  # Allow the user to login as root without password.
+  users.extraUsers.root.initialHashedPassword = mkOverride 150 "";
 
   # Some more help text.
   services.mingetty.helpLine =
diff --git a/nixos/tests/gnome3.nix b/nixos/tests/gnome3.nix
index df30283e3155..6f2925e52fa4 100644
--- a/nixos/tests/gnome3.nix
+++ b/nixos/tests/gnome3.nix
@@ -11,6 +11,8 @@ import ./make-test.nix {
       services.xserver.displayManager.auto.enable = true;
       services.xserver.displayManager.auto.user = "alice";
       services.xserver.desktopManager.gnome3.enable = true;
+
+      virtualisation.memorySize = 512;
     };
 
   testScript =
diff --git a/nixos/tests/gnome3_10.nix b/nixos/tests/gnome3_10.nix
index d081c8b5fc0a..ef4afd61299b 100644
--- a/nixos/tests/gnome3_10.nix
+++ b/nixos/tests/gnome3_10.nix
@@ -12,6 +12,8 @@ import ./make-test.nix {
       services.xserver.displayManager.auto.user = "alice";
       services.xserver.desktopManager.gnome3.enable = true;
       environment.gnome3.packageSet = pkgs.gnome3_10;
+
+      virtualisation.memorySize = 512;
     };
 
   testScript =
diff --git a/nixos/tests/run-in-machine.nix b/nixos/tests/run-in-machine.nix
index 7f6e6a6dc573..d1102f8d4073 100644
--- a/nixos/tests/run-in-machine.nix
+++ b/nixos/tests/run-in-machine.nix
@@ -2,9 +2,7 @@
 
 with import ../lib/testing.nix { inherit system; };
 
-{
-  test = runInMachine {
-    drv = pkgs.hello;
-    machine = { config, pkgs, ... }: { /* services.sshd.enable = true; */ };
-  };
+runInMachine {
+  drv = pkgs.hello;
+  machine = { config, pkgs, ... }: { /* services.sshd.enable = true; */ };
 }
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index fd61c65dba2e..5e88da8f856e 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    avahi boost boost.lib eigen fftw gettext glib glibmm gtk gtkmm intltool
+    avahi boost eigen fftw gettext glib glibmm gtk gtkmm intltool
     jack2 ladspaH librdf libsndfile lilv lv2 pkgconfig python serd sord sratom
   ];
 
diff --git a/pkgs/applications/audio/ingen/default.nix b/pkgs/applications/audio/ingen/default.nix
index f6c0d9e99450..450b57a68195 100644
--- a/pkgs/applications/audio/ingen/default.nix
+++ b/pkgs/applications/audio/ingen/default.nix
@@ -13,7 +13,7 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs = [
-    boost boost.lib ganv glibmm gtk gtkmm jack2 lilv lv2 pkgconfig python
+    boost ganv glibmm gtk gtkmm jack2 lilv lv2 pkgconfig python
     raul serd sord sratom suil
   ];
 
diff --git a/pkgs/applications/audio/pamixer/default.nix b/pkgs/applications/audio/pamixer/default.nix
index 769af20c0ed0..d273c2381778 100644
--- a/pkgs/applications/audio/pamixer/default.nix
+++ b/pkgs/applications/audio/pamixer/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "03r0sbfj85wp6yxa87pjg69ivmk0mxxa2nykr8gf2c607igmb034";
   };
 
-  buildInputs = [ pulseaudio boost boost.lib ];
+  buildInputs = [ pulseaudio boost ];
 
   installPhase = ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/audio/picard/default.nix b/pkgs/applications/audio/picard/default.nix
index 235a81a6a32a..d0c3f010e6e1 100644
--- a/pkgs/applications/audio/picard/default.nix
+++ b/pkgs/applications/audio/picard/default.nix
@@ -1,26 +1,17 @@
-{ stdenv, fetchurl, pythonPackages, gettext, pyqt4
-, pkgconfig, libdiscid, libofa, ffmpeg, chromaprint
+{ stdenv, buildPythonPackage, fetchurl, gettext
+, pkgconfig, libofa, ffmpeg, chromaprint
+, pyqt4, mutagen, python-libdiscid
 }:
 
-pythonPackages.buildPythonPackage rec {
+let version = "1.3"; in
+buildPythonPackage {
   name = "picard-${version}";
-  namePrefix = "";
-  version = "1.2";
 
   src = fetchurl {
-    url = "http://ftp.musicbrainz.org/pub/musicbrainz/picard/${name}.tar.gz";
-    sha256 = "0sbsf8hzxhxcnnjqvsd6mc23lmk7w33nln0f3w72f89mjgs6pxm6";
+    url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/picard/picard-${version}.tar.gz";
+    sha256 = "06s90w1j29qhd931dgj752k5v4pjbvxiz6g0613xzj3ms8zsrlys";
   };
 
-  postPatch = let
-    discid = "${libdiscid}/lib/libdiscid.so.0";
-    fpr = "${chromaprint}/bin/fpcalc";
-  in ''
-    substituteInPlace picard/disc.py --replace libdiscid.so.0 ${discid}
-    substituteInPlace picard/const.py \
-        --replace "FPCALC_NAMES = [" "FPCALC_NAMES = ['${fpr}',"
-  '';
-
   buildInputs = [
     pkgconfig
     ffmpeg
@@ -29,19 +20,11 @@ pythonPackages.buildPythonPackage rec {
   ];
 
   propagatedBuildInputs = [
-    pythonPackages.mutagen
     pyqt4
-    libdiscid
+    mutagen
+    python-libdiscid
   ];
 
-  configurePhase = ''
-    python setup.py config
-  '';
-
-  buildPhase = ''
-    python setup.py build
-  '';
-
   installPhase = ''
     python setup.py install --prefix="$out"
   '';
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index ec168486f6d3..bab6cdcf33f0 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation  rec {
   };
 
   buildInputs = [
-    alsaLib boost boost.lib cairo fftwSinglePrec fltk jack2 libsndfile mesa
+    alsaLib boost cairo fftwSinglePrec fltk jack2 libsndfile mesa
     minixml zlib xorg.libpthreadstubs
   ];
 
diff --git a/pkgs/applications/editors/emacs-24/macport-24.3.nix b/pkgs/applications/editors/emacs-24/macport-24.3.nix
new file mode 100644
index 000000000000..d9b32351040b
--- /dev/null
+++ b/pkgs/applications/editors/emacs-24/macport-24.3.nix
@@ -0,0 +1,100 @@
+{ stdenv, fetchurl, ncurses, pkgconfig, texinfo, libxml2, gnutls
+}:
+
+stdenv.mkDerivation rec {
+  emacsName = "emacs-24.3";
+  name = "${emacsName}-mac-4.8";
+
+  #builder = ./builder.sh;
+
+  src = fetchurl {
+    url = "mirror://gnu/emacs/${emacsName}.tar.xz";
+    sha256 = "1385qzs3bsa52s5rcncbrkxlydkw0ajzrvfxgv8rws5fx512kakh";
+  };
+
+  macportSrc = fetchurl {
+    url = "ftp://ftp.math.s.chiba-u.ac.jp/emacs/${name}.tar.gz";
+    sha256 = "194y341zrpjp75mc3099kjc0inr1d379wwsnav257bwsc967h8yx";
+  };
+
+  patches = [ ./darwin-new-sections.patch ];
+
+  buildInputs = [ ncurses pkgconfig texinfo libxml2 gnutls ];
+
+  postUnpack = ''
+    mv $emacsName $name
+    tar xzf $macportSrc
+    mv $name $emacsName
+  '';
+
+  preConfigure = ''
+    patch -p0 < patch-mac
+
+    # The search for 'tputs' will fail because it's in ncursesw within the
+    # ncurses package, yet Emacs' configure script only looks in ncurses.
+    # Further, we need to make sure that the -L option occurs before mention
+    # of the library, so that it finds it within the Nix store.
+    sed -i 's/tinfo ncurses/tinfo ncursesw/' configure
+    ncurseslib=$(echo ${ncurses}/lib | sed 's#/#\\/#g')
+    sed -i "s/OLIBS=\$LIBS/OLIBS=\"-L$ncurseslib \$LIBS\"/" configure
+    sed -i 's/LIBS="\$LIBS_TERMCAP \$LIBS"/LIBS="\$LIBS \$LIBS_TERMCAP"/' configure
+
+    configureFlagsArray=(
+      LDFLAGS=-L${ncurses}/lib
+      --with-xml2=yes
+      --with-gnutls=yes
+      --with-mac
+      --enable-mac-app=$out/Applications
+    )
+    makeFlagsArray=(
+      CFLAGS=-O3
+      LDFLAGS="-O3 -L${ncurses}/lib"
+    );
+  '';
+
+  postInstall = ''
+    cat >$out/share/emacs/site-lisp/site-start.el <<EOF
+    ;; nixos specific load-path
+    (when (getenv "NIX_PROFILES") (setq load-path
+                          (append (reverse (mapcar (lambda (x) (concat x "/share/emacs/site-lisp/"))
+                             (split-string (getenv "NIX_PROFILES"))))
+                    load-path)))
+
+    ;; make tramp work for NixOS machines
+    (eval-after-load 'tramp '(add-to-list 'tramp-remote-path "/run/current-system/sw/bin"))
+    EOF
+  '';
+
+  doCheck = true;
+
+  meta = with stdenv.lib; {
+    description = "GNU Emacs 24, the extensible, customizable text editor";
+    homepage    = http://www.gnu.org/software/emacs/;
+    license     = licenses.gpl3Plus;
+    maintainers = with maintainers; [ jwiegley ];
+    platforms   = platforms.darwin;
+
+    longDescription = ''
+      GNU Emacs is an extensible, customizable text editor—and more.  At its
+      core is an interpreter for Emacs Lisp, a dialect of the Lisp
+      programming language with extensions to support text editing.
+
+      The features of GNU Emacs include: content-sensitive editing modes,
+      including syntax coloring, for a wide variety of file types including
+      plain text, source code, and HTML; complete built-in documentation,
+      including a tutorial for new users; full Unicode support for nearly all
+      human languages and their scripts; highly customizable, using Emacs
+      Lisp code or a graphical interface; a large number of extensions that
+      add other functionality, including a project planner, mail and news
+      reader, debugger interface, calendar, and more.  Many of these
+      extensions are distributed with GNU Emacs; others are available
+      separately.
+
+      This is "Mac port" addition to GNU Emacs 24. This provides a native
+      GUI support for Mac OS X 10.4 - 10.9. Note that Emacs 23 and later
+      already contain the official GUI support via the NS (Cocoa) port for
+      Mac OS X 10.4 and later. So if it is good enough for you, then you
+      don't need to try this.
+    '';
+  };
+}
diff --git a/pkgs/applications/editors/emacs-24/macport.nix b/pkgs/applications/editors/emacs-24/macport-24.4.nix
index b357d19b6746..b357d19b6746 100644
--- a/pkgs/applications/editors/emacs-24/macport.nix
+++ b/pkgs/applications/editors/emacs-24/macport-24.4.nix
diff --git a/pkgs/applications/editors/emacs-modes/magit/default.nix b/pkgs/applications/editors/emacs-modes/magit/default.nix
index 4a8d8b20d04a..676a86985f8f 100644
--- a/pkgs/applications/editors/emacs-modes/magit/default.nix
+++ b/pkgs/applications/editors/emacs-modes/magit/default.nix
@@ -1,16 +1,13 @@
 { stdenv, fetchFromGitHub, emacs, texinfo, gitModes, git }:
 
-let
-  version = "90141016";
-in
 stdenv.mkDerivation rec {
-  name = "magit-${version}";
+  name = "magit-90141025";
 
   src = fetchFromGitHub {
     owner = "magit";
     repo = "magit";
-    rev = version;
-    sha256 = "11d3gzj0hlb7wqsjzjb0vf9i0ik4xzwdyayjy4hfgx0gjmymkfx3";
+    rev = "50c08522c8a3c67e0f3b821fe4df61e8bd456ff9";
+    sha256 = "0mzyx72pidzvla1x2qszn3c60n2j0n8i5k875c4difvd1n4p0vsk";
   };
 
   buildInputs = [ emacs texinfo git ];
diff --git a/pkgs/applications/editors/idea/default.nix b/pkgs/applications/editors/idea/default.nix
index 7fbe58f1b292..7c81f3c5c81a 100644
--- a/pkgs/applications/editors/idea/default.nix
+++ b/pkgs/applications/editors/idea/default.nix
@@ -109,36 +109,27 @@ let
       };
     });
 
-  buildPycharm = { name, version, build, src, license, description }:
+  buildClion = { name, version, build, src, license, description }:
     (mkIdeaProduct rec {
       inherit name version build src;
-      product = "PyCharm";
+      patchSnappy = false;
+      product = "CLion";
       meta = with stdenv.lib; {
-        homepage = "https://www.jetbrains.com/pycharm/";
+        homepage = "https://www.jetbrains.com/clion/";
         inherit description license;
         longDescription = ''
-          Python IDE with complete set of tools for productive
-          development with Python programming language. In addition, the
-          IDE provides high-class capabilities for professional Web
-          development with Django framework and Google App Engine. It
-          has powerful coding assistance, navigation, a lot of
-          refactoring features, tight integration with various Version
-          Control Systems, Unit testing, powerful all-singing
-          all-dancing Debugger and entire customization. PyCharm is
-          developer driven IDE. It was developed with the aim of
-          providing you almost everything you need for your comfortable
-          and productive development!
+          Enhancing productivity for every C and C++
+          developer on Linux, OS X and Windows.
         '';
-        maintainers = with maintainers; [ jgeerds ];
+        maintainers = with maintainers; [ edwtjo ];
         platforms = platforms.linux;
       };
-    }).override {
-      propagatedUserEnvPkgs = [ python ];
-    };
+    });
 
   buildIdea = { name, version, build, src, license, description }:
     (mkIdeaProduct rec {
       inherit name version build src;
+      patchSnappy = false;
       product = "IDEA";
       meta = with stdenv.lib; {
         homepage = "https://www.jetbrains.com/idea/";
@@ -153,6 +144,19 @@ let
       };
     });
 
+  buildRubyMine = { name, version, build, src, license, description }:
+    (mkIdeaProduct rec {
+      inherit name version build src;
+      product = "RubyMine";
+      meta = with stdenv.lib; {
+        homepage = "https://www.jetbrains.com/ruby/";
+        inherit description license;
+        longDescription = description;
+        maintainers = with maintainers; [ edwtjo ];
+        platforms = platforms.linux;
+      };
+    });
+
   buildPhpStorm = { name, version, build, src, license, description }:
     (mkIdeaProduct {
       inherit name version build src;
@@ -171,6 +175,33 @@ let
       };
     });
 
+  buildPycharm = { name, version, build, src, license, description }:
+    (mkIdeaProduct rec {
+      inherit name version build src;
+      product = "PyCharm";
+      meta = with stdenv.lib; {
+        homepage = "https://www.jetbrains.com/pycharm/";
+        inherit description license;
+        longDescription = ''
+          Python IDE with complete set of tools for productive
+          development with Python programming language. In addition, the
+          IDE provides high-class capabilities for professional Web
+          development with Django framework and Google App Engine. It
+          has powerful coding assistance, navigation, a lot of
+          refactoring features, tight integration with various Version
+          Control Systems, Unit testing, powerful all-singing
+          all-dancing Debugger and entire customization. PyCharm is
+          developer driven IDE. It was developed with the aim of
+          providing you almost everything you need for your comfortable
+          and productive development!
+        '';
+        maintainers = with maintainers; [ jgeerds ];
+        platforms = platforms.linux;
+      };
+    }).override {
+      propagatedUserEnvPkgs = [ python ];
+    };
+
 in
 
 {
@@ -188,27 +219,51 @@ in
     };
   };
 
+  clion = buildClion rec {
+    name = "clion";
+    version = "eap";
+    build = "138.2344.17";
+    description  = "C/C++ IDE. New. Intelligent. Cross-platform.";
+    license = stdenv.lib.licenses.unfree;
+    src = fetchurl {
+      url = "http://download.jetbrains.com/cpp/${name}-${build}.tar.gz";
+      sha256 = "4b568d31132a787b748bc41c69b614dcd90229db69b02406677361bc077efab3";
+    };
+  };
+
   idea-community = buildIdea rec {
     name = "idea-community-${version}";
-    version = "13.1.5";
-    build = "IC-135.1289";
+    version = "14pre";
+    build = "IC-139.222.5";
     description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
     license = stdenv.lib.licenses.asl20;
     src = fetchurl {
-      url = "http://download-ln.jetbrains.com/idea/ideaIC-${version}.tar.gz";
-      sha256 = "e08b9adad0ed9aa62a43f3026a1b499d1663710314d00a3bec2e171a6c375f09";
+      url = "http://download-ln.jetbrains.com/idea/idea${build}.tar.gz";
+      sha256 = "e2c696f465da36b77148a61b45f35f8f08ceae3b624904de8f7cccf0e7c20ce2";
     };
   };
 
   idea-ultimate = buildIdea rec {
     name = "idea-ultimate-${version}";
-    version = "13.1.5";
-    build = "IU-135.1289";
+    version = "14pre";
+    build = "IU-139.222.5";
     description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
-      url = "http://download-ln.jetbrains.com/idea/ideaIU-${version}.tar.gz";
-      sha256 = "0800b1ffc135f884e46f1004289fb75850148d705afc447d3374cfd281c231a2";
+      url = "http://download-ln.jetbrains.com/idea/idea${build}.tar.gz";
+      sha256 = "d8e8927adebdc4d2e5f1f5bfb0ecc97c3e561b74d56391898dd36abe89a4f170";
+    };
+  };
+
+  ruby-mine = buildRubyMine rec {
+    name = "ruby-mine-${version}";
+    version = "6.3.3";
+    build = "135.1104";
+    description = "The Most Intelligent Ruby and Rails IDE";
+    license = stdenv.lib.licenses.unfree;
+    src = fetchurl {
+      url = "http://download.jetbrains.com/ruby/RubyMine-${version}.tar.gz";
+      sha256 = "58d555c2702a93fe62f3809a5cc34e566ecce0c3f1f15daaf87744402157dfac";
     };
   };
 
diff --git a/pkgs/applications/editors/kdevelop/default.nix b/pkgs/applications/editors/kdevelop/default.nix
index 945a6210e786..b98e02fd7b98 100644
--- a/pkgs/applications/editors/kdevelop/default.nix
+++ b/pkgs/applications/editors/kdevelop/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, kdevplatform, cmake, pkgconfig, automoc4, shared_mime_info,
-  kdebase_workspace, gettext, perl, okteta, qjson }:
+  kdebase_workspace, gettext, perl, okteta, qjson, kate, konsole, kde_runtime, oxygen_icons }:
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ cmake pkgconfig automoc4 shared_mime_info gettext perl ];
 
+  propagatedUserEnvPkgs = [ kdevplatform kate konsole kde_runtime oxygen_icons ];
+
   NIX_CFLAGS_COMPILE = "-I${okteta}/include/KDE";
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/editors/vim/macvim.nix b/pkgs/applications/editors/vim/macvim.nix
index 8fc3a4108d2d..784be80ecf48 100644
--- a/pkgs/applications/editors/vim/macvim.nix
+++ b/pkgs/applications/editors/vim/macvim.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, ncurses, gettext,
+{ stdenv, fetchurl, ncurses, gettext,
   pkgconfig, cscope, python, ruby, tcl, perl, luajit
 }:
 
@@ -7,11 +7,9 @@ stdenv.mkDerivation rec {
 
   version = "7.4.479";
 
-  src = fetchFromGitHub {
-    owner = "genoma";
-    repo = "macvim";
-    rev = "f9c084b97fa9d5cad2448dfd3eff3d9b7f0fac59";
-    sha256 = "190bngg8m4bwqcia7w24gn7mmqkhk0mavxy81ziwysam1f652ymf";
+  src = fetchurl {
+    url = "https://github.com/genoma/macvim/archive/g-snapshot-21.tar.gz";
+    sha256 = "1s86dpb8bcxh309gikiz8gm9ygv3d2jy6i4qlnxarbvcdk65fzv4";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/applications/graphics/freecad/default.nix b/pkgs/applications/graphics/freecad/default.nix
index 0235f892b8dc..a7665177046b 100644
--- a/pkgs/applications/graphics/freecad/default.nix
+++ b/pkgs/applications/graphics/freecad/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ cmake coin3d xercesc ode eigen qt4 opencascade gts boost
-    boost.lib zlib python swig gfortran soqt libf2c makeWrapper matplotlib
+    zlib python swig gfortran soqt libf2c makeWrapper matplotlib
     pycollada pyside pysideShiboken
   ];
 
diff --git a/pkgs/applications/graphics/geeqie/default.nix b/pkgs/applications/graphics/geeqie/default.nix
index e914186ac815..0db1f211e564 100644
--- a/pkgs/applications/graphics/geeqie/default.nix
+++ b/pkgs/applications/graphics/geeqie/default.nix
@@ -1,5 +1,6 @@
-{ stdenv, fetchgit, pkgconfig, autoconf, automake, gtk, libpng, exiv2, lcms
-, intltool, gettext, libchamplain, fbida }:
+{ stdenv, fetchgit, autoconf, automake, libtool, pkgconfig, gtk, libpng, exiv2
+, lcms, intltool, gettext, libchamplain, fbida
+}:
 
 stdenv.mkDerivation rec {
   name = "geeqie-${version}";
@@ -11,22 +12,25 @@ stdenv.mkDerivation rec {
     sha256 = "1h9w0jrcqcp5jjgmks5pvpppnfxhcd1s3vqlyb3qyil2wfk8n8wp";
   };
 
-  preConfigure = "./autogen.sh";
-
-  configureFlags = [ "--enable-gps" ];
-
-  buildInputs =
-    [ pkgconfig autoconf automake gtk libpng exiv2 lcms intltool gettext
-      libchamplain
-    ];
-
-  postInstall =
-    ''
-      # Allow geeqie to find exiv2 and exiftran, necessary to
-      # losslessly rotate JPEG images.
-      sed -i $out/lib/geeqie/geeqie-rotate \
-          -e '1 a export PATH=${exiv2}/bin:${fbida}/bin:$PATH'
-    '';
+  configureFlags = [
+    "--enable-gps"
+  ];
+
+  configurePhase = ''
+    ./autogen.sh $configureFlags --prefix="$out"
+  '';
+
+  buildInputs = [
+    autoconf automake libtool pkgconfig gtk libpng exiv2 lcms intltool gettext
+    libchamplain
+  ];
+
+  postInstall = ''
+    # Allow geeqie to find exiv2 and exiftran, necessary to
+    # losslessly rotate JPEG images.
+    sed -i $out/lib/geeqie/geeqie-rotate \
+        -e '1 a export PATH=${exiv2}/bin:${fbida}/bin:$PATH'
+  '';
 
   meta = with stdenv.lib; {
     description = "Lightweight GTK+ based image viewer";
diff --git a/pkgs/applications/graphics/luminance-hdr/default.nix b/pkgs/applications/graphics/luminance-hdr/default.nix
index 7f2d3e245890..7558b0aef4b6 100644
--- a/pkgs/applications/graphics/luminance-hdr/default.nix
+++ b/pkgs/applications/graphics/luminance-hdr/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
 
-  buildInputs = [ qt5 boost boost.lib exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr ];
+  buildInputs = [ qt5 boost exiv2 fftwFloat gsl ilmbase lcms2 libraw libtiff openexr ];
 
   nativeBuildInputs = [ cmake pkgconfig ];
 
diff --git a/pkgs/applications/graphics/openimageio/default.nix b/pkgs/applications/graphics/openimageio/default.nix
index f6d7c25b196d..00ba14d98af6 100644
--- a/pkgs/applications/graphics/openimageio/default.nix
+++ b/pkgs/applications/graphics/openimageio/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    boost boost.lib cmake ilmbase libjpeg libpng libtiff opencolorio openexr
+    boost cmake ilmbase libjpeg libpng libtiff opencolorio openexr
     unzip
   ];
 
diff --git a/pkgs/applications/graphics/openscad/default.nix b/pkgs/applications/graphics/openscad/default.nix
index 67611d2f67cc..e6d5ee5528f0 100644
--- a/pkgs/applications/graphics/openscad/default.nix
+++ b/pkgs/applications/graphics/openscad/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    qt4 bison flex eigen boost boost.lib mesa glew opencsg cgal mpfr gmp glib
+    qt4 bison flex eigen boost mesa glew opencsg cgal mpfr gmp glib
     pkgconfig
   ];
 
diff --git a/pkgs/applications/graphics/rapcad/default.nix b/pkgs/applications/graphics/rapcad/default.nix
index b314bdaf6baa..b8a07f01e03a 100644
--- a/pkgs/applications/graphics/rapcad/default.nix
+++ b/pkgs/applications/graphics/rapcad/default.nix
@@ -1,16 +1,16 @@
-{stdenv, fetchgit, qt4, cgal, boost, gmp, mpfr, flex, bison, dxflib}: 
+{stdenv, fetchgit, qt5, cgal, boost, gmp, mpfr, flex, bison, dxflib, readline }: 
 
 stdenv.mkDerivation rec {
-  version = "0.8.0";
+  version = "0.9.5";
   name = "rapcad-${version}";
 
   src = fetchgit {
     url = "https://github.com/GilesBathgate/RapCAD.git";
     rev = "refs/tags/v${version}";
-    sha256 = "37c7107dc4fcf8942a4ad35377c4e42e6aedfa35296e5fcf8d84882ae35087c7";
+    sha256 = "15c18jvgbwyrfhv7r35ih0gzx35vjlsbi984h1sckgh2z17hjq8l";
   };
   
-  buildInputs = [qt4 cgal boost boost.lib gmp mpfr flex bison dxflib];
+  buildInputs = [qt5 cgal boost gmp mpfr flex bison dxflib readline ];
 
   configurePhase = ''
     qmake;
diff --git a/pkgs/applications/graphics/sxiv/146.patch b/pkgs/applications/graphics/sxiv/146.patch
deleted file mode 100644
index ad1b030e1a46..000000000000
--- a/pkgs/applications/graphics/sxiv/146.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From b901236261dc717dc08ed10f63e2d5cd3f3031f8 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Bart=C5=82omiej=20Piotrowski?= <b@bpiotrowski.pl>
-Date: Tue, 27 May 2014 11:46:06 +0200
-Subject: [PATCH] Fix build with giflib >= 5.1.0.
-
----
- image.c | 4 ++++
- 1 file changed, 4 insertions(+)
-
-diff --git a/image.c b/image.c
-index e62a69f..7eec544 100644
---- a/image.c
-+++ b/image.c
-@@ -278,7 +278,11 @@ bool img_load_gif(img_t *img, const fileinfo_t *file)
- 		}
- 	} while (rec != TERMINATE_RECORD_TYPE);
- 
-+#if defined(GIFLIB_MAJOR) && GIFLIB_MAJOR >= 5 && GIFLIB_MINOR >= 1
-+	DGifCloseFile(gif, NULL);
-+#else
- 	DGifCloseFile(gif);
-+#endif
- 
- 	if (err && !file->loaded)
- 		warn("corrupted gif file: %s", file->name);
diff --git a/pkgs/applications/graphics/sxiv/default.nix b/pkgs/applications/graphics/sxiv/default.nix
index b62bbb57f642..e7e52f91b499 100644
--- a/pkgs/applications/graphics/sxiv/default.nix
+++ b/pkgs/applications/graphics/sxiv/default.nix
@@ -1,20 +1,21 @@
-{ stdenv, fetchurl, libX11, imlib2, giflib }:
+{ stdenv, fetchgit, libX11, imlib2, giflib, libexif }:
 
 stdenv.mkDerivation rec {
-  name = "sxiv-1.2";
+  version = "1.3-git";
+  name = "sxiv-${version}";
 
-  src = fetchurl {
-    url = "https://github.com/muennich/sxiv/archive/v1.2.tar.gz";
-    name = "${name}.tar.gz";
-    sha256 = "1wwcxy2adc67xd8x6c2sayy1cjcwrv2lvv1iwln7y4w992gbcxmc";
+  src = fetchgit {
+    url = "git@github.com:muennich/sxiv.git";
+    rev = "f55d9f4283f7133ab5a137fc04ee19d1df62fafb";
+    sha256 = "85f734f40fdc837514b72694de12bac92fe130286fa6f1dc374e94d575ca8280";
   };
 
-  patches = [ ./146.patch ];
-
-  buildInputs = [ libX11 imlib2 giflib ];
-
-  prePatch = ''sed -i "s@/usr/local@$out@" Makefile'';
+  postUnpack = ''
+    substituteInPlace $sourceRoot/Makefile \
+      --replace /usr/local $out
+  '';
 
+  buildInputs = [ libX11 imlib2 giflib libexif ];
   meta = {
     description = "Simple X Image Viewer";
     homepage = "https://github.com/muennich/sxiv";
diff --git a/pkgs/applications/graphics/synfigstudio/default.nix b/pkgs/applications/graphics/synfigstudio/default.nix
index 59ca7b7374d4..6af51e817785 100644
--- a/pkgs/applications/graphics/synfigstudio/default.nix
+++ b/pkgs/applications/graphics/synfigstudio/default.nix
@@ -4,14 +4,14 @@
 }:
 
 let
-  version = "0.64.1";
+  version = "0.64.2";
 
   ETL = stdenv.mkDerivation rec {
     name = "ETL-0.04.17";
 
     src = fetchurl {
        url = "mirror://sourceforge/synfig/${name}.tar.gz";
-       sha256 = "13kpiswgcpsif9fwcplqr0405aqavqn390cjnivkn3pxv0d2q8iy";
+       sha256 = "1i2m31y5hdwr365z3zmfh5p3zm4ga4l4yqrl1qrmjryqqzkw200l";
     };
   };
 
@@ -20,32 +20,40 @@ let
 
     src = fetchurl {
        url = "mirror://sourceforge/synfig/synfig-${version}.tar.gz";
-       sha256 = "1b4ksxnqbaq4rxlvasmrvk7z4jvjbsg4ns3cns2qcnz64dyvbgda";
+       sha256 = "04mx321z929ngl65hfc1hv5jw37wqbh8y2avmpvajagvn6lp3zdl";
     };
 
+    configureFlags = [
+      "--with-boost=${boost.dev}"
+      "--with-boost-libdir=${boost.lib}/lib"
+    ];
+
     patches = [ ./synfig-cstring.patch ];
 
     buildInputs = [
-      ETL boost boost.lib cairo gettext glibmm libsigcxx libtool libxmlxx pango
+      ETL boost cairo gettext glibmm libsigcxx libtool libxmlxx pango
       pkgconfig
     ];
-
-    configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ];
   };
 in
 stdenv.mkDerivation rec {
   name = "synfigstudio-${version}";
 
   src = fetchurl {
-       url = "mirror://sourceforge/synfig/${name}.tar.gz";
-       sha256 = "0nl6vpsn5dcjd5qhbrmd0j4mr3wddvymkg9414m77cdpz4l8b9v2";
-    };
+    url = "mirror://sourceforge/synfig/${name}.tar.gz";
+    sha256 = "13hw4z6yx70g4mnjmvmxkk7b1qzlwmqjhxflq5dd6cqdsmfw9mc7";
+  };
 
   buildInputs = [
     ETL boost cairo fontsConf gettext glibmm gtk gtkmm imagemagick intltool
     intltool libsigcxx libtool libxmlxx pkgconfig synfig
   ];
 
+  configureFlags = [
+    "--with-boost=${boost.dev}"
+    "--with-boost-libdir=${boost.lib}/lib"
+  ];
+
   preBuild = ''
     export FONTCONFIG_FILE=${fontsConf}
   '';
diff --git a/pkgs/applications/graphics/zgrviewer/default.nix b/pkgs/applications/graphics/zgrviewer/default.nix
index 4eefd5749b65..a6c299d1ab3a 100644
--- a/pkgs/applications/graphics/zgrviewer/default.nix
+++ b/pkgs/applications/graphics/zgrviewer/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, jre, unzip}:
 stdenv.mkDerivation rec {
-  version = "0.8.2";
+  version = "0.9.0";
   pname = "zgrviewer";
   name="${pname}-${version}";
   src = fetchurl {
     url = "mirror://sourceforge/zvtm/${pname}/${version}/${name}.zip";
-    sha256 = "a76b9865c1490a6cfc08911592a19c15fe5972bf58e017cb31db580146f069bb";
+    sha256 = "1yg2rck81sqqrgfi5kn6c1bz42dr7d0zqpcsdjhicssi1y159f23";
   };
   buildInputs = [jre unzip];
   buildPhase = "";
diff --git a/pkgs/applications/misc/bitcoin/default.nix b/pkgs/applications/misc/bitcoin/default.nix
index 242ee4e9c9f5..808984ad664d 100644
--- a/pkgs/applications/misc/bitcoin/default.nix
+++ b/pkgs/applications/misc/bitcoin/default.nix
@@ -23,10 +23,6 @@ stdenv.mkDerivation rec {
     cd bitcoin*
   '';
 
-  configureFlags = [
-    "--with-boost=${boost}"
-  ];
-
   preCheck = ''
     # At least one test requires writing in $HOME
     HOME=$TMPDIR
diff --git a/pkgs/applications/misc/bitcoin/dogecoin.nix b/pkgs/applications/misc/bitcoin/dogecoin.nix
index 7ace3c161c7b..21da32104d34 100644
--- a/pkgs/applications/misc/bitcoin/dogecoin.nix
+++ b/pkgs/applications/misc/bitcoin/dogecoin.nix
@@ -30,7 +30,6 @@ let
       ./autogen.sh \
       && ./configure --prefix=$out \
                      --with-incompatible-bdb \
-                     --with-boost-libdir=${boost}/lib \
                      ${ if withGui then "--with-gui" else "" }
     '';
 
diff --git a/pkgs/applications/misc/blender/default.nix b/pkgs/applications/misc/blender/default.nix
index 5b2c5776cf43..01f9b861bf27 100644
--- a/pkgs/applications/misc/blender/default.nix
+++ b/pkgs/applications/misc/blender/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ SDL boost boost.lib cmake ffmpeg gettext glew ilmbase libXi
+    [ SDL boost cmake ffmpeg gettext glew ilmbase libXi
       libjpeg libpng libsamplerate libsndfile libtiff mesa openal
       opencolorio openexr openimageio /* openjpeg */ python zlib fftw
     ]
diff --git a/pkgs/applications/misc/d4x/default.nix b/pkgs/applications/misc/d4x/default.nix
index d6ca3939d137..66fceec9a51b 100644
--- a/pkgs/applications/misc/d4x/default.nix
+++ b/pkgs/applications/misc/d4x/default.nix
@@ -10,10 +10,6 @@ stdenv.mkDerivation {
     sha256 = "1i1jj02bxynisqapv31481sz9jpfp3f023ky47spz1v1wlwbs13m";
   };
 
-  configurePhase = "./configure --prefix=\$out "
-    + " --with-boost-libdir=\$boost/lib"
-    + " --with-boost-includedir=\$boost/include";
-    
   buildInputs = [ gtk glib pkgconfig openssl boost ];
 
   meta = { 
diff --git a/pkgs/applications/misc/freicoin/default.nix b/pkgs/applications/misc/freicoin/default.nix
index 06ea5e9ad5cb..65265fc07a5a 100644
--- a/pkgs/applications/misc/freicoin/default.nix
+++ b/pkgs/applications/misc/freicoin/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
 
   # I think that openssl and zlib are required, but come through other
   # packages
-  buildInputs = [ db boost boost.lib gmp mpfr miniupnpc qt4 unzip ];
+  buildInputs = [ db boost gmp mpfr miniupnpc qt4 unzip ];
 
   configurePhase = "qmake";
 
diff --git a/pkgs/applications/misc/gnuradio/default.nix b/pkgs/applications/misc/gnuradio/default.nix
index db8595e1baa8..045d6f9f92ab 100644
--- a/pkgs/applications/misc/gnuradio/default.nix
+++ b/pkgs/applications/misc/gnuradio/default.nix
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [
-    cmake pkgconfig git boost boost.lib cppunit fftw python swig2 orc lxml qt4
+    cmake pkgconfig git boost cppunit fftw python swig2 orc lxml qt4
     qwt alsaLib SDL libusb1 uhd gsl makeWrapper
   ];
 
diff --git a/pkgs/applications/misc/kdeconnect/default.nix b/pkgs/applications/misc/kdeconnect/default.nix
index 663ce872e222..dcb83d7a79d6 100644
--- a/pkgs/applications/misc/kdeconnect/default.nix
+++ b/pkgs/applications/misc/kdeconnect/default.nix
@@ -1,15 +1,17 @@
-{ stdenv, fetchurl, gettext, kdelibs, libXtst, makeWrapper, qca2, qca2_ossl, qjson }:
+{ stdenv, fetchurl, gettext, kdelibs, libXtst, libfakekey, makeWrapper, pkgconfig, qca2, qca2_ossl
+, qjson
+}:
 
 stdenv.mkDerivation rec {
   name = "kdeconnect-${version}";
-  version = "0.7.2";
+  version = "0.7.3";
 
   src = fetchurl {
     url = "http://download.kde.org/unstable/kdeconnect/${version}/src/kdeconnect-kde-${version}.tar.xz";
-    sha256 = "1v7sicgy39n8pn7nzq9f7lkmwbcvavhy3b66agyhxwmyzz6mcd4g";
+    sha256 = "1vrr047bq5skxvibv5pb9ch9dxh005zmar017jzbyb9hilxr8kg4";
   };
 
-  buildInputs = [ gettext kdelibs libXtst makeWrapper qca2 qca2_ossl qjson ];
+  buildInputs = [ gettext kdelibs libXtst libfakekey makeWrapper pkgconfig qca2 qca2_ossl qjson ];
 
   postInstall = ''
     wrapProgram $out/lib/kde4/libexec/kdeconnectd --prefix QT_PLUGIN_PATH : ${qca2_ossl}/lib/qt4/plugins
diff --git a/pkgs/applications/misc/librecad/2.0.nix b/pkgs/applications/misc/librecad/2.0.nix
index 8b7a9a40c872..6cc775b72d39 100644
--- a/pkgs/applications/misc/librecad/2.0.nix
+++ b/pkgs/applications/misc/librecad/2.0.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation {
   '';
 
   configurePhase = ''
-    qmake librecad.pro PREFIX=$out MUPARSER_DIR=${muparser} BOOST_DIR=${boost}
+    qmake librecad.pro PREFIX=$out MUPARSER_DIR=${muparser} BOOST_DIR=${boost.dev}
   '';
 
   installPhase = ''
diff --git a/pkgs/applications/misc/monero/default.nix b/pkgs/applications/misc/monero/default.nix
index 52e8d20495b9..1fe5406384f8 100644
--- a/pkgs/applications/misc/monero/default.nix
+++ b/pkgs/applications/misc/monero/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
     sha256 = "0bbhqjjzh922aymjqrnl2hd3r8x6p7x5aa5jidv3l4d77drhlgzy";
   };
 
-  buildInputs = [ cmake boost boost.lib ];
+  buildInputs = [ cmake boost ];
 
   # these tests take a long time and don't
   # always complete in the build environment
diff --git a/pkgs/applications/misc/namecoin/default.nix b/pkgs/applications/misc/namecoin/default.nix
index 94ee63fe2de2..d9e09923c3be 100644
--- a/pkgs/applications/misc/namecoin/default.nix
+++ b/pkgs/applications/misc/namecoin/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   # Don't build with miniupnpc due to namecoin using a different verison that
   # ships with NixOS and it is API incompatible.
-  buildInputs = [ db4 boost boost.lib openssl unzip ];
+  buildInputs = [ db4 boost openssl unzip ];
 
   patchPhase = ''
     sed -e 's/-Wl,-Bstatic//g' -e 's/-l gthread-2.0//g' -e 's/-l z//g' -i src/Makefile
diff --git a/pkgs/applications/misc/namecoin/qt.nix b/pkgs/applications/misc/namecoin/qt.nix
index 6b63bf7ca348..2a83a4d11d6f 100644
--- a/pkgs/applications/misc/namecoin/qt.nix
+++ b/pkgs/applications/misc/namecoin/qt.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
 
   # Don't build with miniupnpc due to namecoin using a different verison that
   # ships with NixOS and it is API incompatible.
-  buildInputs = [ db4 boost boost.lib openssl unzip qt4 ];
+  buildInputs = [ db4 boost openssl unzip qt4 ];
 
   configurePhase = ''
     qmake USE_UPNP=-
diff --git a/pkgs/applications/misc/twmn/default.nix b/pkgs/applications/misc/twmn/default.nix
index e144d12f762e..65c2ccb5ff0b 100644
--- a/pkgs/applications/misc/twmn/default.nix
+++ b/pkgs/applications/misc/twmn/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1jd2y0ydcpjdmjbx77lw35710sqfwbgyrnpv66mi3gwvrbyiwpf3";
   };
 
-  buildInputs = [ qt4 pkgconfig boost boost.lib ];
+  buildInputs = [ qt4 pkgconfig boost ];
   propagatedBuildInputs = [ dbus ];
 
   configurePhase = "qmake";
diff --git a/pkgs/applications/networking/browsers/firefox-bin/default.nix b/pkgs/applications/networking/browsers/firefox-bin/default.nix
index ecf8dbc0fc61..7e48eb83653d 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/default.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/default.nix
@@ -1,8 +1,3 @@
-# This file is generated from generate_nix.rb. DO NOT EDIT.
-# Execute the following command in a temporary directory to update the file.
-#
-# ruby generate_nix.rb > default.nix
-
 { stdenv, fetchurl, config
 , alsaLib
 , atk
@@ -21,7 +16,10 @@
 , gtk
 , libX11
 , libXScrnSaver
+, libXcomposite
+, libXdamage
 , libXext
+, libXfixes
 , libXinerama
 , libXrender
 , libXt
@@ -39,191 +37,10 @@
 
 assert stdenv.isLinux;
 
-let
-  version = "32.0.3";
-  sources = [
-    { locale = "ach"; arch = "linux-i686"; sha256 = "fd22fab9da5ba843876e0daf7db5069e3898a8bd548f8b324169914c88c02a10"; }
-    { locale = "ach"; arch = "linux-x86_64"; sha256 = "221028e98d8cb1cb330da4d2707c7cf98d2ae0066081f0b505d6cc4fa8fd4b30"; }
-    { locale = "af"; arch = "linux-i686"; sha256 = "37c93da084d25bd47c6aaf5389846ba4ac1e68a8989c03890b69142a46a2dddc"; }
-    { locale = "af"; arch = "linux-x86_64"; sha256 = "91dc95820faca47b031a8685a12e67d2f0b7f2cc9be5ff40f316bcf4c4110eee"; }
-    { locale = "an"; arch = "linux-i686"; sha256 = "c1251a6eb097cfc2bfa1fb137bcfcfbea333d457d57de3dce40ca60b96b07a53"; }
-    { locale = "an"; arch = "linux-x86_64"; sha256 = "fe010c04615c743f0500f9066bfab2e53d799074cbbd17c458b072ee741547f6"; }
-    { locale = "ar"; arch = "linux-i686"; sha256 = "e3482b3f6629c3addba28f86496c6608823b0a462ebca259bc9acc9ccadd07f3"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha256 = "d2ba7625730d461d5f870ad4151991071ed36f141c65872d2e9493108d495603"; }
-    { locale = "as"; arch = "linux-i686"; sha256 = "7f44156bd7087d5ddb46f8ecbcf2d7468b32cca7ed7ac88989e604b9853d603b"; }
-    { locale = "as"; arch = "linux-x86_64"; sha256 = "a189cb96dedc9943362eaa70e851c64e0115c6c526d9d38a38ce2d79d80dea56"; }
-    { locale = "ast"; arch = "linux-i686"; sha256 = "5d62d0d12f4cd678567b470a1b6d94ea5889a5c6530a5d3d0b4d07c04bae1f18"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha256 = "2e6f1caf2432ae2e6b6b3125449f7dcca1e2a3658ce267a0320aa449934260d8"; }
-    { locale = "be"; arch = "linux-i686"; sha256 = "d41d7abad29170d7d5df953bf9f3f22c56df8e85ddb4ba657cc0cbf357cdef0f"; }
-    { locale = "be"; arch = "linux-x86_64"; sha256 = "c899602dcf3ca72c657cc30ea54f986f44943ea9583da1dd6d48ebfe4489b7be"; }
-    { locale = "bg"; arch = "linux-i686"; sha256 = "e4ed4c432b3f399a2f7aa93ae62ae1ffadd8e4758c44f359a0faa401c014a3da"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha256 = "138dc4afa256ca1a6f50ea250df5a032c69020f629e2b91843947e73f8e665c9"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha256 = "30f450b36b71431f87e016c09ab0e26f8ed72ee7a0cede0689be13d8b61a882c"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "ad320fef3271f5c6955404847552d11800ca8e8d7821cda53eb3311b6014281f"; }
-    { locale = "bn-IN"; arch = "linux-i686"; sha256 = "1e4b1b3d06cbda0aacb1d971b9a70f5648f05e9ad225de87739baef602b3d58f"; }
-    { locale = "bn-IN"; arch = "linux-x86_64"; sha256 = "51264d05eb58cec598a726b8e29e583355431c429a6f9eeddc16360ad0ef0dd5"; }
-    { locale = "br"; arch = "linux-i686"; sha256 = "e0e661d835297bb895ee3d2887fb4321b9c3c5af73edf5d36d365b254b0dc731"; }
-    { locale = "br"; arch = "linux-x86_64"; sha256 = "94c8e2b56ec784f3e2912a36bece9866c20e419069591517477b67156ad65f47"; }
-    { locale = "bs"; arch = "linux-i686"; sha256 = "ea2950b6c81b6cb108b518320c0e53406c972b6d46944fec39f92c10722be7ca"; }
-    { locale = "bs"; arch = "linux-x86_64"; sha256 = "4ceba96a76ec7631dc524d3e3b56c5994967b7ef227f38d3e3aa435c131f561a"; }
-    { locale = "ca"; arch = "linux-i686"; sha256 = "eb68c1f8e99ab00ddb9861ece4f1d17ca07c7e77fd4c2d4f4ff233f6f0018ba4"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha256 = "17fe82eeeeb6c385010980984b04a8e71d3770a0d36d83e26786a5884aed7c05"; }
-    { locale = "cs"; arch = "linux-i686"; sha256 = "69e2a0769284464a95db122fa97f1dfb268b02b754fe6a4842683fd4c94d9a13"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha256 = "bebaef3126c14b4d23c024176170aabb090463cae1a1b72b6b498ab3720bb9cf"; }
-    { locale = "csb"; arch = "linux-i686"; sha256 = "9ac7be93d0c3a72460ee3fea75621008bee5b2e85b78796f02eded8239562d81"; }
-    { locale = "csb"; arch = "linux-x86_64"; sha256 = "1af41e62a6c9ee47dad2d031fd7dcc0ff8b773ac7a912e6888f068e533972dd4"; }
-    { locale = "cy"; arch = "linux-i686"; sha256 = "339ff34b6b6d79db48b83ec9cc34fcb853652795e648c82845bbccf910b4286f"; }
-    { locale = "cy"; arch = "linux-x86_64"; sha256 = "686e466692bda17671d2ebf3683d03671c8d063c6a6008f3b27455656a584c95"; }
-    { locale = "da"; arch = "linux-i686"; sha256 = "67f0ee2e479c49853929cfb1b7fefe95d25d563d67f88f1560b21abf60cd67d6"; }
-    { locale = "da"; arch = "linux-x86_64"; sha256 = "d9f7cbbaa576e501edc9c03df922f708562ef1d3f84eefe010b8138b23399e40"; }
-    { locale = "de"; arch = "linux-i686"; sha256 = "a294f585d7f8247ecffd6c71beff75ea07f1ffb1af17830aa54904b6e9c4a71c"; }
-    { locale = "de"; arch = "linux-x86_64"; sha256 = "6dd118ebe633c66ebc7ef0bf71dcc4d5c2ce42552a4b981b74442e184fa8f3a9"; }
-    { locale = "dsb"; arch = "linux-i686"; sha256 = "7b989e4a804e366b7dc4fcd500968851e0978b2cd0f9da95e6f6504b9ccff7de"; }
-    { locale = "dsb"; arch = "linux-x86_64"; sha256 = "aa41149f4f2bc6020980920bdf85d57157ad3cee7dd7be0fa3328ecbb11007bf"; }
-    { locale = "el"; arch = "linux-i686"; sha256 = "f1b5bc91e4e34d6f17f3e4ed65fc3ab71e066b41df3ec0ff8c1156a4a51d7fb9"; }
-    { locale = "el"; arch = "linux-x86_64"; sha256 = "fb602fcc45c21c26aa7d15924182d9158064d43c14c44c62786427eaf51d4b1f"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha256 = "ad269f2192a1d635b8b930aa58a0303a544221e53b38aa8c464c81d807e28477"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "31ac6558c5a1deb512e937a52ca48d2183881de53685ca0dfaa63dc4495e0a73"; }
-    { locale = "en-US"; arch = "linux-i686"; sha256 = "265ae5df1a5f2edeae8d08bdcde45df0920f6fb0ad70385371d06ff890017982"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha256 = "1a917f88835d8796c52a52ed5c14a9ea71e595de8515ced1ca1356995f529bd6"; }
-    { locale = "en-ZA"; arch = "linux-i686"; sha256 = "e345f37777a2d7fc763c24c7fb4fe3c6a99c2310066ad405c375b8af069eca84"; }
-    { locale = "en-ZA"; arch = "linux-x86_64"; sha256 = "d86bf38fb667938852531f081caefe10baba79dc35ff737fa468744911f6968b"; }
-    { locale = "eo"; arch = "linux-i686"; sha256 = "7b4069d26d4abfdd9878192fc7c5a54686687c401425205bce064d9720ae6f7c"; }
-    { locale = "eo"; arch = "linux-x86_64"; sha256 = "b1a1b3b8c0c72856e5bb6058dd0ea2dabf2d9dee084f0355a248bee253838b29"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha256 = "5ef56bebe60802f449bcbd1e53ae6726c5109c559a8a9707269de2a31481764a"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "65f909b7f1e67cfcebbc8cab1377b967095b5a7f9650c7fa861544bbc874b59f"; }
-    { locale = "es-CL"; arch = "linux-i686"; sha256 = "0b7499173c0f44ccc4cecb49e1801bb596d7a027c5ee39678252530672785906"; }
-    { locale = "es-CL"; arch = "linux-x86_64"; sha256 = "69573ffa581de80f21c0201083febcc7de5549d9e567f02227f7d4567c1a97f8"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha256 = "640bc3111816383cb69e59039289737ca5d16ec2f5238b694348e9df1db794a0"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "fca7e225eac47f200c3cd01ee617a1fc6bbd728eddba30bb4583eb486155ab47"; }
-    { locale = "es-MX"; arch = "linux-i686"; sha256 = "32342a144805a3c4e6bab5de0411116862d0b8276befa6f8689eca5d9da01860"; }
-    { locale = "es-MX"; arch = "linux-x86_64"; sha256 = "cc189b4d4abdd9e90fd0dbfcc5b683e2a717f1f41a7930d9c0b6c405de97a9b3"; }
-    { locale = "et"; arch = "linux-i686"; sha256 = "b203934a8292393d84f389ca3a13d25e0c9602a10faf60804b435cf45f2fd691"; }
-    { locale = "et"; arch = "linux-x86_64"; sha256 = "4384025c813efa759c2dd62ed735d662f26d1037e95e892050987d4b2f602a45"; }
-    { locale = "eu"; arch = "linux-i686"; sha256 = "179fb3acef15d262a9d2f7347a32f1d99bbcd5048c5cab5b69aaccb35afe82f2"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha256 = "cec3a33bc9950f97f14fc6493158e095e7a1660e4d104c2ff23ce655813d28cc"; }
-    { locale = "fa"; arch = "linux-i686"; sha256 = "7ce8f6af63ad6d683e5e70e9b077c2452a7c0c040bad83efceab860e3d41d288"; }
-    { locale = "fa"; arch = "linux-x86_64"; sha256 = "14f7b3f7c7eff44db26c3b55ae85b8625354f1962315fd40e3df4199b067d303"; }
-    { locale = "ff"; arch = "linux-i686"; sha256 = "f4c9eb89160a5d4bf815715860fc4bc6bc7954e544182e60b204a031f83be5e0"; }
-    { locale = "ff"; arch = "linux-x86_64"; sha256 = "b774f005bb5dee44eb0974834b42441b47a68f733ef22446b2547aef898b0c02"; }
-    { locale = "fi"; arch = "linux-i686"; sha256 = "873cf1d866f5db419549a9c39fad9524599a737d80c6568d7a5c9c3739d36cd4"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha256 = "29f179920b198403f983b11bbd3f1b2d2cb83c65f5f8edcff63dd891d50c413a"; }
-    { locale = "fr"; arch = "linux-i686"; sha256 = "ade608f8965144177d656d33ff4fa2f8fbd8f54861fca68ac74abab9ca085ad5"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha256 = "9bfade44971633bca8b12d6e2e05de6d20ec55e368d78da49e44a0131e9d94bb"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha256 = "6124308765f3456ac066dc734d245c455168d66ed59a8a65edc1b59ff1130169"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "9a60afeb858c1e48e21e112f772bc2efd3ef2891b51d0241384658905b140709"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha256 = "2de086f287e86d29579896e8fdd9a4d43ba5ed49b5042e4b5c71ff6380d21467"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "4f2cb11d743ac7d6fb5bc319c940729aa81d9ac97545cf5c6096fcd0d2e7de69"; }
-    { locale = "gd"; arch = "linux-i686"; sha256 = "c18e5614d73f79df017b1cdedb6949e907ffcdc4152ddfbd56f79242a742f13a"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha256 = "4b64e007698b2433ead4b14b87c06fd1682ebe7e90ee881d310a8cdab2cd4d13"; }
-    { locale = "gl"; arch = "linux-i686"; sha256 = "b319a40c4fa9c81533f431e95ad8f33d365aa799d3dccde5188beb3442c8422d"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha256 = "04a9103e56982e4529c361647ccef527cfbbbb4e88a96a708c0665ee04accd44"; }
-    { locale = "gu-IN"; arch = "linux-i686"; sha256 = "a15bd410f9bdfde48438db95c44d91472f5567bd41c529b13a7b4d057f97a6b3"; }
-    { locale = "gu-IN"; arch = "linux-x86_64"; sha256 = "8046ecbabf700872e4e8cf5d1a1d3df53f984a00415e49cb1d21bd507533f4c9"; }
-    { locale = "he"; arch = "linux-i686"; sha256 = "8369eeb403ef55e61263eafb61e8265f130d5fe4dc277b5e68f6efb65edf6702"; }
-    { locale = "he"; arch = "linux-x86_64"; sha256 = "a602a9944685ce688a002ea87178e1231170b78ba6ee911a3c7effa41768ecb1"; }
-    { locale = "hi-IN"; arch = "linux-i686"; sha256 = "6eb2e8fa05bf7470f1be9756a5e529e5949f3e0796a0c663ee44c7264846fd3b"; }
-    { locale = "hi-IN"; arch = "linux-x86_64"; sha256 = "7e39439801361ab9051941323987364678ef9b1fc8e765bfad2d39d836b7bf85"; }
-    { locale = "hr"; arch = "linux-i686"; sha256 = "84cabd389757c61cea75ffc642a4b52e544e841a124066701eb071d2d88c15ed"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha256 = "0bc123e9a5190d155727971c2bed078a5e6b857daa22f2f4bcee4aee76e07bbc"; }
-    { locale = "hsb"; arch = "linux-i686"; sha256 = "7a5d5a4a7a936defd6c3ea3b04550e39398428f90722d521490b700133964f82"; }
-    { locale = "hsb"; arch = "linux-x86_64"; sha256 = "545ec5865ce941ca3bc635032cd65215111d56b3f0d68814efdd8ecacaab1d1d"; }
-    { locale = "hu"; arch = "linux-i686"; sha256 = "b540eadbfa2bf5232049e30167ccf16249786f612ec152c14999e660eceb6497"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha256 = "4f64d672481bfe88f40fcf944d98fafceae18372c1e2373bba8172877d7555b8"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha256 = "f5ace133a64745ecf564996ebd6be55ce3ee0ee5be2ed8fe6c66414833d1e479"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "e949bffb9180b0ccdc6794b99b3897f9f30dbea84d9d218cd68477634eb58b25"; }
-    { locale = "id"; arch = "linux-i686"; sha256 = "73f2d64106a3404f6edcc66ab59091ffedb0fcd0c7f475becebebdfc4df41e1c"; }
-    { locale = "id"; arch = "linux-x86_64"; sha256 = "20d9193d9fc95a3e040220373c216913ca0099989d665b516b1e5de1cd7bf05b"; }
-    { locale = "is"; arch = "linux-i686"; sha256 = "d6bdeb739b5db8c8a25239963bf2f0d096b76f5914f8f4f4a4843e611beaad9f"; }
-    { locale = "is"; arch = "linux-x86_64"; sha256 = "300ccec13085aee1b011dd0058c279a31981b3e91280440672e09c71c4dd0eda"; }
-    { locale = "it"; arch = "linux-i686"; sha256 = "1e02459ec7e62ca3038018e6c88f410e53b0d7b3d1b6cb94d74ad0218a54a948"; }
-    { locale = "it"; arch = "linux-x86_64"; sha256 = "ba8e8a9ab5f391a5560b7bfd41dd853c6b52c2ff59ce8424f96236263985029d"; }
-    { locale = "ja"; arch = "linux-i686"; sha256 = "681589c9748b0c7f78ba5c4afa0f254af6f92a0c0cfb504df6b29f94a917f8bb"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha256 = "7c6447f4dd823e1517ce12ad0b295b53a22d3a0855e1660fac9563a91f6999c2"; }
-    { locale = "kk"; arch = "linux-i686"; sha256 = "0303c9b812115d3ada0d8fdfcf8e77143f4239440935bfaad5340d33a3270b8b"; }
-    { locale = "kk"; arch = "linux-x86_64"; sha256 = "168b2ae2ac9168ae674d8649840fd7cc93d95325c7c0d60d7251239b776e5886"; }
-    { locale = "km"; arch = "linux-i686"; sha256 = "04ba6e90f883e52809e51202356e4abda62ae40bb0ed225965ec8eeca333457d"; }
-    { locale = "km"; arch = "linux-x86_64"; sha256 = "4903ca63d1ffdafbb7ae36eb7221992101a8a013928e25a820aac51022cdbade"; }
-    { locale = "kn"; arch = "linux-i686"; sha256 = "2fc54219aa69f963c86e47fc2cafd78bfad2bbd2a11d2fb947786eaa30cfe255"; }
-    { locale = "kn"; arch = "linux-x86_64"; sha256 = "8fd8e3de5ba9bf2f408da21bdedc1d2baf269fb33251d38fc84ec8b9c2fc86a8"; }
-    { locale = "ko"; arch = "linux-i686"; sha256 = "eba2c630a59006bad5ff822409c18008e46a327e2903d88461dc88a54f573baa"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha256 = "baaafa60c8101ea2dfab30149e7ac6b953a63fb7c835e6aa1488349ce8a98384"; }
-    { locale = "ku"; arch = "linux-i686"; sha256 = "b1333ed8afb9cd20b0e24d25e5747f466050acf1fc4ae2924df1bb345ce49f90"; }
-    { locale = "ku"; arch = "linux-x86_64"; sha256 = "dd87578c93884388871680ef66f1d37e78f78939e7182a7d3a41fd8287afcdb8"; }
-    { locale = "lij"; arch = "linux-i686"; sha256 = "6bdab68412b7d08da2023da4346eeac231bbda2de36d7225b7f7bdd23a36dbd6"; }
-    { locale = "lij"; arch = "linux-x86_64"; sha256 = "d31d69421e74bf089e74f70e5c595284a8b60ce153c7c3ffd83e808adb1bf371"; }
-    { locale = "lt"; arch = "linux-i686"; sha256 = "4e15475eed19edf5080695da8c9dc94d3bc28e064a30065a1adeb6ea11adcce9"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha256 = "f5b94a979a1863d068e4f35f71476677febe23de0de2dd803f44e57d2a196c55"; }
-    { locale = "lv"; arch = "linux-i686"; sha256 = "177f771d821f7501d906fea0bec54d6064e36ce74dc5e17596cdbc460b7c0115"; }
-    { locale = "lv"; arch = "linux-x86_64"; sha256 = "a958f13c3be77bdd1ea10edb5a453f54aaf6b2b7d00981762ea946abb2aa0a7c"; }
-    { locale = "mai"; arch = "linux-i686"; sha256 = "32ee3fdb74c2023952071679cfc271ef548b0ba278619f0d2c2f19596c1b5fa1"; }
-    { locale = "mai"; arch = "linux-x86_64"; sha256 = "c4bb89d5c9b16a4814a628ee31f8628cf287864db44d55ba11321d8203a1fd1c"; }
-    { locale = "mk"; arch = "linux-i686"; sha256 = "b7ef5bee8ed38ba31ee2e2c1ab010e3a385b97096fff0120bb279e82b6220464"; }
-    { locale = "mk"; arch = "linux-x86_64"; sha256 = "edf82adb52759c0d60f4bbf23ba1e0b2f7bb47475c80621a508e8a46c6221d06"; }
-    { locale = "ml"; arch = "linux-i686"; sha256 = "265e68ed9ca02987ca9bc165b4fb69217e4e7aaf73d7ceb83eb0a3d472a3cbed"; }
-    { locale = "ml"; arch = "linux-x86_64"; sha256 = "948eae17ae44b03c01124243f2246abe98fa6fdd17e9f174a8b1387f87994ff4"; }
-    { locale = "mr"; arch = "linux-i686"; sha256 = "d3941188b754ec8219b0682eb8c3b531debbeccc0a5738a6304bb18075e473a6"; }
-    { locale = "mr"; arch = "linux-x86_64"; sha256 = "b40f07132f883a703caefc275ad4a3a6d65f0e5535067595ddd9e7ff604ca315"; }
-    { locale = "ms"; arch = "linux-i686"; sha256 = "217ae6fba0bb782e84bfc7d7658971c72a8922c4b8ae32abcacd8548c3b865ea"; }
-    { locale = "ms"; arch = "linux-x86_64"; sha256 = "74d4a6123c40d92db7690e518d6943c916ee5a8ad266c94bdb8edc0e31f7e744"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha256 = "cc66fba1d389994b079962e78a7aeb2e4df8c3eea785ada286983a12329c2699"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "20161c2e0fdfdc65625d31d6ec1fbbdf2b88281e44b9dcbc9c4e5a07bf03d105"; }
-    { locale = "nl"; arch = "linux-i686"; sha256 = "a8b86126c00e2fefe05a3783e03c7f3f6ca9575180b3b275b1dbb85c68cb126a"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha256 = "61fea91996c56b7279dc88714567b3e63f69d1b56a2922ea9886b74a69045d53"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha256 = "594e4c7393b6692bcbff4a732cb22687207cdbbfeb1d66bd10d7784fa60b1fd1"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "ae78c76d203532c34023f06a6c7a3f26e864a1b95aca358b7c680e275b250c8a"; }
-    { locale = "or"; arch = "linux-i686"; sha256 = "b26642112413d3c53c6275a8b2bbaf162f4bdbaf9002ad4479b807e3447b2abe"; }
-    { locale = "or"; arch = "linux-x86_64"; sha256 = "d212b39c68a7cf8619c946ff7e94c2081ba2a9fca3ed599870167477a887fe87"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha256 = "e28e4bec4e4f9d151bdc1e1ffbd42266052fbd81a479c70196a614f825e42f9f"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "4874f5407d8040a5e447d5a22a8d9e433a6bda273bc813654d95e0b9abb02af5"; }
-    { locale = "pl"; arch = "linux-i686"; sha256 = "f738a7209e3da17fbc2c955148ef1e0ec08878acf374b9bff2ae6cb0b3b50138"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha256 = "b78325bc9ab80c176ba266cc6c46933f78ba69e0da44e6526e7b433336534d11"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha256 = "dc1564eeb496b1b8584338879d26cfbe4e2191eef204c80ee6a2f9c2d4722426"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "48c8bb9a52ae80c74f6fe379b28cf072d8275158326e752c776c27409578fcfe"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha256 = "0e74d57776d68d3d35e26b5fabdb66016a00d8bf22c6ec458ffea2e2e233227d"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "61d5fbc72f928e59cdf93ef08684e4d598b154638bf88cdace7d274874efa040"; }
-    { locale = "rm"; arch = "linux-i686"; sha256 = "1baa7d0d61394c3108ff7d91798fa917e63a1a0943785f94697619cbb684148a"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha256 = "5cec6c5c013997f1ebade4d139d055b1df3fb5ed75dd41e335535dbfc6bc9359"; }
-    { locale = "ro"; arch = "linux-i686"; sha256 = "78e4f327a928aed2342d845c9e8e4458eca8f77898aa2a7dd5f7ca55fc61a62b"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha256 = "320c3dbd605c650b378ed8e93e8b2518039c8efab27471012a498dbc51d1cac3"; }
-    { locale = "ru"; arch = "linux-i686"; sha256 = "3fc9d98a86e63717dfeaa58ece0dbbb1a0523801c56c056ff74a60491a27fcb9"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha256 = "1d95e946fbb109380ad2e2fd5986f12211241113e218ae7ecb43e009b7aa5a37"; }
-    { locale = "si"; arch = "linux-i686"; sha256 = "12d8e83cc703c00da6054bd32bdf39993b588cbb5374880a3961d5ab476b6d29"; }
-    { locale = "si"; arch = "linux-x86_64"; sha256 = "4ce710ccda7b56a46a8fea2f42c499aa2296377a0979f76f19563caa85f4517e"; }
-    { locale = "sk"; arch = "linux-i686"; sha256 = "86b726c25de378d53a8220681468fec88a7d525288b02eb9b700b12f87739ffc"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha256 = "bf8f6bb1b5fd7c82ca14f1802e7914e10b981c04d3ca89df983fe07d7df5b88c"; }
-    { locale = "sl"; arch = "linux-i686"; sha256 = "39aaca3b7a559346aa418fd4abb1f2a44dc71901050a212178e3cbc7b870e6b1"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha256 = "85f5f097c7b9a07bbcb97caa9c8e5cfd16d3636ae17b41ec32e91d1238134db9"; }
-    { locale = "son"; arch = "linux-i686"; sha256 = "2b5a33079e835afdf0246f8b4dec1db92fcc861636a75333c75f6d5d40c14201"; }
-    { locale = "son"; arch = "linux-x86_64"; sha256 = "4d91324e9b7f88db822216440d5420b0c8b0898bdf77699a6b0fde1ab4db2f0c"; }
-    { locale = "sq"; arch = "linux-i686"; sha256 = "e3e0194f5e72904b056be4b3e941c015d5af0d9f1a349fa39492a6cefaf5236d"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha256 = "45767fa6b57fb21399d4850fa88a3435e3fe0bb679de56fc1c28767eca235ba5"; }
-    { locale = "sr"; arch = "linux-i686"; sha256 = "0f7addd1581d8552b874651bc8dde5b2fe4d4b814c694272674fb5f7732000be"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha256 = "7b68d38004216c86e3eb648fa78b06da88a703d68343f723f8e9d577d4c1224c"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha256 = "5f76d137052ff04da12e80f08a34a09c6ccd92d9ddf2f6efcf193940a948f86c"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "1aac59a70ac58bfe1926e87a850d7a5a2783332cfd49d9df1ad1fd3e276a9a29"; }
-    { locale = "ta"; arch = "linux-i686"; sha256 = "2716d50134514693b5d6edafc7c127c708b9973c39d42823987061547e4c18be"; }
-    { locale = "ta"; arch = "linux-x86_64"; sha256 = "9c9310ad313227cab38d8cd9ff6c4d9c15037bd39777a7fbd4b23ca71a1ac48e"; }
-    { locale = "te"; arch = "linux-i686"; sha256 = "ac7d78ab767b13810ef7f313c2ba92067756082667db0e256e916f1f0be8c9fa"; }
-    { locale = "te"; arch = "linux-x86_64"; sha256 = "cd6fc0d115fb67272f205a3595c82107dc8b20ce0696a2de8da6f82a7ae07112"; }
-    { locale = "th"; arch = "linux-i686"; sha256 = "2d17b346aa296b79e880b83185d3608de4369de62e2e0ce2cfb8d2f3dd6ee97f"; }
-    { locale = "th"; arch = "linux-x86_64"; sha256 = "331f2c59b2659c65c6899455e9ce55cd54b8debf4d17a60a8d6e76e2198080b6"; }
-    { locale = "tr"; arch = "linux-i686"; sha256 = "491550857b3b2b3643f1798a9e871492177cdddfd17366057d147e1fbe1ca40e"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha256 = "aa8677def660eb8a3d258e7e7da05972e84be96807c8c7912f15bde05d749af7"; }
-    { locale = "uk"; arch = "linux-i686"; sha256 = "9ebb7a0997353bc84b5d48ffae1631d30a70ecc3ed21010fc8499513e3404651"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha256 = "d686139d6622d6867cb9af95ec0c5e79866974d12468722d40c0ede104897034"; }
-    { locale = "vi"; arch = "linux-i686"; sha256 = "e56c74b2f6752667f9448c081114065aa0d1c63979cc4bbbf1965a7acc62133e"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha256 = "41c79d4bcca7c28d02108129de1c8c93f5666bbaf651faef1eb9b424d4e8cb5d"; }
-    { locale = "xh"; arch = "linux-i686"; sha256 = "89f30d4950fec07c9f1df426c1e5e9f72ab15efa5db93d243418909369d69f03"; }
-    { locale = "xh"; arch = "linux-x86_64"; sha256 = "f97ea6169a6bdd4e48a0aee72ca709ebc1e2032a406d3dde6d8a6719b8429ee7"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha256 = "9ad1e75c6ca5f38bb565e747cec2901ad567efd69efa56328b912e37239f5b9e"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "400baea252b6f92051e7b054bdb4a4827571036ff7def10cbd841cfe2eaea60a"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha256 = "2e7bc62dd7c6c41c5feaf8cf9131bbbb0f0a3403870e57066a98147275b120fd"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "f2d620e5f4e8baac689557dc34ce582aaf36bcf4253c4f7cb00db52e1e1db98e"; }
-    { locale = "zu"; arch = "linux-i686"; sha256 = "c9915d4f1b637934ba22dbb81aa2f711417fd5600c6efe25781f11bbd0c707cc"; }
-    { locale = "zu"; arch = "linux-x86_64"; sha256 = "8fa84e20fb1e21947a8f727bb881d8249bf384944ee9693314cb39715547da5d"; }
-  ];
+# imports `version` and `sources`
+with (import ./sources.nix);
 
+let
   arch = if stdenv.system == "i686-linux"
     then "linux-i686"
     else "linux-x86_64";
@@ -247,7 +64,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/${version}/${source.arch}/${source.locale}/firefox-${version}.tar.bz2";
-    inherit (source) sha256;
+    inherit (source) sha1;
   };
 
   phases = "unpackPhase installPhase";
@@ -271,7 +88,10 @@ stdenv.mkDerivation {
       gtk
       libX11
       libXScrnSaver
+      libXcomposite
+      libXdamage
       libXext
+      libXfixes
       libXinerama
       libXrender
       libXt
diff --git a/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb b/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb
deleted file mode 100644
index 7936741cb3e7..000000000000
--- a/pkgs/applications/networking/browsers/firefox-bin/generate_nix.rb
+++ /dev/null
@@ -1,219 +0,0 @@
-# TODO share code with thunderbird-bin/generate_nix.rb
-
-version = if ARGV.empty?
-            "latest"
-          else
-            ARGV[0]
-          end
-
-base_path = "download-installer.cdn.mozilla.net/pub/firefox/releases"
-
-arches = ["linux-i686", "linux-x86_64"]
-
-arches.each do |arch|
-  system("wget", "--recursive", "--continue", "--no-parent", "--reject-regex", ".*\\?.*", "--reject", "xpi", "http://#{base_path}/#{version}/#{arch}/")
-end
-
-locales = Dir.glob("#{base_path}/#{version}/#{arches[0]}/*").map do |path|
-  File.basename(path)
-end.sort
-
-locales.delete("index.html")
-locales.delete("xpi")
-
-# real version number, e.g. "30.0" instead of "latest".
-real_version = Dir.glob("#{base_path}/#{version}/#{arches[0]}/#{locales[0]}/firefox-*")[0].match(/firefox-([0-9.]*)/)[1][0..-2]
-
-locale_arch_path_tuples = locales.flat_map do |locale|
-  arches.map do |arch|
-    path = Dir.glob("#{base_path}/#{version}/#{arch}/#{locale}/firefox-*")[0]
-
-    [locale, arch, path]
-  end
-end
-
-paths = locale_arch_path_tuples.map do |tuple| tuple[2] end
-
-hashes = IO.popen(["sha256sum", "--binary", *paths]) do |input|
-  input.each_line.map do |line|
-    $stderr.puts(line)
-
-    line.match(/^[0-9a-f]*/)[0]
-  end
-end
-
-
-puts(<<"EOH")
-# This file is generated from generate_nix.rb. DO NOT EDIT.
-# Execute the following command in a temporary directory to update the file.
-#
-# ruby generate_nix.rb > default.nix
-
-{ stdenv, fetchurl, config
-, alsaLib
-, atk
-, cairo
-, cups
-, dbus_glib
-, dbus_libs
-, fontconfig
-, freetype
-, gconf
-, gdk_pixbuf
-, glib
-, glibc
-, gst_plugins_base
-, gstreamer
-, gtk
-, libX11
-, libXScrnSaver
-, libXext
-, libXinerama
-, libXrender
-, libXt
-, libcanberra
-, libgnome
-, libgnomeui
-, mesa
-, nspr
-, nss
-, pango
-, heimdal
-, pulseaudio
-, systemd
-}:
-
-assert stdenv.isLinux;
-
-let
-  version = "#{real_version}";
-  sources = [
-EOH
-
-locale_arch_path_tuples.zip(hashes) do |tuple, hash|
-  locale, arch, path = tuple
-
-  puts(%Q|    { locale = "#{locale}"; arch = "#{arch}"; sha256 = "#{hash}"; }|)
-end
-
-puts(<<'EOF')
-  ];
-
-  arch = if stdenv.system == "i686-linux"
-    then "linux-i686"
-    else "linux-x86_64";
-
-  isPrefixOf = prefix: string:
-    builtins.substring 0 (builtins.stringLength prefix) string == prefix;
-
-  sourceMatches = locale: source:
-      (isPrefixOf source.locale locale) && source.arch == arch;
-
-  systemLocale = config.i18n.defaultLocale or "en-US";
-
-  defaultSource = stdenv.lib.findFirst (sourceMatches "en-US") {} sources;
-
-  source = stdenv.lib.findFirst (sourceMatches systemLocale) defaultSource sources;
-
-in
-
-stdenv.mkDerivation {
-  name = "firefox-bin-${version}";
-
-  src = fetchurl {
-    url = "http://download-installer.cdn.mozilla.net/pub/firefox/releases/${version}/${source.arch}/${source.locale}/firefox-${version}.tar.bz2";
-    inherit (source) sha256;
-  };
-
-  phases = "unpackPhase installPhase";
-
-  libPath = stdenv.lib.makeLibraryPath
-    [ stdenv.gcc.gcc
-      alsaLib
-      atk
-      cairo
-      cups
-      dbus_glib
-      dbus_libs
-      fontconfig
-      freetype
-      gconf
-      gdk_pixbuf
-      glib
-      glibc
-      gst_plugins_base
-      gstreamer
-      gtk
-      libX11
-      libXScrnSaver
-      libXext
-      libXinerama
-      libXrender
-      libXt
-      libcanberra
-      libgnome
-      libgnomeui
-      mesa
-      nspr
-      nss
-      pango
-      heimdal
-      pulseaudio
-      systemd
-    ] + ":" + stdenv.lib.makeSearchPath "lib64" [
-      stdenv.gcc.gcc
-    ];
-
-  # "strip" after "patchelf" may break binaries.
-  # See: https://github.com/NixOS/patchelf/issues/10
-  dontStrip = 1;
-
-  installPhase =
-    ''
-      mkdir -p "$prefix/usr/lib/firefox-bin-${version}"
-      cp -r * "$prefix/usr/lib/firefox-bin-${version}"
-
-      mkdir -p "$out/bin"
-      ln -s "$prefix/usr/lib/firefox-bin-${version}/firefox" "$out/bin/"
-
-      for executable in \
-        firefox mozilla-xremote-client firefox-bin plugin-container \
-        updater crashreporter webapprt-stub
-      do
-        patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
-          "$out/usr/lib/firefox-bin-${version}/$executable"
-      done
-
-      for executable in \
-        firefox mozilla-xremote-client firefox-bin plugin-container \
-        updater crashreporter webapprt-stub libxul.so
-      do
-        patchelf --set-rpath "$libPath" \
-          "$out/usr/lib/firefox-bin-${version}/$executable"
-      done
-
-      # Create a desktop item.
-      mkdir -p $out/share/applications
-      cat > $out/share/applications/firefox.desktop <<EOF
-      [Desktop Entry]
-      Type=Application
-      Exec=$out/bin/firefox
-      Icon=$out/lib/firefox-bin-${version}/chrome/icons/default/default256.png
-      Name=Firefox
-      GenericName=Web Browser
-      Categories=Application;Network;
-      EOF
-    '';
-
-  meta = with stdenv.lib; {
-    description = "Mozilla Firefox, free web browser";
-    homepage = http://www.mozilla.org/firefox/;
-    license = {
-      shortName = "unfree"; # not sure
-      fullName = "unfree";
-      url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
-    };
-    platforms = platforms.linux;
-  };
-}
-EOF
diff --git a/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb b/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb
new file mode 100644
index 000000000000..eabff067f750
--- /dev/null
+++ b/pkgs/applications/networking/browsers/firefox-bin/generate_sources.rb
@@ -0,0 +1,48 @@
+# TODO share code with thunderbird-bin/generate_sources.rb
+
+require "open-uri"
+
+version = if ARGV.empty?
+            "latest"
+          else
+            ARGV[0]
+          end
+
+base_path = "http://download-installer.cdn.mozilla.net/pub/firefox/releases"
+
+Source = Struct.new(:hash, :arch, :locale, :filename)
+
+sources = open("#{base_path}/#{version}/SHA1SUMS") do |input|
+  input.readlines
+end.select do |line|
+  /\/firefox-.*\.tar\.bz2$/ === line && !(/source/ === line)
+end.map do |line|
+  hash, name = line.chomp.split(/ +/)
+  Source.new(hash, *(name.split("/")))
+end.sort_by do |source|
+  [source.locale, source.arch]
+end
+
+real_version = sources[0].filename.match(/firefox-([0-9.]*)\.tar\.bz2/)[1]
+
+arches = ["linux-i686", "linux-x86_64"]
+
+puts(<<"EOH")
+# This file is generated from generate_nix.rb. DO NOT EDIT.
+# Execute the following command in a temporary directory to update the file.
+#
+# ruby generate_source.rb > source.nix
+
+{
+  version = "#{real_version}";
+  sources = [
+EOH
+
+sources.each do |source|
+  puts(%Q|    { locale = "#{source.locale}"; arch = "#{source.arch}"; sha1 = "#{source.hash}"; }|)
+end
+
+puts(<<'EOF')
+  ];
+}
+EOF
diff --git a/pkgs/applications/networking/browsers/firefox-bin/sources.nix b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
new file mode 100644
index 000000000000..3129498d59c1
--- /dev/null
+++ b/pkgs/applications/networking/browsers/firefox-bin/sources.nix
@@ -0,0 +1,192 @@
+# This file is generated from generate_nix.rb. DO NOT EDIT.
+# Execute the following command in a temporary directory to update the file.
+#
+# ruby generate_source.rb > source.nix
+
+{
+  version = "33.0.2";
+  sources = [
+    { locale = "ach"; arch = "linux-i686"; sha1 = "84289121c49e9472972f04cafa707abef6d40ab4"; }
+    { locale = "ach"; arch = "linux-x86_64"; sha1 = "b048883f61a09b3a4d46b5b35dfa44df108c013d"; }
+    { locale = "af"; arch = "linux-i686"; sha1 = "2a8bf42955842920044a119b5da480dd40fd99f0"; }
+    { locale = "af"; arch = "linux-x86_64"; sha1 = "c5cd176dc69eea6d3a933b58661704c8c381ca70"; }
+    { locale = "an"; arch = "linux-i686"; sha1 = "8aab040e91770e347bd89a77d6cc3e2f822f1b01"; }
+    { locale = "an"; arch = "linux-x86_64"; sha1 = "fba44ab169b11a78b3616a4bcfa9a813626306a5"; }
+    { locale = "ar"; arch = "linux-i686"; sha1 = "3ca9bee8dfe329198669c27a7743504767e4311c"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha1 = "4420c6974845d5b036ca8465fd530ff477302b6e"; }
+    { locale = "as"; arch = "linux-i686"; sha1 = "85d3f501184ed7bf4fbf2328d7797dc7656c60ea"; }
+    { locale = "as"; arch = "linux-x86_64"; sha1 = "7b79e41bbecb87df2b79c41fd6f4efe5fc5a62f1"; }
+    { locale = "ast"; arch = "linux-i686"; sha1 = "65dc73669af6965ef7cc3e937070a629a91d27c0"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha1 = "5ba415acaf6aaf00ef9603b1bd7c28067a38c06f"; }
+    { locale = "az"; arch = "linux-i686"; sha1 = "161ffff8bba5bd7e3fdfff2cbbe06788a75a1786"; }
+    { locale = "az"; arch = "linux-x86_64"; sha1 = "305c54bf69d82270beaf9268d4936c04465efc19"; }
+    { locale = "be"; arch = "linux-i686"; sha1 = "a4677e7a0013390c99dc117e70f7be344487b9fa"; }
+    { locale = "be"; arch = "linux-x86_64"; sha1 = "9d2a5a92c74dcb4ecc960fda83cda4d6a6a333e7"; }
+    { locale = "bg"; arch = "linux-i686"; sha1 = "06cd3eeb03646b2301f779859b6121e33946b9f9"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha1 = "f352868b172f54d007b72b6364ecd9a073a086e3"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "b487c35201063e0b3b1751361973e86bbb6d3646"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "e5d827177cc3bb9adcb74f01e4937ba77982c2d8"; }
+    { locale = "bn-IN"; arch = "linux-i686"; sha1 = "edb44f171a1d70a7e4c8a0eddceb603b511210f8"; }
+    { locale = "bn-IN"; arch = "linux-x86_64"; sha1 = "dcc2e0ac1c5bb8b06e6daeb8a98d8598664864f9"; }
+    { locale = "br"; arch = "linux-i686"; sha1 = "eb21581ed2c552383e868cf2d689517642b66f47"; }
+    { locale = "br"; arch = "linux-x86_64"; sha1 = "bfedb09a7ad5998b90fc3471115be0a607b0f6ca"; }
+    { locale = "bs"; arch = "linux-i686"; sha1 = "23507b237d3968ceb1a987326ac62d94f9df65ea"; }
+    { locale = "bs"; arch = "linux-x86_64"; sha1 = "47f485cd621bd892994292ed564b90269e2a2754"; }
+    { locale = "ca"; arch = "linux-i686"; sha1 = "e69ae2cf47575cca8403e9d8273161c9f23b28d7"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha1 = "fbe9546b99ffadd68c05783fa14eb56465eda3cc"; }
+    { locale = "cs"; arch = "linux-i686"; sha1 = "dd523103288e93513fa366a2ddbeaa554fdbb176"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha1 = "55c0db80a935cecce7551008fcc389f4fb742748"; }
+    { locale = "csb"; arch = "linux-i686"; sha1 = "66704c774f8aa5b6ed08b5ad418474e39092ec6d"; }
+    { locale = "csb"; arch = "linux-x86_64"; sha1 = "01f72eafcf9b16ba9030956c147fd0198bbc7920"; }
+    { locale = "cy"; arch = "linux-i686"; sha1 = "900d37825d69a9ac26f1876b6967f5b7499bbd85"; }
+    { locale = "cy"; arch = "linux-x86_64"; sha1 = "52da4de76b59a234b933c49ed760f223c7c4c15d"; }
+    { locale = "da"; arch = "linux-i686"; sha1 = "a750e76cd0c9a0f9188642a14339d7c9173cd720"; }
+    { locale = "da"; arch = "linux-x86_64"; sha1 = "59e5293f5862f583b9dccc4c33441773e024f90f"; }
+    { locale = "de"; arch = "linux-i686"; sha1 = "d83b88f086bfc5cfedf15c02ed4b5359abaec1e3"; }
+    { locale = "de"; arch = "linux-x86_64"; sha1 = "a8d3c09b24c9554205d0f7b09b3281ae55e3a7ef"; }
+    { locale = "dsb"; arch = "linux-i686"; sha1 = "123923553c828e8190c265ffbfc423a1744ae031"; }
+    { locale = "dsb"; arch = "linux-x86_64"; sha1 = "51cd2a899d18239e653460eff4b5fb9a3c792cad"; }
+    { locale = "el"; arch = "linux-i686"; sha1 = "280719149af0cbc2ed3216d2f7217e60bfdfa2d1"; }
+    { locale = "el"; arch = "linux-x86_64"; sha1 = "854c5243738cd462465b38fe09da05bcf336fd8e"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha1 = "1db81b7381b6217b2d041b2faaca83a90be48640"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "0de6a9f1ae3f7db8d30cb1b38da6bc928a56a373"; }
+    { locale = "en-US"; arch = "linux-i686"; sha1 = "2a92e782d140055690ce9ac89be46ef2e0664260"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "dd511606189c45f830e196b396ee62682ef4116b"; }
+    { locale = "en-ZA"; arch = "linux-i686"; sha1 = "89e0abd4a56ad8d7cfa750e8c1c44e70320ebdbd"; }
+    { locale = "en-ZA"; arch = "linux-x86_64"; sha1 = "873a055caa419904a1c82c29407f7f5d2b6baf70"; }
+    { locale = "eo"; arch = "linux-i686"; sha1 = "369dda2004fadc6d6f58c8f5eb86515eb0fc1c4a"; }
+    { locale = "eo"; arch = "linux-x86_64"; sha1 = "c25e885800ee5a84e05919aee38f29608e878b9f"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha1 = "d334207e5b0456ad90b12b9a713e446b6d0a59e6"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "d6938e9c0e150fcb468301dd12d657e44a6fd216"; }
+    { locale = "es-CL"; arch = "linux-i686"; sha1 = "8a3e3f6302e260857ff09a737e8272d59c3490be"; }
+    { locale = "es-CL"; arch = "linux-x86_64"; sha1 = "5eb5e282d60f97bc723a362dad92d7d14a0ee9e2"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha1 = "69149b7d4309b51ae87deb834d5ab1836dcfb7d4"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "840c817433ec950a0284b4ff59e0634111cff3ae"; }
+    { locale = "es-MX"; arch = "linux-i686"; sha1 = "0a2ddb4b2b92264372b1bdf5ad957147610c5383"; }
+    { locale = "es-MX"; arch = "linux-x86_64"; sha1 = "aab30300c0062f0b3839201cecda6fdd974638ff"; }
+    { locale = "et"; arch = "linux-i686"; sha1 = "a09b9a0c58afbb1a19e841a4f72cca699d0f14e4"; }
+    { locale = "et"; arch = "linux-x86_64"; sha1 = "2c23762407edee338a53f50e9c9f5a884bc2c479"; }
+    { locale = "eu"; arch = "linux-i686"; sha1 = "2b118062f5c8f93cb2be5aa298d4e2caae0302f8"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha1 = "ae2841ec555a74d129052f6af9931d1927bdcccb"; }
+    { locale = "fa"; arch = "linux-i686"; sha1 = "604a2be7317416e31ba2d1705c587a29b9dcfc57"; }
+    { locale = "fa"; arch = "linux-x86_64"; sha1 = "3c53a30d4383d05a12631feb72be8aac88b4ad9e"; }
+    { locale = "ff"; arch = "linux-i686"; sha1 = "7229ddd990a18eddafe2478db0e082b108a18972"; }
+    { locale = "ff"; arch = "linux-x86_64"; sha1 = "0555b251a17ff1fb700e891676987f98a110ec1a"; }
+    { locale = "fi"; arch = "linux-i686"; sha1 = "e04a02fcffab0db1e85b4cee754d5ba8006cf387"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha1 = "d85c3448d2b685fb69cb7f567ee50c21a4d66345"; }
+    { locale = "fr"; arch = "linux-i686"; sha1 = "7be35c9e5bca6b83b3123468333d05360cb212ff"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha1 = "01a9900d207f44456f55499b5c8074983001a896"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "aab9b751d299d6ea3b5914b33b6ba22d45a1a800"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "146f82bc19217b2736e82f6cdf8c367dfe546b0e"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "21420623f201278b788f3ebf8ea075d5cd2720cc"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "888112fc030689f48889227765377dab969e07db"; }
+    { locale = "gd"; arch = "linux-i686"; sha1 = "528b236cb8553576adceb5ffe73a52f07a2bbab7"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha1 = "41d5a5cd74e61d5274774842f224daf22ad9751a"; }
+    { locale = "gl"; arch = "linux-i686"; sha1 = "36397364384b61a083e9cfb4535749b08fd35d68"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha1 = "08a80c6088abf0b970e1bbce1370de24ba3e50bf"; }
+    { locale = "gu-IN"; arch = "linux-i686"; sha1 = "cecf38096e029453ffbaf5ce14333836754f05dc"; }
+    { locale = "gu-IN"; arch = "linux-x86_64"; sha1 = "87515724726efd12eab5018d6062ef8a4bec19c6"; }
+    { locale = "he"; arch = "linux-i686"; sha1 = "ca162ce8e0d33883489923f714cb6880eed4ddf6"; }
+    { locale = "he"; arch = "linux-x86_64"; sha1 = "bdc063b683ccdc26e8d3314aac9a89beffb855dc"; }
+    { locale = "hi-IN"; arch = "linux-i686"; sha1 = "6054818606b0e004f16d503f6772897bc556cea5"; }
+    { locale = "hi-IN"; arch = "linux-x86_64"; sha1 = "b52d98d4bc6825e923ad438b0a4e7989e8cabe3a"; }
+    { locale = "hr"; arch = "linux-i686"; sha1 = "d75988c20d86068523dc2bfbf6f1b6a9fdf50ea2"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha1 = "0eb0eb3bcf947a5df91552a520c3dae502e8ca12"; }
+    { locale = "hsb"; arch = "linux-i686"; sha1 = "6a7af0b5e6f9e7673c41b69c0b20b619657670e1"; }
+    { locale = "hsb"; arch = "linux-x86_64"; sha1 = "eba91ab9ce2c8b4951c201f8ca0247c8810991ce"; }
+    { locale = "hu"; arch = "linux-i686"; sha1 = "0277e06231e406fca6594489d0629a2df28b099a"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha1 = "1049f9deef387f7e51d5b1b87677a236ecd8e8bc"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "da5b737c60c95df82a464e3028869892ac083f22"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "e9bcab47f9870b0dce22f764d78acdb9c8fdc3a2"; }
+    { locale = "id"; arch = "linux-i686"; sha1 = "c76ff5c58977afcedf88ea354596329d83dbfcd4"; }
+    { locale = "id"; arch = "linux-x86_64"; sha1 = "9cd4cfa700f96654608956932cc16d0b60d3de72"; }
+    { locale = "is"; arch = "linux-i686"; sha1 = "b79c4c2131e8ba15d6f31f0609616476b91b739b"; }
+    { locale = "is"; arch = "linux-x86_64"; sha1 = "feaa1616f97e1145554fdd93f1f5310dbf35c30a"; }
+    { locale = "it"; arch = "linux-i686"; sha1 = "e3c1658e92f1ef6ec98c2dce0269eba3c64a4312"; }
+    { locale = "it"; arch = "linux-x86_64"; sha1 = "608298dad85daa4ca08996cfe20a1602a951dcba"; }
+    { locale = "ja"; arch = "linux-i686"; sha1 = "eacc6251f1fca09b41e84d43f84ae49c87619c55"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha1 = "110e1ad59d404aa4bcbf5ed6781a93a27d9756d0"; }
+    { locale = "kk"; arch = "linux-i686"; sha1 = "772ad939e83fb889ac24cafba5006395757d73b8"; }
+    { locale = "kk"; arch = "linux-x86_64"; sha1 = "2d0e1909f76f9007a63afd1aadd3175a3dc5bade"; }
+    { locale = "km"; arch = "linux-i686"; sha1 = "284d52d38a58c392dfa4deac506b26c8dcc8a8d7"; }
+    { locale = "km"; arch = "linux-x86_64"; sha1 = "acf596620f0de73eb51b2ff1687ee5723e1939bd"; }
+    { locale = "kn"; arch = "linux-i686"; sha1 = "b4e3aa3ca7dbad47db42dc10e486d38b4515decc"; }
+    { locale = "kn"; arch = "linux-x86_64"; sha1 = "b24aedb7ed569666e979ef71c54b99c5f0fdecc5"; }
+    { locale = "ko"; arch = "linux-i686"; sha1 = "29e54578a74203613e084a5ef36e05a7fff0e0c7"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha1 = "858fb59b17acbc8027ab5962ed4a4c45b0e3afd7"; }
+    { locale = "ku"; arch = "linux-i686"; sha1 = "ee5b0d2fa065d4f488f9871cb034db27ef02580c"; }
+    { locale = "ku"; arch = "linux-x86_64"; sha1 = "31bbfb80de63d24022c7779ded2e31a32dbdca0e"; }
+    { locale = "lij"; arch = "linux-i686"; sha1 = "4e82e29fbf6485ea16ce0766764ac62ed848b94d"; }
+    { locale = "lij"; arch = "linux-x86_64"; sha1 = "cbe98fdf2eb3001968d0df0769e0cd0902b06fbc"; }
+    { locale = "lt"; arch = "linux-i686"; sha1 = "d12ae187d164616e89cf4eed77e5927e575128d2"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha1 = "518a384b8ad40ea9efe659a896b0512948e1e987"; }
+    { locale = "lv"; arch = "linux-i686"; sha1 = "88c90db1b921a76cb85632e0f362b122d4da411c"; }
+    { locale = "lv"; arch = "linux-x86_64"; sha1 = "3c2a1c0b507c486b709c1010343a97bc8f7c3e77"; }
+    { locale = "mai"; arch = "linux-i686"; sha1 = "5b73e8d4a01826f3b27664b9289953ad3784793b"; }
+    { locale = "mai"; arch = "linux-x86_64"; sha1 = "d988bee839d38d09b990cc93107cc2f53e236928"; }
+    { locale = "mk"; arch = "linux-i686"; sha1 = "dce5f05792e19ae41352b33a15721e91b1ec51d8"; }
+    { locale = "mk"; arch = "linux-x86_64"; sha1 = "92025b929fceecefc7bc120a3bf7cbd4374dadb0"; }
+    { locale = "ml"; arch = "linux-i686"; sha1 = "073aee45ae60efb142514353125f8f73d07cb41b"; }
+    { locale = "ml"; arch = "linux-x86_64"; sha1 = "0aa10e353aacc98de2799c42fb1a767a2db073df"; }
+    { locale = "mr"; arch = "linux-i686"; sha1 = "96f72aa8dbde2c807d314dffe7b17d9ef8cd4cbb"; }
+    { locale = "mr"; arch = "linux-x86_64"; sha1 = "0153e84af4ee51cfe046b7419471788becae94bb"; }
+    { locale = "ms"; arch = "linux-i686"; sha1 = "a5a9a008006830b903aff077dd4ecbd88f56e065"; }
+    { locale = "ms"; arch = "linux-x86_64"; sha1 = "d62254d76c09c6e7ecf5b8fce5f16c19f6778f95"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "23552008764881e8132ad918f7fee319d8663665"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "eb42bdb42d0e51b1c68dc50b8da066682afa6a68"; }
+    { locale = "nl"; arch = "linux-i686"; sha1 = "88fea28ecd7f8257fac516183e48f6a23599850b"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha1 = "9f5002532f94726b53de4c2ea9e0099a2b88e4cc"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "005f55140ced2888691c3695f491063874c083e0"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "9e8c4103fe98a591ca62f8bf3b73dd91ff8e6973"; }
+    { locale = "or"; arch = "linux-i686"; sha1 = "20f94f1c14cfcd95825cbf0613e94b4bf4db8e55"; }
+    { locale = "or"; arch = "linux-x86_64"; sha1 = "9a31112abecd538e1b9489b16a89fd5c8bb10d25"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "fa6d6e65d14f7b771c65465b67f1ceca83402051"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "9268ffeb1982f08044ab882224aad93da4064340"; }
+    { locale = "pl"; arch = "linux-i686"; sha1 = "97b6e4700c6cd35a40e9256dc558cc0f01198c75"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha1 = "46c721a5c778a7dbc51f6a89ef29ee00203a64f9"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "11f6f7868a6733a2459d3e36e106526eb0a2b44f"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "d276a761068f662b59c7d832f24bd756eda5a37a"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "3eeb28a4a01d13111a2214ee64647f332d476088"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "a55faf0846dbf8e964402e75f7c213968afd4568"; }
+    { locale = "rm"; arch = "linux-i686"; sha1 = "471757165eeeeb2e97f3a2e71fc942ad7f7719e4"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha1 = "3583eaf02e502d1346de9ef769a9df236a78599d"; }
+    { locale = "ro"; arch = "linux-i686"; sha1 = "1b93473d549e639b9e3f29e31387fb79ae373d94"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha1 = "dc0255b15ff129cb38eaa0a52d61a2f74bbcf7bc"; }
+    { locale = "ru"; arch = "linux-i686"; sha1 = "43ba7700c44d26b6433678d7dd6e0a0c14d93f45"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha1 = "46bc5736bbfcfb948e9980dbc63b901753e16862"; }
+    { locale = "si"; arch = "linux-i686"; sha1 = "d445f110df79720b14fd6f445167a706b116488b"; }
+    { locale = "si"; arch = "linux-x86_64"; sha1 = "b4b3db391ae6e2d503633245878a00f4e33e0d43"; }
+    { locale = "sk"; arch = "linux-i686"; sha1 = "3080a0fb40da4e96943114d20f1f72529d0667bf"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha1 = "7158353b5310e77ca0497c288f0662e1f922fb7a"; }
+    { locale = "sl"; arch = "linux-i686"; sha1 = "24260e9b0fcb7313a3eebe5070e0a94b27bf81a2"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha1 = "9a5add8d7300ddc64089e02404825514ff17647a"; }
+    { locale = "son"; arch = "linux-i686"; sha1 = "600913614d41258cc77cf506cc13d1ddab40625d"; }
+    { locale = "son"; arch = "linux-x86_64"; sha1 = "b278970e4ca2ccb2dd3491a905bbdbbf0d70490e"; }
+    { locale = "sq"; arch = "linux-i686"; sha1 = "5f15a63b1648e44ae9551aba26e81ec48a6bdfae"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha1 = "cbb9ed192d45f6acaaa27ecfa41b618053c6d7d6"; }
+    { locale = "sr"; arch = "linux-i686"; sha1 = "6ef381a41653bdaeb86315c090fcbc31b9dc606b"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha1 = "0c0957b8bf14789c1d535044ab4c23c6da7b7fb0"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "1e1aff3b58c5545d4fca293e36392d1bfa94ad84"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "6af5115d5c998f01fc47a632a2043d1796dc0e48"; }
+    { locale = "ta"; arch = "linux-i686"; sha1 = "69b0da1959ebe1216042b7e9eb50ce35c1d32dd6"; }
+    { locale = "ta"; arch = "linux-x86_64"; sha1 = "423f5eee83bedcc10aaf43ba78fe8eda221f7225"; }
+    { locale = "te"; arch = "linux-i686"; sha1 = "05c078b8532236c8807366058fa56d86f7d9f202"; }
+    { locale = "te"; arch = "linux-x86_64"; sha1 = "36edfcbe5eee5700b99285d4be56d812f8d6126c"; }
+    { locale = "th"; arch = "linux-i686"; sha1 = "f1dbcb989ab807dde9c718564f2a6666e541fb08"; }
+    { locale = "th"; arch = "linux-x86_64"; sha1 = "6b97dc0cfb18c168b909e80a0cf6944197fcf971"; }
+    { locale = "tr"; arch = "linux-i686"; sha1 = "a5311e7bbece416d44659fb6a026d1c4b7e559ad"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha1 = "75c876fc07f088b4909cc07892e15b9cda8d7d57"; }
+    { locale = "uk"; arch = "linux-i686"; sha1 = "24bcdf22c9887b6272289fc74ec9b7c5ca210fd6"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha1 = "4d334079f0314f3ec7ad201b3ff3a47c096820c7"; }
+    { locale = "vi"; arch = "linux-i686"; sha1 = "31a06884815086e2c2e5f2e346b645e7831bbe0f"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha1 = "f842a69f2b9ac552227fc70c9f83851d6e493111"; }
+    { locale = "xh"; arch = "linux-i686"; sha1 = "feab880c09ad8b7cda7cae61886da651c21e54e6"; }
+    { locale = "xh"; arch = "linux-x86_64"; sha1 = "b30851acdbaba53791698277d4285da3229707ae"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "27166890fc8b804fe092fad68b04c59ee9705b70"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "e7f8aac338aa457bc8de8dc68e7d8f0af6303420"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "e9ea70c45439fd09a8b36694a9e59d7161aa6341"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "c907e3c10dddfb313c7570fe8232c74673d2fc93"; }
+    { locale = "zu"; arch = "linux-i686"; sha1 = "d1aad06eeebd135c65092f78d50f2b9c64705320"; }
+    { locale = "zu"; arch = "linux-x86_64"; sha1 = "2fbb2d086c8260dda2485c430143a53c4f1383f0"; }
+  ];
+}
diff --git a/pkgs/applications/networking/browsers/firefox/default.nix b/pkgs/applications/networking/browsers/firefox/default.nix
index ab3a454eb63a..22b6756f0a1e 100644
--- a/pkgs/applications/networking/browsers/firefox/default.nix
+++ b/pkgs/applications/networking/browsers/firefox/default.nix
@@ -15,14 +15,14 @@
 
 assert stdenv.gcc ? libc && stdenv.gcc.libc != null;
 
-let version = "33.0.1"; in
+let version = "33.0.2"; in
 
 stdenv.mkDerivation rec {
   name = "firefox-${version}";
 
   src = fetchurl {
     url = "http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${version}/source/firefox-${version}.source.tar.bz2";
-    sha1 = "09b9ca1f6af1e0ff8716d559ccf55801ae1a8f2d";
+    sha1 = "60657ba123df85a632822974d8f914cc8c35a738";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/instant-messengers/ekiga/default.nix b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
index 41bd4ca45131..cae9fe294f34 100644
--- a/pkgs/applications/networking/instant-messengers/ekiga/default.nix
+++ b/pkgs/applications/networking/instant-messengers/ekiga/default.nix
@@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
                   perl perlXMLParser evolution_data_server gnome_doc_utils avahi
                   libsigcxx gtk dbus_glib libnotify libXext xextproto sqlite
                   gnome3.libsoup glib gnome3.gnome_icon_theme_symbolic
-                  hicolor_icon_theme gnome3.gnome_icon_theme boost boost.lib
+                  hicolor_icon_theme gnome3.gnome_icon_theme boost
                   autoreconfHook pkgconfig libxml2 videoproto unixODBC db nspr
                   nss zlib libsecret libXrandr randrproto which libxslt libtasn1
                   gmp nettle makeWrapper ];
diff --git a/pkgs/applications/networking/instant-messengers/kadu/default.nix b/pkgs/applications/networking/instant-messengers/kadu/default.nix
index a74460c3e39b..44cf13e2917c 100644
--- a/pkgs/applications/networking/instant-messengers/kadu/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kadu/default.nix
@@ -3,11 +3,11 @@
 
 stdenv.mkDerivation {
 
-  name = "kadu-0.12.2";
+  name = "kadu-0.12.3";
 
   src = fetchurl {
-    url = http://download.kadu.im/stable/kadu-0.12.2.tar.bz2;
-    sha256 = "0rqhkiyn8c7jigpxmvwh7daxsgjxlvd16zjdss1azdzd9x2dbym1";
+    url = http://download.kadu.im/stable/kadu-0.12.3.tar.bz2;
+    sha256 = "1a5q5b8pm253cwg6ahahjdm8jxj0pv41apyi1nvvy08bs38bn1yn";
   };
 
   buildInputs = [ cmake qt4 libgadu libXScrnSaver libsndfile libX11 alsaLib aspell libidn qca2 phonon pkgconfig
diff --git a/pkgs/applications/networking/instant-messengers/twinkle/default.nix b/pkgs/applications/networking/instant-messengers/twinkle/default.nix
index 961ab997384e..c7f33c1f5805 100644
--- a/pkgs/applications/networking/instant-messengers/twinkle/default.nix
+++ b/pkgs/applications/networking/instant-messengers/twinkle/default.nix
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   configureFlags = "--with-extra-includes=${libjpeg}/include";
 
   buildInputs =
-    [ pkgconfig autoreconfHook commoncpp2 openssl boost boost.lib libsndfile
+    [ pkgconfig autoreconfHook commoncpp2 openssl boost libsndfile
       libxml2 libjpeg readline qt3 perl file
       # optional ? :
       alsaLib speex
diff --git a/pkgs/applications/networking/instant-messengers/vacuum/default.nix b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
index ad8b677a2ec5..205c21adab42 100644
--- a/pkgs/applications/networking/instant-messengers/vacuum/default.nix
+++ b/pkgs/applications/networking/instant-messengers/vacuum/default.nix
@@ -12,17 +12,17 @@ let
   buildInputs = map (n: builtins.getAttr n x)
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
-    version="1.2.3";
+    version="1.2.4";
     baseName="vacuum-im";
     name="${baseName}-${version}";
-    url="http://vacuum-im.googlecode.com/files/vacuum-${version}.tar.xz";
-    hash="037k2b2kkp2ywkrshqa0fj18mkd2jq60x4x62kzbrsvb85qcbbxh";
+    url="https://googledrive.com/host/0B7A5K_290X8-d1hjQmJaSGZmTTA/vacuum-1.2.4.tar.gz";
+    sha256="10qxpfbbaagqcalhk0nagvi5irbbz5hk31w19lba8hxf6pfylrhf";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = sourceInfo.sha256;
   };
 
   inherit (sourceInfo) name version;
diff --git a/pkgs/applications/networking/linssid/default.nix b/pkgs/applications/networking/linssid/default.nix
index 00ff1110c32f..2b4c5f564bec 100644
--- a/pkgs/applications/networking/linssid/default.nix
+++ b/pkgs/applications/networking/linssid/default.nix
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
     sha256 = "13d35rlcjncd8lx3khkgn9x8is2xjd5fp6ns5xsn3w6l4xj9b4gl";
   };
 
-  buildInputs = [ qt5 pkgconfig boost boost.lib ];
+  buildInputs = [ qt5 pkgconfig boost ];
 
   postPatch = ''
     sed -e "s|/usr/include/|/nonexistent/|g" -i linssid-app/*.pro
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
index b239e915a3da..41a24dc8a9f7 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/default.nix
@@ -1,8 +1,3 @@
-# This file is generated from generate_nix.rb. DO NOT EDIT.
-# Execute the following command in a temporary directory to update the file.
-#
-# ruby generate_nix.rb > default.nix
-
 { stdenv, fetchurl, config
 , gconf
 , alsaLib
@@ -39,121 +34,10 @@
 
 assert stdenv.isLinux;
 
-let
-  version = "31.2.0";
-  sources = [
-    { locale = "tr"; arch = "linux-i686"; sha256 = "02dc838606507040c73ddff4a1b60fec7d6e613aa08da2ce1c76e9c367bc29e5"; }
-    { locale = "tr"; arch = "linux-x86_64"; sha256 = "a93243ab5b1d64a94bf10833d6b8985a65906d0be24bdcdd7b5babfb1d466bcd"; }
-    { locale = "nl"; arch = "linux-i686"; sha256 = "d675da8358bf4ed519ee49dcc2c2162075b5e9e0fca244b474322a7614f535da"; }
-    { locale = "nl"; arch = "linux-x86_64"; sha256 = "4e8f9e3f9fe851dc38deae42443cf884776e1d93abf34ce6963651a85afdc4a9"; }
-    { locale = "he"; arch = "linux-i686"; sha256 = "8a769559e73abfdb610891a23538ef38df3852ffb39d02cba96e6a8ec914f94a"; }
-    { locale = "he"; arch = "linux-x86_64"; sha256 = "e53b95914753b8640b69e104fbf5efb2fddcecc17eded23974c08274378105c2"; }
-    { locale = "bg"; arch = "linux-i686"; sha256 = "60deb9deb678c9e5233d9c0146aa4fc8a74b9ba9b5be43ed8c5a452039b8307d"; }
-    { locale = "bg"; arch = "linux-x86_64"; sha256 = "73e5c984d5d3fa17f93cb947fd63671fba66bab94117db84e187cb9260500101"; }
-    { locale = "si"; arch = "linux-i686"; sha256 = "669d825940712d7f10c7303e3e0a0ed9c48e9e5c26b0c035ed58bf8694d5ddc3"; }
-    { locale = "si"; arch = "linux-x86_64"; sha256 = "e60e048af0c965ac6f2adedb58e192d6d4208bf7f57dcef13b899da04ca14420"; }
-    { locale = "zh-CN"; arch = "linux-i686"; sha256 = "f5f5b653e17b495c3cb4b1a26b39d3fdbeedb22c8d733cb2f3b6e57d46269949"; }
-    { locale = "zh-CN"; arch = "linux-x86_64"; sha256 = "653cc18216f5fc156feef73170f903471480612a4de6df4efa3cce79b58fee28"; }
-    { locale = "ro"; arch = "linux-i686"; sha256 = "5cc87c9c84c205f99dc3fa58be8fedd72b9afccb69c91616f11929e2a7e075fd"; }
-    { locale = "ro"; arch = "linux-x86_64"; sha256 = "dc6e8f5dd30a7e2dcfebabfcc508de89cde3754c036811df7168f4f1e53c1477"; }
-    { locale = "ast"; arch = "linux-i686"; sha256 = "653025d1260db10310f8d689cb4554acf7a6388a99bac977b6f59b683d7e5983"; }
-    { locale = "ast"; arch = "linux-x86_64"; sha256 = "1a4623f94b4c68b6b89ec53c512f860388965dc36f2d06272341a194dc85eef6"; }
-    { locale = "pl"; arch = "linux-i686"; sha256 = "0e0ae13028d5f65a54398c634ed5b4a6685e2dc84b05121e71a0c0ca7a04053e"; }
-    { locale = "pl"; arch = "linux-x86_64"; sha256 = "2589909994cfa059d55a75b7d8f756c09f67994034f7f45c7b5b8805302645bf"; }
-    { locale = "gl"; arch = "linux-i686"; sha256 = "155e79bad6226eb2231a08856415b5e4a15cb02235b0b17ff7c0378c38d2dc93"; }
-    { locale = "gl"; arch = "linux-x86_64"; sha256 = "688d3c51645061fda283e2d486de1306f0b457149c82cbd20c7c019e76ed98b2"; }
-    { locale = "ja"; arch = "linux-i686"; sha256 = "90b3bbc31046daada0ce995108fb9542aeb878220579836ed0e5b14088199795"; }
-    { locale = "ja"; arch = "linux-x86_64"; sha256 = "ebd172d4a74ef757ceace8799c752e34fa0fb41dd5f4083d2aad2df4efd0329b"; }
-    { locale = "ca"; arch = "linux-i686"; sha256 = "c1502e310fd4b0a682fef147b4f5a97db972ed49916012a145ce6d5c4afd6452"; }
-    { locale = "ca"; arch = "linux-x86_64"; sha256 = "bac8bfe883d35f3624bae8cd4d831694a8e3f2b319a912ad5007e39483a22e70"; }
-    { locale = "fr"; arch = "linux-i686"; sha256 = "d0315db23af439e736e02d93d2467c86fe2a186c849aef32e928adb5059fa7fd"; }
-    { locale = "fr"; arch = "linux-x86_64"; sha256 = "8d5c5c4ac8865ee233ea10d2c4b153bb47cf4df4047dfae9aa7b5722c293e5cc"; }
-    { locale = "fy-NL"; arch = "linux-i686"; sha256 = "9bbac5b2d4ada74e6cdc8730997d47043d319a79a61636322038584265001fed"; }
-    { locale = "fy-NL"; arch = "linux-x86_64"; sha256 = "ac828318d8ce07332af73b3146f77825e51e8df8e858c0596589dbdfb2c8718f"; }
-    { locale = "sl"; arch = "linux-i686"; sha256 = "16276607ffd4fa9fac4077cfc6da91ced5d5a4b08d804726d9d4b7e870cc25f2"; }
-    { locale = "sl"; arch = "linux-x86_64"; sha256 = "7e1c2f2aaa973b7a19518c62beb43130d7fb95d4c5aecd3370d7ab2fb59f37c5"; }
-    { locale = "be"; arch = "linux-i686"; sha256 = "48b27779e6ee95971d72a6be14e69ac1e724f5450126ad2627a9b2f0511b663c"; }
-    { locale = "be"; arch = "linux-x86_64"; sha256 = "ebd551829f7a66b47a82cad5db79a27126719af71ada250dbaedf292077e9c8e"; }
-    { locale = "ko"; arch = "linux-i686"; sha256 = "8f92e772ce7c54d6210c83fee257c9cc0b2a3542f41ac2059ea377c64d4f59ed"; }
-    { locale = "ko"; arch = "linux-x86_64"; sha256 = "b2cec9901318ec0754e8caca2d56e6e4d08deb4aa21db7fb04c555062b84b9be"; }
-    { locale = "hr"; arch = "linux-i686"; sha256 = "c5a1da56142398fc79b6d356d600f8228b0a4f1ac40d04df4ff5c25564b77a6f"; }
-    { locale = "hr"; arch = "linux-x86_64"; sha256 = "5d0308e1c08960a26ac3328eb5be4c237e2320a38a6db077186f1d1a278feb8d"; }
-    { locale = "nn-NO"; arch = "linux-i686"; sha256 = "d0abb5c4657a4a04999a44f96d00271e8dc3ad79ae0e78cf4b820fc2fd29b266"; }
-    { locale = "nn-NO"; arch = "linux-x86_64"; sha256 = "fdde99be62fe6a911711e1ba69a2babcdba53216a5942494ab7e52cada8bf893"; }
-    { locale = "vi"; arch = "linux-i686"; sha256 = "d0420a7ccd8f4fcd7f56497636baa701c71576d3b88440b609cbb3ebf245d4e4"; }
-    { locale = "vi"; arch = "linux-x86_64"; sha256 = "5657eb2a99f7c2cf32297bbb45fab4c0eb2dd48ba4ba98487beed18aa5e85ada"; }
-    { locale = "es-AR"; arch = "linux-i686"; sha256 = "fe60d3b13e964bd99730e8082b742729084e87f6a285deb8cd2383dccf881f1c"; }
-    { locale = "es-AR"; arch = "linux-x86_64"; sha256 = "76faee1fd8da11731ece128832997de0f10501040921e6abb46fc0ae4922d568"; }
-    { locale = "el"; arch = "linux-i686"; sha256 = "c1ad068c565abb7b3f16c843f6974fcec6f46714c3f9afb193d10ffa3773cbff"; }
-    { locale = "el"; arch = "linux-x86_64"; sha256 = "b5cd4fb82525b67ef199b9eadaebe25f70a29e1dc43b2ad0f0074bf7d01a05f0"; }
-    { locale = "is"; arch = "linux-i686"; sha256 = "195cb61263c4c01c345a5effcb5f4f6741a1ee10f716006a614d55721b013e48"; }
-    { locale = "is"; arch = "linux-x86_64"; sha256 = "42447cb7c7689623a34607a0aa1a9866552756576932d45a4721c5fe8541070f"; }
-    { locale = "ru"; arch = "linux-i686"; sha256 = "6c0f45046e4d1910a20e245f0b69af5b4fb2a9507abd99217bffe68bf213061e"; }
-    { locale = "ru"; arch = "linux-x86_64"; sha256 = "408f3b38fc416cc12640af0928fbea1506eae3f4a65b6b3b889bca54bb0a1521"; }
-    { locale = "pt-BR"; arch = "linux-i686"; sha256 = "330f4546fe50d717fc66b8417405d3c1eef8ca4f312b21563c426739eee4724a"; }
-    { locale = "pt-BR"; arch = "linux-x86_64"; sha256 = "283d3e581ebb84059985aad40f72338a77b068e27b8247e0ac16b915ed16f797"; }
-    { locale = "hy-AM"; arch = "linux-i686"; sha256 = "8068738dbfc0ed5f5a08b1b4a65a5e9e1ac780de43fc5f27c269dcd5e9998f97"; }
-    { locale = "hy-AM"; arch = "linux-x86_64"; sha256 = "a101856b6151cae9d33a909d1a0fc11eb26439ca161db55dc262bf86bb457c29"; }
-    { locale = "sk"; arch = "linux-i686"; sha256 = "5a790cc811d8e392daa83b11feb232092ab97dc8c9fc0bb47b4013751a30f76e"; }
-    { locale = "sk"; arch = "linux-x86_64"; sha256 = "7842ceeab524c98387ca6319735bf7c331d34bcfde395078cc32c443e69962ef"; }
-    { locale = "sr"; arch = "linux-i686"; sha256 = "06ded63a3d09af09ac68b318f79f07e924addb30d4c11903b6a86ba3ef476761"; }
-    { locale = "sr"; arch = "linux-x86_64"; sha256 = "53a99f98398b2044866422ca44b496d489c0b78724f28afb4f919eca656d528a"; }
-    { locale = "en-US"; arch = "linux-i686"; sha256 = "4c4da90f383d7b43e97e471656a6cfbbd44d1b80d57b8b2405497678aced46b5"; }
-    { locale = "en-US"; arch = "linux-x86_64"; sha256 = "41ff22bc9a41aa0e71deebce4894e99f3e3737a57279a1488bf9d2f869cd56ad"; }
-    { locale = "es-ES"; arch = "linux-i686"; sha256 = "e11451297f17febcf0057ae02dc15a298aacc865146e1aac363300dac6de57c5"; }
-    { locale = "es-ES"; arch = "linux-x86_64"; sha256 = "0e5d389a2c5b673b423dd2afad375eb6a7e05c8eb0b07ceb4975d658827d6cf5"; }
-    { locale = "gd"; arch = "linux-i686"; sha256 = "5fc40508e7a6228065084fc91431af3b9231c6ce46ae3e88ef249ad67bf1b545"; }
-    { locale = "gd"; arch = "linux-x86_64"; sha256 = "ef365e27b05f4bd0c8211ed9e54ecfa4983111be74261303870a8d22e6093c08"; }
-    { locale = "fi"; arch = "linux-i686"; sha256 = "9461f7d3953dc6aa5c9d2406331138a5e34d114eb5b48b09b562dade25a38ab7"; }
-    { locale = "fi"; arch = "linux-x86_64"; sha256 = "6a0310cc0e0a5d9e1590c735e91e8c1bb85358687f4a6a59219de05bb0cf9d1d"; }
-    { locale = "de"; arch = "linux-i686"; sha256 = "b4fd29c1bd06c5d6b85aeb6434746f1fa0af627c5795ce2ebc7d3dddcf78e9e6"; }
-    { locale = "de"; arch = "linux-x86_64"; sha256 = "b24afec0b5de5e872848dfcd609f1cf81fe2eed96cc9ee1a5f17fd1b68750d34"; }
-    { locale = "sq"; arch = "linux-i686"; sha256 = "a78274174c8c26426d9f7e85589f6143f47fab9ce8eb9bbb91fc6c9444c1470d"; }
-    { locale = "sq"; arch = "linux-x86_64"; sha256 = "18c6ee5a732d777d9326593a4edfc30f11acdfef2397aa55c436d54a99de9c3a"; }
-    { locale = "sv-SE"; arch = "linux-i686"; sha256 = "3e12328500db45ecfb4572c3cad8b75a46d930ec57a426c8fbe6dd8e033f3cfc"; }
-    { locale = "sv-SE"; arch = "linux-x86_64"; sha256 = "a76f785c8c0b17f3962a94d4cee5bce9be7b91fd2805133f490ad516ba2d5ad8"; }
-    { locale = "hu"; arch = "linux-i686"; sha256 = "72e1d888516119a6aa21d077fbe8faefc5cf13e8e422ae26aeed4416700f16af"; }
-    { locale = "hu"; arch = "linux-x86_64"; sha256 = "962f0b046ab3f385348022d78ffffdae6137b351c5031453f62b5fa1dd44a9b3"; }
-    { locale = "nb-NO"; arch = "linux-i686"; sha256 = "b5b11886e19a03e219bb803c7853bded9c5e4a2cde0a33abba4c0665a44ec8f4"; }
-    { locale = "nb-NO"; arch = "linux-x86_64"; sha256 = "faa18298e02ecd0eca77f4e68e88ebb91ca8ea3abb6241f53d82e1db7db95076"; }
-    { locale = "cs"; arch = "linux-i686"; sha256 = "03b23597d55f1db442f8147bcff7108e3b520e0b5d05d819df07915ba6baa35f"; }
-    { locale = "cs"; arch = "linux-x86_64"; sha256 = "3dea9adb367958babb54dce3102d43d316088aa6140101d18a59cda20522d78f"; }
-    { locale = "br"; arch = "linux-i686"; sha256 = "7b1814286847188ca68b3f24457b3a6ee5cd967833bf789104db0fedd2993941"; }
-    { locale = "br"; arch = "linux-x86_64"; sha256 = "7605776d4a72d82fc65280df0cf9812f134a1dc790e0f60f089f287f38ed5db0"; }
-    { locale = "pt-PT"; arch = "linux-i686"; sha256 = "da8177ab1912d5a0047dd2f6848a421c8fe32d39bacb64e76e0633ddaca5f4de"; }
-    { locale = "pt-PT"; arch = "linux-x86_64"; sha256 = "60b1c2f1f209c5e16c6f29c0a5bcaf46c04bb2ae289925761193387ae65fe18d"; }
-    { locale = "rm"; arch = "linux-i686"; sha256 = "29e073a8068f7d060cf2818d85d465df3f606aba95e867dc9aa67533d09e4b55"; }
-    { locale = "rm"; arch = "linux-x86_64"; sha256 = "8d8ac419650a9cd0b138aa823dcfb67e47f8522a5d51625090c26c45a5c577a7"; }
-    { locale = "lt"; arch = "linux-i686"; sha256 = "9d537ff70f06a5189296a99126a57ab8664266ec2da673671e60e97678d3ed9d"; }
-    { locale = "lt"; arch = "linux-x86_64"; sha256 = "77f30fb2b94fa7cb690c5c0f2fff0ec89c1aa8f8915891d17a66357ddd10d462"; }
-    { locale = "eu"; arch = "linux-i686"; sha256 = "1b613c1cf303a65c3065fc3edf15c6a051c1a7e347512e39cce425ef02828c3c"; }
-    { locale = "eu"; arch = "linux-x86_64"; sha256 = "a02a04bc88efca8523b4af8e4962b205ad13d9eb9879405db57356966b12202b"; }
-    { locale = "it"; arch = "linux-i686"; sha256 = "baede1707cca4ff149956884f855fa0077c372275f6be6f59d32e47cc6509b5b"; }
-    { locale = "it"; arch = "linux-x86_64"; sha256 = "e49f0b02d323e2f83d0da2a5ec2e4585693362545e50bfba51e273d0edf52813"; }
-    { locale = "id"; arch = "linux-i686"; sha256 = "31691ec0b51d19bdab2efe2ab1813bd3363e71ad62bc4f5a860e017516509ad5"; }
-    { locale = "id"; arch = "linux-x86_64"; sha256 = "c6241fb8cd1d83ac5753518c2cc215ee831fa24b816a5a522029d14cea24b15b"; }
-    { locale = "da"; arch = "linux-i686"; sha256 = "aa6c91c15ff9f1769d727883c17720a2732ede4b786c4bff7d42fe25c129246b"; }
-    { locale = "da"; arch = "linux-x86_64"; sha256 = "b940f8ab5b2ad50faedc4520f4a7bd5936debfd70b2fa86b2abf955a22557b20"; }
-    { locale = "ta-LK"; arch = "linux-i686"; sha256 = "cc70eb04cbab5bcd674e40c4d58760c07353726c968f766fc749fcd7154fddd9"; }
-    { locale = "ta-LK"; arch = "linux-x86_64"; sha256 = "948172b68287b1cd8a1d7a32b3e7fd5494390aefea1683cbad34f12ba5d241a7"; }
-    { locale = "uk"; arch = "linux-i686"; sha256 = "6b45d36abc8fe1c731baf855866000ffa08671d025ab97b5301b22079765d70c"; }
-    { locale = "uk"; arch = "linux-x86_64"; sha256 = "9d619639157c645bc34628b7c31ccfb4e8223b891cf8e99118e7b767f7f5e24b"; }
-    { locale = "zh-TW"; arch = "linux-i686"; sha256 = "a9176628228c3f3e07d2929caa872b4a24d9f620de79a148c01f0716c9dd058f"; }
-    { locale = "zh-TW"; arch = "linux-x86_64"; sha256 = "f067e1f516d639b2cc997019a39b568d6377437d2d6810fb87d23a64e72995a0"; }
-    { locale = "ar"; arch = "linux-i686"; sha256 = "7b016747c9e9066a8e4383303ee22e600d3b00716c53755c95067dc8b6267046"; }
-    { locale = "ar"; arch = "linux-x86_64"; sha256 = "f798804c9aa0eb8fd9cde80acf8a2ebc3b4855588ff14092da935cd77bbc660a"; }
-    { locale = "en-GB"; arch = "linux-i686"; sha256 = "7a19e07c52de321f8f182bd14fdaf137b120167d9d2ab4929476f7cf9a94a744"; }
-    { locale = "en-GB"; arch = "linux-x86_64"; sha256 = "b66b2ff31cc778f52ce9e987f38a93f973c04dacbf04559b1872537a083cb98e"; }
-    { locale = "ga-IE"; arch = "linux-i686"; sha256 = "7599ba2b65fcac92464c2ee480c4c823cd0f35661fa30982575e6f87069d3e58"; }
-    { locale = "ga-IE"; arch = "linux-x86_64"; sha256 = "e81f157f75f2eb94f28dc7f2da5c1d0fbb8f8077c28c3afdb2144dd906ce773f"; }
-    { locale = "bn-BD"; arch = "linux-i686"; sha256 = "bdcafd77469b70a8e02cacab63503e4ba085e3b4230e012313f743a130448cb1"; }
-    { locale = "bn-BD"; arch = "linux-x86_64"; sha256 = "2f57c5353e75ec9dd56abf4c4f197af64648e3e2e927b7c868db6f664abb2e14"; }
-    { locale = "pa-IN"; arch = "linux-i686"; sha256 = "f9d8a77df3e4718260e9235ce09008a224e02bde12efe5a88c9341432637f0c4"; }
-    { locale = "pa-IN"; arch = "linux-x86_64"; sha256 = "46a4ae81ecd6fb22aed54a0ca40ddf292adc94b37b38a57e9ab64f5bed8b0a39"; }
-    { locale = "et"; arch = "linux-i686"; sha256 = "f03136ad26eb1d5ead82e26e8620e3cd1b7f30ceb552329d008a33bcb2e930c4"; }
-    { locale = "et"; arch = "linux-x86_64"; sha256 = "d2e446dea1db14210da9e1556614a92954c61ce00b24958ea4c2a61b597c0b13"; }
-  ];
+# imports `version` and `sources`
+with (import ./sources.nix);
 
+let
   arch = if stdenv.system == "i686-linux"
     then "linux-i686"
     else "linux-x86_64";
@@ -177,7 +61,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download-installer.cdn.mozilla.net/pub/thunderbird/releases/${version}/${source.arch}/${source.locale}/thunderbird-${version}.tar.bz2";
-    inherit (source) sha256;
+    inherit (source) sha1;
   };
 
   phases = "unpackPhase installPhase";
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_nix.rb b/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_nix.rb
deleted file mode 100644
index fe2ed59389ef..000000000000
--- a/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_nix.rb
+++ /dev/null
@@ -1,213 +0,0 @@
-version = if ARGV.empty?
-            "latest"
-          else
-            ARGV[0]
-          end
-
-base_path = "download-installer.cdn.mozilla.net/pub/thunderbird/releases"
-
-arches = ["linux-i686", "linux-x86_64"]
-
-arches.each do |arch|
-  system("wget", "--recursive", "--continue", "--no-parent", "--reject-regex", ".*\\?.*", "--reject", "xpi", "http://#{base_path}/#{version}/#{arch}/")
-end
-
-locales = Dir.glob("#{base_path}/#{version}/#{arches[0]}/*").map do |path|
-  File.basename(path)
-end
-
-locales.delete("index.html")
-locales.delete("xpi")
-
-real_version = Dir.glob("#{base_path}/#{version}/#{arches[0]}/#{locales[0]}/thunderbird-*")[0].match(/thunderbird-([0-9.]*)/)[1][0..-2]
-
-locale_arch_path_tuples = locales.flat_map do |locale|
-  arches.map do |arch|
-    path = Dir.glob("#{base_path}/#{version}/#{arch}/#{locale}/thunderbird-*")[0]
-
-    [locale, arch, path]
-  end
-end
-
-paths = locale_arch_path_tuples.map do |tuple| tuple[2] end
-
-hashes = IO.popen(["sha256sum", "--binary", *paths]) do |input|
-  input.each_line.map do |line|
-    $stderr.puts(line)
-
-    line.match(/^[0-9a-f]*/)[0]
-  end
-end
-
-
-puts(<<"EOH")
-# This file is generated from generate_nix.rb. DO NOT EDIT.
-# Execute the following command in a temporary directory to update the file.
-#
-# ruby generate_nix.rb > default.nix
-
-{ stdenv, fetchurl, config
-, gconf
-, alsaLib
-, at_spi2_atk
-, atk
-, cairo
-, cups
-, curl
-, dbus_glib
-, dbus_libs
-, fontconfig
-, freetype
-, gdk_pixbuf
-, glib
-, glibc
-, gst_plugins_base
-, gstreamer
-, gtk
-, kerberos
-, libX11
-, libXScrnSaver
-, libXext
-, libXinerama
-, libXrender
-, libXt
-, libcanberra
-, libgnome
-, libgnomeui
-, mesa
-, nspr
-, nss
-, pango
-}:
-
-assert stdenv.isLinux;
-
-let
-  version = "#{real_version}";
-  sources = [
-EOH
-
-locale_arch_path_tuples.zip(hashes) do |tuple, hash|
-  locale, arch, path = tuple
-
-  puts(%Q|    { locale = "#{locale}"; arch = "#{arch}"; sha256 = "#{hash}"; }|)
-end
-
-puts(<<'EOF')
-  ];
-
-  arch = if stdenv.system == "i686-linux"
-    then "linux-i686"
-    else "linux-x86_64";
-
-  isPrefixOf = prefix: string:
-    builtins.substring 0 (builtins.stringLength prefix) string == prefix;
-
-  sourceMatches = locale: source:
-      (isPrefixOf source.locale locale) && source.arch == arch;
-
-  systemLocale = config.i18n.defaultLocale or "en-US";
-
-  defaultSource = stdenv.lib.findFirst (sourceMatches "en-US") {} sources;
-
-  source = stdenv.lib.findFirst (sourceMatches systemLocale) defaultSource sources;
-
-in
-
-stdenv.mkDerivation {
-  name = "thunderbird-bin-${version}";
-
-  src = fetchurl {
-    url = "http://download-installer.cdn.mozilla.net/pub/thunderbird/releases/${version}/${source.arch}/${source.locale}/thunderbird-${version}.tar.bz2";
-    inherit (source) sha256;
-  };
-
-  phases = "unpackPhase installPhase";
-
-  libPath = stdenv.lib.makeLibraryPath
-    [ stdenv.gcc.gcc
-      gconf
-      alsaLib
-      at_spi2_atk
-      atk
-      cairo
-      cups
-      curl
-      dbus_glib
-      dbus_libs
-      fontconfig
-      freetype
-      gdk_pixbuf
-      glib
-      glibc
-      gst_plugins_base
-      gstreamer
-      gtk
-      kerberos
-      libX11
-      libXScrnSaver
-      libXext
-      libXinerama
-      libXrender
-      libXt
-      libcanberra
-      libgnome
-      libgnomeui
-      mesa
-      nspr
-      nss
-      pango
-    ] + ":" + stdenv.lib.makeSearchPath "lib64" [
-      stdenv.gcc.gcc
-    ];
-
-  installPhase =
-    ''
-      mkdir -p "$prefix/usr/lib/thunderbird-bin-${version}"
-      cp -r * "$prefix/usr/lib/thunderbird-bin-${version}"
-
-      mkdir -p "$out/bin"
-      ln -s "$prefix/usr/lib/thunderbird-bin-${version}/thunderbird" "$out/bin/"
-
-      for executable in \
-        thunderbird mozilla-xremote-client thunderbird-bin plugin-container \
-        updater
-      do
-        patchelf --interpreter "$(cat $NIX_GCC/nix-support/dynamic-linker)" \
-          "$out/usr/lib/thunderbird-bin-${version}/$executable"
-      done
-
-      for executable in \
-        thunderbird mozilla-xremote-client thunderbird-bin plugin-container \
-        updater libxul.so
-      do
-        patchelf --set-rpath "$libPath" \
-          "$out/usr/lib/thunderbird-bin-${version}/$executable"
-      done
-
-      # Create a desktop item.
-      mkdir -p $out/share/applications
-      cat > $out/share/applications/thunderbird.desktop <<EOF
-      [Desktop Entry]
-      Type=Application
-      Exec=$out/bin/thunderbird
-      Icon=$out/lib/thunderbird-bin-${version}/chrome/icons/default/default256.png
-      Name=Thunderbird
-      GenericName=Mail Reader
-      Categories=Application;Network;
-      EOF
-    '';
-
-  meta = with stdenv.lib; {
-    description = "Mozilla Thunderbird, a full-featured email client";
-    homepage = http://www.mozilla.org/thunderbird/;
-    license = {
-      shortName = "unfree"; # not sure
-      fullName = "unfree";
-      url = http://www.mozilla.org/en-US/foundation/trademarks/policy/;
-    };
-    maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
-    platforms = platforms.linux;
-  };
-}
-EOF
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb b/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb
new file mode 100644
index 000000000000..72b9d1599e0f
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/generate_sources.rb
@@ -0,0 +1,46 @@
+require "open-uri"
+
+version = if ARGV.empty?
+            "latest"
+          else
+            ARGV[0]
+          end
+
+base_path = "http://download-installer.cdn.mozilla.net/pub/thunderbird/releases"
+
+Source = Struct.new(:hash, :arch, :locale, :filename)
+
+sources = open("#{base_path}/#{version}/SHA1SUMS") do |input|
+  input.readlines
+end.select do |line|
+  /\/thunderbird-.*\.tar\.bz2$/ === line && !(/source/ === line)
+end.map do |line|
+  hash, name = line.chomp.split(/ +/)
+  Source.new(hash, *(name.split("/")))
+end.sort_by do |source|
+  [source.locale, source.arch]
+end
+
+real_version = sources[0].filename.match(/thunderbird-([0-9.]*)\.tar\.bz2/)[1]
+
+arches = ["linux-i686", "linux-x86_64"]
+
+puts(<<"EOH")
+# This file is generated from generate_nix.rb. DO NOT EDIT.
+# Execute the following command in a temporary directory to update the file.
+#
+# ruby generate_source.rb > source.nix
+
+{
+  version = "#{real_version}";
+  sources = [
+EOH
+
+sources.each do |source|
+  puts(%Q|    { locale = "#{source.locale}"; arch = "#{source.arch}"; sha1 = "#{source.hash}"; }|)
+end
+
+puts(<<'EOF')
+  ];
+}
+EOF
diff --git a/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
new file mode 100644
index 000000000000..803657f12930
--- /dev/null
+++ b/pkgs/applications/networking/mailreaders/thunderbird-bin/sources.nix
@@ -0,0 +1,120 @@
+# This file is generated from generate_nix.rb. DO NOT EDIT.
+# Execute the following command in a temporary directory to update the file.
+#
+# ruby generate_source.rb > source.nix
+
+{
+  version = "31.2.0";
+  sources = [
+    { locale = "ar"; arch = "linux-i686"; sha1 = "d56d0a2590e04fca857f5083be846b8de73a138c"; }
+    { locale = "ar"; arch = "linux-x86_64"; sha1 = "8e6f0280225e71859cedf72307e12179e71b2bca"; }
+    { locale = "ast"; arch = "linux-i686"; sha1 = "ca2544e5b09b065df8763e8c803856a3313c12b7"; }
+    { locale = "ast"; arch = "linux-x86_64"; sha1 = "71487e868e4a2a87fc2f1550c3c6959016cf4de4"; }
+    { locale = "be"; arch = "linux-i686"; sha1 = "1620d97545765499b37eb05d04bf6d9ee1470544"; }
+    { locale = "be"; arch = "linux-x86_64"; sha1 = "1aebaef6d0e05c6e8ca0d7673b5ab7d9123305ed"; }
+    { locale = "bg"; arch = "linux-i686"; sha1 = "af62f41d3abb604ea4c9bd7ef297eaa28f65e00c"; }
+    { locale = "bg"; arch = "linux-x86_64"; sha1 = "d67bba94639d967e65328fb989696e4e461a0bd3"; }
+    { locale = "bn-BD"; arch = "linux-i686"; sha1 = "7d7180ab9fdb0694ea93842f79411038f576c3a9"; }
+    { locale = "bn-BD"; arch = "linux-x86_64"; sha1 = "4794ee971d932272ac809e2cdf432de5f38e0073"; }
+    { locale = "br"; arch = "linux-i686"; sha1 = "533b40426ca2ad796ffe8ce45051701c27c179be"; }
+    { locale = "br"; arch = "linux-x86_64"; sha1 = "921b1d5a09a3ee282dead4762176eade35a18270"; }
+    { locale = "ca"; arch = "linux-i686"; sha1 = "01858a6bd869dd5060899af428924c3e5d700ee6"; }
+    { locale = "ca"; arch = "linux-x86_64"; sha1 = "1d64573818675c956b4b61b5501b1c2420dfd894"; }
+    { locale = "cs"; arch = "linux-i686"; sha1 = "582dacac45ba886232cc0e9b2757996af1c61fd6"; }
+    { locale = "cs"; arch = "linux-x86_64"; sha1 = "6dc0aa493e90c1c24b2cb3c323a4778413371486"; }
+    { locale = "da"; arch = "linux-i686"; sha1 = "c64e7c50015d4cd633695f98715b6082f23bfb5f"; }
+    { locale = "da"; arch = "linux-x86_64"; sha1 = "10bc1b1758a1cc53fb9503d8ae02c92e640bfb13"; }
+    { locale = "de"; arch = "linux-i686"; sha1 = "69be28626ef89fba20b568cc026786c82a6a3dd6"; }
+    { locale = "de"; arch = "linux-x86_64"; sha1 = "4d43592b2b28241c3e95c089f52b5adfb6c60d80"; }
+    { locale = "el"; arch = "linux-i686"; sha1 = "881a8a8021ee63ed0d62c594bee464532b2d63f9"; }
+    { locale = "el"; arch = "linux-x86_64"; sha1 = "53a30b91a9391e673537ba23ab194573bb40535f"; }
+    { locale = "en-GB"; arch = "linux-i686"; sha1 = "acc98d20faccfcbaaff944957b334598faf73351"; }
+    { locale = "en-GB"; arch = "linux-x86_64"; sha1 = "01ba64dc0228f17c3afc86559a541bc1fd71646a"; }
+    { locale = "en-US"; arch = "linux-i686"; sha1 = "fb035b98358fd697e31162f639a5f01d1f43490b"; }
+    { locale = "en-US"; arch = "linux-x86_64"; sha1 = "26be2c2f908054dc3c8b3d53bfe3a840aae56428"; }
+    { locale = "es-AR"; arch = "linux-i686"; sha1 = "10049cd0188485a6ab61519402fa74d62e9cab2b"; }
+    { locale = "es-AR"; arch = "linux-x86_64"; sha1 = "f579cd0579ff249dc100658cc0e7e6677a28976d"; }
+    { locale = "es-ES"; arch = "linux-i686"; sha1 = "fb9174c60d66141fdf568c92259b02579e70e9fe"; }
+    { locale = "es-ES"; arch = "linux-x86_64"; sha1 = "8f0f216d81badf5bffd976c0472d9f1318672e48"; }
+    { locale = "et"; arch = "linux-i686"; sha1 = "052477b4febfb97d446976d81453289850a61aa3"; }
+    { locale = "et"; arch = "linux-x86_64"; sha1 = "6a6341649624e9932714d32d750501e71dbb3106"; }
+    { locale = "eu"; arch = "linux-i686"; sha1 = "effe11b4ab62a11c110e0edfd9b46c5c8f259133"; }
+    { locale = "eu"; arch = "linux-x86_64"; sha1 = "5152d64bf47f7b92a1e33b42ba1b48596f7069d8"; }
+    { locale = "fi"; arch = "linux-i686"; sha1 = "6b3019504e9a97db8eae5a35c2b963ebdca144ed"; }
+    { locale = "fi"; arch = "linux-x86_64"; sha1 = "a44a93c9c727ecb64f6f83a3fa6c66fc0f1a1153"; }
+    { locale = "fr"; arch = "linux-i686"; sha1 = "31c96279136afe886465eae51b6f32d3f13e53bb"; }
+    { locale = "fr"; arch = "linux-x86_64"; sha1 = "c2923291007f5480d2913d6093b38233939f089a"; }
+    { locale = "fy-NL"; arch = "linux-i686"; sha1 = "00425ba7a789dca73ad5cb3a65bc08040f1a8d2f"; }
+    { locale = "fy-NL"; arch = "linux-x86_64"; sha1 = "a462db5d04e8ad7c3840912b8445041391d01973"; }
+    { locale = "ga-IE"; arch = "linux-i686"; sha1 = "2158427e0f838e958d40a1d3b6a4e50127ac00ea"; }
+    { locale = "ga-IE"; arch = "linux-x86_64"; sha1 = "2390c016ee8b52cf927e4f9cb74b20d65fe06de3"; }
+    { locale = "gd"; arch = "linux-i686"; sha1 = "d7e2675b58ff68bff21fb9d0ce0643073df4e491"; }
+    { locale = "gd"; arch = "linux-x86_64"; sha1 = "ba01c8483e05a4b612443c8172737d901f665666"; }
+    { locale = "gl"; arch = "linux-i686"; sha1 = "9e2895f43b978304e42ec714b01857f494cea265"; }
+    { locale = "gl"; arch = "linux-x86_64"; sha1 = "c1cf1ee118b1133f8df6314a2aa8e83be14b4d5b"; }
+    { locale = "he"; arch = "linux-i686"; sha1 = "a0a872333657bccb342a086a576f273fd34a2d21"; }
+    { locale = "he"; arch = "linux-x86_64"; sha1 = "6ceb775435b2ed0a14f11c096b595361baf6282d"; }
+    { locale = "hr"; arch = "linux-i686"; sha1 = "8975da24b95de228584cd5c8ab8c6d174f0fcd60"; }
+    { locale = "hr"; arch = "linux-x86_64"; sha1 = "23467c23408408c878afe00244bf4779b1eead03"; }
+    { locale = "hu"; arch = "linux-i686"; sha1 = "690b220b01a1bcd683409fca76d50a507e09241e"; }
+    { locale = "hu"; arch = "linux-x86_64"; sha1 = "99ff74aab54f05295199edcb0e06b0fc68bff234"; }
+    { locale = "hy-AM"; arch = "linux-i686"; sha1 = "ed490aa96fce3e61c61ea60f7353edc06fffb5ce"; }
+    { locale = "hy-AM"; arch = "linux-x86_64"; sha1 = "f907190eedbcca43e830f632416a0cfd4df9c77e"; }
+    { locale = "id"; arch = "linux-i686"; sha1 = "3e328a1dd6c29f38913171aae8939f636eb9c845"; }
+    { locale = "id"; arch = "linux-x86_64"; sha1 = "ed074968abf7fb207c747c88a21d1f5834228445"; }
+    { locale = "is"; arch = "linux-i686"; sha1 = "2da9b0ade06b20c19a90eb192c85e17ed96487b1"; }
+    { locale = "is"; arch = "linux-x86_64"; sha1 = "7eefd8c52f95ed4c011ec1b95b4b7b1237801cdd"; }
+    { locale = "it"; arch = "linux-i686"; sha1 = "c46a316fe393dd2353802e488a31b55699ee8d62"; }
+    { locale = "it"; arch = "linux-x86_64"; sha1 = "3e13de5f40f71455a1bf2e562c0ea07833ed28a6"; }
+    { locale = "ja"; arch = "linux-i686"; sha1 = "1a3e904090d6786f23b88cd91afa2f34fc732c70"; }
+    { locale = "ja"; arch = "linux-x86_64"; sha1 = "8b8259bb4cbd30bc0e7aff95585d3f29e9bdd566"; }
+    { locale = "ko"; arch = "linux-i686"; sha1 = "af8db8f0a4329babec9ede706ce36e0f5dcc714e"; }
+    { locale = "ko"; arch = "linux-x86_64"; sha1 = "0397e824b2f2158b0862fe2ac7d192bc8c2c0a8b"; }
+    { locale = "lt"; arch = "linux-i686"; sha1 = "b53dae618889ef676053154517b69c05f0051ffe"; }
+    { locale = "lt"; arch = "linux-x86_64"; sha1 = "cb82a5027aecb830197b764c86452a008da5f55f"; }
+    { locale = "nb-NO"; arch = "linux-i686"; sha1 = "7cca3934255d4f73f35fff9ef90e0c2ea48e856b"; }
+    { locale = "nb-NO"; arch = "linux-x86_64"; sha1 = "4b86d7723efd32be9722012e17ca0d49560fe22a"; }
+    { locale = "nl"; arch = "linux-i686"; sha1 = "dc7430d675f88aa0f7e4b78fa93572305ed97222"; }
+    { locale = "nl"; arch = "linux-x86_64"; sha1 = "e9e9f7ed4308d496bb6490ac252f236bcd659bda"; }
+    { locale = "nn-NO"; arch = "linux-i686"; sha1 = "5a5f40de1986de090a59205446ce5918910c2ae1"; }
+    { locale = "nn-NO"; arch = "linux-x86_64"; sha1 = "649eea7ff3be8b2d8cb0fa9df623e8f38117132d"; }
+    { locale = "pa-IN"; arch = "linux-i686"; sha1 = "5255472c604dd97b44433ab76c34d4e6c1e44d17"; }
+    { locale = "pa-IN"; arch = "linux-x86_64"; sha1 = "8a1e3a0ec2400a43b41856fb111e86392d29a1fe"; }
+    { locale = "pl"; arch = "linux-i686"; sha1 = "b279dbd5bfe1e45ac65891b6632461c8f76ac9b0"; }
+    { locale = "pl"; arch = "linux-x86_64"; sha1 = "46b827110e9bb188075fa58088b2bec1a2762609"; }
+    { locale = "pt-BR"; arch = "linux-i686"; sha1 = "f2bcec6668773a907368d9d04cc3fb018992637c"; }
+    { locale = "pt-BR"; arch = "linux-x86_64"; sha1 = "f91868c8678862da540e7e7ba9fc1ae1756de0db"; }
+    { locale = "pt-PT"; arch = "linux-i686"; sha1 = "4f62468a76e73b98f85bc13c48ad0e9c62cded36"; }
+    { locale = "pt-PT"; arch = "linux-x86_64"; sha1 = "a3647ab9b35f22e6ca6b0f943321f40c4376659f"; }
+    { locale = "rm"; arch = "linux-i686"; sha1 = "fb0af4d895b50cbb20fa049c83c0f47f8cf494d4"; }
+    { locale = "rm"; arch = "linux-x86_64"; sha1 = "49501a9a00349a2db0be269831b76021f5a4d116"; }
+    { locale = "ro"; arch = "linux-i686"; sha1 = "4b03ae9f43f6b1c473fe170fae4141a1aa2898d5"; }
+    { locale = "ro"; arch = "linux-x86_64"; sha1 = "0e0dc3b8836696b5453cef65c343b77c42df0e7a"; }
+    { locale = "ru"; arch = "linux-i686"; sha1 = "35c31b019b2c97f534f8ca33dcfb00503c712704"; }
+    { locale = "ru"; arch = "linux-x86_64"; sha1 = "814eb4985e17a88af793e1e9dd657fd9b9a32822"; }
+    { locale = "si"; arch = "linux-i686"; sha1 = "f700ffb1ce581fc19f4abbaa9139d4be904bace4"; }
+    { locale = "si"; arch = "linux-x86_64"; sha1 = "bd772880dac1bee8208dbf6a3e1a244af2d884aa"; }
+    { locale = "sk"; arch = "linux-i686"; sha1 = "6ff95241e3feab5c003a0dc9020ab089d0286f0e"; }
+    { locale = "sk"; arch = "linux-x86_64"; sha1 = "7dfb864346fd853d83d910d98e1e530f049372d6"; }
+    { locale = "sl"; arch = "linux-i686"; sha1 = "f9f824a578f77c13a8e39c9c5e756de8e05255cb"; }
+    { locale = "sl"; arch = "linux-x86_64"; sha1 = "32e1e3983f0ea5e972f82d3c0f4663386f8da991"; }
+    { locale = "sq"; arch = "linux-i686"; sha1 = "5b04196a291058c7c68485a245d73d01a2adfc27"; }
+    { locale = "sq"; arch = "linux-x86_64"; sha1 = "1860030149e4568e8b24922dbed0673bc72aa7a2"; }
+    { locale = "sr"; arch = "linux-i686"; sha1 = "c88e8d47f4078cb06600c4b6128b3d7a62239608"; }
+    { locale = "sr"; arch = "linux-x86_64"; sha1 = "195c76ce3b8cbc4d8a6cfb015116bbf57ffbed7e"; }
+    { locale = "sv-SE"; arch = "linux-i686"; sha1 = "d19cfcfce1118693c0dee00dc8dbdc657932e817"; }
+    { locale = "sv-SE"; arch = "linux-x86_64"; sha1 = "92a1bd6764eef68e537c45c77b893da55ba910bc"; }
+    { locale = "ta-LK"; arch = "linux-i686"; sha1 = "4bf45f785006cf30305d11aedf00d0038995e7e2"; }
+    { locale = "ta-LK"; arch = "linux-x86_64"; sha1 = "30be2773e6922e6abc4af33cca35964425059fca"; }
+    { locale = "tr"; arch = "linux-i686"; sha1 = "3a7de4dbed32a7d7b0faa20246f2ffc07ab31b44"; }
+    { locale = "tr"; arch = "linux-x86_64"; sha1 = "d64aea1cdf318d08321681f70ff22d7f80ae9e4e"; }
+    { locale = "uk"; arch = "linux-i686"; sha1 = "48d3a17e0b24c55e1fe3b73b019365e38653b187"; }
+    { locale = "uk"; arch = "linux-x86_64"; sha1 = "ba89e2038eac2e8ad34ac4296feda8c62f170143"; }
+    { locale = "vi"; arch = "linux-i686"; sha1 = "06ebf22992bc3890df6fae5955bb9791b9bb1339"; }
+    { locale = "vi"; arch = "linux-x86_64"; sha1 = "3e5d8b660e799eeeb37bb5b0fbf86d4d44fa31ba"; }
+    { locale = "zh-CN"; arch = "linux-i686"; sha1 = "5a697d19c7890f600697dea64aa5ecff8ef0e5a1"; }
+    { locale = "zh-CN"; arch = "linux-x86_64"; sha1 = "3226435da70e0aae98eaee1fb1c9a87af7167403"; }
+    { locale = "zh-TW"; arch = "linux-i686"; sha1 = "53a2c162f9186dca91cc35f5298285f4f9da7a55"; }
+    { locale = "zh-TW"; arch = "linux-x86_64"; sha1 = "12cdf96a7cc3ea40cd9542d8a7d16827116e65d7"; }
+  ];
+}
diff --git a/pkgs/applications/networking/mailreaders/thunderbird/default.nix b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
index fa48a8a0a2f5..e6ba7e21dc8e 100644
--- a/pkgs/applications/networking/mailreaders/thunderbird/default.nix
+++ b/pkgs/applications/networking/mailreaders/thunderbird/default.nix
@@ -13,7 +13,7 @@
   enableOfficialBranding ? false
 }:
 
-let version = "31.1.2"; in
+let version = "31.2.0"; in
 let verName = "${version}"; in
 
 stdenv.mkDerivation rec {
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "ftp://ftp.mozilla.org/pub/thunderbird/releases/${verName}/source/thunderbird-${verName}.source.tar.bz2";
-    sha1 = "a3983e7d29bd70e8117ca26f5b9873c68675caa9";
+    sha1 = "87dff89388bd7ec51876e1bdbd82bc3fe60006b6";
   };
 
   buildInputs = # from firefox30Pkgs.xulrunner, but without gstreamer and libvpx
diff --git a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
index ba71e1985b46..e4ca6d423cdc 100644
--- a/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
+++ b/pkgs/applications/networking/p2p/eiskaltdcpp/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
     sha256 = "3d9170645450f9cb0a605278b8646fec2110b9637910d86fd27cf245cbe24eaf";
   };
 
-  buildInputs = [ cmake pkgconfig qt4 boost boost.lib bzip2 libX11 pcre libidn lua5 miniupnpc aspell gettext ];
+  buildInputs = [ cmake pkgconfig qt4 boost bzip2 libX11 pcre libidn lua5 miniupnpc aspell gettext ];
 
   cmakeFlags = ''
     -DUSE_ASPELL=ON
diff --git a/pkgs/applications/networking/p2p/frostwire/default.nix b/pkgs/applications/networking/p2p/frostwire/default.nix
new file mode 100644
index 000000000000..1a598ad17b0f
--- /dev/null
+++ b/pkgs/applications/networking/p2p/frostwire/default.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl, jre }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+  version = "6.0.0";
+  name = "frostwire-${version}";
+
+  src = fetchurl {
+    url = "http://dl.frostwire.com/frostwire/${version}/frostwire-${version}.x86_64.tar.gz";
+    sha256 = "73d6e3db9971becf1c5b7faf12b62fa3ac0a243ac06b8b4eada9118f56990177";
+  };
+
+  inherit jre;
+
+  installPhase = ''
+    jar=$(ls */*.jar)
+    
+    mkdir -p $out/share/java
+    mv $jar $out/share/java
+    
+    mkdir -p $out/bin
+    cat > $out/bin/frostwire <<EOF
+    #! $SHELL -e
+    exec $out/share/java/frostwire
+    EOF
+    chmod +x $out/bin/frostwire
+  '';
+
+  meta = {
+    homepage = http://www.frostwire.com/;
+    description = "BitTorrent Client and Cloud File Downloader";
+    license = stdenv.lib.licenses.gpl2;
+    maintainers = [ stdenv.lib.maintainers.gavin ];
+  };
+}
diff --git a/pkgs/applications/networking/p2p/qbittorrent/default.nix b/pkgs/applications/networking/p2p/qbittorrent/default.nix
index ccf129881f5d..51c43771bcf7 100644
--- a/pkgs/applications/networking/p2p/qbittorrent/default.nix
+++ b/pkgs/applications/networking/p2p/qbittorrent/default.nix
@@ -2,18 +2,21 @@
 , pkgconfig }:
 
 stdenv.mkDerivation rec {
-  name = "qbittorrent-3.1.10";
+  name = "qbittorrent-3.1.11";
 
   src = fetchurl {
     url = "mirror://sourceforge/qbittorrent/${name}.tar.xz";
-    sha256 = "0xhqli191r5v9b5x6wj1wsjlj6svf6ldgzl7jza39q3ipr5c2pg6";
+    sha256 = "0qvz8ifk01b9sw9x5yh3b5kmssx5yi026zvgvabdvfaqkvcmw43i";
   };
 
-  buildInputs = [ qt4 which dbus_libs boost libtorrentRasterbar
-    pkgconfig ];
+  buildInputs = [
+    qt4 which dbus_libs boost libtorrentRasterbar pkgconfig
+  ];
 
-  configureFlags = "--with-libboost-inc=${boost}/include "
-    + "--with-libboost-lib=${boost}/lib";
+  configureFlags = [
+    "--with-libboost-lib=${boost.lib}/lib"
+    "--with-libboost-inc=${boost.dev}/include"
+  ];
 
   # https://github.com/qbittorrent/qBittorrent/issues/1992 
   #enableParallelBuilding = true;
diff --git a/pkgs/applications/networking/p2p/twister/default.nix b/pkgs/applications/networking/p2p/twister/default.nix
index 13f6b2bcce4a..e6fd674e9e7c 100644
--- a/pkgs/applications/networking/p2p/twister/default.nix
+++ b/pkgs/applications/networking/p2p/twister/default.nix
@@ -26,7 +26,6 @@ in stdenv.mkDerivation rec {
   configureFlags = [
     "--with-libgeoip"
     "--with-libiconv"
-    "--with-boost=${boost}"
     "--disable-deprecated-functions"
     "--enable-tests"
     "--enable-python-binding"
diff --git a/pkgs/applications/office/ledger/3.0.nix b/pkgs/applications/office/ledger/3.0.nix
index 22f15f652175..6118d377a79f 100644
--- a/pkgs/applications/office/ledger/3.0.nix
+++ b/pkgs/applications/office/ledger/3.0.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation {
     sha256 = "0fmmhr3as4v2kb6h64k1fq979080cqhd75jvxfg7axk2mylb6b3q";
   };
 
-  buildInputs = [ cmake boost boost.lib gmp mpfr libedit python texinfo gnused ];
+  buildInputs = [ cmake boost gmp mpfr libedit python texinfo gnused ];
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/office/libreoffice/default.nix b/pkgs/applications/office/libreoffice/default.nix
index e7583c437c81..036f21fdead3 100644
--- a/pkgs/applications/office/libreoffice/default.nix
+++ b/pkgs/applications/office/libreoffice/default.nix
@@ -24,7 +24,7 @@ let
   langsSpaces = stdenv.lib.concatStringsSep " " langs;
   major = "4";
   minor = "3";
-  patch = "1";
+  patch = "3";
   tweak = "2";
   subdir = "${major}.${minor}.${patch}";
   version = "${subdir}${if tweak == "" then "" else "."}${tweak}";
@@ -40,9 +40,9 @@ let
        sha256 = "10amvz7fzr1kcy3svfspkdykmspqgpjdmk44cyr406wi7v4lwnf9";
      };
 
-     configureFlags = "--with-boost=${boost}";
+     buildInputs = [ boost mdds pkgconfig ];
 
-     buildInputs = [ boost boost.lib mdds pkgconfig ];
+     configureFlags = [ "--with-boost=${boost.dev}" ];
   };
 
   fetchThirdParty = {name, md5, brief, subDir ? ""}: fetchurl {
@@ -60,9 +60,10 @@ let
       (x: x.name == "${name}.tar.bz2")
       ("Error: update liborcus version inside LO expression")
       (import ./libreoffice-srcs.nix));
-    configureFlags = "--with-boost=${boost}";
 
-    buildInputs = [ boost boost.lib mdds pkgconfig zlib libixion ];
+    buildInputs = [ boost mdds pkgconfig zlib libixion ];
+
+    configureFlags = [ "--with-boost=${boost.dev}" ];
   };
 
   fetchSrc = {name, sha256}: fetchurl {
@@ -79,14 +80,14 @@ let
 
     translations = fetchSrc {
       name = "translations";
-      sha256 = "0vj1fpr99cb124hag0hijpp3pfbbi0gak56qiikxbwbq7mab6p9h";
+      sha256 = "0jpkkb71fbiid12r2dpvak304hlvx4ws1bk2yrb3narz15wzcvjr";
     };
 
     # TODO: dictionaries
 
     help = fetchSrc {
       name = "help";
-      sha256 = "1q0vzfla764zjz6xcx6r4nc8rikwb3pr2jsraj28hhwr5b26gdfz";
+      sha256 = "0vd4ndnqy7xjlxh9flfp84jy82bvaq80pxcsx6lsarxsb4cvw7sz";
     };
 
   };
@@ -96,7 +97,7 @@ stdenv.mkDerivation rec {
 
   src = fetchurl {
     url = "http://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-    sha256 = "0s1j5y1gfyf3r53bbqnzirx17p49i8ah07737nrzik0ggps3lgd5";
+    sha256 = "0abmrn8iwwsbvi9dxq1pnirclxvfb33ngg7lpsj0y5lf0jpgpbb0";
   };
 
   # Openoffice will open libcups dynamically, so we link it directly
@@ -183,6 +184,8 @@ stdenv.mkDerivation rec {
   '';
 
   configureFlags = [
+    "--with-boost=${boost.dev}"
+    "--with-boost-libdir=${boost.lib}/lib"
     "--with-vendor=NixOS"
 
     # Without these, configure does not finish
@@ -198,7 +201,6 @@ stdenv.mkDerivation rec {
     "--with-system-headers"
     "--with-system-openssl"
     "--with-system-openldap"
-    "--with-boost-libdir=${boost.lib}/lib"
     "--without-system-libwps"  # TODO
     "--without-doxygen"
 
@@ -236,7 +238,7 @@ stdenv.mkDerivation rec {
   '';
 
   buildInputs = with xorg;
-    [ ant ArchiveZip autoconf automake bison boost boost.lib cairo clucene_core
+    [ ant ArchiveZip autoconf automake bison boost cairo clucene_core
       CompressZlib cppunit cups curl db 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 unixODBC libjpeg
diff --git a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
index 6110a54feb55..7460f7e1fd68 100644
--- a/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
+++ b/pkgs/applications/office/libreoffice/libreoffice-srcs.nix
@@ -525,4 +525,10 @@
   md5 = "44d667c142d7cda120332623eab69f40";
   brief = true;
 }
+{
+  name = "libgltf-0.0.2.tar.bz2";
+  md5 = "d63a9f47ab048f5009d90693d6aa6424";
+  brief = true;
+  subDir = "libgltf/";
+}
 ]
diff --git a/pkgs/applications/science/electronics/pulseview/default.nix b/pkgs/applications/science/electronics/pulseview/default.nix
index f9369efe96e5..07724d932541 100644
--- a/pkgs/applications/science/electronics/pulseview/default.nix
+++ b/pkgs/applications/science/electronics/pulseview/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1pf1dgwd9j586nqmni6gqf3qxrsmawcmi9wzqfzqkjci18xd7dgy";
   };
 
-  buildInputs = [ pkgconfig cmake glib qt4 boost boost.lib libsigrok
+  buildInputs = [ pkgconfig cmake glib qt4 boost libsigrok
     libsigrokdecode libserialport libzip udev libusb1 libftdi
   ];
 
diff --git a/pkgs/applications/science/logic/coq/HEAD.nix b/pkgs/applications/science/logic/coq/HEAD.nix
index bf426bc42c2f..c9c8396c37a7 100644
--- a/pkgs/applications/science/logic/coq/HEAD.nix
+++ b/pkgs/applications/science/logic/coq/HEAD.nix
@@ -3,7 +3,7 @@
 {stdenv, fetchgit, writeText, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
 
 let
-  version = "8.5pre-2313bde0";
+  version = "8.5pre-edbd6a21";
   coq-version = "8.5";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
@@ -17,8 +17,8 @@ stdenv.mkDerivation {
 
   src = fetchgit {
     url = git://scm.gforge.inria.fr/coq/coq.git;
-    rev = "2313bde0116a5916912bebbaca77d291f7b2760a";
-    sha256 = "116b8060a47a7b2d0cac72d86f7e320bec99b6d450614d1e6b92ff919619c509";
+    rev = "edbd6a211c934778d9721c36463836ef902b4fdd";
+    sha256 = "19zk1lghqljh86z2kv6kpxwzinpkbwxzf244dmszx31zw4zdrskl";
   };
 
   buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ];
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index f0f62bfb3537..721cd4ffa083 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -3,7 +3,7 @@
 {stdenv, fetchurl, pkgconfig, writeText, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
 
 let
-  version = "8.4pl4";
+  version = "8.4pl5";
   coq-version = "8.4";
   buildIde = lablgtk != null;
   ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
@@ -17,7 +17,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://coq.inria.fr/distrib/V${version}/files/coq-${version}.tar.gz";
-    sha256 = "00bzf4kfbd0g279jrr8ynzvb9wqcly3wi577bkrxivhrg2msxhq6";
+    sha256 = "0iajsabyrgypk1ncm0kqcxqv02k24xa1bayaxacjgmsqiavmm09m";
   };
 
   buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ];
diff --git a/pkgs/applications/science/logic/stp/default.nix b/pkgs/applications/science/logic/stp/default.nix
index 109d9fe3d4be..cfe96bc6983a 100644
--- a/pkgs/applications/science/logic/stp/default.nix
+++ b/pkgs/applications/science/logic/stp/default.nix
@@ -7,7 +7,7 @@ stdenv.mkDerivation rec {
     rev    = "3aa11620a823d617fc033d26aedae91853d18635";
     sha256 = "832520787f57f63cf47364d080f30ad10d6d6e00f166790c19b125be3d6dd45c";
   };
-  buildInputs = [ cmake boost boost.lib bison flex perl zlib ];
+  buildInputs = [ cmake boost bison flex perl zlib ];
   cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
   patchPhase = ''
       sed -e 's,^export(PACKAGE.*,,' -i CMakeLists.txt
diff --git a/pkgs/applications/science/math/sage/default.nix b/pkgs/applications/science/math/sage/default.nix
index ced8b6f95bb6..a27a93dd2c64 100644
--- a/pkgs/applications/science/math/sage/default.nix
+++ b/pkgs/applications/science/math/sage/default.nix
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
   name = "sage-6.1.1";
 
   src = fetchurl {
-    url = "http://mirrors.xmission.com/sage/src/sage-6.1.1.tar.gz";
+    url = "mirror://sagemath/${name}.tar.gz";
     sha256 = "0kbzs0l9q7y34jv3f8rd1c2mrjsjkdgaw6mfdwjlpg9g4gghmq5y";
   };
 
@@ -23,9 +23,8 @@ stdenv.mkDerivation rec {
   '';
 
   meta = {
-    homepage = http://www.scilab.org/;
-    description = "Scientific software package for numerical computations (Matlab lookalike)";
-    # see http://www.scilab.org/legal
-    license = "SciLab";
+    homepage = "http://www.sagemath.org";
+    description = "A free open source mathematics software system";
+    license = stdenv.lib.licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/version-management/gource/default.nix b/pkgs/applications/version-management/gource/default.nix
index 74eee4778472..56095762f04b 100644
--- a/pkgs/applications/version-management/gource/default.nix
+++ b/pkgs/applications/version-management/gource/default.nix
@@ -13,10 +13,10 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     glew SDL ftgl pkgconfig libpng libjpeg pcre SDL_image mesa
-    boost boost.lib glm
+    boost glm
   ];
 
-  configureFlags = "--with-boost-libdir=${boost.lib}/lib";
+  configureFlags = [ "--with-boost-libdir=${boost.lib}/lib" ];
 
   NIX_CFLAGS_COMPILE = "-fpermissive"; # fix build with newer gcc versions
 
diff --git a/pkgs/applications/video/aegisub/default.nix b/pkgs/applications/video/aegisub/default.nix
index 746e7afb38d4..c32235a592fd 100644
--- a/pkgs/applications/video/aegisub/default.nix
+++ b/pkgs/applications/video/aegisub/default.nix
@@ -41,7 +41,6 @@ stdenv.mkDerivation rec {
     ++ optional portaudioSupport portaudio
     ;
 
-  configureFlags = "--with-boost-libdir=${boost.lib}/lib/";
 
   enableParallelBuilding = true;
 
diff --git a/pkgs/applications/video/gnash/default.nix b/pkgs/applications/video/gnash/default.nix
index 879fa08ea382..5a519e231c80 100644
--- a/pkgs/applications/video/gnash/default.nix
+++ b/pkgs/applications/video/gnash/default.nix
@@ -30,12 +30,11 @@ stdenv.mkDerivation rec {
     patch -p1 < ${patch_CVE}
 
     # Add all libs to `macros/libslist', a list of library search paths.
-    for lib in ${lib.concatStringsSep " "
-                                      (map (lib: "\"${lib}\"/lib")
-                                           (buildInputs ++ [stdenv.glibc]))}
-    do
+    libs=$(echo "$NIX_LDFLAGS" | tr ' ' '\n' | sed -n 's/.*-L\(.*\).*/\1/p')
+    for lib in $libs; do
       echo -n "$lib " >> macros/libslist
     done
+    echo -n "${stdenv.glibc}/lib" >> macros/libslist
 
     # Make sure to honor $TMPDIR, for chroot builds.
     for file in configure gui/Makefile.in Makefile.in
@@ -54,7 +53,7 @@ stdenv.mkDerivation rec {
   buildInputs = [
     gettext x11 SDL SDL_mixer gstreamer gst_plugins_base gst_plugins_good
     gst_ffmpeg speex libtool
-    libogg libxml2 libjpeg mesa libpng libungif boost boost.lib freetype agg
+    libogg libxml2 libjpeg mesa libpng libungif boost freetype agg
     dbus curl pkgconfig glib gtk gtkglext pangox_compat
     xulrunner
     makeWrapper
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index 1523aa4377df..a6c2ff0b822a 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -28,7 +28,6 @@ stdenv.mkDerivation rec {
     expat wxGTK zlib ruby gettext pkgconfig curl
   ];
 
-  configureFlags = "--with-boost-libdir=${boost}/lib";
   buildPhase = ''
     ruby ./drake
   '';
diff --git a/pkgs/applications/video/mythtv/default.nix b/pkgs/applications/video/mythtv/default.nix
index a4fe07b2d053..2bc635d510eb 100644
--- a/pkgs/applications/video/mythtv/default.nix
+++ b/pkgs/applications/video/mythtv/default.nix
@@ -1,22 +1,32 @@
 { stdenv, fetchurl, which, qt4, x11, pulseaudio, fftwSinglePrec
 , lame, zlib, mesa, alsaLib, freetype, perl, pkgconfig
 , libX11, libXv, libXrandr, libXvMC, libXinerama, libXxf86vm, libXmu
+, yasm, libuuid, taglib, libtool, autoconf, automake, file
 }:
 
 stdenv.mkDerivation rec {
-  name = "mythtv-0.24.2";
+  name = "mythtv-${version}";
+  version = "0.27.4";
 
   src = fetchurl {
-    url = "http://ftp.osuosl.org/pub/mythtv/${name}.tar.bz2";
-    sha256 = "14mkyf2b26pc9spx6lg15mml0nqyg1r3qnq8m9dz3110h771y2db";
+    url = "https://github.com/MythTV/mythtv/archive/v${version}.tar.gz";
+    sha256 = "0nrn4fbkkzh43n7jgbv21i92sb4z4yacwj9yj6m3hjbffzy4ywqz";
   };
 
+  sourceRoot = "${name}/mythtv";
+
   buildInputs = [
     freetype qt4 lame zlib x11 mesa perl alsaLib pulseaudio fftwSinglePrec
     libX11 libXv libXrandr libXvMC libXmu libXinerama libXxf86vm libXmu
+    libuuid taglib
   ];
+  nativeBuildInputs = [ pkgconfig which yasm libtool autoconf automake file ];
 
-  nativeBuildInputs = [ pkgconfig which ];
-
-  patches = [ ./settings.patch ];
+  meta = with stdenv.lib; {
+    homepage = "https://www.mythtv.org/";
+    description = "Open Source DVR";
+    license = licenses.gpl2;
+    meta.platforms = platforms.linux;
+    maintainers = [ maintainers.titanous ];
+  };
 }
diff --git a/pkgs/applications/video/mythtv/settings.patch b/pkgs/applications/video/mythtv/settings.patch
deleted file mode 100644
index ec1e70097921..000000000000
--- a/pkgs/applications/video/mythtv/settings.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Makefile b/Makefile
-index 05db819..383036d 100644
---- a/Makefile
-+++ b/Makefile
-@@ -53,7 +53,7 @@ i18n/Makefile: i18n/i18n.pro
- locales/Makefile: locales/locales.pro
- 
- $(addsuffix /Makefile,$(QT_SUBDIRS)): %/Makefile :
--	cd $*; $(QMAKE) QMAKE=$(QMAKE) -o $(@F) $(<F)
-+	cd $*; $(QMAKE) QMAKE=$(QMAKE) PREFIX=${PREFIX} -o $(@F) $(<F)
- 
- $(SUBDIRS): $(addsuffix /Makefile,$(SUBDIRS)) version.cpp
- 	$(MAKE) -C $@
diff --git a/pkgs/applications/video/xbmc/default.nix b/pkgs/applications/video/xbmc/default.nix
index a82abb220050..65a930a261c9 100644
--- a/pkgs/applications/video/xbmc/default.nix
+++ b/pkgs/applications/video/xbmc/default.nix
@@ -99,11 +99,11 @@ stdenv.mkDerivation rec {
       done
     '';
 
-    meta = {
+    meta = with stdenv.lib; {
       homepage = http://xbmc.org/;
       description = "Media center";
       license = "GPLv2";
-      platforms = stdenv.lib.platforms.linux;
-      maintainers = [ stdenv.lib.maintainers.iElectric ];
+      platforms = platforms.linux;
+      maintainers = [ maintainers.iElectric maintainers.titanous ];
     };
 }
diff --git a/pkgs/applications/video/xbmc/plugins.nix b/pkgs/applications/video/xbmc/plugins.nix
index 16484e018335..f1d4d50f37d7 100644
--- a/pkgs/applications/video/xbmc/plugins.nix
+++ b/pkgs/applications/video/xbmc/plugins.nix
@@ -81,13 +81,13 @@ in
 
     plugin = "svtplay";
     namespace = "plugin.video.svtplay";
-    version = "4.0.8";
+    version = "4.0.9";
 
     src = fetchFromGitHub {
       owner = "nilzen";
       repo = "xbmc-" + plugin;
-      rev = "967dc429201200200dba0e755ede3a0e9cb1b137";
-      sha256 = "0kaxcci9zbblpkn1mrmdl49844r90agww41frz9vw6q2ajq1z16k";
+      rev = "29a754e49584d1ca32f0c07b87304669cf266bb0";
+      sha256 = "0k7mwaknw4h1jlq7ialbzgxxpb11j8bk29dx2gimp40lvnyw4yhz";
     };
 
     meta = with stdenv.lib; {
diff --git a/pkgs/applications/video/xbmc/wrapper.nix b/pkgs/applications/video/xbmc/wrapper.nix
index b1017c7098c7..90413c1769aa 100644
--- a/pkgs/applications/video/xbmc/wrapper.nix
+++ b/pkgs/applications/video/xbmc/wrapper.nix
@@ -28,8 +28,15 @@ stdenv.mkDerivation {
     do
       $(ln -s $share $out/share/xbmc/.)
     done)
-    makeWrapper ${xbmc}/bin/xbmc $out/bin/xbmc \
+    $(for passthrough in icons xsessions applications
+    do
+      ln -s ${xbmc}/share/$passthrough $out/share/
+    done)
+    $(for exe in xbmc{,-standalone}
+    do
+    makeWrapper ${xbmc}/bin/$exe $out/bin/$exe \
       --prefix XBMC_HOME : $out/share/xbmc;
+    done)
   '';
 
   preferLocalBuilds = true;
diff --git a/pkgs/applications/virtualization/virt-viewer/default.nix b/pkgs/applications/virtualization/virt-viewer/default.nix
index 1da4a521da75..b49bd40136f3 100644
--- a/pkgs/applications/virtualization/virt-viewer/default.nix
+++ b/pkgs/applications/virtualization/virt-viewer/default.nix
@@ -7,10 +7,10 @@ with stdenv.lib;
 
 let sourceInfo = rec {
     baseName="virt-viewer";
-    version="0.6.0";
+    version="1.0";
     name="${baseName}-${version}";
     url="http://virt-manager.org/download/sources/${baseName}/${name}.tar.gz";
-    hash="0svalnr6k8rjadysnxixygk3bdx04asmwx75bhrbljyicba216v6";
+    hash="09sf1xzvw2yysv4c1jkqlzrazdg501r4j12hiwjdzk5swk6lppw0";
 }; in
 
 stdenv.mkDerivation  {
diff --git a/pkgs/applications/virtualization/virtualbox/default.nix b/pkgs/applications/virtualization/virtualbox/default.nix
index 3fa97e78835e..68ac9ea0716e 100644
--- a/pkgs/applications/virtualization/virtualbox/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/default.nix
@@ -12,7 +12,7 @@ with stdenv.lib;
 
 let
 
-  version = "4.3.16"; # changes ./guest-additions as well
+  version = "4.3.18"; # changes ./guest-additions as well
 
   forEachModule = action: ''
     for mod in \
@@ -32,13 +32,13 @@ let
   '';
 
   # See https://github.com/NixOS/nixpkgs/issues/672 for details
-  extpackRevision = "95972";
+  extpackRevision = "96516";
   extensionPack = requireFile rec {
     name = "Oracle_VM_VirtualBox_Extension_Pack-${version}-${extpackRevision}.vbox-extpack";
     # IMPORTANT: Hash must be base16 encoded because it's used as an input to
     # VBoxExtPackHelperApp!
     # Tip: see http://dlc.sun.com.edgesuite.net/virtualbox/4.3.10/SHA256SUMS
-    sha256 = "93b01ac2c575388ea6ae994450907c24e30a788c271ae9ff18512a06f28d9abd";
+    sha256 = "9c98f8256935492e6e45f7998e1c0e2fd859d87b24123d35ea0065fd0fd62d60";
     message = ''
       In order to use the extension pack, you need to comply with the VirtualBox Personal Use
       and Evaluation License (PUEL) by downloading the related binaries from:
@@ -57,7 +57,7 @@ in stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VirtualBox-${version}.tar.bz2";
-    sha256 = "99c32e646dbc93cbf4cc0b62ca6c1d24113a295fd758dc15724c14908dd6dcb3";
+    sha256 = "9798acbc78b2645f2a02446ef6be181ede1a377792007af2a3280c962edc24cb";
   };
 
   buildInputs =
diff --git a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
index 9552e7264c5a..978f05acbc4f 100644
--- a/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
+++ b/pkgs/applications/virtualization/virtualbox/guest-additions/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "http://download.virtualbox.org/virtualbox/${version}/VBoxGuestAdditions_${version}.iso";
-    sha256 = "d58f678613bd37f5f94bcf324708af63572fc8582833a2558574090231fd080f";
+    sha256 = "e5b425ec4f6a62523855c3cbd3975d17f962f27df093d403eab27c0e7f71464a";
   };
 
   KERN_DIR = "${kernel.dev}/lib/modules/*/build";
diff --git a/pkgs/build-support/fetchgit/nix-prefetch-git b/pkgs/build-support/fetchgit/nix-prefetch-git
index c4f9a1bf916a..ff84f5adce97 100755
--- a/pkgs/build-support/fetchgit/nix-prefetch-git
+++ b/pkgs/build-support/fetchgit/nix-prefetch-git
@@ -226,9 +226,10 @@ make_deterministic_repo(){
         fi
     done
 
-    # Do a full repack, for determinism.
-    # Repack does not add unreferenced objects to a pack file.
+    # Do a full repack. Must run single-threaded, or else we loose determinism.
+    git config pack.threads 1
     git repack -A -d -f
+    rm -f .git/config
 
     # Garbage collect unreferenced objects.
     git gc --prune=all
diff --git a/pkgs/build-support/fetchurl/mirrors.nix b/pkgs/build-support/fetchurl/mirrors.nix
index 991b32352ffe..b54088d047d3 100644
--- a/pkgs/build-support/fetchurl/mirrors.nix
+++ b/pkgs/build-support/fetchurl/mirrors.nix
@@ -393,4 +393,37 @@ rec {
     http://cflags.cc/roy/
   ];
 
+  # Sage mirrors (http://www.sagemath.org/mirrors.html)
+  sagemath = [
+    http://boxen.math.washington.edu/home/sagemath/sage-mirror/src/
+    http://echidna.maths.usyd.edu.au/sage/src/
+    http://ftp.iitm.ac.in/sage/src/
+    http://ftp.kaist.ac.kr/sage/src/
+    http://ftp.riken.jp/sagemath/src/
+    http://ftp.tsukuba.wide.ad.jp/software/sage/src/
+    http://jambu.spms.ntu.edu.sg/sage/src/
+    http://linorg.usp.br/sage/src/
+    http://mirror.aarnet.edu.au/pub/sage/src/
+    http://mirror.clibre.uqam.ca/sage/src/
+    http://mirror.hust.edu.cn/sagemath/src/
+    http://mirror.switch.ch/mirror/sagemath/src/
+    http://mirror.yandex.ru/mirrors/sage.math.washington.edu/src/
+    http://mirrors.fe.up.pt/pub/sage/src/
+    http://mirrors.hustunique.com/sagemath/src/
+    http://mirrors.ustc.edu.cn/sagemath/src/
+    http://mirrors.xmission.com/sage/src/
+    http://sage.asis.io/src/
+    http://sage.mirror.garr.it/mirrors/sage/src/
+    http://sage.yasar.edu.tr/src/
+    http://sagemath.c3sl.ufpr.br/src/
+    http://sagemath.polytechnic.edu.na/src/
+    http://sunsite.rediris.es/mirror/sagemath/src/
+    http://www-ftp.lip6.fr/pub/math/sagemath/src/
+    http://www.mirrorservice.org/sites/www.sagemath.org/src/
+
+    # Old versions
+    http://www.cecm.sfu.ca/sage/src/
+    http://sagemath.org/src-old/
+  ];
+
 }
diff --git a/pkgs/data/fonts/freefont-ttf/default.nix b/pkgs/data/fonts/freefont-ttf/default.nix
index e1d9e1614f38..51505320ba40 100644
--- a/pkgs/data/fonts/freefont-ttf/default.nix
+++ b/pkgs/data/fonts/freefont-ttf/default.nix
@@ -1,13 +1,15 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, unzip}:
 
 stdenv.mkDerivation rec {
-  name = "freefont-ttf-20100919";
+  name = "freefont-ttf-20120503";
 
   src = fetchurl {
-    url = "mirror://gnu/freefont/${name}.tar.gz";
-    sha256 = "1q3h5jp1mbdkinkwxy0lfd0a1q7azlbagraydlzaa2ng82836wg4";
+    url = "mirror://gnu/freefont/${name}.zip";
+    sha256 = "1bw9mrf5pqi2a29b7qw4nhhj566aqqmi28hkbn2a38c2pzqvm1bw";
   };
 
+  buildInputs = [ unzip ];
+
   installPhase = ''
     mkdir -p $out/share/fonts/truetype
     cp *.ttf $out/share/fonts/truetype
diff --git a/pkgs/data/fonts/junicode/default.nix b/pkgs/data/fonts/junicode/default.nix
index ea579a589c47..45025701a1d4 100644
--- a/pkgs/data/fonts/junicode/default.nix
+++ b/pkgs/data/fonts/junicode/default.nix
@@ -1,24 +1,23 @@
 { stdenv, fetchurl, unzip }:
 
 stdenv.mkDerivation {
-  name = "junicode-0.6.15";
+  name = "junicode-0.7.8";
 
   src = fetchurl {
-    url = mirror://sourceforge/junicode/junicode-0.6.15.zip;
-    sha256 = "0p16r5s6qwyz0hayb6k61s5r2sfachlx7r6gpqqx5myx6ipbfdns";
+    url = mirror://sourceforge/junicode/junicode/junicode-0-7-8/junicode-0-7-8.zip;
+    sha256 = "1lgkhj52s351ya7lp9z3xba7kaivgdvg80njhpj1rpc3jcmc69vl";
   };
 
   buildInputs = [ unzip ];
 
-  sourceRoot = ".";
-
   installPhase =
     ''
       mkdir -p $out/share/fonts/junicode-ttf
-      cp *.ttf $out/share/fonts/junicode-ttf
+      cp fonts/*.ttf $out/share/fonts/junicode-ttf
     '';
 
   meta = {
+    homepage = http://junicode.sourceforge.net/;
     description = "A Unicode font";
   };
 }
diff --git a/pkgs/data/fonts/redhat-liberation-fonts/binary.nix b/pkgs/data/fonts/redhat-liberation-fonts/binary.nix
new file mode 100644
index 000000000000..cc6f9c6b5cc4
--- /dev/null
+++ b/pkgs/data/fonts/redhat-liberation-fonts/binary.nix
@@ -0,0 +1,49 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  version = "2.00.1";
+  name = "liberation-fonts-${version}";
+  src = fetchurl {
+    url = "https://fedorahosted.org/releases/l/i/liberation-fonts/liberation-fonts-ttf-${version}.tar.gz";
+    sha256 = "010m4zfqan4w04b6bs9pm3gapn9hsb18bmwwgp2p6y6idj52g43q";
+  };
+  
+  installPhase = ''
+    mkdir -p $out/share/fonts/truetype
+    cp -v $( find . -name '*.ttf') $out/share/fonts/truetype
+
+    mkdir -p "$out/doc/${name}"
+    cp -v AUTHORS ChangeLog COPYING License.txt README "$out/doc/${name}" || true
+  '';
+
+  meta = {
+    description = "Liberation Fonts, replacements for Times New Roman, Arial, and Courier New";
+
+    longDescription = ''
+      The Liberation Fonts are intended to be replacements for the three most
+      commonly used fonts on Microsoft systems: Times New Roman, Arial, and
+      Courier New.
+
+      There are three sets: Sans (a substitute for Arial, Albany, Helvetica,
+      Nimbus Sans L, and Bitstream Vera Sans), Serif (a substitute for Times
+      New Roman, Thorndale, Nimbus Roman, and Bitstream Vera Serif) and Mono
+      (a substitute for Courier New, Cumberland, Courier, Nimbus Mono L, and
+      Bitstream Vera Sans Mono).
+
+      You are free to use these fonts on any system you would like.  You are
+      free to redistribute them under the GPL+exception license found in the
+      download.  Using these fonts does not subject your documents to the
+      GPL---it liberates them from any proprietary claim.
+    '';
+
+    # See `License.txt' for details.
+    license = "GPLv2 + exception";
+
+    homepage = https://fedorahosted.org/liberation-fonts/;
+
+    maintainers = [
+      stdenv.lib.maintainers.raskin
+      stdenv.lib.maintainers.ludo
+    ];
+  };
+}
diff --git a/pkgs/data/fonts/redhat-liberation-fonts/default.nix b/pkgs/data/fonts/redhat-liberation-fonts/default.nix
index 08faeafc619c..0f29f166d369 100644
--- a/pkgs/data/fonts/redhat-liberation-fonts/default.nix
+++ b/pkgs/data/fonts/redhat-liberation-fonts/default.nix
@@ -1,18 +1,20 @@
-{stdenv, fetchurl}:
+{stdenv, fetchurl, fontforge, python, pythonPackages}:
 
 stdenv.mkDerivation rec {
-  name = "liberation-fonts-1.04";
+  name = "liberation-fonts-2.00.1";
   src = fetchurl {
     url = "https://fedorahosted.org/releases/l/i/liberation-fonts/${name}.tar.gz";
-    sha256 = "189i6pc4jqhhmsb9shi8afg9af9crpmz9bnlldhqaxavr1bhj38f";
+    sha256 = "1ymryvd2nw4jmw4w5y1i3ll2dn48rpkqzlsgv7994lk6qc9cdjvs";
   };
   
+  buildInputs = [fontforge python pythonPackages.fonttools];
+
   installPhase = ''
     mkdir -p $out/share/fonts/truetype
-    cp -v *.ttf $out/share/fonts/truetype
+    cp -v $( find . -name '*.ttf') $out/share/fonts/truetype
 
     mkdir -p "$out/doc/${name}"
-    cp -v AUTHORS ChangeLog COPYING License.txt README "$out/doc/${name}"
+    cp -v AUTHORS ChangeLog COPYING License.txt README "$out/doc/${name}" || true
   '';
 
   meta = {
diff --git a/pkgs/desktops/xfce/applications/ristretto.nix b/pkgs/desktops/xfce/applications/ristretto.nix
index 64e3c34453ee..de7fe5975947 100644
--- a/pkgs/desktops/xfce/applications/ristretto.nix
+++ b/pkgs/desktops/xfce/applications/ristretto.nix
@@ -1,5 +1,7 @@
 { stdenv, fetchurl, pkgconfig, intltool, libexif, gtk
-, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf }:
+, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf
+, hicolor_icon_theme, makeWrapper
+}:
 
 stdenv.mkDerivation rec {
   p_name  = "ristretto";
@@ -14,8 +16,14 @@ stdenv.mkDerivation rec {
 
   buildInputs =
     [ pkgconfig intltool libexif gtk dbus_glib exo libxfce4util
-      libxfce4ui xfconf
+      libxfce4ui xfconf hicolor_icon_theme makeWrapper
     ];
+
+  postInstall = ''
+    wrapProgram "$out/bin/ristretto" \
+      --prefix XDG_DATA_DIRS : "${hicolor_icon_theme}/share"
+  '';
+
   preFixup = "rm $out/share/icons/hicolor/icon-theme.cache";
 
   meta = {
diff --git a/pkgs/development/compilers/elm/elm-get.nix b/pkgs/development/compilers/elm/elm-get.nix
new file mode 100644
index 000000000000..db6feecea425
--- /dev/null
+++ b/pkgs/development/compilers/elm/elm-get.nix
@@ -0,0 +1,24 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, aeson, aesonPretty, ansiWlPprint, binary, Elm, filepath
+, HTTP, httpClient, httpClientTls, httpTypes, mtl, network
+, optparseApplicative, vector
+}:
+
+cabal.mkDerivation (self: {
+  pname = "elm-get";
+  version = "0.1.3";
+  sha256 = "1did7vjd1h2kh5alndd2b63zi8b1m9hf6k1k75yxwvw6f6mz5i4q";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    aeson aesonPretty ansiWlPprint binary Elm filepath HTTP httpClient
+    httpClientTls httpTypes mtl network optparseApplicative vector
+  ];
+  meta = {
+    homepage = "http://github.com/elm-lang/elm-get";
+    description = "Tool for sharing and using Elm libraries";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/compilers/elm/elm-reactor.nix b/pkgs/development/compilers/elm/elm-reactor.nix
new file mode 100644
index 000000000000..7b53d9190d8f
--- /dev/null
+++ b/pkgs/development/compilers/elm/elm-reactor.nix
@@ -0,0 +1,29 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, blazeHtml, blazeMarkup, cmdargs, Elm, fetchgit, filepath
+, fsnotify, HTTP, mtl, snapCore, snapServer, systemFilepath, time
+, transformers, unorderedContainers, websockets, websocketsSnap
+}:
+
+cabal.mkDerivation (self: {
+  pname = "elm-reactor";
+  version = "0.1";
+  src = fetchgit {
+    url = "git://github.com/elm-lang/elm-reactor.git";
+    sha256 = "1e45ef26a9b1c1748737dce071a7f2587d0d22643085942a98006f9b11d11dfe";
+    rev = "8715046c5bc8b18f0540069c1a9a65f3aa8332e1";
+  };
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    blazeHtml blazeMarkup cmdargs Elm filepath fsnotify HTTP mtl
+    snapCore snapServer systemFilepath time transformers
+    unorderedContainers websockets websocketsSnap
+  ];
+  meta = {
+    homepage = "http://elm-lang.org";
+    description = "Interactive development tool for Elm programs";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/compilers/elm/elm-repl.nix b/pkgs/development/compilers/elm/elm-repl.nix
new file mode 100644
index 000000000000..ffeea93f9fb4
--- /dev/null
+++ b/pkgs/development/compilers/elm/elm-repl.nix
@@ -0,0 +1,28 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, bytestringTrie, cmdargs, Elm, filepath, haskeline, HUnit
+, mtl, parsec, QuickCheck, testFramework, testFrameworkHunit
+, testFrameworkQuickcheck2
+}:
+
+cabal.mkDerivation (self: {
+  pname = "elm-repl";
+  version = "0.3";
+  sha256 = "10a4a2ybg5dlshpklnisb957lknb0w8s3ppaq5p5y6ylqik8ak0a";
+  isLibrary = false;
+  isExecutable = true;
+  buildDepends = [
+    bytestringTrie cmdargs Elm filepath haskeline mtl parsec
+  ];
+  testDepends = [
+    bytestringTrie cmdargs Elm filepath haskeline HUnit mtl parsec
+    QuickCheck testFramework testFrameworkHunit
+    testFrameworkQuickcheck2
+  ];
+  meta = {
+    homepage = "https://github.com/elm-lang/elm-repl";
+    description = "a REPL for Elm";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/compilers/fpc/lazarus.nix b/pkgs/development/compilers/fpc/lazarus.nix
index a2863663bea9..54371f4f420b 100644
--- a/pkgs/development/compilers/fpc/lazarus.nix
+++ b/pkgs/development/compilers/fpc/lazarus.nix
@@ -1,10 +1,10 @@
 args : with args; 
 rec {
-  version = "1.0.2";
+  version = "1.2.6";
   versionSuffix = "-0";
   src = fetchurl {
     url = "mirror://sourceforge/lazarus/Lazarus%20Zip%20_%20GZip/Lazarus%20${version}/lazarus-${version}${versionSuffix}.tar.gz";
-    sha256 = "17a94wig8b4yrkq42wng4qbal7n77axkynwh78wday5whsp7div8";
+    sha256 = "1sjyc2l46hyd5ic5hr6vscy4qr9kazyhiyddy7bfs9vgf54fdiy0";
   };
 
   buildInputs = [fpc gtk glib libXi inputproto 
@@ -24,7 +24,7 @@ rec {
   preBuild = fullDepEntry (''
     export NIX_LDFLAGS='-lXi -lX11 -lglib-2.0 -lgtk-x11-2.0 -lgdk-x11-2.0 -lc -lXext -lpango-1.0 -latk-1.0 -lgdk_pixbuf-2.0 -lcairo'
     export LCL_PLATFORM=gtk2
-    mkdir -p $out/share
+    mkdir -p $out/share "$out/lazarus"
     tar xf ${fpc.src} --strip-components=1 -C $out/share -m
     sed -e 's@/usr/fpcsrc@'"$out/share/fpcsrc@" -i ide/include/unix/lazbaseconf.inc
   '') 
diff --git a/pkgs/development/compilers/gcl/default.nix b/pkgs/development/compilers/gcl/default.nix
index e9c69261fbc1..f2252fe83813 100644
--- a/pkgs/development/compilers/gcl/default.nix
+++ b/pkgs/development/compilers/gcl/default.nix
@@ -17,11 +17,11 @@ assert a.stdenv.gcc.libc != null ;
 
 rec {
   src = a.fetchurl {
-    sha256 = "177vz8z74mky5nrq6qlfvnzvb1prw8jmlv4cwfx8w7k3k818y1a4";
-    url="http://gnu.spinellicreations.com/gcl/gcl-2.6.11.tar.gz";
+    sha256 = "1s4hs2qbjqmn9h88l4xvsifq5c3dlc5s74lyb61rdi5grhdlkf4f";
+    url="http://gnu.spinellicreations.com/gcl/${name}.tar.gz";
   };
 
-  name = "gcl-2.6.11";
+  name = "gcl-2.6.12";
   inherit buildInputs;
   configureFlags = [
     "--enable-ansi"
diff --git a/pkgs/development/compilers/go/1.1.nix b/pkgs/development/compilers/go/1.1.nix
index e54d12ef9c50..14ea73c23840 100644
--- a/pkgs/development/compilers/go/1.1.nix
+++ b/pkgs/development/compilers/go/1.1.nix
@@ -89,6 +89,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
+    branch = "1.1";
     homepage = http://golang.org/;
     description = "The Go Programming language";
     license = "BSD";
diff --git a/pkgs/development/compilers/go/1.2.nix b/pkgs/development/compilers/go/1.2.nix
index 8567337be0b5..d5ca3bf812e9 100644
--- a/pkgs/development/compilers/go/1.2.nix
+++ b/pkgs/development/compilers/go/1.2.nix
@@ -79,6 +79,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
+    branch = "1.2";
     homepage = http://golang.org/;
     description = "The Go Programming language";
     license = "BSD";
diff --git a/pkgs/development/compilers/go/default.nix b/pkgs/development/compilers/go/default.nix
index b9a76a6f82b3..e289ce14ee11 100644
--- a/pkgs/development/compilers/go/default.nix
+++ b/pkgs/development/compilers/go/default.nix
@@ -83,6 +83,7 @@ stdenv.mkDerivation {
   '';
 
   meta = {
+    branch = "1.0";
     homepage = http://golang.org/;
     description = "The Go Programming language";
     license = "BSD";
diff --git a/pkgs/development/compilers/hhvm/default.nix b/pkgs/development/compilers/hhvm/default.nix
index 1873b58e802e..c48e6d5a81e1 100644
--- a/pkgs/development/compilers/hhvm/default.nix
+++ b/pkgs/development/compilers/hhvm/default.nix
@@ -17,7 +17,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs =
-    [ cmake pkgconfig boost boost.lib libunwind mariadb libmemcached pcre
+    [ cmake pkgconfig boost libunwind mariadb libmemcached pcre
       libevent gd curl libxml2 icu flex bison openssl zlib php expat libcap
       oniguruma libdwarf libmcrypt tbb gperftools bzip2 openldap readline
       libelf uwimap binutils cyrus_sasl pam glog libpng libxslt ocaml
diff --git a/pkgs/development/compilers/julia/0.3.2.nix b/pkgs/development/compilers/julia/0.3.2.nix
new file mode 100644
index 000000000000..7ad2e5fc1fc5
--- /dev/null
+++ b/pkgs/development/compilers/julia/0.3.2.nix
@@ -0,0 +1,159 @@
+{ stdenv, fetchgit, gfortran, perl, m4, llvm, gmp, pcre, zlib
+ , readline, fftwSinglePrec, fftw, libunwind, suitesparse, glpk, fetchurl
+ , ncurses, libunistring, lighttpd, patchelf, openblas, liblapack
+ , tcl, tk, xproto, libX11, git, mpfr, which
+ } :
+
+assert stdenv.isLinux; 
+
+let
+  realGcc = stdenv.gcc.gcc;
+in
+stdenv.mkDerivation rec {
+  pname = "julia";
+  version = "0.3.2";
+  name = "${pname}-${version}";
+
+  dsfmt_ver = "2.2";
+  grisu_ver = "1.1.1";
+  openblas_ver = "v0.2.10";
+  lapack_ver = "3.5.0";
+  arpack_ver = "3.1.5";
+  lighttpd_ver = "1.4.29";
+  patchelf_ver = "0.6";
+  pcre_ver = "8.31";
+  utf8proc_ver = "1.1.6";
+
+  dsfmt_src = fetchurl {
+    url = "http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/SFMT/dSFMT-src-${dsfmt_ver}.tar.gz";
+    name = "dsfmt-${dsfmt_ver}.tar.gz";
+    sha256 = "bc3947a9b2253a869fcbab8ff395416cb12958be9dba10793db2cd7e37b26899";
+  };
+  grisu_src = fetchurl {
+    url = "http://double-conversion.googlecode.com/files/double-conversion-${grisu_ver}.tar.gz";
+    sha256 = "e1cabb73fd69e74f145aea91100cde483aef8b79dc730fcda0a34466730d4d1d";
+  };
+  openblas_src = fetchurl {
+    url = "https://github.com/xianyi/OpenBLAS/tarball/${openblas_ver}";
+    name = "openblas-${openblas_ver}.tar.gz";
+    sha256 = "06i0q4qnd5q5xljzrgvda0gjsczc6l2pl9hw6dn2qjpw38al73za";
+  };
+  arpack_src = fetchurl rec {
+    url = "https://github.com/opencollab/arpack-ng/archive/${arpack_ver}.tar.gz";
+    sha256 = "164hc2qcvr7fvvf7bn2k7z40hyyv8hhhzjr6jq0mq6a7l80x02gn";
+    name = "arpack-ng-${arpack_ver}.tar.gz";
+  };
+  lapack_src = fetchurl {
+    url = "http://www.netlib.org/lapack/lapack-${lapack_ver}.tgz";
+    name = "lapack-${lapack_ver}.tgz";
+    sha256 = "0lk3f97i9imqascnlf6wr5mjpyxqcdj73pgj97dj2mgvyg9z1n4s";
+  };
+  lighttpd_src = fetchurl {
+    url = "http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${lighttpd_ver}.tar.gz";
+    sha256 = "ff9f4de3901d03bb285634c5b149191223d17f1c269a16c863bac44238119c85";
+  };
+  patchelf_src = fetchurl {
+    url = "http://hydra.nixos.org/build/1524660/download/2/patchelf-${patchelf_ver}.tar.bz2";
+    sha256 = "00bw29vdsscsili65wcb5ay0gvg1w0ljd00sb5xc6br8bylpyzpw";
+  };
+  pcre_src = fetchurl {
+    url = "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-${pcre_ver}.tar.bz2";
+    sha256 = "0g4c0z4h30v8g8qg02zcbv7n67j5kz0ri9cfhgkpwg276ljs0y2p";
+  };
+  utf8proc_src = fetchurl {
+    url = "http://www.public-software-group.org/pub/projects/utf8proc/v${utf8proc_ver}/utf8proc-v${utf8proc_ver}.tar.gz";
+    sha256 = "1rwr84pw92ajjlbcxq0da7yxgg3ijngmrj7vhh2qzsr2h2kqzp7y";
+  };
+
+  src = fetchgit {
+    url = "git://github.com/JuliaLang/julia.git";
+    rev = "refs/tags/v${version}";
+    sha256 = "11w81mznhlfcnn6vcv1rhrbajnyz8aim29wvwl92zsllq8z9hv2i";
+    name = "julia-git-v${version}";
+  };
+
+  buildInputs = [ gfortran perl m4 gmp pcre llvm readline zlib
+    fftw fftwSinglePrec libunwind suitesparse glpk ncurses libunistring patchelf
+    openblas liblapack tcl tk xproto libX11 git mpfr which
+    ];
+
+  configurePhase = ''
+    for i in GMP LLVM PCRE READLINE FFTW LIBUNWIND SUITESPARSE GLPK LIGHTTPD ZLIB MPFR;
+    do
+      makeFlags="$makeFlags USE_SYSTEM_$i=1 "
+    done
+
+    copy_kill_hash(){
+      cp "$1" "$2/$(basename "$1" | sed -e 's/^[a-z0-9]*-//')"
+    }
+
+    for i in "${grisu_src}" "${dsfmt_src}" "${arpack_src}" "${patchelf_src}" \
+        "${pcre_src}" "${utf8proc_src}" "${lapack_src}" "${openblas_src}"; do
+      copy_kill_hash "$i" deps
+    done
+
+    ${if realGcc ==null then "" else 
+    ''export NIX_LDFLAGS="$NIX_LDFLAGS -L${realGcc}/lib -L${realGcc}/lib64 -lpcre -llapack -lm -lfftw3f -lfftw3 -lglpk -lunistring -lz -lgmp -lmpfr -lblas -lopenblas -L$out/lib"''}
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -fPIC "
+
+    export LDFLAGS="-L${suitesparse}/lib -L$out/lib/julia -Wl,-rpath,$out/lib/julia"
+
+    export GLPK_PREFIX="${glpk}/include"
+
+    mkdir -p "$out/lib"
+    sed -e "s@/usr/local/lib@$out/lib@g" -i deps/Makefile
+    sed -e "s@/usr/lib@$out/lib@g" -i deps/Makefile
+
+    export makeFlags="$makeFlags PREFIX=$out SHELL=${stdenv.shell} prefix=$out"
+
+    export dontPatchELF=1
+
+    export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$PWD/usr/lib:$PWD/usr/lib/julia"
+
+    patchShebangs . contrib
+
+    export PATH="$PATH:${stdenv.gcc.libc}/sbin"
+
+    # ldconfig doesn't seem to ever work on NixOS; system-wide ldconfig cache
+    # is probably not what we want anyway on non-NixOS
+    sed -e "s@/sbin/ldconfig@true@" -i src/ccall.*
+
+    ln -s "${openblas}/lib/libopenblas.so" "$out/lib/libblas.so"
+  '';
+
+  preBuild = ''
+    mkdir -p usr/lib
+    
+    echo "$out"
+    mkdir -p "$out/lib"
+    (
+    cd "$(mktemp -d)"
+    for i in "${suitesparse}"/lib/lib*.a; do
+      ar -x $i
+    done
+    gcc *.o --shared -o "$out/lib/libsuitesparse.so"
+    )
+    cp "$out/lib/libsuitesparse.so" usr/lib
+    for i in umfpack cholmod amd camd colamd spqr; do
+      ln -s libsuitesparse.so "$out"/lib/lib$i.so;
+      ln -s libsuitesparse.so "usr"/lib/lib$i.so;
+    done
+  '';
+
+  dontStrip = true;
+
+  enableParallelBuilding = true;
+
+  postInstall = ''
+    rm -f "$out"/lib/julia/sys.{so,dylib,dll}
+  '';
+
+  meta = {
+    description = "High-level performance-oriented dynamical language for technical computing";
+    homepage = "http://julialang.org/";
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.raskin ];
+    platforms = with stdenv.lib.platforms; linux;
+    broken = false;
+  };
+}
diff --git a/pkgs/development/compilers/nasm/default.nix b/pkgs/development/compilers/nasm/default.nix
index 4456319ac243..8219882a2a21 100644
--- a/pkgs/development/compilers/nasm/default.nix
+++ b/pkgs/development/compilers/nasm/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "nasm-${version}";
-  version = "2.11.06";
+  version = "2.11.05";
   
   src = fetchurl {
     url = "http://www.nasm.us/pub/nasm/releasebuilds/${version}/${name}.tar.bz2";
-    sha256 = "0v1y1kx09nzmk8w4v79jxhn15fmi3g7l9nmgkn7ldjl1d5yxkdl7";
+    sha256 = "1sgspnascc0asmwlv3jm1mq4vzx653sa7vlg48z20pfybk7pnhaa";
   };
 
   meta = {
diff --git a/pkgs/development/compilers/sbcl/default.nix b/pkgs/development/compilers/sbcl/default.nix
index 535f2697fea6..09418f5f2af5 100644
--- a/pkgs/development/compilers/sbcl/default.nix
+++ b/pkgs/development/compilers/sbcl/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name    = "sbcl-${version}";
-  version = "1.2.3";
+  version = "1.2.5";
 
   src = fetchurl {
     url    = "mirror://sourceforge/project/sbcl/sbcl/${version}/${name}-source.tar.bz2";
-    sha256 = "0lz2a79dlxxyw05s14l6xp35zjsazgbp1dmqygqi0cmd8dc5vj6j";
+    sha256 = "0nmb9amygr5flzk2z9fa6wzwqknbgd2qrkybxkxkamvbdwyayvzr";
   };
 
   buildInputs = [ ]
diff --git a/pkgs/development/compilers/uhc/default.nix b/pkgs/development/compilers/uhc/default.nix
deleted file mode 100644
index 2f179d17548e..000000000000
--- a/pkgs/development/compilers/uhc/default.nix
+++ /dev/null
@@ -1,48 +0,0 @@
-{ stdenv, coreutils, glibc, fetchgit, m4, libtool, ghc, uulib
-, uuagc, mtl, network, binary, llvm, fgl, syb
-}:
-
-# this check won't be needed anymore after ghc-wrapper is fixed
-# to show ghc-builtin packages in "ghc-pkg list" output.
-let binaryIsBuiltIn = builtins.compareVersions "7.2.1" ghc.version != 1;
-
-in stdenv.mkDerivation {
-  name = "uhc-svn-git20120502";
-
-  src = fetchgit {
-     url = "https://github.com/UU-ComputerScience/uhc.git";
-     rev = "ab26d787657bb729d8a4f92ef5d067d9990f6ce3";
-     sha256 = "66c5b6d95dc80a652f6e17476a1b18fbef4b4ff6199a92d033f0055526ec97ff";
-  };
-
-  postUnpack = "sourceRoot=\${sourceRoot}/EHC";
-
-  propagatedBuildInputs = [mtl network binary fgl syb];
-  buildInputs = [coreutils m4 ghc libtool uulib uuagc];
-
-  # Can we rename this flag to "--with-cpp-uhc-options"?
-  configureFlags = "--with-cpp-ehc-options=-I${glibc}/include";
-
-  # UHC builds packages during compilation; these are by default
-  # installed in the user-specific package config file. We do not
-  # want that, and hack the build process to use a temporary package
-  # configuration file instead.
-  preConfigure = ''
-    p=`pwd`/uhc-local-packages
-    echo '[]' > $p
-    sed -i "s|--user|--package-db=$p|g" mk/shared.mk.in
-    sed -i "s|-fglasgow-exts|-fglasgow-exts -package-conf=$p|g" mk/shared.mk.in
-    sed -i "s|/bin/date|${coreutils}/bin/date|g" mk/dist.mk
-    sed -i "s|/bin/date|${coreutils}/bin/date|g" mk/config.mk.in
-  '' + stdenv.lib.optionalString binaryIsBuiltIn ''
-    sed -i "s|ghcLibBinary=no|ghcLibBinaryExists=yes|" configure
-  '';
-
-  meta = {
-    homepage = "http://www.cs.uu.nl/wiki/UHC";
-    description = "Utrecht Haskell Compiler";
-    platforms = stdenv.lib.platforms.linux;
-    hydraPlatforms = stdenv.lib.platforms.none;
-    broken = true;
-  };
-}
diff --git a/pkgs/development/guile-modules/guile-sdl/default.nix b/pkgs/development/guile-modules/guile-sdl/default.nix
new file mode 100644
index 000000000000..8c1706be5835
--- /dev/null
+++ b/pkgs/development/guile-modules/guile-sdl/default.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, guile, buildEnv
+, SDL, SDL_image, SDL_ttf, SDL_mixer
+}:
+
+stdenv.mkDerivation rec {
+  name = "guile-sdl-0.5.1";
+
+  meta = with stdenv.lib; {
+    description = "Guile bindings for SDL";
+    homepage    = "http://gnu.org/s/guile-sdl";
+    license     = licenses.gpl3Plus;
+    platforms   = platforms.linux;
+    maintainers = with maintainers; [ iyzsong ];
+  };
+
+  src = fetchurl {
+    url = "mirror://gnu/guile-sdl/${name}.tar.xz";
+    sha256 = "126n4rd0ydh6i2s11ari5k85iivradlf12zq13b34shf9k1wn5am";
+  };
+
+  nativeBuildInputs = [ guile ];
+
+  buildInputs = [
+    SDL SDL_image SDL_ttf SDL_mixer
+  ];
+
+  GUILE_AUTO_COMPILE = 0;
+
+  makeFlags = let
+    sdl = buildEnv {
+      name = "sdl-env";
+      paths = buildInputs;
+    };
+  in "SDLMINUSI=-I${sdl}/include/SDL";
+}
diff --git a/pkgs/development/interpreters/angelscript/default.nix b/pkgs/development/interpreters/angelscript/default.nix
index 1167f121e624..7ed14b632f78 100644
--- a/pkgs/development/interpreters/angelscript/default.nix
+++ b/pkgs/development/interpreters/angelscript/default.nix
@@ -11,10 +11,10 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="angelscript";
-    version = "2.29.1";
+    version = "2.29.2";
     name="${baseName}-${version}";
     url="http://www.angelcode.com/angelscript/sdk/files/angelscript_${version}.zip";
-    sha256 = "081a0wnn1hl0hjgrg0nz63ff7k7dgrwsgszka5i7623ny407fkl5";
+    sha256 = "12ws4vp9iyxbgzxxdq7g9729vg1ld92f38gfznyhsknhsay4kmf5";
   };
 in
 rec {
diff --git a/pkgs/development/interpreters/guile/default.nix b/pkgs/development/interpreters/guile/default.nix
index ad5d2f1cc587..c4634de5d3f2 100644
--- a/pkgs/development/interpreters/guile/default.nix
+++ b/pkgs/development/interpreters/guile/default.nix
@@ -27,7 +27,9 @@
   # A native Guile 2.0 is needed to cross-build Guile.
   selfNativeBuildInput = true;
 
-  enableParallelBuilding = true;
+  # Guile 2.0.11 repeatable fails with 8-core parallel building because
+  # libguile/vm-i-system.i is not created in time
+  enableParallelBuilding = false;
 
   patches = [ ./disable-gc-sensitive-tests.patch ./eai_system.patch ./clang.patch ] ++
     (stdenv.lib.optional (coverageAnalysis != null) ./gcov-file-name.patch);
diff --git a/pkgs/development/interpreters/php/5.4.nix b/pkgs/development/interpreters/php/5.4.nix
index 4d70ba0e3587..0edf5e608010 100644
--- a/pkgs/development/interpreters/php/5.4.nix
+++ b/pkgs/development/interpreters/php/5.4.nix
@@ -9,7 +9,7 @@ in
 
 composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
 
-  version = "5.4.33";
+  version = "5.4.34";
 
   name = "php-${version}";
 
@@ -249,7 +249,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
 
   src = fetchurl {
     url = "http://www.php.net/distributions/php-${version}.tar.bz2";
-    sha256 = "1d8bwiw24k5p34fzkdqv8j8ndq50k2ahv66kdj4bhx2yhg8b4x8s";
+    sha256 = "0d425zxka3m1l0ygsls4r56qy374rf6skl4ggim0k2y1y08fmm2p";
   };
 
   meta = {
diff --git a/pkgs/development/interpreters/picolisp/default.nix b/pkgs/development/interpreters/picolisp/default.nix
index 196e7068e146..adc0261eddbd 100644
--- a/pkgs/development/interpreters/picolisp/default.nix
+++ b/pkgs/development/interpreters/picolisp/default.nix
@@ -12,18 +12,18 @@ let
   sourceInfo = rec {
     baseName="picolisp";
     tarballBaseName="picoLisp";
-    version="3.0.5";
+    version="3.1.8";
     name="${baseName}-${version}";
     tarballName="${tarballBaseName}-${version}";
     extension="tgz";
     url="http://www.software-lab.de/${tarballName}.${extension}";
-    hash="07w2aygllkmnfcnby3dy88n9giqsas35s77rp2lr2ll5yy2hkc0x";
+    sha256="0bkr1ck157871bv4a8dp9dmcvxigjsikm5rr2khylxc3l6il7s1i";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = sourceInfo.sha256;
   };
 
   inherit (sourceInfo) name version;
diff --git a/pkgs/development/interpreters/regina/default.nix b/pkgs/development/interpreters/regina/default.nix
index 992f7281554c..e6c84edacaf2 100644
--- a/pkgs/development/interpreters/regina/default.nix
+++ b/pkgs/development/interpreters/regina/default.nix
@@ -12,7 +12,7 @@ let
   sourceInfo = rec {
     baseName="Regina-REXX";
     pname="regina-rexx";
-    version = "3.8.2";
+    version = "3.9.0";
     name="${baseName}-${version}";
     url="mirror://sourceforge/${pname}/${pname}/${version}/${name}.tar.gz";
   };
@@ -20,7 +20,7 @@ in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = "06vr6p9pqr5zzsxm1l9iwb2w9z8qkm971c2knh0vf5bbm6znjz35";
+    sha256 = "051w6i5xyjq7j9yrhw4r14kw105gpylby6z5x9v31f5g824n4mfr";
   };
 
   inherit (sourceInfo) name version;
diff --git a/pkgs/development/libraries/CGAL/default.nix b/pkgs/development/libraries/CGAL/default.nix
index 512a17e6d3ea..505aab78242a 100644
--- a/pkgs/development/libraries/CGAL/default.nix
+++ b/pkgs/development/libraries/CGAL/default.nix
@@ -1,16 +1,16 @@
 { stdenv, fetchurl, cmake, boost, gmp, mpfr }:
 
 stdenv.mkDerivation rec {
-  version = "4.4";
+  version = "4.5";
 
   name = "cgal-${version}";
 
   src = fetchurl {
-    url = "https://gforge.inria.fr/frs/download.php/33526/CGAL-${version}.tar.xz";
-    sha256 = "1s0ylyrx74vgw6vsg6xxk4b07jrxh8pqcmxcbkx46v01nczv3ixj";
+    url = "https://gforge.inria.fr/frs/download.php/34139/CGAL-${version}.tar.xz";
+    sha256 = "00shds5yph4s09lqdrb6n60wnw9kpiwa25ghg9mbsgq3fnr8p7kr";
   };
 
-  buildInputs = [ cmake boost boost.lib gmp mpfr ];
+  buildInputs = [ cmake boost gmp mpfr ];
 
   doCheck = false;
 
diff --git a/pkgs/development/libraries/afflib/default.nix b/pkgs/development/libraries/afflib/default.nix
index ed88b89b14ee..d29349abe0cf 100644
--- a/pkgs/development/libraries/afflib/default.nix
+++ b/pkgs/development/libraries/afflib/default.nix
@@ -1,15 +1,29 @@
-{ stdenv, fetchurl, zlib, curl, expat, fuse, openssl }:
+{ stdenv, fetchgit, zlib, curl, expat, fuse, openssl
+, autoconf, automake, libtool, python
+}:
 
 stdenv.mkDerivation rec {
-  version = "3.7.4";
+  version = "3.7.5";
   name = "afflib-${version}";
 
-  src = fetchurl {
-    url = "http://digitalcorpora.org/downloads/afflib/${name}.tar.gz";
-    sha256 = "18j1gjb31qjcmz6lry4m2d933w2a80iagg9g5vrpw5ig80lv10f8";
+  src = fetchgit {
+    url = "https://github.com/sshock/AFFLIBv3/";
+    rev = "refs/tags/v${version}";
+    sha256 = "06dr3y6bd7vfjf0p9v85yp1xzg43x515zsa9587jcx7yy5h5ams5";
+    name = "afflib-${version}-checkout";
   };
 
-  buildInputs = [ zlib curl expat fuse openssl ];
+  buildInputs = [ zlib curl expat fuse openssl 
+    libtool autoconf automake python
+    ];
+
+  preConfigure = ''
+    libtoolize -f
+    autoheader -f
+    aclocal
+    automake --add-missing -c 
+    autoconf -f
+  '';
 
   meta = {
     homepage = http://afflib.sourceforge.net/;
diff --git a/pkgs/development/libraries/aspell/dictionaries.nix b/pkgs/development/libraries/aspell/dictionaries.nix
index 79a75708c169..cc0f51eb68d5 100644
--- a/pkgs/development/libraries/aspell/dictionaries.nix
+++ b/pkgs/development/libraries/aspell/dictionaries.nix
@@ -176,4 +176,14 @@ in {
     };
   };
 
+  sk = buildDict {
+    shortName = "sk-2.01-2";
+    fullName = "Slovak";
+    src = fetchurl {
+      url = mirror://gnu/aspell/dict/sk/aspell6-sk-2.01-2.tar.bz2;
+      sha256 = "19k0m1v5pcf7xr4lxgjkzqkdlks8nyb13bvi1n7521f3i4lhma66";
+    };
+  };
+
+
 }
diff --git a/pkgs/development/libraries/audio/lvtk/default.nix b/pkgs/development/libraries/audio/lvtk/default.nix
index 7b296ea6d13e..6e2b9a31b304 100644
--- a/pkgs/development/libraries/audio/lvtk/default.nix
+++ b/pkgs/development/libraries/audio/lvtk/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
   buildInputs = [ boost gtkmm lv2 pkgconfig python ];
 
   configurePhase = ''
-    python waf configure --prefix=$out --boost-includes=${boost}/include
+    python waf configure --prefix=$out --boost-includes="${boost.dev}/include"
   '';
 
   buildPhase = "python waf";
diff --git a/pkgs/development/libraries/babl/0_0_22.nix b/pkgs/development/libraries/babl/0_0_22.nix
deleted file mode 100644
index 3983816a8b44..000000000000
--- a/pkgs/development/libraries/babl/0_0_22.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, fetchurl }:
-
-stdenv.mkDerivation {
-  name = "babl-0.0.22";
-
-  src = fetchurl {
-    url = ftp://ftp.gtk.org/pub/babl/0.0/babl-0.0.22.tar.bz2;
-    sha256 = "0v8gbf9si4sd06199f8lfmrsbvi6i0hxphd34kyvsj6g2kkkg10s";
-  };
-
-  meta = { 
-    description = "Image pixel format conversion library";
-    homepage = http://gegl.org/babl/;
-    license = stdenv.lib.licenses.gpl3;
-  };
-}
diff --git a/pkgs/development/libraries/boost/1.44.nix b/pkgs/development/libraries/boost/1.44.nix
deleted file mode 100644
index c192acd23bde..000000000000
--- a/pkgs/development/libraries/boost/1.44.nix
+++ /dev/null
@@ -1,93 +0,0 @@
-{ stdenv, fetchurl, icu, expat, zlib, bzip2, python
-, enableRelease ? true
-, enableDebug ? false
-, enableSingleThreaded ? false
-, enableMultiThreaded ? true
-, enableShared ? true
-, enableStatic ? false
-, enablePIC ? false
-, taggedLayout ? false
-}:
-
-let
-
-  variant = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableRelease "release" ++
-     stdenv.lib.optional enableDebug "debug");
-
-  threading = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableSingleThreaded "single" ++
-     stdenv.lib.optional enableMultiThreaded "multi");
-
-  link = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableShared "shared" ++
-     stdenv.lib.optional enableStatic "static");
-
-  # To avoid library name collisions
-  finalLayout = if (taggedLayout || (enableRelease && enableDebug) ||
-    (enableSingleThreaded && enableMultiThreaded) ||
-    (enableShared && enableStatic)) then
-    "tagged" else "system";
-
-  cflags = if enablePIC then "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC" else "";
-
-in
-
-stdenv.mkDerivation {
-  name = "boost-1.44.0";
-
-  meta = {
-    homepage = "http://boost.org/";
-    description = "Collection of C++ libraries";
-    license = "boost-license";
-
-    maintainers = [ stdenv.lib.maintainers.simons ];
-  };
-
-  src = fetchurl {
-    url = "mirror://sourceforge/boost/boost_1_44_0.tar.bz2";
-    sha256 = "1nvq36mvzr1fr85q0jh86rk3bk65s1y55jgqgzfg3lcpkl12ihs5";
-  };
-
-  enableParallelBuilding = true;
-
-  buildInputs = [icu expat zlib bzip2 python];
-
-  configureScript = "./bootstrap.sh";
-  configureFlags = "--with-icu=${icu} --with-python=${python}/bin/python";
-
-  buildPhase = "./bjam -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${finalLayout} variant=${variant} threading=${threading} link=${link} ${cflags} install";
-
-  installPhase = ":";
-
-  patches = [
-    # Patch to get rid of following error, experienced by some packages like encfs, bitcoin:
-    #    terminate called after throwing an instance of 'std::runtime_error'
-    #    what():  locale::facet::_S_create_c_locale name not valid
-    (fetchurl {
-       url = https://svn.boost.org/trac/boost/raw-attachment/ticket/4688/boost_filesystem.patch ;
-       sha256 = "15k91ihzs6190pnryh4cl0b3c2pjpl9d790mr14x16zq52y7px2d";
-     })
-    ./time_utc_144.patch
-    ./boost-149-cstdint.patch
-  ];
-
-  crossAttrs = rec {
-    buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
-    # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
-    # override them.
-    propagatedBuildInputs = buildInputs;
-    # We want to substitute the contents of configureFlags, removing thus the
-    # usual --build and --host added on cross building.
-    preConfigure = ''
-      export configureFlags="--prefix=$out --without-icu"
-    '';
-    buildPhase = ''
-      set -x
-      cat << EOF > user-config.jam
-      using gcc : cross : $crossConfig-g++ ;
-      EOF
-      ./bjam -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat.crossDrv}/include -sEXPAT_LIBPATH=${expat.crossDrv}/lib --layout=${finalLayout} --user-config=user-config.jam toolset=gcc-cross variant=${variant} threading=${threading} link=${link} ${cflags} --without-python install
-    '';
-  };
-}
diff --git a/pkgs/development/libraries/boost/1.49.nix b/pkgs/development/libraries/boost/1.49.nix
deleted file mode 100644
index 9e61683238fa..000000000000
--- a/pkgs/development/libraries/boost/1.49.nix
+++ /dev/null
@@ -1,96 +0,0 @@
-{ stdenv, fetchurl, icu, expat, zlib, bzip2, python
-, enableRelease ? true
-, enableDebug ? false
-, enableSingleThreaded ? false
-, enableMultiThreaded ? true
-, enableShared ? true
-, enableStatic ? false
-, enablePIC ? false
-, enableExceptions ? false
-}:
-
-let
-
-  variant = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableRelease "release" ++
-     stdenv.lib.optional enableDebug "debug");
-
-  threading = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableSingleThreaded "single" ++
-     stdenv.lib.optional enableMultiThreaded "multi");
-
-  link = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableShared "shared" ++
-     stdenv.lib.optional enableStatic "static");
-
-  # To avoid library name collisions
-  finalLayout = if ((enableRelease && enableDebug) ||
-    (enableSingleThreaded && enableMultiThreaded) ||
-    (enableShared && enableStatic)) then
-    "tagged" else "system";
-
-  cflags = if enablePIC && enableExceptions then
-             "cflags=-fPIC -fexceptions cxxflags=-fPIC linkflags=-fPIC"
-           else if enablePIC then
-             "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC"
-           else if enableExceptions then
-             "cflags=-fexceptions"
-           else
-             "";
-in
-
-stdenv.mkDerivation {
-  name = "boost-1.49.0";
-
-  meta = {
-    homepage = "http://boost.org/";
-    description = "Collection of C++ libraries";
-    license = "boost-license";
-
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.simons ];
-  };
-
-  src = fetchurl {
-    url = "mirror://sourceforge/boost/boost_1_49_0.tar.bz2";
-    sha256 = "0g0d33942rm073jgqqvj3znm3rk45b2y2lplfjpyg9q7amzqlx6x";
-  };
-
-  # See <http://svn.boost.org/trac/boost/ticket/4688>.
-  patches = [
-    ./CVE-2013-0252.patch # https://svn.boost.org/trac/boost/ticket/7743
-    ./boost_filesystem_post_1_49_0.patch
-    ./time_utc.patch
-    ./boost-149-cstdint.patch
-  ] ++ (stdenv.lib.optional stdenv.isDarwin ./boost-149-darwin.patch );
-
-  enableParallelBuilding = true;
-
-  buildInputs = [icu expat zlib bzip2 python];
-
-  configureScript = "./bootstrap.sh";
-  configureFlags = "--with-icu=${icu} --with-python=${python}/bin/python";
-
-  buildPhase = "./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${finalLayout} variant=${variant} threading=${threading} link=${link} ${cflags} install";
-
-  installPhase = ":";
-
-  crossAttrs = rec {
-    buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
-    # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
-    # override them.
-    propagatedBuildInputs = buildInputs;
-    # We want to substitute the contents of configureFlags, removing thus the
-    # usual --build and --host added on cross building.
-    preConfigure = ''
-      export configureFlags="--prefix=$out --without-icu"
-    '';
-    buildPhase = ''
-      set -x
-      cat << EOF > user-config.jam
-      using gcc : cross : $crossConfig-g++ ;
-      EOF
-      ./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat.crossDrv}/include -sEXPAT_LIBPATH=${expat.crossDrv}/lib --layout=${finalLayout} --user-config=user-config.jam toolset=gcc-cross variant=${variant} threading=${threading} link=${link} ${cflags} --without-python install
-    '';
-  };
-}
diff --git a/pkgs/development/libraries/boost/1.55.nix b/pkgs/development/libraries/boost/1.55.nix
index 2c02ce13e8d2..808ff912e7db 100644
--- a/pkgs/development/libraries/boost/1.55.nix
+++ b/pkgs/development/libraries/boost/1.55.nix
@@ -1,101 +1,10 @@
-{ stdenv, fetchurl, icu, expat, zlib, bzip2, python, fixDarwinDylibNames
-, toolset ? if stdenv.isDarwin then "clang" else null
-, enableRelease ? true
-, enableDebug ? false
-, enableSingleThreaded ? false
-, enableMultiThreaded ? true
-, enableShared ? true
-, enableStatic ? false
-, enablePIC ? false
-, enableExceptions ? false
-, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
-}:
+{ callPackage, fetchurl, ... } @ args:
 
-let
-
-  variant = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableRelease "release" ++
-     stdenv.lib.optional enableDebug "debug");
-
-  threading = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableSingleThreaded "single" ++
-     stdenv.lib.optional enableMultiThreaded "multi");
-
-  link = stdenv.lib.concatStringsSep ","
-    (stdenv.lib.optional enableShared "shared" ++
-     stdenv.lib.optional enableStatic "static");
-
-  # To avoid library name collisions
-  layout = if taggedLayout then "tagged" else "system";
-
-  cflags = if enablePIC && enableExceptions then
-             "cflags=\"-fPIC -fexceptions\" cxxflags=-fPIC linkflags=-fPIC"
-           else if enablePIC then
-             "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC"
-           else if enableExceptions then
-             "cflags=-fexceptions"
-           else
-             "";
-
-  withToolset = stdenv.lib.optionalString (toolset != null) " --with-toolset=${toolset}";
-in
-
-let res = stdenv.mkDerivation {
-  name = "boost-1.55.0";
-
-  meta = {
-    homepage = "http://boost.org/";
-    description = "Collection of C++ libraries";
-    license = "boost-license";
-
-    platforms = stdenv.lib.platforms.unix;
-    maintainers = [ stdenv.lib.maintainers.simons ];
-  };
+callPackage ./generic.nix (args // rec {
+  version = "1.55.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/boost/boost_1_55_0.tar.bz2";
     sha256 = "0lkv5dzssbl5fmh2nkaszi8x9qbj80pr4acf9i26sj3rvlih1w7z";
   };
-
-  patches = stdenv.lib.optional (toolset == "clang") [ ./boost-155-clang.patch ];
-
-  enableParallelBuilding = true;
-
-  buildInputs =
-    [ icu expat zlib bzip2 python ]
-    ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
-
-  configureScript = "./bootstrap.sh";
-  configureFlags = "--with-icu=${icu} --with-python=${python}/bin/python" + withToolset;
-
-  buildPhase = "${stdenv.lib.optionalString (toolset == "clang") "unset NIX_ENFORCE_PURITY; "}./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${layout} variant=${variant} threading=${threading} link=${link} ${cflags} install";
-
-  # normal install does not install bjam, this is a separate step
-  installPhase = ''
-    cd tools/build/v2
-    sh bootstrap.sh${withToolset}
-    ./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat}/include -sEXPAT_LIBPATH=${expat}/lib --layout=${layout} variant=${variant} threading=${threading} link=${link} ${cflags} install${withToolset}
-    rm $out/bin/bjam
-    ln -s $out/bin/b2 $out/bin/bjam
-    rm -rf $out/share/boost-build/example
-  '';
-
-  crossAttrs = rec {
-    buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
-    # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
-    # override them.
-    propagatedBuildInputs = buildInputs;
-    # We want to substitute the contents of configureFlags, removing thus the
-    # usual --build and --host added on cross building.
-    preConfigure = ''
-      export configureFlags="--prefix=$out --without-icu"
-    '';
-    buildPhase = ''
-      set -x
-      cat << EOF > user-config.jam
-      using gcc : cross : $crossConfig-g++ ;
-      EOF
-      ./b2 -j$NIX_BUILD_CORES -sEXPAT_INCLUDE=${expat.crossDrv}/include -sEXPAT_LIBPATH=${expat.crossDrv}/lib --layout=${layout} --user-config=user-config.jam toolset=gcc-cross variant=${variant} threading=${threading} link=${link} ${cflags} --without-python install
-    '';
-  };
-}; in res // { lib = res; }
+})
diff --git a/pkgs/development/libraries/boost/1.56.nix b/pkgs/development/libraries/boost/1.56.nix
index 212b6ca0dee5..fb62c2a07faf 100644
--- a/pkgs/development/libraries/boost/1.56.nix
+++ b/pkgs/development/libraries/boost/1.56.nix
@@ -1,146 +1,10 @@
-{ stdenv, fetchurl, icu, expat, zlib, bzip2, python, fixDarwinDylibNames
-, toolset ? null
-, enableRelease ? true
-, enableDebug ? false
-, enableSingleThreaded ? false
-, enableMultiThreaded ? true
-, enableShared ? true
-, enableStatic ? false
-, enablePIC ? false
-, enableExceptions ? false
-, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
-}:
+{ callPackage, fetchurl, ... } @ args:
 
-# We must build at least one type of libraries
-assert !enableShared -> enableStatic;
-
-with stdenv.lib;
-let
-
-  variant = concatStringsSep ","
-    (optional enableRelease "release" ++
-     optional enableDebug "debug");
-
-  threading = concatStringsSep ","
-    (optional enableSingleThreaded "single" ++
-     optional enableMultiThreaded "multi");
-
-  link = concatStringsSep ","
-    (optional enableShared "shared" ++
-     optional enableStatic "static");
-
-  runtime-link = if enableShared then "shared" else "static";
-
-  # To avoid library name collisions
-  layout = if taggedLayout then "tagged" else "system";
-
-  cflags = if enablePIC && enableExceptions then
-             "cflags=\"-fPIC -fexceptions\" cxxflags=-fPIC linkflags=-fPIC"
-           else if enablePIC then
-             "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC"
-           else if enableExceptions then
-             "cflags=-fexceptions"
-           else
-             "";
-
-  withToolset = stdenv.lib.optionalString (toolset != null) "--with-toolset=${toolset}";
-
-  genericB2Flags = [
-    "--prefix=$out"
-    "--libdir=$lib/lib"
-    "-j$NIX_BUILD_CORES"
-    "--layout=${layout}"
-    "variant=${variant}"
-    "threading=${threading}"
-    "runtime-link=${runtime-link}"
-    "link=${link}"
-    "${cflags}"
-  ] ++ optional (variant == "release") "debug-symbols=off";
-
-  nativeB2Flags = [
-    "-sEXPAT_INCLUDE=${expat}/include"
-    "-sEXPAT_LIBPATH=${expat}/lib"
-  ] ++ optional (toolset != null) "toolset=${toolset}";
-  nativeB2Args = concatStringsSep " " (genericB2Flags ++ nativeB2Flags);
-
-  crossB2Flags = [
-    "-sEXPAT_INCLUDE=${expat.crossDrv}/include"
-    "-sEXPAT_LIBPATH=${expat.crossDrv}/lib"
-    "--user-config=user-config.jam"
-    "toolset=gcc-cross"
-    "--without-python"
-  ];
-  crossB2Args = concatMapStringsSep " " (genericB2Flags ++ crossB2Flags);
-
-  builder = b2Args: ''
-    ./b2 ${b2Args}
-  '';
-
-  installer = b2Args: ''
-    # boostbook is needed by some applications
-    mkdir -p $out/share/boostbook
-    cp -a tools/boostbook/{xsl,dtd} $out/share/boostbook/
-
-    # Let boost install everything else
-    ./b2 ${b2Args} install
-  '';
-
-  commonConfigureFlags = [
-    "--libdir=$(lib)/lib"
-  ];
-in
-
-stdenv.mkDerivation {
-  name = "boost-1.56.0";
-
-  meta = {
-    homepage = "http://boost.org/";
-    description = "Collection of C++ libraries";
-    license = "boost-license";
-
-    platforms = platforms.unix;
-    maintainers = with maintainers; [ simons wkennington ];
-  };
+callPackage ./generic.nix (args // rec {
+  version = "1.56.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/boost/boost_1_56_0.tar.bz2";
     sha256 = "07gz62nj767qzwqm3xjh11znpyph8gcii0cqhnx7wvismyn34iqk";
   };
-
-  enableParallelBuilding = true;
-
-  buildInputs = [ icu expat zlib bzip2 python ]
-    ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
-
-  configureScript = "./bootstrap.sh";
-  configureFlags = commonConfigureFlags ++ [
-    "--with-icu=${icu}"
-    "--with-python=${python}/bin/python"
-  ] ++ optional (toolset != null) "--with-toolset=${toolset}";
-
-  buildPhase = ''
-    ${stdenv.lib.optionalString (toolset == "clang") "unset NIX_ENFORCE_PURITY"}
-  '' + builder nativeB2Args;
-
-  installPhase = installer nativeB2Args;
-
-  outputs = [ "out" "lib" ];
-
-  crossAttrs = rec {
-    buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
-    # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
-    # override them.
-    propagatedBuildInputs = buildInputs;
-    # We want to substitute the contents of configureFlags, removing thus the
-    # usual --build and --host added on cross building.
-    preConfigure = ''
-      export configureFlags="--prefix=$out --without-icu ${concatStringsSep " " commonConfigureFlags}"
-      set -x
-      cat << EOF > user-config.jam
-      using gcc : cross : $crossConfig-g++ ;
-      EOF
-    '';
-    buildPhase = builder crossB2Args;
-    installPhase = installer crossB2Args;
-  };
-}
+})
diff --git a/pkgs/development/libraries/boost/CVE-2013-0252.patch b/pkgs/development/libraries/boost/CVE-2013-0252.patch
deleted file mode 100644
index fce52d479692..000000000000
--- a/pkgs/development/libraries/boost/CVE-2013-0252.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-Index: /boost/locale/utf.hpp

-===================================================================

---- /boost/locale/utf.hpp	(revision 78304)

-+++ /boost/locale/utf.hpp	(revision 81590)

-@@ -220,4 +220,6 @@

-                     return incomplete;

-                 tmp = *p++;

-+                if (!is_trail(tmp))

-+                    return illegal;

-                 c = (c << 6) | ( tmp & 0x3F);

-             case 2:

-@@ -225,4 +227,6 @@

-                     return incomplete;

-                 tmp = *p++;

-+                if (!is_trail(tmp))

-+                    return illegal;

-                 c = (c << 6) | ( tmp & 0x3F);

-             case 1:

-@@ -230,4 +234,6 @@

-                     return incomplete;

-                 tmp = *p++;

-+                if (!is_trail(tmp))

-+                    return illegal;

-                 c = (c << 6) | ( tmp & 0x3F);

-             }

-Index: /libs/locale/test/test_codepage_converter.cpp

-===================================================================

---- /libs/locale/test/test_codepage_converter.cpp	(revision 73786)

-+++ /libs/locale/test/test_codepage_converter.cpp	(revision 81590)

-@@ -140,4 +140,18 @@

-         TEST_TO("\xf8\x90\x80\x80\x80",illegal);  // 400 0000

-         TEST_TO("\xfd\xbf\xbf\xbf\xbf\xbf",illegal);  // 7fff ffff

-+

-+        std::cout << "-- Invalid trail" << std::endl;

-+        TEST_TO("\xC2\x7F",illegal);

-+        TEST_TO("\xdf\x7F",illegal);

-+        TEST_TO("\xe0\x7F\x80",illegal);

-+        TEST_TO("\xef\xbf\x7F",illegal);

-+        TEST_TO("\xe0\x7F\x80",illegal);

-+        TEST_TO("\xef\xbf\x7F",illegal);

-+        TEST_TO("\xf0\x7F\x80\x80",illegal);

-+        TEST_TO("\xf4\x7f\xbf\xbf",illegal);

-+        TEST_TO("\xf0\x90\x7F\x80",illegal);

-+        TEST_TO("\xf4\x8f\x7F\xbf",illegal);

-+        TEST_TO("\xf0\x90\x80\x7F",illegal);

-+        TEST_TO("\xf4\x8f\xbf\x7F",illegal);

- 

-         std::cout << "-- Invalid length" << std::endl;

diff --git a/pkgs/development/libraries/boost/boost-149-cstdint.patch b/pkgs/development/libraries/boost/boost-149-cstdint.patch
deleted file mode 100644
index 94c7b4716664..000000000000
--- a/pkgs/development/libraries/boost/boost-149-cstdint.patch
+++ /dev/null
@@ -1,15 +0,0 @@
-diff -ru -x '*~' boost_1_49_0-orig/boost/cstdint.hpp boost_1_49_0/boost/cstdint.hpp
---- boost_1_49_0-orig/boost/cstdint.hpp	2012-01-29 22:58:13.000000000 +0100
-+++ boost_1_49_0/boost/cstdint.hpp	2013-12-10 11:48:19.304042208 +0100
-@@ -41,7 +41,10 @@
- // so we disable use of stdint.h when GLIBC does not define __GLIBC_HAVE_LONG_LONG.
- // See https://svn.boost.org/trac/boost/ticket/3548 and http://sources.redhat.com/bugzilla/show_bug.cgi?id=10990
- //
--#if defined(BOOST_HAS_STDINT_H) && (!defined(__GLIBC__) || defined(__GLIBC_HAVE_LONG_LONG))
-+#if defined(BOOST_HAS_STDINT_H)					\
-+  && (!defined(__GLIBC__)					\
-+      || defined(__GLIBC_HAVE_LONG_LONG)			\
-+      || (defined(__GLIBC__) && ((__GLIBC__ > 2) || ((__GLIBC__ == 2) && (__GLIBC_MINOR__ >= 17)))))
- 
- // The following #include is an implementation artifact; not part of interface.
- # ifdef __hpux
diff --git a/pkgs/development/libraries/boost/boost-149-darwin.patch b/pkgs/development/libraries/boost/boost-149-darwin.patch
deleted file mode 100644
index 2485f883afc2..000000000000
--- a/pkgs/development/libraries/boost/boost-149-darwin.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff -rc boost_1_49_0/tools/build/v2/tools/darwin.jam boost_1_49_0-new/tools/build/v2/tools/darwin.jam
-*** boost_1_49_0/tools/build/v2/tools/darwin.jam	Mon Jun  6 22:36:21 2011
---- boost_1_49_0-new/tools/build/v2/tools/darwin.jam	Thu May 23 22:07:45 2013
-***************
-*** 498,504 ****
-  flags darwin.compile OPTIONS <link>shared : -dynamic ;
-  
-  # Misc options.
-! flags darwin.compile OPTIONS : -no-cpp-precomp -gdwarf-2 -fexceptions ;
-  #~ flags darwin.link OPTIONS : -fexceptions ;
-  
-  # Add the framework names to use.
---- 498,504 ----
-  flags darwin.compile OPTIONS <link>shared : -dynamic ;
-  
-  # Misc options.
-! flags darwin.compile OPTIONS : -gdwarf-2 -fexceptions ;
-  #~ flags darwin.link OPTIONS : -fexceptions ;
-  
-  # Add the framework names to use.
-diff -rc boost_1_49_0/tools/build/v2/tools/darwin.py boost_1_49_0-new/tools/build/v2/tools/darwin.py
-*** boost_1_49_0/tools/build/v2/tools/darwin.py	Wed Oct 28 08:47:51 2009
---- boost_1_49_0-new/tools/build/v2/tools/darwin.py	Thu May 23 21:58:12 2013
-***************
-*** 37,43 ****
-  feature.feature ('framework', [], ['free'])
-  
-  toolset.flags ('darwin.compile', 'OPTIONS', '<link>shared', ['-dynamic'])
-! toolset.flags ('darwin.compile', 'OPTIONS', None, ['-Wno-long-double', '-no-cpp-precomp'])
-  toolset.flags ('darwin.compile.c++', 'OPTIONS', None, ['-fcoalesce-templates'])
-  
-  toolset.flags ('darwin.link', 'FRAMEWORK', '<framework>')
---- 37,43 ----
-  feature.feature ('framework', [], ['free'])
-  
-  toolset.flags ('darwin.compile', 'OPTIONS', '<link>shared', ['-dynamic'])
-! toolset.flags ('darwin.compile', 'OPTIONS', None, ['-Wno-long-double'])
-  toolset.flags ('darwin.compile.c++', 'OPTIONS', None, ['-fcoalesce-templates'])
-  
-  toolset.flags ('darwin.link', 'FRAMEWORK', '<framework>')
diff --git a/pkgs/development/libraries/boost/boost_filesystem_post_1_49_0.patch b/pkgs/development/libraries/boost/boost_filesystem_post_1_49_0.patch
deleted file mode 100644
index 334533d98a65..000000000000
--- a/pkgs/development/libraries/boost/boost_filesystem_post_1_49_0.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ubr boost_1_49_0/libs/filesystem/v2/src/v2_path.cpp boost_1_49_0-patched/libs/filesystem/v2/src/v2_path.cpp
---- boost_1_49_0/libs/filesystem/v2/src/v2_path.cpp	2011-01-11 22:39:33.000000000 +0100
-+++ boost_1_49_0-patched/libs/filesystem/v2/src/v2_path.cpp	2012-02-25 20:00:33.628767485 +0100
-@@ -45,7 +45,7 @@
-   {
- #if !defined(macintosh) && !defined(__APPLE__) && !defined(__APPLE_CC__) 
-     // ISO C calls this "the locale-specific native environment":
--    static std::locale lc("");
-+    static std::locale lc;
- #else  // Mac OS
-     // "All BSD system functions expect their string parameters to be in UTF-8 encoding
-     // and nothing else."
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
new file mode 100644
index 000000000000..fdfc8b45a683
--- /dev/null
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -0,0 +1,166 @@
+{ stdenv, icu, expat, zlib, bzip2, python, fixDarwinDylibNames, makeSetupHook
+, toolset ? null
+, enableRelease ? true
+, enableDebug ? false
+, enableSingleThreaded ? false
+, enableMultiThreaded ? true
+, enableShared ? true
+, enableStatic ? false
+, enablePIC ? false
+, enableExceptions ? false
+, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
+
+# Attributes inherit from specific versions
+, version, src
+, ...
+}:
+
+# We must build at least one type of libraries
+assert !enableShared -> enableStatic;
+
+with stdenv.lib;
+let
+
+  variant = concatStringsSep ","
+    (optional enableRelease "release" ++
+     optional enableDebug "debug");
+
+  threading = concatStringsSep ","
+    (optional enableSingleThreaded "single" ++
+     optional enableMultiThreaded "multi");
+
+  link = concatStringsSep ","
+    (optional enableShared "shared" ++
+     optional enableStatic "static");
+
+  runtime-link = if enableShared then "shared" else "static";
+
+  # To avoid library name collisions
+  layout = if taggedLayout then "tagged" else "system";
+
+  cflags = if enablePIC && enableExceptions then
+             "cflags=\"-fPIC -fexceptions\" cxxflags=-fPIC linkflags=-fPIC"
+           else if enablePIC then
+             "cflags=-fPIC cxxflags=-fPIC linkflags=-fPIC"
+           else if enableExceptions then
+             "cflags=-fexceptions"
+           else
+             "";
+
+  withToolset = stdenv.lib.optionalString (toolset != null) "--with-toolset=${toolset}";
+
+  genericB2Flags = [
+    "--includedir=$dev/include"
+    "--libdir=$lib/lib"
+    "-j$NIX_BUILD_CORES"
+    "--layout=${layout}"
+    "variant=${variant}"
+    "threading=${threading}"
+    "runtime-link=${runtime-link}"
+    "link=${link}"
+    "${cflags}"
+  ] ++ optional (variant == "release") "debug-symbols=off";
+
+  nativeB2Flags = [
+    "-sEXPAT_INCLUDE=${expat}/include"
+    "-sEXPAT_LIBPATH=${expat}/lib"
+  ] ++ optional (toolset != null) "toolset=${toolset}";
+  nativeB2Args = concatStringsSep " " (genericB2Flags ++ nativeB2Flags);
+
+  crossB2Flags = [
+    "-sEXPAT_INCLUDE=${expat.crossDrv}/include"
+    "-sEXPAT_LIBPATH=${expat.crossDrv}/lib"
+    "--user-config=user-config.jam"
+    "toolset=gcc-cross"
+    "--without-python"
+  ];
+  crossB2Args = concatMapStringsSep " " (genericB2Flags ++ crossB2Flags);
+
+  builder = b2Args: ''
+    ./b2 ${b2Args}
+  '';
+
+  installer = b2Args: ''
+    # boostbook is needed by some applications
+    mkdir -p $dev/share/boostbook
+    cp -a tools/boostbook/{xsl,dtd} $dev/share/boostbook/
+
+    # Let boost install everything else
+    ./b2 ${b2Args} install
+
+    # Create a derivation which encompasses everything, making buildInputs nicer
+    mkdir -p $out/nix-support
+    echo "${stripHeaderPathHook} $dev $lib" > $out/nix-support/propagated-native-build-inputs
+  '';
+
+  commonConfigureFlags = [
+    "--includedir=$(dev)/include"
+    "--libdir=$(lib)/lib"
+  ];
+
+  stripHeaderPathHook = makeSetupHook { } ./strip-header-path.sh;
+
+in
+
+stdenv.mkDerivation {
+  name = "boost-${version}";
+
+  inherit src;
+
+  meta = {
+    homepage = "http://boost.org/";
+    description = "Collection of C++ libraries";
+    license = "boost-license";
+
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ simons wkennington ];
+  };
+
+  preConfigure = ''
+    NIX_LDFLAGS="$(echo $NIX_LDFLAGS | sed "s,$out,$lib,g")"
+    if test -f tools/build/src/tools/clang-darwin.jam ; then
+        substituteInPlace tools/build/src/tools/clang-darwin.jam \
+          --replace '$(<[1]:D=)' "$lib/lib/\$(<[1]:D=)";
+    fi;
+  '';
+
+  NIX_CFLAGS_LINK = stdenv.lib.optionalString stdenv.isDarwin
+                      "-headerpad_max_install_names";
+
+  enableParallelBuilding = true;
+
+  buildInputs = [ icu expat zlib bzip2 python ]
+    ++ stdenv.lib.optional stdenv.isDarwin fixDarwinDylibNames;
+
+  configureScript = "./bootstrap.sh";
+  configureFlags = commonConfigureFlags ++ [
+    "--with-icu=${icu}"
+    "--with-python=${python}/bin/python"
+  ] ++ optional (toolset != null) "--with-toolset=${toolset}";
+
+  buildPhase = ''
+    ${stdenv.lib.optionalString (toolset == "clang") "unset NIX_ENFORCE_PURITY"}
+  '' + builder nativeB2Args;
+
+  installPhase = installer nativeB2Args;
+
+  outputs = [ "out" "dev" "lib" ];
+
+  crossAttrs = rec {
+    buildInputs = [ expat.crossDrv zlib.crossDrv bzip2.crossDrv ];
+    # all buildInputs set previously fell into propagatedBuildInputs, as usual, so we have to
+    # override them.
+    propagatedBuildInputs = buildInputs;
+    # We want to substitute the contents of configureFlags, removing thus the
+    # usual --build and --host added on cross building.
+    preConfigure = ''
+      export configureFlags="--without-icu ${concatStringsSep " " commonConfigureFlags}"
+      set -x
+      cat << EOF > user-config.jam
+      using gcc : cross : $crossConfig-g++ ;
+      EOF
+    '';
+    buildPhase = builder crossB2Args;
+    installPhase = installer crossB2Args;
+  };
+}
diff --git a/pkgs/development/libraries/boost/strip-header-path.sh b/pkgs/development/libraries/boost/strip-header-path.sh
new file mode 100644
index 000000000000..f8243fc27be4
--- /dev/null
+++ b/pkgs/development/libraries/boost/strip-header-path.sh
@@ -0,0 +1,12 @@
+postPhases+=" boostHeaderStripPhase"
+
+boostHeaderStripPhase() {
+    runHook preBoostHeaderStrip
+    [ -z "$outputs" ] && outputs=out
+    for output in $outputs; do
+      eval "path=\$$outputs"
+      [ -d "$path/bin" ] || continue
+      find "$path/bin" -type f -exec sed -i "s,[^/]*\(-boost-[0-9.]*-dev\),xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\1,g" {} \;
+    done
+    runHook postBoostHeaderStrip
+}
diff --git a/pkgs/development/libraries/boost/time_utc.patch b/pkgs/development/libraries/boost/time_utc.patch
deleted file mode 100644
index 3585d0bfc6dd..000000000000
--- a/pkgs/development/libraries/boost/time_utc.patch
+++ /dev/null
@@ -1,320 +0,0 @@
-From: https://build.opensuse.org/package/view_file?file=boost-time_utc.patch&package=boost&project=Application%3AGeo
-
-From: https://svn.boost.org/trac/boost/changeset/78802
-
-Message:
-    Thread: fix TIME_UTC, WINVER, constexpr for tags, and don't use local files
-
-Only the TIME_UTC_ change is taken
- 
-Index: boost_1_49_0/boost/thread/xtime.hpp
-===================================================================
---- boost_1_49_0.orig/boost/thread/xtime.hpp
-+++ boost_1_49_0/boost/thread/xtime.hpp
-@@ -2,7 +2,7 @@
- // William E. Kempf
- // Copyright (C) 2007-8 Anthony Williams
- //
--//  Distributed under the Boost Software License, Version 1.0. (See accompanying 
-+//  Distributed under the Boost Software License, Version 1.0. (See accompanying
- //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- 
- #ifndef BOOST_XTIME_WEK070601_HPP
-@@ -20,7 +20,7 @@ namespace boost {
- 
- enum xtime_clock_types
- {
--    TIME_UTC=1
-+    TIME_UTC_=1
- //    TIME_TAI,
- //    TIME_MONOTONIC,
- //    TIME_PROCESS,
-@@ -53,14 +53,14 @@ struct xtime
-         boost::posix_time::microseconds((nsec+500)/1000);
- #endif
-     }
--    
-+
- };
- 
- inline xtime get_xtime(boost::system_time const& abs_time)
- {
-     xtime res;
-     boost::posix_time::time_duration const time_since_epoch=abs_time-boost::posix_time::from_time_t(0);
--            
-+
-     res.sec=static_cast<xtime::xtime_sec_t>(time_since_epoch.total_seconds());
-     res.nsec=static_cast<xtime::xtime_nsec_t>(time_since_epoch.fractional_seconds()*(1000000000/time_since_epoch.ticks_per_second()));
-     return res;
-@@ -68,7 +68,7 @@ inline xtime get_xtime(boost::system_tim
- 
- inline int xtime_get(struct xtime* xtp, int clock_type)
- {
--    if (clock_type == TIME_UTC)
-+    if (clock_type == TIME_UTC_)
-     {
-         *xtp=get_xtime(get_system_time());
-         return clock_type;
-@@ -81,7 +81,7 @@ inline int xtime_cmp(const xtime& xt1, c
- {
-     if (xt1.sec == xt2.sec)
-         return (int)(xt1.nsec - xt2.nsec);
--    else 
-+    else
-         return (xt1.sec > xt2.sec) ? 1 : -1;
- }
- 
-Index: boost_1_49_0/libs/thread/example/starvephil.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/example/starvephil.cpp
-+++ boost_1_49_0/libs/thread/example/starvephil.cpp
-@@ -50,7 +50,7 @@ public:
-                       << "very hot ..." << std::endl;
-         }
-         boost::xtime xt;
--        boost::xtime_get(&xt, boost::TIME_UTC);
-+        boost::xtime_get(&xt, boost::TIME_UTC_);
-         xt.sec += 3;
-         boost::thread::sleep(xt);
-         m_chickens += value;
-@@ -85,7 +85,7 @@ void chef()
-             std::cout << "(" << clock() << ") Chef: cooking ..." << std::endl;
-         }
-         boost::xtime xt;
--        boost::xtime_get(&xt, boost::TIME_UTC);
-+        boost::xtime_get(&xt, boost::TIME_UTC_);
-         xt.sec += 2;
-         boost::thread::sleep(xt);
-         {
-@@ -111,7 +111,7 @@ struct phil
-             if (m_id > 0)
-             {
-                 boost::xtime xt;
--                boost::xtime_get(&xt, boost::TIME_UTC);
-+                boost::xtime_get(&xt, boost::TIME_UTC_);
-                 xt.sec += 3;
-                 boost::thread::sleep(xt);
-             }
-Index: boost_1_49_0/libs/thread/example/tennis.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/example/tennis.cpp
-+++ boost_1_49_0/libs/thread/example/tennis.cpp
-@@ -1,7 +1,7 @@
- // Copyright (C) 2001-2003
- // William E. Kempf
- //
--//  Distributed under the Boost Software License, Version 1.0. (See accompanying 
-+//  Distributed under the Boost Software License, Version 1.0. (See accompanying
- //  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
- 
- #include <boost/thread/mutex.hpp>
-@@ -104,7 +104,7 @@ int main(int argc, char* argv[])
-     boost::thread thrdb(thread_adapter(&player, (void*)PLAYER_B));
- 
-     boost::xtime xt;
--    boost::xtime_get(&xt, boost::TIME_UTC);
-+    boost::xtime_get(&xt, boost::TIME_UTC_);
-     xt.sec += 1;
-     boost::thread::sleep(xt);
-     {
-Index: boost_1_49_0/libs/thread/example/thread.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/example/thread.cpp
-+++ boost_1_49_0/libs/thread/example/thread.cpp
-@@ -14,7 +14,7 @@ struct thread_alarm
-     void operator()()
-     {
-         boost::xtime xt;
--        boost::xtime_get(&xt, boost::TIME_UTC);
-+        boost::xtime_get(&xt, boost::TIME_UTC_);
-         xt.sec += m_secs;
- 
-         boost::thread::sleep(xt);
-Index: boost_1_49_0/libs/thread/example/xtime.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/example/xtime.cpp
-+++ boost_1_49_0/libs/thread/example/xtime.cpp
-@@ -10,7 +10,7 @@
- int main(int argc, char* argv[])
- {
-     boost::xtime xt;
--    boost::xtime_get(&xt, boost::TIME_UTC);
-+    boost::xtime_get(&xt, boost::TIME_UTC_);
-     xt.sec += 1;
-     boost::thread::sleep(xt); // Sleep for 1 second
- }
-Index: boost_1_49_0/libs/thread/src/pthread/thread.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/src/pthread/thread.cpp
-+++ boost_1_49_0/libs/thread/src/pthread/thread.cpp
-@@ -23,7 +23,7 @@
- #include <unistd.h>
- #endif
- 
--#include "timeconv.inl"
-+#include <libs/thread/src/pthread/timeconv.inl>
- 
- namespace boost
- {
-@@ -354,7 +354,7 @@ namespace boost
-                     cond.timed_wait(lock, xt);
- #   endif
-                     xtime cur;
--                    xtime_get(&cur, TIME_UTC);
-+                    xtime_get(&cur, TIME_UTC_);
-                     if (xtime_cmp(xt, cur) <= 0)
-                         return;
-                 }
-@@ -369,7 +369,7 @@ namespace boost
-             BOOST_VERIFY(!pthread_yield());
- #   else
-             xtime xt;
--            xtime_get(&xt, TIME_UTC);
-+            xtime_get(&xt, TIME_UTC_);
-             sleep(xt);
- #   endif
-         }
-Index: boost_1_49_0/libs/thread/src/pthread/timeconv.inl
-===================================================================
---- boost_1_49_0.orig/libs/thread/src/pthread/timeconv.inl
-+++ boost_1_49_0/libs/thread/src/pthread/timeconv.inl
-@@ -20,8 +20,8 @@ const int NANOSECONDS_PER_MICROSECOND =
- inline void to_time(int milliseconds, boost::xtime& xt)
- {
-     int res = 0;
--    res = boost::xtime_get(&xt, boost::TIME_UTC);
--    BOOST_ASSERT(res == boost::TIME_UTC); (void)res;
-+    res = boost::xtime_get(&xt, boost::TIME_UTC_);
-+    BOOST_ASSERT(res == boost::TIME_UTC_); (void)res;
- 
-     xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-     xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
-@@ -56,8 +56,8 @@ inline void to_timespec_duration(const b
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    BOOST_ASSERT(res == boost::TIME_UTC); (void)res;
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    BOOST_ASSERT(res == boost::TIME_UTC_); (void)res;
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-     {
-@@ -87,8 +87,8 @@ inline void to_duration(boost::xtime xt,
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    BOOST_ASSERT(res == boost::TIME_UTC); (void)res;
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    BOOST_ASSERT(res == boost::TIME_UTC_); (void)res;
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-         milliseconds = 0;
-@@ -109,8 +109,8 @@ inline void to_microduration(boost::xtim
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    BOOST_ASSERT(res == boost::TIME_UTC); (void)res;
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    BOOST_ASSERT(res == boost::TIME_UTC_); (void)res;
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-         microseconds = 0;
-Index: boost_1_49_0/libs/thread/src/win32/timeconv.inl
-===================================================================
---- boost_1_49_0.orig/libs/thread/src/win32/timeconv.inl
-+++ boost_1_49_0/libs/thread/src/win32/timeconv.inl
-@@ -17,8 +17,8 @@ const int NANOSECONDS_PER_MICROSECOND =
- inline void to_time(int milliseconds, boost::xtime& xt)
- {
-     int res = 0;
--    res = boost::xtime_get(&xt, boost::TIME_UTC);
--    assert(res == boost::TIME_UTC);
-+    res = boost::xtime_get(&xt, boost::TIME_UTC_);
-+    assert(res == boost::TIME_UTC_);
- 
-     xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-     xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
-@@ -54,8 +54,8 @@ inline void to_timespec_duration(const b
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    assert(res == boost::TIME_UTC);
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    assert(res == boost::TIME_UTC_);
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-     {
-@@ -85,8 +85,8 @@ inline void to_duration(boost::xtime xt,
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    assert(res == boost::TIME_UTC);
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    assert(res == boost::TIME_UTC_);
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-         milliseconds = 0;
-@@ -107,8 +107,8 @@ inline void to_microduration(boost::xtim
- {
-     boost::xtime cur;
-     int res = 0;
--    res = boost::xtime_get(&cur, boost::TIME_UTC);
--    assert(res == boost::TIME_UTC);
-+    res = boost::xtime_get(&cur, boost::TIME_UTC_);
-+    assert(res == boost::TIME_UTC_);
- 
-     if (boost::xtime_cmp(xt, cur) <= 0)
-         microseconds = 0;
-Index: boost_1_49_0/libs/thread/test/test_xtime.cpp
-===================================================================
---- boost_1_49_0.orig/libs/thread/test/test_xtime.cpp
-+++ boost_1_49_0/libs/thread/test/test_xtime.cpp
-@@ -17,8 +17,8 @@ void test_xtime_cmp()
- {
-     boost::xtime xt1, xt2, cur;
-     BOOST_CHECK_EQUAL(
--        boost::xtime_get(&cur, boost::TIME_UTC),
--        static_cast<int>(boost::TIME_UTC));
-+        boost::xtime_get(&cur, boost::TIME_UTC_),
-+        static_cast<int>(boost::TIME_UTC_));
- 
-     xt1 = xt2 = cur;
-     xt1.nsec -= 1;
-@@ -42,14 +42,14 @@ void test_xtime_get()
-     boost::xtime orig, cur, old;
-     BOOST_CHECK_EQUAL(
-         boost::xtime_get(&orig,
--            boost::TIME_UTC), static_cast<int>(boost::TIME_UTC));
-+            boost::TIME_UTC_), static_cast<int>(boost::TIME_UTC_));
-     old = orig;
- 
-     for (int x=0; x < 100; ++x)
-     {
-         BOOST_CHECK_EQUAL(
--            boost::xtime_get(&cur, boost::TIME_UTC),
--            static_cast<int>(boost::TIME_UTC));
-+            boost::xtime_get(&cur, boost::TIME_UTC_),
-+            static_cast<int>(boost::TIME_UTC_));
-         BOOST_CHECK(boost::xtime_cmp(cur, orig) >= 0);
-         BOOST_CHECK(boost::xtime_cmp(cur, old) >= 0);
-         old = cur;
-Index: boost_1_49_0/libs/thread/test/util.inl
-===================================================================
---- boost_1_49_0.orig/libs/thread/test/util.inl
-+++ boost_1_49_0/libs/thread/test/util.inl
-@@ -28,8 +28,8 @@ inline boost::xtime delay(int secs, int
-     const int NANOSECONDS_PER_MILLISECOND = 1000000;
- 
-     boost::xtime xt;
--    if (boost::TIME_UTC != boost::xtime_get (&xt, boost::TIME_UTC))
--        BOOST_ERROR ("boost::xtime_get != boost::TIME_UTC");
-+    if (boost::TIME_UTC_ != boost::xtime_get (&xt, boost::TIME_UTC_))
-+        BOOST_ERROR ("boost::xtime_get != boost::TIME_UTC_");
- 
-     nsecs += xt.nsec;
-     msecs += nsecs / NANOSECONDS_PER_MILLISECOND;
diff --git a/pkgs/development/libraries/boost/time_utc_144.patch b/pkgs/development/libraries/boost/time_utc_144.patch
deleted file mode 100644
index 512832c18295..000000000000
--- a/pkgs/development/libraries/boost/time_utc_144.patch
+++ /dev/null
@@ -1,520 +0,0 @@
-diff -rc boost_1_44_0/boost/thread/xtime.hpp boost_1_44_0-new/boost/thread/xtime.hpp
-*** boost_1_44_0/boost/thread/xtime.hpp	2008-06-18 15:01:08.000000000 +0200
---- boost_1_44_0-new/boost/thread/xtime.hpp	2013-04-12 14:00:27.125713549 +0200
-***************
-*** 20,26 ****
-  
-  enum xtime_clock_types
-  {
-!     TIME_UTC=1
-  //    TIME_TAI,
-  //    TIME_MONOTONIC,
-  //    TIME_PROCESS,
---- 20,26 ----
-  
-  enum xtime_clock_types
-  {
-!     TIME_UTC_=1
-  //    TIME_TAI,
-  //    TIME_MONOTONIC,
-  //    TIME_PROCESS,
-***************
-*** 68,74 ****
-  
-  inline int xtime_get(struct xtime* xtp, int clock_type)
-  {
-!     if (clock_type == TIME_UTC)
-      {
-          *xtp=get_xtime(get_system_time());
-          return clock_type;
---- 68,74 ----
-  
-  inline int xtime_get(struct xtime* xtp, int clock_type)
-  {
-!     if (clock_type == TIME_UTC_)
-      {
-          *xtp=get_xtime(get_system_time());
-          return clock_type;
-diff -rc boost_1_44_0/libs/interprocess/test/condition_test_template.hpp boost_1_44_0-new/libs/interprocess/test/condition_test_template.hpp
-*** boost_1_44_0/libs/interprocess/test/condition_test_template.hpp	2009-10-15 20:45:53.000000000 +0200
---- boost_1_44_0-new/libs/interprocess/test/condition_test_template.hpp	2013-04-12 14:00:20.215658855 +0200
-***************
-*** 49,56 ****
-      const int NANOSECONDS_PER_MILLISECOND = 1000000;
-  
-      boost::xtime xt;
-!     int ret = boost::xtime_get(&xt, boost::TIME_UTC);
-!     assert(ret == static_cast<int>(boost::TIME_UTC));(void)ret;
-      nsecs += xt.nsec;
-      msecs += nsecs / NANOSECONDS_PER_MILLISECOND;
-      secs += msecs / MILLISECONDS_PER_SECOND;
---- 49,56 ----
-      const int NANOSECONDS_PER_MILLISECOND = 1000000;
-  
-      boost::xtime xt;
-!     int ret = boost::xtime_get(&xt, boost::TIME_UTC_);
-!     assert(ret == static_cast<int>(boost::TIME_UTC_));(void)ret;
-      nsecs += xt.nsec;
-      msecs += nsecs / NANOSECONDS_PER_MILLISECOND;
-      secs += msecs / MILLISECONDS_PER_SECOND;
-diff -rc boost_1_44_0/libs/interprocess/test/util.hpp boost_1_44_0-new/libs/interprocess/test/util.hpp
-*** boost_1_44_0/libs/interprocess/test/util.hpp	2009-10-15 20:45:53.000000000 +0200
---- boost_1_44_0-new/libs/interprocess/test/util.hpp	2013-04-12 14:00:20.219658887 +0200
-***************
-*** 71,77 ****
-  boost::xtime xsecs(int secs)
-  {
-     boost::xtime ret;
-!    boost::xtime_get(&ret, boost::TIME_UTC);
-     ret.sec += secs;
-     return ret;
-  }
---- 71,77 ----
-  boost::xtime xsecs(int secs)
-  {
-     boost::xtime ret;
-!    boost::xtime_get(&ret, boost::TIME_UTC_);
-     ret.sec += secs;
-     return ret;
-  }
-diff -rc boost_1_44_0/libs/spirit/classic/test/grammar_mt_tests.cpp boost_1_44_0-new/libs/spirit/classic/test/grammar_mt_tests.cpp
-*** boost_1_44_0/libs/spirit/classic/test/grammar_mt_tests.cpp	2008-06-22 17:05:38.000000000 +0200
---- boost_1_44_0-new/libs/spirit/classic/test/grammar_mt_tests.cpp	2013-04-12 14:00:18.836647940 +0200
-***************
-*** 70,76 ****
-  {
-      static long const nanoseconds_per_second = 1000L*1000L*1000L;
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC);
-      xt.nsec+=1000*1000*milliseconds;
-      while (xt.nsec > nanoseconds_per_second)
-      {
---- 70,76 ----
-  {
-      static long const nanoseconds_per_second = 1000L*1000L*1000L;
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC_);
-      xt.nsec+=1000*1000*milliseconds;
-      while (xt.nsec > nanoseconds_per_second)
-      {
-diff -rc boost_1_44_0/libs/spirit/classic/test/owi_mt_tests.cpp boost_1_44_0-new/libs/spirit/classic/test/owi_mt_tests.cpp
-*** boost_1_44_0/libs/spirit/classic/test/owi_mt_tests.cpp	2008-06-22 17:05:38.000000000 +0200
---- boost_1_44_0-new/libs/spirit/classic/test/owi_mt_tests.cpp	2013-04-12 14:00:18.836647940 +0200
-***************
-*** 86,92 ****
-              return test_size;
-  
-          boost::xtime now;
-!         boost::xtime_get(&now, boost::TIME_UTC);
-          unsigned long seconds = now.sec - start_time.sec;
-          if (seconds < 4)
-          {
---- 86,92 ----
-              return test_size;
-  
-          boost::xtime now;
-!         boost::xtime_get(&now, boost::TIME_UTC_);
-          unsigned long seconds = now.sec - start_time.sec;
-          if (seconds < 4)
-          {
-***************
-*** 187,193 ****
-  void concurrent_creation_of_objects()
-  {
-      {
-!         boost::xtime_get(&start_time, boost::TIME_UTC);
-          boost::thread thread1(callable_ref(test1));
-          boost::thread thread2(callable_ref(test2));
-          boost::thread thread3(callable_ref(test3));
---- 187,193 ----
-  void concurrent_creation_of_objects()
-  {
-      {
-!         boost::xtime_get(&start_time, boost::TIME_UTC_);
-          boost::thread thread1(callable_ref(test1));
-          boost::thread thread2(callable_ref(test2));
-          boost::thread thread3(callable_ref(test3));
-diff -rc boost_1_44_0/libs/thread/example/starvephil.cpp boost_1_44_0-new/libs/thread/example/starvephil.cpp
-*** boost_1_44_0/libs/thread/example/starvephil.cpp	2006-09-14 23:51:01.000000000 +0200
---- boost_1_44_0-new/libs/thread/example/starvephil.cpp	2013-04-12 14:00:19.413652507 +0200
-***************
-*** 50,56 ****
-                        << "very hot ..." << std::endl;
-          }
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC);
-          xt.sec += 3;
-          boost::thread::sleep(xt);
-          m_chickens += value;
---- 50,56 ----
-                        << "very hot ..." << std::endl;
-          }
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC_);
-          xt.sec += 3;
-          boost::thread::sleep(xt);
-          m_chickens += value;
-***************
-*** 85,91 ****
-              std::cout << "(" << clock() << ") Chef: cooking ..." << std::endl;
-          }
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC);
-          xt.sec += 2;
-          boost::thread::sleep(xt);
-          {
---- 85,91 ----
-              std::cout << "(" << clock() << ") Chef: cooking ..." << std::endl;
-          }
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC_);
-          xt.sec += 2;
-          boost::thread::sleep(xt);
-          {
-***************
-*** 111,117 ****
-              if (m_id > 0)
-              {
-                  boost::xtime xt;
-!                 boost::xtime_get(&xt, boost::TIME_UTC);
-                  xt.sec += 3;
-                  boost::thread::sleep(xt);
-              }
---- 111,117 ----
-              if (m_id > 0)
-              {
-                  boost::xtime xt;
-!                 boost::xtime_get(&xt, boost::TIME_UTC_);
-                  xt.sec += 3;
-                  boost::thread::sleep(xt);
-              }
-diff -rc boost_1_44_0/libs/thread/example/tennis.cpp boost_1_44_0-new/libs/thread/example/tennis.cpp
-*** boost_1_44_0/libs/thread/example/tennis.cpp	2009-10-19 11:18:13.000000000 +0200
---- boost_1_44_0-new/libs/thread/example/tennis.cpp	2013-04-12 14:00:19.412652499 +0200
-***************
-*** 104,110 ****
-      boost::thread thrdb(thread_adapter(&player, (void*)PLAYER_B));
-  
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC);
-      xt.sec += 1;
-      boost::thread::sleep(xt);
-      {
---- 104,110 ----
-      boost::thread thrdb(thread_adapter(&player, (void*)PLAYER_B));
-  
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC_);
-      xt.sec += 1;
-      boost::thread::sleep(xt);
-      {
-diff -rc boost_1_44_0/libs/thread/example/thread.cpp boost_1_44_0-new/libs/thread/example/thread.cpp
-*** boost_1_44_0/libs/thread/example/thread.cpp	2006-09-14 23:51:01.000000000 +0200
---- boost_1_44_0-new/libs/thread/example/thread.cpp	2013-04-12 14:00:19.414652515 +0200
-***************
-*** 14,20 ****
-      void operator()()
-      {
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC);
-          xt.sec += m_secs;
-  
-          boost::thread::sleep(xt);
---- 14,20 ----
-      void operator()()
-      {
-          boost::xtime xt;
-!         boost::xtime_get(&xt, boost::TIME_UTC_);
-          xt.sec += m_secs;
-  
-          boost::thread::sleep(xt);
-diff -rc boost_1_44_0/libs/thread/example/xtime.cpp boost_1_44_0-new/libs/thread/example/xtime.cpp
-*** boost_1_44_0/libs/thread/example/xtime.cpp	2006-09-14 23:51:01.000000000 +0200
---- boost_1_44_0-new/libs/thread/example/xtime.cpp	2013-04-12 14:00:19.413652507 +0200
-***************
-*** 10,16 ****
-  int main(int argc, char* argv[])
-  {
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC);
-      xt.sec += 1;
-      boost::thread::sleep(xt); // Sleep for 1 second
-  }
---- 10,16 ----
-  int main(int argc, char* argv[])
-  {
-      boost::xtime xt;
-!     boost::xtime_get(&xt, boost::TIME_UTC_);
-      xt.sec += 1;
-      boost::thread::sleep(xt); // Sleep for 1 second
-  }
-diff -rc boost_1_44_0/libs/thread/src/pthread/thread.cpp boost_1_44_0-new/libs/thread/src/pthread/thread.cpp
-*** boost_1_44_0/libs/thread/src/pthread/thread.cpp	2010-07-09 21:13:09.000000000 +0200
---- boost_1_44_0-new/libs/thread/src/pthread/thread.cpp	2013-04-12 14:00:19.415652523 +0200
-***************
-*** 350,356 ****
-                      cond.timed_wait(lock, xt);
-  #   endif
-                      xtime cur;
-!                     xtime_get(&cur, TIME_UTC);
-                      if (xtime_cmp(xt, cur) <= 0)
-                          return;
-                  }
---- 350,356 ----
-                      cond.timed_wait(lock, xt);
-  #   endif
-                      xtime cur;
-!                     xtime_get(&cur, TIME_UTC_);
-                      if (xtime_cmp(xt, cur) <= 0)
-                          return;
-                  }
-***************
-*** 365,371 ****
-              BOOST_VERIFY(!pthread_yield());
-  #   else
-              xtime xt;
-!             xtime_get(&xt, TIME_UTC);
-              sleep(xt);
-  #   endif
-          }
---- 365,371 ----
-              BOOST_VERIFY(!pthread_yield());
-  #   else
-              xtime xt;
-!             xtime_get(&xt, TIME_UTC_);
-              sleep(xt);
-  #   endif
-          }
-diff -rc boost_1_44_0/libs/thread/src/pthread/timeconv.inl boost_1_44_0-new/libs/thread/src/pthread/timeconv.inl
-*** boost_1_44_0/libs/thread/src/pthread/timeconv.inl	2010-04-01 17:04:15.000000000 +0200
---- boost_1_44_0-new/libs/thread/src/pthread/timeconv.inl	2013-04-12 14:00:19.414652515 +0200
-***************
-*** 20,27 ****
-  inline void to_time(int milliseconds, boost::xtime& xt)
-  {
-      int res = 0;
-!     res = boost::xtime_get(&xt, boost::TIME_UTC);
-!     BOOST_ASSERT(res == boost::TIME_UTC);
-  
-      xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-      xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
---- 20,27 ----
-  inline void to_time(int milliseconds, boost::xtime& xt)
-  {
-      int res = 0;
-!     res = boost::xtime_get(&xt, boost::TIME_UTC_);
-!     BOOST_ASSERT(res == boost::TIME_UTC_);
-  
-      xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-      xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
-***************
-*** 57,64 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     BOOST_ASSERT(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-      {
---- 57,64 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     BOOST_ASSERT(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-      {
-***************
-*** 88,95 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     BOOST_ASSERT(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          milliseconds = 0;
---- 88,95 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     BOOST_ASSERT(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          milliseconds = 0;
-***************
-*** 110,117 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     BOOST_ASSERT(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          microseconds = 0;
---- 110,117 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     BOOST_ASSERT(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          microseconds = 0;
-diff -rc boost_1_44_0/libs/thread/src/win32/timeconv.inl boost_1_44_0-new/libs/thread/src/win32/timeconv.inl
-*** boost_1_44_0/libs/thread/src/win32/timeconv.inl	2007-11-25 19:38:02.000000000 +0100
---- boost_1_44_0-new/libs/thread/src/win32/timeconv.inl	2013-04-12 14:00:19.416652531 +0200
-***************
-*** 17,24 ****
-  inline void to_time(int milliseconds, boost::xtime& xt)
-  {
-      int res = 0;
-!     res = boost::xtime_get(&xt, boost::TIME_UTC);
-!     assert(res == boost::TIME_UTC);
-  
-      xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-      xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
---- 17,24 ----
-  inline void to_time(int milliseconds, boost::xtime& xt)
-  {
-      int res = 0;
-!     res = boost::xtime_get(&xt, boost::TIME_UTC_);
-!     assert(res == boost::TIME_UTC_);
-  
-      xt.sec += (milliseconds / MILLISECONDS_PER_SECOND);
-      xt.nsec += ((milliseconds % MILLISECONDS_PER_SECOND) *
-***************
-*** 54,61 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     assert(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-      {
---- 54,61 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     assert(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-      {
-***************
-*** 85,92 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     assert(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          milliseconds = 0;
---- 85,92 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     assert(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          milliseconds = 0;
-***************
-*** 107,114 ****
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC);
-!     assert(res == boost::TIME_UTC);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          microseconds = 0;
---- 107,114 ----
-  {
-      boost::xtime cur;
-      int res = 0;
-!     res = boost::xtime_get(&cur, boost::TIME_UTC_);
-!     assert(res == boost::TIME_UTC_);
-  
-      if (boost::xtime_cmp(xt, cur) <= 0)
-          microseconds = 0;
-diff -rc boost_1_44_0/libs/thread/test/test_xtime.cpp boost_1_44_0-new/libs/thread/test/test_xtime.cpp
-*** boost_1_44_0/libs/thread/test/test_xtime.cpp	2008-07-08 09:44:55.000000000 +0200
---- boost_1_44_0-new/libs/thread/test/test_xtime.cpp	2013-04-12 14:00:19.432652657 +0200
-***************
-*** 17,24 ****
-  {
-      boost::xtime xt1, xt2, cur;
-      BOOST_CHECK_EQUAL(
-!         boost::xtime_get(&cur, boost::TIME_UTC),
-!         static_cast<int>(boost::TIME_UTC));
-  
-      xt1 = xt2 = cur;
-      xt1.nsec -= 1;
---- 17,24 ----
-  {
-      boost::xtime xt1, xt2, cur;
-      BOOST_CHECK_EQUAL(
-!         boost::xtime_get(&cur, boost::TIME_UTC_),
-!         static_cast<int>(boost::TIME_UTC_));
-  
-      xt1 = xt2 = cur;
-      xt1.nsec -= 1;
-***************
-*** 42,55 ****
-      boost::xtime orig, cur, old;
-      BOOST_CHECK_EQUAL(
-          boost::xtime_get(&orig,
-!             boost::TIME_UTC), static_cast<int>(boost::TIME_UTC));
-      old = orig;
-  
-      for (int x=0; x < 100; ++x)
-      {
-          BOOST_CHECK_EQUAL(
-!             boost::xtime_get(&cur, boost::TIME_UTC),
-!             static_cast<int>(boost::TIME_UTC));
-          BOOST_CHECK(boost::xtime_cmp(cur, orig) >= 0);
-          BOOST_CHECK(boost::xtime_cmp(cur, old) >= 0);
-          old = cur;
---- 42,55 ----
-      boost::xtime orig, cur, old;
-      BOOST_CHECK_EQUAL(
-          boost::xtime_get(&orig,
-!             boost::TIME_UTC_), static_cast<int>(boost::TIME_UTC));
-      old = orig;
-  
-      for (int x=0; x < 100; ++x)
-      {
-          BOOST_CHECK_EQUAL(
-!             boost::xtime_get(&cur, boost::TIME_UTC_),
-!             static_cast<int>(boost::TIME_UTC_));
-          BOOST_CHECK(boost::xtime_cmp(cur, orig) >= 0);
-          BOOST_CHECK(boost::xtime_cmp(cur, old) >= 0);
-          old = cur;
-diff -rc boost_1_44_0/libs/thread/test/util.inl boost_1_44_0-new/libs/thread/test/util.inl
-*** boost_1_44_0/libs/thread/test/util.inl	2008-11-03 23:29:39.000000000 +0100
---- boost_1_44_0-new/libs/thread/test/util.inl	2013-04-12 14:00:19.433652665 +0200
-***************
-*** 28,35 ****
-      const int NANOSECONDS_PER_MILLISECOND = 1000000;
-  
-      boost::xtime xt;
-!     if (boost::TIME_UTC != boost::xtime_get (&xt, boost::TIME_UTC))
-!         BOOST_ERROR ("boost::xtime_get != boost::TIME_UTC");
-  
-      nsecs += xt.nsec;
-      msecs += nsecs / NANOSECONDS_PER_MILLISECOND;
---- 28,35 ----
-      const int NANOSECONDS_PER_MILLISECOND = 1000000;
-  
-      boost::xtime xt;
-!     if (boost::TIME_UTC_ != boost::xtime_get (&xt, boost::TIME_UTC))
-!         BOOST_ERROR ("boost::xtime_get != boost::TIME_UTC_");
-  
-      nsecs += xt.nsec;
-      msecs += nsecs / NANOSECONDS_PER_MILLISECOND;
diff --git a/pkgs/development/libraries/botan/default.nix b/pkgs/development/libraries/botan/default.nix
index e603b904ddac..fc56d630837c 100644
--- a/pkgs/development/libraries/botan/default.nix
+++ b/pkgs/development/libraries/botan/default.nix
@@ -1,59 +1,7 @@
-x@{builderDefsPackage
-  , python
-  , bzip2, zlib, gmp, openssl
-  , boost
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
+{ callPackage, ... } @ args:
 
-  buildInputs = [ boost.lib ]
-    ++ map (n: builtins.getAttr n x)
-      (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="botan";
-    tarBaseName="Botan";
-    baseVersion = "1.10";
-    revision = "8";
-    version="${baseVersion}.${revision}";
-    name="${baseName}-${version}";
-    url="http://files.randombit.net/${baseName}/v${baseVersion}/${tarBaseName}-${version}.tbz";
-    hash = "182f316rbdd6jrqn92vjms3jyb9syn4ic0nzi3b7rfjbj3zdabxw";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall" "fixPkgConfig"];
-  configureCommand = "python configure.py --with-gnump --with-bzip2 --with-zlib --with-openssl --with-tr1-implementation=boost";
-
-  fixPkgConfig = a.fullDepEntry ''
-    cd "$out"/lib/pkgconfig
-    ln -s botan-*.pc botan.pc || true
-  '' ["minInit" "doMakeInstall"];
-      
-  meta = {
-    description = "Cryptographic algorithms library";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      unix;
-    inherit version;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://files.randombit.net/botan/";
-    };
-  };
-}) x
+callPackage ./generic.nix (args // {
+  baseVersion = "1.10";
+  revision = "8";
+  sha256 = "182f316rbdd6jrqn92vjms3jyb9syn4ic0nzi3b7rfjbj3zdabxw";
+})
diff --git a/pkgs/development/libraries/botan/generic.nix b/pkgs/development/libraries/botan/generic.nix
new file mode 100644
index 000000000000..3fe8d1da7299
--- /dev/null
+++ b/pkgs/development/libraries/botan/generic.nix
@@ -0,0 +1,35 @@
+{ stdenv, fetchurl, python, bzip2, zlib, gmp, openssl, boost
+# Passed by version specific builders
+, baseVersion, revision, sha256
+, ...
+}:
+
+stdenv.mkDerivation rec {
+  name = "botan-${version}";
+  version = "${baseVersion}.${revision}";
+
+  src = fetchurl {
+    name = "Botan-${version}.tar.bz2";
+    url = "http://files.randombit.net/botan/v${baseVersion}/Botan-${version}.tbz";
+    inherit sha256;
+  };
+
+  buildInputs = [ python bzip2 zlib gmp openssl boost ];
+
+  configurePhase = ''
+    python configure.py --prefix=$out --with-gnump --with-bzip2 --with-zlib --with-openssl
+  '';
+
+  postInstall = ''
+    cd "$out"/lib/pkgconfig
+    ln -s botan-*.pc botan.pc || true
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Cryptographic algorithms library";
+    maintainers = with maintainers; [ raskin ];
+    platforms = platforms.unix;
+    license = licenses.bsd2;
+  };
+  passthru.updateInfo.downloadPage = "http://files.randombit.net/botan/";
+}
diff --git a/pkgs/development/libraries/botan/unstable.nix b/pkgs/development/libraries/botan/unstable.nix
index be541a1d8ec3..5b3a8720bfee 100644
--- a/pkgs/development/libraries/botan/unstable.nix
+++ b/pkgs/development/libraries/botan/unstable.nix
@@ -1,59 +1,7 @@
-x@{builderDefsPackage
-  , python
-  , bzip2, zlib, gmp, openssl
-  , boost
-  , ...}:
-builderDefsPackage
-(a :
-let
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
-    [];
+{ callPackage, ... } @ args:
 
-  buildInputs = [ boost.lib ]
-    ++ map (n: builtins.getAttr n x)
-      (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-    baseName="botan";
-    tarBaseName="Botan";
-    baseVersion = "1.11";
-    revision = "9";
-    version="${baseVersion}.${revision}";
-    name="${baseName}-${version}";
-    url="http://files.randombit.net/${baseName}/v${baseVersion}/${tarBaseName}-${version}.tbz";
-    hash = "0jgx5va042gmr6nc91p5dd59wnfxlz19mz2nnyv74pvwwmizs09m";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doConfigure" "doMakeInstall" "fixPkgConfig"];
-  configureCommand = "python configure.py --with-gnump --with-bzip2 --with-zlib --with-openssl";
-
-  fixPkgConfig = a.fullDepEntry ''
-    cd "$out"/lib/pkgconfig
-    ln -s botan-*.pc botan.pc || true
-  '' ["minInit" "doMakeInstall"];
-
-  meta = {
-    description = "Cryptographic algorithms library";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      unix;
-    inherit version;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://files.randombit.net/botan/";
-    };
-  };
-}) x
+callPackage ./generic.nix (args // {
+  baseVersion = "1.11";
+  revision = "9";
+  sha256 = "0jgx5va042gmr6nc91p5dd59wnfxlz19mz2nnyv74pvwwmizs09m";
+})
diff --git a/pkgs/development/libraries/cpp-netlib/default.nix b/pkgs/development/libraries/cpp-netlib/default.nix
index 3ce9dc38b3c1..2f088b4d3044 100644
--- a/pkgs/development/libraries/cpp-netlib/default.nix
+++ b/pkgs/development/libraries/cpp-netlib/default.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
     md5 = "0765cf203f451394df98e6ddf7bf2541";
   };
 
-  buildInputs = [ cmake boost boost.lib openssl ];
+  buildInputs = [ cmake boost openssl ];
 
   cmakeFlags = [ "-DCPP-NETLIB_BUILD_SHARED_LIBS=ON" "-DCMAKE_BUILD_TYPE=RELEASE" ];
 
diff --git a/pkgs/development/libraries/exempi/default.nix b/pkgs/development/libraries/exempi/default.nix
index 4fb184f8d605..e941f0f65476 100644
--- a/pkgs/development/libraries/exempi/default.nix
+++ b/pkgs/development/libraries/exempi/default.nix
@@ -8,9 +8,9 @@ stdenv.mkDerivation rec {
     sha256 = "01vcd1mfn2s0iiq2cjyzgvnxx6kcq9cwra1iipijhs0vwvjx0yhf";
   };
 
-  configureFlags = [ "--with-boost=${boost}" ];
+  configureFlags = [ "--with-boost=${boost.dev}" ];
 
-  buildInputs = [ expat zlib boost boost.lib ];
+  buildInputs = [ expat zlib boost ];
 
   meta = with stdenv.lib; {
     homepage = http://libopenraw.freedesktop.org/wiki/Exempi/;
diff --git a/pkgs/development/libraries/ffmpeg/2.x.nix b/pkgs/development/libraries/ffmpeg/2.x.nix
index 3c712f320840..912db6f261df 100644
--- a/pkgs/development/libraries/ffmpeg/2.x.nix
+++ b/pkgs/development/libraries/ffmpeg/2.x.nix
@@ -5,12 +5,12 @@
 }:
 
 stdenv.mkDerivation rec {
-  version = "2.4.2";
+  version = "2.4.3";
   name = "ffmpeg-${version}";
 
   src = fetchurl {
     url = "http://www.ffmpeg.org/releases/${name}.tar.bz2";
-    sha256 = "0zps80jyjvkmgmjvp9s7drbddr820hcw4w5r78hkbs5xsylr0kwp";
+    sha256 = "00p6qi7kwc2rv7h98bczrdssa7nbda3fpz7avjwl77jg1qy3wp6a";
   };
 
   subtitleSupport = config.ffmpeg.subtitle or true;
diff --git a/pkgs/development/libraries/fox/fox-1.6.nix b/pkgs/development/libraries/fox/fox-1.6.nix
index 2fe104e849fd..604fe3c2fdf0 100644
--- a/pkgs/development/libraries/fox/fox-1.6.nix
+++ b/pkgs/development/libraries/fox/fox-1.6.nix
@@ -21,6 +21,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
+    branch = "1.6";
     description = "FOX is a C++ based class library for building Graphical User Interfaces";
     longDescription = ''
         FOX stands for Free Objects for X.
diff --git a/pkgs/development/libraries/gegl/0_0_22.nix b/pkgs/development/libraries/gegl/0_0_22.nix
deleted file mode 100644
index 3f9a619ff6a1..000000000000
--- a/pkgs/development/libraries/gegl/0_0_22.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, glib, babl_0_0_22, libpng, cairo, libjpeg
-, librsvg, pango, gtk }:
-
-stdenv.mkDerivation {
-  name = "gegl-0.0.22";
-
-  src = fetchurl {
-    url = ftp://ftp.gimp.org/pub/gegl/0.0/gegl-0.0.22.tar.bz2;
-    sha256 = "0nx6r9amzhw5d2ghlw3z8qnry18rwz1ymvl2cm31b8p49z436wl5";
-  };
-
-  configureFlags = "--disable-docs"; # needs fonts otherwise  don't know how to pass them
-
-  buildInputs = [ pkgconfig glib babl_0_0_22 libpng cairo libjpeg librsvg pango gtk ];
-
-  meta = {
-    description = "Graph-based image processing framework";
-    homepage = http://www.gegl.org;
-    license = stdenv.lib.licenses.gpl3;
-  };
-}
diff --git a/pkgs/development/libraries/geoclue/2.0.nix b/pkgs/development/libraries/geoclue/2.0.nix
index 5ab9cb62443d..88d9837d5975 100644
--- a/pkgs/development/libraries/geoclue/2.0.nix
+++ b/pkgs/development/libraries/geoclue/2.0.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "geoclue-2.1.9";
+  name = "geoclue-2.1.10";
 
   src = fetchurl {
     url = "http://www.freedesktop.org/software/geoclue/releases/2.1/${name}.tar.xz";
-    sha256 = "0aq9fqlvvc8jqbshp3mbcc1j5hq4fzjy8hd1yxcl6xrd0jkfw5ml";
+    sha256 = "0s0ws2bx5g1cbjamxmm448r4n4crha2fwpzm8zbx6cq6qslygmzi";
   };
 
   buildInputs =
diff --git a/pkgs/development/libraries/gmp/4.3.2.nix b/pkgs/development/libraries/gmp/4.3.2.nix
index e9cfda032b17..aabb79d27a97 100644
--- a/pkgs/development/libraries/gmp/4.3.2.nix
+++ b/pkgs/development/libraries/gmp/4.3.2.nix
@@ -28,6 +28,7 @@ stdenv.mkDerivation rec {
   doCheck = false;
 
   meta = {
+    branch = "4";
     description = "GNU multiple precision arithmetic library";
 
     longDescription =
diff --git a/pkgs/development/libraries/gvfs/default.nix b/pkgs/development/libraries/gvfs/default.nix
index 0cd8e19cee92..739b0ad3136a 100644
--- a/pkgs/development/libraries/gvfs/default.nix
+++ b/pkgs/development/libraries/gvfs/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchurl, pkgconfig, intltool, libtool
 , glib, dbus, udev, udisks2, libgcrypt
 , libgphoto2, avahi, libarchive, fuse, libcdio
-, libxml2, libxslt, docbook_xsl, samba
+, libxml2, libxslt, docbook_xsl, samba, libmtp
 , gnomeSupport ? false, gnome,libgnome_keyring, gconf, makeWrapper }:
 
 let
@@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
   buildInputs =
     [ makeWrapper glib dbus.libs udev udisks2 libgcrypt
       libgphoto2 avahi libarchive fuse libcdio
-      libxml2 libxslt docbook_xsl samba
+      libxml2 libxslt docbook_xsl samba libmtp
       # ToDo: a ligther version of libsoup to have FTP/HTTP support?
     ] ++ stdenv.lib.optionals gnomeSupport (with gnome; [
       gtk libsoup libgnome_keyring gconf
diff --git a/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix b/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix
new file mode 100644
index 000000000000..5ff7b64d2ea4
--- /dev/null
+++ b/pkgs/development/libraries/haskell/cairo/0.12.5.3.nix
@@ -0,0 +1,22 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, gtk2hsBuildtools, libc, mtl, pkgconfig, utf8String
+, zlib
+}:
+
+cabal.mkDerivation (self: {
+  pname = "cairo";
+  version = "0.12.5.3";
+  sha256 = "1g5wn7dzz8cc7my09igr284j96d795jlnmy1q2hhlvssfhwbbvg7";
+  buildDepends = [ mtl utf8String ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ cairo libc pkgconfig zlib ];
+  pkgconfigDepends = [ cairo ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Cairo library";
+    license = self.stdenv.lib.licenses.bsd3;
+    platforms = self.ghc.meta.platforms;
+    hydraPlatforms = self.stdenv.lib.platforms.none;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/cairo/default.nix b/pkgs/development/libraries/haskell/cairo/0.13.0.4.nix
index 10eedda6f24d..10eedda6f24d 100644
--- a/pkgs/development/libraries/haskell/cairo/default.nix
+++ b/pkgs/development/libraries/haskell/cairo/0.13.0.4.nix
diff --git a/pkgs/development/libraries/haskell/ghc-mod/default.nix b/pkgs/development/libraries/haskell/ghc-mod/default.nix
index 24f3e45b488f..93a3d895e366 100644
--- a/pkgs/development/libraries/haskell/ghc-mod/default.nix
+++ b/pkgs/development/libraries/haskell/ghc-mod/default.nix
@@ -9,8 +9,8 @@
 
 cabal.mkDerivation (self: {
   pname = "ghc-mod";
-  version = "5.2.0.0";
-  sha256 = "1zwdr3zlnc8d49d6jrvj2yrfnamp1120gffzd6vfxqgvapk71vfk";
+  version = "5.2.1.1";
+  sha256 = "09dg54970s4n54xxmalr5a2g4r5jnwccl9984shmmv0vsr3h5k26";
   isLibrary = true;
   isExecutable = true;
   buildDepends = [
diff --git a/pkgs/development/libraries/haskell/glib/0.12.5.4.nix b/pkgs/development/libraries/haskell/glib/0.12.5.4.nix
new file mode 100644
index 000000000000..c819af766c22
--- /dev/null
+++ b/pkgs/development/libraries/haskell/glib/0.12.5.4.nix
@@ -0,0 +1,21 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, glib, gtk2hsBuildtools, libc, pkgconfig, utf8String
+}:
+
+cabal.mkDerivation (self: {
+  pname = "glib";
+  version = "0.12.5.4";
+  sha256 = "1jbqfcsmsghq67lwnk6yifs34lxvh6xfbzxzfryalifb4zglccz6";
+  buildDepends = [ utf8String ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ glib ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./gtk2hs.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the GLIB library for Gtk2Hs";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/glib/default.nix b/pkgs/development/libraries/haskell/glib/0.13.0.5.nix
index 1229b7c8506e..1229b7c8506e 100644
--- a/pkgs/development/libraries/haskell/glib/default.nix
+++ b/pkgs/development/libraries/haskell/glib/0.13.0.5.nix
diff --git a/pkgs/development/libraries/haskell/glib/gtk2hs.patch b/pkgs/development/libraries/haskell/glib/gtk2hs.patch
new file mode 100644
index 000000000000..210cf2eb571a
--- /dev/null
+++ b/pkgs/development/libraries/haskell/glib/gtk2hs.patch
@@ -0,0 +1,15 @@
+Author: Hamish Mackenzie <Hamish.K.Mackenzie@googlemail.com>
+Date:   Mon Jul 7 21:28:50 2014 +1200
+
+    Fixes #1
+
+--- a/glib.cabal.orig	2014-11-03 14:52:40.000000000 -0600
++++ b/glib.cabal	2014-11-03 14:52:51.000000000 -0600
+@@ -36,6 +36,7 @@
+                         utf8-string >= 0.2 && < 0.4,
+                         containers
+         build-tools:    gtk2hsC2hs >= 0.13.8
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+         if flag(closure_signals)
+           cpp-options:  -DUSE_GCLOSURE_SIGNALS_IMPL
+           c-sources: System/Glib/hsgclosure.ccommit aa22754e04616c354557fc350f96a8f7f331e984
diff --git a/pkgs/development/libraries/haskell/graphviz/default.nix b/pkgs/development/libraries/haskell/graphviz/default.nix
index 7fb47cf0ab72..c50e0403bd68 100644
--- a/pkgs/development/libraries/haskell/graphviz/default.nix
+++ b/pkgs/development/libraries/haskell/graphviz/default.nix
@@ -16,6 +16,7 @@ cabal.mkDerivation (self: {
   ];
   testDepends = [ fgl filepath QuickCheck systemGraphviz text ];
   jailbreak = true;
+  doCheck = false;
   meta = {
     homepage = "http://projects.haskell.org/graphviz/";
     description = "Bindings to Graphviz for graph visualisation";
diff --git a/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix b/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix
new file mode 100644
index 000000000000..34c1480c8c34
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gtk/0.12.5.7.nix
@@ -0,0 +1,22 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, gio, glib, gtk, gtk2hsBuildtools, libc, mtl, pango
+, pkgconfig, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "gtk";
+  version = "0.12.5.7";
+  sha256 = "0hax4ixdz523753rc774c8g76bjlj56lsabyl5nwkpnppffpa73w";
+  buildDepends = [ cairo gio glib mtl pango text ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ glib gtk ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./gtk.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Gtk+ graphical user interface library";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/gtk/default.nix b/pkgs/development/libraries/haskell/gtk/0.13.0.3.nix
index e9a90659a95f..e9a90659a95f 100644
--- a/pkgs/development/libraries/haskell/gtk/default.nix
+++ b/pkgs/development/libraries/haskell/gtk/0.13.0.3.nix
diff --git a/pkgs/development/libraries/haskell/gtk/gtk.patch b/pkgs/development/libraries/haskell/gtk/gtk.patch
new file mode 100644
index 000000000000..242552950df1
--- /dev/null
+++ b/pkgs/development/libraries/haskell/gtk/gtk.patch
@@ -0,0 +1,10 @@
+--- a/gtk.cabal.orig	2014-11-03 15:13:42.000000000 -0600
++++ b/gtk.cabal	2014-11-03 15:14:05.000000000 -0600
+@@ -148,6 +148,7 @@
+ 
+         build-tools:    gtk2hsC2hs >= 0.13.8,
+                         gtk2hsHookGenerator, gtk2hsTypeGen
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+ 
+         exposed-modules:
+           Graphics.UI.Gtk
diff --git a/pkgs/development/libraries/haskell/hsc3-server/default.nix b/pkgs/development/libraries/haskell/hsc3-server/default.nix
new file mode 100644
index 000000000000..31f59ed87413
--- /dev/null
+++ b/pkgs/development/libraries/haskell/hsc3-server/default.nix
@@ -0,0 +1,30 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, bitset, dataDefault, failure, hashtables, hosc, hsc3
+, hsc3Process, liftedBase, ListZipper, monadControl, QuickCheck
+, random, resourcet, testFramework, testFrameworkQuickcheck2
+, transformers, transformersBase
+}:
+
+cabal.mkDerivation (self: {
+  pname = "hsc3-server";
+  version = "0.9.2";
+  sha256 = "1lq4y57d555jb0yi10n4j69h4whwsm5h2k6j4r7f9avds5ahh6s2";
+  isLibrary = true;
+  isExecutable = true;
+  buildDepends = [
+    bitset dataDefault failure hashtables hosc hsc3 hsc3Process
+    liftedBase ListZipper monadControl random resourcet transformers
+    transformersBase
+  ];
+  testDepends = [
+    failure QuickCheck random testFramework testFrameworkQuickcheck2
+    transformers
+  ];
+  meta = {
+    homepage = "https://github.com/kaoskorobase/hsc3-server";
+    description = "SuperCollider server resource management and synchronization";
+    license = "GPL";
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/linear/default.nix b/pkgs/development/libraries/haskell/linear/default.nix
index ac172679c074..9f1883d3ef8a 100644
--- a/pkgs/development/libraries/haskell/linear/default.nix
+++ b/pkgs/development/libraries/haskell/linear/default.nix
@@ -8,8 +8,8 @@
 
 cabal.mkDerivation (self: {
   pname = "linear";
-  version = "1.11.2";
-  sha256 = "11xinkqg4p6q287qiljq7p9lq0s58hznw2as29ppb5n3q5pab3ib";
+  version = "1.11.3";
+  sha256 = "12a3qfkyb4h14630k312gpb5j7dxr38bqk5y2lnnafka8hcc6w5n";
   buildDepends = [
     adjunctions binary distributive hashable lens reflection
     semigroupoids semigroups tagged transformers unorderedContainers
diff --git a/pkgs/development/libraries/haskell/pango/0.12.5.3.nix b/pkgs/development/libraries/haskell/pango/0.12.5.3.nix
new file mode 100644
index 000000000000..e95c590e3545
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pango/0.12.5.3.nix
@@ -0,0 +1,22 @@
+# This file was auto-generated by cabal2nix. Please do NOT edit manually!
+
+{ cabal, cairo, glib, gtk2hsBuildtools, libc, mtl, pango, pkgconfig
+, text
+}:
+
+cabal.mkDerivation (self: {
+  pname = "pango";
+  version = "0.12.5.3";
+  sha256 = "1n64ppz0jqrbzvimbz4avwnx3z0n5z2gbmbmca0hw9wqf9j6y79a";
+  buildDepends = [ cairo glib mtl text ];
+  buildTools = [ gtk2hsBuildtools ];
+  extraLibraries = [ libc pkgconfig ];
+  pkgconfigDepends = [ cairo pango ];
+  patches = self.stdenv.lib.optionals self.stdenv.isDarwin [ ./pango.patch ];
+  meta = {
+    homepage = "http://projects.haskell.org/gtk2hs/";
+    description = "Binding to the Pango text rendering engine";
+    license = self.stdenv.lib.licenses.lgpl21;
+    platforms = self.ghc.meta.platforms;
+  };
+})
diff --git a/pkgs/development/libraries/haskell/pango/default.nix b/pkgs/development/libraries/haskell/pango/0.13.0.3.nix
index c3ce339f7d55..c3ce339f7d55 100644
--- a/pkgs/development/libraries/haskell/pango/default.nix
+++ b/pkgs/development/libraries/haskell/pango/0.13.0.3.nix
diff --git a/pkgs/development/libraries/haskell/pango/pango.patch b/pkgs/development/libraries/haskell/pango/pango.patch
new file mode 100644
index 000000000000..af338cbe32ce
--- /dev/null
+++ b/pkgs/development/libraries/haskell/pango/pango.patch
@@ -0,0 +1,10 @@
+--- a/pango.cabal.orig	2014-11-03 15:11:35.000000000 -0600
++++ b/pango.cabal	2014-11-03 15:11:57.000000000 -0600
+@@ -52,6 +52,7 @@
+           build-depends:  base < 4
+ 
+         build-tools:    gtk2hsC2hs >= 0.13.8, gtk2hsTypeGen
++        cpp-options:    -U__BLOCKS__ -D__attribute__(A)=
+ 
+         exposed-modules: Graphics.Rendering.Pango
+                          Graphics.Rendering.Pango.Font
diff --git a/pkgs/development/libraries/haskell/profunctors/default.nix b/pkgs/development/libraries/haskell/profunctors/default.nix
index 00d339fa44e8..b1336cd59daf 100644
--- a/pkgs/development/libraries/haskell/profunctors/default.nix
+++ b/pkgs/development/libraries/haskell/profunctors/default.nix
@@ -5,8 +5,8 @@
 
 cabal.mkDerivation (self: {
   pname = "profunctors";
-  version = "4.2.0.1";
-  sha256 = "00cfria3zjijx9nm533a25x240c7q0sn9vna6m4y4rz1f7l2gnqc";
+  version = "4.3.2";
+  sha256 = "06dv9bjz2hsm32kzfqqm6z54197dfjm3wycnbbgl9pib711w484v";
   buildDepends = [
     comonad distributive semigroupoids tagged transformers
   ];
diff --git a/pkgs/development/libraries/haskell/sdl2/default.nix b/pkgs/development/libraries/haskell/sdl2/default.nix
index d433fb59b839..3e6a66685856 100644
--- a/pkgs/development/libraries/haskell/sdl2/default.nix
+++ b/pkgs/development/libraries/haskell/sdl2/default.nix
@@ -4,8 +4,8 @@
 
 cabal.mkDerivation (self: {
   pname = "sdl2";
-  version = "1.1.3";
-  sha256 = "111kbairf50j8kkndcc54i0gsfaffnyla7zw49gbqlqs4kgxj6b5";
+  version = "1.2.0";
+  sha256 = "19q7x74b9ismxmlsblqvfy4w91bspl9n1fjccz8w1qylyilr6ca2";
   extraLibraries = [ SDL2 ];
   pkgconfigDepends = [ SDL2 ];
   meta = {
diff --git a/pkgs/development/libraries/imlib2/default.nix b/pkgs/development/libraries/imlib2/default.nix
index 5b19323f9434..53f978551cdd 100644
--- a/pkgs/development/libraries/imlib2/default.nix
+++ b/pkgs/development/libraries/imlib2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, x11, libjpeg, libtiff, libungif, libpng, bzip2, pkgconfig }:
+{ stdenv, fetchurl, x11, libjpeg, libtiff, giflib, libpng, bzip2, pkgconfig }:
 
 stdenv.mkDerivation rec {
   name = "imlib2-1.4.6";
@@ -8,10 +8,14 @@ stdenv.mkDerivation rec {
     sha256 = "0x1j0ylpclkp8cfpwfpkjywqz124bqskyxbw8pvwzkv2gmrbwldg";
   };
 
-  buildInputs = [ x11 libjpeg libtiff libungif libpng bzip2 ];
+  buildInputs = [ x11 libjpeg libtiff giflib libpng bzip2 ];
 
   nativeBuildInputs = [ pkgconfig ];
 
+  # From
+  # https://github.com/PhantomX/slackbuilds/blob/master/imlib2/patches/imlib2-giflib51.patch
+  patches = [ ./giflib51.patch ];
+
   preConfigure = ''
     substituteInPlace imlib2-config.in \
       --replace "@my_libs@" ""
diff --git a/pkgs/development/libraries/imlib2/giflib51.patch b/pkgs/development/libraries/imlib2/giflib51.patch
new file mode 100644
index 000000000000..97eaeb0b96e6
--- /dev/null
+++ b/pkgs/development/libraries/imlib2/giflib51.patch
@@ -0,0 +1,64 @@
+diff -ruN imlib2-1.4.6.orig/src/modules/loaders/loader_gif.c imlib2-1.4.6/src/modules/loaders/loader_gif.c
+--- imlib2-1.4.6.orig/src/modules/loaders/loader_gif.c	2013-12-21 10:16:10.000000000 +0000
++++ imlib2-1.4.6/src/modules/loaders/loader_gif.c	2014-05-27 09:52:35.857291512 +0000
+@@ -36,7 +36,7 @@
+ #endif
+    if (fd < 0)
+       return 0;
+-   gif = DGifOpenFileHandle(fd);
++   gif = DGifOpenFileHandle(fd, NULL);
+    if (!gif)
+      {
+         close(fd);
+@@ -60,13 +60,13 @@
+              h = gif->Image.Height;
+              if (!IMAGE_DIMENSIONS_OK(w, h))
+                {
+-                  DGifCloseFile(gif);
++                  DGifCloseFile(gif, NULL);
+                   return 0;
+                }
+              rows = malloc(h * sizeof(GifRowType *));
+              if (!rows)
+                {
+-                  DGifCloseFile(gif);
++                  DGifCloseFile(gif, NULL);
+                   return 0;
+                }
+              for (i = 0; i < h; i++)
+@@ -78,7 +78,7 @@
+                   rows[i] = malloc(w * sizeof(GifPixelType));
+                   if (!rows[i])
+                     {
+-                       DGifCloseFile(gif);
++                       DGifCloseFile(gif, NULL);
+                        for (i = 0; i < h; i++)
+                          {
+                             if (rows[i])
+@@ -150,7 +150,7 @@
+         im->data = (DATA32 *) malloc(sizeof(DATA32) * w * h);
+         if (!im->data)
+           {
+-             DGifCloseFile(gif);
++             DGifCloseFile(gif, NULL);
+              free(rows);
+              return 0;
+           }
+@@ -181,7 +181,7 @@
+                        last_per = (int)per;
+                        if (!(progress(im, (int)per, 0, last_y, w, i)))
+                          {
+-                            DGifCloseFile(gif);
++                            DGifCloseFile(gif, NULL);
+                             for (i = 0; i < h; i++)
+                               {
+                                  free(rows[i]);
+@@ -198,7 +198,7 @@
+      {
+         progress(im, 100, 0, last_y, w, h);
+      }
+-   DGifCloseFile(gif);
++   DGifCloseFile(gif, NULL);
+    for (i = 0; i < h; i++)
+      {
+         free(rows[i]);
\ No newline at end of file
diff --git a/pkgs/development/libraries/libcaca/default.nix b/pkgs/development/libraries/libcaca/default.nix
index f183d9c3cd06..8e68e10d940f 100644
--- a/pkgs/development/libraries/libcaca/default.nix
+++ b/pkgs/development/libraries/libcaca/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, ncurses}:
 
 stdenv.mkDerivation rec {
-  name = "libcaca-0.99.beta18";
+  name = "libcaca-0.99.beta19";
   
   src = fetchurl {
     url = "http://caca.zoy.org/files/libcaca/${name}.tar.gz";
-    sha256 = "189kdh7zi88gxb3w33rh0p5l0yhn7s1c2xjgrpf24q2a7xihdskp";
+    sha256 = "1x3j6yfyxl52adgnabycr0n38j9hx2j74la0hz0n8cnh9ry4d2qj";
   };
   
   configureFlags = "--disable-x11 --disable-imlib2 --disable-doc";
diff --git a/pkgs/development/libraries/libcec/default.nix b/pkgs/development/libraries/libcec/default.nix
index 6f19eb502d3a..51c23451fec8 100644
--- a/pkgs/development/libraries/libcec/default.nix
+++ b/pkgs/development/libraries/libcec/default.nix
@@ -12,11 +12,17 @@ stdenv.mkDerivation {
 
   buildInputs = [ autoreconfHook pkgconfig udev ];
 
-  meta = {
+  # Fix dlopen path
+  patchPhase = ''
+    substituteInPlace include/cecloader.h --replace "libcec.so" "$out/lib/libcec.so"
+  '';
+
+  meta = with stdenv.lib; {
     description = "USB CEC adapter communication library";
     homepage = "http://libcec.pulse-eight.com";
     repositories.git = "https://github.com/Pulse-Eight/libcec.git";
     license = "GPLv2+";
-    platforms = stdenv.lib.platforms.linux;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.titanous ];
   };
 }
diff --git a/pkgs/development/libraries/libfakekey/default.nix b/pkgs/development/libraries/libfakekey/default.nix
new file mode 100644
index 000000000000..4e74762f3f9d
--- /dev/null
+++ b/pkgs/development/libraries/libfakekey/default.nix
@@ -0,0 +1,21 @@
+{ stdenv, fetchurl, libX11, libXi, libXtst, pkgconfig, xextproto }:
+
+stdenv.mkDerivation rec {
+  name = "libfakekey-${version}";
+  version = "0.1";
+
+  src = fetchurl {
+    url = "http://downloads.yoctoproject.org/releases/matchbox/libfakekey/0.1/${name}.tar.gz";
+    sha256 = "10msplyn535hmzbmbdnx4zc20hkaw6d81if5lzxs82k8sq2mkx9k";
+  };
+
+  buildInputs = [ libX11 libXi libXtst pkgconfig xextproto ];
+
+  meta = with stdenv.lib; {
+    description = "X virtual keyboard library";
+    homepage = https://www.yoctoproject.org/tools-resources/projects/matchbox;
+    license = licenses.gpl2;
+    maintainers = [ maintainers.goibhniu ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/libmwaw/default.nix b/pkgs/development/libraries/libmwaw/default.nix
index 297d0a2f2ee6..7cb49dc3524b 100644
--- a/pkgs/development/libraries/libmwaw/default.nix
+++ b/pkgs/development/libraries/libmwaw/default.nix
@@ -3,10 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="libmwaw";
-    version="0.3.2";
+    version="0.3.3";
     name="${baseName}-${version}";
-    url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-${version}/libmwaw-${version}.tar.bz2";
-    sha256="0rzp2bbwyxdq1i9b2y5jz5b2ic7466l8ifgmz7lk8bsmqxbb0a0d";
+    hash="0dqwrswqmdhbj7gxsivvnwnsly181x27a5zq9fpizk82cnx2s8ks";
+    url="mirror://sourceforge/project/libmwaw/libmwaw/libmwaw-0.3.3/libmwaw-0.3.3.tar.xz";
+    sha256="0dqwrswqmdhbj7gxsivvnwnsly181x27a5zq9fpizk82cnx2s8ks";
   };
   buildInputs = [
     boost pkgconfig cppunit zlib libwpg libwpd librevenge
diff --git a/pkgs/development/libraries/libotr/default.nix b/pkgs/development/libraries/libotr/default.nix
index 7b8f40d1886a..aeae2a70d6c3 100644
--- a/pkgs/development/libraries/libotr/default.nix
+++ b/pkgs/development/libraries/libotr/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libgcrypt, autoreconfHook }:
 
 stdenv.mkDerivation rec {
-  name = "libotr-4.0.0";
+  name = "libotr-4.1.0";
 
   src = fetchurl {
     url = "https://otr.cypherpunks.ca/${name}.tar.gz";
-    sha256 = "1d4k0b7v4d3scwm858cmqr9c6xgd6ppla1vk4x2yg64q82a1k49z";
+    sha256 = "0c6rkh58s6wqzcrpccwdik5qs91qj6dgd60a340d72gc80cqknsg";
   };
 
   buildInputs = [ autoreconfHook ];
diff --git a/pkgs/development/libraries/libre/default.nix b/pkgs/development/libraries/libre/default.nix
index c67df46e89c0..25b4f6617bea 100644
--- a/pkgs/development/libraries/libre/default.nix
+++ b/pkgs/development/libraries/libre/default.nix
@@ -1,10 +1,10 @@
 {stdenv, fetchurl, zlib, openssl}:
 stdenv.mkDerivation rec {
-  version = "0.4.9";
+  version = "0.4.10";
   name = "libre-${version}";
   src=fetchurl {
     url = "http://www.creytiv.com/pub/re-${version}.tar.gz";
-    sha256 = "1i98z9qw3jpkaq419189vr8h3qcxqlz40dls77rbn4c0agc69703";
+    sha256 = "1ckp5rwdqlhr6n8nwzfd3jwxa6f6n4gxh9ny3c1wcrbzvpkkhkv3";
   };
   buildInputs = [zlib openssl];
   makeFlags = [
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix b/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix
new file mode 100644
index 000000000000..6298f2f0c0f3
--- /dev/null
+++ b/pkgs/development/libraries/libtorrent-rasterbar/0.16.nix
@@ -0,0 +1,6 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+  version = "0.16.17";
+  sha256 = "1w5gcizd6jlvzwgy0307az856h0cly685yf275p1v6bdcafd58b7";
+})
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
index b7abd8bcab77..e1f1fc179d63 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/default.nix
@@ -1,28 +1,6 @@
-{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib, python, libiconvOrNull, geoip }:
+{ callPackage, ... } @ args:
 
-stdenv.mkDerivation rec {
-  name = "libtorrent-rasterbar-1.0.2";
-  
-  src = fetchurl {
-    url = "mirror://sourceforge/libtorrent/${name}.tar.gz";
-    sha256 = "1ph4cb6nrk2hiy89j3kz1wj16ph0b9yixrf4f4935rnzhha8x31w";
-  };
-
-  buildInputs = [ boost boost.lib pkgconfig openssl zlib python libiconvOrNull geoip ];
-
-  configureFlags = [ 
-    "--with-boost=${boost}/include/boost" 
-    "--with-boost-libdir=${boost.lib}/lib" 
-    "--enable-python-binding"
-    "--with-libgeoip=system"
-    "--with-libiconv=yes"
-    "--with-boost=${boost.lib}"
- ];
-  
-  meta = with stdenv.lib; {
-    homepage = http://www.rasterbar.com/products/libtorrent/;
-    description = "A C++ BitTorrent implementation focusing on efficiency and scalability";
-    license = licenses.bsd3;
-    maintainers = [ maintainers.phreedom ];
-  };
-}
+callPackage ./generic.nix (args // {
+  version = "1.0.2";
+  sha256 = "1ph4cb6nrk2hiy89j3kz1wj16ph0b9yixrf4f4935rnzhha8x31w";
+})
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/generic.nix b/pkgs/development/libraries/libtorrent-rasterbar/generic.nix
new file mode 100644
index 000000000000..f47ff1081bc8
--- /dev/null
+++ b/pkgs/development/libraries/libtorrent-rasterbar/generic.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl, boost, openssl, pkgconfig, zlib, python, libiconvOrNull, geoip
+# Version specific options
+, version, sha256
+, ... }:
+
+stdenv.mkDerivation rec {
+  name = "libtorrent-rasterbar-${version}";
+  
+  src = fetchurl {
+    url = "mirror://sourceforge/libtorrent/${name}.tar.gz";
+    inherit sha256;
+  };
+
+  buildInputs = [ boost pkgconfig openssl zlib python libiconvOrNull geoip ];
+
+  configureFlags = [ 
+    "--enable-python-binding"
+    "--with-libgeoip=system"
+    "--with-libiconv=yes"
+    "--with-boost=${boost.dev}"
+    "--with-boost-libdir=${boost.lib}/lib"
+  ] ++ stdenv.lib.optional (libiconvOrNull != null) "--with-libiconv=yes";
+  
+  meta = with stdenv.lib; {
+    homepage = http://www.rasterbar.com/products/libtorrent/;
+    description = "A C++ BitTorrent implementation focusing on efficiency and scalability";
+    license = licenses.bsd3;
+    maintainers = [ maintainers.phreedom ];
+  };
+}
diff --git a/pkgs/development/libraries/mdds/default.nix b/pkgs/development/libraries/mdds/default.nix
index 296744e1d56c..25e1eb0c7269 100644
--- a/pkgs/development/libraries/mdds/default.nix
+++ b/pkgs/development/libraries/mdds/default.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  version = "0.10.3";
+  version = "0.11.1";
   name = "mdds-${version}";
 
   src = fetchurl {
     url = "http://kohei.us/files/mdds/src/mdds_${version}.tar.bz2";
-    sha256 = "1hp0472mcsgzrz1v60jpywxrrqmpb8bchfsi7ydmp6vypqnr646v";
+    sha256 = "1xr74ss8vr67nmwxls4a54hgljwrc8fs485ablh0bxykf6dyr0j1";
   };
 
   postInstall = ''
diff --git a/pkgs/development/libraries/ogre/default.nix b/pkgs/development/libraries/ogre/default.nix
index 527bb25dce18..93803b61fb14 100644
--- a/pkgs/development/libraries/ogre/default.nix
+++ b/pkgs/development/libraries/ogre/default.nix
@@ -1,4 +1,4 @@
-{ fetchurl, stdenv
+{ fetchhg, stdenv
 , cmake, mesa
 , freetype, freeimage, zziplib, randrproto, libXrandr
 , libXaw, freeglut, libXt, libpng, boost, ois
@@ -8,11 +8,12 @@
 , nvidia_cg_toolkit }:
 
 stdenv.mkDerivation {
-  name = "ogre-1.8.1";
+  name = "ogre-1.9.0";
 
-  src = fetchurl {
-    url = "mirror://sourceforge/ogre/1.8.1/ogre_src_v1-8-1.tar.bz2";
-    sha256 = "1avadx87sdfdk8165wlffnd5dzks694dcdnkg3ijap966k4qm46s";
+  src = fetchhg {
+    url = "https://bitbucket.org/sinbad/ogre/src/";
+    rev = "v1-9-0";
+    sha256 = "06hnf4c2kpycm3mglwdyywvj931k8ym808c15xighpyd8h9j4xdi";
   };
 
   cmakeFlags = [ "-DOGRE_INSTALL_SAMPLES=yes" ]
diff --git a/pkgs/development/libraries/opencsg/default.nix b/pkgs/development/libraries/opencsg/default.nix
index 4df3abcdd71a..89176c10843e 100644
--- a/pkgs/development/libraries/opencsg/default.nix
+++ b/pkgs/development/libraries/opencsg/default.nix
@@ -2,11 +2,11 @@
   }:
 
 stdenv.mkDerivation rec {
-  version = "1.3.2";
+  version = "1.4.0";
   name = "opencsg-${version}";
   src = fetchurl {
     url = "http://www.opencsg.org/OpenCSG-${version}.tar.gz";
-    sha256 = "09drnck27py8qg1l6gqaia85a9skqn0mz0nybjrkq4gpk0lwk467";
+    sha256 = "13c73jxadm27h7spdh3qj1v6rnn81v4xwqlv5a6k72pv9kjnpd7c";
   };
 
   buildInputs = [mesa freeglut glew libXmu libXext libX11];
diff --git a/pkgs/development/libraries/wxGTK-2.8/default.nix b/pkgs/development/libraries/wxGTK-2.8/default.nix
index 62d2de0238f1..d7ca92f70d9b 100644
--- a/pkgs/development/libraries/wxGTK-2.8/default.nix
+++ b/pkgs/development/libraries/wxGTK-2.8/default.nix
@@ -57,4 +57,8 @@ stdenv.mkDerivation rec {
   passthru = {inherit gtk compat24 compat26 unicode;};
 
   enableParallelBuilding = true;
+  
+  meta = {
+    platforms = stdenv.lib.platforms.all;
+  };
 }
diff --git a/pkgs/development/libraries/wxGTK-2.9/default.nix b/pkgs/development/libraries/wxGTK-2.9/default.nix
index f61c7eafd732..47760cdb2884 100644
--- a/pkgs/development/libraries/wxGTK-2.9/default.nix
+++ b/pkgs/development/libraries/wxGTK-2.9/default.nix
@@ -55,4 +55,8 @@ stdenv.mkDerivation {
   passthru = {inherit gtk compat24 compat26 unicode;};
 
   enableParallelBuilding = true;
+  
+  meta = {
+    platforms = stdenv.lib.platforms.all;
+  };
 }
diff --git a/pkgs/development/libraries/wxGTK-3.0/default.nix b/pkgs/development/libraries/wxGTK-3.0/default.nix
index 9e9bf9c83dd3..93f771e8c8ff 100644
--- a/pkgs/development/libraries/wxGTK-3.0/default.nix
+++ b/pkgs/development/libraries/wxGTK-3.0/default.nix
@@ -55,4 +55,8 @@ stdenv.mkDerivation {
   passthru = {inherit gtk compat24 compat26 unicode;};
 
   enableParallelBuilding = true;
+  
+  meta = {
+    platforms = stdenv.lib.platforms.all;
+  };
 }
diff --git a/pkgs/development/libraries/x265/default.nix b/pkgs/development/libraries/x265/default.nix
new file mode 100644
index 000000000000..d7e66a4f618b
--- /dev/null
+++ b/pkgs/development/libraries/x265/default.nix
@@ -0,0 +1,7 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // {
+  version = "1.4";
+  rev = "5e604833c5aa605d0b6efbe5234492b5e7d8ac61";
+  sha256 = "1aqksqi1qmjpva5cal6j7h0hzk298wk3nhqv73wnyqdchq2sa8v5";
+})
\ No newline at end of file
diff --git a/pkgs/development/libraries/x265/generic.nix b/pkgs/development/libraries/x265/generic.nix
new file mode 100644
index 000000000000..58a39dbbe384
--- /dev/null
+++ b/pkgs/development/libraries/x265/generic.nix
@@ -0,0 +1,58 @@
+{ stdenv, cmake, fetchhg, mercurial, yasm
+, rev , sha256, version
+, highBitDepth ? false
+, debuggingSupport ? false
+, enableCli ? true
+, testSupport ? false
+, ...
+}:
+
+stdenv.mkDerivation rec {
+  name = "x265-${version}";
+
+  src = fetchhg {
+    url = "https://bitbucket.org/multicoreware/x265/src";
+    inherit rev;
+    inherit sha256;
+  };
+
+  patchPhase = ''
+    sed -i 's/unknown/${version}/g' source/cmake/version.cmake
+  '';
+
+  cmakeFlags = with stdenv.lib; 
+    ''
+      ${if debuggingSupport
+        then "-DCHECKED_BUILD=ON"
+        else "-DCHECKED_BUILD=OFF"
+      }
+      -DSTATIC_LINK_CRT=OFF
+      ${if (stdenv.system == "x86_64-linux" && highBitDepth)
+        then "-DHIGH_BIT_DEPTH=ON"
+        else "-DHIGH_BIT_DEPTH=OFF"
+      }
+      -DWARNINGS_AS_ERRORS=OFF
+      -DENABLE_PPA=OFF
+      -DENABLE_SHARED=ON
+      ${if enableCli
+        then "-DENABLE_CLI=ON"
+        else "-DENABLE_CLI=OFF"
+      }
+      ${if testSupport
+        then "-DENABLE_TESTS=ON"
+        else "-DENABLE_TESTS=OFF"
+      }
+    '';
+
+  preConfigure = "cd source";
+
+  buildInputs = [ cmake yasm ];
+
+  meta = with stdenv.lib; {
+    homepage = "http://x265.org";
+    description = "Library for encoding h.265/HEVC video streams";
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ codyopel ];
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/libraries/x265/hg.nix b/pkgs/development/libraries/x265/hg.nix
new file mode 100644
index 000000000000..db15e223047e
--- /dev/null
+++ b/pkgs/development/libraries/x265/hg.nix
@@ -0,0 +1,7 @@
+{ callPackage, ... } @ args:
+
+callPackage ./generic.nix (args // rec {
+  version = "hg-${rev}";
+  rev = "eebb372eec893efc50e66806fcc19b1c1bd89683";
+  sha256 = "03dpbjqcmbmyid45560byabybfzy2bvic0gqa6k6hxci6rvmynpi";
+})
\ No newline at end of file
diff --git a/pkgs/development/lisp-modules/asdf/default.nix b/pkgs/development/lisp-modules/asdf/default.nix
index 100577b3a7ff..33cd07b48076 100644
--- a/pkgs/development/lisp-modules/asdf/default.nix
+++ b/pkgs/development/lisp-modules/asdf/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="asdf";
-    version="3.1.3";
+    version="3.1.4";
     name="${baseName}-${version}";
-    hash="11jgbl2ys98i7lir0z76g0msm89zmz1b91gwkdz0gnxr6gavj6cn";
-    url="http://common-lisp.net/project/asdf/archives/asdf-3.1.3.tar.gz";
-    sha256="11jgbl2ys98i7lir0z76g0msm89zmz1b91gwkdz0gnxr6gavj6cn";
+    hash="0hyc2g22khcmvxmlcaq0xbxqhq59spgc2nc1s0gz1r9mcgrzm2xw";
+    url="http://common-lisp.net/project/asdf/archives/asdf-3.1.4.tar.gz";
+    sha256="0hyc2g22khcmvxmlcaq0xbxqhq59spgc2nc1s0gz1r9mcgrzm2xw";
   };
   buildInputs = [
     texinfo texLive
@@ -19,6 +19,7 @@ stdenv.mkDerivation {
   src = fetchurl {
     inherit (s) url sha256;
   };
+  sourceRoot=".";
   buildPhase = ''
     make build/asdf.lisp
     make -C doc asdf.info asdf.html
diff --git a/pkgs/development/lisp-modules/lisp-packages.nix b/pkgs/development/lisp-modules/lisp-packages.nix
index d9359da0a6a9..0d9383a465fd 100644
--- a/pkgs/development/lisp-modules/lisp-packages.nix
+++ b/pkgs/development/lisp-modules/lisp-packages.nix
@@ -19,13 +19,14 @@ let lispPackages = rec {
 
   clx = buildLispPackage rec {
     baseName = "clx";
-    version = "2013-09";
+    version = "2014-11-03";
     description = "X11 bindings for Common Lisp";
     deps = [];
     src = pkgs.fetchgit {
       url = "https://github.com/sharplispers/clx.git";
-      rev = "e2b762ac93d78d6eeca4f36698c8dfd1537ce998";
-      sha256 = "0jcrmlaayz7m8ixgriq7id3pdklyk785qvpcxdpcp4aqnfiiqhij";
+      rev = "c2910c5d707a97e87b354de3f2fbe2ae038e9bc8";
+      sha256 = "1jk0hfk6rb9cf58xhqq7vaisj63k3x9jpj06wqpa32y5ppjcyijw";
+      name = "clx-git-checkout-${version}";
     };
   };
 
diff --git a/pkgs/development/ocaml-modules/eliom/default.nix b/pkgs/development/ocaml-modules/eliom/default.nix
index 8a7045e263ad..9700a1d8cc5e 100644
--- a/pkgs/development/ocaml-modules/eliom/default.nix
+++ b/pkgs/development/ocaml-modules/eliom/default.nix
@@ -1,30 +1,34 @@
 { stdenv, fetchurl, ocaml, findlib, which, ocsigen_server, ocsigen_deriving,
   js_of_ocaml, ocaml_react, ocaml_lwt, calendar, cryptokit, tyxml,
-  ocaml_ipaddr, ocamlnet, ocaml_ssl, ocaml_pcre, ocaml_optcomp}:
+  ocaml_ipaddr, ocamlnet, ocaml_ssl, ocaml_pcre, ocaml_optcomp,
+  reactivedata, opam}:
 
-stdenv.mkDerivation
+stdenv.mkDerivation rec
 {
-  name = "eliom-4.0.0";
+  pname = "eliom";
+  version = "4.1.0";
+  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = https://github.com/ocsigen/eliom/archive/4.0.0.tar.gz;
-    sha256 = "1xf2l6lvngxzwaw6lvr6sgi48rz0wxg65q9lz4jzqjarkp0sx206";
+    url = https://github.com/ocsigen/eliom/archive/4.1.0.tar.gz;
+    sha256 = "10v7mrq3zsbxdlg8k8xif777mbvcdpabvnd1g7p2yqivr7f1qm24";
   };
 
   buildInputs = [ocaml which ocsigen_server findlib ocsigen_deriving
-                 js_of_ocaml ocaml_react ocaml_lwt calendar
-                 cryptokit tyxml ocaml_ipaddr ocamlnet ocaml_ssl
-                 ocaml_pcre ocaml_optcomp];
-
-  preConfigure =
-  ''chmod a+x configure
-    sed s/deriving-ocsigen/deriving/g -i configure
+                 js_of_ocaml ocaml_optcomp opam];
+
+  propagatedBuildInputs = [ ocaml_lwt reactivedata tyxml ocaml_ipaddr
+                            calendar cryptokit ocamlnet ocaml_react ocaml_ssl
+                            ocaml_pcre ];
+
+  installPhase =
+  let ocamlVersion = (builtins.parseDrvName (ocaml.name)).version;
+  in
+  ''opam-installer --script --prefix=$out ${pname}.install > install.sh
+    sh install.sh
+    ln -s $out/lib/${pname} $out/lib/ocaml/${ocamlVersion}/site-lib/
   '';
 
-  configureFlags = "--root $(out) --prefix /";
-
-  dontAddPrefix = true;  
-
   createFindlibDestdir = true;
 
   meta = {
diff --git a/pkgs/development/ocaml-modules/gg/default.nix b/pkgs/development/ocaml-modules/gg/default.nix
new file mode 100644
index 000000000000..a40d4ae79784
--- /dev/null
+++ b/pkgs/development/ocaml-modules/gg/default.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl, ocaml, findlib, opam }:
+
+let
+  inherit (stdenv.lib) getVersion versionAtLeast;
+
+  pname = "gg";
+  version = "0.9.0";
+  webpage = "http://erratique.ch/software/${pname}";
+in
+
+assert versionAtLeast (getVersion ocaml) "4.01.0";
+
+stdenv.mkDerivation rec {
+
+  name = "ocaml-${pname}-${version}";
+
+  src = fetchurl {
+    url = "${webpage}/releases/${pname}-${version}.tbz";
+    sha256 = "055pza6jbjjj7wgzf7pbn0ccxw76i8w5b2bcnaz8b9m4x6jaa6gh";
+  };
+
+  buildInputs = [ ocaml findlib opam ];
+
+  createFindlibDestdir = true;
+
+  unpackCmd = "tar xjf $src";
+
+  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
+
+  installPhase = ''
+    opam-installer --script --prefix=$out ${pname}.install | sh
+    ln -s $out/lib/${pname} $out/lib/ocaml/${getVersion ocaml}/site-lib/${pname}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Basic types for computer graphics in OCaml";
+    longDescription = ''
+      Gg is an OCaml module providing basic types for computer graphics. It
+      defines types and functions for floats, vectors, points, sizes,
+      matrices, quaternions, axis aligned boxes, colors, color spaces, and
+      raster data.
+    '';
+    homepage = "${webpage}";
+    platforms = ocaml.meta.platforms;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.jirkamarsik ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/lablgtk/default.nix b/pkgs/development/ocaml-modules/lablgtk/default.nix
index 19b0bf63ee39..4c1665540ec2 100644
--- a/pkgs/development/ocaml-modules/lablgtk/default.nix
+++ b/pkgs/development/ocaml-modules/lablgtk/default.nix
@@ -3,7 +3,7 @@
 let
   ocaml_version = (builtins.parseDrvName ocaml.name).version;
   pname = "lablgtk";
-  version = "2.18.2";
+  version = "2.18.3";
 in
 
 assert stdenv.lib.versionAtLeast ocaml_version "3.12";
@@ -11,8 +11,8 @@ assert stdenv.lib.versionAtLeast ocaml_version "3.12";
 stdenv.mkDerivation {
   name = "${pname}-${version}";
   src = fetchurl {
-    url = https://forge.ocamlcore.org/frs/download.php/1456/lablgtk-2.18.2.tar.gz;
-    sha256 = "0f9rs4av0v7p5k8hifcq4b49xx8jmmfch3sdk9pij8a8jfgwxvfy";
+    url = https://forge.ocamlcore.org/frs/download.php/1479/lablgtk-2.18.3.tar.gz;
+    sha256 = "1bybn3jafxf4cx25zvn8h2xj9agn1xjbn7j3ywxxqx6az7rfnnwp";
   };
 
   buildInputs = [ocaml findlib pkgconfig gtk libgnomecanvas libglade gtksourceview camlp4];
diff --git a/pkgs/development/ocaml-modules/lwt/default.nix b/pkgs/development/ocaml-modules/lwt/default.nix
index 061dbb398fe2..4254b78287c5 100644
--- a/pkgs/development/ocaml-modules/lwt/default.nix
+++ b/pkgs/development/ocaml-modules/lwt/default.nix
@@ -1,7 +1,9 @@
-{stdenv, fetchgit, which, cryptopp, ocaml, findlib, ocaml_react, ocaml_ssl, libev, pkgconfig, ncurses, ocaml_oasis, ocaml_text, glib}:
+{stdenv, fetchgit, which, cryptopp, ocaml, findlib, ocaml_react, ocaml_ssl, libev, pkgconfig, ncurses, ocaml_oasis, ocaml_text, glib, camlp4}:
 
 let
   version = "2.4.5";
+  inherit (stdenv.lib) optional getVersion versionAtLeast;
+  ocaml_version = getVersion ocaml;
 in
 
 stdenv.mkDerivation {
@@ -15,21 +17,22 @@ stdenv.mkDerivation {
     sha256 = "2bbf4f216dd62eeb765a89413f3b2b6d417a9c289ca49d595bb4d7a0545e343e";
   };
 
-  buildInputs = [ocaml_oasis pkgconfig which cryptopp ocaml findlib glib libev ncurses];
+  buildInputs = [ocaml_oasis pkgconfig which cryptopp ocaml findlib glib libev ncurses camlp4];
 
   propagatedBuildInputs = [ ocaml_react ocaml_ssl ocaml_text ];
 
-  configureFlags = [ "--enable-all" ];
+  configureFlags = [ "--enable-react" "--enable-glib" "--enable-ssl" "--enable-text" ]
+  ++ optional (versionAtLeast ocaml_version "4.0" && ! versionAtLeast ocaml_version "4.02") "--enable-toplevel";
 
   createFindlibDestdir = true;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://ocsigen.org/lwt;
     description = "Lightweight thread library for Objective Caml";
-    license = "LGPL";
+    license = licenses.lgpl21;
     platforms = ocaml.meta.platforms;
-    maintainers = [
-      stdenv.lib.maintainers.z77z stdenv.lib.maintainers.gal_bolle
+    maintainers = with maintainers; [
+      z77z vbgl gal_bolle
     ];
   };
 }
diff --git a/pkgs/development/ocaml-modules/ocsigen-server/default.nix b/pkgs/development/ocaml-modules/ocsigen-server/default.nix
index e33d40373796..d5c066ae2aa0 100644
--- a/pkgs/development/ocaml-modules/ocsigen-server/default.nix
+++ b/pkgs/development/ocaml-modules/ocsigen-server/default.nix
@@ -1,14 +1,18 @@
-{stdenv, fetchurl, ocaml, findlib, which, ocaml_react, ocaml_ssl, ocaml_lwt, ocamlnet, ocaml_pcre, cryptokit, tyxml, ocaml_ipaddr, zlib, libev, openssl, ocaml_sqlite3, tree}:
+{stdenv, fetchurl, ocaml, findlib, which, ocaml_react, ocaml_ssl,
+ocaml_lwt, ocamlnet, ocaml_pcre, cryptokit, tyxml, ocaml_ipaddr, zlib,
+libev, openssl, ocaml_sqlite3, tree, uutf}:
 
 stdenv.mkDerivation {
-  name = "ocsigenserver-2.4.0";
+  name = "ocsigenserver-2.5";
   
   src = fetchurl {
-    url = https://github.com/ocsigen/ocsigenserver/archive/2.4.0.tar.gz;
-    sha256 = "1fjj8g6ivyfsa0446w77rjihhbw0gh5pgx7brywql2shk999riby";
+    url = https://github.com/ocsigen/ocsigenserver/archive/2.5.tar.gz;
+    sha256 = "0ayzlzjwg199va4sclsldlcp0dnwdj45ahhg9ckb51m28c2pw46r";
   };
 
-  buildInputs = [ocaml which findlib ocaml_react ocaml_ssl ocaml_lwt ocamlnet ocaml_pcre cryptokit tyxml ocaml_ipaddr zlib libev openssl ocaml_sqlite3 tree];
+  buildInputs = [ocaml which findlib ocaml_react ocaml_ssl ocaml_lwt
+  ocamlnet ocaml_pcre cryptokit tyxml ocaml_ipaddr zlib libev openssl
+  ocaml_sqlite3 tree uutf];
 
   configureFlags = "--root $(out) --prefix /";
 
diff --git a/pkgs/development/ocaml-modules/otfm/default.nix b/pkgs/development/ocaml-modules/otfm/default.nix
new file mode 100644
index 000000000000..5a118c0bcd89
--- /dev/null
+++ b/pkgs/development/ocaml-modules/otfm/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchurl, ocaml, findlib, opam, uutf }:
+
+let
+  inherit (stdenv.lib) getVersion versionAtLeast;
+
+  pname = "otfm";
+  version = "0.2.0";
+  webpage = "http://erratique.ch/software/${pname}";
+in
+
+assert versionAtLeast (getVersion ocaml) "4.01.0";
+
+stdenv.mkDerivation rec {
+
+  name = "ocaml-${pname}-${version}";
+
+  src = fetchurl {
+    url = "${webpage}/releases/${pname}-${version}.tbz";
+    sha256 = "1wgi9plf98gd7x3b7fzjxds089sivsap97bl1bw2lj73nxwnyb9c";
+  };
+
+  buildInputs = [ ocaml findlib opam ];
+
+  propagatedBuildInputs = [ uutf ];
+
+  createFindlibDestdir = true;
+
+  unpackCmd = "tar xjf $src";
+
+  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
+
+  installPhase = ''
+    opam-installer --script --prefix=$out ${pname}.install | sh
+    ln -s $out/lib/${pname} $out/lib/ocaml/${getVersion ocaml}/site-lib/${pname}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "OpenType font decoder for OCaml";
+    longDescription = ''
+      Otfm is an in-memory decoder for the OpenType font data format. It
+      provides low-level access to font tables and functions to decode some
+      of them.
+    '';
+    homepage = "${webpage}";
+    platforms = ocaml.meta.platforms;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.jirkamarsik ];
+  };
+}
diff --git a/pkgs/development/ocaml-modules/tyxml/default.nix b/pkgs/development/ocaml-modules/tyxml/default.nix
index 648f0a9cd170..77cf0638255f 100644
--- a/pkgs/development/ocaml-modules/tyxml/default.nix
+++ b/pkgs/development/ocaml-modules/tyxml/default.nix
@@ -1,15 +1,17 @@
-{stdenv, fetchurl, ocaml, findlib, ocaml_oasis, camlp4}:
+{stdenv, fetchurl, ocaml, findlib, ocaml_oasis, camlp4, uutf}:
 
 stdenv.mkDerivation {
-  name = "tyxml-3.1.1";
+  name = "tyxml-3.3.0";
 
   src = fetchurl {
-    url = http://github.com/ocsigen/tyxml/archive/3.1.1.tar.gz;
-    sha256 = "1r8im382r68kn8qy0857nv3y7h42i6ajyclxzmigfai7v2xdd05z";
+    url = http://github.com/ocsigen/tyxml/archive/3.3.0.tar.gz;
+    sha256 = "0r1hj8qy91i48nd7wj0x2dqrgspqrry5awraxl4pl10vh0mn6pk7";
     };
 
   buildInputs = [ocaml findlib ocaml_oasis camlp4];
 
+  propagatedBuildInputs = [uutf];
+
   createFindlibDestdir = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix
new file mode 100644
index 000000000000..bfff4c68cef9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/vg/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchurl, ocaml, findlib, opam, gg, uutf, otfm, js_of_ocaml,
+  pdfBackend ? true, # depends on uutf and otfm
+  htmlcBackend ? true # depends on js_of_ocaml
+}:
+
+let
+  inherit (stdenv.lib) getVersion optionals versionAtLeast;
+
+  pname = "vg";
+  version = "0.8.1";
+  webpage = "http://erratique.ch/software/${pname}";
+in
+
+assert versionAtLeast (getVersion ocaml) "4.01.0";
+
+stdenv.mkDerivation rec {
+
+  name = "ocaml-${pname}-${version}";
+
+  src = fetchurl {
+    url = "${webpage}/releases/${pname}-${version}.tbz";
+    sha256 = "1cdcvsr5z8845ndilnrz7p4n6yn4gv2p91z2mgi4vrailcmn5vzd";
+  };
+
+  buildInputs = [ ocaml findlib opam ];
+
+  propagatedBuildInputs = [ gg ]
+                          ++ optionals pdfBackend [ uutf otfm ]
+                          ++ optionals htmlcBackend [ js_of_ocaml ];
+
+  createFindlibDestdir = true;
+
+  unpackCmd = "tar xjf $src";
+
+  buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true"
+               + (if pdfBackend then " uutf=true otfm=true"
+                                else " uutf=false otfm=false")
+               + (if htmlcBackend then " jsoo=true"
+                                  else " jsoo=false");
+
+  installPhase = ''
+    opam-installer --script --prefix=$out ${pname}.install | sh
+    ln -s $out/lib/${pname} $out/lib/ocaml/${getVersion ocaml}/site-lib/${pname}
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Declarative 2D vector graphics for OCaml";
+    longDescription = ''
+    Vg is an OCaml module for declarative 2D vector graphics. In Vg, images
+    are values that denote functions mapping points of the cartesian plane
+    to colors. The module provides combinators to define and compose these
+    values.
+
+    Renderers for PDF, SVG and the HTML canvas are distributed with the
+    module. An API allows to implement new renderers.
+    '';
+    homepage = "${webpage}";
+    platforms = ocaml.meta.platforms;
+    license = licenses.bsd3;
+    maintainers = [ maintainers.jirkamarsik ];
+  };
+}
diff --git a/pkgs/development/python-modules/wxPython/2.8.nix b/pkgs/development/python-modules/wxPython/2.8.nix
index 64dd59242c2d..a6fd0100f587 100644
--- a/pkgs/development/python-modules/wxPython/2.8.nix
+++ b/pkgs/development/python-modules/wxPython/2.8.nix
@@ -17,4 +17,8 @@ if isPyPy then throw "wxPython-${version} not supported for interpreter ${python
   buildInputs = [ pkgconfig wxGTK (wxGTK.gtk) pythonPackages.python pythonPackages.wrapPython ];
   
   passthru = { inherit wxGTK; };
+
+  meta = {
+    platforms = stdenv.lib.platforms.all;
+  };
 }
diff --git a/pkgs/development/python-modules/wxPython/3.0.nix b/pkgs/development/python-modules/wxPython/3.0.nix
index 4f89dbeb4105..4974daebb2bb 100644
--- a/pkgs/development/python-modules/wxPython/3.0.nix
+++ b/pkgs/development/python-modules/wxPython/3.0.nix
@@ -22,4 +22,8 @@ if isPyPy then throw "wxPython-${version} not supported for interpreter ${python
   inherit openglSupport;
 
   passthru = { inherit wxGTK openglSupport; };
-}
+  
+  meta = {
+    platforms = stdenv.lib.platforms.all;
+  };
+}
\ No newline at end of file
diff --git a/pkgs/development/r-modules/cran-packages.nix b/pkgs/development/r-modules/cran-packages.nix
index 19e4006bd0d9..c75f46f0dab7 100644
--- a/pkgs/development/r-modules/cran-packages.nix
+++ b/pkgs/development/r-modules/cran-packages.nix
@@ -4332,7 +4332,9 @@ let self = _self // overrides; _self = with self; {
   RcmdrPlugin_plotByGroup = derive { name="RcmdrPlugin.plotByGroup"; version="0.1-0"; sha256="10wc7lnihsrldsynq2s0syr1aqmvfnj9rhgwh1nkk7jlrwcgj0z6"; depends=[Rcmdr lattice]; };
   RcmdrPlugin_pointG = derive { name="RcmdrPlugin.pointG"; version="0.6.6"; sha256="0sc3akbpdys353va05b40g3rq8qihw0pmhvv0kckkhsgrbr8mc07"; depends=[Rcmdr RColorBrewer]; };
   RcmdrPlugin_qual = derive { name="RcmdrPlugin.qual"; version="2.2.6"; sha256="00wznh0k909cd9vwdj1ag3224xkqnwjsad1bfkgxbszsx0w6xvy9"; depends=[Rcmdr]; };
+  /* Broken; the build goes on indefinitely, complaining about some freaky symlink problem.
   RcmdrPlugin_ROC = derive { name="RcmdrPlugin.ROC"; version="1.0-16"; sha256="1pxv0izdkqjhvmbvln6n2lhr1mamfy4q20ld6dqkldxj9bivzckb"; depends=[Rcmdr pROC ROCR ResourceSelection PredictABEL]; };
+  */
   RcmdrPlugin_sampling = derive { name="RcmdrPlugin.sampling"; version="1.1"; sha256="0fx0s63wq0si1jydl9xyj9ny7iglg91zpvkyrnc05i5pan9l3xd9"; depends=[lpSolve sampling MASS Rcmdr]; };
   RcmdrPlugin_SCDA = derive { name="RcmdrPlugin.SCDA"; version="1.0"; sha256="0z43hhp798kga70xmiq4wzp5iad553rndn17g3va3dh6lz1k3y3h"; depends=[SCVA SCRT SCMA Rcmdr]; };
   RcmdrPlugin_seeg = derive { name="RcmdrPlugin.seeg"; version="1.0"; sha256="105c2rl3mrcv7r3iqa9d2zs6cys7vfpyydylkg2cggfqkghxgr95"; depends=[Rcmdr seeg sgeostat]; };
diff --git a/pkgs/development/tools/build-managers/leiningen/builder.sh b/pkgs/development/tools/build-managers/leiningen/builder.sh
index c28854ca0896..a4aaed8f12f3 100644
--- a/pkgs/development/tools/build-managers/leiningen/builder.sh
+++ b/pkgs/development/tools/build-managers/leiningen/builder.sh
@@ -8,7 +8,6 @@ out_bin=$out/bin/lein
 
 cp -v $src $out_bin
 cp -v $jarsrc $out/share/java
-cp -v $clojure/share/java/* $out/share/java/
 
 for p in $patches;
 do
diff --git a/pkgs/development/tools/build-managers/leiningen/default.nix b/pkgs/development/tools/build-managers/leiningen/default.nix
index 49e1dcb29c34..69db7da17bcf 100644
--- a/pkgs/development/tools/build-managers/leiningen/default.nix
+++ b/pkgs/development/tools/build-managers/leiningen/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchurl, makeWrapper
-, coreutils, findutils, jdk, rlwrap, clojure, gnupg }:
+, coreutils, findutils, jdk, rlwrap, gnupg }:
 
 stdenv.mkDerivation rec {
   pname = "leiningen";
@@ -18,13 +18,13 @@ stdenv.mkDerivation rec {
 
   patches = [ ./lein-fix-jar-path.patch ];
 
-  inherit rlwrap clojure gnupg findutils coreutils jdk;
+  inherit rlwrap gnupg findutils coreutils jdk;
 
   builder = ./builder.sh;
 
   buildInputs = [ makeWrapper ];
 
-  propagatedBuildInputs = [ jdk clojure ];
+  propagatedBuildInputs = [ jdk ];
 
   meta = {
     homepage = http://leiningen.org/;
diff --git a/pkgs/development/tools/build-managers/sbt/default.nix b/pkgs/development/tools/build-managers/sbt/default.nix
index 39937f7d378b..9b1e8b7c6fc3 100644
--- a/pkgs/development/tools/build-managers/sbt/default.nix
+++ b/pkgs/development/tools/build-managers/sbt/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "sbt-${version}";
-  version = "0.13.5";
+  version = "0.13.6";
 
   src = fetchurl {
     url = "http://repo.typesafe.com/typesafe/ivy-releases/org.scala-sbt/sbt-launch/${version}/sbt-launch.jar";
-    sha256 = "05zvb3j7xxswpz7fz2nwbl4dwfdf0cyx5xzjis5fyi2dbzmfdrmp";
+    sha256 = "928ddfdee8aa05c297e7252699b211748139bbb3b2d25c22e590c939352c3bff";
   };
 
   phases = [ "installPhase" ];
diff --git a/pkgs/development/tools/haskell/hscope/default.nix b/pkgs/development/tools/haskell/hscope/default.nix
index 529ad2ef47ec..a295cc4896ca 100644
--- a/pkgs/development/tools/haskell/hscope/default.nix
+++ b/pkgs/development/tools/haskell/hscope/default.nix
@@ -6,20 +6,18 @@
 
 cabal.mkDerivation (self: {
   pname = "hscope";
-  version = "0.4";
-  sha256 = "1jb2d61c1as6li54zw33jsyvfap214pqxpkr2m6lkzaizh8396hg";
+  version = "0.4.1";
+  sha256 = "1m5mp45pvf64pnpc3lsig382177vfc232bbm9g3a8q58jrwridy7";
   isLibrary = false;
   isExecutable = true;
   buildDepends = [
     cereal cpphs deepseq haskellSrcExts mtl pureCdb uniplate vector
   ];
   testDepends = [ mtl testSimple Unixutils ];
-  doCheck = false;
   meta = {
     homepage = "https://github.com/bosu/hscope";
     description = "cscope like browser for Haskell code";
     license = self.stdenv.lib.licenses.bsd3;
     platforms = self.ghc.meta.platforms;
-    broken = true;
   };
 })
diff --git a/pkgs/development/tools/haskell/threadscope/default.nix b/pkgs/development/tools/haskell/threadscope/default.nix
index 892faca8e8cd..a4961440a3ec 100644
--- a/pkgs/development/tools/haskell/threadscope/default.nix
+++ b/pkgs/development/tools/haskell/threadscope/default.nix
@@ -14,6 +14,7 @@ cabal.mkDerivation (self: {
     binary cairo deepseq filepath ghcEvents glib gtk mtl pango time
   ];
   configureFlags = "--ghc-options=-rtsopts";
+  patches = [ ./threadscope.patch ];
   meta = {
     homepage = "http://www.haskell.org/haskellwiki/ThreadScope";
     description = "A graphical tool for profiling parallel Haskell programs";
diff --git a/pkgs/development/tools/haskell/threadscope/threadscope.patch b/pkgs/development/tools/haskell/threadscope/threadscope.patch
new file mode 100644
index 000000000000..af504a11f26e
--- /dev/null
+++ b/pkgs/development/tools/haskell/threadscope/threadscope.patch
@@ -0,0 +1,14 @@
+--- a/threadscope.cabal.orig	2014-11-03 15:23:29.000000000 -0600
++++ b/threadscope.cabal	2014-11-03 15:24:01.000000000 -0600
+@@ -41,7 +41,10 @@
+ Executable threadscope
+   Main-is:           Main.hs
+   Build-Depends:     base >= 4.0 && < 5,
+-                     gtk >= 0.12, cairo, glib, pango,
++                     gtk >= 0.12 && < 0.13,
++                     cairo < 0.13,
++                     glib < 0.13,
++                     pango < 0.13,
+                      binary, array, mtl, filepath,
+                      ghc-events >= 0.4.2,
+                      containers >= 0.2 && < 0.6,
diff --git a/pkgs/development/tools/misc/automake/automake-1.11.x.nix b/pkgs/development/tools/misc/automake/automake-1.11.x.nix
index 2cd80eb4bac5..879c7e0e8709 100644
--- a/pkgs/development/tools/misc/automake/automake-1.11.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.11.x.nix
@@ -31,6 +31,7 @@ stdenv.mkDerivation rec {
   enableParallelBuilding = true;
 
   meta = {
+    branch = "1.11";
     homepage = http://www.gnu.org/software/automake/;
     description = "GNU standard-compliant makefile generator";
 
diff --git a/pkgs/development/tools/misc/automake/automake-1.12.x.nix b/pkgs/development/tools/misc/automake/automake-1.12.x.nix
index 6a93cdc78fdc..a875298486ff 100644
--- a/pkgs/development/tools/misc/automake/automake-1.12.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.12.x.nix
@@ -37,6 +37,7 @@ stdenv.mkDerivation rec {
   dontPatchShebangs = true;
 
   meta = {
+    branch = "1.12";
     homepage = http://www.gnu.org/software/automake/;
     description = "GNU standard-compliant makefile generator";
 
diff --git a/pkgs/development/tools/misc/automake/automake-1.13.x.nix b/pkgs/development/tools/misc/automake/automake-1.13.x.nix
index d4369787f1b6..a512cffa0075 100644
--- a/pkgs/development/tools/misc/automake/automake-1.13.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.13.x.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
   dontPatchShebangs = true;
 
   meta = {
+    branch = "1.13";
     homepage = "http://www.gnu.org/software/automake/";
     description = "GNU standard-compliant makefile generator";
     license = stdenv.lib.licenses.gpl2Plus;
diff --git a/pkgs/development/tools/misc/automake/automake-1.14.x.nix b/pkgs/development/tools/misc/automake/automake-1.14.x.nix
index 0c6ed42825a9..f95b7de2e17a 100644
--- a/pkgs/development/tools/misc/automake/automake-1.14.x.nix
+++ b/pkgs/development/tools/misc/automake/automake-1.14.x.nix
@@ -25,6 +25,7 @@ stdenv.mkDerivation rec {
   dontPatchShebangs = true;
 
   meta = {
+    branch = "1.14";
     homepage = "http://www.gnu.org/software/automake/";
     description = "GNU standard-compliant makefile generator";
     license = stdenv.lib.licenses.gpl2Plus;
diff --git a/pkgs/development/tools/misc/cgdb/default.nix b/pkgs/development/tools/misc/cgdb/default.nix
index 09c9325d4ff2..fa13b4d6ebb4 100644
--- a/pkgs/development/tools/misc/cgdb/default.nix
+++ b/pkgs/development/tools/misc/cgdb/default.nix
@@ -1,11 +1,12 @@
 { stdenv, fetchurl, ncurses, readline }:
 
 stdenv.mkDerivation rec {
-  name = "cgdb-0.6.6";
+  name = "cgdb-${version}";
+  version = "0.6.7";
 
   src = fetchurl {
-    url = "mirror://sourceforge/cgdb/${name}.tar.gz";
-    sha256 = "0iap84ikpk1h58wy14zzi1kwszv1hsnvpvnz14swkz54yrh9z7ng";
+    url = "http://cgdb.me/files/${name}.tar.gz";
+    sha256 = "1agxk6a97v6q0n097zw57qqpaza4j79jg36x99bh8yl23qfx6kh7";
   };
 
   buildInputs = [ ncurses readline ];
@@ -13,7 +14,7 @@ stdenv.mkDerivation rec {
   meta = {
     description = "A curses interface to gdb";
 
-    homepage = http://cgdb.sourceforge.net/;
+    homepage = https://cgdb.github.io/;
 
     repositories.git = git://github.com/cgdb/cgdb.git;
 
diff --git a/pkgs/development/tools/misc/swig/3.x.nix b/pkgs/development/tools/misc/swig/3.x.nix
index 653fb0616034..1a02c88bb71e 100644
--- a/pkgs/development/tools/misc/swig/3.x.nix
+++ b/pkgs/development/tools/misc/swig/3.x.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pcre }:
 
 stdenv.mkDerivation rec {
-  name = "swig-3.0.0";
+  name = "swig-3.0.2";
 
   src = fetchurl {
     url = "mirror://sourceforge/swig/${name}.tar.gz";
-    sha256 = "99cab1055877d00280509f0e04c1fe76643ec3792e9b8e7efcc9aa6e247229df";
+    sha256 = "04vqrij3k6pcq41y7rzl5rmhnghqg905f11wyrqw7vdwr9brcrm2";
   };
 
   buildInputs = [ pcre ];
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff b/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff
index ee39855fec9d..e6fc96038ff8 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/Makefile.conf.diff
@@ -3,7 +3,7 @@
 @@ -1,6 +1,6 @@
  
  # Where binaries are installed:
--BINDIR := /usr/local/bin
+-BINDIR := `dirname  \`which ocamlc\``
 +BINDIR := $(out)/bin
  
  ####
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/default.nix b/pkgs/development/tools/ocaml/js_of_ocaml/default.nix
index a7167d0c2262..103b0bfa45e5 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/default.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/default.nix
@@ -1,13 +1,15 @@
-{stdenv, fetchurl, ocaml, findlib, ocaml_lwt, menhir, ocsigen_deriving}:
+{stdenv, fetchurl, ocaml, findlib, ocaml_lwt, menhir, ocsigen_deriving, camlp4,
+ cmdliner, tyxml, reactivedata}:
 
 stdenv.mkDerivation {
-  name = "js_of_ocaml";
+  name = "js_of_ocaml-2.5";
   src = fetchurl {
-    url = https://github.com/ocsigen/js_of_ocaml/archive/2.2.tar.gz;
-    sha256 = "1cp81gpvyxgvzxg0vzyl8aa2zvcixp6m433w8zjifrg6vb7lhp97";
+    url = https://github.com/ocsigen/js_of_ocaml/archive/2.5.tar.gz;
+    sha256 = "1prm08nf8szmd3p13ysb0yx1cy6lr671bnwsp25iny8hfbs39sjv";
     };
   
-  buildInputs = [ocaml findlib ocaml_lwt menhir ocsigen_deriving];
+  buildInputs = [ocaml findlib ocaml_lwt menhir ocsigen_deriving
+                 cmdliner tyxml camlp4 reactivedata];
 
   patches = [ ./Makefile.conf.diff ];  
 
diff --git a/pkgs/development/tools/ocaml/merlin/default.nix b/pkgs/development/tools/ocaml/merlin/default.nix
index 30fabf193620..b20354e76b2f 100644
--- a/pkgs/development/tools/ocaml/merlin/default.nix
+++ b/pkgs/development/tools/ocaml/merlin/default.nix
@@ -1,19 +1,23 @@
-{stdenv, fetchurl, ocaml, findlib, yojson, menhir}:
+{stdenv, fetchurl, ocaml, findlib, yojson, menhir
+, withEmacsMode ? false, emacs}:
 
 assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "4.00";
 
 stdenv.mkDerivation {
 
-  name = "merlin-1.7.1";
+  name = "merlin-2.0";
 
   src = fetchurl {
-    url = https://github.com/the-lambda-church/merlin/archive/v1.7.1.tar.gz;
-    sha256 = "c3b60c7b3fddaa2860e0d8ac0d4fed2ed60e319875734c7ac1a93df524c67aff";
+    url = https://github.com/the-lambda-church/merlin/archive/v2.0.tar.gz;
+    sha256 = "1khvmncj6gfk9p5wl07gp6ii9csc5s1bcv892lkfpfbnsspis7cp";
   };
 
-  buildInputs = [ ocaml findlib yojson menhir ];
+  buildInputs = [ ocaml findlib yojson menhir ]
+    ++ stdenv.lib.optional withEmacsMode emacs;
 
+  preConfigure = "mkdir -p $out/bin";
   prefixKey = "--prefix ";
+  configureFlags = stdenv.lib.optional withEmacsMode "--enable-compiled-emacs-mode";
 
   meta = with stdenv.lib; {
     description = "An editor-independent tool to ease the development of programs in OCaml";
diff --git a/pkgs/development/tools/ocaml/oasis/default.nix b/pkgs/development/tools/ocaml/oasis/default.nix
index 3f172e6aaf2b..29507f49c186 100644
--- a/pkgs/development/tools/ocaml/oasis/default.nix
+++ b/pkgs/development/tools/ocaml/oasis/default.nix
@@ -2,11 +2,11 @@
  ocamlmod, ocamlify, ounit, expect}:
 
 stdenv.mkDerivation {
-  name = "ocaml-oasis-0.4.4";
+  name = "ocaml-oasis-0.4.5";
 
   src = fetchurl {
-    url = http://forge.ocamlcore.org/frs/download.php/1355/oasis-0.4.4.tar.bz2;
-    sha256 = "1lsnw9f1jh6106kphxg40qp0sia6cbkbb9ahs5y6ifnfkmllkjhj";
+    url = http://forge.ocamlcore.org/frs/download.php/1475/oasis-0.4.5.tar.gz;
+    sha256 = "0i1fifzig2slhb07d1djx6i690b8ys0avsx6ssnihisw841sc8v6";
   };
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch b/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch
new file mode 100644
index 000000000000..1a4a6a225a49
--- /dev/null
+++ b/pkgs/development/tools/ocaml/ocamlscript/Makefile.patch
@@ -0,0 +1,25 @@
+--- a/Makefile	2012-02-04 01:24:21.000000000 +0000
++++ b/Makefile	2014-10-29 14:42:08.690188302 +0000
+@@ -4,6 +4,8 @@
+   version.ml pipeline.mli pipeline.ml common.mli common.ml \
+   utils.mli utils.ml ocaml.mli ocaml.ml
+ 
++CAMLP4 := $(shell ocamlfind query camlp4)
++
+ STDBIN = $(shell dirname `which ocamlfind`)
+ ifndef PREFIX
+   PREFIX = $(shell dirname $(STDBIN))
+@@ -36,11 +38,11 @@
+ 
+ common: version.ml
+ 	ocamlc -pp 'camlp4orf -loc _loc' -c \
+-		-I +camlp4 pa_opt310.ml && \
++		-I $(CAMLP4) pa_opt310.ml && \
+ 		cp pa_opt310.cmo pa_opt.cmo && \
+ 		cp pa_opt310.cmi pa_opt.cmi
+ 	ocamlc -pp 'camlp4orf -loc _loc' -c \
+-		-I +camlp4 pa_tryfinally310.ml && \
++		-I $(CAMLP4) pa_tryfinally310.ml && \
+ 		cp pa_tryfinally310.cmo pa_tryfinally.cmo && \
+ 		cp pa_tryfinally310.cmi pa_tryfinally.cmi
+ 
diff --git a/pkgs/development/tools/ocaml/ocamlscript/default.nix b/pkgs/development/tools/ocaml/ocamlscript/default.nix
new file mode 100644
index 000000000000..50b9c496abaf
--- /dev/null
+++ b/pkgs/development/tools/ocaml/ocamlscript/default.nix
@@ -0,0 +1,26 @@
+{stdenv, fetchurl, ocaml, findlib, camlp4}:
+stdenv.mkDerivation {
+  name = "ocamlscript-2.0.3";
+  src = fetchurl {
+    url = http://mjambon.com/releases/ocamlscript/ocamlscript-2.0.3.tar.gz;
+    sha256 = "1v1i24gijxwris8w4hi95r9swld6dm7jbry0zp72767a3g5ivlrd";
+  };
+
+  buildInputs = [ ocaml findlib camlp4 ];
+
+  patches = [ ./Makefile.patch ];
+
+  buildFlags = "PREFIX=$(out)";
+  installFlags = "PREFIX=$(out)";
+
+  preInstall = "mkdir $out/bin";
+  createFindlibDestdir = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://martin.jambon.free.fr/ocamlscript.html;
+    license = licenses.boost;
+    platforms = ocaml.meta.platforms;
+    description = "Natively-compiled OCaml scripts";
+    maintainers = [ maintainers.vbgl ];
+  };
+}
diff --git a/pkgs/development/tools/ocaml/opam/1.2.0-src_ext-Makefile.patch b/pkgs/development/tools/ocaml/opam/1.2.0-src_ext-Makefile.patch
new file mode 100644
index 000000000000..523d0f6524e7
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/1.2.0-src_ext-Makefile.patch
@@ -0,0 +1,11 @@
+--- opam-1.2.0/src_ext/Makefile	2014-10-15 21:32:13.000000000 -0400
++++ opam-1.2.0/src_ext/Makefile.new	2014-10-29 17:37:00.785365601 -0400
+@@ -51,7 +51,7 @@ archives: $(SRC_EXTS:=.download)
+ 	[ -e  $(notdir $(URL_$*)) ] || $(FETCH) $(URL_$*)
+ 	$(MD5CHECK) $(notdir $(URL_$*)) $(MD5_$*)
+ 
+-%.stamp: %.download
++%.stamp:
+ 	mkdir -p tmp
+ 	cd tmp && tar xf$(if $(patsubst %.tar.gz,,$(URL_$*)),j,z) ../$(notdir $(URL_$*))
+ 	rm -rf $*
diff --git a/pkgs/development/tools/ocaml/opam/1.2.0.nix b/pkgs/development/tools/ocaml/opam/1.2.0.nix
new file mode 100644
index 000000000000..9081bcbcb09a
--- /dev/null
+++ b/pkgs/development/tools/ocaml/opam/1.2.0.nix
@@ -0,0 +1,79 @@
+{ stdenv, fetchgit, fetchurl, ocaml, unzip, ncurses, curl }:
+
+# Opam 1.2.0 only works with ocaml >= 3.12.1 according to ./configure
+assert stdenv.lib.versionAtLeast (stdenv.lib.getVersion ocaml) "3.12.1";
+
+let
+  srcs = {
+    cudf = fetchurl {
+      url = "https://gforge.inria.fr/frs/download.php/file/33593/cudf-0.7.tar.gz";
+      sha256 = "92c8a9ed730bbac73f3513abab41127d966c9b9202ab2aaffcd02358c030a701";
+    };
+    extlib = fetchurl {
+      url = "http://ocaml-extlib.googlecode.com/files/extlib-1.5.3.tar.gz";
+      sha256 = "c095eef4202a8614ff1474d4c08c50c32d6ca82d1015387785cf03d5913ec021";
+    };
+    ocaml_re = fetchurl {
+      url = "https://github.com/ocaml/ocaml-re/archive/ocaml-re-1.2.0.tar.gz";
+      sha256 = "a34dd9d6136731436a963bbab5c4bbb16e5d4e21b3b851d34887a3dec451999f";
+    };
+    ocamlgraph = fetchurl {
+      url = "http://ocamlgraph.lri.fr/download/ocamlgraph-1.8.5.tar.gz";
+      sha256 = "d167466435a155c779d5ec25b2db83ad851feb42ebc37dca8ffa345ddaefb82f";
+    };
+    dose3 = fetchurl {
+      url = "https://gforge.inria.fr/frs/download.php/file/33677/dose3-3.2.2.tar.gz";
+      sha256 = "a30a189f9f298ed1de96d7098440c951f3df2c8da626f7f37f38cbfddefc909c";
+    };
+    cmdliner = fetchurl {
+      url = "http://erratique.ch/software/cmdliner/releases/cmdliner-0.9.4.tbz";
+      sha256 = "ecb65e2cfd984ec07e97a78f334a80cda41fb8f8bb5e37c41fd33e6a0e2e69ef";
+    };
+    uutf = fetchurl {
+      url = "http://erratique.ch/software/uutf/releases/uutf-0.9.3.tbz";
+      sha256 = "1f364f89b1179e5182a4d3ad8975f57389d45548735d19054845e06a27107877";
+    };
+    jsonm = fetchurl {
+      url = "http://erratique.ch/software/jsonm/releases/jsonm-0.9.1.tbz";
+      sha256 = "3fd4dca045d82332da847e65e981d8b504883571d299a3f7e71447d46bc65f73";
+    };
+    opam = fetchurl {
+      url = "https://github.com/ocaml/opam/archive/1.2.0.zip";
+      sha256 = "b78bb9570fbd1dae50583792525a3dd612f8f90db367771fabd7bf4571ba25f7";
+    };
+  };
+in
+stdenv.mkDerivation rec {
+  name = "opam-1.2.0";
+
+  buildInputs = [ unzip curl ncurses ocaml ];
+
+  src = srcs.opam;
+
+  postUnpack = ''
+    ln -sv ${srcs.cudf} $sourceRoot/src_ext/${srcs.cudf.name}
+    ln -sv ${srcs.extlib} $sourceRoot/src_ext/${srcs.extlib.name}
+    ln -sv ${srcs.ocaml_re} $sourceRoot/src_ext/${srcs.ocaml_re.name}
+    ln -sv ${srcs.ocamlgraph} $sourceRoot/src_ext/${srcs.ocamlgraph.name}
+    ln -sv ${srcs.dose3} $sourceRoot/src_ext/${srcs.dose3.name}
+    ln -sv ${srcs.cmdliner} $sourceRoot/src_ext/${srcs.cmdliner.name}
+    ln -sv ${srcs.uutf} $sourceRoot/src_ext/${srcs.uutf.name}
+    ln -sv ${srcs.jsonm} $sourceRoot/src_ext/${srcs.jsonm.name}
+  '';
+
+  patches = [ ./1.2.0-src_ext-Makefile.patch ];
+
+  postConfigure = "make lib-ext";
+
+  # Dirty, but apparently ocp-build requires a TERM
+  makeFlags = ["TERM=screen"];
+
+  doCheck = false;
+
+  meta = {
+    maintainers = [ stdenv.lib.maintainers.henrytill ];
+    description = "A package manager for OCaml";
+    homepage = "http://opam.ocamlpro.com/";
+    platforms = stdenv.lib.platforms.all;
+  };
+}
diff --git a/pkgs/development/tools/parsing/flex/2.5.35.nix b/pkgs/development/tools/parsing/flex/2.5.35.nix
index 8047080a125d..14209225bc61 100644
--- a/pkgs/development/tools/parsing/flex/2.5.35.nix
+++ b/pkgs/development/tools/parsing/flex/2.5.35.nix
@@ -20,6 +20,7 @@ stdenv.mkDerivation {
   };
 
   meta = {
+    branch = "2.5.35";
     homepage = http://flex.sourceforge.net/;
     description = "A fast lexical analyser generator";
   };
diff --git a/pkgs/development/tools/slimerjs/default.nix b/pkgs/development/tools/slimerjs/default.nix
index 696a83e9d45d..39e2daf6b3ab 100644
--- a/pkgs/development/tools/slimerjs/default.nix
+++ b/pkgs/development/tools/slimerjs/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, fetchgit, zip, unzip, xulrunner, bash}:
+{stdenv, fetchurl, fetchgit, zip, unzip, firefox, bash}:
 let
   s = # Generated upstream information
   rec {
@@ -31,7 +31,7 @@ stdenv.mkDerivation {
     cp LICENSE README* "$out/share/doc/slimerjs"
     cp -r * "$out/lib/slimerjs"
     echo '#!${bash}/bin/bash' >>  "$out/bin/slimerjs"
-    echo 'export SLIMERJSLAUNCHER=${xulrunner}/bin/xulrunner' >>  "$out/bin/slimerjs"
+    echo 'export SLIMERJSLAUNCHER=${firefox}/bin/firefox' >>  "$out/bin/slimerjs"
     echo "'$out/lib/slimerjs/slimerjs' \"\$@\"" >> "$out/bin/slimerjs"
     chmod a+x "$out/bin/slimerjs"
     sed -e 's@MaxVersion=32[.]@MaxVersion=33.@' -i "$out/lib/slimerjs/application.ini"
diff --git a/pkgs/games/asc/default.nix b/pkgs/games/asc/default.nix
index 41c527f462ce..5243316734e3 100644
--- a/pkgs/games/asc/default.nix
+++ b/pkgs/games/asc/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
   NIX_CFLAGS_COMPILE = "-fpermissive"; # I'm too lazy to catch all gcc47-related problems
 
   buildInputs = [
-    SDL SDL_image SDL_mixer SDL_sound libsigcxx physfs boost boost.lib expat
+    SDL SDL_image SDL_mixer SDL_sound libsigcxx physfs boost expat
     freetype libjpeg wxGTK lua perl pkgconfig zlib zip bzip2 libpng
   ];
 
diff --git a/pkgs/games/globulation/default.nix b/pkgs/games/globulation/default.nix
index 7ac83d512b30..ed134bcf3c92 100644
--- a/pkgs/games/globulation/default.nix
+++ b/pkgs/games/globulation/default.nix
@@ -1,80 +1,50 @@
-x@{builderDefsPackage
-  , mesa, SDL, scons, SDL_ttf, SDL_image, zlib, SDL_net, speex, libvorbis
-  , libogg, boost, fribidi, bsdiff
-  , ...}:
-builderDefsPackage
-(a :  
-let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = [ boost.lib ]
-    ++ map (n: builtins.getAttr n x)
-     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
-  sourceInfo = rec {
-   baseName="glob2";
-    version="0.9.4";
-    patchlevel="4";
-    name="${baseName}-${version}.${patchlevel}";
-    url="mirror://savannah/glob2/${version}/${name}.tar.gz";
-    hash="1f0l2cqp2g3llhr9jl6jj15k0wb5q8n29vqj99xy4p5hqs78jk8g";
-  };
-in
-rec {
-  src = a.fetchurl {
-    url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
-  };
-
-  tutorial4patch = a.fetchurl {
+{ stdenv, fetchurl, mesa, SDL, scons, SDL_ttf, SDL_image, zlib, SDL_net
+, speex, libvorbis, libogg, boost, fribidi, bsdiff
+}:
+let
+  version = "0.9.4";
+  patchlevel = "4";
+  tutorial4patch = fetchurl {
     url = "http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=34;filename=tutorial-part4.map.bspatch;att=1;bug=595448";
     name = "globulation2-tutorial4-map-patch-debian.bspatch";
     sha256 = "d3511ac0f822d512c42abd34b3122f2990862d3d0af6ce464ff372f5bd7f35e9";
   };
+in
+stdenv.mkDerivation rec {
+  name = "glob2-${version}.${patchlevel}";
 
-  inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doUnpack" "doPatch" "doBspatch" "workaroundScons" "doScons"];
+  src = fetchurl {
+    url = "mirror://savannah/glob2/${version}/${name}.tar.gz";
+    sha256 = "1f0l2cqp2g3llhr9jl6jj15k0wb5q8n29vqj99xy4p5hqs78jk8g";
+  };
 
-  patches = [./header-order.patch];
+  patches = [ ./header-order.patch ];
 
-  doBspatch = a.fullDepEntry ''
+  postPatch = ''
     cp campaigns/tutorial-part4.map{,.orig}
     bspatch  campaigns/tutorial-part4.map{.orig,} ${tutorial4patch}
-  '' ["minInit" "doUnpack" "addInputs"];
+    sed -i -e "s@env = Environment()@env = Environment( ENV = os.environ )@" SConstruct
+  '';
 
-  # FIXME
-  # I officially fail to understand what goes on, but that seems to work
-  # too well not to use. Yes, it is ugly, I know...
-  workaroundScons = a.fullDepEntry ''
-    echo '#! ${a.stdenv.shell}' >> o
-    echo 'g++ -o "$@"' >> o
-    chmod a+x o
-    export PATH="$PATH:$PWD"
-  '' ["minInit"];
+  buildInputs = [ mesa SDL scons SDL_ttf SDL_image zlib SDL_net speex libvorbis libogg boost fribidi bsdiff ];
 
-  sconsFlags = [
-    "DATADIR=$out/share/globulation2/glob2"
-    "BINDIR=$out/bin"
-    "INSTALLDIR=$out/share/globulation2"
-  ];
+  buildPhase = ''
+    scons
+  '';
+
+  installPhase = ''
+    scons install \
+      BINDIR=$out/bin \
+      INSTALLDIR=$out/share/globulation2 \
+      DATADIR=$out/share/globulation2/glob2
+  '';
       
-  meta = {
+  meta = with stdenv.lib; {
     description = "RTS without micromanagement";
-    maintainers = with a.lib.maintainers;
-    [
-      raskin
-    ];
-    platforms = with a.lib.platforms;
-      linux;
-    license = a.lib.licenses.gpl3;
-  };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://globulation2.org/wiki/Download_and_Install";
-    };
+    maintainers = with maintainers; [ raskin ];
+    platforms = platforms.linux;
+    license = licenses.gpl3;
   };
-}) x
+  passthru.updateInfo.downloadPage = "http://globulation2.org/wiki/Download_and_Install";
+}
 
diff --git a/pkgs/games/pingus/default.nix b/pkgs/games/pingus/default.nix
index af635379ac8a..43cdc2031bf5 100644
--- a/pkgs/games/pingus/default.nix
+++ b/pkgs/games/pingus/default.nix
@@ -1,7 +1,7 @@
 {stdenv, fetchurl, scons, SDL, SDL_image, boost, libpng, SDL_mixer, pkgconfig
 , mesa}:
 let
-  buildInputs = [scons SDL SDL_image boost boost.lib libpng SDL_mixer pkgconfig mesa];
+  buildInputs = [scons SDL SDL_image boost libpng SDL_mixer pkgconfig mesa];
   s = # Generated upstream information
   rec {
     baseName="pingus";
diff --git a/pkgs/games/quake3/game/default.nix b/pkgs/games/quake3/game/default.nix
index 596ba595d813..d73c8c6a4c47 100644
--- a/pkgs/games/quake3/game/default.nix
+++ b/pkgs/games/quake3/game/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, x11, SDL, mesa, openal }:
+{ lib, stdenv, fetchurl, x11, SDL, mesa, openal }:
 
 stdenv.mkDerivation {
   name = "ioquake3-1.36";
-  
+
   src = fetchurl {
     url = http://ioquake3.org/files/1.36/ioquake3-1.36.tar.bz2; # calls itself "1.34-rc3"
     sha256 = "008vah60z0n9h1qp373xbqvhwfbyywbbhd1np0h0yw66g0qzchzv";
   };
 
   patchFlags = "-p0";
-  
+
   patches = [
     # Fix for compiling on gcc 4.2.
     (fetchurl {
@@ -19,9 +19,9 @@ stdenv.mkDerivation {
 
     # Do an exit() instead of _exit().  This is nice for gcov.
     # Upstream also seems to do this.
-    ./exit.patch    
+    ./exit.patch
   ];
-  
+
   buildInputs = [x11 SDL mesa openal];
 
   # Fix building on GCC 4.6.
@@ -33,6 +33,8 @@ stdenv.mkDerivation {
     installFlags="COPYDIR=$out"
   '';
 
-  meta.broken = true;
-  
+  meta = {
+    platforms = lib.platforms.linux;
+    maintainers = [ lib.maintainers.eelco ];
+  };
 }
diff --git a/pkgs/games/spring/default.nix b/pkgs/games/spring/default.nix
index 1a5eaf6a8612..f77166721866 100644
--- a/pkgs/games/spring/default.nix
+++ b/pkgs/games/spring/default.nix
@@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
                 "-DCMAKE_INSTALL_RPATH_USE_LINK_PATH:BOOL=ON"
                 "-DPREFER_STATIC_LIBS:BOOL=OFF"];
 
-  buildInputs = [ cmake lzma boost boost.lib libdevil zlib p7zip openal libvorbis freetype SDL
+  buildInputs = [ cmake lzma boost libdevil zlib p7zip openal libvorbis freetype SDL
     xlibs.libX11 xlibs.libXcursor mesa glew asciidoc libxslt docbook_xsl curl makeWrapper
     docbook_xsl_ns systemd ]
     ++ stdenv.lib.optional withAI jdk
diff --git a/pkgs/games/spring/springlobby.nix b/pkgs/games/spring/springlobby.nix
index 5305759369b7..bbcbd1920e9d 100644
--- a/pkgs/games/spring/springlobby.nix
+++ b/pkgs/games/spring/springlobby.nix
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
 
   buildInputs = [
     cmake wxGTK openal pkgconfig curl gettext libtorrentRasterbar
-    boost boost.lib libpng libX11 libnotify gtk doxygen makeWrapper
+    boost libpng libX11 libnotify gtk doxygen makeWrapper
   ];
 
   prePatch = ''
diff --git a/pkgs/games/steam/default.nix b/pkgs/games/steam/default.nix
index 9104bb40f777..41742da6b4ec 100644
--- a/pkgs/games/steam/default.nix
+++ b/pkgs/games/steam/default.nix
@@ -1,11 +1,13 @@
 {stdenv, fetchurl}:
 
-stdenv.mkDerivation {
-  name = "steam-1.0.0.48";
+stdenv.mkDerivation rec {
+  name = "${program}-${version}";
+  program = "steam";
+  version = "1.0.0.49";
 
   src = fetchurl {
-    url = http://repo.steampowered.com/steam/pool/steam/s/steam/steam_1.0.0.48.tar.gz;
-    sha256 = "08y5qf75ssk4fnazyv2yz1c5zs7gjiwigaibv8yz1gbr290r0b52";
+    url = "http://repo.steampowered.com/steam/pool/steam/s/steam/${program}_${version}.tar.gz";
+    sha256 = "1c1gl5pwvb5gnnnqf5d9hpcjnfjjgmn4lgx8v0fbx1am5xf3p2gx";
   };
 
   installPhase = ''
@@ -18,5 +20,6 @@ stdenv.mkDerivation {
     description = "A digital distribution platform";
     homepage = http://store.steampowered.com/;
     license = stdenv.lib.licenses.unfree;
+    maintainers = [ stdenv.lib.maintainers.jagajaga ];
   };
 }
diff --git a/pkgs/games/stuntrally/default.nix b/pkgs/games/stuntrally/default.nix
index 7b258deef8a9..e0d0e3a1ef3b 100644
--- a/pkgs/games/stuntrally/default.nix
+++ b/pkgs/games/stuntrally/default.nix
@@ -1,31 +1,28 @@
-{ fetchgit, stdenv, cmake, boost, ogre, mygui, ois, SDL, libvorbis, pkgconfig
+{ fetchgit, stdenv, cmake, boost, ogre, mygui, ois, SDL2, libvorbis, pkgconfig
 , makeWrapper, enet, libXcursor }:
 
 stdenv.mkDerivation rec {
-  name = "stunt-rally-1.8";
+  name = "stunt-rally-2.4";
 
   src = fetchgit {
     url = git://github.com/stuntrally/stuntrally.git;
-    rev = "refs/tags/1.8";
-    sha256 = "0p8p83xx8q33kymsqnmxqca4jdfyg9rwrsac790z56gdbc7gnahm";
+    rev = "refs/tags/2.4";
+    sha256 = "0zyzkac11dv9c1rxknydkisg2iw1rmi72psidl7jmq8v3rrqxk4r";
   };
 
   tracks = fetchgit {
     url = git://github.com/stuntrally/tracks.git;
-    rev = "refs/tags/1.8";
-    sha256 = "1gcrs21nn0v3hvhrw8dc0wh1knn5qh66cjx7a1igiciiadmi2s3l";
+    rev = "refs/tags/2.4";
+    sha256 = "1j237dbhd1ik5mj8whbvlff5da9vzzgiskcj5nzfpw1vb1jpdjvd";
   };
 
-  patchPhase = ''
-    sed -i 's/materials/materials material_templates/' data/CMakeLists.txt
-  '';
-
   preConfigure = ''
-    mkdir data/tracks
-    cp -R $tracks/* data/tracks
+    cp -R ${tracks} data/tracks
+    chmod u+rwX -R data
   '';
 
-  buildInputs = [ cmake boost ogre mygui ois SDL libvorbis pkgconfig makeWrapper enet
+  buildInputs = [ cmake boost ogre mygui ois SDL2 libvorbis pkgconfig 
+    makeWrapper enet
     libXcursor
   ];
 
diff --git a/pkgs/games/wesnoth/default.nix b/pkgs/games/wesnoth/default.nix
index c1c1b5b07567..bcd3f3a453a7 100644
--- a/pkgs/games/wesnoth/default.nix
+++ b/pkgs/games/wesnoth/default.nix
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
   };
 
   buildInputs = [ SDL SDL_image SDL_mixer SDL_net SDL_ttf pango gettext zlib
-                  boost boost.lib fribidi cmake freetype libpng pkgconfig lua
+                  boost fribidi cmake freetype libpng pkgconfig lua
                   dbus fontconfig libtool ];
 
   cmakeFlags = [ "-DENABLE_STRICT_COMPILATION=FALSE" ]; # newer gcc problems http://gna.org/bugs/?21030
diff --git a/pkgs/misc/emulators/retroarch/cores.nix b/pkgs/misc/emulators/retroarch/cores.nix
index 02fb815c2eb7..14d6d6b17ebe 100644
--- a/pkgs/misc/emulators/retroarch/cores.nix
+++ b/pkgs/misc/emulators/retroarch/cores.nix
@@ -264,8 +264,8 @@ in
     core = "stella";
     src = fetchRetro {
       repo = core + "-libretro";
-      rev = "394ef8c10b8057fe3f92ff9d7c73886ae2eefec2";
-      sha256 = "1a5m157fqpspi2zafmqhcd6864dvfpwh44d4n47ngswp6ii9bq0f";
+      rev = "31a455828e8f72c53283cb782e799ce54e4f1ee6";
+      sha256 = "0ab7prnc2igbmzlh6gh7ln25c6767w4ypgskl1xsbn93k2dwzkpx";
     };
     description = "Port of Stella to libretro";
   }).override {
diff --git a/pkgs/misc/emulators/wine/unstable.nix b/pkgs/misc/emulators/wine/unstable.nix
index 4d6435c808f6..aa99d696f5f2 100644
--- a/pkgs/misc/emulators/wine/unstable.nix
+++ b/pkgs/misc/emulators/wine/unstable.nix
@@ -7,12 +7,12 @@ assert stdenv.isLinux;
 assert stdenv.gcc.gcc != null;
 
 let
-    version = "1.7.29";
+    version = "1.7.30";
     name = "wine-${version}";
 
     src = fetchurl {
       url = "mirror://sourceforge/wine/${name}.tar.bz2";
-      sha256 = "0qnyp1svzh2yyc3p34dg8hf21lwzxn4xkgpa3s0rfcak6l6ijj5f";
+      sha256 = "0v08w2av46y4wxrl8q4k9fhbi2cgawjaxclahqnpfw098bqcmxqh";
     };
 
     gecko = fetchurl {
diff --git a/pkgs/os-specific/linux/audit/default.nix b/pkgs/os-specific/linux/audit/default.nix
index 42aff7fa1263..05b9eb9e56fa 100644
--- a/pkgs/os-specific/linux/audit/default.nix
+++ b/pkgs/os-specific/linux/audit/default.nix
@@ -5,11 +5,11 @@
 assert enablePython -> python != null;
 
 stdenv.mkDerivation rec {
-  name = "audit-2.4";
+  name = "audit-2.4.1";
 
   src = fetchurl {
     url = "http://people.redhat.com/sgrubb/audit/${name}.tar.gz";
-    sha256 = "16z9iyi7yzkbyczrkmk9g0i3mlivr7l4p0hgyrz4f04xmzkkjpbf";
+    sha256 = "09ihn392pmac1pyjrs22966csia83yr84hq5ri6sybwj1vx4d4q5";
   };
 
   buildInputs = [ openldap ]
diff --git a/pkgs/os-specific/linux/firejail/default.nix b/pkgs/os-specific/linux/firejail/default.nix
index ec9b3537fad8..eb8e7cf390ae 100644
--- a/pkgs/os-specific/linux/firejail/default.nix
+++ b/pkgs/os-specific/linux/firejail/default.nix
@@ -3,11 +3,11 @@ let
   s = # Generated upstream information
   rec {
     baseName="firejail";
-    version="0.9.14";
+    version="0.9.16";
     name="${baseName}-${version}";
-    hash="0mwlvxl4fcfqvw7scldh4wz0i3b22cf5a2aglaxc9i1c3jld3w9l";
-    url="http://softlayer-ams.dl.sourceforge.net/project/firejail/firejail/firejail-0.9.14-rc1.tar.bz2";
-    sha256="0mwlvxl4fcfqvw7scldh4wz0i3b22cf5a2aglaxc9i1c3jld3w9l";
+    hash="1213ln6rqb1w0ba98zwi5p40f7gzpz4rqn621zz72v0z1q1vfkrp";
+    url="mirror://sourceforge/project/firejail/firejail/firejail-0.9.16-rc1.tar.bz2";
+    sha256="1213ln6rqb1w0ba98zwi5p40f7gzpz4rqn621zz72v0z1q1vfkrp";
   };
   buildInputs = [
   ];
@@ -25,6 +25,10 @@ stdenv.mkDerivation {
     sed -e '/ \/run/iif(vrcs!=NULL){symlink(vrcs, "/var/run/current-system")\;free(vrcs)\;}' -i ./src/firejail/fs_var.c
   '';
 
+  preBuild = ''
+    sed -e "s@/etc/@$out/etc/@g" -i Makefile
+  '';
+
   meta = {
     inherit (s) version;
     description = ''Namespace-based sandboxing tool for Linux'';
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index ebbdd79ba167..737c52d6eb22 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,17 +1,15 @@
 { stdenv, fetchurl, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "3.17-rc2";
-  modDirVersion = "3.17.0-rc2";
-  extraMeta.branch = "3.17";
+  version = "3.18-rc3";
+  modDirVersion = "3.18.0-rc3";
+  extraMeta.branch = "3.18";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v3.x/testing/linux-${version}.tar.xz";
-    sha256 = "094r4kqp7bj1wcdfsgdmv73law4zb7d0sd8lw82v3rz944mlm9y3";
+    sha256 = "1w58szpljzm2ys53fiagqypiw9ylbqf843rwqyv9bwxg5lm1jaq1";
   };
 
-  kernelPatches = args.kernelPatches ++ [ { name = "3.17-buildfix.patch"; patch = ./3.17-buildfix.patch; } ];
-
   features.iwlwifi = true;
   features.efiBootStub = true;
   features.needsCifsUtils = true;
diff --git a/pkgs/os-specific/linux/sysdig/default.nix b/pkgs/os-specific/linux/sysdig/default.nix
index 0e62ab86f6d5..1398b91303bc 100644
--- a/pkgs/os-specific/linux/sysdig/default.nix
+++ b/pkgs/os-specific/linux/sysdig/default.nix
@@ -3,10 +3,10 @@ let
   inherit (stdenv.lib) optional optionalString;
   s = rec {
     baseName="sysdig";
-    version = "0.1.89";
+    version = "0.1.91";
     name="${baseName}-${version}";
     url="https://github.com/draios/sysdig/archive/${version}.tar.gz";
-    sha256 = "06g0s38xvsmi8m80719m4h3h4by8q12imlp4k8sixhw06k959mhw";
+    sha256 = "0a34zinw54nkxawby847yzc3wzbw4dgi849pvwyd28391pxpxayy";
   };
   buildInputs = [
     cmake zlib luajit
diff --git a/pkgs/os-specific/linux/sysklogd/default.nix b/pkgs/os-specific/linux/sysklogd/default.nix
index 979bfa1d0bf3..b7bbdee369a1 100644
--- a/pkgs/os-specific/linux/sysklogd/default.nix
+++ b/pkgs/os-specific/linux/sysklogd/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl}:
 
 stdenv.mkDerivation {
-  name = "sysklogd-1.5";
+  name = "sysklogd-1.5.1";
 
   src = fetchurl {
-    url = http://www.infodrom.org/projects/sysklogd/download/sysklogd-1.5.tar.gz;
-    sha256 = "0wxpkrznqwz4dy11k90s2sqszwp7d4mlc0ag8288wa193plvhsb1";
+    url = http://www.infodrom.org/projects/sysklogd/download/sysklogd-1.5.1.tar.gz;
+    sha256 = "00f2wy6f0qng7qzga4iicyzl9j8b7mp6mrpfky5jxj93ms2w2rji";
   };
 
   patches = [ ./systemd.patch ];
diff --git a/pkgs/os-specific/linux/syslinux/default.nix b/pkgs/os-specific/linux/syslinux/default.nix
index 734613c44ac8..146a8a8ce361 100644
--- a/pkgs/os-specific/linux/syslinux/default.nix
+++ b/pkgs/os-specific/linux/syslinux/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchurl, nasm, perl, libuuid }:
 
 stdenv.mkDerivation rec {
-  name = "syslinux-6.02";
+  name = "syslinux-6.03";
 
   src = fetchurl {
     url = "mirror://kernel/linux/utils/boot/syslinux/${name}.tar.xz";
-    sha256 = "0y2ld2s64s6vc5pf8rj36w71rq2cfax3c1iafp0w1qbjpxy1p8xg";
+    sha256 = "03l5iifwlg1wyb4yh98i0b7pd4j55a1c9y74q1frs47a5dnrilr6";
   };
 
   patches = [ ./perl-deps.patch ];
 
   buildInputs = [ nasm perl libuuid ];
 
-  enableParallelBuilding = true;
+  enableParallelBuilding = false; # problems on Hydra
 
   preBuild = ''
     substituteInPlace Makefile --replace /bin/pwd $(type -P pwd)
diff --git a/pkgs/servers/amqp/qpid-cpp/default.nix b/pkgs/servers/amqp/qpid-cpp/default.nix
index 6a71994091d0..69c0a3dff41c 100644
--- a/pkgs/servers/amqp/qpid-cpp/default.nix
+++ b/pkgs/servers/amqp/qpid-cpp/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1c03yi19d5h5h78h37add9csmy0mzvvmvn7zkcalwszabdhsb5yk";
   };
 
-  buildInputs = [ cmake python boost boost.lib libuuid ruby ];
+  buildInputs = [ cmake python boost libuuid ruby ];
 
   # the subdir managementgen wants to install python stuff in ${python} and
   # the installation tries to create some folders in /var
diff --git a/pkgs/servers/http/nginx/unstable.nix b/pkgs/servers/http/nginx/unstable.nix
new file mode 100644
index 000000000000..a946672f9a7e
--- /dev/null
+++ b/pkgs/servers/http/nginx/unstable.nix
@@ -0,0 +1,132 @@
+{ stdenv, fetchurl, fetchFromGitHub, openssl, zlib, pcre, libxml2, libxslt, expat
+, gd, geoip, luajit
+, rtmp ? false
+, fullWebDAV ? false
+, syslog ? false
+, moreheaders ? false
+, echo ? false
+, ngx_lua ? false }:
+
+with stdenv.lib;
+
+let
+  version = "1.7.7";
+  mainSrc = fetchurl {
+    url = "http://nginx.org/download/nginx-${version}.tar.gz";
+    sha256 = "1lmzq36ysi0hwvqpiaz0dpmwvdwbrn9aw1rm1xcabkl2g855l0by";
+  };
+
+  rtmp-ext = fetchFromGitHub {
+    owner = "arut";
+    repo = "nginx-rtmp-module";
+    rev = "v1.1.5";
+    sha256 = "1d9ws4prxz22yq3nhh5h18jrs331zivrdh784l6wznc1chg3gphn";
+  };
+
+  dav-ext = fetchFromGitHub {
+    owner = "arut";
+    repo = "nginx-dav-ext-module";
+    rev = "v0.0.3";
+    sha256 = "1qck8jclxddncjad8yv911s9z7lrd58bp96jf13m0iqk54xghx91";
+  };
+
+  syslog-ext = fetchFromGitHub {
+    owner = "yaoweibin";
+    repo = "nginx_syslog_patch";
+    rev = "v0.25";
+    sha256 = "0734f884838wcjyrrddn8wzj834wid1zffrk093jrx18447cryxl";
+  };
+
+  moreheaders-ext = fetchFromGitHub {
+    owner = "openresty";
+    repo = "headers-more-nginx-module";
+    rev = "v0.25";
+    sha256 = "1d71y1i0smi4gkzz731fhn58gr03b3s6jz6ipnfzxxaizmgxm3rb";
+  };
+
+  echo-ext = fetchFromGitHub {
+    owner = "openresty";
+    repo = "echo-nginx-module";
+    rev = "v0.56";
+    sha256 = "03vaf1ffhkj2s089f90h45n079h3zw47h6y5zpk752f4ydiagpgd";
+  };
+
+  develkit-ext = fetchFromGitHub {
+    owner = "simpl";
+    repo = "ngx_devel_kit";
+    rev = "v0.2.19";
+    sha256 = "1cqcasp4lc6yq5pihfcdw4vp4wicngvdc3nqg3bg52r63c1qrz76";
+  };
+
+  lua-ext = fetchFromGitHub {
+    owner = "openresty";
+    repo = "lua-nginx-module";
+    rev = "v0.9.12";
+    sha256 = "0r07q1n3nvi7m3l8zk7nfk0z9kjhqknav61ys9lshh2ylsmz1lf4";
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "nginx-${version}";
+  src = mainSrc;
+
+  buildInputs =
+    [ openssl zlib pcre libxml2 libxslt gd geoip
+    ] ++ optional fullWebDAV expat
+      ++ optional ngx_lua luajit;
+
+  LUAJIT_LIB = if ngx_lua then "${luajit}/lib" else "";
+  LUAJIT_INC = if ngx_lua then "${luajit}/include/luajit-2.0" else "";
+
+  patches = if syslog then [ "${syslog-ext}/syslog-1.5.6.patch" ] else [];
+
+  configureFlags = [
+    "--with-http_ssl_module"
+    "--with-http_spdy_module"
+    "--with-http_realip_module"
+    "--with-http_addition_module"
+    "--with-http_xslt_module"
+    "--with-http_image_filter_module"
+    "--with-http_geoip_module"
+    "--with-http_sub_module"
+    "--with-http_dav_module"
+    "--with-http_flv_module"
+    "--with-http_mp4_module"
+    "--with-http_gunzip_module"
+    "--with-http_gzip_static_module"
+    "--with-http_auth_request_module"
+    "--with-http_random_index_module"
+    "--with-http_secure_link_module"
+    "--with-http_degradation_module"
+    "--with-http_stub_status_module"
+    "--with-ipv6"
+    # Install destination problems
+    # "--with-http_perl_module"
+  ] ++ optional rtmp "--add-module=${rtmp-ext}"
+    ++ optional fullWebDAV "--add-module=${dav-ext}"
+    ++ optional syslog "--add-module=${syslog-ext}"
+    ++ optional moreheaders "--add-module=${moreheaders-ext}"
+    ++ optional echo "--add-module=${echo-ext}"
+    ++ optional ngx_lua "--add-module=${develkit-ext} --add-module=${lua-ext}"
+    ++ optional (elem stdenv.system (with platforms; linux ++ freebsd)) "--with-file-aio";
+
+
+  additionalFlags = optionalString stdenv.isDarwin "-Wno-error=deprecated-declarations";
+
+  preConfigure = ''
+    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libxml2}/include/libxml2 $additionalFlags"
+  '';
+
+  postInstall = ''
+    mv $out/sbin $out/bin
+  '';
+
+  meta = {
+    description = "A reverse proxy and lightweight webserver";
+    homepage    = http://nginx.org;
+    license     = licenses.bsd2;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ thoughtpolice raskin ];
+  };
+}
diff --git a/pkgs/servers/http/nginx/unstable.upstream b/pkgs/servers/http/nginx/unstable.upstream
new file mode 100644
index 000000000000..7bb025499592
--- /dev/null
+++ b/pkgs/servers/http/nginx/unstable.upstream
@@ -0,0 +1,8 @@
+url http://nginx.org/en/download.html
+version_link '.*-([0-9]+[.][0-9]+([.][0-9]+)*)[.]tar[.][a-z0-9]*$' 
+
+do_overwrite() {
+  ensure_hash
+  set_var_value version "$CURRENT_VERSION"
+  set_var_value sha256 "$CURRENT_HASH"
+}
diff --git a/pkgs/servers/monitoring/zabbix/2.2.nix b/pkgs/servers/monitoring/zabbix/2.2.nix
index 424001ea377b..df9da3c467b1 100644
--- a/pkgs/servers/monitoring/zabbix/2.2.nix
+++ b/pkgs/servers/monitoring/zabbix/2.2.nix
@@ -1,5 +1,10 @@
 { stdenv, fetchurl, pkgconfig, postgresql, curl, openssl, zlib, gettext
-, enableJabber ? false, minmay ? null }:
+, net_snmp , libssh2, openldap
+, enableJabber ? false, minmay ? null
+, enableSnmp ? false
+, enableSsh ? false
+, enableLdap ? false
+}:
 
 assert enableJabber -> minmay != null;
 
@@ -38,7 +43,11 @@ in
       "--with-postgresql"
       "--with-libcurl"
       "--with-gettext"
-    ] ++ stdenv.lib.optional enableJabber "--with-jabber=${minmay}";
+    ]
+    ++ stdenv.lib.optional enableJabber "--with-jabber=${minmay}"
+    ++ stdenv.lib.optional enableSnmp "--with-net-snmp"
+    ++ stdenv.lib.optional enableSsh "--with-ssh2=${libssh2}"
+    ++ stdenv.lib.optional enableLdap "--with-ldap=${openldap}";
 
     postPatch = ''
       sed -i -e 's/iksemel/minmay/g' configure src/libs/zbxmedia/jabber.c
@@ -48,7 +57,10 @@ in
         -e 's/iks/mmay/g' -e 's/IKS/MMAY/g' src/libs/zbxmedia/jabber.c
     '';
 
-    buildInputs = [ pkgconfig postgresql curl openssl zlib ];
+    buildInputs = [ pkgconfig postgresql curl openssl zlib ]
+      ++ stdenv.lib.optional enableSnmp net_snmp
+      ++ stdenv.lib.optional enableSsh libssh2
+      ++ stdenv.lib.optional enableLdap openldap;
 
     postInstall =
       ''
diff --git a/pkgs/servers/mpd/default.nix b/pkgs/servers/mpd/default.nix
index 928eb3fe152f..4f3672422c40 100644
--- a/pkgs/servers/mpd/default.nix
+++ b/pkgs/servers/mpd/default.nix
@@ -25,13 +25,13 @@ let
   opt = stdenv.lib.optional;
   mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}";
   major = "0.19";
-  minor = "1";
+  minor = "2";
 
 in stdenv.mkDerivation rec {
   name = "mpd-${major}.${minor}";
   src = fetchurl {
     url    = "http://www.musicpd.org/download/mpd/${major}/${name}.tar.gz";
-    sha256 = "08a8wgr1kp86nnf9xbc71l9py1plslp10xw0ah344imkwyfg0nj8";
+    sha256 = "1ykl636wrf67h5cmxqqjlgjjfvsbsnvrqxnc98k3g66gpwhrwi6b";
   };
 
   buildInputs = [ pkgconfig glib boost ]
diff --git a/pkgs/servers/nosql/apache-jena/binary.nix b/pkgs/servers/nosql/apache-jena/binary.nix
index b7132d2ea99e..d46b87d2dc1a 100644
--- a/pkgs/servers/nosql/apache-jena/binary.nix
+++ b/pkgs/servers/nosql/apache-jena/binary.nix
@@ -3,10 +3,10 @@ let
   s = # Generated upstream information
   rec {
     baseName="apache-jena";
-    version="2.12.0";
+    version = "2.12.1";
     name="${baseName}-${version}";
-    url="http://archive.apache.org/dist/jena/binaries/apache-jena-2.12.0.tar.gz";
-    sha256="02fzn5j7yllp9g6lfnncpdgc1wbljvfk6s6fgaypq8p0vx5zallc";
+    url="http://archive.apache.org/dist/jena/binaries/apache-jena-${version}.tar.gz";
+    sha256 = "0jvk538hlwab7gy5150av4whfsm54kkx3q8r2ypjf7rwhy5aggav";
   };
   buildInputs = [
     makeWrapper
diff --git a/pkgs/servers/nosql/mongodb/default.nix b/pkgs/servers/nosql/mongodb/default.nix
index f3132d66d2a9..02cdc02cd4d8 100644
--- a/pkgs/servers/nosql/mongodb/default.nix
+++ b/pkgs/servers/nosql/mongodb/default.nix
@@ -13,7 +13,7 @@ let version = "2.6.5";
       # "v8"
     ] ++ optionals (!stdenv.isDarwin) [ "tcmalloc" ];
     buildInputs = [
-      sasl boost boost.lib gperftools pcre snappy
+      sasl boost gperftools pcre snappy
       libyamlcpp sasl openssl libpcap
     ];
 
diff --git a/pkgs/servers/nosql/rethinkdb/default.nix b/pkgs/servers/nosql/rethinkdb/default.nix
index 79fd61390e46..727fb810e6e8 100644
--- a/pkgs/servers/nosql/rethinkdb/default.nix
+++ b/pkgs/servers/nosql/rethinkdb/default.nix
@@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
 
   configureFlags = "--lib-path ${gperftools}/lib";
 
-  buildInputs = [ protobuf boost boost.lib zlib curl ];
+  buildInputs = [ protobuf boost zlib curl ];
 
   nativeBuildInputs = [ which m4 python ];
 
diff --git a/pkgs/servers/rippled/default.nix b/pkgs/servers/rippled/default.nix
index d930c5b6a976..ca0a331e3212 100644
--- a/pkgs/servers/rippled/default.nix
+++ b/pkgs/servers/rippled/default.nix
@@ -1,20 +1,22 @@
-{ stdenv, fetchurl, scons, pkgconfig, openssl, protobuf, boost, zlib}:
+{ stdenv, fetchFromGitHub, scons, pkgconfig, openssl, protobuf, boost, zlib}:
 
 stdenv.mkDerivation rec {
   name = "rippled-${version}";
-  version = "0.23.0";
+  version = "0.26.0";
 
-  src = fetchurl {
-    url = "https://github.com/ripple/rippled/archive/${version}.tar.gz";
-    sha256 = "0js734sk11jn19fyp403mk6p62azlc6s9kyhr5jfg466fiak537p";
+  src = fetchFromGitHub {
+    owner = "ripple";
+    repo = "rippled";
+    rev = "0.26.2";
+    sha256 = "06hcc3nnzp9f6j00890f41rrn4djwlcwkzmqnw4yra74sswgji5y";
   };
 
-  patches = [ ./scons-env.patch ];
+  postPatch = ''
+    sed -i -e "s@ENV = dict.*@ENV = os.environ@g" SConstruct
+  '';
 
   buildInputs = [ scons pkgconfig openssl protobuf boost zlib ];
 
-  RIPPLED_BOOST_HOME = boost.out;
-  RIPPLED_ZLIB_HOME = zlib.out;
   buildPhase = "scons build/rippled";
 
   installPhase = ''
diff --git a/pkgs/servers/rippled/scons-env.patch b/pkgs/servers/rippled/scons-env.patch
deleted file mode 100644
index 5b80e77bb2e0..000000000000
--- a/pkgs/servers/rippled/scons-env.patch
+++ /dev/null
@@ -1,46 +0,0 @@
-diff --git a/SConstruct b/SConstruct
-index 8ba8bbd..95eab3b 100644
---- a/SConstruct
-+++ b/SConstruct
-@@ -24,6 +24,8 @@ USING_CLANG = OSX or os.environ.get('CC', None) == 'clang'
- #
- BOOST_HOME = os.environ.get("RIPPLED_BOOST_HOME", None)
- 
-+ZLIB_HOME = os.environ.get("RIPPLED_ZLIB_HOME", None)
-+
- 
- if OSX or Ubuntu or Debian or Archlinux:
-     CTAGS = 'ctags'
-@@ -36,7 +38,7 @@ else:
- # scons tools
- #
- 
--HONOR_ENVS = ['CC', 'CXX', 'PATH']
-+HONOR_ENVS = ['CC', 'CXX', 'PATH', 'PKG_CONFIG_PATH']
- 
- env = Environment(
-     tools = ['default', 'protoc'],
-@@ -156,8 +158,8 @@ INCLUDE_PATHS = [
-     'build/proto'
-     ]
- 
--# if BOOST_HOME:
--#     INCLUDE_PATHS.append(BOOST_HOME)
-+if BOOST_HOME:
-+    INCLUDE_PATHS.append("%s/include" % BOOST_HOME)
- 
- #-------------------------------------------------------------------------------
- #
-@@ -261,7 +263,11 @@ env.Append(
- # such, as installed into `/usr/lib/`
- if BOOST_HOME is not None:
-     env.Prepend(
--        LIBPATH = ["%s/stage/lib" % BOOST_HOME])
-+        LIBPATH = ["%s/lib" % BOOST_HOME])
-+
-+if ZLIB_HOME is not None:
-+    env.Prepend(
-+        LIBPATH = ["%s/lib" % ZLIB_HOME])
- 
- if not OSX:
-     env.Append(LINKFLAGS = [
diff --git a/pkgs/servers/search/elasticsearch/plugins.nix b/pkgs/servers/search/elasticsearch/plugins.nix
index ae93d1a4b5f7..6a0693ef1f50 100644
--- a/pkgs/servers/search/elasticsearch/plugins.nix
+++ b/pkgs/servers/search/elasticsearch/plugins.nix
@@ -4,11 +4,11 @@ with pkgs.lib;
 
 let
   esPlugin = a@{
-    pluginName, 
+    pluginName,
     installPhase ? ''
       mkdir -p $out/bin
       ES_HOME=$out ${elasticsearch}/bin/elasticsearch-plugin --install ${pluginName} --url file://$src
-    '', 
+    '',
     ...
   }:
     stdenv.mkDerivation (a // {
@@ -70,4 +70,25 @@ in {
       platforms = elasticsearch.meta.platforms;
     };
   };
+
+  elasticsearch_river_twitter = esPlugin rec {
+    name = pname + "-" + version;
+    pname = "elasticsearch-river-twitter";
+    pluginName = "elasticsearch/" + pname + "/" + version;
+    version = "2.3.0";
+
+    src = fetchurl {
+      url = "http://download.elasticsearch.org/elasticsearch/${pname}/${name}.zip";
+      sha256 = "1lxxh1r61r15mzqyl0li37kcnn3vvpklnbfyys0kd6a1l82f0qvj";
+    };
+
+    meta = {
+      homepage = "https://github.com/elasticsearch/elasticsearch-river-twitter";
+      description = "Twitter River Plugin for ElasticSearch";
+      license = licenses.asl20;
+      maintainers = [ maintainers.edwtjo ];
+      platforms = elasticsearch.meta.platforms;
+    };
+
+  };
 }
diff --git a/pkgs/servers/sql/mysql/5.5.x.nix b/pkgs/servers/sql/mysql/5.5.x.nix
index 5987222361ae..5c57ae87d202 100644
--- a/pkgs/servers/sql/mysql/5.5.x.nix
+++ b/pkgs/servers/sql/mysql/5.5.x.nix
@@ -4,11 +4,11 @@
 
 stdenv.mkDerivation rec {
   name = "mysql-${version}";
-  version = "5.5.39";
+  version = "5.5.40";
 
   src = fetchurl {
-    url = "http://cdn.mysql.com/Downloads/MySQL-5.5/${name}.tar.gz";
-    sha256 = "0qj8bc83v6vf8jyn4ag179nclpn6ilw4h4xqb50zz9jd0c5s14qq";
+    url = "http://mysql.mirrors.pair.com/Downloads/MySQL-5.5/${name}.tar.gz";
+    sha256 = "0q29nzmmxm78b89qjfzgm93r0glaam3xw3zfx1k8ihii39v22dsd";
   };
 
   preConfigure = stdenv.lib.optional stdenv.isDarwin ''
diff --git a/pkgs/servers/squid/squids.nix b/pkgs/servers/squid/squids.nix
index a6552738ea6d..859cf703d0e3 100644
--- a/pkgs/servers/squid/squids.nix
+++ b/pkgs/servers/squid/squids.nix
@@ -40,10 +40,10 @@ rec {
   };
 
   squid34 = squid30.merge rec {
-    name = "squid-3.4.5";
+    name = "squid-3.4.9";
     src = args.fetchurl {
       url = "http://www.squid-cache.org/Versions/v3/3.4/${name}.tar.bz2";
-      sha256 = "1d17l27bszdxnvdr78l7yry8ka38cq7g4774m5876q25ny1q1bmr";
+      sha256 = "0rnf0awf54mpbwnx45r5rivgz260jn20hacspbjf2yb6xnzzzwj2";
     };
     buildInputs = [openldap pam db cyrus_sasl libcap expat libxml2
       libtool openssl];
diff --git a/pkgs/tools/admin/awscli/default.nix b/pkgs/tools/admin/awscli/default.nix
index 1a68ecc67fef..9b9ae350d2c9 100644
--- a/pkgs/tools/admin/awscli/default.nix
+++ b/pkgs/tools/admin/awscli/default.nix
@@ -2,12 +2,12 @@
 
 pythonPackages.buildPythonPackage rec {
   name = "awscli-${version}";
-  version = "1.5.3";
+  version = "1.5.5";
   namePrefix = "";
 
   src = fetchurl {
     url = "https://github.com/aws/aws-cli/archive/${version}.tar.gz";
-    sha256 = "058lc4qj4xkjha9d1b5wrk2ca3lqfb9b45sb7czv0k1nwc0fciq1";
+    sha256 = "1xqaav4g07jzv8i4hkf52dimgmc0zv0fj9rbvz5kiln8470qzifw";
   };
 
   propagatedBuildInputs = [ 
diff --git a/pkgs/tools/backup/bareos/default.nix b/pkgs/tools/backup/bareos/default.nix
new file mode 100644
index 000000000000..5ac59327c4b1
--- /dev/null
+++ b/pkgs/tools/backup/bareos/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchgit, pkgconfig, nettools, gettext, readline, openssl, python
+, ncurses ? null
+, sqlite ? null, postgresql ? null, mysql ? null, libcap ? null
+, zlib ? null, lzo ? null, acl ? null, ceph ? null
+}:
+
+assert sqlite != null || postgresql != null || mysql != null;
+
+with stdenv.lib;
+stdenv.mkDerivation rec {
+  name = "bareos-${version}";
+  version = "14.2.1";
+
+  src = fetchgit {
+    url = "git://github.com/bareos/bareos";
+    rev = "refs/tags/Release/${version}";
+    sha256 = "0m7v1szi45m71zjhj3inn5hh9f4529slhiihm88rfw8006aqb6ly";
+  };
+
+  buildInputs = [
+    pkgconfig nettools gettext readline openssl python
+    ncurses sqlite postgresql mysql libcap zlib lzo acl ceph
+  ];
+
+  configureFlags = [
+    "--exec-prefix=\${out}"
+    "--with-openssl=${openssl}"
+    "--with-python=${python}"
+    "--with-readline=${readline}"
+    "--enable-ndmp"
+    "--enable-lmdb"
+  ] ++ optional (sqlite != null) "--with-sqlite3=${sqlite}"
+    ++ optional (postgresql != null) "--with-postgresql=${postgresql}"
+    ++ optional (mysql != null) "--with-mysql=${mysql}";
+
+  meta = with stdenv.lib; {
+    homepage = http://www.bareos.org/;
+    description = "a fork of the bacula project.";
+    license = licenses.agpl3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ wkennington ];
+  };
+}
diff --git a/pkgs/tools/compression/lbzip2/default.nix b/pkgs/tools/compression/lbzip2/default.nix
new file mode 100644
index 000000000000..73bc987908d7
--- /dev/null
+++ b/pkgs/tools/compression/lbzip2/default.nix
@@ -0,0 +1,18 @@
+{stdenv, fetchurl}:
+
+stdenv.mkDerivation rec {
+  name = "lbzip2-2.5";
+
+  src = fetchurl {
+    url = "http://archive.lbzip2.org/${name}.tar.gz";
+    sha256 = "1sahaqc5bw4i0iyri05syfza4ncf5cml89an033fspn97klmxis6";
+  };
+
+  meta = with stdenv.lib; {
+    homepage = http://lbzip2.org/;
+    description = "parallel bzip2 compression utility";
+    license = licenses.gpl3;
+    maintainers = maintainers.abbradar;
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/tools/filesystems/bcache-tools/bcache-udev-modern.patch b/pkgs/tools/filesystems/bcache-tools/bcache-udev-modern.patch
new file mode 100644
index 000000000000..c6cf79785b73
--- /dev/null
+++ b/pkgs/tools/filesystems/bcache-tools/bcache-udev-modern.patch
@@ -0,0 +1,52 @@
+This patch does two things:
+1) Drops probe-bcache, so now new util-linux detecting functionality is used.
+2) Drops bcache-register, using kmod (built in udev) and moving registering device
+   into rule using 'sh'.
+This reduces things that need to be present in initrd, replacing them with already
+existing functionality and reducing overall initrd size.
+
+diff --git a/69-bcache.rules b/69-bcache.rules
+index 5d28e70..6a52893 100644
+--- a/69-bcache.rules
++++ b/69-bcache.rules
+@@ -10,15 +10,11 @@ KERNEL=="fd*|sr*", GOTO="bcache_end"
+ # It recognised bcache (util-linux 2.24+)
+ ENV{ID_FS_TYPE}=="bcache", GOTO="bcache_backing_found"
+ # It recognised something else; bail
+-ENV{ID_FS_TYPE}=="?*", GOTO="bcache_backing_end"
+-
+-# Backing devices: scan, symlink, register
+-IMPORT{program}="probe-bcache -o udev $tempnode"
+-ENV{ID_FS_TYPE}!="bcache", GOTO="bcache_backing_end"
+-ENV{ID_FS_UUID_ENC}=="?*", SYMLINK+="disk/by-uuid/$env{ID_FS_UUID_ENC}"
++GOTO="bcache_backing_end"
+ 
+ LABEL="bcache_backing_found"
+-RUN+="bcache-register $tempnode"
++RUN{builtin}+="kmod load bcache"
++RUN+="/bin/sh -c 'echo $tempnode > /sys/fs/bcache/register_quiet'"
+ LABEL="bcache_backing_end"
+ 
+ # Cached devices: symlink
+diff --git a/Makefile b/Makefile
+index 3f8d87b..15638a7 100644
+--- a/Makefile
++++ b/Makefile
+@@ -9,7 +9,7 @@ all: make-bcache probe-bcache bcache-super-show
+ 
+ install: make-bcache probe-bcache bcache-super-show
+ 	$(INSTALL) -m0755 make-bcache bcache-super-show	$(DESTDIR)${PREFIX}/sbin/
+-	$(INSTALL) -m0755 probe-bcache bcache-register		$(DESTDIR)$(UDEVLIBDIR)/
++#	$(INSTALL) -m0755 probe-bcache bcache-register		$(DESTDIR)$(UDEVLIBDIR)/
+ 	$(INSTALL) -m0644 69-bcache.rules	$(DESTDIR)$(UDEVLIBDIR)/rules.d/
+ 	$(INSTALL) -m0644 -- *.8 $(DESTDIR)${PREFIX}/share/man/man8/
+ 	$(INSTALL) -D -m0755 initramfs/hook	$(DESTDIR)/usr/share/initramfs-tools/hooks/bcache
+diff --git a/bcache-register b/bcache-register
+index 9b592bc..75b4faf 100755
+--- a/bcache-register
++++ b/bcache-register
+@@ -1,4 +1,3 @@
+ #!/bin/sh
+-/sbin/modprobe -qba bcache
+ test -f /sys/fs/bcache/register_quiet && echo "$1" > /sys/fs/bcache/register_quiet
+ 
diff --git a/pkgs/tools/filesystems/bcache-tools/default.nix b/pkgs/tools/filesystems/bcache-tools/default.nix
index 161383cb9de5..a4b1363d841d 100644
--- a/pkgs/tools/filesystems/bcache-tools/default.nix
+++ b/pkgs/tools/filesystems/bcache-tools/default.nix
@@ -19,10 +19,10 @@ stdenv.mkDerivation rec {
         -e "/INSTALL.*initcpio\/install/d" \
         -e "/INSTALL.*dracut\/module-setup.sh/d" \
         -i Makefile
-
-    sed -e "s|/sbin/modprobe|${kmod}/sbin/modprobe|" -i bcache-register
   '';
 
+  patches = [ ./bcache-udev-modern.patch ];
+
   preBuild = ''
     export makeFlags="$makeFlags PREFIX=\"$out\" UDEVLIBDIR=\"$out/lib/udev/\"";
   '';
diff --git a/pkgs/tools/filesystems/btrfsprogs/default.nix b/pkgs/tools/filesystems/btrfsprogs/default.nix
index 219068896926..e7c38db9f8a9 100644
--- a/pkgs/tools/filesystems/btrfsprogs/default.nix
+++ b/pkgs/tools/filesystems/btrfsprogs/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, attr, acl, zlib, libuuid, e2fsprogs, lzo
 , asciidoc, xmlto, docbook_xml_dtd_45, docbook_xsl, libxslt }:
 
-let version = "3.16.2"; in
+let version = "3.17"; in
 
 stdenv.mkDerivation rec {
   name = "btrfs-progs-${version}";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/people/kdave/btrfs-progs/btrfs-progs-v${version}.tar.xz";
-    sha256 = "0avk8x0k91zrqvlbk8r067aw49byr8hvvr4niy48d3ib1jz2mmnl";
+    sha256 = "187hdfh10hrabvldqmhg88wdv0s9r7hc5264v83ykir9wxqvzbzc";
   };
 
   buildInputs = [
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index 7edf0f37e05d..44e39bdc4920 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -14,19 +14,22 @@ let
 in
 stdenv.mkDerivation rec {
   name="ceph-${version}";
-  version="0.86";
+  version="0.87";
 
   src = fetchgit {
     url = "git://github.com/ceph/ceph.git";
     rev = "refs/tags/v${version}";
-    sha256 = "19bl96z97kvsrliwid4g6dl7s3i0nw5z9nmg964i7jdwlsl98cfj";
+    sha256 = "0l3ig4kr50j78snjzj4h1lbmjz508yykvchqyfdcqv02dfklc8qd";
   };
 
-  patches = [ ./0001-Makefile-env-Don-t-force-sbin.patch ];
+  patches = [
+    ./0001-Cleanup-boost-optionals.patch # Remove in >0.87 patch is applied
+    ./0001-Makefile-env-Don-t-force-sbin.patch
+  ];
 
   nativeBuildInputs = [ autoconf automake makeWrapper pkgconfig libtool which ];
   buildInputs = [
-    boost boost.lib btrfsProgs cryptopp curl expat fcgi fuse gperftools keyutils
+    boost btrfsProgs cryptopp curl expat fcgi fuse gperftools keyutils
     libatomic_ops leveldb libaio libedit libuuid linuxHeaders openssl python
     snappy udev xfsprogs.lib xz zfs
   ];
diff --git a/pkgs/tools/filesystems/glusterfs/default.nix b/pkgs/tools/filesystems/glusterfs/default.nix
index 69f3f7ef1efd..a101958d8284 100644
--- a/pkgs/tools/filesystems/glusterfs/default.nix
+++ b/pkgs/tools/filesystems/glusterfs/default.nix
@@ -1,18 +1,18 @@
 {stdenv, fetchurl, fuse, bison, flex_2_5_35, openssl, python, ncurses, readline,
- autoconf, automake, libtool, pkgconfig, zlib, libaio}:
+ autoconf, automake, libtool, pkgconfig, zlib, libaio, libxml2}:
 let 
   s = # Generated upstream information 
   rec {
     baseName="glusterfs";
-    version="3.5.2";
+    version="3.6.0";
     name="${baseName}-${version}";
-    hash="1hvns9islr5jcy0r1cw5890ra246y12pl5nlhl3bvmhglrkv8n7g";
-    url="http://download.gluster.org/pub/gluster/glusterfs/3.5/3.5.2/glusterfs-3.5.2.tar.gz";
-    sha256="1hvns9islr5jcy0r1cw5890ra246y12pl5nlhl3bvmhglrkv8n7g";
+    hash="1c4lscqc5kvn5yj5pspvml59n1czspfqqdwhz73hbjd5lbqak9ml";
+    url="http://download.gluster.org/pub/gluster/glusterfs/3.6/3.6.0/glusterfs-3.6.0.tar.gz";
+    sha256="1c4lscqc5kvn5yj5pspvml59n1czspfqqdwhz73hbjd5lbqak9ml";
   };
   buildInputs = [
     fuse bison flex_2_5_35 openssl python ncurses readline
-    autoconf automake libtool pkgconfig zlib libaio
+    autoconf automake libtool pkgconfig zlib libaio libxml2
   ];
 in
 stdenv.mkDerivation
diff --git a/pkgs/tools/filesystems/grive/default.nix b/pkgs/tools/filesystems/grive/default.nix
index 559e2ae4c513..c6d2776f437a 100644
--- a/pkgs/tools/filesystems/grive/default.nix
+++ b/pkgs/tools/filesystems/grive/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "f2b978cc93a2d16262c7b78c62019b2a58044eaef4ca95feaa74dfd4dfcbfa36";
   };
 
-  buildInputs = [cmake libgcrypt json_c curl expat stdenv binutils boost boost.lib];
+  buildInputs = [cmake libgcrypt json_c curl expat stdenv binutils boost];
 
   # work around new binutils headers, see
   # http://stackoverflow.com/questions/11748035/binutils-bfd-h-wants-config-h-now
diff --git a/pkgs/tools/filesystems/jfsrec/default.nix b/pkgs/tools/filesystems/jfsrec/default.nix
deleted file mode 100644
index 5b5e7c8808e1..000000000000
--- a/pkgs/tools/filesystems/jfsrec/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ stdenv, fetchurl, boost }:
-
-stdenv.mkDerivation {
-  name = "jfsrec-0-pre-svn-7";
-
-  src = fetchurl {
-    url = mirror://sourceforge/jfsrec/jfsrec-svn-7.tar.gz;
-    sha256 = "163z6ljr05vw2k5mj4fim2nlg4khjyibrii95370pvn474mg28vg";
-  };
-
-  patches = [ ./jfsrec-gcc-4.3.patch ];
-  buildInputs = [ boost ];
-
-  preConfigure =
-    ''
-      sed -e '/[#]include [<]config.h[>]/a\#include <string.h>' -i src/unicode_to_utf8.cpp
-    '';
-
-  meta = {
-    description = "JFS recovery tool";
-    homepage = http://jfsrec.sourceforge.net/;
-  };
-}
diff --git a/pkgs/tools/filesystems/jfsrec/jfsrec-gcc-4.3.patch b/pkgs/tools/filesystems/jfsrec/jfsrec-gcc-4.3.patch
deleted file mode 100644
index 063a7c24813b..000000000000
--- a/pkgs/tools/filesystems/jfsrec/jfsrec-gcc-4.3.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-Taken from Archlinux, although this solves the build in gcc 4.4, not 4.3.
-http://aur.archlinux.org/packages/jfsrec-svn/jfsrec-svn/jfsrec-gcc-4.3.patch
-diff -uBdr jfsrec/src/device.cpp jfsrec-build/src/device.cpp
---- jfsrec/src/device.cpp	2009-12-01 18:34:03.860437077 +0100
-+++ jfsrec-build/src/device.cpp	2009-12-01 18:39:48.297067088 +0100
-@@ -20,6 +20,7 @@
- //Parts of the code in this file was originally taken from JFS's xpeek (debugfs_jfs)
- 
- #include "device.h"
-+#include <stdio.h>
- #ifdef __linux__
-  #include <linux/fs.h>
-  #include <sys/ioctl.h>
-diff -uBdr jfsrec/src/unicode_to_utf8.cpp jfsrec-build/src/unicode_to_utf8.cpp
---- jfsrec/src/unicode_to_utf8.cpp	2009-12-01 18:34:03.860437077 +0100
-+++ jfsrec-build/src/unicode_to_utf8.cpp	2009-12-01 18:39:43.501626737 +0100
-@@ -8,6 +8,7 @@
-  */
- #include <config.h>
- #include "unicode_to_utf8.h"
-+#include <string.h>
- #define JFS_PATH_MAX 4096
- 
- /*
diff --git a/pkgs/tools/filesystems/nilfs-utils/default.nix b/pkgs/tools/filesystems/nilfs-utils/default.nix
index db1b3fcf44e5..93f15675bd76 100644
--- a/pkgs/tools/filesystems/nilfs-utils/default.nix
+++ b/pkgs/tools/filesystems/nilfs-utils/default.nix
@@ -1,52 +1,38 @@
-x@{builderDefsPackage
-  , libuuid
-  , ...}:
-builderDefsPackage
-(a :  
+{ stdenv, fetchurl, libuuid, libselinux }:
 let 
-  helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++ 
-    [];
-
-  buildInputs = map (n: builtins.getAttr n x)
-    (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
-    version = "2.0.19";
+    version = "2.2.2";
     url = "http://www.nilfs.org/download/nilfs-utils-${version}.tar.bz2";
-    hash = "0q9cb6ny0ah1s9rz1rgqka1pxdm3xvg0ywcqyhzcz4yhamfhg100";
+    sha256 = "1w2i5wy290y03hg72lhkrnmfhap04ki0kkv5m8q60a2frbv6ydql";
     baseName = "nilfs-utils";
     name = "${baseName}-${version}";
   };
 in
-rec {
-  src = a.fetchurl {
+stdenv.mkDerivation rec {
+  src = fetchurl {
     url = sourceInfo.url;
-    sha256 = sourceInfo.hash;
+    sha256 = sourceInfo.sha256;
   };
 
   inherit (sourceInfo) name version;
-  inherit buildInputs;
-
-  /* doConfigure should be removed if not needed */
-  phaseNames = ["doFixPaths" "doConfigure" "doMakeInstall"];
+  buildInputs = [libuuid libselinux];
 
-  doFixPaths = a.fullDepEntry (''
-    sed -e '/sysconfdir=\/etc/d; /sbindir=\/sbin/d' -i configure
-    sed -e 's@/sbin/@'"$out"'/sbin/@' -i ./sbin/mount/cleaner_ctl.c
-  '') ["doUnpack" "minInit"];
+  preConfigure = ''
+    sed -e '/sysconfdir=\/etc/d; ' -i configure
+    sed -e "s@sbindir=/sbin@sbindir=$out/sbin@" -i configure
+    sed -e 's@/sbin/@'"$out"'/sbin/@' -i ./lib/cleaner*.c
+  '';
 
   meta = {
     description = "NILFS utilities";
-    maintainers = with a.lib.maintainers;
+    maintainers = with stdenv.lib.maintainers;
     [
       raskin
     ];
-    platforms = with a.lib.platforms;
+    platforms = with stdenv.lib.platforms;
       linux;
+    downloadPage = "http://nilfs.sourceforge.net/en/download.html";
+    updateWalker = true;
+    inherit version;
   };
-  passthru = {
-    updateInfo = {
-      downloadPage = "http://www.nilfs.org/download/?C=M;O=D";
-    };
-  };
-}) x
-
+}
diff --git a/pkgs/tools/graphics/enblend-enfuse/default.nix b/pkgs/tools/graphics/enblend-enfuse/default.nix
index ac49a3c13a34..6b65d3df0d3f 100644
--- a/pkgs/tools/graphics/enblend-enfuse/default.nix
+++ b/pkgs/tools/graphics/enblend-enfuse/default.nix
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
     sha256 = "1b7r1nnwaind0344ckwggy0ghl0ipbk9jzylsxcjfl05rnasw00w";
   };
 
-  buildInputs = [ boost boost.lib freeglut glew gsl lcms2 libpng libtiff libxmi mesa vigra ];
+  buildInputs = [ boost freeglut glew gsl lcms2 libpng libtiff libxmi mesa vigra ];
 
   nativeBuildInputs = [ perl pkgconfig ];
 
diff --git a/pkgs/tools/graphics/povray/default.nix b/pkgs/tools/graphics/povray/default.nix
index b4a1d1a7d67a..79ca54fe0ed5 100644
--- a/pkgs/tools/graphics/povray/default.nix
+++ b/pkgs/tools/graphics/povray/default.nix
@@ -1,6 +1,5 @@
-{stdenv, fetchgit, autoconf, automake, boost149, zlib, libpng, libjpeg, libtiff}:
+{stdenv, fetchgit, autoconf, automake, boost, zlib, libpng, libjpeg, libtiff}:
 
-let boost = boost149; in
 stdenv.mkDerivation {
   name = "povray-3.7";
 
@@ -24,7 +23,7 @@ stdenv.mkDerivation {
                  sed -i -e 's/^povgroup.*/povgroup=nogroup/' Makefile.{am,in}
                '';
 
-  configureFlags = "COMPILED_BY='nix' --with-boost-libdir=${boost}/lib --with-boost-includedir=${boost}/include";
+  configureFlags = [ "COMPILED_BY='nix'" ];
 
   preInstall = ''
     mkdir "$TMP/bin"
diff --git a/pkgs/tools/misc/pipelight/default.nix b/pkgs/tools/misc/pipelight/default.nix
index c2ae62ff688d..42882c2701a7 100644
--- a/pkgs/tools/misc/pipelight/default.nix
+++ b/pkgs/tools/misc/pipelight/default.nix
@@ -3,13 +3,13 @@
   }:
 
 let
-  wine_patches_version = "1.7.28";
-  wine_hash = "04r3zk3dz2vzly2a4nqbcvppjs5iy3lq5ibx3wfrf877p5bz3hv7";
+  wine_patches_version = "1.7.30";
+  wine_hash = "0v08w2av46y4wxrl8q4k9fhbi2cgawjaxclahqnpfw098bqcmxqh";
 
   wine_patches = fetchgit {
     url = "git://github.com/compholio/wine-compholio.git";
     rev = "refs/tags/v${wine_patches_version}";
-    sha256 = "17f1wmxbx6ly1ws4p528ijf9b4yvmnmap5k7npw9icvkyaky5xi9";
+    sha256 = "02i0bpxxiyxavlcd5qm7wv0q4bm9bxr3ng3w2k234ww7cyndm0ws";
   };
 
   wine_custom =
@@ -45,13 +45,13 @@ let
 
 in stdenv.mkDerivation rec {
 
-  version = "0.2.7.2";
+  version = "0.2.7.3";
 
   name = "pipelight-${version}";
 
   src = fetchurl {
     url = "https://bitbucket.org/mmueller2012/pipelight/get/v${version}.tar.gz";
-    sha256 = "02132151091f1f62d7409a537649efc86deb0eb4a323fd66907fc22947e2cfbd";
+    sha256 = "0lifgs3aakyxfk6r2f2p27z0iqzgz1dinqfgwx3vdh3l93s8aifv";
   };
 
   buildInputs = [ wine_custom xlibs.libX11 gcc48_multi mesa curl ];
diff --git a/pkgs/tools/misc/pipelight/pipelight.patch b/pkgs/tools/misc/pipelight/pipelight.patch
index 84f1b137b72b..bde6ecf943d9 100644
--- a/pkgs/tools/misc/pipelight/pipelight.patch
+++ b/pkgs/tools/misc/pipelight/pipelight.patch
@@ -66,33 +66,6 @@ diff -urN pipelight.old/configure pipelight.new/configure
  moz_plugin_path=""
  gcc_runtime_dlls=""
  so_mode="0644"
-diff -urN pipelight.old/Makefile pipelight.new/Makefile
---- pipelight.old/Makefile	2014-07-19 22:53:02.000000000 +0200
-+++ pipelight.new/Makefile	2014-07-26 23:25:22.020707765 +0200
-@@ -29,7 +29,7 @@
-			-e 's|@@BINDIR@@|$(bindir)|g' \
-			-e 's|@@DATADIR@@|$(datadir)|g' \
-			-e 's|@@GCC_RUNTIME_DLLS@@|$(gcc_runtime_dlls)|g' \
--			-e 's|@@GPG@@|$(gpgexec)|g' \
-+			-e 's|@@GPG@@|$(gpg_exec)|g' \
-			-e 's|@@LIBDIR@@|$(libdir)|g' \
-			-e 's|@@MANDIR@@|$(mandir)|g' \
-			-e 's|@@MOZ_PLUGIN_PATH@@|$(moz_plugin_path)|g' \
-@@ -69,12 +69,12 @@
-
- .PHONY: prebuilt32
- prebuilt32: config.make pluginloader-$(git_commit).tar.gz pluginloader-$(git_commit).tar.gz.sig
--	$(gpgexec) --batch --no-default-keyring --keyring "share/sig-pluginloader.gpg" --verify "pluginloader-$(git_commit).tar.gz.sig"
-+	$(gpg_exec) --batch --no-default-keyring --keyring "share/sig-pluginloader.gpg" --verify "pluginloader-$(git_commit).tar.gz.sig"
-	tar -xvf "pluginloader-$(git_commit).tar.gz" src/windows/pluginloader.exe src/winecheck/winecheck.exe
-
- .PHONY: prebuilt64
- prebuilt64: config.make pluginloader-$(git_commit).tar.gz pluginloader-$(git_commit).tar.gz.sig
--	$(gpgexec) --batch --no-default-keyring --keyring "share/sig-pluginloader.gpg" --verify "pluginloader-$(git_commit).tar.gz.sig"
-+	$(gpg_exec) --batch --no-default-keyring --keyring "share/sig-pluginloader.gpg" --verify "pluginloader-$(git_commit).tar.gz.sig"
-	tar -xvf "pluginloader-$(git_commit).tar.gz" src/windows/pluginloader64.exe src/winecheck/winecheck64.exe
-
- .PHONY: pluginloader32
 diff -urN pipelight.old/share/install-dependency pipelight.new/share/install-dependency
 --- pipelight.old/share/install-dependency	2014-07-19 22:53:02.000000000 +0200
 +++ pipelight.new/share/install-dependency	2014-07-26 23:26:18.431938546 +0200
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index 2c2edebc9657..57f002d42b6f 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -1,14 +1,14 @@
 { stdenv, fetchurl, python, zip }:
 
 let
-  version = "2014.10.30";
+  version = "2014.11.02.1";
 in
 stdenv.mkDerivation rec {
   name = "youtube-dl-${version}";
 
   src = fetchurl {
     url = "http://youtube-dl.org/downloads/${version}/${name}.tar.gz";
-    sha256 = "1fl8lf8ddg2vqjzzhh9idrmva10x9hc6n78q3vbgh16gvpg35c3y";
+    sha256 = "17k0vcggb75nyl8ikamvz0i8q1hqm84qii7fidvnzdcf2v6fakif";
   };
 
   buildInputs = [ python ];
diff --git a/pkgs/tools/networking/badvpn/default.nix b/pkgs/tools/networking/badvpn/default.nix
index 64f669a480e2..e11d454154b6 100644
--- a/pkgs/tools/networking/badvpn/default.nix
+++ b/pkgs/tools/networking/badvpn/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, cmake, openssl, nss, pkgconfig, nspr, bash}:
+{stdenv, fetchurl, cmake, openssl, nss, pkgconfig, nspr, bash, debug ? false}:
 let
   s = # Generated upstream information
   rec {
@@ -12,6 +12,7 @@ let
   buildInputs = [
     cmake openssl nss pkgconfig nspr
   ];
+  compileFlags = "-O3 ${stdenv.lib.optionalString (!debug) "-DNDEBUG"}";
 in
 stdenv.mkDerivation {
   inherit (s) name version;
@@ -23,6 +24,7 @@ stdenv.mkDerivation {
   preConfigure = ''
     find . -name '*.sh' -exec sed -e 's@#!/bin/sh@${stdenv.shell}@' -i '{}' ';'
     find . -name '*.sh' -exec sed -e 's@#!/bin/bash@${bash}/bin/bash@' -i '{}' ';'
+    cmakeFlagsArray=("-DCMAKE_BUILD_TYPE=" "-DCMAKE_C_FLAGS=${compileFlags}");
   '';
 
   meta = {
diff --git a/pkgs/tools/networking/iperf/3.nix b/pkgs/tools/networking/iperf/3.nix
index 3a9d49f8330e..e8b3c79d5ccf 100644
--- a/pkgs/tools/networking/iperf/3.nix
+++ b/pkgs/tools/networking/iperf/3.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "iperf-3.0.8";
+  name = "iperf-3.0.9";
 
   src = fetchurl {
     url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
-    sha256 = "81b8d91159862896c57f9b90a006e8b5dc22bd94175d97bd0db50b0ae2c1a78e";
+    sha256 = "0n94d6n4nm9b88qyv1pqasrvxqc8kyqvqsdra1rr6syj60mrl920";
   };
 
   postInstall = ''
diff --git a/pkgs/tools/networking/tinc/pre.nix b/pkgs/tools/networking/tinc/pre.nix
index 030cb30a1502..037fddac4d5c 100644
--- a/pkgs/tools/networking/tinc/pre.nix
+++ b/pkgs/tools/networking/tinc/pre.nix
@@ -1,12 +1,12 @@
 { stdenv, fetchgit, autoreconfHook, texinfo, ncurses, readline, zlib, lzo, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "tinc-1.1pre38d7e73";
+  name = "tinc-1.1pref57d53c";
 
   src = fetchgit {
     url = "git://tinc-vpn.org/tinc";
-    rev = "38d7e730e619a8b86dfbf68d77773564595f12a1";
-    sha256 = "0xac1jm6x9lkybd6sz8lfcdrb8h69kh1ckg35ag1rssr45hxikbz";
+    rev = "f57d53c3ad9af89489e15a8cfd94b56937bf3179";
+    sha256 = "0yangrl5krygdk8djryq50qfvxn0ng9zh3aj81q6shaji7gcgiyb";
   };
 
   buildInputs = [ autoreconfHook texinfo ncurses readline zlib lzo openssl ];
diff --git a/pkgs/tools/security/meo/default.nix b/pkgs/tools/security/meo/default.nix
index 051b6579f17a..be678b18dda0 100644
--- a/pkgs/tools/security/meo/default.nix
+++ b/pkgs/tools/security/meo/default.nix
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
 
   buildFlags = "QMAKE=qmake";
 
-  buildInputs = [ openssl pcre qt4 boost boost.lib pkcs11helper ];
+  buildInputs = [ openssl pcre qt4 boost pkcs11helper ];
 
   preConfigure = ''
     sed -i s,-mt$,, meo-gui/meo-gui.pro
diff --git a/pkgs/tools/security/oath-toolkit/default.nix b/pkgs/tools/security/oath-toolkit/default.nix
index 80ab866e1f3f..8f96a5067d12 100644
--- a/pkgs/tools/security/oath-toolkit/default.nix
+++ b/pkgs/tools/security/oath-toolkit/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, pam }:
 
 stdenv.mkDerivation rec {
-  name = "oath-toolkit-2.0.2";
+  name = "oath-toolkit-2.4.1";
 
   src = fetchurl {
     url = "mirror://savannah/oath-toolkit/${name}.tar.gz";
-    sha256 = "0i2rf5j83kb8h3sd9lsm0a46zq805kzagvccc4rk7879lg1fnl99";
+    sha256 = "094vbq66sn5f2dsy14hajpsfdnaivjxf70xzs91nrsq0q75l5ylv";
   };
 
   buildInputs = [ pam ];
diff --git a/pkgs/tools/system/freeipmi/default.nix b/pkgs/tools/system/freeipmi/default.nix
index 8f94b21a7712..c07d5d988054 100644
--- a/pkgs/tools/system/freeipmi/default.nix
+++ b/pkgs/tools/system/freeipmi/default.nix
@@ -1,12 +1,12 @@
 { fetchurl, stdenv, libgcrypt, readline }:
 
 stdenv.mkDerivation rec {
-  version = "1.4.5";
+  version = "1.4.6";
   name = "freeipmi-${version}";
 
   src = fetchurl {
     url = "mirror://gnu/freeipmi/${name}.tar.gz";
-    sha256 = "033zakrk3kvi4y41kslicr90b3yb2kj052cl6nbja7ybn70y9nkz";
+    sha256 = "1br68qlg0hw6mc4v64hliqydl83qg2ldfxc50yi4xvca6wll6h3f";
   };
 
   buildInputs = [ libgcrypt readline ];
diff --git a/pkgs/tools/system/ioping/default.nix b/pkgs/tools/system/ioping/default.nix
index 588da0624ce6..932b68197ce6 100644
--- a/pkgs/tools/system/ioping/default.nix
+++ b/pkgs/tools/system/ioping/default.nix
@@ -10,15 +10,16 @@ let
     (builtins.attrNames (builtins.removeAttrs x helperArgNames));
   sourceInfo = rec {
     baseName="ioping";
-    version = "0.8";
+    version = "0.9";
     name="${baseName}-${version}";
-    url="http://ioping.googlecode.com/files/${name}.tar.gz";
+    url="https://docs.google.com/uc?id=0B_PlDc2qaehFWWtLZ3Z3N1ltdm8&export=download";
   };
 in
 rec {
   src = a.fetchurl {
     url = sourceInfo.url;
-    sha256 = "0j7yal61nby1lkg9wnr6lxfljbd7wl3n0z8khqwvc9lf57bxngz2";
+    name = "${sourceInfo.name}.tar.gz";
+    sha256 = "0pbp7b3304y9yyv2w41l3898h5q8w77hnnnq1vz8qz4qfl4467lm";
   };
 
   inherit (sourceInfo) name version;
@@ -39,7 +40,7 @@ rec {
     platforms = with a.lib.platforms;
       linux;
     license = a.lib.licenses.gpl3Plus;
-    downloadPage = "http://code.google.com/p/ioping/downloads/list";
+    homepage = "http://code.google.com/p/ioping/";
     inherit version;
   };
 }) x
diff --git a/pkgs/tools/system/ioping/default.upstream b/pkgs/tools/system/ioping/default.upstream
deleted file mode 100644
index e51cb487852d..000000000000
--- a/pkgs/tools/system/ioping/default.upstream
+++ /dev/null
@@ -1,5 +0,0 @@
-url http://code.google.com/p/ioping/downloads/list
-version_link '[.]tar[.][a-z0-9]+$'
-process 'code[.]google[.]com//' ''
-
-do_overwrite() { do_overwrite_just_version; }
diff --git a/pkgs/tools/system/monit/default.nix b/pkgs/tools/system/monit/default.nix
index 41a94ff2f2e3..1b15fbbb6281 100644
--- a/pkgs/tools/system/monit/default.nix
+++ b/pkgs/tools/system/monit/default.nix
@@ -1,11 +1,11 @@
 {stdenv, fetchurl, openssl, bison, flex, pam, usePAM ? stdenv.isLinux }:
 
 stdenv.mkDerivation rec {
-  name = "monit-5.8.1";
+  name = "monit-5.10";
   
   src = fetchurl {
     url = "${meta.homepage}dist/${name}.tar.gz";
-    sha256 = "1rbhr3aff8pbiz60r73607hci4yngv5xq1b6yjx9xhks4mwlnpm2";
+    sha256 = "0lwlils6b59kr6zg328q113c7mrpggqydpq4l6j52sqv3dd1b49p";
   };
 
   nativeBuildInputs = [ bison flex ];
diff --git a/pkgs/tools/system/syslog-ng-incubator/default.nix b/pkgs/tools/system/syslog-ng-incubator/default.nix
index 34a0f15ec1db..73d1f8fdff6a 100644
--- a/pkgs/tools/system/syslog-ng-incubator/default.nix
+++ b/pkgs/tools/system/syslog-ng-incubator/default.nix
@@ -1,23 +1,23 @@
-{ stdenv, fetchurl, autoconf, automake, libtool, pkgconfig, glib, syslogng
-, eventlog, perl, python, yacc, riemann_c_client, libivykis, protobufc }:
+{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, glib, syslogng
+, eventlog, perl, python, yacc, riemann_c_client, libivykis, protobufc
+}:
 
 stdenv.mkDerivation rec {
   name = "syslog-ng-incubator-${version}";
-
   version = "0.3.3";
 
-  src = fetchurl {
-    url = "https://github.com/balabit/syslog-ng-incubator/archive/${name}.tar.gz";
-    sha256 = "1yx2gdq1vhrcp113hxgl66z5df4ya9nznvq00nvy4v9yn8wf9fb8";
+  src = fetchFromGitHub {
+    owner = "balabit";
+    repo = "syslog-ng-incubator";
+    rev = name;
+    sha256 = "0pswajcw9f651c1jmprbf1mlr6qadiaplyygz5j16vj0d23x4mal";
   };
 
   buildInputs = [
-    autoconf automake libtool pkgconfig glib syslogng eventlog perl python
+    autoreconfHook pkgconfig glib syslogng eventlog perl python
     yacc riemann_c_client libivykis protobufc
   ];
 
-  preConfigure = "autoreconf -i";
-
   configureFlags = [
     "--without-ivykis"
     "--with-riemann"
diff --git a/pkgs/tools/system/syslog-ng/default.nix b/pkgs/tools/system/syslog-ng/default.nix
index cec906e1f439..a62f81052bad 100644
--- a/pkgs/tools/system/syslog-ng/default.nix
+++ b/pkgs/tools/system/syslog-ng/default.nix
@@ -1,17 +1,16 @@
-{ stdenv, fetchurl, eventlog, pkgconfig, glib, python, systemd, perl
-, riemann_c_client, protobufc, yacc }:
+{ stdenv, fetchurl, eventlog, pkgconfig, glib, python, systemd, perl }:
 
 stdenv.mkDerivation rec {
   name = "syslog-ng-${version}";
 
-  version = "3.6.1";
+  version = "3.5.6";
 
   src = fetchurl {
     url = "http://www.balabit.com/downloads/files?path=/syslog-ng/sources/${version}/source/syslog-ng_${version}.tar.gz";
-    sha256 = "1s3lsxk2pky3jkfamkw5ivpxq2kazikcvdgpmxiyn5w10dwkd0m7";
+    sha256 = "19i1idklpgn6mz0mg7194by5fjgvvh5n4v2a0rr1z0778l2038kc";
   };
 
-  buildInputs = [ eventlog pkgconfig glib python systemd perl riemann_c_client protobufc yacc ];
+  buildInputs = [ eventlog pkgconfig glib python systemd perl ];
 
   configureFlags = [
     "--enable-dynamic-linking"
diff --git a/pkgs/tools/text/source-highlight/default.nix b/pkgs/tools/text/source-highlight/default.nix
index a7d1ddb0f3b5..d5530a3df916 100644
--- a/pkgs/tools/text/source-highlight/default.nix
+++ b/pkgs/tools/text/source-highlight/default.nix
@@ -12,13 +12,11 @@ stdenv.mkDerivation {
     sha256 = "1s49ld8cnpzhhwq0r7s0sfm3cg3nhhm0wla27lwraifrrl3y1cp1";
   };
 
-  configureFlags = [ "--with-boost=${boost}" ];
-
   buildInputs = [ boost ];
 
-  enableParallelBuilding = false;
+  configureFlags = [ "--with-boost=${boost.lib}" ];
 
-  doCheck = true;
+  enableParallelBuilding = false;
 
   meta = {
     description = "Source code renderer with syntax highlighting";
diff --git a/pkgs/tools/typesetting/tex/auctex/default.nix b/pkgs/tools/typesetting/tex/auctex/default.nix
index b3c09952e43f..8624fdf96af7 100644
--- a/pkgs/tools/typesetting/tex/auctex/default.nix
+++ b/pkgs/tools/typesetting/tex/auctex/default.nix
@@ -2,7 +2,7 @@
  
 stdenv.mkDerivation ( rec {
   pname = "auctex";
-  version = "11.87";
+  version = "11.88";
   name = "${pname}-${version}";
 
   meta = {
@@ -12,7 +12,7 @@ stdenv.mkDerivation ( rec {
 
   src = fetchurl {
     url = "mirror://gnu/${pname}/${name}.tar.gz";
-    sha256 = "1wjwpmvhpj8q0zd78lj7vyzqhx4rbdhkflslylkzgnw5wllp5mb3";
+    sha256 = "0gy89nzha20p6m7kpv2nl1fnsfka9scc3mw1lz66fp6czganfs3i";
   };
 
   buildInputs = [ emacs texLive ];
diff --git a/pkgs/tools/typesetting/tex/disser/default.nix b/pkgs/tools/typesetting/tex/disser/default.nix
index eee695ea3e9c..28bcfcd97fe1 100644
--- a/pkgs/tools/typesetting/tex/disser/default.nix
+++ b/pkgs/tools/typesetting/tex/disser/default.nix
@@ -12,11 +12,11 @@ let
     ++ [(a.texLiveAggregationFun {paths=[a.texLive a.texLiveCMSuper];})];
   sourceInfo = rec {
     baseName="disser";
-    version="1.1.8";
+    version="1.3.0";
     name="${baseName}-${version}";
     project="${baseName}";
     url="mirror://sourceforge/project/${project}/${baseName}/${version}/${name}.zip";
-    hash="15509hfcvkk5kfcza149c74qpamwgw88dg0ra749axs8xj8qmlw8";
+    hash="1iab3va6xw53l8xzmd83kbnzqah9f6imzzfd3c2054q53p0ndlim";
   };
 in
 rec {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 79fac68a56a9..8363c64e7d13 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -727,6 +727,8 @@ let
 
   bacula = callPackage ../tools/backup/bacula { };
 
+  bareos = callPackage ../tools/backup/bareos { };
+
   beanstalkd = callPackage ../servers/beanstalkd { };
 
   bgs = callPackage ../tools/X11/bgs { };
@@ -1079,7 +1081,7 @@ let
 
   evtest = callPackage ../applications/misc/evtest { };
 
-  exempi = callPackage ../development/libraries/exempi { };
+  exempi = callPackage ../development/libraries/exempi { boost = boost155; };
 
   execline = callPackage ../tools/misc/execline { };
 
@@ -1179,6 +1181,8 @@ let
 
   frescobaldi = callPackage ../misc/frescobaldi {};
 
+  frostwire = callPackage ../applications/networking/p2p/frostwire { };
+
   ftgl = callPackage ../development/libraries/ftgl { };
 
   ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { };
@@ -1276,7 +1280,7 @@ let
 
   googleAuthenticator = callPackage ../os-specific/linux/google-authenticator { };
 
-  gource = callPackage ../applications/version-management/gource {};
+  gource = callPackage ../applications/version-management/gource { };
 
   gparted = callPackage ../tools/misc/gparted { };
 
@@ -1475,10 +1479,6 @@ let
 
   jdiskreport = callPackage ../tools/misc/jdiskreport { };
 
-  jfsrec = callPackage ../tools/filesystems/jfsrec {
-    boost = boost144;
-  };
-
   jfsutils = callPackage ../tools/filesystems/jfsutils { };
 
   jhead = callPackage ../tools/graphics/jhead { };
@@ -1639,7 +1639,9 @@ let
 
   memtest86plus = callPackage ../tools/misc/memtest86+ { };
 
-  meo = callPackage ../tools/security/meo { };
+  meo = callPackage ../tools/security/meo {
+    boost = boost155;
+  };
 
   mc = callPackage ../tools/misc/mc { };
 
@@ -1808,7 +1810,8 @@ let
 
   nifskope = callPackage ../tools/graphics/nifskope { };
 
-  nilfs_utils = callPackage ../tools/filesystems/nilfs-utils {};
+  nilfs-utils = callPackage ../tools/filesystems/nilfs-utils {};
+  nilfs_utils = nilfs-utils;
 
   nitrogen = callPackage ../tools/X11/nitrogen {};
 
@@ -2342,10 +2345,7 @@ let
 
   socat2pre = lowPrio (callPackage ../tools/networking/socat/2.x.nix { });
 
-  sourceHighlight = callPackage ../tools/text/source-highlight {
-    # Boost 1.54 causes the "test_regexranges" test to fail
-    boost = boost149;
-  };
+  sourceHighlight = callPackage ../tools/text/source-highlight { };
 
   spaceFM = callPackage ../applications/misc/spacefm { };
 
@@ -2748,7 +2748,9 @@ let
 
   xmlstarlet = callPackage ../tools/text/xml/xmlstarlet { };
 
-  xmlto = callPackage ../tools/typesetting/xmlto { };
+  xmlto = callPackage ../tools/typesetting/xmlto {
+    w3m = w3m.override { graphicsSupport = false; };
+  };
 
   xmltv = callPackage ../tools/misc/xmltv { };
 
@@ -3397,6 +3399,16 @@ let
     llvm = llvm_34;
     openblas = openblas_0_2_10;
   };
+  julia032 = let
+    liblapack = liblapack_3_5_0.override {shared = true;};
+  in callPackage ../development/compilers/julia/0.3.2.nix {
+    inherit liblapack;
+    suitesparse = suitesparse.override {
+      inherit liblapack;
+    };
+    llvm = llvm_34;
+    openblas = openblas_0_2_10;
+  };
   julia = julia031;
 
   lazarus = builderDefsPackage (import ../development/compilers/fpc/lazarus.nix) {
@@ -3562,6 +3574,8 @@ let
 
     patoline = callPackage ../tools/typesetting/patoline { };
 
+    gg = callPackage ../development/ocaml-modules/gg { };
+
     gmetadom = callPackage ../development/ocaml-modules/gmetadom { };
 
     js_of_ocaml = callPackage ../development/tools/ocaml/js_of_ocaml { };
@@ -3630,6 +3644,8 @@ let
     ocaml_react = callPackage ../development/ocaml-modules/react { };
     reactivedata = callPackage ../development/ocaml-modules/reactivedata {};
 
+    ocamlscript = callPackage ../development/tools/ocaml/ocamlscript { };
+
     ocamlsdl= callPackage ../development/ocaml-modules/ocamlsdl { };
 
     ocaml_sqlite3 = callPackage ../development/ocaml-modules/sqlite3 { };
@@ -3644,6 +3660,8 @@ let
 
     ocsigen_server = callPackage ../development/ocaml-modules/ocsigen-server { };
 
+    otfm = callPackage ../development/ocaml-modules/otfm { };
+
     ounit = callPackage ../development/ocaml-modules/ounit { };
 
     tyxml = callPackage ../development/ocaml-modules/tyxml { };
@@ -3692,6 +3710,9 @@ let
     uucd = callPackage ../development/ocaml-modules/uucd { };
     uunf = callPackage ../development/ocaml-modules/uunf { };
     uutf = callPackage ../development/ocaml-modules/uutf { };
+
+    vg = callPackage ../development/ocaml-modules/vg { };
+
     xmlm = callPackage ../development/ocaml-modules/xmlm { };
 
     yojson = callPackage ../development/ocaml-modules/yojson { };
@@ -3724,7 +3745,8 @@ let
   opam_1_1 = callPackage ../development/tools/ocaml/opam/1.1.nix {
     inherit (ocamlPackages_4_01_0) ocaml;
   };
-  opam = opam_1_1;
+  opam_1_2_0 = callPackage ../development/tools/ocaml/opam/1.2.0.nix { };
+  opam = opam_1_2_0;
 
   ocamlnat = let callPackage = newScope pkgs.ocamlPackages_3_12_1; in callPackage ../development/ocaml-modules/ocamlnat { };
 
@@ -4177,6 +4199,8 @@ let
 
   guile-opengl = callPackage ../development/guile-modules/guile-opengl { };
 
+  guile-sdl = callPackage ../development/guile-modules/guile-sdl { };
+
   guile-xcb = callPackage ../development/guile-modules/guile-xcb { };
 
   pharo-vm = callPackage_i686 ../development/pharo/vm { };
@@ -4722,7 +4746,9 @@ let
 
   adns = callPackage ../development/libraries/adns { };
 
-  afflib = callPackage ../development/libraries/afflib {};
+  afflib = callPackage ../development/libraries/afflib {
+    automake = automake114x;
+  };
 
   agg = callPackage ../development/libraries/agg { };
 
@@ -4771,8 +4797,6 @@ let
 
   audiofile = callPackage ../development/libraries/audiofile { };
 
-  babl_0_0_22 = callPackage ../development/libraries/babl/0_0_22.nix { };
-
   babl = callPackage ../development/libraries/babl { };
 
   beecrypt = callPackage ../development/libraries/beecrypt { };
@@ -4781,11 +4805,9 @@ let
 
   boolstuff = callPackage ../development/libraries/boolstuff { };
 
-  boost144 = callPackage ../development/libraries/boost/1.44.nix { };
-  boost149 = callPackage ../development/libraries/boost/1.49.nix { };
   boost155 = callPackage ../development/libraries/boost/1.55.nix { };
   boost156 = callPackage ../development/libraries/boost/1.56.nix { };
-  boost = boost155;
+  boost = boost156;
 
   botan = callPackage ../development/libraries/botan { };
   botanUnstable = callPackage ../development/libraries/botan/unstable.nix { };
@@ -5074,14 +5096,7 @@ let
 
   gecode = callPackage ../development/libraries/gecode { };
 
-  gegl = callPackage ../development/libraries/gegl {
-    #  avocodec avformat librsvg
-  };
-
-  gegl_0_0_22 = callPackage ../development/libraries/gegl/0_0_22.nix {
-    #  avocodec avformat librsvg
-    libpng = libpng12;
-  };
+  gegl = callPackage ../development/libraries/gegl { };
 
   geoclue = callPackage ../development/libraries/geoclue {};
 
@@ -5638,6 +5653,10 @@ let
 
   libfaketime = callPackage ../development/libraries/libfaketime { };
 
+  libfakekey = callPackage ../development/libraries/libfakekey {
+    inherit (xlibs) libX11 libXi xextproto;
+  };
+
   libfm = callPackage ../development/libraries/libfm { };
   libfm-extra = callPackage ../development/libraries/libfm {
     extraOnly = true;
@@ -6027,6 +6046,13 @@ let
       else stdenv;
   };
 
+  libtorrentRasterbar_0_16 = callPackage ../development/libraries/libtorrent-rasterbar/0.16.nix {
+    # fix "unrecognized option -arch" error
+    stdenv = if stdenv.isDarwin
+      then clangStdenv
+      else stdenv;
+  };
+
   libtoxcore = callPackage ../development/libraries/libtoxcore { };
 
   libtsm = callPackage ../development/libraries/libtsm { };
@@ -6915,6 +6941,10 @@ let
 
   x264 = callPackage ../development/libraries/x264 { };
 
+  x265 = callPackage ../development/libraries/x265 { };
+
+  x265-hg = callPackage ../development/libraries/x265/hg.nix { };
+
   xapian = callPackage ../development/libraries/xapian { };
 
   xapianBindings = callPackage ../development/libraries/xapian/bindings {  # TODO perl php Java, tcl, C#, python
@@ -7369,9 +7399,7 @@ let
 
   freeswitch = callPackage ../servers/sip/freeswitch { };
 
-  ghostOne = callPackage ../servers/games/ghost-one {
-    boost = boost144.override { taggedLayout = true; };
-  };
+  ghostOne = callPackage ../servers/games/ghost-one { };
 
   ircdHybrid = callPackage ../servers/irc/ircd-hybrid { };
 
@@ -7426,6 +7454,11 @@ let
     syslog      = false; # the patch is not found
     moreheaders = true;
   };
+  nginxUnstable = callPackage ../servers/http/nginx/unstable.nix {
+    fullWebDAV  = true;
+    syslog      = true;
+    moreheaders = true;
+  };
 
   ngircd = callPackage ../servers/irc/ngircd { };
 
@@ -7553,9 +7586,13 @@ let
 
   restund = callPackage ../servers/restund {};
 
-  rethinkdb = callPackage ../servers/nosql/rethinkdb { };
+  rethinkdb = callPackage ../servers/nosql/rethinkdb {
+    boost = boost155;
+  };
 
-  rippled = callPackage ../servers/rippled { };
+  rippled = callPackage ../servers/rippled {
+    boost = boost155;
+  };
 
   s6 = callPackage ../servers/s6 { };
 
@@ -8638,6 +8675,7 @@ let
   kochi-substitute-naga10 = callPackage ../data/fonts/kochi-substitute-naga10 {};
 
   liberation_ttf = callPackage ../data/fonts/redhat-liberation-fonts { };
+  liberation_ttf_binary = callPackage ../data/fonts/redhat-liberation-fonts/binary.nix { };
 
   libertine = builderDefsPackage (import ../data/fonts/libertine) {
     inherit fetchurl fontforge lib;
@@ -8960,7 +8998,6 @@ let
 
   compiz = callPackage ../applications/window-managers/compiz {
     inherit (gnome) GConf ORBit2 metacity;
-    boost = boost149; # https://bugs.launchpad.net/compiz/+bug/1131864
   };
 
   coriander = callPackage ../applications/video/coriander {
@@ -9102,9 +9139,13 @@ let
     withX = false;
   }));
 
-  emacs24Macport = lowPrio (callPackage ../applications/editors/emacs-24/macport.nix {
+  emacs24Macport_24_3 = lowPrio (callPackage ../applications/editors/emacs-24/macport-24.3.nix {
+    stdenv = pkgs.clangStdenv;
+  });
+  emacs24Macport_24_4 = lowPrio (callPackage ../applications/editors/emacs-24/macport-24.4.nix {
     stdenv = pkgs.clangStdenv;
   });
+  emacs24Macport = self.emacs24Macport_24_4;
 
   emacsPackages = emacs: self: let callPackage = newScope self; in rec {
     inherit emacs;
@@ -9397,8 +9438,8 @@ let
   firefox-bin = callPackage ../applications/networking/browsers/firefox-bin {
     gconf = pkgs.gnome.GConf;
     inherit (pkgs.gnome) libgnome libgnomeui;
-    inherit (pkgs.xlibs) libX11 libXScrnSaver libXext
-      libXinerama libXrender libXt;
+    inherit (pkgs.xlibs) libX11 libXScrnSaver libXcomposite libXdamage libXext
+      libXfixes libXinerama libXrender libXt;
   };
 
   flac = callPackage ../applications/audio/flac { };
@@ -9635,7 +9676,9 @@ let
     fltk = fltk13;
   };
 
-  hugin = callPackage ../applications/graphics/hugin { };
+  hugin = callPackage ../applications/graphics/hugin {
+    boost = boost155;
+  };
 
   hydrogen = callPackage ../applications/audio/hydrogen { };
 
@@ -9736,7 +9779,7 @@ let
 
   k3d = callPackage ../applications/graphics/k3d {
     inherit (pkgs.gnome2) gtkglext;
-    boost = boost149;
+    boost = boost155;
   };
 
   keepnote = callPackage ../applications/office/keepnote {
@@ -9777,6 +9820,8 @@ let
 
   lbdb = callPackage ../tools/misc/lbdb { };
 
+  lbzip2 = callPackage ../tools/compression/lbzip2 { };
+
   lci = callPackage ../applications/science/logic/lci {};
 
   ldcpp = callPackage ../applications/networking/p2p/ldcpp {
@@ -9794,6 +9839,7 @@ let
     inherit (gnome) GConf ORBit2 gnome_vfs;
     zip = zip.override { enableNLS = false; };
     jdk = openjdk;
+    boost = boost155;
     fontsConf = makeFontsConf {
       fontDirectories = [
         freefont_ttf xorg.fontmiscmisc xorg.fontbhttf
@@ -9929,7 +9975,6 @@ let
 
   monotone = callPackage ../applications/version-management/monotone {
     lua = lua5;
-    boost = boost149;
   };
 
   monotoneViz = builderDefsPackage (import ../applications/version-management/monotone-viz/mtn-head.nix) {
@@ -10194,7 +10239,10 @@ let
 
   pianobooster = callPackage ../applications/audio/pianobooster { };
 
-  picard = callPackage ../applications/audio/picard { };
+  picard = callPackage ../applications/audio/picard {
+    python-libdiscid = pythonPackages.discid;
+    mutagen = pythonPackages.mutagen;
+  };
 
   picocom = callPackage ../tools/misc/picocom { };
 
@@ -10254,7 +10302,9 @@ let
 
   pythonmagick = callPackage ../applications/graphics/PythonMagick { };
 
-  qbittorrent = callPackage ../applications/networking/p2p/qbittorrent { };
+  qbittorrent = callPackage ../applications/networking/p2p/qbittorrent {
+    libtorrentRasterbar = libtorrentRasterbar_0_16;
+  };
 
   eiskaltdcpp = callPackage ../applications/networking/p2p/eiskaltdcpp { lua5 = lua5_1; };
 
@@ -10393,9 +10443,7 @@ let
                                     })
                                  );
 
-  sxiv = callPackage ../applications/graphics/sxiv {
-    giflib = giflib_5_0;
-  };
+  sxiv = callPackage ../applications/graphics/sxiv { };
 
   bittorrentSync = callPackage ../applications/networking/bittorrentsync { };
 
@@ -11190,7 +11238,9 @@ let
 
   glestae = callPackage ../games/glestae {};
 
-  globulation2 = callPackage ../games/globulation {};
+  globulation2 = callPackage ../games/globulation {
+    boost = boost155;
+  };
 
   gltron = callPackage ../games/gltron { };
 
@@ -11209,7 +11259,9 @@ let
 
   icbm3d = callPackage ../games/icbm3d { };
 
-  ingen = callPackage ../applications/audio/ingen { };
+  ingen = callPackage ../applications/audio/ingen {
+    boost = boost155;
+  };
 
   instead = callPackage ../games/instead {
     lua = lua5;
@@ -11314,7 +11366,9 @@ let
   # You still can override by passing more arguments.
   spaceOrbit = callPackage ../games/orbit { };
 
-  spring = callPackage ../games/spring { };
+  spring = callPackage ../games/spring {
+    boost = boost155;
+  };
 
   springLobby = callPackage ../games/spring/springlobby.nix { };
 
diff --git a/pkgs/top-level/haskell-packages.nix b/pkgs/top-level/haskell-packages.nix
index 8ecda80cc4f1..890d95b21a82 100644
--- a/pkgs/top-level/haskell-packages.nix
+++ b/pkgs/top-level/haskell-packages.nix
@@ -361,10 +361,15 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   cabalMacosx = callPackage ../development/libraries/haskell/cabal-macosx {};
 
-  cairo = callPackage ../development/libraries/haskell/cairo {
+  cairo_0_12_5_3 = callPackage ../development/libraries/haskell/cairo/0.12.5.3.nix {
     inherit (pkgs) cairo zlib;
     libc = pkgs.stdenv.gcc.libc;
   };
+  cairo_0_13_0_4 = callPackage ../development/libraries/haskell/cairo/0.13.0.4.nix {
+    inherit (pkgs) cairo zlib;
+    libc = pkgs.stdenv.gcc.libc;
+  };
+  cairo = self.cairo_0_13_0_4;
 
   carray = callPackage ../development/libraries/haskell/carray {};
 
@@ -747,6 +752,14 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   elmServer = callPackage ../development/compilers/elm/elm-server.nix {};
 
+  elmRepl = callPackage ../development/compilers/elm/elm-repl.nix {};
+
+  elmReactor = callPackage ../development/compilers/elm/elm-reactor.nix {};
+
+  elmGet = callPackage ../development/compilers/elm/elm-get.nix {
+    optparseApplicative = self.optparseApplicative_0_10_0;
+  };
+
   emailValidate = callPackage ../development/libraries/haskell/email-validate {};
 
   enclosedExceptions = callPackage ../development/libraries/haskell/enclosed-exceptions {};
@@ -966,10 +979,15 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   GLFWB = callPackage ../development/libraries/haskell/GLFW-b {};
 
-  glib = callPackage ../development/libraries/haskell/glib {
+  glib_0_12_5_4 = callPackage ../development/libraries/haskell/glib/0.12.5.4.nix {
+    glib = pkgs.glib;
+    libc = pkgs.stdenv.gcc.libc;
+  };
+  glib_0_13_0_5 = callPackage ../development/libraries/haskell/glib/0.13.0.5.nix {
     glib = pkgs.glib;
     libc = pkgs.stdenv.gcc.libc;
   };
+  glib = self.glib_0_13_0_5;
 
   Glob = callPackage ../development/libraries/haskell/Glob {};
 
@@ -1020,10 +1038,18 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   gsasl = callPackage ../development/libraries/haskell/gsasl { inherit (pkgs) gsasl; };
 
-  gtk = callPackage ../development/libraries/haskell/gtk {
+  gtk_0_12_5_7 = callPackage ../development/libraries/haskell/gtk/0.12.5.7.nix {
     inherit (pkgs) gtk;
     libc = pkgs.stdenv.gcc.libc;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
+    pango = self.pango_0_12_5_3;
   };
+  gtk_0_13_0_3 = callPackage ../development/libraries/haskell/gtk/0.13.0.3.nix {
+    inherit (pkgs) gtk;
+    libc = pkgs.stdenv.gcc.libc;
+  };
+  gtk = self.gtk_0_13_0_3;
 
   gtk3 = callPackage ../development/libraries/haskell/gtk3 {
     inherit (pkgs) gtk3;
@@ -1303,6 +1329,8 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
     };
   };
 
+  hsc3Server = callPackage ../development/libraries/haskell/hsc3-server {};
+
   hsdns = callPackage ../development/libraries/haskell/hsdns {};
 
   hsemail = callPackage ../development/libraries/haskell/hsemail {};
@@ -1894,10 +1922,17 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   pandocTypes = callPackage ../development/libraries/haskell/pandoc-types {};
 
-  pango = callPackage ../development/libraries/haskell/pango {
+  pango_0_12_5_3 = callPackage ../development/libraries/haskell/pango/0.12.5.3.nix {
     inherit (pkgs) pango;
     libc = pkgs.stdenv.gcc.libc;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
   };
+  pango_0_13_0_3 = callPackage ../development/libraries/haskell/pango/0.13.0.3.nix {
+    inherit (pkgs) pango;
+    libc = pkgs.stdenv.gcc.libc;
+  };
+  pango = self.pango_0_13_0_3;
 
   parallel_1_1_0_1 = callPackage ../development/libraries/haskell/parallel/1.1.0.1.nix {};
   parallel_2_2_0_1 = callPackage ../development/libraries/haskell/parallel/2.2.0.1.nix {};
@@ -3005,8 +3040,6 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   Agda = callPackage ../development/compilers/agda { haskellSrcExts = self.haskellSrcExts_1_15_0_1; };
 
-  uhc = callPackage ../development/compilers/uhc {};
-
   epic = callPackage ../development/compilers/epic {};
 
   pakcs = callPackage ../development/compilers/pakcs {};
@@ -3085,7 +3118,7 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
     };
   };
 
-  hscope = callPackage ../development/tools/haskell/hscope { testSimple = null; };
+  hscope = callPackage ../development/tools/haskell/hscope { };
 
   hslogger = callPackage ../development/tools/haskell/hslogger {};
 
@@ -3099,7 +3132,12 @@ self : let callPackage = x : y : modifyPrio (newScope self x y); in
 
   tar = callPackage ../development/libraries/haskell/tar {};
 
-  threadscope = callPackage ../development/tools/haskell/threadscope {};
+  threadscope = callPackage ../development/tools/haskell/threadscope {
+    gtk = self.gtk_0_12_5_7;
+    glib = self.glib_0_12_5_4;
+    cairo = self.cairo_0_12_5_3;
+    pango = self.pango_0_12_5_3;
+  };
 
   uuagcBootstrap = callPackage ../development/tools/haskell/uuagc/bootstrap.nix {};
   uuagcCabal = callPackage ../development/tools/haskell/uuagc/cabal.nix {};
diff --git a/pkgs/top-level/node-packages-generated.nix b/pkgs/top-level/node-packages-generated.nix
index 75694d51655e..4bbdb6682c6c 100644
--- a/pkgs/top-level/node-packages-generated.nix
+++ b/pkgs/top-level/node-packages-generated.nix
@@ -1,6 +1,28 @@
 { self, fetchurl, fetchgit ? null, lib }:
 
 {
+  by-spec."7f"."*" =
+    self.by-version."7f"."1.1.3";
+  by-version."7f"."1.1.3" = lib.makeOverridable self.buildNodePackage {
+    name = "7f-1.1.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/7f/-/7f-1.1.3.tgz";
+        name = "7f-1.1.3.tgz";
+        sha1 = "88d2cb194fceeb96db7b24bc710b283451e7a851";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."7f" or []);
+    deps = {
+      "bits-0.1.1" = self.by-version."bits"."0.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "7f" ];
+  };
+  "7f" = self.by-version."7f"."1.1.3";
   by-spec."Base64"."~0.2.0" =
     self.by-version."Base64"."0.2.1";
   by-version."Base64"."0.2.1" = lib.makeOverridable self.buildNodePackage {
@@ -21,6 +43,28 @@
     ];
     passthru.names = [ "Base64" ];
   };
+  by-spec."JSONStream"."~0.6.4" =
+    self.by-version."JSONStream"."0.6.4";
+  by-version."JSONStream"."0.6.4" = lib.makeOverridable self.buildNodePackage {
+    name = "JSONStream-0.6.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/JSONStream/-/JSONStream-0.6.4.tgz";
+        name = "JSONStream-0.6.4.tgz";
+        sha1 = "4b2c8063f8f512787b2375f7ee9db69208fa2dcb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."JSONStream" or []);
+    deps = {
+      "jsonparse-0.0.5" = self.by-version."jsonparse"."0.0.5";
+      "through-2.2.7" = self.by-version."through"."2.2.7";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "JSONStream" ];
+  };
   by-spec."JSONStream"."~0.7.1" =
     self.by-version."JSONStream"."0.7.4";
   by-version."JSONStream"."0.7.4" = lib.makeOverridable self.buildNodePackage {
@@ -286,6 +330,46 @@
   "amdefine" = self.by-version."amdefine"."0.1.0";
   by-spec."amdefine".">=0.0.4" =
     self.by-version."amdefine"."0.1.0";
+  by-spec."ansi"."~0.1.2" =
+    self.by-version."ansi"."0.1.2";
+  by-version."ansi"."0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "ansi-0.1.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ansi/-/ansi-0.1.2.tgz";
+        name = "ansi-0.1.2.tgz";
+        sha1 = "2627e29498f06e2a1c2ece9c21e28fd494430827";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ansi" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ansi" ];
+  };
+  by-spec."ansi"."~0.2.1" =
+    self.by-version."ansi"."0.2.1";
+  by-version."ansi"."0.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "ansi-0.2.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ansi/-/ansi-0.2.1.tgz";
+        name = "ansi-0.2.1.tgz";
+        sha1 = "3ab568ec18cd0ab7753c83117d57dad684a1c017";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ansi" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ansi" ];
+  };
   by-spec."ansi"."~0.3.0" =
     self.by-version."ansi"."0.3.0";
   by-version."ansi"."0.3.0" = lib.makeOverridable self.buildNodePackage {
@@ -470,16 +554,16 @@
     ];
     passthru.names = [ "apparatus" ];
   };
-  by-spec."archiver"."~0.11.0" =
-    self.by-version."archiver"."0.11.0";
-  by-version."archiver"."0.11.0" = lib.makeOverridable self.buildNodePackage {
-    name = "archiver-0.11.0";
+  by-spec."archiver"."~0.12.0" =
+    self.by-version."archiver"."0.12.0";
+  by-version."archiver"."0.12.0" = lib.makeOverridable self.buildNodePackage {
+    name = "archiver-0.12.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/archiver/-/archiver-0.11.0.tgz";
-        name = "archiver-0.11.0.tgz";
-        sha1 = "98177da7a6c0192b7f2798f30cd6eab8abd76690";
+        url = "http://registry.npmjs.org/archiver/-/archiver-0.12.0.tgz";
+        name = "archiver-0.12.0.tgz";
+        sha1 = "b8ccde2508cab9092bb7106630139c0f39a280cc";
       })
     ];
     buildInputs =
@@ -487,18 +571,18 @@
     deps = {
       "async-0.9.0" = self.by-version."async"."0.9.0";
       "buffer-crc32-0.2.3" = self.by-version."buffer-crc32"."0.2.3";
-      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "glob-4.0.6" = self.by-version."glob"."4.0.6";
       "lazystream-0.1.0" = self.by-version."lazystream"."0.1.0";
       "lodash-2.4.1" = self.by-version."lodash"."2.4.1";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
-      "tar-stream-0.4.7" = self.by-version."tar-stream"."0.4.7";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
+      "tar-stream-1.0.2" = self.by-version."tar-stream"."1.0.2";
       "zip-stream-0.4.1" = self.by-version."zip-stream"."0.4.1";
     };
     peerDependencies = [
     ];
     passthru.names = [ "archiver" ];
   };
-  by-spec."archy"."0.0.2" =
+  by-spec."archy"."0" =
     self.by-version."archy"."0.0.2";
   by-version."archy"."0.0.2" = lib.makeOverridable self.buildNodePackage {
     name = "archy-0.0.2";
@@ -518,6 +602,8 @@
     ];
     passthru.names = [ "archy" ];
   };
+  by-spec."archy"."0.0.2" =
+    self.by-version."archy"."0.0.2";
   by-spec."archy"."^0.0.2" =
     self.by-version."archy"."0.0.2";
   by-spec."archy"."~1.0.0" =
@@ -770,6 +856,48 @@
     ];
     passthru.names = [ "assertion-error" ];
   };
+  by-spec."astw"."~0.0.0" =
+    self.by-version."astw"."0.0.0";
+  by-version."astw"."0.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "astw-0.0.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/astw/-/astw-0.0.0.tgz";
+        name = "astw-0.0.0.tgz";
+        sha1 = "4490866a3ef116aaf91adba63ca7ddf70b6d59bd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."astw" or []);
+    deps = {
+      "esprima-1.0.2" = self.by-version."esprima"."1.0.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "astw" ];
+  };
+  by-spec."astw"."~0.1.0" =
+    self.by-version."astw"."0.1.0";
+  by-version."astw"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "astw-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/astw/-/astw-0.1.0.tgz";
+        name = "astw-0.1.0.tgz";
+        sha1 = "098be2758a6e9e9e15465d4fc4ba36265de11085";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."astw" or []);
+    deps = {
+      "esprima-six-0.0.3" = self.by-version."esprima-six"."0.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "astw" ];
+  };
   by-spec."astw"."~1.1.0" =
     self.by-version."astw"."1.1.0";
   by-version."astw"."1.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -934,6 +1062,26 @@
   };
   by-spec."async"."~0.9.0" =
     self.by-version."async"."0.9.0";
+  by-spec."async-each"."~0.1.5" =
+    self.by-version."async-each"."0.1.5";
+  by-version."async-each"."0.1.5" = lib.makeOverridable self.buildNodePackage {
+    name = "async-each-0.1.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/async-each/-/async-each-0.1.5.tgz";
+        name = "async-each-0.1.5.tgz";
+        sha1 = "2427b2d43e1b5eadf6a28b58b2f0e00baa8801a5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."async-each" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "async-each" ];
+  };
   by-spec."async-some"."~1.0.1" =
     self.by-version."async-some"."1.0.1";
   by-version."async-some"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -956,15 +1104,15 @@
     passthru.names = [ "async-some" ];
   };
   by-spec."aws-sdk"."*" =
-    self.by-version."aws-sdk"."2.0.21";
-  by-version."aws-sdk"."2.0.21" = lib.makeOverridable self.buildNodePackage {
-    name = "aws-sdk-2.0.21";
+    self.by-version."aws-sdk"."2.0.23";
+  by-version."aws-sdk"."2.0.23" = lib.makeOverridable self.buildNodePackage {
+    name = "aws-sdk-2.0.23";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.21.tgz";
-        name = "aws-sdk-2.0.21.tgz";
-        sha1 = "aece051188e5d4a13f2432eb1d00f9dd9a81ef54";
+        url = "http://registry.npmjs.org/aws-sdk/-/aws-sdk-2.0.23.tgz";
+        name = "aws-sdk-2.0.23.tgz";
+        sha1 = "be21cab88609918699e79b380e060e02f4c89ba9";
       })
     ];
     buildInputs =
@@ -977,7 +1125,7 @@
     ];
     passthru.names = [ "aws-sdk" ];
   };
-  "aws-sdk" = self.by-version."aws-sdk"."2.0.21";
+  "aws-sdk" = self.by-version."aws-sdk"."2.0.23";
   by-spec."aws-sdk".">=1.2.0 <2" =
     self.by-version."aws-sdk"."1.18.0";
   by-version."aws-sdk"."1.18.0" = lib.makeOverridable self.buildNodePackage {
@@ -1102,6 +1250,26 @@
     ];
     passthru.names = [ "backoff" ];
   };
+  by-spec."backoff"."~2.3.0" =
+    self.by-version."backoff"."2.3.0";
+  by-version."backoff"."2.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "backoff-2.3.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/backoff/-/backoff-2.3.0.tgz";
+        name = "backoff-2.3.0.tgz";
+        sha1 = "ee7c7e38093f92e472859db635e7652454fc21ea";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."backoff" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "backoff" ];
+  };
   by-spec."base62"."0.1.1" =
     self.by-version."base62"."0.1.1";
   by-version."base62"."0.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -1122,6 +1290,26 @@
     ];
     passthru.names = [ "base62" ];
   };
+  by-spec."base64-js"."0.0.6" =
+    self.by-version."base64-js"."0.0.6";
+  by-version."base64-js"."0.0.6" = lib.makeOverridable self.buildNodePackage {
+    name = "base64-js-0.0.6";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/base64-js/-/base64-js-0.0.6.tgz";
+        name = "base64-js-0.0.6.tgz";
+        sha1 = "7b859f79f0bbbd55867ba67a7fab397e24a20947";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."base64-js" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "base64-js" ];
+  };
   by-spec."base64-js"."0.0.7" =
     self.by-version."base64-js"."0.0.7";
   by-version."base64-js"."0.0.7" = lib.makeOverridable self.buildNodePackage {
@@ -1142,6 +1330,8 @@
     ];
     passthru.names = [ "base64-js" ];
   };
+  by-spec."base64-js"."~0.0.4" =
+    self.by-version."base64-js"."0.0.7";
   by-spec."base64-url"."1" =
     self.by-version."base64-url"."1.0.0";
   by-version."base64-url"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -1349,6 +1539,26 @@
     ];
     passthru.names = [ "bindings" ];
   };
+  by-spec."bindings"."1.1.0" =
+    self.by-version."bindings"."1.1.0";
+  by-version."bindings"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "bindings-1.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bindings/-/bindings-1.1.0.tgz";
+        name = "bindings-1.1.0.tgz";
+        sha1 = "f3cc4deec19fe31f255864eb1e6ffad857266ef0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."bindings" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "bindings" ];
+  };
   by-spec."bindings"."1.1.1" =
     self.by-version."bindings"."1.1.1";
   by-version."bindings"."1.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -1371,8 +1581,30 @@
   };
   by-spec."bindings".">=1.2.1" =
     self.by-version."bindings"."1.2.1";
+  by-spec."bindings"."~1.1.1" =
+    self.by-version."bindings"."1.1.1";
   by-spec."bindings"."~1.2.1" =
     self.by-version."bindings"."1.2.1";
+  by-spec."bits"."~0.1.1" =
+    self.by-version."bits"."0.1.1";
+  by-version."bits"."0.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "bits-0.1.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bits/-/bits-0.1.1.tgz";
+        name = "bits-0.1.1.tgz";
+        sha1 = "7082eb8b7bdf12e47b0a8cf8f7ad3af4e7053a96";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."bits" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "bits" ];
+  };
   by-spec."bl"."^0.9.0" =
     self.by-version."bl"."0.9.3";
   by-version."bl"."0.9.3" = lib.makeOverridable self.buildNodePackage {
@@ -1388,7 +1620,7 @@
     buildInputs =
       (self.nativeDeps."bl" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
     };
     peerDependencies = [
     ];
@@ -1420,15 +1652,15 @@
   by-spec."block-stream"."0.0.7" =
     self.by-version."block-stream"."0.0.7";
   by-spec."bluebird".">= 1.2.1" =
-    self.by-version."bluebird"."2.3.6";
-  by-version."bluebird"."2.3.6" = lib.makeOverridable self.buildNodePackage {
-    name = "bluebird-2.3.6";
+    self.by-version."bluebird"."2.3.10";
+  by-version."bluebird"."2.3.10" = lib.makeOverridable self.buildNodePackage {
+    name = "bluebird-2.3.10";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/bluebird/-/bluebird-2.3.6.tgz";
-        name = "bluebird-2.3.6.tgz";
-        sha1 = "aa090a29c1bfbc01089609358f4b1c37683515f9";
+        url = "http://registry.npmjs.org/bluebird/-/bluebird-2.3.10.tgz";
+        name = "bluebird-2.3.10.tgz";
+        sha1 = "a3d76a6e734f60bda9cf8d8e092c7969d8018beb";
       })
     ];
     buildInputs =
@@ -1487,16 +1719,16 @@
     ];
     passthru.names = [ "body-parser" ];
   };
-  by-spec."body-parser"."~1.9.0" =
-    self.by-version."body-parser"."1.9.0";
-  by-version."body-parser"."1.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "body-parser-1.9.0";
+  by-spec."body-parser"."~1.9.2" =
+    self.by-version."body-parser"."1.9.2";
+  by-version."body-parser"."1.9.2" = lib.makeOverridable self.buildNodePackage {
+    name = "body-parser-1.9.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.9.0.tgz";
-        name = "body-parser-1.9.0.tgz";
-        sha1 = "95d72943b1a4f67f56bbac9e0dcc837b68703605";
+        url = "http://registry.npmjs.org/body-parser/-/body-parser-1.9.2.tgz";
+        name = "body-parser-1.9.2.tgz";
+        sha1 = "07f52cf104939118bedcba689002017271ef3c0e";
       })
     ];
     buildInputs =
@@ -1506,8 +1738,8 @@
       "depd-1.0.0" = self.by-version."depd"."1.0.0";
       "iconv-lite-0.4.4" = self.by-version."iconv-lite"."0.4.4";
       "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
-      "qs-2.2.4" = self.by-version."qs"."2.2.4";
+      "on-finished-2.1.1" = self.by-version."on-finished"."2.1.1";
+      "qs-2.3.2" = self.by-version."qs"."2.3.2";
       "raw-body-1.3.0" = self.by-version."raw-body"."1.3.0";
       "type-is-1.5.2" = self.by-version."type-is"."1.5.2";
     };
@@ -1811,6 +2043,49 @@
     passthru.names = [ "bower2nix" ];
   };
   "bower2nix" = self.by-version."bower2nix"."2.1.0";
+  by-spec."bplist-parser"."0.0.5" =
+    self.by-version."bplist-parser"."0.0.5";
+  by-version."bplist-parser"."0.0.5" = lib.makeOverridable self.buildNodePackage {
+    name = "bplist-parser-0.0.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/bplist-parser/-/bplist-parser-0.0.5.tgz";
+        name = "bplist-parser-0.0.5.tgz";
+        sha1 = "07120d9763e7418e5bf353a49820b52aa93622ae";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."bplist-parser" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "bplist-parser" ];
+  };
+  by-spec."brfs"."0.0.8" =
+    self.by-version."brfs"."0.0.8";
+  by-version."brfs"."0.0.8" = lib.makeOverridable self.buildNodePackage {
+    name = "brfs-0.0.8";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/brfs/-/brfs-0.0.8.tgz";
+        name = "brfs-0.0.8.tgz";
+        sha1 = "e4377a177638a4b0520901bb134491dd7e38a386";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."brfs" or []);
+    deps = {
+      "through-2.2.7" = self.by-version."through"."2.2.7";
+      "falafel-0.1.6" = self.by-version."falafel"."0.1.6";
+      "escodegen-0.0.17" = self.by-version."escodegen"."0.0.17";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "brfs" ];
+  };
   by-spec."broadway"."0.2.9" =
     self.by-version."broadway"."0.2.9";
   by-version."broadway"."0.2.9" = lib.makeOverridable self.buildNodePackage {
@@ -1912,16 +2187,61 @@
     ];
     passthru.names = [ "browser-pack" ];
   };
+  by-spec."browser-pack"."~2.0.0" =
+    self.by-version."browser-pack"."2.0.1";
+  by-version."browser-pack"."2.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "browser-pack-2.0.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/browser-pack/-/browser-pack-2.0.1.tgz";
+        name = "browser-pack-2.0.1.tgz";
+        sha1 = "5d1c527f56c582677411c4db2a128648ff6bf150";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browser-pack" or []);
+    deps = {
+      "JSONStream-0.6.4" = self.by-version."JSONStream"."0.6.4";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "combine-source-map-0.3.0" = self.by-version."combine-source-map"."0.3.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browser-pack" ];
+  };
+  by-spec."browser-request".">= 0.2.0" =
+    self.by-version."browser-request"."0.3.2";
+  by-version."browser-request"."0.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "browser-request-0.3.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/browser-request/-/browser-request-0.3.2.tgz";
+        name = "browser-request-0.3.2.tgz";
+        sha1 = "d2e574dccc2ea88de03a2be378b533576fd99620";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browser-request" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browser-request" ];
+  };
+  by-spec."browser-request"."~0.3.1" =
+    self.by-version."browser-request"."0.3.2";
   by-spec."browser-resolve"."^1.3.0" =
-    self.by-version."browser-resolve"."1.3.2";
-  by-version."browser-resolve"."1.3.2" = lib.makeOverridable self.buildNodePackage {
-    name = "browser-resolve-1.3.2";
+    self.by-version."browser-resolve"."1.4.1";
+  by-version."browser-resolve"."1.4.1" = lib.makeOverridable self.buildNodePackage {
+    name = "browser-resolve-1.4.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/browser-resolve/-/browser-resolve-1.3.2.tgz";
-        name = "browser-resolve-1.3.2.tgz";
-        sha1 = "028417dd85828eea872c1bbb3e6609534545d20c";
+        url = "http://registry.npmjs.org/browser-resolve/-/browser-resolve-1.4.1.tgz";
+        name = "browser-resolve-1.4.1.tgz";
+        sha1 = "65ac7963f65bd49fa50711c877a1e273bb17a85b";
       })
     ];
     buildInputs =
@@ -1934,7 +2254,30 @@
     passthru.names = [ "browser-resolve" ];
   };
   by-spec."browser-resolve"."^1.3.1" =
-    self.by-version."browser-resolve"."1.3.2";
+    self.by-version."browser-resolve"."1.4.1";
+  by-spec."browser-resolve"."~1.2.1" =
+    self.by-version."browser-resolve"."1.2.4";
+  by-version."browser-resolve"."1.2.4" = lib.makeOverridable self.buildNodePackage {
+    name = "browser-resolve-1.2.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/browser-resolve/-/browser-resolve-1.2.4.tgz";
+        name = "browser-resolve-1.2.4.tgz";
+        sha1 = "59ae7820a82955ecd32f5fb7c468ac21c4723806";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browser-resolve" or []);
+    deps = {
+      "resolve-0.6.3" = self.by-version."resolve"."0.6.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browser-resolve" ];
+  };
+  by-spec."browser-resolve"."~1.2.2" =
+    self.by-version."browser-resolve"."1.2.4";
   by-spec."browserchannel"."*" =
     self.by-version."browserchannel"."2.0.0";
   by-version."browserchannel"."2.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -1951,8 +2294,8 @@
       (self.nativeDeps."browserchannel" or []);
     deps = {
       "hat-0.0.3" = self.by-version."hat"."0.0.3";
-      "connect-2.27.0" = self.by-version."connect"."2.27.0";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "connect-2.27.2" = self.by-version."connect"."2.27.2";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "ascii-json-0.2.0" = self.by-version."ascii-json"."0.2.0";
     };
     peerDependencies = [
@@ -1961,15 +2304,15 @@
   };
   "browserchannel" = self.by-version."browserchannel"."2.0.0";
   by-spec."browserify"."*" =
-    self.by-version."browserify"."6.1.0";
-  by-version."browserify"."6.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "browserify-6.1.0";
+    self.by-version."browserify"."6.2.0";
+  by-version."browserify"."6.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "browserify-6.2.0";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/browserify/-/browserify-6.1.0.tgz";
-        name = "browserify-6.1.0.tgz";
-        sha1 = "8da16d98a0be638b5e53d1cd560f7f344d238cdb";
+        url = "http://registry.npmjs.org/browserify/-/browserify-6.2.0.tgz";
+        name = "browserify-6.2.0.tgz";
+        sha1 = "e1ab4c357f7751ed8d1503a08cb1d55217bcdd64";
       })
     ];
     buildInputs =
@@ -1978,15 +2321,15 @@
       "JSONStream-0.8.4" = self.by-version."JSONStream"."0.8.4";
       "assert-1.1.2" = self.by-version."assert"."1.1.2";
       "browser-pack-3.2.0" = self.by-version."browser-pack"."3.2.0";
-      "browser-resolve-1.3.2" = self.by-version."browser-resolve"."1.3.2";
+      "browser-resolve-1.4.1" = self.by-version."browser-resolve"."1.4.1";
       "browserify-zlib-0.1.4" = self.by-version."browserify-zlib"."0.1.4";
-      "buffer-2.7.0" = self.by-version."buffer"."2.7.0";
+      "buffer-2.8.1" = self.by-version."buffer"."2.8.1";
       "builtins-0.0.7" = self.by-version."builtins"."0.0.7";
       "commondir-0.0.1" = self.by-version."commondir"."0.0.1";
       "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
       "console-browserify-1.1.0" = self.by-version."console-browserify"."1.1.0";
       "constants-browserify-0.0.1" = self.by-version."constants-browserify"."0.0.1";
-      "crypto-browserify-3.2.8" = self.by-version."crypto-browserify"."3.2.8";
+      "crypto-browserify-3.3.0" = self.by-version."crypto-browserify"."3.3.0";
       "deep-equal-0.2.1" = self.by-version."deep-equal"."0.2.1";
       "defined-0.0.0" = self.by-version."defined"."0.0.0";
       "deps-sort-1.3.5" = self.by-version."deps-sort"."1.3.5";
@@ -2029,7 +2372,214 @@
     ];
     passthru.names = [ "browserify" ];
   };
-  "browserify" = self.by-version."browserify"."6.1.0";
+  "browserify" = self.by-version."browserify"."6.2.0";
+  by-spec."browserify"."3.46.0" =
+    self.by-version."browserify"."3.46.0";
+  by-version."browserify"."3.46.0" = lib.makeOverridable self.buildNodePackage {
+    name = "browserify-3.46.0";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/browserify/-/browserify-3.46.0.tgz";
+        name = "browserify-3.46.0.tgz";
+        sha1 = "dc32dd189efcb0b9e7ca88f5099b11654ab3c50f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browserify" or []);
+    deps = {
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "assert-1.1.2" = self.by-version."assert"."1.1.2";
+      "browser-pack-2.0.1" = self.by-version."browser-pack"."2.0.1";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "browserify-zlib-0.1.4" = self.by-version."browserify-zlib"."0.1.4";
+      "buffer-2.1.13" = self.by-version."buffer"."2.1.13";
+      "builtins-0.0.7" = self.by-version."builtins"."0.0.7";
+      "commondir-0.0.1" = self.by-version."commondir"."0.0.1";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "console-browserify-1.0.3" = self.by-version."console-browserify"."1.0.3";
+      "constants-browserify-0.0.1" = self.by-version."constants-browserify"."0.0.1";
+      "crypto-browserify-1.0.9" = self.by-version."crypto-browserify"."1.0.9";
+      "deep-equal-0.1.2" = self.by-version."deep-equal"."0.1.2";
+      "defined-0.0.0" = self.by-version."defined"."0.0.0";
+      "deps-sort-0.1.2" = self.by-version."deps-sort"."0.1.2";
+      "derequire-0.8.0" = self.by-version."derequire"."0.8.0";
+      "domain-browser-1.1.3" = self.by-version."domain-browser"."1.1.3";
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+      "events-1.0.2" = self.by-version."events"."1.0.2";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "http-browserify-1.3.2" = self.by-version."http-browserify"."1.3.2";
+      "https-browserify-0.0.0" = self.by-version."https-browserify"."0.0.0";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "insert-module-globals-5.0.1" = self.by-version."insert-module-globals"."5.0.1";
+      "module-deps-1.10.0" = self.by-version."module-deps"."1.10.0";
+      "os-browserify-0.1.2" = self.by-version."os-browserify"."0.1.2";
+      "parents-0.0.3" = self.by-version."parents"."0.0.3";
+      "path-browserify-0.0.0" = self.by-version."path-browserify"."0.0.0";
+      "punycode-1.2.4" = self.by-version."punycode"."1.2.4";
+      "querystring-es3-0.2.0" = self.by-version."querystring-es3"."0.2.0";
+      "resolve-0.6.3" = self.by-version."resolve"."0.6.3";
+      "shallow-copy-0.0.1" = self.by-version."shallow-copy"."0.0.1";
+      "shell-quote-0.0.1" = self.by-version."shell-quote"."0.0.1";
+      "stream-browserify-0.1.3" = self.by-version."stream-browserify"."0.1.3";
+      "stream-combiner-0.0.4" = self.by-version."stream-combiner"."0.0.4";
+      "string_decoder-0.0.1" = self.by-version."string_decoder"."0.0.1";
+      "subarg-0.0.1" = self.by-version."subarg"."0.0.1";
+      "syntax-error-1.1.1" = self.by-version."syntax-error"."1.1.1";
+      "through2-0.4.2" = self.by-version."through2"."0.4.2";
+      "timers-browserify-1.0.3" = self.by-version."timers-browserify"."1.0.3";
+      "tty-browserify-0.0.0" = self.by-version."tty-browserify"."0.0.0";
+      "umd-2.0.0" = self.by-version."umd"."2.0.0";
+      "url-0.10.1" = self.by-version."url"."0.10.1";
+      "util-0.10.3" = self.by-version."util"."0.10.3";
+      "vm-browserify-0.0.4" = self.by-version."vm-browserify"."0.0.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browserify" ];
+  };
+  by-spec."browserify"."~3.19.1" =
+    self.by-version."browserify"."3.19.1";
+  by-version."browserify"."3.19.1" = lib.makeOverridable self.buildNodePackage {
+    name = "browserify-3.19.1";
+    bin = true;
+    src = [
+      (self.patchSource fetchurl {
+        url = "http://registry.npmjs.org/browserify/-/browserify-3.19.1.tgz";
+        name = "browserify-3.19.1.tgz";
+        sha1 = "e4e994f7c8313432df46b1a2b029d8bab13a456b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browserify" or []);
+    deps = {
+      "module-deps-1.2.2" = self.by-version."module-deps"."1.2.2";
+      "browser-pack-2.0.1" = self.by-version."browser-pack"."2.0.1";
+      "deps-sort-0.1.2" = self.by-version."deps-sort"."0.1.2";
+      "shell-quote-0.0.1" = self.by-version."shell-quote"."0.0.1";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+      "stream-combiner-0.0.4" = self.by-version."stream-combiner"."0.0.4";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "insert-module-globals-2.3.4" = self.by-version."insert-module-globals"."2.3.4";
+      "syntax-error-0.0.1" = self.by-version."syntax-error"."0.0.1";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "umd-2.0.0" = self.by-version."umd"."2.0.0";
+      "parents-0.0.3" = self.by-version."parents"."0.0.3";
+      "deep-equal-0.1.2" = self.by-version."deep-equal"."0.1.2";
+      "constants-browserify-0.0.1" = self.by-version."constants-browserify"."0.0.1";
+      "os-browserify-0.1.2" = self.by-version."os-browserify"."0.1.2";
+      "console-browserify-1.0.3" = self.by-version."console-browserify"."1.0.3";
+      "vm-browserify-0.0.4" = self.by-version."vm-browserify"."0.0.4";
+      "zlib-browserify-0.0.3" = self.by-version."zlib-browserify"."0.0.3";
+      "assert-1.1.2" = self.by-version."assert"."1.1.2";
+      "http-browserify-1.1.0" = self.by-version."http-browserify"."1.1.0";
+      "crypto-browserify-1.0.9" = self.by-version."crypto-browserify"."1.0.9";
+      "util-0.10.3" = self.by-version."util"."0.10.3";
+      "events-1.0.2" = self.by-version."events"."1.0.2";
+      "native-buffer-browserify-2.0.17" = self.by-version."native-buffer-browserify"."2.0.17";
+      "url-0.7.9" = self.by-version."url"."0.7.9";
+      "https-browserify-0.0.0" = self.by-version."https-browserify"."0.0.0";
+      "path-browserify-0.0.0" = self.by-version."path-browserify"."0.0.0";
+      "querystring-0.2.0" = self.by-version."querystring"."0.2.0";
+      "stream-browserify-0.1.3" = self.by-version."stream-browserify"."0.1.3";
+      "string_decoder-0.0.1" = self.by-version."string_decoder"."0.0.1";
+      "tty-browserify-0.0.0" = self.by-version."tty-browserify"."0.0.0";
+      "timers-browserify-1.0.3" = self.by-version."timers-browserify"."1.0.3";
+      "punycode-1.2.4" = self.by-version."punycode"."1.2.4";
+      "defined-0.0.0" = self.by-version."defined"."0.0.0";
+      "domain-browser-1.1.3" = self.by-version."domain-browser"."1.1.3";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browserify" ];
+  };
+  by-spec."browserify"."~3.24.1" =
+    self.by-version."browserify"."3.24.13";
+  by-version."browserify"."3.24.13" = lib.makeOverridable self.buildNodePackage {
+    name = "browserify-3.24.13";
+    bin = true;
+    src = [
+      (self.patchSource fetchurl {
+        url = "http://registry.npmjs.org/browserify/-/browserify-3.24.13.tgz";
+        name = "browserify-3.24.13.tgz";
+        sha1 = "d82012886791c4b1edd36612ad508a614e9ad86e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browserify" or []);
+    deps = {
+      "module-deps-1.4.2" = self.by-version."module-deps"."1.4.2";
+      "browser-pack-2.0.1" = self.by-version."browser-pack"."2.0.1";
+      "deps-sort-0.1.2" = self.by-version."deps-sort"."0.1.2";
+      "shell-quote-0.0.1" = self.by-version."shell-quote"."0.0.1";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+      "stream-combiner-0.0.4" = self.by-version."stream-combiner"."0.0.4";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "insert-module-globals-3.1.3" = self.by-version."insert-module-globals"."3.1.3";
+      "syntax-error-0.1.0" = self.by-version."syntax-error"."0.1.0";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "umd-2.0.0" = self.by-version."umd"."2.0.0";
+      "parents-0.0.3" = self.by-version."parents"."0.0.3";
+      "deep-equal-0.1.2" = self.by-version."deep-equal"."0.1.2";
+      "constants-browserify-0.0.1" = self.by-version."constants-browserify"."0.0.1";
+      "os-browserify-0.1.2" = self.by-version."os-browserify"."0.1.2";
+      "console-browserify-1.0.3" = self.by-version."console-browserify"."1.0.3";
+      "vm-browserify-0.0.4" = self.by-version."vm-browserify"."0.0.4";
+      "zlib-browserify-0.0.3" = self.by-version."zlib-browserify"."0.0.3";
+      "assert-1.1.2" = self.by-version."assert"."1.1.2";
+      "http-browserify-1.1.0" = self.by-version."http-browserify"."1.1.0";
+      "crypto-browserify-1.0.9" = self.by-version."crypto-browserify"."1.0.9";
+      "util-0.10.3" = self.by-version."util"."0.10.3";
+      "events-1.0.2" = self.by-version."events"."1.0.2";
+      "native-buffer-browserify-2.0.17" = self.by-version."native-buffer-browserify"."2.0.17";
+      "url-0.7.9" = self.by-version."url"."0.7.9";
+      "https-browserify-0.0.0" = self.by-version."https-browserify"."0.0.0";
+      "path-browserify-0.0.0" = self.by-version."path-browserify"."0.0.0";
+      "querystring-0.2.0" = self.by-version."querystring"."0.2.0";
+      "stream-browserify-0.1.3" = self.by-version."stream-browserify"."0.1.3";
+      "string_decoder-0.0.1" = self.by-version."string_decoder"."0.0.1";
+      "tty-browserify-0.0.0" = self.by-version."tty-browserify"."0.0.0";
+      "timers-browserify-1.0.3" = self.by-version."timers-browserify"."1.0.3";
+      "punycode-1.2.4" = self.by-version."punycode"."1.2.4";
+      "defined-0.0.0" = self.by-version."defined"."0.0.0";
+      "domain-browser-1.1.3" = self.by-version."domain-browser"."1.1.3";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+      "derequire-0.6.1" = self.by-version."derequire"."0.6.1";
+      "commondir-0.0.1" = self.by-version."commondir"."0.0.1";
+      "shallow-copy-0.0.1" = self.by-version."shallow-copy"."0.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browserify" ];
+  };
+  by-spec."browserify-aes"."0.4.0" =
+    self.by-version."browserify-aes"."0.4.0";
+  by-version."browserify-aes"."0.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "browserify-aes-0.4.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/browserify-aes/-/browserify-aes-0.4.0.tgz";
+        name = "browserify-aes-0.4.0.tgz";
+        sha1 = "067149b668df31c4b58533e02d01e806d8608e2c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."browserify-aes" or []);
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "browserify-aes" ];
+  };
   by-spec."browserify-zlib"."^0.1.4" =
     self.by-version."browserify-zlib"."0.1.4";
   by-version."browserify-zlib"."0.1.4" = lib.makeOverridable self.buildNodePackage {
@@ -2073,27 +2623,6 @@
     ];
     passthru.names = [ "bson" ];
   };
-  by-spec."bson"."0.2.12" =
-    self.by-version."bson"."0.2.12";
-  by-version."bson"."0.2.12" = lib.makeOverridable self.buildNodePackage {
-    name = "bson-0.2.12";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/bson/-/bson-0.2.12.tgz";
-        name = "bson-0.2.12.tgz";
-        sha1 = "78bedbef1fd1f629b1c3b8d2f2d1fd87b8d64dd2";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."bson" or []);
-    deps = {
-      "nan-1.2.0" = self.by-version."nan"."1.2.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "bson" ];
-  };
   by-spec."bson"."0.2.2" =
     self.by-version."bson"."0.2.2";
   by-version."bson"."0.2.2" = lib.makeOverridable self.buildNodePackage {
@@ -2156,15 +2685,15 @@
     passthru.names = [ "bson" ];
   };
   by-spec."buffer"."^2.3.0" =
-    self.by-version."buffer"."2.7.0";
-  by-version."buffer"."2.7.0" = lib.makeOverridable self.buildNodePackage {
-    name = "buffer-2.7.0";
+    self.by-version."buffer"."2.8.1";
+  by-version."buffer"."2.8.1" = lib.makeOverridable self.buildNodePackage {
+    name = "buffer-2.8.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/buffer/-/buffer-2.7.0.tgz";
-        name = "buffer-2.7.0.tgz";
-        sha1 = "02dfe9655c097f63e03c1b1714ca6e3d83d87bb2";
+        url = "http://registry.npmjs.org/buffer/-/buffer-2.8.1.tgz";
+        name = "buffer-2.8.1.tgz";
+        sha1 = "6c632bf47cb7ec86509254ed42ab080937986114";
       })
     ];
     buildInputs =
@@ -2178,6 +2707,28 @@
     ];
     passthru.names = [ "buffer" ];
   };
+  by-spec."buffer"."~2.1.4" =
+    self.by-version."buffer"."2.1.13";
+  by-version."buffer"."2.1.13" = lib.makeOverridable self.buildNodePackage {
+    name = "buffer-2.1.13";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/buffer/-/buffer-2.1.13.tgz";
+        name = "buffer-2.1.13.tgz";
+        sha1 = "c88838ebf79f30b8b4a707788470bea8a62c2355";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."buffer" or []);
+    deps = {
+      "base64-js-0.0.7" = self.by-version."base64-js"."0.0.7";
+      "ieee754-1.1.4" = self.by-version."ieee754"."1.1.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "buffer" ];
+  };
   by-spec."buffer-crc32"."0.1.1" =
     self.by-version."buffer-crc32"."0.1.1";
   by-version."buffer-crc32"."0.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -2692,20 +3243,21 @@
   by-spec."chmodr"."~0.1.0" =
     self.by-version."chmodr"."0.1.0";
   by-spec."chokidar".">=0.8.2" =
-    self.by-version."chokidar"."0.10.1";
-  by-version."chokidar"."0.10.1" = lib.makeOverridable self.buildNodePackage {
-    name = "chokidar-0.10.1";
+    self.by-version."chokidar"."0.10.3";
+  by-version."chokidar"."0.10.3" = lib.makeOverridable self.buildNodePackage {
+    name = "chokidar-0.10.3";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/chokidar/-/chokidar-0.10.1.tgz";
-        name = "chokidar-0.10.1.tgz";
-        sha1 = "ec2b4e9910c75a2b2e09ff5fdf283029b73af199";
+        url = "http://registry.npmjs.org/chokidar/-/chokidar-0.10.3.tgz";
+        name = "chokidar-0.10.3.tgz";
+        sha1 = "5f228db51820140d0f9f712bd2c29f4fbc1bba49";
       })
     ];
     buildInputs =
       (self.nativeDeps."chokidar" or []);
     deps = {
+      "async-each-0.1.5" = self.by-version."async-each"."0.1.5";
       "fsevents-0.3.0" = self.by-version."fsevents"."0.3.0";
       "readdirp-1.1.0" = self.by-version."readdirp"."1.1.0";
     };
@@ -2802,6 +3354,27 @@
     ];
     passthru.names = [ "cli-color" ];
   };
+  by-spec."cli-table"."^0.3.0" =
+    self.by-version."cli-table"."0.3.1";
+  by-version."cli-table"."0.3.1" = lib.makeOverridable self.buildNodePackage {
+    name = "cli-table-0.3.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/cli-table/-/cli-table-0.3.1.tgz";
+        name = "cli-table-0.3.1.tgz";
+        sha1 = "f53b05266a8b1a0b934b3d0821e6e2dc5914ae23";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."cli-table" or []);
+    deps = {
+      "colors-1.0.3" = self.by-version."colors"."1.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "cli-table" ];
+  };
   by-spec."cliff"."0.1.8" =
     self.by-version."cliff"."0.1.8";
   by-version."cliff"."0.1.8" = lib.makeOverridable self.buildNodePackage {
@@ -2908,7 +3481,7 @@
     ];
     passthru.names = [ "clone" ];
   };
-  by-spec."clone"."~0.1.5" =
+  by-spec."clone"."~0.1.11" =
     self.by-version."clone"."0.1.18";
   by-version."clone"."0.1.18" = lib.makeOverridable self.buildNodePackage {
     name = "clone-0.1.18";
@@ -2928,6 +3501,8 @@
     ];
     passthru.names = [ "clone" ];
   };
+  by-spec."clone"."~0.1.5" =
+    self.by-version."clone"."0.1.18";
   by-spec."clone-stats"."^0.0.1" =
     self.by-version."clone-stats"."0.0.1";
   by-version."clone-stats"."0.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -2950,6 +3525,30 @@
   };
   by-spec."clone-stats"."~0.0.1" =
     self.by-version."clone-stats"."0.0.1";
+  by-spec."cmd-shim"."~1.1.0" =
+    self.by-version."cmd-shim"."1.1.2";
+  by-version."cmd-shim"."1.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "cmd-shim-1.1.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/cmd-shim/-/cmd-shim-1.1.2.tgz";
+        name = "cmd-shim-1.1.2.tgz";
+        sha1 = "e4f9198802e361e8eb43b591959ef4dc6cdb6754";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."cmd-shim" or []);
+    deps = {
+      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "cmd-shim" ];
+  };
+  by-spec."cmd-shim"."~1.1.1" =
+    self.by-version."cmd-shim"."1.1.2";
   by-spec."cmd-shim"."~2.0.1" =
     self.by-version."cmd-shim"."2.0.1";
   by-version."cmd-shim"."2.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -3214,8 +3813,48 @@
   };
   by-spec."colors"."0.x.x" =
     self.by-version."colors"."0.6.2";
+  by-spec."colors"."1.0.3" =
+    self.by-version."colors"."1.0.3";
+  by-version."colors"."1.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "colors-1.0.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/colors/-/colors-1.0.3.tgz";
+        name = "colors-1.0.3.tgz";
+        sha1 = "0433f44d809680fdeb60ed260f1b0c262e82a40b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."colors" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "colors" ];
+  };
   by-spec."colors"."~0.6.2" =
     self.by-version."colors"."0.6.2";
+  by-spec."columnify"."0.1.2" =
+    self.by-version."columnify"."0.1.2";
+  by-version."columnify"."0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "columnify-0.1.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/columnify/-/columnify-0.1.2.tgz";
+        name = "columnify-0.1.2.tgz";
+        sha1 = "ab1a1f1e37b26ba4b87c6920fb717fe51c827042";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."columnify" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "columnify" ];
+  };
   by-spec."columnify"."~1.2.1" =
     self.by-version."columnify"."1.2.1";
   by-version."columnify"."1.2.1" = lib.makeOverridable self.buildNodePackage {
@@ -3262,15 +3901,15 @@
     passthru.names = [ "combine-source-map" ];
   };
   by-spec."combined-stream"."~0.0.4" =
-    self.by-version."combined-stream"."0.0.5";
-  by-version."combined-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
-    name = "combined-stream-0.0.5";
+    self.by-version."combined-stream"."0.0.7";
+  by-version."combined-stream"."0.0.7" = lib.makeOverridable self.buildNodePackage {
+    name = "combined-stream-0.0.7";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.5.tgz";
-        name = "combined-stream-0.0.5.tgz";
-        sha1 = "29ed76e5c9aad07c4acf9ca3d32601cce28697a2";
+        url = "http://registry.npmjs.org/combined-stream/-/combined-stream-0.0.7.tgz";
+        name = "combined-stream-0.0.7.tgz";
+        sha1 = "0137e657baa5a7541c57ac37ac5fc07d73b4dc1f";
       })
     ];
     buildInputs =
@@ -3282,6 +3921,8 @@
     ];
     passthru.names = [ "combined-stream" ];
   };
+  by-spec."combined-stream"."~0.0.5" =
+    self.by-version."combined-stream"."0.0.7";
   by-spec."commander"."0.6.1" =
     self.by-version."commander"."0.6.1";
   by-version."commander"."0.6.1" = lib.makeOverridable self.buildNodePackage {
@@ -3364,6 +4005,8 @@
     ];
     passthru.names = [ "commander" ];
   };
+  by-spec."commander"."2.0.x" =
+    self.by-version."commander"."2.0.0";
   by-spec."commander"."2.1.0" =
     self.by-version."commander"."2.1.0";
   by-version."commander"."2.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -3425,15 +4068,15 @@
     passthru.names = [ "commander" ];
   };
   by-spec."commander"."2.x" =
-    self.by-version."commander"."2.4.0";
-  by-version."commander"."2.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "commander-2.4.0";
+    self.by-version."commander"."2.5.0";
+  by-version."commander"."2.5.0" = lib.makeOverridable self.buildNodePackage {
+    name = "commander-2.5.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/commander/-/commander-2.4.0.tgz";
-        name = "commander-2.4.0.tgz";
-        sha1 = "fad884ce8f09509b10a5ec931332cb97786e2fd6";
+        url = "http://registry.npmjs.org/commander/-/commander-2.5.0.tgz";
+        name = "commander-2.5.0.tgz";
+        sha1 = "d777b6a4d847d423e5d475da864294ac1ff5aa9d";
       })
     ];
     buildInputs =
@@ -3448,6 +4091,8 @@
     self.by-version."commander"."2.0.0";
   by-spec."commander"."~2.1.0" =
     self.by-version."commander"."2.1.0";
+  by-spec."commander"."~2.3.0" =
+    self.by-version."commander"."2.3.0";
   by-spec."commondir"."0.0.1" =
     self.by-version."commondir"."0.0.1";
   by-version."commondir"."0.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -3468,6 +4113,8 @@
     ];
     passthru.names = [ "commondir" ];
   };
+  by-spec."commondir"."~0.0.1" =
+    self.by-version."commondir"."0.0.1";
   by-spec."component-emitter"."1.1.2" =
     self.by-version."component-emitter"."1.1.2";
   by-version."component-emitter"."1.1.2" = lib.makeOverridable self.buildNodePackage {
@@ -3505,7 +4152,7 @@
     deps = {
       "buffer-crc32-0.2.3" = self.by-version."buffer-crc32"."0.2.3";
       "crc32-stream-0.3.1" = self.by-version."crc32-stream"."0.3.1";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
     };
     peerDependencies = [
     ];
@@ -3526,7 +4173,7 @@
     buildInputs =
       (self.nativeDeps."compressible" or []);
     deps = {
-      "mime-db-1.1.1" = self.by-version."mime-db"."1.1.1";
+      "mime-db-1.1.2" = self.by-version."mime-db"."1.1.2";
     };
     peerDependencies = [
     ];
@@ -3581,6 +4228,8 @@
     ];
     passthru.names = [ "concat-stream" ];
   };
+  by-spec."concat-stream"."^1.4.6" =
+    self.by-version."concat-stream"."1.4.6";
   by-spec."concat-stream"."~1.4.1" =
     self.by-version."concat-stream"."1.4.6";
   by-spec."concat-stream"."~1.4.5" =
@@ -3675,7 +4324,7 @@
     buildInputs =
       (self.nativeDeps."connect" or []);
     deps = {
-      "qs-2.2.4" = self.by-version."qs"."2.2.4";
+      "qs-2.3.2" = self.by-version."qs"."2.3.2";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "formidable-1.0.15" = self.by-version."formidable"."1.0.15";
     };
@@ -3717,23 +4366,23 @@
     ];
     passthru.names = [ "connect" ];
   };
-  by-spec."connect"."2.27.0" =
-    self.by-version."connect"."2.27.0";
-  by-version."connect"."2.27.0" = lib.makeOverridable self.buildNodePackage {
-    name = "connect-2.27.0";
+  by-spec."connect"."2.27.2" =
+    self.by-version."connect"."2.27.2";
+  by-version."connect"."2.27.2" = lib.makeOverridable self.buildNodePackage {
+    name = "connect-2.27.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/connect/-/connect-2.27.0.tgz";
-        name = "connect-2.27.0.tgz";
-        sha1 = "04a2922c7cbe12455c9466f93bd719c37c433dfa";
+        url = "http://registry.npmjs.org/connect/-/connect-2.27.2.tgz";
+        name = "connect-2.27.2.tgz";
+        sha1 = "68d1c6a31149726e1659bc533dadd9af9afcba6c";
       })
     ];
     buildInputs =
       (self.nativeDeps."connect" or []);
     deps = {
       "basic-auth-connect-1.0.0" = self.by-version."basic-auth-connect"."1.0.0";
-      "body-parser-1.9.0" = self.by-version."body-parser"."1.9.0";
+      "body-parser-1.9.2" = self.by-version."body-parser"."1.9.2";
       "bytes-1.0.0" = self.by-version."bytes"."1.0.0";
       "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
       "cookie-parser-1.3.3" = self.by-version."cookie-parser"."1.3.3";
@@ -3744,21 +4393,21 @@
       "debug-2.1.0" = self.by-version."debug"."2.1.0";
       "depd-1.0.0" = self.by-version."depd"."1.0.0";
       "errorhandler-1.2.2" = self.by-version."errorhandler"."1.2.2";
-      "express-session-1.9.0" = self.by-version."express-session"."1.9.0";
-      "finalhandler-0.3.1" = self.by-version."finalhandler"."0.3.1";
+      "express-session-1.9.1" = self.by-version."express-session"."1.9.1";
+      "finalhandler-0.3.2" = self.by-version."finalhandler"."0.3.2";
       "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
       "http-errors-1.2.7" = self.by-version."http-errors"."1.2.7";
       "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
       "method-override-2.3.0" = self.by-version."method-override"."2.3.0";
-      "morgan-1.4.0" = self.by-version."morgan"."1.4.0";
+      "morgan-1.4.1" = self.by-version."morgan"."1.4.1";
       "multiparty-3.3.2" = self.by-version."multiparty"."3.3.2";
       "on-headers-1.0.0" = self.by-version."on-headers"."1.0.0";
       "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
-      "qs-2.2.4" = self.by-version."qs"."2.2.4";
+      "qs-2.3.2" = self.by-version."qs"."2.3.2";
       "response-time-2.2.0" = self.by-version."response-time"."2.2.0";
       "serve-favicon-2.1.6" = self.by-version."serve-favicon"."2.1.6";
       "serve-index-1.5.0" = self.by-version."serve-index"."1.5.0";
-      "serve-static-1.7.0" = self.by-version."serve-static"."1.7.0";
+      "serve-static-1.7.1" = self.by-version."serve-static"."1.7.1";
       "type-is-1.5.2" = self.by-version."type-is"."1.5.2";
       "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
       "vhost-3.0.0" = self.by-version."vhost"."3.0.0";
@@ -3857,7 +4506,7 @@
     passthru.names = [ "connect" ];
   };
   by-spec."connect"."~2" =
-    self.by-version."connect"."2.27.0";
+    self.by-version."connect"."2.27.2";
   by-spec."connect"."~2.12.0" =
     self.by-version."connect"."2.12.0";
   by-version."connect"."2.12.0" = lib.makeOverridable self.buildNodePackage {
@@ -3935,15 +4584,15 @@
     passthru.names = [ "connect-flash" ];
   };
   by-spec."connect-jade-static"."*" =
-    self.by-version."connect-jade-static"."0.1.3";
-  by-version."connect-jade-static"."0.1.3" = lib.makeOverridable self.buildNodePackage {
-    name = "connect-jade-static-0.1.3";
+    self.by-version."connect-jade-static"."0.1.4";
+  by-version."connect-jade-static"."0.1.4" = lib.makeOverridable self.buildNodePackage {
+    name = "connect-jade-static-0.1.4";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/connect-jade-static/-/connect-jade-static-0.1.3.tgz";
-        name = "connect-jade-static-0.1.3.tgz";
-        sha1 = "ad0e0538c9124355d6da03de13fae63f7b5e0b1b";
+        url = "http://registry.npmjs.org/connect-jade-static/-/connect-jade-static-0.1.4.tgz";
+        name = "connect-jade-static-0.1.4.tgz";
+        sha1 = "d6cc8b768ff6e5ac26f759480e69408f64eb55e4";
       })
     ];
     buildInputs =
@@ -3955,7 +4604,7 @@
     ];
     passthru.names = [ "connect-jade-static" ];
   };
-  "connect-jade-static" = self.by-version."connect-jade-static"."0.1.3";
+  "connect-jade-static" = self.by-version."connect-jade-static"."0.1.4";
   by-spec."connect-mongo"."*" =
     self.by-version."connect-mongo"."0.4.1";
   by-version."connect-mongo"."0.4.1" = lib.makeOverridable self.buildNodePackage {
@@ -4045,6 +4694,26 @@
   };
   by-spec."console-browserify"."^1.1.0" =
     self.by-version."console-browserify"."1.1.0";
+  by-spec."console-browserify"."~1.0.1" =
+    self.by-version."console-browserify"."1.0.3";
+  by-version."console-browserify"."1.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "console-browserify-1.0.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/console-browserify/-/console-browserify-1.0.3.tgz";
+        name = "console-browserify-1.0.3.tgz";
+        sha1 = "d3898d2c3a93102f364197f8874b4f92b5286a8e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."console-browserify" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "console-browserify" ];
+  };
   by-spec."constantinople"."~1.0.1" =
     self.by-version."constantinople"."1.0.2";
   by-version."constantinople"."1.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -4454,6 +5123,95 @@
     ];
     passthru.names = [ "cookies" ];
   };
+  by-spec."cordova"."*" =
+    self.by-version."cordova"."4.0.1-nightly.2014.9.29";
+  by-version."cordova"."4.0.1-nightly.2014.9.29" = lib.makeOverridable self.buildNodePackage {
+    name = "cordova-4.0.1-nightly.2014.9.29";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/cordova/-/cordova-4.0.1-nightly.2014.9.29.tgz";
+        name = "cordova-4.0.1-nightly.2014.9.29.tgz";
+        sha1 = "4863bc96362f89fd441e30d56408b3bf734fe2f2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."cordova" or []);
+    deps = {
+      "cordova-lib-4.0.1-nightly.2014.9.29" = self.by-version."cordova-lib"."4.0.1-nightly.2014.9.29";
+      "q-0.9.7" = self.by-version."q"."0.9.7";
+      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
+      "underscore-1.4.4" = self.by-version."underscore"."1.4.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "cordova" ];
+  };
+  "cordova" = self.by-version."cordova"."4.0.1-nightly.2014.9.29";
+  by-spec."cordova-js"."3.7.1" =
+    self.by-version."cordova-js"."3.7.1";
+  by-version."cordova-js"."3.7.1" = lib.makeOverridable self.buildNodePackage {
+    name = "cordova-js-3.7.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/cordova-js/-/cordova-js-3.7.1.tgz";
+        name = "cordova-js-3.7.1.tgz";
+        sha1 = "09d737f7d54ed07844d2317298b3c3112d1697fb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."cordova-js" or []);
+    deps = {
+      "uglify-js-2.4.15" = self.by-version."uglify-js"."2.4.15";
+      "browserify-3.46.0" = self.by-version."browserify"."3.46.0";
+      "through-2.3.4" = self.by-version."through"."2.3.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "cordova-js" ];
+  };
+  by-spec."cordova-lib"."4.0.1-nightly.2014.9.29" =
+    self.by-version."cordova-lib"."4.0.1-nightly.2014.9.29";
+  by-version."cordova-lib"."4.0.1-nightly.2014.9.29" = lib.makeOverridable self.buildNodePackage {
+    name = "cordova-lib-4.0.1-nightly.2014.9.29";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/cordova-lib/-/cordova-lib-4.0.1-nightly.2014.9.29.tgz";
+        name = "cordova-lib-4.0.1-nightly.2014.9.29.tgz";
+        sha1 = "561080ae99c5c00a3e467b47a8990544939eb374";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."cordova-lib" or []);
+    deps = {
+      "bplist-parser-0.0.5" = self.by-version."bplist-parser"."0.0.5";
+      "dep-graph-1.1.0" = self.by-version."dep-graph"."1.1.0";
+      "elementtree-0.1.5" = self.by-version."elementtree"."0.1.5";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "npm-1.3.4" = self.by-version."npm"."1.3.4";
+      "npmconf-0.1.16" = self.by-version."npmconf"."0.1.16";
+      "osenv-0.0.3" = self.by-version."osenv"."0.0.3";
+      "plist-1.0.1" = self.by-version."plist"."1.0.1";
+      "properties-parser-0.2.3" = self.by-version."properties-parser"."0.2.3";
+      "q-0.9.7" = self.by-version."q"."0.9.7";
+      "rc-0.3.0" = self.by-version."rc"."0.3.0";
+      "request-2.22.0" = self.by-version."request"."2.22.0";
+      "semver-2.0.11" = self.by-version."semver"."2.0.11";
+      "shelljs-0.3.0" = self.by-version."shelljs"."0.3.0";
+      "tar-0.1.20" = self.by-version."tar"."0.1.20";
+      "underscore-1.4.4" = self.by-version."underscore"."1.4.4";
+      "xcode-0.6.7" = self.by-version."xcode"."0.6.7";
+      "cordova-js-3.7.1" = self.by-version."cordova-js"."3.7.1";
+      "d8-0.4.4" = self.by-version."d8"."0.4.4";
+      "unorm-1.3.3" = self.by-version."unorm"."1.3.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "cordova-lib" ];
+  };
   by-spec."core-util-is"."~1.0.0" =
     self.by-version."core-util-is"."1.0.1";
   by-version."core-util-is"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -4489,12 +5247,14 @@
     buildInputs =
       (self.nativeDeps."couch-login" or []);
     deps = {
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "couch-login" ];
   };
+  by-spec."couch-login"."~0.1.18" =
+    self.by-version."couch-login"."0.1.20";
   by-spec."coveralls"."*" =
     self.by-version."coveralls"."2.11.2";
   by-version."coveralls"."2.11.2" = lib.makeOverridable self.buildNodePackage {
@@ -4575,7 +5335,7 @@
     buildInputs =
       (self.nativeDeps."crc32-stream" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "buffer-crc32-0.2.3" = self.by-version."buffer-crc32"."0.2.3";
     };
     peerDependencies = [
@@ -4666,15 +5426,15 @@
     passthru.names = [ "crypto" ];
   };
   by-spec."crypto-browserify"."^3.0.0" =
-    self.by-version."crypto-browserify"."3.2.8";
-  by-version."crypto-browserify"."3.2.8" = lib.makeOverridable self.buildNodePackage {
-    name = "crypto-browserify-3.2.8";
+    self.by-version."crypto-browserify"."3.3.0";
+  by-version."crypto-browserify"."3.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "crypto-browserify-3.3.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.2.8.tgz";
-        name = "crypto-browserify-3.2.8.tgz";
-        sha1 = "b9b11dbe6d9651dd882a01e6cc467df718ecf189";
+        url = "http://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.3.0.tgz";
+        name = "crypto-browserify-3.3.0.tgz";
+        sha1 = "b9fc75bb4a0ed61dcf1cd5dae96eb30c9c3e506c";
       })
     ];
     buildInputs =
@@ -4683,6 +5443,27 @@
       "pbkdf2-compat-2.0.1" = self.by-version."pbkdf2-compat"."2.0.1";
       "ripemd160-0.2.0" = self.by-version."ripemd160"."0.2.0";
       "sha.js-2.2.6" = self.by-version."sha.js"."2.2.6";
+      "browserify-aes-0.4.0" = self.by-version."browserify-aes"."0.4.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "crypto-browserify" ];
+  };
+  by-spec."crypto-browserify"."~1.0.9" =
+    self.by-version."crypto-browserify"."1.0.9";
+  by-version."crypto-browserify"."1.0.9" = lib.makeOverridable self.buildNodePackage {
+    name = "crypto-browserify-1.0.9";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/crypto-browserify/-/crypto-browserify-1.0.9.tgz";
+        name = "crypto-browserify-1.0.9.tgz";
+        sha1 = "cc5449685dfb85eb11c9828acc7cb87ab5bbfcc0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."crypto-browserify" or []);
+    deps = {
     };
     peerDependencies = [
     ];
@@ -4919,6 +5700,27 @@
     ];
     passthru.names = [ "d" ];
   };
+  by-spec."d8"."0.4.4" =
+    self.by-version."d8"."0.4.4";
+  by-version."d8"."0.4.4" = lib.makeOverridable self.buildNodePackage {
+    name = "d8-0.4.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/d8/-/d8-0.4.4.tgz";
+        name = "d8-0.4.4.tgz";
+        sha1 = "5989dd62b90bdd853d3978f1261a4bc76bcf6485";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."d8" or []);
+    deps = {
+      "m8-0.4.4" = self.by-version."m8"."0.4.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "d8" ];
+  };
   by-spec."dashdash"."1.3.2" =
     self.by-version."dashdash"."1.3.2";
   by-version."dashdash"."1.3.2" = lib.makeOverridable self.buildNodePackage {
@@ -5146,10 +5948,18 @@
     ];
     passthru.names = [ "debug" ];
   };
+  by-spec."debug"."^0.8.1" =
+    self.by-version."debug"."0.8.1";
   by-spec."debug"."^1.0.2" =
     self.by-version."debug"."1.0.4";
+  by-spec."debug"."~0.7.4" =
+    self.by-version."debug"."0.7.4";
   by-spec."debug"."~0.8" =
     self.by-version."debug"."0.8.1";
+  by-spec."debug"."~0.x" =
+    self.by-version."debug"."0.8.1";
+  by-spec."debug"."~1.0.0" =
+    self.by-version."debug"."1.0.4";
   by-spec."debug"."~1.0.1" =
     self.by-version."debug"."1.0.4";
   by-spec."debug"."~2.0.0" =
@@ -5266,6 +6076,26 @@
   };
   by-spec."deep-equal"."~0.0.0" =
     self.by-version."deep-equal"."0.0.0";
+  by-spec."deep-equal"."~0.1.0" =
+    self.by-version."deep-equal"."0.1.2";
+  by-version."deep-equal"."0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "deep-equal-0.1.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/deep-equal/-/deep-equal-0.1.2.tgz";
+        name = "deep-equal-0.1.2.tgz";
+        sha1 = "b246c2b80a570a47c11be1d9bd1070ec878b87ce";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."deep-equal" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "deep-equal" ];
+  };
   by-spec."deep-equal"."~0.2.1" =
     self.by-version."deep-equal"."0.2.1";
   by-spec."deep-extend"."~0.2.11" =
@@ -5332,7 +6162,7 @@
     ];
     passthru.names = [ "defaults" ];
   };
-  by-spec."defined"."~0.0.0" =
+  by-spec."defined"."0.0.0" =
     self.by-version."defined"."0.0.0";
   by-version."defined"."0.0.0" = lib.makeOverridable self.buildNodePackage {
     name = "defined-0.0.0";
@@ -5352,6 +6182,8 @@
     ];
     passthru.names = [ "defined" ];
   };
+  by-spec."defined"."~0.0.0" =
+    self.by-version."defined"."0.0.0";
   by-spec."delayed-stream"."0.0.5" =
     self.by-version."delayed-stream"."0.0.5";
   by-version."delayed-stream"."0.0.5" = lib.makeOverridable self.buildNodePackage {
@@ -5372,36 +6204,37 @@
     ];
     passthru.names = [ "delayed-stream" ];
   };
-  by-spec."depd"."0.4.4" =
-    self.by-version."depd"."0.4.4";
-  by-version."depd"."0.4.4" = lib.makeOverridable self.buildNodePackage {
-    name = "depd-0.4.4";
+  by-spec."dep-graph"."1.1.0" =
+    self.by-version."dep-graph"."1.1.0";
+  by-version."dep-graph"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "dep-graph-1.1.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/depd/-/depd-0.4.4.tgz";
-        name = "depd-0.4.4.tgz";
-        sha1 = "07091fae75f97828d89b4a02a2d4778f0e7c0662";
+        url = "http://registry.npmjs.org/dep-graph/-/dep-graph-1.1.0.tgz";
+        name = "dep-graph-1.1.0.tgz";
+        sha1 = "fade86a92799a813e9b42511cdf3dfa6cc8dbefe";
       })
     ];
     buildInputs =
-      (self.nativeDeps."depd" or []);
+      (self.nativeDeps."dep-graph" or []);
     deps = {
+      "underscore-1.2.1" = self.by-version."underscore"."1.2.1";
     };
     peerDependencies = [
     ];
-    passthru.names = [ "depd" ];
+    passthru.names = [ "dep-graph" ];
   };
-  by-spec."depd"."0.4.5" =
-    self.by-version."depd"."0.4.5";
-  by-version."depd"."0.4.5" = lib.makeOverridable self.buildNodePackage {
-    name = "depd-0.4.5";
+  by-spec."depd"."0.4.4" =
+    self.by-version."depd"."0.4.4";
+  by-version."depd"."0.4.4" = lib.makeOverridable self.buildNodePackage {
+    name = "depd-0.4.4";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/depd/-/depd-0.4.5.tgz";
-        name = "depd-0.4.5.tgz";
-        sha1 = "1a664b53388b4a6573e8ae67b5f767c693ca97f1";
+        url = "http://registry.npmjs.org/depd/-/depd-0.4.4.tgz";
+        name = "depd-0.4.4.tgz";
+        sha1 = "07091fae75f97828d89b4a02a2d4778f0e7c0662";
       })
     ];
     buildInputs =
@@ -5477,6 +6310,75 @@
     ];
     passthru.names = [ "deps-sort" ];
   };
+  by-spec."deps-sort"."~0.1.1" =
+    self.by-version."deps-sort"."0.1.2";
+  by-version."deps-sort"."0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "deps-sort-0.1.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/deps-sort/-/deps-sort-0.1.2.tgz";
+        name = "deps-sort-0.1.2.tgz";
+        sha1 = "daa2fb614a17c9637d801e2f55339ae370f3611a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."deps-sort" or []);
+    deps = {
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "JSONStream-0.6.4" = self.by-version."JSONStream"."0.6.4";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "deps-sort" ];
+  };
+  by-spec."derequire"."~0.6.0" =
+    self.by-version."derequire"."0.6.1";
+  by-version."derequire"."0.6.1" = lib.makeOverridable self.buildNodePackage {
+    name = "derequire-0.6.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/derequire/-/derequire-0.6.1.tgz";
+        name = "derequire-0.6.1.tgz";
+        sha1 = "cce8ee25380de715deb61900f0bdd38222928788";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."derequire" or []);
+    deps = {
+      "estraverse-1.5.1" = self.by-version."estraverse"."1.5.1";
+      "esprima-six-0.0.3" = self.by-version."esprima-six"."0.0.3";
+      "esrefactor-0.1.0" = self.by-version."esrefactor"."0.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "derequire" ];
+  };
+  by-spec."derequire"."~0.8.0" =
+    self.by-version."derequire"."0.8.0";
+  by-version."derequire"."0.8.0" = lib.makeOverridable self.buildNodePackage {
+    name = "derequire-0.8.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/derequire/-/derequire-0.8.0.tgz";
+        name = "derequire-0.8.0.tgz";
+        sha1 = "c1f7f1da2cede44adede047378f03f444e9c4c0d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."derequire" or []);
+    deps = {
+      "estraverse-1.5.1" = self.by-version."estraverse"."1.5.1";
+      "esrefactor-0.1.0" = self.by-version."esrefactor"."0.1.0";
+      "esprima-fb-3001.1.0-dev-harmony-fb" = self.by-version."esprima-fb"."3001.1.0-dev-harmony-fb";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "derequire" ];
+  };
   by-spec."destroy"."1.0.3" =
     self.by-version."destroy"."1.0.3";
   by-version."destroy"."1.0.3" = lib.makeOverridable self.buildNodePackage {
@@ -5519,6 +6421,30 @@
     ];
     passthru.names = [ "detective" ];
   };
+  by-spec."detective"."~2.1.2" =
+    self.by-version."detective"."2.1.2";
+  by-version."detective"."2.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "detective-2.1.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/detective/-/detective-2.1.2.tgz";
+        name = "detective-2.1.2.tgz";
+        sha1 = "d22ad9f18c82efb3f55fee2e244883da6bbb8e37";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."detective" or []);
+    deps = {
+      "esprima-1.0.2" = self.by-version."esprima"."1.0.2";
+      "escodegen-0.0.15" = self.by-version."escodegen"."0.0.15";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "detective" ];
+  };
+  by-spec."detective"."~3.1.0" =
+    self.by-version."detective"."3.1.0";
   by-spec."dezalgo"."^1.0.0" =
     self.by-version."dezalgo"."1.0.1";
   by-version."dezalgo"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -5665,7 +6591,7 @@
       (self.nativeDeps."dkim-signer" or []);
     deps = {
       "punycode-1.2.4" = self.by-version."punycode"."1.2.4";
-      "mimelib-0.2.17" = self.by-version."mimelib"."0.2.17";
+      "mimelib-0.2.18" = self.by-version."mimelib"."0.2.18";
     };
     peerDependencies = [
     ];
@@ -5692,15 +6618,15 @@
     passthru.names = [ "domain-browser" ];
   };
   by-spec."domelementtype"."1" =
-    self.by-version."domelementtype"."1.1.1";
-  by-version."domelementtype"."1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "domelementtype-1.1.1";
+    self.by-version."domelementtype"."1.1.3";
+  by-version."domelementtype"."1.1.3" = lib.makeOverridable self.buildNodePackage {
+    name = "domelementtype-1.1.3";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.1.tgz";
-        name = "domelementtype-1.1.1.tgz";
-        sha1 = "7887acbda7614bb0a3dbe1b5e394f77a8ed297cf";
+        url = "http://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz";
+        name = "domelementtype-1.1.3.tgz";
+        sha1 = "bd28773e2642881aec51544924299c5cd822185b";
       })
     ];
     buildInputs =
@@ -5712,21 +6638,21 @@
     passthru.names = [ "domelementtype" ];
   };
   by-spec."domhandler"."2.2" =
-    self.by-version."domhandler"."2.2.0";
-  by-version."domhandler"."2.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "domhandler-2.2.0";
+    self.by-version."domhandler"."2.2.1";
+  by-version."domhandler"."2.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "domhandler-2.2.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/domhandler/-/domhandler-2.2.0.tgz";
-        name = "domhandler-2.2.0.tgz";
-        sha1 = "ac9febfa988034b43f78ba056ebf7bd373416476";
+        url = "http://registry.npmjs.org/domhandler/-/domhandler-2.2.1.tgz";
+        name = "domhandler-2.2.1.tgz";
+        sha1 = "59df9dcd227e808b365ae73e1f6684ac3d946fc2";
       })
     ];
     buildInputs =
       (self.nativeDeps."domhandler" or []);
     deps = {
-      "domelementtype-1.1.1" = self.by-version."domelementtype"."1.1.1";
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
     };
     peerDependencies = [
     ];
@@ -5747,7 +6673,7 @@
     buildInputs =
       (self.nativeDeps."domutils" or []);
     deps = {
-      "domelementtype-1.1.1" = self.by-version."domelementtype"."1.1.1";
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
     };
     peerDependencies = [
     ];
@@ -5795,6 +6721,26 @@
     ];
     passthru.names = [ "dtrace-provider" ];
   };
+  by-spec."duplexer"."~0.1.1" =
+    self.by-version."duplexer"."0.1.1";
+  by-version."duplexer"."0.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "duplexer-0.1.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz";
+        name = "duplexer-0.1.1.tgz";
+        sha1 = "ace6ff808c1ce66b57d1ebf97977acb02334cfc1";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."duplexer" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "duplexer" ];
+  };
   by-spec."duplexer2"."0.0.2" =
     self.by-version."duplexer2"."0.0.2";
   by-version."duplexer2"."0.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -5818,6 +6764,46 @@
   };
   by-spec."duplexer2"."~0.0.2" =
     self.by-version."duplexer2"."0.0.2";
+  by-spec."editor"."0.0.4" =
+    self.by-version."editor"."0.0.4";
+  by-version."editor"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "editor-0.0.4";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/editor/-/editor-0.0.4.tgz";
+        name = "editor-0.0.4.tgz";
+        sha1 = "478920f77bca6c1c1749d5e3edde4bd5966efda8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."editor" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "editor" ];
+  };
+  by-spec."editor"."0.0.5" =
+    self.by-version."editor"."0.0.5";
+  by-version."editor"."0.0.5" = lib.makeOverridable self.buildNodePackage {
+    name = "editor-0.0.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/editor/-/editor-0.0.5.tgz";
+        name = "editor-0.0.5.tgz";
+        sha1 = "8c38877781f2547011c1aeffdbe50cafcc59794a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."editor" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "editor" ];
+  };
   by-spec."editor"."~0.1.0" =
     self.by-version."editor"."0.1.0";
   by-version."editor"."0.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -5858,6 +6844,26 @@
     ];
     passthru.names = [ "ee-first" ];
   };
+  by-spec."ee-first"."1.1.0" =
+    self.by-version."ee-first"."1.1.0";
+  by-version."ee-first"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "ee-first-1.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ee-first/-/ee-first-1.1.0.tgz";
+        name = "ee-first-1.1.0.tgz";
+        sha1 = "6a0d7c6221e490feefd92ec3f441c9ce8cd097f4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ee-first" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ee-first" ];
+  };
   by-spec."ejs"."0.8.3" =
     self.by-version."ejs"."0.8.3";
   by-version."ejs"."0.8.3" = lib.makeOverridable self.buildNodePackage {
@@ -5878,6 +6884,27 @@
     ];
     passthru.names = [ "ejs" ];
   };
+  by-spec."elementtree"."0.1.5" =
+    self.by-version."elementtree"."0.1.5";
+  by-version."elementtree"."0.1.5" = lib.makeOverridable self.buildNodePackage {
+    name = "elementtree-0.1.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/elementtree/-/elementtree-0.1.5.tgz";
+        name = "elementtree-0.1.5.tgz";
+        sha1 = "8d5fd80440b4be806c4a01b63914b40e0daab9ff";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."elementtree" or []);
+    deps = {
+      "sax-0.3.5" = self.by-version."sax"."0.3.5";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "elementtree" ];
+  };
   by-spec."emitter-component"."0.0.6" =
     self.by-version."emitter-component"."0.0.6";
   by-version."emitter-component"."0.0.6" = lib.makeOverridable self.buildNodePackage {
@@ -6186,6 +7213,51 @@
   };
   by-spec."escape-string-regexp"."^1.0.0" =
     self.by-version."escape-string-regexp"."1.0.2";
+  by-spec."escodegen"."0.0.15" =
+    self.by-version."escodegen"."0.0.15";
+  by-version."escodegen"."0.0.15" = lib.makeOverridable self.buildNodePackage {
+    name = "escodegen-0.0.15";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/escodegen/-/escodegen-0.0.15.tgz";
+        name = "escodegen-0.0.15.tgz";
+        sha1 = "ffda9cb26b70b34f7cc19f1d88756539afb543bd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."escodegen" or []);
+    deps = {
+      "esprima-1.2.2" = self.by-version."esprima"."1.2.2";
+      "source-map-0.1.40" = self.by-version."source-map"."0.1.40";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "escodegen" ];
+  };
+  by-spec."escodegen"."0.0.17" =
+    self.by-version."escodegen"."0.0.17";
+  by-version."escodegen"."0.0.17" = lib.makeOverridable self.buildNodePackage {
+    name = "escodegen-0.0.17";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/escodegen/-/escodegen-0.0.17.tgz";
+        name = "escodegen-0.0.17.tgz";
+        sha1 = "1e78d17df1004fd7a88f2fed3b8b8592f3217f9c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."escodegen" or []);
+    deps = {
+      "esprima-1.0.4" = self.by-version."esprima"."1.0.4";
+      "estraverse-0.0.4" = self.by-version."estraverse"."0.0.4";
+      "source-map-0.1.40" = self.by-version."source-map"."0.1.40";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "escodegen" ];
+  };
   by-spec."escodegen"."1.3.x" =
     self.by-version."escodegen"."1.3.3";
   by-version."escodegen"."1.3.3" = lib.makeOverridable self.buildNodePackage {
@@ -6280,6 +7352,27 @@
     ];
     passthru.names = [ "escope" ];
   };
+  by-spec."escope"."~0.0.13" =
+    self.by-version."escope"."0.0.16";
+  by-version."escope"."0.0.16" = lib.makeOverridable self.buildNodePackage {
+    name = "escope-0.0.16";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/escope/-/escope-0.0.16.tgz";
+        name = "escope-0.0.16.tgz";
+        sha1 = "418c7a0afca721dafe659193fd986283e746538f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."escope" or []);
+    deps = {
+      "estraverse-1.7.0" = self.by-version."estraverse"."1.7.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "escope" ];
+  };
   by-spec."esmangle"."~0.0.8" =
     self.by-version."esmangle"."0.0.17";
   by-version."esmangle"."0.0.17" = lib.makeOverridable self.buildNodePackage {
@@ -6307,6 +7400,26 @@
     ];
     passthru.names = [ "esmangle" ];
   };
+  by-spec."esprima"."1.0.2" =
+    self.by-version."esprima"."1.0.2";
+  by-version."esprima"."1.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "esprima-1.0.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esprima/-/esprima-1.0.2.tgz";
+        name = "esprima-1.0.2.tgz";
+        sha1 = "8039bf9ceac4d9d2c15f623264fb292b5502ceaf";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esprima" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "esprima" ];
+  };
   by-spec."esprima"."1.2.x" =
     self.by-version."esprima"."1.2.2";
   by-version."esprima"."1.2.2" = lib.makeOverridable self.buildNodePackage {
@@ -6327,6 +7440,8 @@
     ];
     passthru.names = [ "esprima" ];
   };
+  by-spec."esprima".">= 1.0.0" =
+    self.by-version."esprima"."1.2.2";
   by-spec."esprima"."~ 1.0.2" =
     self.by-version."esprima"."1.0.4";
   by-version."esprima"."1.0.4" = lib.makeOverridable self.buildNodePackage {
@@ -6347,6 +7462,26 @@
     ];
     passthru.names = [ "esprima" ];
   };
+  by-spec."esprima"."~0.9.9" =
+    self.by-version."esprima"."0.9.9";
+  by-version."esprima"."0.9.9" = lib.makeOverridable self.buildNodePackage {
+    name = "esprima-0.9.9";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esprima/-/esprima-0.9.9.tgz";
+        name = "esprima-0.9.9.tgz";
+        sha1 = "1b90925c975d632d7282939c3bb9c3a423c30490";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esprima" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "esprima" ];
+  };
   by-spec."esprima"."~1.0.2" =
     self.by-version."esprima"."1.0.4";
   by-spec."esprima"."~1.0.4" =
@@ -6391,6 +7526,8 @@
     ];
     passthru.names = [ "esprima-fb" ];
   };
+  by-spec."esprima-fb"."^3001.1.0-dev-harmony-fb" =
+    self.by-version."esprima-fb"."3001.1.0-dev-harmony-fb";
   by-spec."esprima-fb"."^4001.3001.0-dev-harmony-fb" =
     self.by-version."esprima-fb"."4001.3001.0-dev-harmony-fb";
   by-version."esprima-fb"."4001.3001.0-dev-harmony-fb" = lib.makeOverridable self.buildNodePackage {
@@ -6431,6 +7568,51 @@
     ];
     passthru.names = [ "esprima-fb" ];
   };
+  by-spec."esprima-six"."0.0.3" =
+    self.by-version."esprima-six"."0.0.3";
+  by-version."esprima-six"."0.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "esprima-six-0.0.3";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esprima-six/-/esprima-six-0.0.3.tgz";
+        name = "esprima-six-0.0.3.tgz";
+        sha1 = "8eb750435b02d3e50cf09b5736cbce4606a4399f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esprima-six" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "esprima-six" ];
+  };
+  by-spec."esprima-six"."~0.0.3" =
+    self.by-version."esprima-six"."0.0.3";
+  by-spec."esrefactor"."~0.1.0" =
+    self.by-version."esrefactor"."0.1.0";
+  by-version."esrefactor"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "esrefactor-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/esrefactor/-/esrefactor-0.1.0.tgz";
+        name = "esrefactor-0.1.0.tgz";
+        sha1 = "d142795a282339ab81e936b5b7a21b11bf197b13";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."esrefactor" or []);
+    deps = {
+      "esprima-1.0.4" = self.by-version."esprima"."1.0.4";
+      "estraverse-0.0.4" = self.by-version."estraverse"."0.0.4";
+      "escope-0.0.16" = self.by-version."escope"."0.0.16";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "esrefactor" ];
+  };
   by-spec."esshorten"."~ 0.0.2" =
     self.by-version."esshorten"."0.0.2";
   by-version."esshorten"."0.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -6513,6 +7695,26 @@
     ];
     passthru.names = [ "estraverse" ];
   };
+  by-spec."estraverse"."~0.0.4" =
+    self.by-version."estraverse"."0.0.4";
+  by-version."estraverse"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "estraverse-0.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/estraverse/-/estraverse-0.0.4.tgz";
+        name = "estraverse-0.0.4.tgz";
+        sha1 = "01a0932dfee574684a598af5a67c3bf9b6428db2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."estraverse" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "estraverse" ];
+  };
   by-spec."estraverse"."~1.3.0" =
     self.by-version."estraverse"."1.3.2";
   by-spec."estraverse"."~1.5.0" =
@@ -6555,27 +7757,6 @@
     ];
     passthru.names = [ "esutils" ];
   };
-  by-spec."etag"."~1.4.0" =
-    self.by-version."etag"."1.4.0";
-  by-version."etag"."1.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "etag-1.4.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/etag/-/etag-1.4.0.tgz";
-        name = "etag-1.4.0.tgz";
-        sha1 = "3050991615857707c04119d075ba2088e0701225";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."etag" or []);
-    deps = {
-      "crc-3.0.0" = self.by-version."crc"."3.0.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "etag" ];
-  };
   by-spec."etag"."~1.5.0" =
     self.by-version."etag"."1.5.0";
   by-version."etag"."1.5.0" = lib.makeOverridable self.buildNodePackage {
@@ -6767,7 +7948,7 @@
       "node-swt-0.1.1" = self.by-version."node-swt"."0.1.1";
       "node-wsfederation-0.1.1" = self.by-version."node-wsfederation"."0.1.1";
       "debug-0.5.0" = self.by-version."debug"."0.5.0";
-      "express-3.18.0" = self.by-version."express"."3.18.0";
+      "express-3.18.2" = self.by-version."express"."3.18.2";
     };
     peerDependencies = [
     ];
@@ -6798,38 +7979,39 @@
   by-spec."exit"."~0.1.1" =
     self.by-version."exit"."0.1.2";
   by-spec."express"."*" =
-    self.by-version."express"."4.9.8";
-  by-version."express"."4.9.8" = lib.makeOverridable self.buildNodePackage {
-    name = "express-4.9.8";
+    self.by-version."express"."4.10.1";
+  by-version."express"."4.10.1" = lib.makeOverridable self.buildNodePackage {
+    name = "express-4.10.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-4.9.8.tgz";
-        name = "express-4.9.8.tgz";
-        sha1 = "f360f596baeabbd0e5223b603d6eb578d9d2d10d";
+        url = "http://registry.npmjs.org/express/-/express-4.10.1.tgz";
+        name = "express-4.10.1.tgz";
+        sha1 = "a291c812bc8b0ed6ab877366fe0e68a2368fde7e";
       })
     ];
     buildInputs =
       (self.nativeDeps."express" or []);
     deps = {
       "accepts-1.1.2" = self.by-version."accepts"."1.1.2";
+      "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
       "cookie-signature-1.0.5" = self.by-version."cookie-signature"."1.0.5";
-      "debug-2.0.0" = self.by-version."debug"."2.0.0";
-      "depd-0.4.5" = self.by-version."depd"."0.4.5";
+      "debug-2.1.0" = self.by-version."debug"."2.1.0";
+      "depd-1.0.0" = self.by-version."depd"."1.0.0";
       "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
-      "etag-1.4.0" = self.by-version."etag"."1.4.0";
-      "finalhandler-0.2.0" = self.by-version."finalhandler"."0.2.0";
+      "etag-1.5.0" = self.by-version."etag"."1.5.0";
+      "finalhandler-0.3.2" = self.by-version."finalhandler"."0.3.2";
       "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
       "media-typer-0.3.0" = self.by-version."media-typer"."0.3.0";
       "methods-1.1.0" = self.by-version."methods"."1.1.0";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
+      "on-finished-2.1.1" = self.by-version."on-finished"."2.1.1";
       "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
       "path-to-regexp-0.1.3" = self.by-version."path-to-regexp"."0.1.3";
       "proxy-addr-1.0.3" = self.by-version."proxy-addr"."1.0.3";
-      "qs-2.2.4" = self.by-version."qs"."2.2.4";
+      "qs-2.3.2" = self.by-version."qs"."2.3.2";
       "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
-      "send-0.9.3" = self.by-version."send"."0.9.3";
-      "serve-static-1.6.4" = self.by-version."serve-static"."1.6.4";
+      "send-0.10.1" = self.by-version."send"."0.10.1";
+      "serve-static-1.7.1" = self.by-version."serve-static"."1.7.1";
       "type-is-1.5.2" = self.by-version."type-is"."1.5.2";
       "vary-1.0.0" = self.by-version."vary"."1.0.0";
       "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
@@ -6840,7 +8022,7 @@
     ];
     passthru.names = [ "express" ];
   };
-  "express" = self.by-version."express"."4.9.8";
+  "express" = self.by-version."express"."4.10.1";
   by-spec."express"."2.5.11" =
     self.by-version."express"."2.5.11";
   by-version."express"."2.5.11" = lib.makeOverridable self.buildNodePackage {
@@ -6928,22 +8110,22 @@
     passthru.names = [ "express" ];
   };
   by-spec."express"."3.x" =
-    self.by-version."express"."3.18.0";
-  by-version."express"."3.18.0" = lib.makeOverridable self.buildNodePackage {
-    name = "express-3.18.0";
+    self.by-version."express"."3.18.2";
+  by-version."express"."3.18.2" = lib.makeOverridable self.buildNodePackage {
+    name = "express-3.18.2";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express/-/express-3.18.0.tgz";
-        name = "express-3.18.0.tgz";
-        sha1 = "ff1f4ee689ba6e622a087e397994f7c2115c5c57";
+        url = "http://registry.npmjs.org/express/-/express-3.18.2.tgz";
+        name = "express-3.18.2.tgz";
+        sha1 = "7f92bce77e4f606a8defcf6aed54f8cfa0e044ca";
       })
     ];
     buildInputs =
       (self.nativeDeps."express" or []);
     deps = {
       "basic-auth-1.0.0" = self.by-version."basic-auth"."1.0.0";
-      "connect-2.27.0" = self.by-version."connect"."2.27.0";
+      "connect-2.27.2" = self.by-version."connect"."2.27.2";
       "content-disposition-0.5.0" = self.by-version."content-disposition"."0.5.0";
       "commander-1.3.2" = self.by-version."commander"."1.3.2";
       "cookie-signature-1.0.5" = self.by-version."cookie-signature"."1.0.5";
@@ -6958,7 +8140,8 @@
       "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
       "proxy-addr-1.0.3" = self.by-version."proxy-addr"."1.0.3";
       "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
-      "send-0.10.0" = self.by-version."send"."0.10.0";
+      "send-0.10.1" = self.by-version."send"."0.10.1";
+      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
       "vary-1.0.0" = self.by-version."vary"."1.0.0";
       "cookie-0.1.2" = self.by-version."cookie"."0.1.2";
       "merge-descriptors-0.0.2" = self.by-version."merge-descriptors"."0.0.2";
@@ -6968,7 +8151,7 @@
     passthru.names = [ "express" ];
   };
   by-spec."express".">=3.0.0" =
-    self.by-version."express"."4.9.8";
+    self.by-version."express"."4.10.1";
   by-spec."express"."~3.1.1" =
     self.by-version."express"."3.1.2";
   by-version."express"."3.1.2" = lib.makeOverridable self.buildNodePackage {
@@ -7099,7 +8282,7 @@
       "async-0.7.0" = self.by-version."async"."0.7.0";
     };
     peerDependencies = [
-      self.by-version."express"."4.9.8"
+      self.by-version."express"."4.10.1"
     ];
     passthru.names = [ "express-form" ];
   };
@@ -7153,16 +8336,16 @@
     ];
     passthru.names = [ "express-session" ];
   };
-  by-spec."express-session"."~1.9.0" =
-    self.by-version."express-session"."1.9.0";
-  by-version."express-session"."1.9.0" = lib.makeOverridable self.buildNodePackage {
-    name = "express-session-1.9.0";
+  by-spec."express-session"."~1.9.1" =
+    self.by-version."express-session"."1.9.1";
+  by-version."express-session"."1.9.1" = lib.makeOverridable self.buildNodePackage {
+    name = "express-session-1.9.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/express-session/-/express-session-1.9.0.tgz";
-        name = "express-session-1.9.0.tgz";
-        sha1 = "75ceb80194e5f3d0c71922e4affb90bc40c119f1";
+        url = "http://registry.npmjs.org/express-session/-/express-session-1.9.1.tgz";
+        name = "express-session-1.9.1.tgz";
+        sha1 = "27f9192d04eec2c9106dfd3315cdc98b48fdfd3b";
       })
     ];
     buildInputs =
@@ -7326,38 +8509,37 @@
   };
   by-spec."eyes".">=0.1.6" =
     self.by-version."eyes"."0.1.8";
-  by-spec."faye-websocket"."*" =
-    self.by-version."faye-websocket"."0.7.3";
-  by-version."faye-websocket"."0.7.3" = lib.makeOverridable self.buildNodePackage {
-    name = "faye-websocket-0.7.3";
+  by-spec."falafel"."~0.1.6" =
+    self.by-version."falafel"."0.1.6";
+  by-version."falafel"."0.1.6" = lib.makeOverridable self.buildNodePackage {
+    name = "falafel-0.1.6";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.3.tgz";
-        name = "faye-websocket-0.7.3.tgz";
-        sha1 = "cc4074c7f4a4dfd03af54dd65c354b135132ce11";
+        url = "http://registry.npmjs.org/falafel/-/falafel-0.1.6.tgz";
+        name = "falafel-0.1.6.tgz";
+        sha1 = "3084cf3d41b59d15c813be6f259557fdc82b0660";
       })
     ];
     buildInputs =
-      (self.nativeDeps."faye-websocket" or []);
+      (self.nativeDeps."falafel" or []);
     deps = {
-      "websocket-driver-0.3.6" = self.by-version."websocket-driver"."0.3.6";
+      "esprima-1.0.4" = self.by-version."esprima"."1.0.4";
     };
     peerDependencies = [
     ];
-    passthru.names = [ "faye-websocket" ];
+    passthru.names = [ "falafel" ];
   };
-  "faye-websocket" = self.by-version."faye-websocket"."0.7.3";
-  by-spec."faye-websocket"."0.7.2" =
-    self.by-version."faye-websocket"."0.7.2";
-  by-version."faye-websocket"."0.7.2" = lib.makeOverridable self.buildNodePackage {
-    name = "faye-websocket-0.7.2";
+  by-spec."faye-websocket"."*" =
+    self.by-version."faye-websocket"."0.7.3";
+  by-version."faye-websocket"."0.7.3" = lib.makeOverridable self.buildNodePackage {
+    name = "faye-websocket-0.7.3";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.2.tgz";
-        name = "faye-websocket-0.7.2.tgz";
-        sha1 = "799970386f87105592397434b02abfa4f07bdf70";
+        url = "http://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.3.tgz";
+        name = "faye-websocket-0.7.3.tgz";
+        sha1 = "cc4074c7f4a4dfd03af54dd65c354b135132ce11";
       })
     ];
     buildInputs =
@@ -7369,6 +8551,13 @@
     ];
     passthru.names = [ "faye-websocket" ];
   };
+  "faye-websocket" = self.by-version."faye-websocket"."0.7.3";
+  by-spec."faye-websocket".">= 0.4.1" =
+    self.by-version."faye-websocket"."0.7.3";
+  by-spec."faye-websocket"."^0.7.3" =
+    self.by-version."faye-websocket"."0.7.3";
+  by-spec."faye-websocket"."~0.7.0" =
+    self.by-version."faye-websocket"."0.7.3";
   by-spec."fetch-bower".">=2 <3" =
     self.by-version."fetch-bower"."2.0.0";
   by-version."fetch-bower"."2.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -7482,38 +8671,16 @@
     ];
     passthru.names = [ "finalhandler" ];
   };
-  by-spec."finalhandler"."0.2.0" =
-    self.by-version."finalhandler"."0.2.0";
-  by-version."finalhandler"."0.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "finalhandler-0.2.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.2.0.tgz";
-        name = "finalhandler-0.2.0.tgz";
-        sha1 = "794082424b17f6a4b2a0eda39f9db6948ee4be8d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."finalhandler" or []);
-    deps = {
-      "debug-2.0.0" = self.by-version."debug"."2.0.0";
-      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "finalhandler" ];
-  };
-  by-spec."finalhandler"."0.3.1" =
-    self.by-version."finalhandler"."0.3.1";
-  by-version."finalhandler"."0.3.1" = lib.makeOverridable self.buildNodePackage {
-    name = "finalhandler-0.3.1";
+  by-spec."finalhandler"."0.3.2" =
+    self.by-version."finalhandler"."0.3.2";
+  by-version."finalhandler"."0.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "finalhandler-0.3.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.3.1.tgz";
-        name = "finalhandler-0.3.1.tgz";
-        sha1 = "ffda7643228678c6b088c89421a8381663961808";
+        url = "http://registry.npmjs.org/finalhandler/-/finalhandler-0.3.2.tgz";
+        name = "finalhandler-0.3.2.tgz";
+        sha1 = "7b389b0fd3647a6f90bd564e22624bf8a4a77fb5";
       })
     ];
     buildInputs =
@@ -7521,7 +8688,7 @@
     deps = {
       "debug-2.1.0" = self.by-version."debug"."2.1.0";
       "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
+      "on-finished-2.1.1" = self.by-version."on-finished"."2.1.1";
     };
     peerDependencies = [
     ];
@@ -7723,15 +8890,15 @@
     passthru.names = [ "foreachasync" ];
   };
   by-spec."forever"."*" =
-    self.by-version."forever"."0.11.1";
-  by-version."forever"."0.11.1" = lib.makeOverridable self.buildNodePackage {
-    name = "forever-0.11.1";
+    self.by-version."forever"."0.12.0";
+  by-version."forever"."0.12.0" = lib.makeOverridable self.buildNodePackage {
+    name = "forever-0.12.0";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/forever/-/forever-0.11.1.tgz";
-        name = "forever-0.11.1.tgz";
-        sha1 = "50ac8744c0a6e0c266524c4746397f74d6b09c5b";
+        url = "http://registry.npmjs.org/forever/-/forever-0.12.0.tgz";
+        name = "forever-0.12.0.tgz";
+        sha1 = "beb52ba8fbd30366452819424a35192e132582fd";
       })
     ];
     buildInputs =
@@ -7740,7 +8907,7 @@
       "colors-0.6.2" = self.by-version."colors"."0.6.2";
       "cliff-0.1.8" = self.by-version."cliff"."0.1.8";
       "flatiron-0.3.11" = self.by-version."flatiron"."0.3.11";
-      "forever-monitor-1.2.3" = self.by-version."forever-monitor"."1.2.3";
+      "forever-monitor-1.4.0" = self.by-version."forever-monitor"."1.4.0";
       "nconf-0.6.9" = self.by-version."nconf"."0.6.9";
       "nssocket-0.5.1" = self.by-version."nssocket"."0.5.1";
       "optimist-0.6.1" = self.by-version."optimist"."0.6.1";
@@ -7754,7 +8921,7 @@
     ];
     passthru.names = [ "forever" ];
   };
-  "forever" = self.by-version."forever"."0.11.1";
+  "forever" = self.by-version."forever"."0.12.0";
   by-spec."forever-agent"."~0.2.0" =
     self.by-version."forever-agent"."0.2.0";
   by-version."forever-agent"."0.2.0" = lib.makeOverridable self.buildNodePackage {
@@ -7796,15 +8963,15 @@
     passthru.names = [ "forever-agent" ];
   };
   by-spec."forever-monitor"."*" =
-    self.by-version."forever-monitor"."1.3.0";
-  by-version."forever-monitor"."1.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "forever-monitor-1.3.0";
+    self.by-version."forever-monitor"."1.4.0";
+  by-version."forever-monitor"."1.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "forever-monitor-1.4.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/forever-monitor/-/forever-monitor-1.3.0.tgz";
-        name = "forever-monitor-1.3.0.tgz";
-        sha1 = "57e883da03ec0eb690ad4259afbccf22f609d52e";
+        url = "http://registry.npmjs.org/forever-monitor/-/forever-monitor-1.4.0.tgz";
+        name = "forever-monitor-1.4.0.tgz";
+        sha1 = "709c0de39073e139072056fe0431d693c773796c";
       })
     ];
     buildInputs =
@@ -7821,7 +8988,7 @@
     ];
     passthru.names = [ "forever-monitor" ];
   };
-  "forever-monitor" = self.by-version."forever-monitor"."1.3.0";
+  "forever-monitor" = self.by-version."forever-monitor"."1.4.0";
   by-spec."forever-monitor"."1.1.0" =
     self.by-version."forever-monitor"."1.1.0";
   by-version."forever-monitor"."1.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -7848,31 +9015,30 @@
     ];
     passthru.names = [ "forever-monitor" ];
   };
-  by-spec."forever-monitor"."1.2.3" =
-    self.by-version."forever-monitor"."1.2.3";
-  by-version."forever-monitor"."1.2.3" = lib.makeOverridable self.buildNodePackage {
-    name = "forever-monitor-1.2.3";
+  by-spec."forever-monitor"."1.4.0" =
+    self.by-version."forever-monitor"."1.4.0";
+  by-spec."form-data"."0.0.8" =
+    self.by-version."form-data"."0.0.8";
+  by-version."form-data"."0.0.8" = lib.makeOverridable self.buildNodePackage {
+    name = "form-data-0.0.8";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/forever-monitor/-/forever-monitor-1.2.3.tgz";
-        name = "forever-monitor-1.2.3.tgz";
-        sha1 = "b27ac3acb6fdcc7315d6cd85830f2d004733028b";
+        url = "http://registry.npmjs.org/form-data/-/form-data-0.0.8.tgz";
+        name = "form-data-0.0.8.tgz";
+        sha1 = "0890cd1005c5ccecc0b9d24a88052c92442d0db5";
       })
     ];
     buildInputs =
-      (self.nativeDeps."forever-monitor" or []);
+      (self.nativeDeps."form-data" or []);
     deps = {
-      "broadway-0.2.10" = self.by-version."broadway"."0.2.10";
-      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
-      "pkginfo-0.3.0" = self.by-version."pkginfo"."0.3.0";
-      "ps-tree-0.0.3" = self.by-version."ps-tree"."0.0.3";
-      "watch-0.5.1" = self.by-version."watch"."0.5.1";
-      "utile-0.1.7" = self.by-version."utile"."0.1.7";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "async-0.2.10" = self.by-version."async"."0.2.10";
     };
     peerDependencies = [
     ];
-    passthru.names = [ "forever-monitor" ];
+    passthru.names = [ "form-data" ];
   };
   by-spec."form-data"."0.1.3" =
     self.by-version."form-data"."0.1.3";
@@ -7889,7 +9055,7 @@
     buildInputs =
       (self.nativeDeps."form-data" or []);
     deps = {
-      "combined-stream-0.0.5" = self.by-version."combined-stream"."0.0.5";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "async-0.9.0" = self.by-version."async"."0.9.0";
     };
@@ -7912,7 +9078,7 @@
     buildInputs =
       (self.nativeDeps."form-data" or []);
     deps = {
-      "combined-stream-0.0.5" = self.by-version."combined-stream"."0.0.5";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "async-0.2.10" = self.by-version."async"."0.2.10";
     };
@@ -7935,7 +9101,7 @@
     buildInputs =
       (self.nativeDeps."form-data" or []);
     deps = {
-      "combined-stream-0.0.5" = self.by-version."combined-stream"."0.0.5";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "async-0.9.0" = self.by-version."async"."0.9.0";
     };
@@ -7943,16 +9109,16 @@
     ];
     passthru.names = [ "form-data" ];
   };
-  by-spec."formatio"."~1.0" =
-    self.by-version."formatio"."1.0.2";
-  by-version."formatio"."1.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "formatio-1.0.2";
+  by-spec."formatio"."~1.1.1" =
+    self.by-version."formatio"."1.1.1";
+  by-version."formatio"."1.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "formatio-1.1.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/formatio/-/formatio-1.0.2.tgz";
-        name = "formatio-1.0.2.tgz";
-        sha1 = "e7991ca144ff7d8cff07bb9ac86a9b79c6ba47ef";
+        url = "http://registry.npmjs.org/formatio/-/formatio-1.1.1.tgz";
+        name = "formatio-1.1.1.tgz";
+        sha1 = "5ed3ccd636551097383465d996199100e86161e9";
       })
     ];
     buildInputs =
@@ -8301,16 +9467,16 @@
     ];
     passthru.names = [ "fsevents" ];
   };
-  by-spec."fstream"."^1.0.0" =
-    self.by-version."fstream"."1.0.2";
-  by-version."fstream"."1.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "fstream-1.0.2";
+  by-spec."fstream"."0" =
+    self.by-version."fstream"."0.1.31";
+  by-version."fstream"."0.1.31" = lib.makeOverridable self.buildNodePackage {
+    name = "fstream-0.1.31";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/fstream/-/fstream-1.0.2.tgz";
-        name = "fstream-1.0.2.tgz";
-        sha1 = "56930ff1b4d4d7b1a689c8656b3a11e744ab92c6";
+        url = "http://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
+        name = "fstream-0.1.31.tgz";
+        sha1 = "7337f058fbbbbefa8c9f561a28cab0849202c988";
       })
     ];
     buildInputs =
@@ -8325,18 +9491,16 @@
     ];
     passthru.names = [ "fstream" ];
   };
-  by-spec."fstream"."^1.0.2" =
+  by-spec."fstream"."^1.0.0" =
     self.by-version."fstream"."1.0.2";
-  by-spec."fstream"."~0.1.8" =
-    self.by-version."fstream"."0.1.31";
-  by-version."fstream"."0.1.31" = lib.makeOverridable self.buildNodePackage {
-    name = "fstream-0.1.31";
+  by-version."fstream"."1.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "fstream-1.0.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/fstream/-/fstream-0.1.31.tgz";
-        name = "fstream-0.1.31.tgz";
-        sha1 = "7337f058fbbbbefa8c9f561a28cab0849202c988";
+        url = "http://registry.npmjs.org/fstream/-/fstream-1.0.2.tgz";
+        name = "fstream-1.0.2.tgz";
+        sha1 = "56930ff1b4d4d7b1a689c8656b3a11e744ab92c6";
       })
     ];
     buildInputs =
@@ -8351,6 +9515,16 @@
     ];
     passthru.names = [ "fstream" ];
   };
+  by-spec."fstream"."^1.0.2" =
+    self.by-version."fstream"."1.0.2";
+  by-spec."fstream"."~0.1.23" =
+    self.by-version."fstream"."0.1.31";
+  by-spec."fstream"."~0.1.25" =
+    self.by-version."fstream"."0.1.31";
+  by-spec."fstream"."~0.1.28" =
+    self.by-version."fstream"."0.1.31";
+  by-spec."fstream"."~0.1.8" =
+    self.by-version."fstream"."0.1.31";
   by-spec."fstream"."~1.0.2" =
     self.by-version."fstream"."1.0.2";
   by-spec."fstream-ignore"."^1.0.0" =
@@ -8378,7 +9552,31 @@
   };
   by-spec."fstream-ignore"."~1.0.1" =
     self.by-version."fstream-ignore"."1.0.1";
-  by-spec."fstream-npm"."~1.0.0" =
+  by-spec."fstream-npm"."~0.1.3" =
+    self.by-version."fstream-npm"."0.1.8";
+  by-version."fstream-npm"."0.1.8" = lib.makeOverridable self.buildNodePackage {
+    name = "fstream-npm-0.1.8";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/fstream-npm/-/fstream-npm-0.1.8.tgz";
+        name = "fstream-npm-0.1.8.tgz";
+        sha1 = "38a70fdeb510a443e1a5378d90413403fc724fa8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."fstream-npm" or []);
+    deps = {
+      "fstream-ignore-1.0.1" = self.by-version."fstream-ignore"."1.0.1";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "fstream-npm" ];
+  };
+  by-spec."fstream-npm"."~0.1.6" =
+    self.by-version."fstream-npm"."0.1.8";
+  by-spec."fstream-npm"."~1.0.1" =
     self.by-version."fstream-npm"."1.0.1";
   by-version."fstream-npm"."1.0.1" = lib.makeOverridable self.buildNodePackage {
     name = "fstream-npm-1.0.1";
@@ -8505,6 +9703,26 @@
     passthru.names = [ "git-run" ];
   };
   "git-run" = self.by-version."git-run"."0.2.0";
+  by-spec."github-url-from-git"."1.1.1" =
+    self.by-version."github-url-from-git"."1.1.1";
+  by-version."github-url-from-git"."1.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "github-url-from-git-1.1.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/github-url-from-git/-/github-url-from-git-1.1.1.tgz";
+        name = "github-url-from-git-1.1.1.tgz";
+        sha1 = "1f89623453123ef9623956e264c60bf4c3cf5ccf";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."github-url-from-git" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "github-url-from-git" ];
+  };
   by-spec."github-url-from-git"."^1.3.0" =
     self.by-version."github-url-from-git"."1.4.0";
   by-version."github-url-from-git"."1.4.0" = lib.makeOverridable self.buildNodePackage {
@@ -8525,8 +9743,50 @@
     ];
     passthru.names = [ "github-url-from-git" ];
   };
+  by-spec."github-url-from-git"."~1.1.1" =
+    self.by-version."github-url-from-git"."1.1.1";
   by-spec."github-url-from-git"."~1.4.0" =
     self.by-version."github-url-from-git"."1.4.0";
+  by-spec."github-url-from-username-repo"."0.0.2" =
+    self.by-version."github-url-from-username-repo"."0.0.2";
+  by-version."github-url-from-username-repo"."0.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "github-url-from-username-repo-0.0.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/github-url-from-username-repo/-/github-url-from-username-repo-0.0.2.tgz";
+        name = "github-url-from-username-repo-0.0.2.tgz";
+        sha1 = "0d9ee8e2bca36d5f065a1bcd23eb3f1fa3d636bd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."github-url-from-username-repo" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "github-url-from-username-repo" ];
+  };
+  by-spec."github-url-from-username-repo"."^0.1.0" =
+    self.by-version."github-url-from-username-repo"."0.1.0";
+  by-version."github-url-from-username-repo"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "github-url-from-username-repo-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/github-url-from-username-repo/-/github-url-from-username-repo-0.1.0.tgz";
+        name = "github-url-from-username-repo-0.1.0.tgz";
+        sha1 = "fe398af670692e91af7bcfc5ae1d99ff97b1df89";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."github-url-from-username-repo" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "github-url-from-username-repo" ];
+  };
   by-spec."github-url-from-username-repo"."^1.0.0" =
     self.by-version."github-url-from-username-repo"."1.0.2";
   by-version."github-url-from-username-repo"."1.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -8551,6 +9811,28 @@
     self.by-version."github-url-from-username-repo"."1.0.2";
   by-spec."github-url-from-username-repo"."~1.0.2" =
     self.by-version."github-url-from-username-repo"."1.0.2";
+  by-spec."glob"."3" =
+    self.by-version."glob"."3.2.11";
+  by-version."glob"."3.2.11" = lib.makeOverridable self.buildNodePackage {
+    name = "glob-3.2.11";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/glob/-/glob-3.2.11.tgz";
+        name = "glob-3.2.11.tgz";
+        sha1 = "4a973f635b9190f715d10987d5c00fd2815ebe3d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."glob" or []);
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "minimatch-0.3.0" = self.by-version."minimatch"."0.3.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "glob" ];
+  };
   by-spec."glob"."3 || 4" =
     self.by-version."glob"."4.0.6";
   by-version."glob"."4.0.6" = lib.makeOverridable self.buildNodePackage {
@@ -8575,6 +9857,8 @@
     ];
     passthru.names = [ "glob" ];
   };
+  by-spec."glob"."3.2.11" =
+    self.by-version."glob"."3.2.11";
   by-spec."glob"."3.2.3" =
     self.by-version."glob"."3.2.3";
   by-version."glob"."3.2.3" = lib.makeOverridable self.buildNodePackage {
@@ -8600,26 +9884,6 @@
   };
   by-spec."glob"."3.2.x" =
     self.by-version."glob"."3.2.11";
-  by-version."glob"."3.2.11" = lib.makeOverridable self.buildNodePackage {
-    name = "glob-3.2.11";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/glob/-/glob-3.2.11.tgz";
-        name = "glob-3.2.11.tgz";
-        sha1 = "4a973f635b9190f715d10987d5c00fd2815ebe3d";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."glob" or []);
-    deps = {
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "minimatch-0.3.0" = self.by-version."minimatch"."0.3.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "glob" ];
-  };
   by-spec."glob"."3.x" =
     self.by-version."glob"."3.2.11";
   by-spec."glob"."4.x" =
@@ -8659,10 +9923,14 @@
   };
   by-spec."glob"."~3.2.1" =
     self.by-version."glob"."3.2.11";
+  by-spec."glob"."~3.2.3" =
+    self.by-version."glob"."3.2.11";
   by-spec."glob"."~3.2.6" =
     self.by-version."glob"."3.2.11";
   by-spec."glob"."~3.2.7" =
     self.by-version."glob"."3.2.11";
+  by-spec."glob"."~3.2.8" =
+    self.by-version."glob"."3.2.11";
   by-spec."glob"."~3.2.9" =
     self.by-version."glob"."3.2.11";
   by-spec."glob"."~4.0.2" =
@@ -8781,16 +10049,16 @@
     ];
     passthru.names = [ "got" ];
   };
-  by-spec."graceful-fs"."2 || 3" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-version."graceful-fs"."3.0.4" = lib.makeOverridable self.buildNodePackage {
-    name = "graceful-fs-3.0.4";
+  by-spec."graceful-fs"."1.2" =
+    self.by-version."graceful-fs"."1.2.3";
+  by-version."graceful-fs"."1.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "graceful-fs-1.2.3";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.4.tgz";
-        name = "graceful-fs-3.0.4.tgz";
-        sha1 = "a0306d9b0940e0fc512d33b5df1014e88e0637a3";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
+        name = "graceful-fs-1.2.3.tgz";
+        sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
       })
     ];
     buildInputs =
@@ -8801,24 +10069,16 @@
     ];
     passthru.names = [ "graceful-fs" ];
   };
-  by-spec."graceful-fs"."3" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-spec."graceful-fs".">3.0.1 <4.0.0-0" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-spec."graceful-fs"."^3.0.0" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-spec."graceful-fs"."^3.0.2" =
-    self.by-version."graceful-fs"."3.0.4";
-  by-spec."graceful-fs"."~1" =
-    self.by-version."graceful-fs"."1.2.3";
-  by-version."graceful-fs"."1.2.3" = lib.makeOverridable self.buildNodePackage {
-    name = "graceful-fs-1.2.3";
+  by-spec."graceful-fs"."2" =
+    self.by-version."graceful-fs"."2.0.3";
+  by-version."graceful-fs"."2.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "graceful-fs-2.0.3";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz";
-        name = "graceful-fs-1.2.3.tgz";
-        sha1 = "15a4806a57547cb2d2dbf27f42e89a8c3451b364";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz";
+        name = "graceful-fs-2.0.3.tgz";
+        sha1 = "7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0";
       })
     ];
     buildInputs =
@@ -8829,18 +10089,16 @@
     ];
     passthru.names = [ "graceful-fs" ];
   };
-  by-spec."graceful-fs"."~1.2.0" =
-    self.by-version."graceful-fs"."1.2.3";
-  by-spec."graceful-fs"."~2.0.0" =
-    self.by-version."graceful-fs"."2.0.3";
-  by-version."graceful-fs"."2.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "graceful-fs-2.0.3";
+  by-spec."graceful-fs"."2 || 3" =
+    self.by-version."graceful-fs"."3.0.4";
+  by-version."graceful-fs"."3.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "graceful-fs-3.0.4";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-2.0.3.tgz";
-        name = "graceful-fs-2.0.3.tgz";
-        sha1 = "7cd2cdb228a4a3f36e95efa6cc142de7d1a136d0";
+        url = "http://registry.npmjs.org/graceful-fs/-/graceful-fs-3.0.4.tgz";
+        name = "graceful-fs-3.0.4.tgz";
+        sha1 = "a0306d9b0940e0fc512d33b5df1014e88e0637a3";
       })
     ];
     buildInputs =
@@ -8851,6 +10109,22 @@
     ];
     passthru.names = [ "graceful-fs" ];
   };
+  by-spec."graceful-fs"."3" =
+    self.by-version."graceful-fs"."3.0.4";
+  by-spec."graceful-fs".">3.0.1 <4.0.0-0" =
+    self.by-version."graceful-fs"."3.0.4";
+  by-spec."graceful-fs"."^3.0.0" =
+    self.by-version."graceful-fs"."3.0.4";
+  by-spec."graceful-fs"."^3.0.2" =
+    self.by-version."graceful-fs"."3.0.4";
+  by-spec."graceful-fs"."~1" =
+    self.by-version."graceful-fs"."1.2.3";
+  by-spec."graceful-fs"."~1.2.0" =
+    self.by-version."graceful-fs"."1.2.3";
+  by-spec."graceful-fs"."~2" =
+    self.by-version."graceful-fs"."2.0.3";
+  by-spec."graceful-fs"."~2.0.0" =
+    self.by-version."graceful-fs"."2.0.3";
   by-spec."graceful-fs"."~2.0.1" =
     self.by-version."graceful-fs"."2.0.3";
   by-spec."graceful-fs"."~3.0.0" =
@@ -9032,7 +10306,7 @@
     buildInputs =
       (self.nativeDeps."grunt-contrib-jshint" or []);
     deps = {
-      "jshint-2.5.6" = self.by-version."jshint"."2.5.6";
+      "jshint-2.5.8" = self.by-version."jshint"."2.5.8";
       "hooker-0.2.3" = self.by-version."hooker"."0.2.3";
     };
     peerDependencies = [
@@ -9042,15 +10316,15 @@
   };
   "grunt-contrib-jshint" = self.by-version."grunt-contrib-jshint"."0.10.0";
   by-spec."grunt-contrib-less"."*" =
-    self.by-version."grunt-contrib-less"."0.11.4";
-  by-version."grunt-contrib-less"."0.11.4" = lib.makeOverridable self.buildNodePackage {
-    name = "grunt-contrib-less-0.11.4";
+    self.by-version."grunt-contrib-less"."0.12.0";
+  by-version."grunt-contrib-less"."0.12.0" = lib.makeOverridable self.buildNodePackage {
+    name = "grunt-contrib-less-0.12.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/grunt-contrib-less/-/grunt-contrib-less-0.11.4.tgz";
-        name = "grunt-contrib-less-0.11.4.tgz";
-        sha1 = "5667475ac4517f32ca623b9a4d81d6cf4aed2b51";
+        url = "http://registry.npmjs.org/grunt-contrib-less/-/grunt-contrib-less-0.12.0.tgz";
+        name = "grunt-contrib-less-0.12.0.tgz";
+        sha1 = "ee6a41b5f94bbe96b5f0d86b16e061c114b954be";
       })
     ];
     buildInputs =
@@ -9067,7 +10341,7 @@
     ];
     passthru.names = [ "grunt-contrib-less" ];
   };
-  "grunt-contrib-less" = self.by-version."grunt-contrib-less"."0.11.4";
+  "grunt-contrib-less" = self.by-version."grunt-contrib-less"."0.12.0";
   by-spec."grunt-contrib-requirejs"."*" =
     self.by-version."grunt-contrib-requirejs"."0.4.4";
   by-version."grunt-contrib-requirejs"."0.4.4" = lib.makeOverridable self.buildNodePackage {
@@ -9386,7 +10660,7 @@
     buildInputs =
       (self.nativeDeps."gzippo" or []);
     deps = {
-      "send-0.10.0" = self.by-version."send"."0.10.0";
+      "send-0.10.1" = self.by-version."send"."0.10.1";
     };
     peerDependencies = [
     ];
@@ -9541,6 +10815,8 @@
     ];
     passthru.names = [ "hat" ];
   };
+  by-spec."hat"."~0.0.3" =
+    self.by-version."hat"."0.0.3";
   by-spec."hawk"."1.1.1" =
     self.by-version."hawk"."1.1.1";
   by-version."hawk"."1.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -9589,6 +10865,30 @@
     ];
     passthru.names = [ "hawk" ];
   };
+  by-spec."hawk"."~0.13.0" =
+    self.by-version."hawk"."0.13.1";
+  by-version."hawk"."0.13.1" = lib.makeOverridable self.buildNodePackage {
+    name = "hawk-0.13.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/hawk/-/hawk-0.13.1.tgz";
+        name = "hawk-0.13.1.tgz";
+        sha1 = "3617958821f58311e4d7f6de291fca662b412ef4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."hawk" or []);
+    deps = {
+      "hoek-0.8.5" = self.by-version."hoek"."0.8.5";
+      "boom-0.4.2" = self.by-version."boom"."0.4.2";
+      "cryptiles-0.2.2" = self.by-version."cryptiles"."0.2.2";
+      "sntp-0.2.4" = self.by-version."sntp"."0.2.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "hawk" ];
+  };
   by-spec."hawk"."~1.0.0" =
     self.by-version."hawk"."1.0.0";
   by-version."hawk"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -9700,6 +11000,26 @@
     ];
     passthru.names = [ "hoek" ];
   };
+  by-spec."hoek"."0.8.x" =
+    self.by-version."hoek"."0.8.5";
+  by-version."hoek"."0.8.5" = lib.makeOverridable self.buildNodePackage {
+    name = "hoek-0.8.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/hoek/-/hoek-0.8.5.tgz";
+        name = "hoek-0.8.5.tgz";
+        sha1 = "1e9fd770ef7ebe0274adfcb5b0806a025a5e4e9f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."hoek" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "hoek" ];
+  };
   by-spec."hoek"."0.9.x" =
     self.by-version."hoek"."0.9.1";
   by-version."hoek"."0.9.1" = lib.makeOverridable self.buildNodePackage {
@@ -9760,24 +11080,24 @@
     ];
     passthru.names = [ "hooks" ];
   };
-  by-spec."htmlparser2"."3.7.x" =
-    self.by-version."htmlparser2"."3.7.3";
-  by-version."htmlparser2"."3.7.3" = lib.makeOverridable self.buildNodePackage {
-    name = "htmlparser2-3.7.3";
+  by-spec."htmlparser2"."3.8.x" =
+    self.by-version."htmlparser2"."3.8.0";
+  by-version."htmlparser2"."3.8.0" = lib.makeOverridable self.buildNodePackage {
+    name = "htmlparser2-3.8.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.7.3.tgz";
-        name = "htmlparser2-3.7.3.tgz";
-        sha1 = "6a64c77637c08c6f30ec2a8157a53333be7cb05e";
+        url = "http://registry.npmjs.org/htmlparser2/-/htmlparser2-3.8.0.tgz";
+        name = "htmlparser2-3.8.0.tgz";
+        sha1 = "bd116771cac8b9f3b3035a6487789d8bf16e3097";
       })
     ];
     buildInputs =
       (self.nativeDeps."htmlparser2" or []);
     deps = {
-      "domhandler-2.2.0" = self.by-version."domhandler"."2.2.0";
+      "domhandler-2.2.1" = self.by-version."domhandler"."2.2.1";
       "domutils-1.5.0" = self.by-version."domutils"."1.5.0";
-      "domelementtype-1.1.1" = self.by-version."domelementtype"."1.1.1";
+      "domelementtype-1.1.3" = self.by-version."domelementtype"."1.1.3";
       "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
       "entities-1.0.0" = self.by-version."entities"."1.0.0";
     };
@@ -9829,6 +11149,50 @@
     ];
     passthru.names = [ "http-browserify" ];
   };
+  by-spec."http-browserify"."~1.1.0" =
+    self.by-version."http-browserify"."1.1.0";
+  by-version."http-browserify"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "http-browserify-1.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/http-browserify/-/http-browserify-1.1.0.tgz";
+        name = "http-browserify-1.1.0.tgz";
+        sha1 = "20d0f6fdab370d1fe778d44a7bc48ddb7260206d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."http-browserify" or []);
+    deps = {
+      "Base64-0.2.1" = self.by-version."Base64"."0.2.1";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "http-browserify" ];
+  };
+  by-spec."http-browserify"."~1.3.1" =
+    self.by-version."http-browserify"."1.3.2";
+  by-version."http-browserify"."1.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "http-browserify-1.3.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/http-browserify/-/http-browserify-1.3.2.tgz";
+        name = "http-browserify-1.3.2.tgz";
+        sha1 = "b562c34479349a690d7a6597df495aefa8c604f5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."http-browserify" or []);
+    deps = {
+      "Base64-0.2.1" = self.by-version."Base64"."0.2.1";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "http-browserify" ];
+  };
   by-spec."http-errors"."~1.2.6" =
     self.by-version."http-errors"."1.2.7";
   by-version."http-errors"."1.2.7" = lib.makeOverridable self.buildNodePackage {
@@ -9944,6 +11308,8 @@
     ];
     passthru.names = [ "http-signature" ];
   };
+  by-spec."http-signature"."~0.9.11" =
+    self.by-version."http-signature"."0.9.11";
   by-spec."https-browserify"."~0.0.0" =
     self.by-version."https-browserify"."0.0.0";
   by-version."https-browserify"."0.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -10116,6 +11482,8 @@
     ];
     passthru.names = [ "ieee754" ];
   };
+  by-spec."ieee754"."~1.1.1" =
+    self.by-version."ieee754"."1.1.4";
   by-spec."indexof"."0.0.1" =
     self.by-version."indexof"."0.0.1";
   by-version."indexof"."0.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -10256,16 +11624,65 @@
   };
   by-spec."ini"."~1.3.0" =
     self.by-version."ini"."1.3.0";
-  by-spec."init-package-json"."~1.1.0" =
-    self.by-version."init-package-json"."1.1.0";
-  by-version."init-package-json"."1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "init-package-json-1.1.0";
+  by-spec."init-package-json"."0.0.10" =
+    self.by-version."init-package-json"."0.0.10";
+  by-version."init-package-json"."0.0.10" = lib.makeOverridable self.buildNodePackage {
+    name = "init-package-json-0.0.10";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/init-package-json/-/init-package-json-1.1.0.tgz";
-        name = "init-package-json-1.1.0.tgz";
-        sha1 = "fea80c641974421ddd4c6169c3a911118b116d5c";
+        url = "http://registry.npmjs.org/init-package-json/-/init-package-json-0.0.10.tgz";
+        name = "init-package-json-0.0.10.tgz";
+        sha1 = "7baf10535227e0878105a04e44b78f132475da6a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."init-package-json" or []);
+    deps = {
+      "promzard-0.2.2" = self.by-version."promzard"."0.2.2";
+      "read-1.0.5" = self.by-version."read"."1.0.5";
+      "read-package-json-1.2.7" = self.by-version."read-package-json"."1.2.7";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "init-package-json" ];
+  };
+  by-spec."init-package-json"."0.0.14" =
+    self.by-version."init-package-json"."0.0.14";
+  by-version."init-package-json"."0.0.14" = lib.makeOverridable self.buildNodePackage {
+    name = "init-package-json-0.0.14";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/init-package-json/-/init-package-json-0.0.14.tgz";
+        name = "init-package-json-0.0.14.tgz";
+        sha1 = "bd5f7b2d73b54957388cca3ce61190340c8a05b7";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."init-package-json" or []);
+    deps = {
+      "promzard-0.2.2" = self.by-version."promzard"."0.2.2";
+      "read-1.0.5" = self.by-version."read"."1.0.5";
+      "read-package-json-1.2.7" = self.by-version."read-package-json"."1.2.7";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "init-package-json" ];
+  };
+  by-spec."init-package-json"."~1.1.1" =
+    self.by-version."init-package-json"."1.1.1";
+  by-version."init-package-json"."1.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "init-package-json-1.1.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/init-package-json/-/init-package-json-1.1.1.tgz";
+        name = "init-package-json-1.1.1.tgz";
+        sha1 = "e09e9f1fb541e0fddc9175c5ce1736fd45ff4bf8";
       })
     ];
     buildInputs =
@@ -10323,7 +11740,7 @@
       "lodash-2.4.1" = self.by-version."lodash"."2.4.1";
       "mute-stream-0.0.4" = self.by-version."mute-stream"."0.0.4";
       "readline2-0.1.0" = self.by-version."readline2"."0.1.0";
-      "rx-2.3.13" = self.by-version."rx"."2.3.13";
+      "rx-2.3.14" = self.by-version."rx"."2.3.14";
       "through-2.3.6" = self.by-version."through"."2.3.6";
     };
     peerDependencies = [
@@ -10350,7 +11767,7 @@
       "lodash-2.4.1" = self.by-version."lodash"."2.4.1";
       "mute-stream-0.0.4" = self.by-version."mute-stream"."0.0.4";
       "readline2-0.1.0" = self.by-version."readline2"."0.1.0";
-      "rx-2.3.13" = self.by-version."rx"."2.3.13";
+      "rx-2.3.14" = self.by-version."rx"."2.3.14";
       "through-2.3.6" = self.by-version."through"."2.3.6";
     };
     peerDependencies = [
@@ -10383,6 +11800,85 @@
     ];
     passthru.names = [ "insert-module-globals" ];
   };
+  by-spec."insert-module-globals"."~2.3.0" =
+    self.by-version."insert-module-globals"."2.3.4";
+  by-version."insert-module-globals"."2.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "insert-module-globals-2.3.4";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/insert-module-globals/-/insert-module-globals-2.3.4.tgz";
+        name = "insert-module-globals-2.3.4.tgz";
+        sha1 = "e920cd470bcf1f47713eac6cc5cc13437e1a9e7e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."insert-module-globals" or []);
+    deps = {
+      "commondir-0.0.1" = self.by-version."commondir"."0.0.1";
+      "lexical-scope-0.0.15" = self.by-version."lexical-scope"."0.0.15";
+      "process-0.5.2" = self.by-version."process"."0.5.2";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "defined-0.0.0" = self.by-version."defined"."0.0.0";
+      "native-buffer-browserify-2.0.17" = self.by-version."native-buffer-browserify"."2.0.17";
+      "browserify-3.24.13" = self.by-version."browserify"."3.24.13";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "insert-module-globals" ];
+  };
+  by-spec."insert-module-globals"."~3.1.2" =
+    self.by-version."insert-module-globals"."3.1.3";
+  by-version."insert-module-globals"."3.1.3" = lib.makeOverridable self.buildNodePackage {
+    name = "insert-module-globals-3.1.3";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/insert-module-globals/-/insert-module-globals-3.1.3.tgz";
+        name = "insert-module-globals-3.1.3.tgz";
+        sha1 = "d5b80e3a9c86d2bf9a522baee3c14f00d931038a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."insert-module-globals" or []);
+    deps = {
+      "lexical-scope-0.1.0" = self.by-version."lexical-scope"."0.1.0";
+      "process-0.5.2" = self.by-version."process"."0.5.2";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "insert-module-globals" ];
+  };
+  by-spec."insert-module-globals"."~5.0.1" =
+    self.by-version."insert-module-globals"."5.0.1";
+  by-version."insert-module-globals"."5.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "insert-module-globals-5.0.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/insert-module-globals/-/insert-module-globals-5.0.1.tgz";
+        name = "insert-module-globals-5.0.1.tgz";
+        sha1 = "eec9c0dfad30380e8eda313a094165dc2f2350d2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."insert-module-globals" or []);
+    deps = {
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "lexical-scope-1.1.0" = self.by-version."lexical-scope"."1.1.0";
+      "process-0.6.0" = self.by-version."process"."0.6.0";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "insert-module-globals" ];
+  };
   by-spec."insight"."0.4.3" =
     self.by-version."insight"."0.4.3";
   by-version."insight"."0.4.3" = lib.makeOverridable self.buildNodePackage {
@@ -10405,7 +11901,7 @@
       "lodash.debounce-2.4.1" = self.by-version."lodash.debounce"."2.4.1";
       "object-assign-1.0.0" = self.by-version."object-assign"."1.0.0";
       "os-name-1.0.1" = self.by-version."os-name"."1.0.1";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "tough-cookie-0.12.1" = self.by-version."tough-cookie"."0.12.1";
     };
     peerDependencies = [
@@ -10512,12 +12008,12 @@
       "nconf-0.6.9" = self.by-version."nconf"."0.6.9";
       "fs-walk-0.0.1" = self.by-version."fs-walk"."0.0.1";
       "async-0.9.0" = self.by-version."async"."0.9.0";
-      "express-4.9.8" = self.by-version."express"."4.9.8";
+      "express-4.10.1" = self.by-version."express"."4.10.1";
       "jade-1.7.0" = self.by-version."jade"."1.7.0";
       "passport-0.2.1" = self.by-version."passport"."0.2.1";
       "passport-http-0.2.2" = self.by-version."passport-http"."0.2.2";
       "js-yaml-3.2.2" = self.by-version."js-yaml"."3.2.2";
-      "mongoose-3.8.17" = self.by-version."mongoose"."3.8.17";
+      "mongoose-3.8.18" = self.by-version."mongoose"."3.8.18";
       "gridfs-stream-0.5.1" = self.by-version."gridfs-stream"."0.5.1";
       "temp-0.8.1" = self.by-version."temp"."0.8.1";
       "kue-0.8.9" = self.by-version."kue"."0.8.9";
@@ -10850,6 +12346,31 @@
     passthru.names = [ "jayschema" ];
   };
   "jayschema" = self.by-version."jayschema"."0.3.1";
+  by-spec."jfs"."*" =
+    self.by-version."jfs"."0.1.7";
+  by-version."jfs"."0.1.7" = lib.makeOverridable self.buildNodePackage {
+    name = "jfs-0.1.7";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/jfs/-/jfs-0.1.7.tgz";
+        name = "jfs-0.1.7.tgz";
+        sha1 = "f9349d31ac1e28a1ad6d7f5876fc5cfc6577d921";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."jfs" or []);
+    deps = {
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "async-0.2.10" = self.by-version."async"."0.2.10";
+      "clone-0.1.18" = self.by-version."clone"."0.1.18";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "jfs" ];
+  };
+  "jfs" = self.by-version."jfs"."0.1.7";
   by-spec."js-yaml"."*" =
     self.by-version."js-yaml"."3.2.2";
   by-version."js-yaml"."3.2.2" = lib.makeOverridable self.buildNodePackage {
@@ -11006,36 +12527,36 @@
   by-spec."jsesc"."~0.4.3" =
     self.by-version."jsesc"."0.4.3";
   by-spec."jshint"."*" =
-    self.by-version."jshint"."2.5.6";
-  by-version."jshint"."2.5.6" = lib.makeOverridable self.buildNodePackage {
-    name = "jshint-2.5.6";
+    self.by-version."jshint"."2.5.8";
+  by-version."jshint"."2.5.8" = lib.makeOverridable self.buildNodePackage {
+    name = "jshint-2.5.8";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/jshint/-/jshint-2.5.6.tgz";
-        name = "jshint-2.5.6.tgz";
-        sha1 = "1685ce1f9e1c74832375d83fe89728589bd9d8c7";
+        url = "http://registry.npmjs.org/jshint/-/jshint-2.5.8.tgz";
+        name = "jshint-2.5.8.tgz";
+        sha1 = "31ddb3c17df48fe04cff24abe0a1bb1c1bc529f5";
       })
     ];
     buildInputs =
       (self.nativeDeps."jshint" or []);
     deps = {
-      "shelljs-0.3.0" = self.by-version."shelljs"."0.3.0";
-      "underscore-1.6.0" = self.by-version."underscore"."1.6.0";
       "cli-0.6.5" = self.by-version."cli"."0.6.5";
-      "minimatch-1.0.0" = self.by-version."minimatch"."1.0.0";
-      "htmlparser2-3.7.3" = self.by-version."htmlparser2"."3.7.3";
       "console-browserify-1.1.0" = self.by-version."console-browserify"."1.1.0";
       "exit-0.1.2" = self.by-version."exit"."0.1.2";
+      "htmlparser2-3.8.0" = self.by-version."htmlparser2"."3.8.0";
+      "minimatch-1.0.0" = self.by-version."minimatch"."1.0.0";
+      "shelljs-0.3.0" = self.by-version."shelljs"."0.3.0";
       "strip-json-comments-1.0.2" = self.by-version."strip-json-comments"."1.0.2";
+      "underscore-1.6.0" = self.by-version."underscore"."1.6.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "jshint" ];
   };
-  "jshint" = self.by-version."jshint"."2.5.6";
+  "jshint" = self.by-version."jshint"."2.5.8";
   by-spec."jshint"."~2.5.0" =
-    self.by-version."jshint"."2.5.6";
+    self.by-version."jshint"."2.5.8";
   by-spec."json-schema"."0.2.2" =
     self.by-version."json-schema"."0.2.2";
   by-version."json-schema"."0.2.2" = lib.makeOverridable self.buildNodePackage {
@@ -11097,6 +12618,26 @@
     ];
     passthru.names = [ "json-stringify-safe" ];
   };
+  by-spec."json-stringify-safe"."~4.0.0" =
+    self.by-version."json-stringify-safe"."4.0.0";
+  by-version."json-stringify-safe"."4.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "json-stringify-safe-4.0.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-4.0.0.tgz";
+        name = "json-stringify-safe-4.0.0.tgz";
+        sha1 = "77c271aaea54302e68efeaccb56abbf06a9b1a54";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."json-stringify-safe" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "json-stringify-safe" ];
+  };
   by-spec."json-stringify-safe"."~5.0.0" =
     self.by-version."json-stringify-safe"."5.0.0";
   by-version."json-stringify-safe"."5.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -11281,7 +12822,7 @@
     deps = {
       "di-0.0.1" = self.by-version."di"."0.0.1";
       "socket.io-0.9.17" = self.by-version."socket.io"."0.9.17";
-      "chokidar-0.10.1" = self.by-version."chokidar"."0.10.1";
+      "chokidar-0.10.3" = self.by-version."chokidar"."0.10.3";
       "glob-3.2.11" = self.by-version."glob"."3.2.11";
       "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
       "http-proxy-0.10.4" = self.by-version."http-proxy"."0.10.4";
@@ -11401,7 +12942,7 @@
     };
     peerDependencies = [
       self.by-version."karma"."0.12.24"
-      self.by-version."mocha"."2.0.0"
+      self.by-version."mocha"."2.0.1"
     ];
     passthru.names = [ "karma-mocha" ];
   };
@@ -11444,7 +12985,7 @@
     buildInputs =
       (self.nativeDeps."karma-sauce-launcher" or []);
     deps = {
-      "wd-0.3.9" = self.by-version."wd"."0.3.9";
+      "wd-0.3.10" = self.by-version."wd"."0.3.10";
       "sauce-connect-launcher-0.6.1" = self.by-version."sauce-connect-launcher"."0.6.1";
       "q-0.9.7" = self.by-version."q"."0.9.7";
       "saucelabs-0.1.1" = self.by-version."saucelabs"."0.1.1";
@@ -11517,6 +13058,26 @@
     ];
     passthru.names = [ "kerberos" ];
   };
+  by-spec."kerberos"."0.0.4" =
+    self.by-version."kerberos"."0.0.4";
+  by-version."kerberos"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "kerberos-0.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/kerberos/-/kerberos-0.0.4.tgz";
+        name = "kerberos-0.0.4.tgz";
+        sha1 = "11836638f729a2f6c5bae056a7d7a15898c9ba7c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."kerberos" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "kerberos" ];
+  };
   by-spec."kerberos"."0.0.5" =
     self.by-version."kerberos"."0.0.5";
   by-version."kerberos"."0.0.5" = lib.makeOverridable self.buildNodePackage {
@@ -11792,7 +13353,7 @@
     buildInputs =
       (self.nativeDeps."lazystream" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
     };
     peerDependencies = [
     ];
@@ -11843,15 +13404,15 @@
   };
   "lcov-result-merger" = self.by-version."lcov-result-merger"."1.0.0";
   by-spec."less"."*" =
-    self.by-version."less"."2.0.0-b1";
-  by-version."less"."2.0.0-b1" = lib.makeOverridable self.buildNodePackage {
-    name = "less-2.0.0-b1";
+    self.by-version."less"."2.0.0-b3";
+  by-version."less"."2.0.0-b3" = lib.makeOverridable self.buildNodePackage {
+    name = "less-2.0.0-b3";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/less/-/less-2.0.0-b1.tgz";
-        name = "less-2.0.0-b1.tgz";
-        sha1 = "3dcb5815b2052c89435c00def2aeb58ddb321b6a";
+        url = "http://registry.npmjs.org/less/-/less-2.0.0-b3.tgz";
+        name = "less-2.0.0-b3.tgz";
+        sha1 = "61869a02b29a88bda7b99e239e7646fe301f4500";
       })
     ];
     buildInputs =
@@ -11859,7 +13420,7 @@
     deps = {
       "graceful-fs-3.0.4" = self.by-version."graceful-fs"."3.0.4";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
       "source-map-0.1.40" = self.by-version."source-map"."0.1.40";
       "promise-6.0.1" = self.by-version."promise"."6.0.1";
@@ -11868,7 +13429,7 @@
     ];
     passthru.names = [ "less" ];
   };
-  "less" = self.by-version."less"."2.0.0-b1";
+  "less" = self.by-version."less"."2.0.0-b3";
   by-spec."less"."^1.7.2" =
     self.by-version."less"."1.7.5";
   by-version."less"."1.7.5" = lib.makeOverridable self.buildNodePackage {
@@ -11895,6 +13456,48 @@
     ];
     passthru.names = [ "less" ];
   };
+  by-spec."lexical-scope"."~0.0.14" =
+    self.by-version."lexical-scope"."0.0.15";
+  by-version."lexical-scope"."0.0.15" = lib.makeOverridable self.buildNodePackage {
+    name = "lexical-scope-0.0.15";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lexical-scope/-/lexical-scope-0.0.15.tgz";
+        name = "lexical-scope-0.0.15.tgz";
+        sha1 = "ca595997aaed87b155cb041f48dc0438f48a04dc";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lexical-scope" or []);
+    deps = {
+      "astw-0.0.0" = self.by-version."astw"."0.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "lexical-scope" ];
+  };
+  by-spec."lexical-scope"."~0.1.0" =
+    self.by-version."lexical-scope"."0.1.0";
+  by-version."lexical-scope"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "lexical-scope-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lexical-scope/-/lexical-scope-0.1.0.tgz";
+        name = "lexical-scope-0.1.0.tgz";
+        sha1 = "8f30004c80234ffac083b990079d7b267e18441b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lexical-scope" or []);
+    deps = {
+      "astw-0.1.0" = self.by-version."astw"."0.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "lexical-scope" ];
+  };
   by-spec."lexical-scope"."~1.1.0" =
     self.by-version."lexical-scope"."1.1.0";
   by-version."lexical-scope"."1.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -11984,6 +13587,26 @@
     ];
     passthru.names = [ "liftoff" ];
   };
+  by-spec."lockfile"."~0.4.0" =
+    self.by-version."lockfile"."0.4.3";
+  by-version."lockfile"."0.4.3" = lib.makeOverridable self.buildNodePackage {
+    name = "lockfile-0.4.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/lockfile/-/lockfile-0.4.3.tgz";
+        name = "lockfile-0.4.3.tgz";
+        sha1 = "79b965ee9b32d9dd24b59cf81205e6dcb6d3b224";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."lockfile" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "lockfile" ];
+  };
   by-spec."lockfile"."~1.0.0" =
     self.by-version."lockfile"."1.0.0";
   by-version."lockfile"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -12536,7 +14159,7 @@
       (self.nativeDeps."log4js" or []);
     deps = {
       "async-0.2.10" = self.by-version."async"."0.2.10";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "semver-1.1.4" = self.by-version."semver"."1.1.4";
     };
     peerDependencies = [
@@ -12728,6 +14351,123 @@
     ];
     passthru.names = [ "lsmod" ];
   };
+  by-spec."ltx"."*" =
+    self.by-version."ltx"."0.7.0";
+  by-version."ltx"."0.7.0" = lib.makeOverridable self.buildNodePackage {
+    name = "ltx-0.7.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ltx/-/ltx-0.7.0.tgz";
+        name = "ltx-0.7.0.tgz";
+        sha1 = "2e0d7eab0dcae3cea6cd0d7c530cde78d6c88280";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ltx" or []);
+    deps = {
+      "sax-0.6.1" = self.by-version."sax"."0.6.1";
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ltx" ];
+  };
+  "ltx" = self.by-version."ltx"."0.7.0";
+  by-spec."ltx"."0.x" =
+    self.by-version."ltx"."0.7.0";
+  by-spec."ltx".">= 0.2.0" =
+    self.by-version."ltx"."0.7.0";
+  by-spec."ltx"."^0.5.2" =
+    self.by-version."ltx"."0.5.2";
+  by-version."ltx"."0.5.2" = lib.makeOverridable self.buildNodePackage {
+    name = "ltx-0.5.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ltx/-/ltx-0.5.2.tgz";
+        name = "ltx-0.5.2.tgz";
+        sha1 = "3a049fc30ab8982c227803a74b26c02fe225cef8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ltx" or []);
+    deps = {
+      "sax-0.6.1" = self.by-version."sax"."0.6.1";
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ltx" ];
+  };
+  by-spec."ltx"."~0.3.2" =
+    self.by-version."ltx"."0.3.4";
+  by-version."ltx"."0.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "ltx-0.3.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ltx/-/ltx-0.3.4.tgz";
+        name = "ltx-0.3.4.tgz";
+        sha1 = "3cc8d3af3cf08914383b19e8ab60b1f396e1e984";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ltx" or []);
+    deps = {
+      "sax-0.6.1" = self.by-version."sax"."0.6.1";
+      "node-expat-2.1.4" = self.by-version."node-expat"."2.1.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ltx" ];
+  };
+  by-spec."ltx"."~0.3.3" =
+    self.by-version."ltx"."0.3.4";
+  by-spec."ltx"."~0.6.0" =
+    self.by-version."ltx"."0.6.0";
+  by-version."ltx"."0.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "ltx-0.6.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/ltx/-/ltx-0.6.0.tgz";
+        name = "ltx-0.6.0.tgz";
+        sha1 = "16470236570a2c436744a3c4adb8a4b15ea1acc7";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."ltx" or []);
+    deps = {
+      "sax-0.6.1" = self.by-version."sax"."0.6.1";
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "ltx" ];
+  };
+  by-spec."ltx"."~0.x" =
+    self.by-version."ltx"."0.7.0";
+  by-spec."m8".">= 0.4.3" =
+    self.by-version."m8"."0.4.4";
+  by-version."m8"."0.4.4" = lib.makeOverridable self.buildNodePackage {
+    name = "m8-0.4.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/m8/-/m8-0.4.4.tgz";
+        name = "m8-0.4.4.tgz";
+        sha1 = "59df914d9bee2829ceac4346026abe945abed5b8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."m8" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "m8" ];
+  };
   by-spec."mailcomposer".">= 0.1.27" =
     self.by-version."mailcomposer"."0.2.12";
   by-version."mailcomposer"."0.2.12" = lib.makeOverridable self.buildNodePackage {
@@ -12743,7 +14483,7 @@
     buildInputs =
       (self.nativeDeps."mailcomposer" or []);
     deps = {
-      "mimelib-0.2.17" = self.by-version."mimelib"."0.2.17";
+      "mimelib-0.2.18" = self.by-version."mimelib"."0.2.18";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "he-0.3.6" = self.by-version."he"."0.3.6";
       "follow-redirects-0.0.3" = self.by-version."follow-redirects"."0.0.3";
@@ -13198,15 +14938,15 @@
   by-spec."mime"."~1.2.9" =
     self.by-version."mime"."1.2.11";
   by-spec."mime-db"."1.x" =
-    self.by-version."mime-db"."1.1.1";
-  by-version."mime-db"."1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "mime-db-1.1.1";
+    self.by-version."mime-db"."1.1.2";
+  by-version."mime-db"."1.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "mime-db-1.1.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.1.1.tgz";
-        name = "mime-db-1.1.1.tgz";
-        sha1 = "0fc890cda05d0edadefde73d241ef7e28d110a98";
+        url = "http://registry.npmjs.org/mime-db/-/mime-db-1.1.2.tgz";
+        name = "mime-db-1.1.2.tgz";
+        sha1 = "893d6c510f7e3f64fc75d8a23a48401f669e7fdb";
       })
     ];
     buildInputs =
@@ -13218,7 +14958,7 @@
     passthru.names = [ "mime-db" ];
   };
   by-spec."mime-db"."~1.1.0" =
-    self.by-version."mime-db"."1.1.1";
+    self.by-version."mime-db"."1.1.2";
   by-spec."mime-types"."~1.0.0" =
     self.by-version."mime-types"."1.0.2";
   by-version."mime-types"."1.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -13256,22 +14996,22 @@
     buildInputs =
       (self.nativeDeps."mime-types" or []);
     deps = {
-      "mime-db-1.1.1" = self.by-version."mime-db"."1.1.1";
+      "mime-db-1.1.2" = self.by-version."mime-db"."1.1.2";
     };
     peerDependencies = [
     ];
     passthru.names = [ "mime-types" ];
   };
   by-spec."mimelib"."~0.2.15" =
-    self.by-version."mimelib"."0.2.17";
-  by-version."mimelib"."0.2.17" = lib.makeOverridable self.buildNodePackage {
-    name = "mimelib-0.2.17";
+    self.by-version."mimelib"."0.2.18";
+  by-version."mimelib"."0.2.18" = lib.makeOverridable self.buildNodePackage {
+    name = "mimelib-0.2.18";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mimelib/-/mimelib-0.2.17.tgz";
-        name = "mimelib-0.2.17.tgz";
-        sha1 = "6b0cb91a6451b92649e4cc98c5b64eed2d19a4aa";
+        url = "http://registry.npmjs.org/mimelib/-/mimelib-0.2.18.tgz";
+        name = "mimelib-0.2.18.tgz";
+        sha1 = "2e631a3db449026fcb85099398b7bd750eac46a7";
       })
     ];
     buildInputs =
@@ -13284,6 +15024,26 @@
     ];
     passthru.names = [ "mimelib" ];
   };
+  by-spec."mine"."~0.0.1" =
+    self.by-version."mine"."0.0.2";
+  by-version."mine"."0.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "mine-0.0.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/mine/-/mine-0.0.2.tgz";
+        name = "mine-0.0.2.tgz";
+        sha1 = "77c2d327f8357352e69fc3e618f7476539fa0c40";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."mine" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "mine" ];
+  };
   by-spec."minilog"."~2.0.2" =
     self.by-version."minilog"."2.0.6";
   by-version."minilog"."2.0.6" = lib.makeOverridable self.buildNodePackage {
@@ -13305,6 +15065,28 @@
     ];
     passthru.names = [ "minilog" ];
   };
+  by-spec."minimatch"."0" =
+    self.by-version."minimatch"."0.4.0";
+  by-version."minimatch"."0.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "minimatch-0.4.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.4.0.tgz";
+        name = "minimatch-0.4.0.tgz";
+        sha1 = "bd2c7d060d2c8c8fd7cde7f1f2ed2d5b270fdb1b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."minimatch" or []);
+    deps = {
+      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
+      "sigmund-1.0.0" = self.by-version."sigmund"."1.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "minimatch" ];
+  };
   by-spec."minimatch"."0.0.x" =
     self.by-version."minimatch"."0.0.5";
   by-version."minimatch"."0.0.5" = lib.makeOverridable self.buildNodePackage {
@@ -13372,26 +15154,6 @@
   };
   by-spec."minimatch"."0.x" =
     self.by-version."minimatch"."0.4.0";
-  by-version."minimatch"."0.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "minimatch-0.4.0";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/minimatch/-/minimatch-0.4.0.tgz";
-        name = "minimatch-0.4.0.tgz";
-        sha1 = "bd2c7d060d2c8c8fd7cde7f1f2ed2d5b270fdb1b";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."minimatch" or []);
-    deps = {
-      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
-      "sigmund-1.0.0" = self.by-version."sigmund"."1.0.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "minimatch" ];
-  };
   by-spec."minimatch"."1" =
     self.by-version."minimatch"."1.0.0";
   by-version."minimatch"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -13426,6 +15188,8 @@
     self.by-version."minimatch"."0.2.14";
   by-spec."minimatch"."~0.2.12" =
     self.by-version."minimatch"."0.2.14";
+  by-spec."minimatch"."~0.2.14" =
+    self.by-version."minimatch"."0.2.14";
   by-spec."minimatch"."~0.2.9" =
     self.by-version."minimatch"."0.2.14";
   by-spec."minimatch"."~0.3.0" =
@@ -13512,6 +15276,8 @@
     ];
     passthru.names = [ "minimist" ];
   };
+  by-spec."minimist"."~0.0.5" =
+    self.by-version."minimist"."0.0.10";
   by-spec."minimist"."~0.0.7" =
     self.by-version."minimist"."0.0.10";
   by-spec."minimist"."~0.2.0" =
@@ -13599,6 +15365,8 @@
     passthru.names = [ "mkdirp" ];
   };
   "mkdirp" = self.by-version."mkdirp"."0.5.0";
+  by-spec."mkdirp"."0" =
+    self.by-version."mkdirp"."0.5.0";
   by-spec."mkdirp"."0.3.0" =
     self.by-version."mkdirp"."0.3.0";
   by-version."mkdirp"."0.3.0" = lib.makeOverridable self.buildNodePackage {
@@ -13682,15 +15450,15 @@
     passthru.names = [ "mkpath" ];
   };
   by-spec."mocha"."*" =
-    self.by-version."mocha"."2.0.0";
-  by-version."mocha"."2.0.0" = lib.makeOverridable self.buildNodePackage {
-    name = "mocha-2.0.0";
+    self.by-version."mocha"."2.0.1";
+  by-version."mocha"."2.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "mocha-2.0.1";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mocha/-/mocha-2.0.0.tgz";
-        name = "mocha-2.0.0.tgz";
-        sha1 = "4f737685475046533432494b76c3e81cb5005c54";
+        url = "http://registry.npmjs.org/mocha/-/mocha-2.0.1.tgz";
+        name = "mocha-2.0.1.tgz";
+        sha1 = "5a16e88b856d0c4145d8c6888c27ebd4fab13e90";
       })
     ];
     buildInputs =
@@ -13709,7 +15477,7 @@
     ];
     passthru.names = [ "mocha" ];
   };
-  "mocha" = self.by-version."mocha"."2.0.0";
+  "mocha" = self.by-version."mocha"."2.0.1";
   by-spec."mocha"."~1.20.1" =
     self.by-version."mocha"."1.20.1";
   by-version."mocha"."1.20.1" = lib.makeOverridable self.buildNodePackage {
@@ -13756,7 +15524,7 @@
       "commander-2.0.0" = self.by-version."commander"."2.0.0";
     };
     peerDependencies = [
-      self.by-version."phantomjs"."1.9.11"
+      self.by-version."phantomjs"."1.9.12"
     ];
     passthru.names = [ "mocha-phantomjs" ];
   };
@@ -13802,7 +15570,7 @@
       (self.nativeDeps."module-deps" or []);
     deps = {
       "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
-      "browser-resolve-1.3.2" = self.by-version."browser-resolve"."1.3.2";
+      "browser-resolve-1.4.1" = self.by-version."browser-resolve"."1.4.1";
       "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
       "detective-3.1.0" = self.by-version."detective"."3.1.0";
       "duplexer2-0.0.2" = self.by-version."duplexer2"."0.0.2";
@@ -13820,6 +15588,90 @@
     ];
     passthru.names = [ "module-deps" ];
   };
+  by-spec."module-deps"."~1.10.0" =
+    self.by-version."module-deps"."1.10.0";
+  by-version."module-deps"."1.10.0" = lib.makeOverridable self.buildNodePackage {
+    name = "module-deps-1.10.0";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/module-deps/-/module-deps-1.10.0.tgz";
+        name = "module-deps-1.10.0.tgz";
+        sha1 = "57a9cac9dbd092428ec5249f6cf37fb249d77db6";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."module-deps" or []);
+    deps = {
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "detective-3.1.0" = self.by-version."detective"."3.1.0";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+      "parents-0.0.2" = self.by-version."parents"."0.0.2";
+      "resolve-0.6.3" = self.by-version."resolve"."0.6.3";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "module-deps" ];
+  };
+  by-spec."module-deps"."~1.2.2" =
+    self.by-version."module-deps"."1.2.2";
+  by-version."module-deps"."1.2.2" = lib.makeOverridable self.buildNodePackage {
+    name = "module-deps-1.2.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/module-deps/-/module-deps-1.2.2.tgz";
+        name = "module-deps-1.2.2.tgz";
+        sha1 = "6e73959b7973af964de33a02437b76a8edfb2fc5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."module-deps" or []);
+    deps = {
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "resolve-0.6.3" = self.by-version."resolve"."0.6.3";
+      "detective-2.1.2" = self.by-version."detective"."2.1.2";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+      "parents-0.0.2" = self.by-version."parents"."0.0.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "module-deps" ];
+  };
+  by-spec."module-deps"."~1.4.0" =
+    self.by-version."module-deps"."1.4.2";
+  by-version."module-deps"."1.4.2" = lib.makeOverridable self.buildNodePackage {
+    name = "module-deps-1.4.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/module-deps/-/module-deps-1.4.2.tgz";
+        name = "module-deps-1.4.2.tgz";
+        sha1 = "cc48c5f88a087c6d9ec1973167c2c9fee2f80314";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."module-deps" or []);
+    deps = {
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "JSONStream-0.7.4" = self.by-version."JSONStream"."0.7.4";
+      "browser-resolve-1.2.4" = self.by-version."browser-resolve"."1.2.4";
+      "resolve-0.6.3" = self.by-version."resolve"."0.6.3";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
+      "minimist-0.0.10" = self.by-version."minimist"."0.0.10";
+      "parents-0.0.2" = self.by-version."parents"."0.0.2";
+      "mine-0.0.2" = self.by-version."mine"."0.0.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "module-deps" ];
+  };
   by-spec."moment"."2.1.0" =
     self.by-version."moment"."2.1.0";
   by-version."moment"."2.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -13881,28 +15733,28 @@
     passthru.names = [ "moment" ];
   };
   by-spec."mongodb"."*" =
-    self.by-version."mongodb"."2.0.3";
-  by-version."mongodb"."2.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "mongodb-2.0.3";
+    self.by-version."mongodb"."2.0.5";
+  by-version."mongodb"."2.0.5" = lib.makeOverridable self.buildNodePackage {
+    name = "mongodb-2.0.5";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mongodb/-/mongodb-2.0.3.tgz";
-        name = "mongodb-2.0.3.tgz";
-        sha1 = "78dd12c11aaa8cf8666c16128fd19f55a8f9b313";
+        url = "http://registry.npmjs.org/mongodb/-/mongodb-2.0.5.tgz";
+        name = "mongodb-2.0.5.tgz";
+        sha1 = "29350fa998f700fbc1bfc282d761075422b22cf8";
       })
     ];
     buildInputs =
       (self.nativeDeps."mongodb" or []);
     deps = {
-      "mongodb-core-1.0.3" = self.by-version."mongodb-core"."1.0.3";
+      "mongodb-core-1.0.5" = self.by-version."mongodb-core"."1.0.5";
       "readable-stream-1.0.31" = self.by-version."readable-stream"."1.0.31";
     };
     peerDependencies = [
     ];
     passthru.names = [ "mongodb" ];
   };
-  "mongodb" = self.by-version."mongodb"."2.0.3";
+  "mongodb" = self.by-version."mongodb"."2.0.5";
   by-spec."mongodb"."1.2.14" =
     self.by-version."mongodb"."1.2.14";
   by-version."mongodb"."1.2.14" = lib.makeOverridable self.buildNodePackage {
@@ -13968,23 +15820,23 @@
     ];
     passthru.names = [ "mongodb" ];
   };
-  by-spec."mongodb"."1.4.9" =
-    self.by-version."mongodb"."1.4.9";
-  by-version."mongodb"."1.4.9" = lib.makeOverridable self.buildNodePackage {
-    name = "mongodb-1.4.9";
+  by-spec."mongodb"."1.4.12" =
+    self.by-version."mongodb"."1.4.12";
+  by-version."mongodb"."1.4.12" = lib.makeOverridable self.buildNodePackage {
+    name = "mongodb-1.4.12";
     bin = false;
     src = [
       (self.patchSource fetchurl {
-        url = "http://registry.npmjs.org/mongodb/-/mongodb-1.4.9.tgz";
-        name = "mongodb-1.4.9.tgz";
-        sha1 = "c30b9724248be471d30235e2d542646d3b869bc2";
+        url = "http://registry.npmjs.org/mongodb/-/mongodb-1.4.12.tgz";
+        name = "mongodb-1.4.12.tgz";
+        sha1 = "65cdd46ec127861e941168fdccf82bf17ad71c4d";
       })
     ];
     buildInputs =
       (self.nativeDeps."mongodb" or []);
     deps = {
-      "bson-0.2.12" = self.by-version."bson"."0.2.12";
-      "kerberos-0.0.3" = self.by-version."kerberos"."0.0.3";
+      "bson-0.2.15" = self.by-version."bson"."0.2.15";
+      "kerberos-0.0.4" = self.by-version."kerberos"."0.0.4";
       "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
     };
     peerDependencies = [
@@ -13992,15 +15844,15 @@
     passthru.names = [ "mongodb" ];
   };
   by-spec."mongodb-core"."~1.0" =
-    self.by-version."mongodb-core"."1.0.3";
-  by-version."mongodb-core"."1.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "mongodb-core-1.0.3";
+    self.by-version."mongodb-core"."1.0.5";
+  by-version."mongodb-core"."1.0.5" = lib.makeOverridable self.buildNodePackage {
+    name = "mongodb-core-1.0.5";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mongodb-core/-/mongodb-core-1.0.3.tgz";
-        name = "mongodb-core-1.0.3.tgz";
-        sha1 = "387649e432368dcd02c983f39454700d6958619a";
+        url = "http://registry.npmjs.org/mongodb-core/-/mongodb-core-1.0.5.tgz";
+        name = "mongodb-core-1.0.5.tgz";
+        sha1 = "a8f962bae8b3b7eb95940bc8ead79fec8bada046";
       })
     ];
     buildInputs =
@@ -14072,21 +15924,21 @@
   };
   "mongoose" = self.by-version."mongoose"."3.6.20";
   by-spec."mongoose"."3.8.x" =
-    self.by-version."mongoose"."3.8.17";
-  by-version."mongoose"."3.8.17" = lib.makeOverridable self.buildNodePackage {
-    name = "mongoose-3.8.17";
+    self.by-version."mongoose"."3.8.18";
+  by-version."mongoose"."3.8.18" = lib.makeOverridable self.buildNodePackage {
+    name = "mongoose-3.8.18";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/mongoose/-/mongoose-3.8.17.tgz";
-        name = "mongoose-3.8.17.tgz";
-        sha1 = "23426b3aea84255623dca28823de64a8fcd53da8";
+        url = "http://registry.npmjs.org/mongoose/-/mongoose-3.8.18.tgz";
+        name = "mongoose-3.8.18.tgz";
+        sha1 = "f85fdb2c9ea503ce246a9dc12434e68a2df62472";
       })
     ];
     buildInputs =
       (self.nativeDeps."mongoose" or []);
     deps = {
-      "mongodb-1.4.9" = self.by-version."mongodb"."1.4.9";
+      "mongodb-1.4.12" = self.by-version."mongodb"."1.4.12";
       "hooks-0.2.1" = self.by-version."hooks"."0.2.1";
       "ms-0.1.0" = self.by-version."ms"."0.1.0";
       "sliced-0.0.5" = self.by-version."sliced"."0.0.5";
@@ -14184,16 +16036,16 @@
     ];
     passthru.names = [ "monocle" ];
   };
-  by-spec."morgan"."~1.4.0" =
-    self.by-version."morgan"."1.4.0";
-  by-version."morgan"."1.4.0" = lib.makeOverridable self.buildNodePackage {
-    name = "morgan-1.4.0";
+  by-spec."morgan"."~1.4.1" =
+    self.by-version."morgan"."1.4.1";
+  by-version."morgan"."1.4.1" = lib.makeOverridable self.buildNodePackage {
+    name = "morgan-1.4.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/morgan/-/morgan-1.4.0.tgz";
-        name = "morgan-1.4.0.tgz";
-        sha1 = "ce3c6ee28f794f85f59165476575b70ed386eb3d";
+        url = "http://registry.npmjs.org/morgan/-/morgan-1.4.1.tgz";
+        name = "morgan-1.4.1.tgz";
+        sha1 = "cd9600c3fa74e2fdf22ba0f1d026c20cb96f25fe";
       })
     ];
     buildInputs =
@@ -14202,7 +16054,7 @@
       "basic-auth-1.0.0" = self.by-version."basic-auth"."1.0.0";
       "debug-2.1.0" = self.by-version."debug"."2.1.0";
       "depd-1.0.0" = self.by-version."depd"."1.0.0";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
+      "on-finished-2.1.1" = self.by-version."on-finished"."2.1.1";
     };
     peerDependencies = [
     ];
@@ -14515,7 +16367,7 @@
     buildInputs =
       (self.nativeDeps."mz" or []);
     deps = {
-      "native-or-bluebird-1.1.1" = self.by-version."native-or-bluebird"."1.1.1";
+      "native-or-bluebird-1.1.2" = self.by-version."native-or-bluebird"."1.1.2";
     };
     peerDependencies = [
     ];
@@ -14541,16 +16393,16 @@
     ];
     passthru.names = [ "nan" ];
   };
-  by-spec."nan"."1.2.0" =
-    self.by-version."nan"."1.2.0";
-  by-version."nan"."1.2.0" = lib.makeOverridable self.buildNodePackage {
-    name = "nan-1.2.0";
+  by-spec."nan"."1.3.0" =
+    self.by-version."nan"."1.3.0";
+  by-version."nan"."1.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "nan-1.3.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/nan/-/nan-1.2.0.tgz";
-        name = "nan-1.2.0.tgz";
-        sha1 = "9c4d63ce9e4f8e95de2d574e18f7925554a8a8ef";
+        url = "http://registry.npmjs.org/nan/-/nan-1.3.0.tgz";
+        name = "nan-1.3.0.tgz";
+        sha1 = "9a5b8d5ef97a10df3050e59b2c362d3baf779742";
       })
     ];
     buildInputs =
@@ -14561,16 +16413,16 @@
     ];
     passthru.names = [ "nan" ];
   };
-  by-spec."nan"."1.3.0" =
-    self.by-version."nan"."1.3.0";
-  by-version."nan"."1.3.0" = lib.makeOverridable self.buildNodePackage {
-    name = "nan-1.3.0";
+  by-spec."nan".">=1.3.0" =
+    self.by-version."nan"."1.4.0";
+  by-version."nan"."1.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "nan-1.4.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/nan/-/nan-1.3.0.tgz";
-        name = "nan-1.3.0.tgz";
-        sha1 = "9a5b8d5ef97a10df3050e59b2c362d3baf779742";
+        url = "http://registry.npmjs.org/nan/-/nan-1.4.0.tgz";
+        name = "nan-1.4.0.tgz";
+        sha1 = "d49a8e21da02b88f8b175a5300bdfd5e9a5d5362";
       })
     ];
     buildInputs =
@@ -14581,10 +16433,48 @@
     ];
     passthru.names = [ "nan" ];
   };
-  by-spec."nan".">=1.3.0" =
-    self.by-version."nan"."1.3.0";
   by-spec."nan"."^1.3.0" =
-    self.by-version."nan"."1.3.0";
+    self.by-version."nan"."1.4.0";
+  by-spec."nan"."~0.6.0" =
+    self.by-version."nan"."0.6.0";
+  by-version."nan"."0.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "nan-0.6.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/nan/-/nan-0.6.0.tgz";
+        name = "nan-0.6.0.tgz";
+        sha1 = "a54ebe59717b467c77425302bd7c17574c887aaa";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."nan" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "nan" ];
+  };
+  by-spec."nan"."~0.7.0" =
+    self.by-version."nan"."0.7.1";
+  by-version."nan"."0.7.1" = lib.makeOverridable self.buildNodePackage {
+    name = "nan-0.7.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/nan/-/nan-0.7.1.tgz";
+        name = "nan-0.7.1.tgz";
+        sha1 = "fc576184a1037b3e5675f2ba3740dee2044ff8f4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."nan" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "nan" ];
+  };
   by-spec."nan"."~1.0.0" =
     self.by-version."nan"."1.0.0";
   by-version."nan"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -14609,16 +16499,60 @@
     self.by-version."nan"."1.1.2";
   by-spec."nan"."~1.2.0" =
     self.by-version."nan"."1.2.0";
+  by-version."nan"."1.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "nan-1.2.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/nan/-/nan-1.2.0.tgz";
+        name = "nan-1.2.0.tgz";
+        sha1 = "9c4d63ce9e4f8e95de2d574e18f7925554a8a8ef";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."nan" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "nan" ];
+  };
+  by-spec."nan"."~1.3.0" =
+    self.by-version."nan"."1.3.0";
+  by-spec."native-buffer-browserify"."~2.0.0" =
+    self.by-version."native-buffer-browserify"."2.0.17";
+  by-version."native-buffer-browserify"."2.0.17" = lib.makeOverridable self.buildNodePackage {
+    name = "native-buffer-browserify-2.0.17";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/native-buffer-browserify/-/native-buffer-browserify-2.0.17.tgz";
+        name = "native-buffer-browserify-2.0.17.tgz";
+        sha1 = "980577018c4884d169da40b47958ffac6c327d15";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."native-buffer-browserify" or []);
+    deps = {
+      "base64-js-0.0.7" = self.by-version."base64-js"."0.0.7";
+      "ieee754-1.1.4" = self.by-version."ieee754"."1.1.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "native-buffer-browserify" ];
+  };
+  by-spec."native-buffer-browserify"."~2.0.15" =
+    self.by-version."native-buffer-browserify"."2.0.17";
   by-spec."native-or-bluebird"."1" =
-    self.by-version."native-or-bluebird"."1.1.1";
-  by-version."native-or-bluebird"."1.1.1" = lib.makeOverridable self.buildNodePackage {
-    name = "native-or-bluebird-1.1.1";
+    self.by-version."native-or-bluebird"."1.1.2";
+  by-version."native-or-bluebird"."1.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "native-or-bluebird-1.1.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/native-or-bluebird/-/native-or-bluebird-1.1.1.tgz";
-        name = "native-or-bluebird-1.1.1.tgz";
-        sha1 = "9131a6d6532afdfb5635f9703734cc6652c905ee";
+        url = "http://registry.npmjs.org/native-or-bluebird/-/native-or-bluebird-1.1.2.tgz";
+        name = "native-or-bluebird-1.1.2.tgz";
+        sha1 = "3921e110232d1eb790f3dac61bb370531c7d356e";
       })
     ];
     buildInputs =
@@ -14720,16 +16654,18 @@
     ];
     passthru.names = [ "ncp" ];
   };
-  by-spec."ncp"."0.6.0" =
-    self.by-version."ncp"."0.6.0";
-  by-version."ncp"."0.6.0" = lib.makeOverridable self.buildNodePackage {
-    name = "ncp-0.6.0";
+  by-spec."ncp"."~0.4.2" =
+    self.by-version."ncp"."0.4.2";
+  by-spec."ncp"."~1.0.1" =
+    self.by-version."ncp"."1.0.1";
+  by-version."ncp"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "ncp-1.0.1";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/ncp/-/ncp-0.6.0.tgz";
-        name = "ncp-0.6.0.tgz";
-        sha1 = "df8ce021e262be21b52feb3d3e5cfaab12491f0d";
+        url = "http://registry.npmjs.org/ncp/-/ncp-1.0.1.tgz";
+        name = "ncp-1.0.1.tgz";
+        sha1 = "d15367e5cb87432ba117d2bf80fdf45aecfb4246";
       })
     ];
     buildInputs =
@@ -14740,8 +16676,6 @@
     ];
     passthru.names = [ "ncp" ];
   };
-  by-spec."ncp"."~0.4.2" =
-    self.by-version."ncp"."0.4.2";
   by-spec."negotiator"."0.2.5" =
     self.by-version."negotiator"."0.2.5";
   by-version."negotiator"."0.2.5" = lib.makeOverridable self.buildNodePackage {
@@ -14865,6 +16799,28 @@
     ];
     passthru.names = [ "next-tick" ];
   };
+  by-spec."nib"."*" =
+    self.by-version."nib"."1.0.4";
+  by-version."nib"."1.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "nib-1.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/nib/-/nib-1.0.4.tgz";
+        name = "nib-1.0.4.tgz";
+        sha1 = "03d397c27a231f3c9a5a190eaa68e5d79e2f0345";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."nib" or []);
+    deps = {
+      "stylus-0.45.1" = self.by-version."stylus"."0.45.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "nib" ];
+  };
+  "nib" = self.by-version."nib"."1.0.4";
   by-spec."nib"."0.5.0" =
     self.by-version."nib"."0.5.0";
   by-version."nib"."0.5.0" = lib.makeOverridable self.buildNodePackage {
@@ -14944,28 +16900,55 @@
     passthru.names = [ "node-appc" ];
   };
   by-spec."node-expat"."*" =
-    self.by-version."node-expat"."2.3.1";
-  by-version."node-expat"."2.3.1" = lib.makeOverridable self.buildNodePackage {
-    name = "node-expat-2.3.1";
+    self.by-version."node-expat"."2.3.2";
+  by-version."node-expat"."2.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "node-expat-2.3.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/node-expat/-/node-expat-2.3.1.tgz";
-        name = "node-expat-2.3.1.tgz";
-        sha1 = "32c515a4d1cf747fb655d3ad4374696537592413";
+        url = "http://registry.npmjs.org/node-expat/-/node-expat-2.3.2.tgz";
+        name = "node-expat-2.3.2.tgz";
+        sha1 = "fef2331187421ee267ca8d483ce8e39b28d14275";
       })
     ];
     buildInputs =
       (self.nativeDeps."node-expat" or []);
     deps = {
       "bindings-1.2.1" = self.by-version."bindings"."1.2.1";
-      "nan-1.2.0" = self.by-version."nan"."1.2.0";
+      "nan-1.3.0" = self.by-version."nan"."1.3.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "node-expat" ];
   };
-  "node-expat" = self.by-version."node-expat"."2.3.1";
+  "node-expat" = self.by-version."node-expat"."2.3.2";
+  by-spec."node-expat".">=1.4.1" =
+    self.by-version."node-expat"."2.3.2";
+  by-spec."node-expat"."~2.1.4" =
+    self.by-version."node-expat"."2.1.4";
+  by-version."node-expat"."2.1.4" = lib.makeOverridable self.buildNodePackage {
+    name = "node-expat-2.1.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-expat/-/node-expat-2.1.4.tgz";
+        name = "node-expat-2.1.4.tgz";
+        sha1 = "e55a82249b71afbce09ffa880705ec37553c5121";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-expat" or []);
+    deps = {
+      "nan-0.6.0" = self.by-version."nan"."0.6.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-expat" ];
+  };
+  by-spec."node-expat"."~2.3.0" =
+    self.by-version."node-expat"."2.3.2";
+  by-spec."node-expat"."~2.3.1" =
+    self.by-version."node-expat"."2.3.2";
   by-spec."node-gyp"."*" =
     self.by-version."node-gyp"."1.0.2";
   by-version."node-gyp"."1.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -14989,10 +16972,10 @@
       "nopt-3.0.1" = self.by-version."nopt"."3.0.1";
       "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
       "osenv-0.1.0" = self.by-version."osenv"."0.1.0";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
       "semver-4.1.0" = self.by-version."semver"."4.1.0";
-      "tar-1.0.1" = self.by-version."tar"."1.0.1";
+      "tar-1.0.2" = self.by-version."tar"."1.0.2";
       "which-1.0.5" = self.by-version."which"."1.0.5";
     };
     peerDependencies = [
@@ -15000,6 +16983,72 @@
     passthru.names = [ "node-gyp" ];
   };
   "node-gyp" = self.by-version."node-gyp"."1.0.2";
+  by-spec."node-gyp"."~0.10.6" =
+    self.by-version."node-gyp"."0.10.10";
+  by-version."node-gyp"."0.10.10" = lib.makeOverridable self.buildNodePackage {
+    name = "node-gyp-0.10.10";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-gyp/-/node-gyp-0.10.10.tgz";
+        name = "node-gyp-0.10.10.tgz";
+        sha1 = "74290b46b72046d648d301fae3813feb0d07edd9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-gyp" or []);
+    deps = {
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "minimatch-0.4.0" = self.by-version."minimatch"."0.4.0";
+      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
+      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
+      "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
+      "osenv-0.1.0" = self.by-version."osenv"."0.1.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "semver-2.1.0" = self.by-version."semver"."2.1.0";
+      "tar-0.1.20" = self.by-version."tar"."0.1.20";
+      "which-1.0.5" = self.by-version."which"."1.0.5";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-gyp" ];
+  };
+  by-spec."node-gyp"."~0.12.2" =
+    self.by-version."node-gyp"."0.12.2";
+  by-version."node-gyp"."0.12.2" = lib.makeOverridable self.buildNodePackage {
+    name = "node-gyp-0.12.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-gyp/-/node-gyp-0.12.2.tgz";
+        name = "node-gyp-0.12.2.tgz";
+        sha1 = "bdca7e7025feb308ddd7fd3434300e47703ec57a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-gyp" or []);
+    deps = {
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "minimatch-0.4.0" = self.by-version."minimatch"."0.4.0";
+      "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
+      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
+      "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
+      "osenv-0.1.0" = self.by-version."osenv"."0.1.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "semver-2.2.1" = self.by-version."semver"."2.2.1";
+      "tar-0.1.20" = self.by-version."tar"."0.1.20";
+      "which-1.0.5" = self.by-version."which"."1.0.5";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-gyp" ];
+  };
   by-spec."node-gyp"."~1.0.1" =
     self.by-version."node-gyp"."1.0.2";
   by-spec."node-inspector"."*" =
@@ -15049,13 +17098,86 @@
       (self.nativeDeps."node-protobuf" or []);
     deps = {
       "bindings-1.2.1" = self.by-version."bindings"."1.2.1";
-      "nan-1.3.0" = self.by-version."nan"."1.3.0";
+      "nan-1.4.0" = self.by-version."nan"."1.4.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "node-protobuf" ];
   };
   "node-protobuf" = self.by-version."node-protobuf"."1.2.2";
+  by-spec."node-stringprep"."*" =
+    self.by-version."node-stringprep"."0.6.2";
+  by-version."node-stringprep"."0.6.2" = lib.makeOverridable self.buildNodePackage {
+    name = "node-stringprep-0.6.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-stringprep/-/node-stringprep-0.6.2.tgz";
+        name = "node-stringprep-0.6.2.tgz";
+        sha1 = "c266853e5c22dfb53d99bcc68b02218c889ccdc7";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-stringprep" or []);
+    deps = {
+      "nan-1.2.0" = self.by-version."nan"."1.2.0";
+      "bindings-1.1.1" = self.by-version."bindings"."1.1.1";
+      "debug-2.0.0" = self.by-version."debug"."2.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-stringprep" ];
+  };
+  "node-stringprep" = self.by-version."node-stringprep"."0.6.2";
+  by-spec."node-stringprep"."^0.5.2" =
+    self.by-version."node-stringprep"."0.5.4";
+  by-version."node-stringprep"."0.5.4" = lib.makeOverridable self.buildNodePackage {
+    name = "node-stringprep-0.5.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-stringprep/-/node-stringprep-0.5.4.tgz";
+        name = "node-stringprep-0.5.4.tgz";
+        sha1 = "dd03b3d8f6f83137754cc1ea1a55675447b0ab92";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-stringprep" or []);
+    deps = {
+      "nan-1.2.0" = self.by-version."nan"."1.2.0";
+      "bindings-1.1.1" = self.by-version."bindings"."1.1.1";
+      "debug-2.0.0" = self.by-version."debug"."2.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-stringprep" ];
+  };
+  by-spec."node-stringprep"."~0.2.0" =
+    self.by-version."node-stringprep"."0.2.3";
+  by-version."node-stringprep"."0.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "node-stringprep-0.2.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-stringprep/-/node-stringprep-0.2.3.tgz";
+        name = "node-stringprep-0.2.3.tgz";
+        sha1 = "deab53eacbb2744eb65a3ab76f49a53a6d7f6b1c";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-stringprep" or []);
+    deps = {
+      "nan-0.7.1" = self.by-version."nan"."0.7.1";
+      "bindings-1.1.1" = self.by-version."bindings"."1.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-stringprep" ];
+  };
+  by-spec."node-stringprep"."~0.6.0" =
+    self.by-version."node-stringprep"."0.6.2";
+  by-spec."node-stringprep"."~0.x" =
+    self.by-version."node-stringprep"."0.6.2";
   by-spec."node-swt".">=0.1.1" =
     self.by-version."node-swt"."0.1.1";
   by-version."node-swt"."0.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -15194,6 +17316,8 @@
   };
   by-spec."node-uuid"."1.4.1" =
     self.by-version."node-uuid"."1.4.1";
+  by-spec."node-uuid"."^1.4.1" =
+    self.by-version."node-uuid"."1.4.1";
   by-spec."node-uuid"."~1.4.0" =
     self.by-version."node-uuid"."1.4.1";
   by-spec."node-uuid"."~1.4.1" =
@@ -15219,6 +17343,421 @@
     ];
     passthru.names = [ "node-wsfederation" ];
   };
+  by-spec."node-xmpp"."*" =
+    self.by-version."node-xmpp"."1.0.0-alpha2";
+  by-version."node-xmpp"."1.0.0-alpha2" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-1.0.0-alpha2";
+    bin = false;
+    src = [
+      (self.patchSource fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp/-/node-xmpp-1.0.0-alpha2.tgz";
+        name = "node-xmpp-1.0.0-alpha2.tgz";
+        sha1 = "349041a9041d3bcc608cdbf57e60f5b301e7a8c0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp" or []);
+    deps = {
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+      "ltx-0.7.0" = self.by-version."ltx"."0.7.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "browser-request-0.3.2" = self.by-version."browser-request"."0.3.2";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "browserify-3.19.1" = self.by-version."browserify"."3.19.1";
+      "brfs-0.0.8" = self.by-version."brfs"."0.0.8";
+      "node-xmpp-component-1.0.0-alpha1" = self.by-version."node-xmpp-component"."1.0.0-alpha1";
+      "node-xmpp-client-1.0.0-alpha15" = self.by-version."node-xmpp-client"."1.0.0-alpha15";
+      "node-xmpp-server-1.0.0-alpha11" = self.by-version."node-xmpp-server"."1.0.0-alpha11";
+      "node-xmpp-core-1.0.0-alpha10" = self.by-version."node-xmpp-core"."1.0.0-alpha10";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp" ];
+  };
+  "node-xmpp" = self.by-version."node-xmpp"."1.0.0-alpha2";
+  by-spec."node-xmpp"."~0.15.0" =
+    self.by-version."node-xmpp"."0.15.0";
+  by-version."node-xmpp"."0.15.0" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-0.15.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp/-/node-xmpp-0.15.0.tgz";
+        name = "node-xmpp-0.15.0.tgz";
+        sha1 = "b4e1adf6b4ea859f0d06e12daca9f850286cbb14";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp" or []);
+    deps = {
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+      "ltx-0.7.0" = self.by-version."ltx"."0.7.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "browser-request-0.3.2" = self.by-version."browser-request"."0.3.2";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "browserify-3.19.1" = self.by-version."browserify"."3.19.1";
+      "brfs-0.0.8" = self.by-version."brfs"."0.0.8";
+      "node-xmpp-component-0.3.0" = self.by-version."node-xmpp-component"."0.3.0";
+      "node-xmpp-client-0.4.0" = self.by-version."node-xmpp-client"."0.4.0";
+      "node-xmpp-server-0.6.0" = self.by-version."node-xmpp-server"."0.6.0";
+      "node-xmpp-core-0.5.0" = self.by-version."node-xmpp-core"."0.5.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp" ];
+  };
+  by-spec."node-xmpp-client"."*" =
+    self.by-version."node-xmpp-client"."1.0.0-alpha9";
+  by-version."node-xmpp-client"."1.0.0-alpha9" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-client-1.0.0-alpha9";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-client/-/node-xmpp-client-1.0.0-alpha9.tgz";
+        name = "node-xmpp-client-1.0.0-alpha9.tgz";
+        sha1 = "5e48ce59f9ea96ff7f80dc4fff2be252ace26f24";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-client" or []);
+    deps = {
+      "request-2.27.0" = self.by-version."request"."2.27.0";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "node-xmpp-core-1.0.0-alpha9" = self.by-version."node-xmpp-core"."1.0.0-alpha9";
+      "browser-request-0.3.2" = self.by-version."browser-request"."0.3.2";
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+      "debug-1.0.4" = self.by-version."debug"."1.0.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-client" ];
+  };
+  "node-xmpp-client" = self.by-version."node-xmpp-client"."1.0.0-alpha9";
+  by-spec."node-xmpp-client"."git+https://github.com/node-xmpp/node-xmpp-client.git" =
+    self.by-version."node-xmpp-client"."1.0.0-alpha15";
+  by-version."node-xmpp-client"."1.0.0-alpha15" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-client-1.0.0-alpha15";
+    bin = false;
+    src = [
+      (fetchgit {
+        url = "https://github.com/node-xmpp/node-xmpp-client.git";
+        rev = "5d080041904c37b581c96aa45e266dc8ed824b4d";
+        sha256 = "e37d4bc6bde48911400846442c5a412c8022bcf6e676bcc1c496f7975f3635f9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-client" or []);
+    deps = {
+      "request-2.27.0" = self.by-version."request"."2.27.0";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "node-xmpp-core-1.0.0-alpha9" = self.by-version."node-xmpp-core"."1.0.0-alpha9";
+      "browser-request-0.3.2" = self.by-version."browser-request"."0.3.2";
+      "minimist-0.0.8" = self.by-version."minimist"."0.0.8";
+      "debug-1.0.4" = self.by-version."debug"."1.0.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-client" ];
+  };
+  by-spec."node-xmpp-client"."~0.4.0" =
+    self.by-version."node-xmpp-client"."0.4.0";
+  by-version."node-xmpp-client"."0.4.0" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-client-0.4.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-client/-/node-xmpp-client-0.4.0.tgz";
+        name = "node-xmpp-client-0.4.0.tgz";
+        sha1 = "350def1797eaca28c592321cd16173f93167f90b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-client" or []);
+    deps = {
+      "request-2.27.0" = self.by-version."request"."2.27.0";
+      "ltx-0.3.4" = self.by-version."ltx"."0.3.4";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "node-xmpp-core-0.5.0" = self.by-version."node-xmpp-core"."0.5.0";
+      "browser-request-0.3.2" = self.by-version."browser-request"."0.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-client" ];
+  };
+  by-spec."node-xmpp-component"."*" =
+    self.by-version."node-xmpp-component"."1.0.0-alpha1";
+  by-version."node-xmpp-component"."1.0.0-alpha1" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-component-1.0.0-alpha1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-component/-/node-xmpp-component-1.0.0-alpha1.tgz";
+        name = "node-xmpp-component-1.0.0-alpha1.tgz";
+        sha1 = "3f85da00c05240bd48cc6c729d74875e6eb97877";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-component" or []);
+    deps = {
+      "ltx-0.7.0" = self.by-version."ltx"."0.7.0";
+      "node-xmpp-core-1.0.0-alpha1" = self.by-version."node-xmpp-core"."1.0.0-alpha1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-component" ];
+  };
+  "node-xmpp-component" = self.by-version."node-xmpp-component"."1.0.0-alpha1";
+  by-spec."node-xmpp-component"."git+https://github.com/node-xmpp/node-xmpp-component.git" =
+    self.by-version."node-xmpp-component"."1.0.0-alpha1";
+  by-spec."node-xmpp-component"."~0.3.0" =
+    self.by-version."node-xmpp-component"."0.3.0";
+  by-version."node-xmpp-component"."0.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-component-0.3.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-component/-/node-xmpp-component-0.3.0.tgz";
+        name = "node-xmpp-component-0.3.0.tgz";
+        sha1 = "353fb4d8250beb7f55df17805d20c81d4ea0d3c7";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-component" or []);
+    deps = {
+      "ltx-0.3.4" = self.by-version."ltx"."0.3.4";
+      "node-xmpp-core-0.5.0" = self.by-version."node-xmpp-core"."0.5.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-component" ];
+  };
+  by-spec."node-xmpp-core"."*" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-version."node-xmpp-core"."1.0.0-alpha9" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-core-1.0.0-alpha9";
+    bin = false;
+    src = [
+      (self.patchSource fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-1.0.0-alpha9.tgz";
+        name = "node-xmpp-core-1.0.0-alpha9.tgz";
+        sha1 = "64b2b41e9f59fc910c71fe648c6be2bc4ecef7f1";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-core" or []);
+    deps = {
+      "node-stringprep-0.5.4" = self.by-version."node-stringprep"."0.5.4";
+      "reconnect-core-0.0.1" = self.by-version."reconnect-core"."0.0.1";
+      "tls-connect-0.2.2" = self.by-version."tls-connect"."0.2.2";
+      "ltx-0.5.2" = self.by-version."ltx"."0.5.2";
+      "debug-0.8.1" = self.by-version."debug"."0.8.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-core" ];
+  };
+  "node-xmpp-core" = self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-spec."node-xmpp-core"."1.0.0-alpha1" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha1";
+  by-version."node-xmpp-core"."1.0.0-alpha1" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-core-1.0.0-alpha1";
+    bin = false;
+    src = [
+      (self.patchSource fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-1.0.0-alpha1.tgz";
+        name = "node-xmpp-core-1.0.0-alpha1.tgz";
+        sha1 = "94b1b33a0ccb84427d8b290af80e29b8dec5545f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-core" or []);
+    deps = {
+      "node-stringprep-0.6.2" = self.by-version."node-stringprep"."0.6.2";
+      "reconnect-core-0.0.1" = self.by-version."reconnect-core"."0.0.1";
+      "tls-connect-0.2.2" = self.by-version."tls-connect"."0.2.2";
+      "ltx-0.7.0" = self.by-version."ltx"."0.7.0";
+      "debug-0.8.1" = self.by-version."debug"."0.8.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-core" ];
+  };
+  by-spec."node-xmpp-core"."^1.0.0-alpha10" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-spec."node-xmpp-core"."^1.0.0-alpha6" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-spec."node-xmpp-core"."^1.0.0-alpha9" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-spec."node-xmpp-core"."git+https://github.com/node-xmpp/node-xmpp-core.git" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha10";
+  by-version."node-xmpp-core"."1.0.0-alpha10" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-core-1.0.0-alpha10";
+    bin = false;
+    src = [
+      (self.patchSource fetchgit {
+        url = "https://github.com/node-xmpp/node-xmpp-core.git";
+        rev = "f7804dd63e5ea69919ebe20d53efe6f4e5093e85";
+        sha256 = "56949000c924fbd7d4125f7fb6a3b6f523fb01e022592757f48cec2752f98844";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-core" or []);
+    deps = {
+      "node-stringprep-0.5.4" = self.by-version."node-stringprep"."0.5.4";
+      "reconnect-core-0.0.1" = self.by-version."reconnect-core"."0.0.1";
+      "tls-connect-0.2.2" = self.by-version."tls-connect"."0.2.2";
+      "ltx-0.5.2" = self.by-version."ltx"."0.5.2";
+      "debug-0.8.1" = self.by-version."debug"."0.8.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-core" ];
+  };
+  by-spec."node-xmpp-core"."~0.5.0" =
+    self.by-version."node-xmpp-core"."0.5.0";
+  by-version."node-xmpp-core"."0.5.0" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-core-0.5.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-core/-/node-xmpp-core-0.5.0.tgz";
+        name = "node-xmpp-core-0.5.0.tgz";
+        sha1 = "d3a453bf7bc029b7b5f10b1941e8a9e2952cf3db";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-core" or []);
+    deps = {
+      "node-stringprep-0.2.3" = self.by-version."node-stringprep"."0.2.3";
+      "tls-connect-0.2.2" = self.by-version."tls-connect"."0.2.2";
+      "ltx-0.3.4" = self.by-version."ltx"."0.3.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-core" ];
+  };
+  by-spec."node-xmpp-core"."~1.0.0-alpha10" =
+    self.by-version."node-xmpp-core"."1.0.0-alpha9";
+  by-spec."node-xmpp-joap"."*" =
+    self.by-version."node-xmpp-joap"."0.0.17";
+  by-version."node-xmpp-joap"."0.0.17" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-joap-0.0.17";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-joap/-/node-xmpp-joap-0.0.17.tgz";
+        name = "node-xmpp-joap-0.0.17.tgz";
+        sha1 = "d6d4fce1148f3fa158ed2a381787c51be3168fff";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-joap" or []);
+    deps = {
+      "node-expat-2.3.2" = self.by-version."node-expat"."2.3.2";
+      "node-xmpp-0.15.0" = self.by-version."node-xmpp"."0.15.0";
+      "node-stringprep-0.6.2" = self.by-version."node-stringprep"."0.6.2";
+      "ltx-0.6.0" = self.by-version."ltx"."0.6.0";
+      "async-0.9.0" = self.by-version."async"."0.9.0";
+      "toobusy-0.2.4" = self.by-version."toobusy"."0.2.4";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-joap" ];
+  };
+  "node-xmpp-joap" = self.by-version."node-xmpp-joap"."0.0.17";
+  by-spec."node-xmpp-server"."*" =
+    self.by-version."node-xmpp-server"."1.0.0-alpha9";
+  by-version."node-xmpp-server"."1.0.0-alpha9" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-server-1.0.0-alpha9";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-server/-/node-xmpp-server-1.0.0-alpha9.tgz";
+        name = "node-xmpp-server-1.0.0-alpha9.tgz";
+        sha1 = "1622aafddf9efde4dd9483c849d56b80e582a745";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-server" or []);
+    deps = {
+      "hat-0.0.3" = self.by-version."hat"."0.0.3";
+      "node-xmpp-core-1.0.0-alpha9" = self.by-version."node-xmpp-core"."1.0.0-alpha9";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-server" ];
+  };
+  "node-xmpp-server" = self.by-version."node-xmpp-server"."1.0.0-alpha9";
+  by-spec."node-xmpp-server"."git+https://github.com/node-xmpp/node-xmpp-server.git" =
+    self.by-version."node-xmpp-server"."1.0.0-alpha11";
+  by-version."node-xmpp-server"."1.0.0-alpha11" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-server-1.0.0-alpha11";
+    bin = false;
+    src = [
+      (fetchgit {
+        url = "https://github.com/node-xmpp/node-xmpp-server.git";
+        rev = "535abf75c95c3e500ebb14a863b81bfa4da529db";
+        sha256 = "5abac2a86079c6f4ba1371a6a6455f6ae022e19965151dc0c309c875f2629eb9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-server" or []);
+    deps = {
+      "hat-0.0.3" = self.by-version."hat"."0.0.3";
+      "node-xmpp-core-1.0.0-alpha9" = self.by-version."node-xmpp-core"."1.0.0-alpha9";
+      "debug-0.7.4" = self.by-version."debug"."0.7.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-server" ];
+  };
+  by-spec."node-xmpp-server"."~0.6.0" =
+    self.by-version."node-xmpp-server"."0.6.0";
+  by-version."node-xmpp-server"."0.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-server-0.6.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-server/-/node-xmpp-server-0.6.0.tgz";
+        name = "node-xmpp-server-0.6.0.tgz";
+        sha1 = "66f7102d9b0c9aa34e2d37aa2f78811964f1298e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-server" or []);
+    deps = {
+      "ltx-0.3.4" = self.by-version."ltx"."0.3.4";
+      "node-xmpp-core-0.5.0" = self.by-version."node-xmpp-core"."0.5.0";
+      "node-xmpp-client-0.4.0" = self.by-version."node-xmpp-client"."0.4.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-server" ];
+  };
+  by-spec."node-xmpp-serviceadmin"."*" =
+    self.by-version."node-xmpp-serviceadmin"."0.1.6";
+  by-version."node-xmpp-serviceadmin"."0.1.6" = lib.makeOverridable self.buildNodePackage {
+    name = "node-xmpp-serviceadmin-0.1.6";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/node-xmpp-serviceadmin/-/node-xmpp-serviceadmin-0.1.6.tgz";
+        name = "node-xmpp-serviceadmin-0.1.6.tgz";
+        sha1 = "c67be0926b56b12c050d7caf8e2522b36ea84c00";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."node-xmpp-serviceadmin" or []);
+    deps = {
+      "node-xmpp-core-0.5.0" = self.by-version."node-xmpp-core"."0.5.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "node-xmpp-serviceadmin" ];
+  };
+  "node-xmpp-serviceadmin" = self.by-version."node-xmpp-serviceadmin"."0.1.6";
   by-spec."node.extend"."1.0.0" =
     self.by-version."node.extend"."1.0.0";
   by-version."node.extend"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -15371,6 +17910,8 @@
     ];
     passthru.names = [ "nopt" ];
   };
+  by-spec."nopt"."2.2.1" =
+    self.by-version."nopt"."2.2.1";
   by-spec."nopt"."3.x" =
     self.by-version."nopt"."3.0.1";
   by-spec."nopt"."~1.0.10" =
@@ -15394,7 +17935,7 @@
     ];
     passthru.names = [ "nopt" ];
   };
-  by-spec."nopt"."~2.1.2" =
+  by-spec."nopt"."~2.1.1" =
     self.by-version."nopt"."2.1.2";
   by-version."nopt"."2.1.2" = lib.makeOverridable self.buildNodePackage {
     name = "nopt-2.1.2";
@@ -15415,12 +17956,37 @@
     ];
     passthru.names = [ "nopt" ];
   };
+  by-spec."nopt"."~2.1.2" =
+    self.by-version."nopt"."2.1.2";
   by-spec."nopt"."~2.2.0" =
     self.by-version."nopt"."2.2.1";
   by-spec."nopt"."~3.0.0" =
     self.by-version."nopt"."3.0.1";
   by-spec."nopt"."~3.0.1" =
     self.by-version."nopt"."3.0.1";
+  by-spec."normalize-package-data"."^0.2.13" =
+    self.by-version."normalize-package-data"."0.2.13";
+  by-version."normalize-package-data"."0.2.13" = lib.makeOverridable self.buildNodePackage {
+    name = "normalize-package-data-0.2.13";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/normalize-package-data/-/normalize-package-data-0.2.13.tgz";
+        name = "normalize-package-data-0.2.13.tgz";
+        sha1 = "50f9fd9e77b1c8411cd231db2962e73963de774d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."normalize-package-data" or []);
+    deps = {
+      "github-url-from-git-1.1.1" = self.by-version."github-url-from-git"."1.1.1";
+      "github-url-from-username-repo-0.1.0" = self.by-version."github-url-from-username-repo"."0.1.0";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "normalize-package-data" ];
+  };
   by-spec."normalize-package-data"."^1.0.0" =
     self.by-version."normalize-package-data"."1.0.3";
   by-version."normalize-package-data"."1.0.3" = lib.makeOverridable self.buildNodePackage {
@@ -15449,15 +18015,15 @@
   by-spec."normalize-package-data"."~1.0.3" =
     self.by-version."normalize-package-data"."1.0.3";
   by-spec."npm"."*" =
-    self.by-version."npm"."2.1.5";
-  by-version."npm"."2.1.5" = lib.makeOverridable self.buildNodePackage {
-    name = "npm-2.1.5";
+    self.by-version."npm"."2.1.7";
+  by-version."npm"."2.1.7" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-2.1.7";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/npm/-/npm-2.1.5.tgz";
-        name = "npm-2.1.5.tgz";
-        sha1 = "ce343163a56f1ff14ffa295c140d99833b9764cb";
+        url = "http://registry.npmjs.org/npm/-/npm-2.1.7.tgz";
+        name = "npm-2.1.7.tgz";
+        sha1 = "4b8315574b84136dad6a225ce8fb85e2d7d98502";
       })
     ];
     buildInputs =
@@ -15490,7 +18056,7 @@
       "inflight-1.0.4" = self.by-version."inflight"."1.0.4";
       "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
       "ini-1.3.0" = self.by-version."ini"."1.3.0";
-      "init-package-json-1.1.0" = self.by-version."init-package-json"."1.1.0";
+      "init-package-json-1.1.1" = self.by-version."init-package-json"."1.1.1";
       "lockfile-1.0.0" = self.by-version."lockfile"."1.0.0";
       "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
       "minimatch-1.0.0" = self.by-version."minimatch"."1.0.0";
@@ -15501,7 +18067,7 @@
       "npm-cache-filename-1.0.1" = self.by-version."npm-cache-filename"."1.0.1";
       "npm-install-checks-1.0.4" = self.by-version."npm-install-checks"."1.0.4";
       "npm-package-arg-2.1.3" = self.by-version."npm-package-arg"."2.1.3";
-      "npm-registry-client-3.2.4" = self.by-version."npm-registry-client"."3.2.4";
+      "npm-registry-client-4.0.1" = self.by-version."npm-registry-client"."4.0.1";
       "npm-user-validate-0.1.1" = self.by-version."npm-user-validate"."0.1.1";
       "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
       "once-1.3.1" = self.by-version."once"."1.3.1";
@@ -15511,16 +18077,16 @@
       "read-1.0.5" = self.by-version."read"."1.0.5";
       "read-installed-3.1.3" = self.by-version."read-installed"."3.1.3";
       "read-package-json-1.2.7" = self.by-version."read-package-json"."1.2.7";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "realize-package-specifier-1.2.0" = self.by-version."realize-package-specifier"."1.2.0";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "retry-0.6.1" = self.by-version."retry"."0.6.1";
       "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
       "semver-4.1.0" = self.by-version."semver"."4.1.0";
       "sha-1.3.0" = self.by-version."sha"."1.3.0";
       "slide-1.1.6" = self.by-version."slide"."1.1.6";
       "sorted-object-1.0.0" = self.by-version."sorted-object"."1.0.0";
-      "tar-1.0.1" = self.by-version."tar"."1.0.1";
+      "tar-1.0.2" = self.by-version."tar"."1.0.2";
       "text-table-0.2.0" = self.by-version."text-table"."0.2.0";
       "uid-number-0.0.5" = self.by-version."uid-number"."0.0.5";
       "which-1.0.5" = self.by-version."which"."1.0.5";
@@ -15531,7 +18097,135 @@
     ];
     passthru.names = [ "npm" ];
   };
-  "npm" = self.by-version."npm"."2.1.5";
+  "npm" = self.by-version."npm"."2.1.7";
+  by-spec."npm"."1.3.4" =
+    self.by-version."npm"."1.3.4";
+  by-version."npm"."1.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-1.3.4";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm/-/npm-1.3.4.tgz";
+        name = "npm-1.3.4.tgz";
+        sha1 = "1dacc91458f2197c362d774d2cbf111680f86ec2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm" or []);
+    deps = {
+      "semver-2.0.11" = self.by-version."semver"."2.0.11";
+      "ini-1.1.0" = self.by-version."ini"."1.1.0";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "abbrev-1.0.5" = self.by-version."abbrev"."1.0.5";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "nopt-2.1.2" = self.by-version."nopt"."2.1.2";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "request-2.21.0" = self.by-version."request"."2.21.0";
+      "which-1.0.5" = self.by-version."which"."1.0.5";
+      "tar-0.1.20" = self.by-version."tar"."0.1.20";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "block-stream-0.0.7" = self.by-version."block-stream"."0.0.7";
+      "inherits-1.0.0" = self.by-version."inherits"."1.0.0";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "read-1.0.5" = self.by-version."read"."1.0.5";
+      "lru-cache-2.3.1" = self.by-version."lru-cache"."2.3.1";
+      "node-gyp-0.10.10" = self.by-version."node-gyp"."0.10.10";
+      "fstream-npm-0.1.8" = self.by-version."fstream-npm"."0.1.8";
+      "uid-number-0.0.5" = self.by-version."uid-number"."0.0.5";
+      "archy-0.0.2" = self.by-version."archy"."0.0.2";
+      "chownr-0.0.1" = self.by-version."chownr"."0.0.1";
+      "npmlog-0.0.4" = self.by-version."npmlog"."0.0.4";
+      "ansi-0.1.2" = self.by-version."ansi"."0.1.2";
+      "npm-registry-client-0.2.31" = self.by-version."npm-registry-client"."0.2.31";
+      "read-package-json-1.1.9" = self.by-version."read-package-json"."1.1.9";
+      "read-installed-0.2.5" = self.by-version."read-installed"."0.2.5";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "init-package-json-0.0.10" = self.by-version."init-package-json"."0.0.10";
+      "osenv-0.1.0" = self.by-version."osenv"."0.1.0";
+      "lockfile-0.4.3" = self.by-version."lockfile"."0.4.3";
+      "retry-0.6.1" = self.by-version."retry"."0.6.1";
+      "once-1.1.1" = self.by-version."once"."1.1.1";
+      "npmconf-0.1.16" = self.by-version."npmconf"."0.1.16";
+      "opener-1.3.0" = self.by-version."opener"."1.3.0";
+      "chmodr-0.1.0" = self.by-version."chmodr"."0.1.0";
+      "cmd-shim-1.1.2" = self.by-version."cmd-shim"."1.1.2";
+      "sha-1.0.1" = self.by-version."sha"."1.0.1";
+      "editor-0.0.4" = self.by-version."editor"."0.0.4";
+      "child-process-close-0.1.1" = self.by-version."child-process-close"."0.1.1";
+      "npm-user-validate-0.0.3" = self.by-version."npm-user-validate"."0.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm" ];
+  };
+  by-spec."npm"."1.3.x" =
+    self.by-version."npm"."1.3.26";
+  by-version."npm"."1.3.26" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-1.3.26";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm/-/npm-1.3.26.tgz";
+        name = "npm-1.3.26.tgz";
+        sha1 = "bc07bf7cb58710078141c885c2d492fd570f606d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm" or []);
+    deps = {
+      "semver-2.2.1" = self.by-version."semver"."2.2.1";
+      "ini-1.1.0" = self.by-version."ini"."1.1.0";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "abbrev-1.0.5" = self.by-version."abbrev"."1.0.5";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "nopt-2.1.2" = self.by-version."nopt"."2.1.2";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "request-2.30.0" = self.by-version."request"."2.30.0";
+      "which-1.0.5" = self.by-version."which"."1.0.5";
+      "tar-0.1.20" = self.by-version."tar"."0.1.20";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "block-stream-0.0.7" = self.by-version."block-stream"."0.0.7";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "read-1.0.5" = self.by-version."read"."1.0.5";
+      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
+      "node-gyp-0.12.2" = self.by-version."node-gyp"."0.12.2";
+      "fstream-npm-0.1.8" = self.by-version."fstream-npm"."0.1.8";
+      "uid-number-0.0.5" = self.by-version."uid-number"."0.0.5";
+      "archy-0.0.2" = self.by-version."archy"."0.0.2";
+      "chownr-0.0.1" = self.by-version."chownr"."0.0.1";
+      "npmlog-0.0.6" = self.by-version."npmlog"."0.0.6";
+      "ansi-0.2.1" = self.by-version."ansi"."0.2.1";
+      "npm-registry-client-0.3.6" = self.by-version."npm-registry-client"."0.3.6";
+      "read-package-json-1.1.9" = self.by-version."read-package-json"."1.1.9";
+      "read-installed-0.2.5" = self.by-version."read-installed"."0.2.5";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "init-package-json-0.0.14" = self.by-version."init-package-json"."0.0.14";
+      "osenv-0.1.0" = self.by-version."osenv"."0.1.0";
+      "lockfile-0.4.3" = self.by-version."lockfile"."0.4.3";
+      "retry-0.6.1" = self.by-version."retry"."0.6.1";
+      "once-1.3.1" = self.by-version."once"."1.3.1";
+      "npmconf-0.1.16" = self.by-version."npmconf"."0.1.16";
+      "opener-1.3.0" = self.by-version."opener"."1.3.0";
+      "chmodr-0.1.0" = self.by-version."chmodr"."0.1.0";
+      "cmd-shim-1.1.2" = self.by-version."cmd-shim"."1.1.2";
+      "sha-1.2.4" = self.by-version."sha"."1.2.4";
+      "editor-0.0.5" = self.by-version."editor"."0.0.5";
+      "child-process-close-0.1.1" = self.by-version."child-process-close"."0.1.1";
+      "npm-user-validate-0.0.3" = self.by-version."npm-user-validate"."0.0.3";
+      "github-url-from-git-1.1.1" = self.by-version."github-url-from-git"."1.1.1";
+      "github-url-from-username-repo-0.0.2" = self.by-version."github-url-from-username-repo"."0.0.2";
+      "text-table-0.2.0" = self.by-version."text-table"."0.2.0";
+      "ansicolors-0.3.2" = self.by-version."ansicolors"."0.3.2";
+      "ansistyles-0.1.3" = self.by-version."ansistyles"."0.1.3";
+      "path-is-inside-1.0.1" = self.by-version."path-is-inside"."1.0.1";
+      "columnify-0.1.2" = self.by-version."columnify"."0.1.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm" ];
+  };
   by-spec."npm-cache-filename"."^1.0.0" =
     self.by-version."npm-cache-filename"."1.0.1";
   by-version."npm-cache-filename"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -15554,6 +18248,32 @@
   };
   by-spec."npm-cache-filename"."~1.0.1" =
     self.by-version."npm-cache-filename"."1.0.1";
+  by-spec."npm-check-updates"."*" =
+    self.by-version."npm-check-updates"."1.2.0";
+  by-version."npm-check-updates"."1.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-check-updates-1.2.0";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm-check-updates/-/npm-check-updates-1.2.0.tgz";
+        name = "npm-check-updates-1.2.0.tgz";
+        sha1 = "9e055cdc4a6fad8043bb95adf23eb74f5718c3ec";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm-check-updates" or []);
+    deps = {
+      "npm-1.3.26" = self.by-version."npm"."1.3.26";
+      "commander-2.0.0" = self.by-version."commander"."2.0.0";
+      "async-0.2.10" = self.by-version."async"."0.2.10";
+      "read-package-json-1.1.9" = self.by-version."read-package-json"."1.1.9";
+      "semver-2.2.1" = self.by-version."semver"."2.2.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm-check-updates" ];
+  };
+  "npm-check-updates" = self.by-version."npm-check-updates"."1.2.0";
   by-spec."npm-install-checks"."~1.0.2" =
     self.by-version."npm-install-checks"."1.0.4";
   by-version."npm-install-checks"."1.0.4" = lib.makeOverridable self.buildNodePackage {
@@ -15614,7 +18334,7 @@
     buildInputs =
       (self.nativeDeps."npm-registry-client" or []);
     deps = {
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
       "semver-2.0.11" = self.by-version."semver"."2.0.11";
       "slide-1.1.6" = self.by-version."slide"."1.1.6";
@@ -15629,6 +18349,65 @@
     ];
     passthru.names = [ "npm-registry-client" ];
   };
+  by-spec."npm-registry-client"."~0.2.27" =
+    self.by-version."npm-registry-client"."0.2.31";
+  by-version."npm-registry-client"."0.2.31" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-registry-client-0.2.31";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-0.2.31.tgz";
+        name = "npm-registry-client-0.2.31.tgz";
+        sha1 = "24a23e24e43246677cb485f8391829e9536563d4";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm-registry-client" or []);
+    deps = {
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "chownr-0.0.1" = self.by-version."chownr"."0.0.1";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "retry-0.6.0" = self.by-version."retry"."0.6.0";
+      "couch-login-0.1.20" = self.by-version."couch-login"."0.1.20";
+      "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm-registry-client" ];
+  };
+  by-spec."npm-registry-client"."~0.3.5" =
+    self.by-version."npm-registry-client"."0.3.6";
+  by-version."npm-registry-client"."0.3.6" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-registry-client-0.3.6";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-0.3.6.tgz";
+        name = "npm-registry-client-0.3.6.tgz";
+        sha1 = "c48a2a03643769acc49672860f7920ec6bffac6e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm-registry-client" or []);
+    deps = {
+      "request-2.47.0" = self.by-version."request"."2.47.0";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "chownr-0.0.1" = self.by-version."chownr"."0.0.1";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
+      "retry-0.6.0" = self.by-version."retry"."0.6.0";
+      "npmlog-0.1.1" = self.by-version."npmlog"."0.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm-registry-client" ];
+  };
   by-spec."npm-registry-client"."~3.1.4" =
     self.by-version."npm-registry-client"."3.1.8";
   by-version."npm-registry-client"."3.1.8" = lib.makeOverridable self.buildNodePackage {
@@ -15650,7 +18429,7 @@
       "normalize-package-data-1.0.3" = self.by-version."normalize-package-data"."1.0.3";
       "npm-cache-filename-1.0.1" = self.by-version."npm-cache-filename"."1.0.1";
       "once-1.3.1" = self.by-version."once"."1.3.1";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "retry-0.6.0" = self.by-version."retry"."0.6.0";
       "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
       "semver-4.1.0" = self.by-version."semver"."4.1.0";
@@ -15661,28 +18440,28 @@
     ];
     passthru.names = [ "npm-registry-client" ];
   };
-  by-spec."npm-registry-client"."~3.2.4" =
-    self.by-version."npm-registry-client"."3.2.4";
-  by-version."npm-registry-client"."3.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "npm-registry-client-3.2.4";
+  by-spec."npm-registry-client"."~4.0.1" =
+    self.by-version."npm-registry-client"."4.0.1";
+  by-version."npm-registry-client"."4.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-registry-client-4.0.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-3.2.4.tgz";
-        name = "npm-registry-client-3.2.4.tgz";
-        sha1 = "8659b3449e1c9a9f8181dad142cadb048bfe521f";
+        url = "http://registry.npmjs.org/npm-registry-client/-/npm-registry-client-4.0.1.tgz";
+        name = "npm-registry-client-4.0.1.tgz";
+        sha1 = "0716677c70354a7218f7e8c5a948677d444c0cc0";
       })
     ];
     buildInputs =
       (self.nativeDeps."npm-registry-client" or []);
     deps = {
       "chownr-0.0.1" = self.by-version."chownr"."0.0.1";
+      "concat-stream-1.4.6" = self.by-version."concat-stream"."1.4.6";
       "graceful-fs-3.0.4" = self.by-version."graceful-fs"."3.0.4";
       "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
       "normalize-package-data-1.0.3" = self.by-version."normalize-package-data"."1.0.3";
-      "npm-cache-filename-1.0.1" = self.by-version."npm-cache-filename"."1.0.1";
       "once-1.3.1" = self.by-version."once"."1.3.1";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "retry-0.6.1" = self.by-version."retry"."0.6.1";
       "rimraf-2.2.8" = self.by-version."rimraf"."2.2.8";
       "semver-4.1.0" = self.by-version."semver"."4.1.0";
@@ -15693,6 +18472,26 @@
     ];
     passthru.names = [ "npm-registry-client" ];
   };
+  by-spec."npm-user-validate"."0.0.3" =
+    self.by-version."npm-user-validate"."0.0.3";
+  by-version."npm-user-validate"."0.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "npm-user-validate-0.0.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npm-user-validate/-/npm-user-validate-0.0.3.tgz";
+        name = "npm-user-validate-0.0.3.tgz";
+        sha1 = "818eca4312d13da648f9bc1d7f80bb4f151e0c2e";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npm-user-validate" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npm-user-validate" ];
+  };
   by-spec."npm-user-validate"."~0.1.1" =
     self.by-version."npm-user-validate"."0.1.1";
   by-version."npm-user-validate"."0.1.1" = lib.makeOverridable self.buildNodePackage {
@@ -15770,6 +18569,34 @@
     ];
     passthru.names = [ "npmconf" ];
   };
+  by-spec."npmconf"."0.1.16" =
+    self.by-version."npmconf"."0.1.16";
+  by-version."npmconf"."0.1.16" = lib.makeOverridable self.buildNodePackage {
+    name = "npmconf-0.1.16";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.16.tgz";
+        name = "npmconf-0.1.16.tgz";
+        sha1 = "0bdca78b8551419686b3a98004f06f0819edcd2a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npmconf" or []);
+    deps = {
+      "config-chain-1.1.8" = self.by-version."config-chain"."1.1.8";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "once-1.3.1" = self.by-version."once"."1.3.1";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "osenv-0.0.3" = self.by-version."osenv"."0.0.3";
+      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+      "ini-1.1.0" = self.by-version."ini"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npmconf" ];
+  };
   by-spec."npmconf"."2.0.9" =
     self.by-version."npmconf"."2.0.9";
   by-version."npmconf"."2.0.9" = lib.makeOverridable self.buildNodePackage {
@@ -15828,34 +18655,12 @@
     ];
     passthru.names = [ "npmconf" ];
   };
+  by-spec."npmconf"."~0.1.1" =
+    self.by-version."npmconf"."0.1.16";
+  by-spec."npmconf"."~0.1.12" =
+    self.by-version."npmconf"."0.1.16";
   by-spec."npmconf"."~0.1.2" =
     self.by-version."npmconf"."0.1.16";
-  by-version."npmconf"."0.1.16" = lib.makeOverridable self.buildNodePackage {
-    name = "npmconf-0.1.16";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/npmconf/-/npmconf-0.1.16.tgz";
-        name = "npmconf-0.1.16.tgz";
-        sha1 = "0bdca78b8551419686b3a98004f06f0819edcd2a";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."npmconf" or []);
-    deps = {
-      "config-chain-1.1.8" = self.by-version."config-chain"."1.1.8";
-      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
-      "once-1.3.1" = self.by-version."once"."1.3.1";
-      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
-      "osenv-0.0.3" = self.by-version."osenv"."0.0.3";
-      "nopt-2.2.1" = self.by-version."nopt"."2.2.1";
-      "semver-2.3.2" = self.by-version."semver"."2.3.2";
-      "ini-1.1.0" = self.by-version."ini"."1.1.0";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "npmconf" ];
-  };
   by-spec."npmconf"."~2.0.5" =
     self.by-version."npmconf"."2.0.9";
   by-spec."npmlog"."*" =
@@ -15881,6 +18686,48 @@
   };
   by-spec."npmlog"."0" =
     self.by-version."npmlog"."0.1.1";
+  by-spec."npmlog"."0.0.4" =
+    self.by-version."npmlog"."0.0.4";
+  by-version."npmlog"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "npmlog-0.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npmlog/-/npmlog-0.0.4.tgz";
+        name = "npmlog-0.0.4.tgz";
+        sha1 = "a12a7418606b7e0183a2851d97a8729b9a0f3837";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npmlog" or []);
+    deps = {
+      "ansi-0.1.2" = self.by-version."ansi"."0.1.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npmlog" ];
+  };
+  by-spec."npmlog"."0.0.6" =
+    self.by-version."npmlog"."0.0.6";
+  by-version."npmlog"."0.0.6" = lib.makeOverridable self.buildNodePackage {
+    name = "npmlog-0.0.6";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/npmlog/-/npmlog-0.0.6.tgz";
+        name = "npmlog-0.0.6.tgz";
+        sha1 = "685043fe71aa1665d6e3b2acef180640caf40873";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."npmlog" or []);
+    deps = {
+      "ansi-0.2.1" = self.by-version."ansi"."0.2.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "npmlog" ];
+  };
   by-spec."npmlog"."0.1" =
     self.by-version."npmlog"."0.1.1";
   by-spec."npmlog"."~0.1.1" =
@@ -16090,8 +18937,29 @@
     ];
     passthru.names = [ "on-finished" ];
   };
-  by-spec."on-finished"."~2.1.0" =
-    self.by-version."on-finished"."2.1.0";
+  by-spec."on-finished"."2.1.1" =
+    self.by-version."on-finished"."2.1.1";
+  by-version."on-finished"."2.1.1" = lib.makeOverridable self.buildNodePackage {
+    name = "on-finished-2.1.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/on-finished/-/on-finished-2.1.1.tgz";
+        name = "on-finished-2.1.1.tgz";
+        sha1 = "f82ca1c9e3a4f3286b1b9938610e5b8636bd3cb2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."on-finished" or []);
+    deps = {
+      "ee-first-1.1.0" = self.by-version."ee-first"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "on-finished" ];
+  };
+  by-spec."on-finished"."~2.1.1" =
+    self.by-version."on-finished"."2.1.1";
   by-spec."on-headers"."~1.0.0" =
     self.by-version."on-headers"."1.0.0";
   by-version."on-headers"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -16390,6 +19258,8 @@
     ];
     passthru.names = [ "optimist" ];
   };
+  by-spec."optimist"."~0.3.4" =
+    self.by-version."optimist"."0.3.7";
   by-spec."optimist"."~0.3.5" =
     self.by-version."optimist"."0.3.7";
   by-spec."optimist"."~0.6.0" =
@@ -16677,6 +19547,26 @@
     ];
     passthru.names = [ "pako" ];
   };
+  by-spec."parents"."0.0.2" =
+    self.by-version."parents"."0.0.2";
+  by-version."parents"."0.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "parents-0.0.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/parents/-/parents-0.0.2.tgz";
+        name = "parents-0.0.2.tgz";
+        sha1 = "67147826e497d40759aaf5ba4c99659b6034d302";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."parents" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "parents" ];
+  };
   by-spec."parents"."^1.0.0" =
     self.by-version."parents"."1.0.0";
   by-version."parents"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -17013,16 +19903,36 @@
     ];
     passthru.names = [ "pbkdf2-compat" ];
   };
+  by-spec."pegjs"."0.6.2" =
+    self.by-version."pegjs"."0.6.2";
+  by-version."pegjs"."0.6.2" = lib.makeOverridable self.buildNodePackage {
+    name = "pegjs-0.6.2";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/pegjs/-/pegjs-0.6.2.tgz";
+        name = "pegjs-0.6.2.tgz";
+        sha1 = "74651f8a800e444db688e4eeae8edb65637a17a5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."pegjs" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "pegjs" ];
+  };
   by-spec."phantomjs"."*" =
-    self.by-version."phantomjs"."1.9.11";
-  by-version."phantomjs"."1.9.11" = lib.makeOverridable self.buildNodePackage {
-    name = "phantomjs-1.9.11";
+    self.by-version."phantomjs"."1.9.12";
+  by-version."phantomjs"."1.9.12" = lib.makeOverridable self.buildNodePackage {
+    name = "phantomjs-1.9.12";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/phantomjs/-/phantomjs-1.9.11.tgz";
-        name = "phantomjs-1.9.11.tgz";
-        sha1 = "de822affca7858382b6ab9c931ba4541e5b8a0ae";
+        url = "http://registry.npmjs.org/phantomjs/-/phantomjs-1.9.12.tgz";
+        name = "phantomjs-1.9.12.tgz";
+        sha1 = "812b137654585413ecb82bf3db9dcd39d8f85f91";
       })
     ];
     buildInputs =
@@ -17030,7 +19940,7 @@
     deps = {
       "adm-zip-0.4.4" = self.by-version."adm-zip"."0.4.4";
       "kew-0.4.0" = self.by-version."kew"."0.4.0";
-      "ncp-0.6.0" = self.by-version."ncp"."0.6.0";
+      "ncp-1.0.1" = self.by-version."ncp"."1.0.1";
       "npmconf-2.0.9" = self.by-version."npmconf"."2.0.9";
       "mkdirp-0.5.0" = self.by-version."mkdirp"."0.5.0";
       "progress-1.1.8" = self.by-version."progress"."1.1.8";
@@ -17043,11 +19953,11 @@
     ];
     passthru.names = [ "phantomjs" ];
   };
-  "phantomjs" = self.by-version."phantomjs"."1.9.11";
+  "phantomjs" = self.by-version."phantomjs"."1.9.12";
   by-spec."phantomjs"."~1.9.1" =
-    self.by-version."phantomjs"."1.9.11";
+    self.by-version."phantomjs"."1.9.12";
   by-spec."phantomjs"."~1.9.10" =
-    self.by-version."phantomjs"."1.9.11";
+    self.by-version."phantomjs"."1.9.12";
   by-spec."pkginfo"."0.2.x" =
     self.by-version."pkginfo"."0.2.3";
   by-version."pkginfo"."0.2.3" = lib.makeOverridable self.buildNodePackage {
@@ -17092,6 +20002,52 @@
     self.by-version."pkginfo"."0.3.0";
   by-spec."pkginfo"."0.x.x" =
     self.by-version."pkginfo"."0.3.0";
+  by-spec."plc"."*" =
+    self.by-version."plc"."0.1.2";
+  by-version."plc"."0.1.2" = lib.makeOverridable self.buildNodePackage {
+    name = "plc-0.1.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/plc/-/plc-0.1.2.tgz";
+        name = "plc-0.1.2.tgz";
+        sha1 = "a25c5e677261f7912d5d35cedfb2527315b7d329";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."plc" or []);
+    deps = {
+      "bits-0.1.1" = self.by-version."bits"."0.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "plc" ];
+  };
+  "plc" = self.by-version."plc"."0.1.2";
+  by-spec."plist"."1.0.1" =
+    self.by-version."plist"."1.0.1";
+  by-version."plist"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "plist-1.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/plist/-/plist-1.0.1.tgz";
+        name = "plist-1.0.1.tgz";
+        sha1 = "0e17d4e37c2fae5baf44129848a646db03365acb";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."plist" or []);
+    deps = {
+      "base64-js-0.0.6" = self.by-version."base64-js"."0.0.6";
+      "xmlbuilder-2.2.1" = self.by-version."xmlbuilder"."2.2.1";
+      "xmldom-0.1.19" = self.by-version."xmldom"."0.1.19";
+      "util-deprecate-1.0.0" = self.by-version."util-deprecate"."1.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "plist" ];
+  };
   by-spec."plist-native"."*" =
     self.by-version."plist-native"."0.3.1";
   by-version."plist-native"."0.3.1" = lib.makeOverridable self.buildNodePackage {
@@ -17135,15 +20091,15 @@
     passthru.names = [ "policyfile" ];
   };
   by-spec."posix"."*" =
-    self.by-version."posix"."1.0.3";
-  by-version."posix"."1.0.3" = lib.makeOverridable self.buildNodePackage {
-    name = "posix-1.0.3";
+    self.by-version."posix"."1.0.4";
+  by-version."posix"."1.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "posix-1.0.4";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/posix/-/posix-1.0.3.tgz";
-        name = "posix-1.0.3.tgz";
-        sha1 = "f0efae90d59c56c4509c8f0ed222b421caa8188a";
+        url = "http://registry.npmjs.org/posix/-/posix-1.0.4.tgz";
+        name = "posix-1.0.4.tgz";
+        sha1 = "628eb17c9c3299a296cf2f9fdc7cbad4fd554a56";
       })
     ];
     buildInputs =
@@ -17154,7 +20110,7 @@
     ];
     passthru.names = [ "posix" ];
   };
-  "posix" = self.by-version."posix"."1.0.3";
+  "posix" = self.by-version."posix"."1.0.4";
   by-spec."posix-getopt"."1.0.0" =
     self.by-version."posix-getopt"."1.0.0";
   by-version."posix-getopt"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -17450,6 +20406,26 @@
     ];
     passthru.names = [ "promzard" ];
   };
+  by-spec."properties-parser"."0.2.3" =
+    self.by-version."properties-parser"."0.2.3";
+  by-version."properties-parser"."0.2.3" = lib.makeOverridable self.buildNodePackage {
+    name = "properties-parser-0.2.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/properties-parser/-/properties-parser-0.2.3.tgz";
+        name = "properties-parser-0.2.3.tgz";
+        sha1 = "f7591255f707abbff227c7b56b637dbb0373a10f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."properties-parser" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "properties-parser" ];
+  };
   by-spec."proto-list"."~1.2.1" =
     self.by-version."proto-list"."1.2.3";
   by-version."proto-list"."1.2.3" = lib.makeOverridable self.buildNodePackage {
@@ -17598,6 +20574,26 @@
     ];
     passthru.names = [ "punycode" ];
   };
+  by-spec."punycode".">=1.0.0 <1.1.0" =
+    self.by-version."punycode"."1.0.0";
+  by-version."punycode"."1.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "punycode-1.0.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/punycode/-/punycode-1.0.0.tgz";
+        name = "punycode-1.0.0.tgz";
+        sha1 = "ce9e6c6e9c1db5827174fceb12ff4938700a1bd3";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."punycode" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "punycode" ];
+  };
   by-spec."punycode"."~1.2.3" =
     self.by-version."punycode"."1.2.4";
   by-spec."punycode"."~1.2.4" =
@@ -17623,48 +20619,50 @@
     passthru.names = [ "pure" ];
   };
   "pure-css" = self.by-version."pure-css"."0.5.0-rc-1";
-  by-spec."q".">= 0.0.1" =
-    self.by-version."q"."2.0.2";
-  by-version."q"."2.0.2" = lib.makeOverridable self.buildNodePackage {
-    name = "q-2.0.2";
+  by-spec."q"."0.9.7" =
+    self.by-version."q"."0.9.7";
+  by-version."q"."0.9.7" = lib.makeOverridable self.buildNodePackage {
+    name = "q-0.9.7";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/q/-/q-2.0.2.tgz";
-        name = "q-2.0.2.tgz";
-        sha1 = "4629e6cc668ff8554cfa775dab5aba50bad8f56d";
+        url = "http://registry.npmjs.org/q/-/q-0.9.7.tgz";
+        name = "q-0.9.7.tgz";
+        sha1 = "4de2e6cb3b29088c9e4cbc03bf9d42fb96ce2f75";
       })
     ];
     buildInputs =
       (self.nativeDeps."q" or []);
     deps = {
-      "asap-1.0.0" = self.by-version."asap"."1.0.0";
-      "collections-2.0.1" = self.by-version."collections"."2.0.1";
     };
     peerDependencies = [
     ];
     passthru.names = [ "q" ];
   };
-  by-spec."q"."~0.9.2" =
-    self.by-version."q"."0.9.7";
-  by-version."q"."0.9.7" = lib.makeOverridable self.buildNodePackage {
-    name = "q-0.9.7";
+  by-spec."q".">= 0.0.1" =
+    self.by-version."q"."2.0.2";
+  by-version."q"."2.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "q-2.0.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/q/-/q-0.9.7.tgz";
-        name = "q-0.9.7.tgz";
-        sha1 = "4de2e6cb3b29088c9e4cbc03bf9d42fb96ce2f75";
+        url = "http://registry.npmjs.org/q/-/q-2.0.2.tgz";
+        name = "q-2.0.2.tgz";
+        sha1 = "4629e6cc668ff8554cfa775dab5aba50bad8f56d";
       })
     ];
     buildInputs =
       (self.nativeDeps."q" or []);
     deps = {
+      "asap-1.0.0" = self.by-version."asap"."1.0.0";
+      "collections-2.0.1" = self.by-version."collections"."2.0.1";
     };
     peerDependencies = [
     ];
     passthru.names = [ "q" ];
   };
+  by-spec."q"."~0.9.2" =
+    self.by-version."q"."0.9.7";
   by-spec."q"."~0.9.6" =
     self.by-version."q"."0.9.7";
   by-spec."q"."~0.9.7" =
@@ -17853,16 +20851,16 @@
     ];
     passthru.names = [ "qs" ];
   };
-  by-spec."qs"."2.2.4" =
-    self.by-version."qs"."2.2.4";
-  by-version."qs"."2.2.4" = lib.makeOverridable self.buildNodePackage {
-    name = "qs-2.2.4";
+  by-spec."qs"."2.3.2" =
+    self.by-version."qs"."2.3.2";
+  by-version."qs"."2.3.2" = lib.makeOverridable self.buildNodePackage {
+    name = "qs-2.3.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/qs/-/qs-2.2.4.tgz";
-        name = "qs-2.2.4.tgz";
-        sha1 = "2e9fbcd34b540e3421c924ecd01e90aa975319c8";
+        url = "http://registry.npmjs.org/qs/-/qs-2.3.2.tgz";
+        name = "qs-2.3.2.tgz";
+        sha1 = "d45ec249e4b9b029af008829a101d5ff7e972790";
       })
     ];
     buildInputs =
@@ -17874,7 +20872,7 @@
     passthru.names = [ "qs" ];
   };
   by-spec."qs".">= 0.4.0" =
-    self.by-version."qs"."2.2.4";
+    self.by-version."qs"."2.3.2";
   by-spec."qs"."~0.5.4" =
     self.by-version."qs"."0.5.6";
   by-version."qs"."0.5.6" = lib.makeOverridable self.buildNodePackage {
@@ -17937,6 +20935,68 @@
     ];
     passthru.names = [ "qs" ];
   };
+  by-spec."qs"."~2.3.1" =
+    self.by-version."qs"."2.3.2";
+  by-spec."querystring".">=0.1.0 <0.2.0" =
+    self.by-version."querystring"."0.1.0";
+  by-version."querystring"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "querystring-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/querystring/-/querystring-0.1.0.tgz";
+        name = "querystring-0.1.0.tgz";
+        sha1 = "cb76a26cda0a10a94163fcdb3e132827f04b7b10";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."querystring" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "querystring" ];
+  };
+  by-spec."querystring"."https://github.com/substack/querystring/archive/0.2.0-ie8.tar.gz" =
+    self.by-version."querystring"."0.2.0";
+  by-version."querystring"."0.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "querystring-0.2.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "https://github.com/substack/querystring/archive/0.2.0-ie8.tar.gz";
+        name = "querystring-0.2.0.tgz";
+        sha256 = "9476079402605957bae231ea3ec5ae83b454b2de68ddaa3450096821996be8f5";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."querystring" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "querystring" ];
+  };
+  by-spec."querystring-es3"."0.2.0" =
+    self.by-version."querystring-es3"."0.2.0";
+  by-version."querystring-es3"."0.2.0" = lib.makeOverridable self.buildNodePackage {
+    name = "querystring-es3-0.2.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.0.tgz";
+        name = "querystring-es3-0.2.0.tgz";
+        sha1 = "c365a08a69c443accfeb3a9deab35e3f0abaa476";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."querystring-es3" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "querystring-es3" ];
+  };
   by-spec."querystring-es3"."~0.2.0" =
     self.by-version."querystring-es3"."0.2.1";
   by-version."querystring-es3"."0.2.1" = lib.makeOverridable self.buildNodePackage {
@@ -18167,6 +21227,29 @@
     passthru.names = [ "rbytes" ];
   };
   "rbytes" = self.by-version."rbytes"."1.1.0";
+  by-spec."rc"."0.3.0" =
+    self.by-version."rc"."0.3.0";
+  by-version."rc"."0.3.0" = lib.makeOverridable self.buildNodePackage {
+    name = "rc-0.3.0";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/rc/-/rc-0.3.0.tgz";
+        name = "rc-0.3.0.tgz";
+        sha1 = "caffdaafc17e8608e50db0c6ee63f1c344d9ac58";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."rc" or []);
+    deps = {
+      "optimist-0.3.7" = self.by-version."optimist"."0.3.7";
+      "deep-extend-0.2.11" = self.by-version."deep-extend"."0.2.11";
+      "ini-1.1.0" = self.by-version."ini"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "rc" ];
+  };
   by-spec."rc"."~0.3.0" =
     self.by-version."rc"."0.3.5";
   by-version."rc"."0.3.5" = lib.makeOverridable self.buildNodePackage {
@@ -18191,15 +21274,15 @@
     passthru.names = [ "rc" ];
   };
   by-spec."rc"."~0.5.0" =
-    self.by-version."rc"."0.5.1";
-  by-version."rc"."0.5.1" = lib.makeOverridable self.buildNodePackage {
-    name = "rc-0.5.1";
+    self.by-version."rc"."0.5.3";
+  by-version."rc"."0.5.3" = lib.makeOverridable self.buildNodePackage {
+    name = "rc-0.5.3";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/rc/-/rc-0.5.1.tgz";
-        name = "rc-0.5.1.tgz";
-        sha1 = "b88ef9421a08151352a659e0c3a58c4b82eb7576";
+        url = "http://registry.npmjs.org/rc/-/rc-0.5.3.tgz";
+        name = "rc-0.5.3.tgz";
+        sha1 = "2247b3baf3219ccfd7e489ffd3eafa0640b37fd9";
       })
     ];
     buildInputs =
@@ -18215,15 +21298,15 @@
     passthru.names = [ "rc" ];
   };
   by-spec."react"."*" =
-    self.by-version."react"."0.12.0-rc1";
-  by-version."react"."0.12.0-rc1" = lib.makeOverridable self.buildNodePackage {
-    name = "react-0.12.0-rc1";
+    self.by-version."react"."0.12.0";
+  by-version."react"."0.12.0" = lib.makeOverridable self.buildNodePackage {
+    name = "react-0.12.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/react/-/react-0.12.0-rc1.tgz";
-        name = "react-0.12.0-rc1.tgz";
-        sha1 = "de56afc07e834fdf2f988a9c1026c25b93a61636";
+        url = "http://registry.npmjs.org/react/-/react-0.12.0.tgz";
+        name = "react-0.12.0.tgz";
+        sha1 = "4361809e9fc234fc89db4ebc087bdda07908a56b";
       })
     ];
     buildInputs =
@@ -18235,7 +21318,7 @@
     ];
     passthru.names = [ "react" ];
   };
-  "react" = self.by-version."react"."0.12.0-rc1";
+  "react" = self.by-version."react"."0.12.0";
   by-spec."read"."1" =
     self.by-version."read"."1.0.5";
   by-version."read"."1.0.5" = lib.makeOverridable self.buildNodePackage {
@@ -18263,6 +21346,30 @@
     self.by-version."read"."1.0.5";
   by-spec."read"."~1.0.4" =
     self.by-version."read"."1.0.5";
+  by-spec."read-installed"."~0.2.2" =
+    self.by-version."read-installed"."0.2.5";
+  by-version."read-installed"."0.2.5" = lib.makeOverridable self.buildNodePackage {
+    name = "read-installed-0.2.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/read-installed/-/read-installed-0.2.5.tgz";
+        name = "read-installed-0.2.5.tgz";
+        sha1 = "134df8b326d8b54b11e18f7dd8c81bf5e976ef86";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."read-installed" or []);
+    deps = {
+      "semver-2.3.2" = self.by-version."semver"."2.3.2";
+      "slide-1.1.6" = self.by-version."slide"."1.1.6";
+      "read-package-json-1.2.7" = self.by-version."read-package-json"."1.2.7";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "read-installed" ];
+  };
   by-spec."read-installed"."~3.1.2" =
     self.by-version."read-installed"."3.1.3";
   by-version."read-installed"."3.1.3" = lib.makeOverridable self.buildNodePackage {
@@ -18316,6 +21423,34 @@
     ];
     passthru.names = [ "read-package-json" ];
   };
+  by-spec."read-package-json"."1.1.x" =
+    self.by-version."read-package-json"."1.1.9";
+  by-version."read-package-json"."1.1.9" = lib.makeOverridable self.buildNodePackage {
+    name = "read-package-json-1.1.9";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/read-package-json/-/read-package-json-1.1.9.tgz";
+        name = "read-package-json-1.1.9.tgz";
+        sha1 = "9c319185e5f8461661c01f8d4e5e80b468aa18ee";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."read-package-json" or []);
+    deps = {
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+      "lru-cache-2.5.0" = self.by-version."lru-cache"."2.5.0";
+      "normalize-package-data-0.2.13" = self.by-version."normalize-package-data"."0.2.13";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "read-package-json" ];
+  };
+  by-spec."read-package-json"."~1.1.0" =
+    self.by-version."read-package-json"."1.1.9";
+  by-spec."read-package-json"."~1.1.6" =
+    self.by-version."read-package-json"."1.1.9";
   by-spec."read-package-json"."~1.2.7" =
     self.by-version."read-package-json"."1.2.7";
   by-spec."readable-stream"."*" =
@@ -18342,16 +21477,16 @@
     ];
     passthru.names = [ "readable-stream" ];
   };
-  by-spec."readable-stream"."1.0.27-1" =
-    self.by-version."readable-stream"."1.0.27-1";
-  by-version."readable-stream"."1.0.27-1" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.27-1";
+  by-spec."readable-stream"."1.0" =
+    self.by-version."readable-stream"."1.0.33";
+  by-version."readable-stream"."1.0.33" = lib.makeOverridable self.buildNodePackage {
+    name = "readable-stream-1.0.33";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz";
-        name = "readable-stream-1.0.27-1.tgz";
-        sha1 = "6b67983c20357cefd07f0165001a16d710d91078";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33.tgz";
+        name = "readable-stream-1.0.33.tgz";
+        sha1 = "3a360dd66c1b1d7fd4705389860eda1d0f61126c";
       })
     ];
     buildInputs =
@@ -18366,16 +21501,16 @@
     ];
     passthru.names = [ "readable-stream" ];
   };
-  by-spec."readable-stream"."1.0.31" =
-    self.by-version."readable-stream"."1.0.31";
-  by-version."readable-stream"."1.0.31" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.31";
+  by-spec."readable-stream"."1.0.27-1" =
+    self.by-version."readable-stream"."1.0.27-1";
+  by-version."readable-stream"."1.0.27-1" = lib.makeOverridable self.buildNodePackage {
+    name = "readable-stream-1.0.27-1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.31.tgz";
-        name = "readable-stream-1.0.31.tgz";
-        sha1 = "8f2502e0bc9e3b0da1b94520aabb4e2603ecafae";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.27-1.tgz";
+        name = "readable-stream-1.0.27-1.tgz";
+        sha1 = "6b67983c20357cefd07f0165001a16d710d91078";
       })
     ];
     buildInputs =
@@ -18390,18 +21525,16 @@
     ];
     passthru.names = [ "readable-stream" ];
   };
-  by-spec."readable-stream"."1.1" =
-    self.by-version."readable-stream"."1.1.13";
-  by-spec."readable-stream".">=1.0.33-1 <1.1.0-0" =
-    self.by-version."readable-stream"."1.0.33-1";
-  by-version."readable-stream"."1.0.33-1" = lib.makeOverridable self.buildNodePackage {
-    name = "readable-stream-1.0.33-1";
+  by-spec."readable-stream"."1.0.31" =
+    self.by-version."readable-stream"."1.0.31";
+  by-version."readable-stream"."1.0.31" = lib.makeOverridable self.buildNodePackage {
+    name = "readable-stream-1.0.31";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.33-1.tgz";
-        name = "readable-stream-1.0.33-1.tgz";
-        sha1 = "40d0d91338691291a9117c05d78adb5497c37810";
+        url = "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.31.tgz";
+        name = "readable-stream-1.0.31.tgz";
+        sha1 = "8f2502e0bc9e3b0da1b94520aabb4e2603ecafae";
       })
     ];
     buildInputs =
@@ -18416,24 +21549,30 @@
     ];
     passthru.names = [ "readable-stream" ];
   };
+  by-spec."readable-stream"."1.1" =
+    self.by-version."readable-stream"."1.1.13";
+  by-spec."readable-stream".">=1.0.33-1 <1.1.0-0" =
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream".">=1.1.13-1 <1.2.0-0" =
     self.by-version."readable-stream"."1.1.13";
   by-spec."readable-stream"."^1.0.27-1" =
     self.by-version."readable-stream"."1.1.13";
+  by-spec."readable-stream"."^1.0.33-1" =
+    self.by-version."readable-stream"."1.1.13";
   by-spec."readable-stream"."^1.1.13-1" =
     self.by-version."readable-stream"."1.1.13";
   by-spec."readable-stream"."~1.0.17" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.0.2" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.0.24" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.0.26" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.0.26-2" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.0.32" =
-    self.by-version."readable-stream"."1.0.33-1";
+    self.by-version."readable-stream"."1.0.33";
   by-spec."readable-stream"."~1.1" =
     self.by-version."readable-stream"."1.1.13";
   by-spec."readable-stream"."~1.1.8" =
@@ -18484,50 +21623,52 @@
     ];
     passthru.names = [ "readdir-scoped-modules" ];
   };
-  by-spec."readdirp"."~0.2.3" =
-    self.by-version."readdirp"."0.2.5";
-  by-version."readdirp"."0.2.5" = lib.makeOverridable self.buildNodePackage {
-    name = "readdirp-0.2.5";
+  by-spec."readdirp"."^1.1.0" =
+    self.by-version."readdirp"."1.1.0";
+  by-version."readdirp"."1.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "readdirp-1.1.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readdirp/-/readdirp-0.2.5.tgz";
-        name = "readdirp-0.2.5.tgz";
-        sha1 = "c4c276e52977ae25db5191fe51d008550f15d9bb";
+        url = "http://registry.npmjs.org/readdirp/-/readdirp-1.1.0.tgz";
+        name = "readdirp-1.1.0.tgz";
+        sha1 = "6506f9d5d8bb2edc19c855a60bb92feca5fae39c";
       })
     ];
     buildInputs =
       (self.nativeDeps."readdirp" or []);
     deps = {
-      "minimatch-1.0.0" = self.by-version."minimatch"."1.0.0";
+      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
+      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
     };
     peerDependencies = [
     ];
     passthru.names = [ "readdirp" ];
   };
-  by-spec."readdirp"."~1.1.0" =
-    self.by-version."readdirp"."1.1.0";
-  by-version."readdirp"."1.1.0" = lib.makeOverridable self.buildNodePackage {
-    name = "readdirp-1.1.0";
+  by-spec."readdirp"."~0.2.3" =
+    self.by-version."readdirp"."0.2.5";
+  by-version."readdirp"."0.2.5" = lib.makeOverridable self.buildNodePackage {
+    name = "readdirp-0.2.5";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/readdirp/-/readdirp-1.1.0.tgz";
-        name = "readdirp-1.1.0.tgz";
-        sha1 = "6506f9d5d8bb2edc19c855a60bb92feca5fae39c";
+        url = "http://registry.npmjs.org/readdirp/-/readdirp-0.2.5.tgz";
+        name = "readdirp-0.2.5.tgz";
+        sha1 = "c4c276e52977ae25db5191fe51d008550f15d9bb";
       })
     ];
     buildInputs =
       (self.nativeDeps."readdirp" or []);
     deps = {
-      "graceful-fs-2.0.3" = self.by-version."graceful-fs"."2.0.3";
-      "minimatch-0.2.14" = self.by-version."minimatch"."0.2.14";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "minimatch-1.0.0" = self.by-version."minimatch"."1.0.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "readdirp" ];
   };
+  by-spec."readdirp"."~1.1.0" =
+    self.by-version."readdirp"."1.1.0";
   by-spec."readline2"."~0.1.0" =
     self.by-version."readline2"."0.1.0";
   by-version."readline2"."0.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -18573,6 +21714,27 @@
     ];
     passthru.names = [ "realize-package-specifier" ];
   };
+  by-spec."reconnect-core"."https://github.com/dodo/reconnect-core/tarball/merged" =
+    self.by-version."reconnect-core"."0.0.1";
+  by-version."reconnect-core"."0.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "reconnect-core-0.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "https://github.com/dodo/reconnect-core/tarball/merged";
+        name = "reconnect-core-0.0.1.tgz";
+        sha256 = "431dd7a1578061815270e4ad59c6e8b40dff6b308244973e1c11049ccbf1629b";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."reconnect-core" or []);
+    deps = {
+      "backoff-2.3.0" = self.by-version."backoff"."2.3.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "reconnect-core" ];
+  };
   by-spec."redeyed"."~0.4.0" =
     self.by-version."redeyed"."0.4.4";
   by-version."redeyed"."0.4.4" = lib.makeOverridable self.buildNodePackage {
@@ -18785,15 +21947,15 @@
     passthru.names = [ "replace" ];
   };
   by-spec."request"."2" =
-    self.by-version."request"."2.45.0";
-  by-version."request"."2.45.0" = lib.makeOverridable self.buildNodePackage {
-    name = "request-2.45.0";
+    self.by-version."request"."2.47.0";
+  by-version."request"."2.47.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.47.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/request/-/request-2.45.0.tgz";
-        name = "request-2.45.0.tgz";
-        sha1 = "29d713a0a07f17fb2e7b61815d2010681718e93c";
+        url = "http://registry.npmjs.org/request/-/request-2.47.0.tgz";
+        name = "request-2.47.0.tgz";
+        sha1 = "09e9fd1a4fed6593a805ef8202b20f0c5ecb485f";
       })
     ];
     buildInputs =
@@ -18802,27 +21964,30 @@
       "bl-0.9.3" = self.by-version."bl"."0.9.3";
       "caseless-0.6.0" = self.by-version."caseless"."0.6.0";
       "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
-      "qs-1.2.2" = self.by-version."qs"."1.2.2";
+      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
       "json-stringify-safe-5.0.0" = self.by-version."json-stringify-safe"."5.0.0";
       "mime-types-1.0.2" = self.by-version."mime-types"."1.0.2";
       "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "qs-2.3.2" = self.by-version."qs"."2.3.2";
       "tunnel-agent-0.4.0" = self.by-version."tunnel-agent"."0.4.0";
-      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
       "tough-cookie-0.12.1" = self.by-version."tough-cookie"."0.12.1";
       "http-signature-0.10.0" = self.by-version."http-signature"."0.10.0";
       "oauth-sign-0.4.0" = self.by-version."oauth-sign"."0.4.0";
       "hawk-1.1.1" = self.by-version."hawk"."1.1.1";
       "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
       "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+      "combined-stream-0.0.7" = self.by-version."combined-stream"."0.0.7";
     };
     peerDependencies = [
     ];
     passthru.names = [ "request" ];
   };
   by-spec."request"."2 >=2.20.0" =
-    self.by-version."request"."2.45.0";
+    self.by-version."request"."2.47.0";
   by-spec."request"."2 >=2.25.0" =
-    self.by-version."request"."2.45.0";
+    self.by-version."request"."2.47.0";
+  by-spec."request"."2 >=2.45.0" =
+    self.by-version."request"."2.47.0";
   by-spec."request"."2.16.x" =
     self.by-version."request"."2.16.6";
   by-version."request"."2.16.6" = lib.makeOverridable self.buildNodePackage {
@@ -18854,6 +22019,38 @@
     ];
     passthru.names = [ "request" ];
   };
+  by-spec."request"."2.22.0" =
+    self.by-version."request"."2.22.0";
+  by-version."request"."2.22.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.22.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.22.0.tgz";
+        name = "request-2.22.0.tgz";
+        sha1 = "b883a769cc4a909571eb5004b344c43cf7e51592";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request" or []);
+    deps = {
+      "qs-0.6.6" = self.by-version."qs"."0.6.6";
+      "json-stringify-safe-4.0.0" = self.by-version."json-stringify-safe"."4.0.0";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
+      "http-signature-0.10.0" = self.by-version."http-signature"."0.10.0";
+      "hawk-0.13.1" = self.by-version."hawk"."0.13.1";
+      "aws-sign-0.3.0" = self.by-version."aws-sign"."0.3.0";
+      "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
+      "cookie-jar-0.3.0" = self.by-version."cookie-jar"."0.3.0";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "form-data-0.0.8" = self.by-version."form-data"."0.0.8";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
   by-spec."request"."2.40.0" =
     self.by-version."request"."2.40.0";
   by-version."request"."2.40.0" = lib.makeOverridable self.buildNodePackage {
@@ -18942,12 +22139,46 @@
     ];
     passthru.names = [ "request" ];
   };
+  by-spec."request".">= 2.9.153" =
+    self.by-version."request"."2.47.0";
   by-spec."request"."^2.36.0" =
-    self.by-version."request"."2.45.0";
+    self.by-version."request"."2.47.0";
   by-spec."request"."^2.40.0" =
-    self.by-version."request"."2.45.0";
+    self.by-version."request"."2.47.0";
   by-spec."request"."~2" =
-    self.by-version."request"."2.45.0";
+    self.by-version."request"."2.47.0";
+  by-spec."request"."~2.21.0" =
+    self.by-version."request"."2.21.0";
+  by-version."request"."2.21.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.21.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.21.0.tgz";
+        name = "request-2.21.0.tgz";
+        sha1 = "5728ab9c45e5a87c99daccd530298b6673a868d7";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request" or []);
+    deps = {
+      "qs-0.6.6" = self.by-version."qs"."0.6.6";
+      "json-stringify-safe-4.0.0" = self.by-version."json-stringify-safe"."4.0.0";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
+      "http-signature-0.9.11" = self.by-version."http-signature"."0.9.11";
+      "hawk-0.13.1" = self.by-version."hawk"."0.13.1";
+      "aws-sign-0.3.0" = self.by-version."aws-sign"."0.3.0";
+      "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
+      "cookie-jar-0.3.0" = self.by-version."cookie-jar"."0.3.0";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "form-data-0.0.8" = self.by-version."form-data"."0.0.8";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
   by-spec."request"."~2.27.0" =
     self.by-version."request"."2.27.0";
   by-version."request"."2.27.0" = lib.makeOverridable self.buildNodePackage {
@@ -18980,12 +22211,79 @@
     ];
     passthru.names = [ "request" ];
   };
+  by-spec."request"."~2.30.0" =
+    self.by-version."request"."2.30.0";
+  by-version."request"."2.30.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.30.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.30.0.tgz";
+        name = "request-2.30.0.tgz";
+        sha1 = "8e0d36f0806e8911524b072b64c5ee535a09d861";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request" or []);
+    deps = {
+      "qs-0.6.6" = self.by-version."qs"."0.6.6";
+      "json-stringify-safe-5.0.0" = self.by-version."json-stringify-safe"."5.0.0";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "mime-1.2.11" = self.by-version."mime"."1.2.11";
+      "tough-cookie-0.9.15" = self.by-version."tough-cookie"."0.9.15";
+      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
+      "tunnel-agent-0.3.0" = self.by-version."tunnel-agent"."0.3.0";
+      "http-signature-0.10.0" = self.by-version."http-signature"."0.10.0";
+      "oauth-sign-0.3.0" = self.by-version."oauth-sign"."0.3.0";
+      "hawk-1.0.0" = self.by-version."hawk"."1.0.0";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
   by-spec."request"."~2.40.0" =
     self.by-version."request"."2.40.0";
   by-spec."request"."~2.42.0" =
     self.by-version."request"."2.42.0";
-  by-spec."request"."~2.45.0" =
-    self.by-version."request"."2.45.0";
+  by-spec."request"."~2.46.0" =
+    self.by-version."request"."2.46.0";
+  by-version."request"."2.46.0" = lib.makeOverridable self.buildNodePackage {
+    name = "request-2.46.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/request/-/request-2.46.0.tgz";
+        name = "request-2.46.0.tgz";
+        sha1 = "359195d52eaf720bc69742579d04ad6d265a8274";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."request" or []);
+    deps = {
+      "bl-0.9.3" = self.by-version."bl"."0.9.3";
+      "caseless-0.6.0" = self.by-version."caseless"."0.6.0";
+      "forever-agent-0.5.2" = self.by-version."forever-agent"."0.5.2";
+      "form-data-0.1.4" = self.by-version."form-data"."0.1.4";
+      "json-stringify-safe-5.0.0" = self.by-version."json-stringify-safe"."5.0.0";
+      "mime-types-1.0.2" = self.by-version."mime-types"."1.0.2";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
+      "qs-1.2.2" = self.by-version."qs"."1.2.2";
+      "tunnel-agent-0.4.0" = self.by-version."tunnel-agent"."0.4.0";
+      "tough-cookie-0.12.1" = self.by-version."tough-cookie"."0.12.1";
+      "http-signature-0.10.0" = self.by-version."http-signature"."0.10.0";
+      "oauth-sign-0.4.0" = self.by-version."oauth-sign"."0.4.0";
+      "hawk-1.1.1" = self.by-version."hawk"."1.1.1";
+      "aws-sign2-0.5.0" = self.by-version."aws-sign2"."0.5.0";
+      "stringstream-0.0.4" = self.by-version."stringstream"."0.0.4";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "request" ];
+  };
+  by-spec."request"."~2.47.0" =
+    self.by-version."request"."2.47.0";
   by-spec."request-progress"."0.3.0" =
     self.by-version."request-progress"."0.3.0";
   by-version."request-progress"."0.3.0" = lib.makeOverridable self.buildNodePackage {
@@ -19071,6 +22369,26 @@
   };
   by-spec."requirejs"."~2.1.0" =
     self.by-version."requirejs"."2.1.15";
+  by-spec."resolve"."0.6.3" =
+    self.by-version."resolve"."0.6.3";
+  by-version."resolve"."0.6.3" = lib.makeOverridable self.buildNodePackage {
+    name = "resolve-0.6.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/resolve/-/resolve-0.6.3.tgz";
+        name = "resolve-0.6.3.tgz";
+        sha1 = "dd957982e7e736debdf53b58a4dd91754575dd46";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."resolve" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "resolve" ];
+  };
   by-spec."resolve"."0.7.4" =
     self.by-version."resolve"."0.7.4";
   by-version."resolve"."0.7.4" = lib.makeOverridable self.buildNodePackage {
@@ -19115,6 +22433,10 @@
   };
   by-spec."resolve"."~0.3.1" =
     self.by-version."resolve"."0.3.1";
+  by-spec."resolve"."~0.6.0" =
+    self.by-version."resolve"."0.6.3";
+  by-spec."resolve"."~0.6.1" =
+    self.by-version."resolve"."0.6.3";
   by-spec."resolve"."~0.7.1" =
     self.by-version."resolve"."0.7.4";
   by-spec."resolve"."~0.7.2" =
@@ -19213,7 +22535,7 @@
     buildInputs =
       (self.nativeDeps."rethinkdb" or []);
     deps = {
-      "bluebird-2.3.6" = self.by-version."bluebird"."2.3.6";
+      "bluebird-2.3.10" = self.by-version."bluebird"."2.3.10";
     };
     peerDependencies = [
     ];
@@ -19466,15 +22788,15 @@
     passthru.names = [ "ruglify" ];
   };
   by-spec."rx"."^2.2.27" =
-    self.by-version."rx"."2.3.13";
-  by-version."rx"."2.3.13" = lib.makeOverridable self.buildNodePackage {
-    name = "rx-2.3.13";
+    self.by-version."rx"."2.3.14";
+  by-version."rx"."2.3.14" = lib.makeOverridable self.buildNodePackage {
+    name = "rx-2.3.14";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/rx/-/rx-2.3.13.tgz";
-        name = "rx-2.3.13.tgz";
-        sha1 = "8a42c6079e4bf7a712c17780ed17c408633a6cbc";
+        url = "http://registry.npmjs.org/rx/-/rx-2.3.14.tgz";
+        name = "rx-2.3.14.tgz";
+        sha1 = "9e497782e93ce3fe78074fae25bf8fdd2f517b59";
       })
     ];
     buildInputs =
@@ -19578,6 +22900,26 @@
     ];
     passthru.names = [ "saucelabs" ];
   };
+  by-spec."sax"."0.3.5" =
+    self.by-version."sax"."0.3.5";
+  by-version."sax"."0.3.5" = lib.makeOverridable self.buildNodePackage {
+    name = "sax-0.3.5";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/sax/-/sax-0.3.5.tgz";
+        name = "sax-0.3.5.tgz";
+        sha1 = "88fcfc1f73c0c8bbd5b7c776b6d3f3501eed073d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."sax" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "sax" ];
+  };
   by-spec."sax"."0.4.2" =
     self.by-version."sax"."0.4.2";
   by-version."sax"."0.4.2" = lib.makeOverridable self.buildNodePackage {
@@ -19640,6 +22982,8 @@
   };
   by-spec."sax".">=0.4.2" =
     self.by-version."sax"."0.6.1";
+  by-spec."sax"."~0.6.0" =
+    self.by-version."sax"."0.6.1";
   by-spec."scmp"."0.0.3" =
     self.by-version."scmp"."0.0.3";
   by-version."scmp"."0.0.3" = lib.makeOverridable self.buildNodePackage {
@@ -19661,15 +23005,15 @@
     passthru.names = [ "scmp" ];
   };
   by-spec."selenium-webdriver"."*" =
-    self.by-version."selenium-webdriver"."2.43.5";
-  by-version."selenium-webdriver"."2.43.5" = lib.makeOverridable self.buildNodePackage {
-    name = "selenium-webdriver-2.43.5";
+    self.by-version."selenium-webdriver"."2.44.0";
+  by-version."selenium-webdriver"."2.44.0" = lib.makeOverridable self.buildNodePackage {
+    name = "selenium-webdriver-2.44.0";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-2.43.5.tgz";
-        name = "selenium-webdriver-2.43.5.tgz";
-        sha1 = "6ac04302e3e81dfe59956454a19f90eeadfe5573";
+        url = "http://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-2.44.0.tgz";
+        name = "selenium-webdriver-2.44.0.tgz";
+        sha1 = "6cc6257731cd27c6db6471092857755f99d77b57";
       })
     ];
     buildInputs =
@@ -19683,7 +23027,7 @@
     ];
     passthru.names = [ "selenium-webdriver" ];
   };
-  "selenium-webdriver" = self.by-version."selenium-webdriver"."2.43.5";
+  "selenium-webdriver" = self.by-version."selenium-webdriver"."2.44.0";
   by-spec."semver"."*" =
     self.by-version."semver"."4.1.0";
   by-version."semver"."4.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -19769,6 +23113,46 @@
     self.by-version."semver"."4.1.0";
   by-spec."semver"."2 || 3 || 4" =
     self.by-version."semver"."4.1.0";
+  by-spec."semver"."2.0.11" =
+    self.by-version."semver"."2.0.11";
+  by-version."semver"."2.0.11" = lib.makeOverridable self.buildNodePackage {
+    name = "semver-2.0.11";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/semver/-/semver-2.0.11.tgz";
+        name = "semver-2.0.11.tgz";
+        sha1 = "f51f07d03fa5af79beb537fc067a7e141786cced";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."semver" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "semver" ];
+  };
+  by-spec."semver"."2.2.x" =
+    self.by-version."semver"."2.2.1";
+  by-version."semver"."2.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "semver-2.2.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/semver/-/semver-2.2.1.tgz";
+        name = "semver-2.2.1.tgz";
+        sha1 = "7941182b3ffcc580bff1c17942acdf7951c0d213";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."semver" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "semver" ];
+  };
   by-spec."semver"."2.x" =
     self.by-version."semver"."2.3.2";
   by-spec."semver"."2.x || 3.x || 4" =
@@ -19809,25 +23193,9 @@
     self.by-version."semver"."1.1.4";
   by-spec."semver"."~2.0.5" =
     self.by-version."semver"."2.0.11";
-  by-version."semver"."2.0.11" = lib.makeOverridable self.buildNodePackage {
-    name = "semver-2.0.11";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/semver/-/semver-2.0.11.tgz";
-        name = "semver-2.0.11.tgz";
-        sha1 = "f51f07d03fa5af79beb537fc067a7e141786cced";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."semver" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "semver" ];
-  };
-  by-spec."semver"."~2.1.0" =
+  by-spec."semver"."~2.0.8" =
+    self.by-version."semver"."2.0.11";
+  by-spec."semver"."~2.1" =
     self.by-version."semver"."2.1.0";
   by-version."semver"."2.1.0" = lib.makeOverridable self.buildNodePackage {
     name = "semver-2.1.0";
@@ -19847,26 +23215,10 @@
     ];
     passthru.names = [ "semver" ];
   };
+  by-spec."semver"."~2.1.0" =
+    self.by-version."semver"."2.1.0";
   by-spec."semver"."~2.2.1" =
     self.by-version."semver"."2.2.1";
-  by-version."semver"."2.2.1" = lib.makeOverridable self.buildNodePackage {
-    name = "semver-2.2.1";
-    bin = true;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/semver/-/semver-2.2.1.tgz";
-        name = "semver-2.2.1.tgz";
-        sha1 = "7941182b3ffcc580bff1c17942acdf7951c0d213";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."semver" or []);
-    deps = {
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "semver" ];
-  };
   by-spec."semver"."~2.3.0" =
     self.by-version."semver"."2.3.2";
   by-spec."semver"."~3.0.1" =
@@ -19895,15 +23247,15 @@
     passthru.names = [ "semver-diff" ];
   };
   by-spec."send"."*" =
-    self.by-version."send"."0.10.0";
-  by-version."send"."0.10.0" = lib.makeOverridable self.buildNodePackage {
-    name = "send-0.10.0";
+    self.by-version."send"."0.10.1";
+  by-version."send"."0.10.1" = lib.makeOverridable self.buildNodePackage {
+    name = "send-0.10.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/send/-/send-0.10.0.tgz";
-        name = "send-0.10.0.tgz";
-        sha1 = "2f984b703934c628b72b72d70557b75ca906ea6c";
+        url = "http://registry.npmjs.org/send/-/send-0.10.1.tgz";
+        name = "send-0.10.1.tgz";
+        sha1 = "7745c50ec72f115115980e8fb179aec01900e08a";
       })
     ];
     buildInputs =
@@ -19917,7 +23269,7 @@
       "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
       "mime-1.2.11" = self.by-version."mime"."1.2.11";
       "ms-0.6.2" = self.by-version."ms"."0.6.2";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
+      "on-finished-2.1.1" = self.by-version."on-finished"."2.1.1";
       "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
     };
     peerDependencies = [
@@ -19996,8 +23348,8 @@
     ];
     passthru.names = [ "send" ];
   };
-  by-spec."send"."0.10.0" =
-    self.by-version."send"."0.10.0";
+  by-spec."send"."0.10.1" =
+    self.by-version."send"."0.10.1";
   by-spec."send"."0.2.0" =
     self.by-version."send"."0.2.0";
   by-version."send"."0.2.0" = lib.makeOverridable self.buildNodePackage {
@@ -20051,36 +23403,6 @@
     ];
     passthru.names = [ "send" ];
   };
-  by-spec."send"."0.9.3" =
-    self.by-version."send"."0.9.3";
-  by-version."send"."0.9.3" = lib.makeOverridable self.buildNodePackage {
-    name = "send-0.9.3";
-    bin = false;
-    src = [
-      (fetchurl {
-        url = "http://registry.npmjs.org/send/-/send-0.9.3.tgz";
-        name = "send-0.9.3.tgz";
-        sha1 = "b43a7414cd089b7fbec9b755246f7c37b7b85cc0";
-      })
-    ];
-    buildInputs =
-      (self.nativeDeps."send" or []);
-    deps = {
-      "debug-2.0.0" = self.by-version."debug"."2.0.0";
-      "depd-0.4.5" = self.by-version."depd"."0.4.5";
-      "destroy-1.0.3" = self.by-version."destroy"."1.0.3";
-      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
-      "etag-1.4.0" = self.by-version."etag"."1.4.0";
-      "fresh-0.2.4" = self.by-version."fresh"."0.2.4";
-      "mime-1.2.11" = self.by-version."mime"."1.2.11";
-      "ms-0.6.2" = self.by-version."ms"."0.6.2";
-      "on-finished-2.1.0" = self.by-version."on-finished"."2.1.0";
-      "range-parser-1.0.2" = self.by-version."range-parser"."1.0.2";
-    };
-    peerDependencies = [
-    ];
-    passthru.names = [ "send" ];
-  };
   by-spec."sequence"."2.2.1" =
     self.by-version."sequence"."2.2.1";
   by-version."sequence"."2.2.1" = lib.makeOverridable self.buildNodePackage {
@@ -20219,16 +23541,16 @@
   };
   by-spec."serve-static"."~1.5.4" =
     self.by-version."serve-static"."1.5.4";
-  by-spec."serve-static"."~1.6.4" =
-    self.by-version."serve-static"."1.6.4";
-  by-version."serve-static"."1.6.4" = lib.makeOverridable self.buildNodePackage {
-    name = "serve-static-1.6.4";
+  by-spec."serve-static"."~1.7.1" =
+    self.by-version."serve-static"."1.7.1";
+  by-version."serve-static"."1.7.1" = lib.makeOverridable self.buildNodePackage {
+    name = "serve-static-1.7.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/serve-static/-/serve-static-1.6.4.tgz";
-        name = "serve-static-1.6.4.tgz";
-        sha1 = "c512e4188d7a9366672db24e40d294f0c6212367";
+        url = "http://registry.npmjs.org/serve-static/-/serve-static-1.7.1.tgz";
+        name = "serve-static-1.7.1.tgz";
+        sha1 = "6ea54d5ba7ef563f00e5fad25d0e4f5307e9809b";
       })
     ];
     buildInputs =
@@ -20236,36 +23558,55 @@
     deps = {
       "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
       "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
-      "send-0.9.3" = self.by-version."send"."0.9.3";
+      "send-0.10.1" = self.by-version."send"."0.10.1";
       "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "serve-static" ];
   };
-  by-spec."serve-static"."~1.7.0" =
-    self.by-version."serve-static"."1.7.0";
-  by-version."serve-static"."1.7.0" = lib.makeOverridable self.buildNodePackage {
-    name = "serve-static-1.7.0";
+  by-spec."sha"."~1.0.1" =
+    self.by-version."sha"."1.0.1";
+  by-version."sha"."1.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "sha-1.0.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/serve-static/-/serve-static-1.7.0.tgz";
-        name = "serve-static-1.7.0.tgz";
-        sha1 = "af2ad4e619fa2d46dcd19dd59e3b034c92510e4d";
+        url = "http://registry.npmjs.org/sha/-/sha-1.0.1.tgz";
+        name = "sha-1.0.1.tgz";
+        sha1 = "9b87a92113103e7406f7e7ef00006f3fa1975122";
       })
     ];
     buildInputs =
-      (self.nativeDeps."serve-static" or []);
+      (self.nativeDeps."sha" or []);
     deps = {
-      "escape-html-1.0.1" = self.by-version."escape-html"."1.0.1";
-      "parseurl-1.3.0" = self.by-version."parseurl"."1.3.0";
-      "send-0.10.0" = self.by-version."send"."0.10.0";
-      "utils-merge-1.0.0" = self.by-version."utils-merge"."1.0.0";
+      "graceful-fs-1.2.3" = self.by-version."graceful-fs"."1.2.3";
     };
     peerDependencies = [
     ];
-    passthru.names = [ "serve-static" ];
+    passthru.names = [ "sha" ];
+  };
+  by-spec."sha"."~1.2.1" =
+    self.by-version."sha"."1.2.4";
+  by-version."sha"."1.2.4" = lib.makeOverridable self.buildNodePackage {
+    name = "sha-1.2.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/sha/-/sha-1.2.4.tgz";
+        name = "sha-1.2.4.tgz";
+        sha1 = "1f9a377f27b6fdee409b9b858e43da702be48a4d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."sha" or []);
+    deps = {
+      "graceful-fs-3.0.4" = self.by-version."graceful-fs"."3.0.4";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "sha" ];
   };
   by-spec."sha"."~1.3.0" =
     self.by-version."sha"."1.3.0";
@@ -20415,6 +23756,8 @@
     passthru.names = [ "shelljs" ];
   };
   "shelljs" = self.by-version."shelljs"."0.3.0";
+  by-spec."shelljs"."0.3.0" =
+    self.by-version."shelljs"."0.3.0";
   by-spec."shelljs"."0.3.x" =
     self.by-version."shelljs"."0.3.0";
   by-spec."should"."*" =
@@ -20546,28 +23889,28 @@
     passthru.names = [ "simplesmtp" ];
   };
   by-spec."sinon"."*" =
-    self.by-version."sinon"."1.10.3";
-  by-version."sinon"."1.10.3" = lib.makeOverridable self.buildNodePackage {
-    name = "sinon-1.10.3";
+    self.by-version."sinon"."1.11.1";
+  by-version."sinon"."1.11.1" = lib.makeOverridable self.buildNodePackage {
+    name = "sinon-1.11.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/sinon/-/sinon-1.10.3.tgz";
-        name = "sinon-1.10.3.tgz";
-        sha1 = "c063e0e99d8327dc199113aab52eb83a2e9e3c2c";
+        url = "http://registry.npmjs.org/sinon/-/sinon-1.11.1.tgz";
+        name = "sinon-1.11.1.tgz";
+        sha1 = "4ed65dc3bb49715d4a72e93d85c416437b8866ca";
       })
     ];
     buildInputs =
       (self.nativeDeps."sinon" or []);
     deps = {
-      "formatio-1.0.2" = self.by-version."formatio"."1.0.2";
+      "formatio-1.1.1" = self.by-version."formatio"."1.1.1";
       "util-0.10.3" = self.by-version."util"."0.10.3";
     };
     peerDependencies = [
     ];
     passthru.names = [ "sinon" ];
   };
-  "sinon" = self.by-version."sinon"."1.10.3";
+  "sinon" = self.by-version."sinon"."1.11.1";
   by-spec."slasp"."*" =
     self.by-version."slasp"."0.0.4";
   by-version."slasp"."0.0.4" = lib.makeOverridable self.buildNodePackage {
@@ -20675,8 +24018,37 @@
     self.by-version."slide"."1.1.6";
   by-spec."slide"."~1.1.3" =
     self.by-version."slide"."1.1.6";
+  by-spec."slide"."~1.1.4" =
+    self.by-version."slide"."1.1.6";
+  by-spec."slide"."~1.1.5" =
+    self.by-version."slide"."1.1.6";
   by-spec."slide"."~1.1.6" =
     self.by-version."slide"."1.1.6";
+  by-spec."sloc"."*" =
+    self.by-version."sloc"."0.1.7";
+  by-version."sloc"."0.1.7" = lib.makeOverridable self.buildNodePackage {
+    name = "sloc-0.1.7";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/sloc/-/sloc-0.1.7.tgz";
+        name = "sloc-0.1.7.tgz";
+        sha1 = "57dee8c946d54cea5188b70cd6549a22e0615679";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."sloc" or []);
+    deps = {
+      "commander-2.3.0" = self.by-version."commander"."2.3.0";
+      "async-0.9.0" = self.by-version."async"."0.9.0";
+      "cli-table-0.3.1" = self.by-version."cli-table"."0.3.1";
+      "readdirp-1.1.0" = self.by-version."readdirp"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "sloc" ];
+  };
+  "sloc" = self.by-version."sloc"."0.1.7";
   by-spec."smartdc"."*" =
     self.by-version."smartdc"."7.3.0";
   by-version."smartdc"."7.3.0" = lib.makeOverridable self.buildNodePackage {
@@ -20874,28 +24246,28 @@
     passthru.names = [ "socket.io-client" ];
   };
   by-spec."sockjs"."*" =
-    self.by-version."sockjs"."0.3.9";
-  by-version."sockjs"."0.3.9" = lib.makeOverridable self.buildNodePackage {
-    name = "sockjs-0.3.9";
+    self.by-version."sockjs"."0.3.10";
+  by-version."sockjs"."0.3.10" = lib.makeOverridable self.buildNodePackage {
+    name = "sockjs-0.3.10";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/sockjs/-/sockjs-0.3.9.tgz";
-        name = "sockjs-0.3.9.tgz";
-        sha1 = "5ae2c732dac07f6d7e9e8a9a60ec86ec4fc3ffc7";
+        url = "http://registry.npmjs.org/sockjs/-/sockjs-0.3.10.tgz";
+        name = "sockjs-0.3.10.tgz";
+        sha1 = "3910afb2ae8adc82591f2288456319cdf4727e7e";
       })
     ];
     buildInputs =
       (self.nativeDeps."sockjs" or []);
     deps = {
-      "node-uuid-1.3.3" = self.by-version."node-uuid"."1.3.3";
-      "faye-websocket-0.7.2" = self.by-version."faye-websocket"."0.7.2";
+      "faye-websocket-0.7.3" = self.by-version."faye-websocket"."0.7.3";
+      "node-uuid-1.4.1" = self.by-version."node-uuid"."1.4.1";
     };
     peerDependencies = [
     ];
     passthru.names = [ "sockjs" ];
   };
-  "sockjs" = self.by-version."sockjs"."0.3.9";
+  "sockjs" = self.by-version."sockjs"."0.3.10";
   by-spec."sorted-object"."~1.0.0" =
     self.by-version."sorted-object"."1.0.0";
   by-version."sorted-object"."1.0.0" = lib.makeOverridable self.buildNodePackage {
@@ -21250,6 +24622,49 @@
     ];
     passthru.names = [ "stream-browserify" ];
   };
+  by-spec."stream-browserify"."~0.1.0" =
+    self.by-version."stream-browserify"."0.1.3";
+  by-version."stream-browserify"."0.1.3" = lib.makeOverridable self.buildNodePackage {
+    name = "stream-browserify-0.1.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/stream-browserify/-/stream-browserify-0.1.3.tgz";
+        name = "stream-browserify-0.1.3.tgz";
+        sha1 = "95cf1b369772e27adaf46352265152689c6c4be9";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."stream-browserify" or []);
+    deps = {
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+      "process-0.5.2" = self.by-version."process"."0.5.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "stream-browserify" ];
+  };
+  by-spec."stream-combiner"."~0.0.2" =
+    self.by-version."stream-combiner"."0.0.4";
+  by-version."stream-combiner"."0.0.4" = lib.makeOverridable self.buildNodePackage {
+    name = "stream-combiner-0.0.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz";
+        name = "stream-combiner-0.0.4.tgz";
+        sha1 = "4d5e433c185261dde623ca3f44c586bcf5c4ad14";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."stream-combiner" or []);
+    deps = {
+      "duplexer-0.1.1" = self.by-version."duplexer"."0.1.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "stream-combiner" ];
+  };
   by-spec."stream-combiner2"."~1.0.0" =
     self.by-version."stream-combiner2"."1.0.2";
   by-version."stream-combiner2"."1.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -21422,6 +24837,26 @@
     ];
     passthru.names = [ "string-length" ];
   };
+  by-spec."string_decoder"."~0.0.0" =
+    self.by-version."string_decoder"."0.0.1";
+  by-version."string_decoder"."0.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "string_decoder-0.0.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/string_decoder/-/string_decoder-0.0.1.tgz";
+        name = "string_decoder-0.0.1.tgz";
+        sha1 = "f5472d0a8d1650ec823752d24e6fd627b39bf141";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."string_decoder" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "string_decoder" ];
+  };
   by-spec."string_decoder"."~0.10.0" =
     self.by-version."string_decoder"."0.10.31";
   by-version."string_decoder"."0.10.31" = lib.makeOverridable self.buildNodePackage {
@@ -21702,6 +25137,31 @@
     ];
     passthru.names = [ "stylus" ];
   };
+  by-spec."stylus"."0.45.x" =
+    self.by-version."stylus"."0.45.1";
+  by-version."stylus"."0.45.1" = lib.makeOverridable self.buildNodePackage {
+    name = "stylus-0.45.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/stylus/-/stylus-0.45.1.tgz";
+        name = "stylus-0.45.1.tgz";
+        sha1 = "ef69f62c984a480adc0c9d4aaafb2382a389e453";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."stylus" or []);
+    deps = {
+      "css-parse-1.7.0" = self.by-version."css-parse"."1.7.0";
+      "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
+      "debug-2.1.0" = self.by-version."debug"."2.1.0";
+      "sax-0.5.8" = self.by-version."sax"."0.5.8";
+      "glob-3.2.11" = self.by-version."glob"."3.2.11";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "stylus" ];
+  };
   by-spec."subarg"."0.0.1" =
     self.by-version."subarg"."0.0.1";
   by-version."subarg"."0.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -21940,6 +25400,50 @@
     ];
     passthru.names = [ "syntax-error" ];
   };
+  by-spec."syntax-error"."~0.0.0" =
+    self.by-version."syntax-error"."0.0.1";
+  by-version."syntax-error"."0.0.1" = lib.makeOverridable self.buildNodePackage {
+    name = "syntax-error-0.0.1";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/syntax-error/-/syntax-error-0.0.1.tgz";
+        name = "syntax-error-0.0.1.tgz";
+        sha1 = "019d075348cd8c5b79f0603c73e53891a7c5235d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."syntax-error" or []);
+    deps = {
+      "esprima-0.9.9" = self.by-version."esprima"."0.9.9";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "syntax-error" ];
+  };
+  by-spec."syntax-error"."~0.1.0" =
+    self.by-version."syntax-error"."0.1.0";
+  by-version."syntax-error"."0.1.0" = lib.makeOverridable self.buildNodePackage {
+    name = "syntax-error-0.1.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/syntax-error/-/syntax-error-0.1.0.tgz";
+        name = "syntax-error-0.1.0.tgz";
+        sha1 = "8cb515e730fe4f19d3a887035f8630e6494aac65";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."syntax-error" or []);
+    deps = {
+      "esprima-six-0.0.3" = self.by-version."esprima-six"."0.0.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "syntax-error" ];
+  };
+  by-spec."syntax-error"."~1.1.0" =
+    self.by-version."syntax-error"."1.1.1";
   by-spec."tabtab"."git+https://github.com/mixu/node-tabtab.git" =
     self.by-version."tabtab"."0.0.2";
   by-version."tabtab"."0.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -21984,15 +25488,15 @@
     passthru.names = [ "tape" ];
   };
   by-spec."tar"."*" =
-    self.by-version."tar"."1.0.1";
-  by-version."tar"."1.0.1" = lib.makeOverridable self.buildNodePackage {
-    name = "tar-1.0.1";
+    self.by-version."tar"."1.0.2";
+  by-version."tar"."1.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "tar-1.0.2";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/tar/-/tar-1.0.1.tgz";
-        name = "tar-1.0.1.tgz";
-        sha1 = "6075b5a1f236defe0c7e3756d3d9b3ebdad0f19a";
+        url = "http://registry.npmjs.org/tar/-/tar-1.0.2.tgz";
+        name = "tar-1.0.2.tgz";
+        sha1 = "8b0f6740f9946259de26a3ed9c9a22890dff023f";
       })
     ];
     buildInputs =
@@ -22006,7 +25510,30 @@
     ];
     passthru.names = [ "tar" ];
   };
-  "tar" = self.by-version."tar"."1.0.1";
+  "tar" = self.by-version."tar"."1.0.2";
+  by-spec."tar"."0" =
+    self.by-version."tar"."0.1.20";
+  by-version."tar"."0.1.20" = lib.makeOverridable self.buildNodePackage {
+    name = "tar-0.1.20";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/tar/-/tar-0.1.20.tgz";
+        name = "tar-0.1.20.tgz";
+        sha1 = "42940bae5b5f22c74483699126f9f3f27449cb13";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."tar" or []);
+    deps = {
+      "block-stream-0.0.7" = self.by-version."block-stream"."0.0.7";
+      "fstream-0.1.31" = self.by-version."fstream"."0.1.31";
+      "inherits-2.0.1" = self.by-version."inherits"."2.0.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "tar" ];
+  };
   by-spec."tar"."0.1.17" =
     self.by-version."tar"."0.1.17";
   by-version."tar"."0.1.17" = lib.makeOverridable self.buildNodePackage {
@@ -22030,10 +25557,16 @@
     ];
     passthru.names = [ "tar" ];
   };
+  by-spec."tar"."0.1.20" =
+    self.by-version."tar"."0.1.20";
   by-spec."tar"."^1.0.0" =
-    self.by-version."tar"."1.0.1";
-  by-spec."tar"."~1.0.1" =
-    self.by-version."tar"."1.0.1";
+    self.by-version."tar"."1.0.2";
+  by-spec."tar"."~0.1.17" =
+    self.by-version."tar"."0.1.20";
+  by-spec."tar"."~0.1.19" =
+    self.by-version."tar"."0.1.20";
+  by-spec."tar"."~1.0.2" =
+    self.by-version."tar"."1.0.2";
   by-spec."tar-fs"."0.5.2" =
     self.by-version."tar-fs"."0.5.2";
   by-version."tar-fs"."0.5.2" = lib.makeOverridable self.buildNodePackage {
@@ -22081,8 +25614,30 @@
     ];
     passthru.names = [ "tar-stream" ];
   };
-  by-spec."tar-stream"."~0.4.0" =
-    self.by-version."tar-stream"."0.4.7";
+  by-spec."tar-stream"."~1.0.0" =
+    self.by-version."tar-stream"."1.0.2";
+  by-version."tar-stream"."1.0.2" = lib.makeOverridable self.buildNodePackage {
+    name = "tar-stream-1.0.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/tar-stream/-/tar-stream-1.0.2.tgz";
+        name = "tar-stream-1.0.2.tgz";
+        sha1 = "fd19b4a17900fa704f6a133e3045aead0562ab95";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."tar-stream" or []);
+    deps = {
+      "bl-0.9.3" = self.by-version."bl"."0.9.3";
+      "end-of-stream-1.1.0" = self.by-version."end-of-stream"."1.1.0";
+      "readable-stream-1.1.13" = self.by-version."readable-stream"."1.1.13";
+      "xtend-4.0.0" = self.by-version."xtend"."4.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "tar-stream" ];
+  };
   by-spec."temp"."*" =
     self.by-version."temp"."0.8.1";
   by-version."temp"."0.8.1" = lib.makeOverridable self.buildNodePackage {
@@ -22171,6 +25726,26 @@
     ];
     passthru.names = [ "throttleit" ];
   };
+  by-spec."through"."2.3.4" =
+    self.by-version."through"."2.3.4";
+  by-version."through"."2.3.4" = lib.makeOverridable self.buildNodePackage {
+    name = "through-2.3.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/through/-/through-2.3.4.tgz";
+        name = "through-2.3.4.tgz";
+        sha1 = "495e40e8d8a8eaebc7c275ea88c2b8fc14c56455";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."through" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "through" ];
+  };
   by-spec."through".">=2.2.7 <3" =
     self.by-version."through"."2.3.6";
   by-version."through"."2.3.6" = lib.makeOverridable self.buildNodePackage {
@@ -22191,6 +25766,28 @@
     ];
     passthru.names = [ "through" ];
   };
+  by-spec."through"."~2.2.0" =
+    self.by-version."through"."2.2.7";
+  by-version."through"."2.2.7" = lib.makeOverridable self.buildNodePackage {
+    name = "through-2.2.7";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/through/-/through-2.2.7.tgz";
+        name = "through-2.2.7.tgz";
+        sha1 = "6e8e21200191d4eb6a99f6f010df46aa1c6eb2bd";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."through" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "through" ];
+  };
+  by-spec."through"."~2.2.7" =
+    self.by-version."through"."2.2.7";
   by-spec."through"."~2.3.4" =
     self.by-version."through"."2.3.6";
   by-spec."through2"."^0.5.1" =
@@ -22208,7 +25805,7 @@
     buildInputs =
       (self.nativeDeps."through2" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "xtend-3.0.0" = self.by-version."xtend"."3.0.0";
     };
     peerDependencies = [
@@ -22230,7 +25827,7 @@
     buildInputs =
       (self.nativeDeps."through2" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "xtend-4.0.0" = self.by-version."xtend"."4.0.0";
     };
     peerDependencies = [
@@ -22274,7 +25871,7 @@
     buildInputs =
       (self.nativeDeps."through2" or []);
     deps = {
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
       "xtend-2.1.2" = self.by-version."xtend"."2.1.2";
     };
     peerDependencies = [
@@ -22325,6 +25922,27 @@
     ];
     passthru.names = [ "timers-browserify" ];
   };
+  by-spec."timers-browserify"."~1.0.1" =
+    self.by-version."timers-browserify"."1.0.3";
+  by-version."timers-browserify"."1.0.3" = lib.makeOverridable self.buildNodePackage {
+    name = "timers-browserify-1.0.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/timers-browserify/-/timers-browserify-1.0.3.tgz";
+        name = "timers-browserify-1.0.3.tgz";
+        sha1 = "ffba70c9c12eed916fd67318e629ac6f32295551";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."timers-browserify" or []);
+    deps = {
+      "process-0.5.2" = self.by-version."process"."0.5.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "timers-browserify" ];
+  };
   by-spec."timers-ext"."0.1" =
     self.by-version."timers-ext"."0.1.0";
   by-version."timers-ext"."0.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -22370,15 +25988,15 @@
     passthru.names = [ "timespan" ];
   };
   by-spec."timezone"."*" =
-    self.by-version."timezone"."0.0.34";
-  by-version."timezone"."0.0.34" = lib.makeOverridable self.buildNodePackage {
-    name = "timezone-0.0.34";
+    self.by-version."timezone"."0.0.37";
+  by-version."timezone"."0.0.37" = lib.makeOverridable self.buildNodePackage {
+    name = "timezone-0.0.37";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/timezone/-/timezone-0.0.34.tgz";
-        name = "timezone-0.0.34.tgz";
-        sha1 = "be56c3259448897b7e2eab6e2aeac46d5ab718d4";
+        url = "http://registry.npmjs.org/timezone/-/timezone-0.0.37.tgz";
+        name = "timezone-0.0.37.tgz";
+        sha1 = "bafa54bcd2de7e0f5f9c1fa4e1c93c3662572928";
       })
     ];
     buildInputs =
@@ -22389,7 +26007,7 @@
     ];
     passthru.names = [ "timezone" ];
   };
-  "timezone" = self.by-version."timezone"."0.0.34";
+  "timezone" = self.by-version."timezone"."0.0.37";
   by-spec."tinycolor"."0.x" =
     self.by-version."tinycolor"."0.0.1";
   by-version."tinycolor"."0.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -22446,6 +26064,30 @@
     passthru.names = [ "titanium" ];
   };
   "titanium" = self.by-version."titanium"."3.4.0";
+  by-spec."tls-connect"."^0.2.2" =
+    self.by-version."tls-connect"."0.2.2";
+  by-version."tls-connect"."0.2.2" = lib.makeOverridable self.buildNodePackage {
+    name = "tls-connect-0.2.2";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/tls-connect/-/tls-connect-0.2.2.tgz";
+        name = "tls-connect-0.2.2.tgz";
+        sha1 = "1d88d4f4cb829a0741b6acd05d1df73e0d566fd0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."tls-connect" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "tls-connect" ];
+  };
+  by-spec."tls-connect"."~0.2.0" =
+    self.by-version."tls-connect"."0.2.2";
+  by-spec."tls-connect"."~0.x" =
+    self.by-version."tls-connect"."0.2.2";
   by-spec."tmp"."0.0.23" =
     self.by-version."tmp"."0.0.23";
   by-version."tmp"."0.0.23" = lib.makeOverridable self.buildNodePackage {
@@ -22488,6 +26130,30 @@
   };
   by-spec."tmp"."~0.0.20" =
     self.by-version."tmp"."0.0.24";
+  by-spec."toobusy"."*" =
+    self.by-version."toobusy"."0.2.4";
+  by-version."toobusy"."0.2.4" = lib.makeOverridable self.buildNodePackage {
+    name = "toobusy-0.2.4";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/toobusy/-/toobusy-0.2.4.tgz";
+        name = "toobusy-0.2.4.tgz";
+        sha1 = "d97a3ee760b2462388e15f8526579b4b64bb193d";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."toobusy" or []);
+    deps = {
+      "bindings-1.1.0" = self.by-version."bindings"."1.1.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "toobusy" ];
+  };
+  "toobusy" = self.by-version."toobusy"."0.2.4";
+  by-spec."toobusy"."~0.2.4" =
+    self.by-version."toobusy"."0.2.4";
   by-spec."touch"."0.0.2" =
     self.by-version."touch"."0.0.2";
   by-version."touch"."0.0.2" = lib.makeOverridable self.buildNodePackage {
@@ -22532,6 +26198,27 @@
   };
   by-spec."tough-cookie"."^0.12.1" =
     self.by-version."tough-cookie"."0.12.1";
+  by-spec."tough-cookie"."~0.9.15" =
+    self.by-version."tough-cookie"."0.9.15";
+  by-version."tough-cookie"."0.9.15" = lib.makeOverridable self.buildNodePackage {
+    name = "tough-cookie-0.9.15";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/tough-cookie/-/tough-cookie-0.9.15.tgz";
+        name = "tough-cookie-0.9.15.tgz";
+        sha1 = "75617ac347e3659052b0350131885829677399f6";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."tough-cookie" or []);
+    deps = {
+      "punycode-1.3.2" = self.by-version."punycode"."1.3.2";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "tough-cookie" ];
+  };
   by-spec."traceur"."0.0.55" =
     self.by-version."traceur"."0.0.55";
   by-version."traceur"."0.0.55" = lib.makeOverridable self.buildNodePackage {
@@ -22547,7 +26234,7 @@
     buildInputs =
       (self.nativeDeps."traceur" or []);
     deps = {
-      "commander-2.4.0" = self.by-version."commander"."2.4.0";
+      "commander-2.5.0" = self.by-version."commander"."2.5.0";
       "glob-4.0.6" = self.by-version."glob"."4.0.6";
       "semver-2.3.2" = self.by-version."semver"."2.3.2";
     };
@@ -22761,7 +26448,7 @@
     ];
     passthru.names = [ "type-is" ];
   };
-  by-spec."type-is"."~1.5.1" =
+  by-spec."type-is"."~1.5.2" =
     self.by-version."type-is"."1.5.2";
   by-version."type-is"."1.5.2" = lib.makeOverridable self.buildNodePackage {
     name = "type-is-1.5.2";
@@ -22783,8 +26470,6 @@
     ];
     passthru.names = [ "type-is" ];
   };
-  by-spec."type-is"."~1.5.2" =
-    self.by-version."type-is"."1.5.2";
   by-spec."typechecker"."~2.0.1" =
     self.by-version."typechecker"."2.0.8";
   by-version."typechecker"."2.0.8" = lib.makeOverridable self.buildNodePackage {
@@ -22915,6 +26600,8 @@
     ];
     passthru.names = [ "uglify-js" ];
   };
+  by-spec."uglify-js"."2.4.15" =
+    self.by-version."uglify-js"."2.4.15";
   by-spec."uglify-js"."^2.4.0" =
     self.by-version."uglify-js"."2.4.15";
   by-spec."uglify-js"."~2.2" =
@@ -22990,7 +26677,7 @@
     ];
     passthru.names = [ "uglify-to-browserify" ];
   };
-  by-spec."uid-number"."0.0.5" =
+  by-spec."uid-number"."0" =
     self.by-version."uid-number"."0.0.5";
   by-version."uid-number"."0.0.5" = lib.makeOverridable self.buildNodePackage {
     name = "uid-number-0.0.5";
@@ -23010,6 +26697,8 @@
     ];
     passthru.names = [ "uid-number" ];
   };
+  by-spec."uid-number"."0.0.5" =
+    self.by-version."uid-number"."0.0.5";
   by-spec."uid-safe"."1.0.1" =
     self.by-version."uid-safe"."1.0.1";
   by-version."uid-safe"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -23078,6 +26767,30 @@
     ];
     passthru.names = [ "umd" ];
   };
+  by-spec."umd"."~2.0.0" =
+    self.by-version."umd"."2.0.0";
+  by-version."umd"."2.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "umd-2.0.0";
+    bin = true;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/umd/-/umd-2.0.0.tgz";
+        name = "umd-2.0.0.tgz";
+        sha1 = "749683b0d514728ae0e1b6195f5774afc0ad4f8f";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."umd" or []);
+    deps = {
+      "rfile-1.0.0" = self.by-version."rfile"."1.0.0";
+      "ruglify-1.0.0" = self.by-version."ruglify"."1.0.0";
+      "through-2.3.6" = self.by-version."through"."2.3.6";
+      "uglify-js-2.4.15" = self.by-version."uglify-js"."2.4.15";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "umd" ];
+  };
   by-spec."umd"."~2.1.0" =
     self.by-version."umd"."2.1.0";
   by-spec."underscore"."*" =
@@ -23101,16 +26814,16 @@
     passthru.names = [ "underscore" ];
   };
   "underscore" = self.by-version."underscore"."1.7.0";
-  by-spec."underscore"."1.6.x" =
-    self.by-version."underscore"."1.6.0";
-  by-version."underscore"."1.6.0" = lib.makeOverridable self.buildNodePackage {
-    name = "underscore-1.6.0";
+  by-spec."underscore"."1.2.1" =
+    self.by-version."underscore"."1.2.1";
+  by-version."underscore"."1.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "underscore-1.2.1";
     bin = false;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz";
-        name = "underscore-1.6.0.tgz";
-        sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+        url = "http://registry.npmjs.org/underscore/-/underscore-1.2.1.tgz";
+        name = "underscore-1.2.1.tgz";
+        sha1 = "fc5c6b0765673d92a2d4ac8b4dc0aa88702e2bd4";
       })
     ];
     buildInputs =
@@ -23121,13 +26834,7 @@
     ];
     passthru.names = [ "underscore" ];
   };
-  by-spec."underscore".">=1.1.7" =
-    self.by-version."underscore"."1.7.0";
-  by-spec."underscore".">=1.3.1" =
-    self.by-version."underscore"."1.7.0";
-  by-spec."underscore".">=1.5.0" =
-    self.by-version."underscore"."1.7.0";
-  by-spec."underscore"."~1.4.3" =
+  by-spec."underscore"."1.4.4" =
     self.by-version."underscore"."1.4.4";
   by-version."underscore"."1.4.4" = lib.makeOverridable self.buildNodePackage {
     name = "underscore-1.4.4";
@@ -23147,6 +26854,34 @@
     ];
     passthru.names = [ "underscore" ];
   };
+  by-spec."underscore"."1.6.x" =
+    self.by-version."underscore"."1.6.0";
+  by-version."underscore"."1.6.0" = lib.makeOverridable self.buildNodePackage {
+    name = "underscore-1.6.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz";
+        name = "underscore-1.6.0.tgz";
+        sha1 = "8b38b10cacdef63337b8b24e4ff86d45aea529a8";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."underscore" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "underscore" ];
+  };
+  by-spec."underscore".">=1.1.7" =
+    self.by-version."underscore"."1.7.0";
+  by-spec."underscore".">=1.3.1" =
+    self.by-version."underscore"."1.7.0";
+  by-spec."underscore".">=1.5.0" =
+    self.by-version."underscore"."1.7.0";
+  by-spec."underscore"."~1.4.3" =
+    self.by-version."underscore"."1.4.4";
   by-spec."underscore"."~1.4.4" =
     self.by-version."underscore"."1.4.4";
   by-spec."underscore"."~1.5.2" =
@@ -23256,7 +26991,7 @@
       "socket.io-0.9.17" = self.by-version."socket.io"."0.9.17";
       "moment-2.8.3" = self.by-version."moment"."2.8.3";
       "async-0.9.0" = self.by-version."async"."0.9.0";
-      "rc-0.5.1" = self.by-version."rc"."0.5.1";
+      "rc-0.5.3" = self.by-version."rc"."0.5.3";
       "uuid-1.4.1" = self.by-version."uuid"."1.4.1";
       "winston-0.7.3" = self.by-version."winston"."0.7.3";
       "passport-0.2.1" = self.by-version."passport"."0.2.1";
@@ -23308,6 +27043,26 @@
     ];
     passthru.names = [ "unique-stream" ];
   };
+  by-spec."unorm"."1.3.3" =
+    self.by-version."unorm"."1.3.3";
+  by-version."unorm"."1.3.3" = lib.makeOverridable self.buildNodePackage {
+    name = "unorm-1.3.3";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/unorm/-/unorm-1.3.3.tgz";
+        name = "unorm-1.3.3.tgz";
+        sha1 = "16a8772671ebd6f7cde6f8c5e49bb60ac47dba93";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."unorm" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "unorm" ];
+  };
   by-spec."update-notifier"."0.2.0" =
     self.by-version."update-notifier"."0.2.0";
   by-version."update-notifier"."0.2.0" = lib.makeOverridable self.buildNodePackage {
@@ -23350,7 +27105,7 @@
     deps = {
       "chalk-0.4.0" = self.by-version."chalk"."0.4.0";
       "configstore-0.3.1" = self.by-version."configstore"."0.3.1";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.47.0" = self.by-version."request"."2.47.0";
       "semver-2.3.2" = self.by-version."semver"."2.3.2";
     };
     peerDependencies = [
@@ -23398,6 +27153,28 @@
     ];
     passthru.names = [ "url" ];
   };
+  by-spec."url"."~0.7.9" =
+    self.by-version."url"."0.7.9";
+  by-version."url"."0.7.9" = lib.makeOverridable self.buildNodePackage {
+    name = "url-0.7.9";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/url/-/url-0.7.9.tgz";
+        name = "url-0.7.9.tgz";
+        sha1 = "1959b1a8b361fc017b59513a7c7fa9827f5e4ed0";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."url" or []);
+    deps = {
+      "querystring-0.1.0" = self.by-version."querystring"."0.1.0";
+      "punycode-1.0.0" = self.by-version."punycode"."1.0.0";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "url" ];
+  };
   by-spec."user-home"."^1.0.0" =
     self.by-version."user-home"."1.1.0";
   by-version."user-home"."1.1.0" = lib.makeOverridable self.buildNodePackage {
@@ -23485,6 +27262,26 @@
     self.by-version."util"."0.10.3";
   by-spec."util"."~0.10.1" =
     self.by-version."util"."0.10.3";
+  by-spec."util-deprecate"."1.0.0" =
+    self.by-version."util-deprecate"."1.0.0";
+  by-version."util-deprecate"."1.0.0" = lib.makeOverridable self.buildNodePackage {
+    name = "util-deprecate-1.0.0";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.0.tgz";
+        name = "util-deprecate-1.0.0.tgz";
+        sha1 = "3007af012c140eae26de05576ec22785cac3abf2";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."util-deprecate" or []);
+    deps = {
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "util-deprecate" ];
+  };
   by-spec."util-extend"."^1.0.1" =
     self.by-version."util-extend"."1.0.1";
   by-version."util-extend"."1.0.1" = lib.makeOverridable self.buildNodePackage {
@@ -24110,25 +27907,25 @@
     passthru.names = [ "wcwidth" ];
   };
   by-spec."wd"."~0.3.4" =
-    self.by-version."wd"."0.3.9";
-  by-version."wd"."0.3.9" = lib.makeOverridable self.buildNodePackage {
-    name = "wd-0.3.9";
+    self.by-version."wd"."0.3.10";
+  by-version."wd"."0.3.10" = lib.makeOverridable self.buildNodePackage {
+    name = "wd-0.3.10";
     bin = true;
     src = [
       (fetchurl {
-        url = "http://registry.npmjs.org/wd/-/wd-0.3.9.tgz";
-        name = "wd-0.3.9.tgz";
-        sha1 = "857130517e5976203653dd325edc4bdc2dbd946f";
+        url = "http://registry.npmjs.org/wd/-/wd-0.3.10.tgz";
+        name = "wd-0.3.10.tgz";
+        sha1 = "ce5cfa220081fe3eb5e89cf3022ec7e28d4e2f95";
       })
     ];
     buildInputs =
       (self.nativeDeps."wd" or []);
     deps = {
-      "archiver-0.11.0" = self.by-version."archiver"."0.11.0";
+      "archiver-0.12.0" = self.by-version."archiver"."0.12.0";
       "async-0.9.0" = self.by-version."async"."0.9.0";
       "lodash-2.4.1" = self.by-version."lodash"."2.4.1";
       "q-1.0.1" = self.by-version."q"."1.0.1";
-      "request-2.45.0" = self.by-version."request"."2.45.0";
+      "request-2.46.0" = self.by-version."request"."2.46.0";
       "underscore.string-2.3.3" = self.by-version."underscore.string"."2.3.3";
       "vargs-0.1.0" = self.by-version."vargs"."0.1.0";
     };
@@ -24175,7 +27972,7 @@
       "kew-0.1.7" = self.by-version."kew"."0.1.7";
       "mkdirp-0.3.5" = self.by-version."mkdirp"."0.3.5";
       "npmconf-0.1.16" = self.by-version."npmconf"."0.1.16";
-      "phantomjs-1.9.11" = self.by-version."phantomjs"."1.9.11";
+      "phantomjs-1.9.12" = self.by-version."phantomjs"."1.9.12";
       "tmp-0.0.24" = self.by-version."tmp"."0.0.24";
       "follow-redirects-0.0.3" = self.by-version."follow-redirects"."0.0.3";
     };
@@ -24184,7 +27981,7 @@
     passthru.names = [ "webdrvr" ];
   };
   "webdrvr" = self.by-version."webdrvr"."2.43.0-0";
-  by-spec."websocket-driver".">=0.3.1" =
+  by-spec."websocket-driver".">=0.3.6" =
     self.by-version."websocket-driver"."0.3.6";
   by-version."websocket-driver"."0.3.6" = lib.makeOverridable self.buildNodePackage {
     name = "websocket-driver-0.3.6";
@@ -24204,8 +28001,6 @@
     ];
     passthru.names = [ "websocket-driver" ];
   };
-  by-spec."websocket-driver".">=0.3.6" =
-    self.by-version."websocket-driver"."0.3.6";
   by-spec."when"."~3.4.6" =
     self.by-version."when"."3.4.6";
   by-version."when"."3.4.6" = lib.makeOverridable self.buildNodePackage {
@@ -24628,13 +28423,35 @@
     buildInputs =
       (self.nativeDeps."x509" or []);
     deps = {
-      "nan-1.3.0" = self.by-version."nan"."1.3.0";
+      "nan-1.4.0" = self.by-version."nan"."1.4.0";
     };
     peerDependencies = [
     ];
     passthru.names = [ "x509" ];
   };
   "x509" = self.by-version."x509"."0.1.4";
+  by-spec."xcode"."0.6.7" =
+    self.by-version."xcode"."0.6.7";
+  by-version."xcode"."0.6.7" = lib.makeOverridable self.buildNodePackage {
+    name = "xcode-0.6.7";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/xcode/-/xcode-0.6.7.tgz";
+        name = "xcode-0.6.7.tgz";
+        sha1 = "df11a8615e43dfa397cbf593b0fd14ebeadf4e7a";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."xcode" or []);
+    deps = {
+      "pegjs-0.6.2" = self.by-version."pegjs"."0.6.2";
+      "node-uuid-1.3.3" = self.by-version."node-uuid"."1.3.3";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "xcode" ];
+  };
   by-spec."xml2js"."0.2.4" =
     self.by-version."xml2js"."0.2.4";
   by-version."xml2js"."0.2.4" = lib.makeOverridable self.buildNodePackage {
@@ -24725,6 +28542,27 @@
     ];
     passthru.names = [ "xmlbuilder" ];
   };
+  by-spec."xmlbuilder"."2.2.1" =
+    self.by-version."xmlbuilder"."2.2.1";
+  by-version."xmlbuilder"."2.2.1" = lib.makeOverridable self.buildNodePackage {
+    name = "xmlbuilder-2.2.1";
+    bin = false;
+    src = [
+      (fetchurl {
+        url = "http://registry.npmjs.org/xmlbuilder/-/xmlbuilder-2.2.1.tgz";
+        name = "xmlbuilder-2.2.1.tgz";
+        sha1 = "9326430f130d87435d4c4086643aa2926e105a32";
+      })
+    ];
+    buildInputs =
+      (self.nativeDeps."xmlbuilder" or []);
+    deps = {
+      "lodash-node-2.4.1" = self.by-version."lodash-node"."2.4.1";
+    };
+    peerDependencies = [
+    ];
+    passthru.names = [ "xmlbuilder" ];
+  };
   by-spec."xmlbuilder".">=1.0.0" =
     self.by-version."xmlbuilder"."2.4.4";
   by-version."xmlbuilder"."2.4.4" = lib.makeOverridable self.buildNodePackage {
@@ -24746,7 +28584,7 @@
     ];
     passthru.names = [ "xmlbuilder" ];
   };
-  by-spec."xmldom"."~0.1.16" =
+  by-spec."xmldom"."0.1.x" =
     self.by-version."xmldom"."0.1.19";
   by-version."xmldom"."0.1.19" = lib.makeOverridable self.buildNodePackage {
     name = "xmldom-0.1.19";
@@ -24766,6 +28604,8 @@
     ];
     passthru.names = [ "xmldom" ];
   };
+  by-spec."xmldom"."~0.1.16" =
+    self.by-version."xmldom"."0.1.19";
   by-spec."xmlhttprequest"."1.4.2" =
     self.by-version."xmlhttprequest"."1.4.2";
   by-version."xmlhttprequest"."1.4.2" = lib.makeOverridable self.buildNodePackage {
@@ -24931,7 +28771,7 @@
     deps = {
       "compress-commons-0.1.6" = self.by-version."compress-commons"."0.1.6";
       "lodash-2.4.1" = self.by-version."lodash"."2.4.1";
-      "readable-stream-1.0.33-1" = self.by-version."readable-stream"."1.0.33-1";
+      "readable-stream-1.0.33" = self.by-version."readable-stream"."1.0.33";
     };
     peerDependencies = [
     ];
@@ -24958,4 +28798,6 @@
     ];
     passthru.names = [ "zlib-browserify" ];
   };
+  by-spec."zlib-browserify"."~0.0.3" =
+    self.by-version."zlib-browserify"."0.0.3";
 }
diff --git a/pkgs/top-level/node-packages.json b/pkgs/top-level/node-packages.json
index 500c3eb5ad65..20c3a6640472 100644
--- a/pkgs/top-level/node-packages.json
+++ b/pkgs/top-level/node-packages.json
@@ -63,6 +63,7 @@
 , "libyaml"
 , "i18next"
 , "stylus"
+, "nib"
 , "npm"
 , "gridfs-stream"
 , "tar"
@@ -128,4 +129,20 @@
 , "git-run"
 , "bower"
 , "bower2nix"
+, "npm-check-updates"
+, "node-stringprep"
+, "ltx"
+, "node-xmpp"
+, "node-xmpp-core"
+, "node-xmpp-client"
+, "node-xmpp-component"
+, "node-xmpp-server"
+, "node-xmpp-serviceadmin"
+, "node-xmpp-joap"
+, "plc"
+, "7f"
+, "jfs"
+, "toobusy"
+, "cordova"
+, "sloc"
 ]
diff --git a/pkgs/top-level/node-packages.nix b/pkgs/top-level/node-packages.nix
index 448904ce385a..892541550402 100644
--- a/pkgs/top-level/node-packages.nix
+++ b/pkgs/top-level/node-packages.nix
@@ -3,6 +3,7 @@
 rec {
   nativeDeps = {
     "node-expat" = [ pkgs.expat ];
+    "node-stringprep" = [ pkgs.icu pkgs.which ];
     "rbytes" = [ pkgs.openssl ];
     "phantomjs" = [ pkgs.phantomjs ];
     "node-protobuf" = [ pkgs.protobuf ];
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 7514243fa9dd..dc2b8f54361a 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -531,11 +531,11 @@ let
   });
 
   autopep8 = buildPythonPackage (rec {
-    name = "autopep8-1.0.3";
+    name = "autopep8-1.0.4";
 
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/a/autopep8/${name}.tar.gz";
-      md5 = "7c16d385cf9ad7c1d7fbcfcea2588a56";
+      sha256 = "17lydqm8y9a5qadp6iifxrb5mb0g9fr1vxn5qy1fjpyhazxaw8n1";
     };
 
     propagatedBuildInputs = with self; [ pep8 ];
@@ -1011,12 +1011,12 @@ let
   };
 
   botocore = buildPythonPackage rec {
-    version = "0.67.0";
+    version = "0.69.0";
     name = "botocore-${version}";
 
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/b/botocore/${name}.tar.gz";
-      md5 = "193fe828525af4ae58e04bd172dc355f";
+      md5 = "b71fe35ee01e636b54de28f1f875f084";
     };
 
     propagatedBuildInputs =
@@ -3862,6 +3862,25 @@ let
     };
   });
 
+  fonttools = buildPythonPackage (rec {
+    version = "2.4";
+    name = "fonttools-${version}";
+    disabled = isPy3k;
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/F/FontTools/FontTools-${version}.tar.gz";
+      sha256 = "13ggkzcj34kcca6bsxjkaqsxkp2bvxxf6ijiyhq1xlyb0z37z4qa";
+    };
+
+    buildInputs = with self; [
+      numpy
+    ];
+
+    meta = {
+      homepage = "http://sourceforge.net/projects/fonttools/";
+      description = "Font file processing tools";
+    };
+  });
 
   foolscap = buildPythonPackage (rec {
     name = "foolscap-0.6.4";
@@ -5939,11 +5958,11 @@ let
   };
 
   pandas = buildPythonPackage rec {
-    name = "pandas-0.14.0";
+    name = "pandas-0.15.0";
 
     src = pkgs.fetchurl {
       url = "https://pypi.python.org/packages/source/p/pandas/${name}.tar.gz";
-      sha256 = "f7997debca756c4dd5ccdf5a010dfe3d1c7dac98ee706b715d994cf7c9d35528";
+      sha256 = "1w3wjnn3v37hf3hrd24lfgk6vpykarv9mihhpcfq6y7rg586bgjk";
     };
 
     buildInputs = with self; [ nose ];
@@ -8089,6 +8108,40 @@ let
     };
   };
 
+  squaremap = buildPythonPackage rec {
+    name = "squaremap-1.0.4";
+    disabled = isPy3k;
+
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/S/SquareMap/SquareMap-1.0.4.tar.gz";
+      md5 = "e36a453baddb97c19af6f79d5ba51f38";
+    };
+
+    meta = with stdenv.lib; {
+      description = "Hierarchic visualization control for wxPython";
+      homepage = https://launchpad.net/squaremap;
+      license = licenses.bsd3;
+    };
+  };
+
+  runsnakerun = buildPythonPackage rec {
+    name = "runsnakerun-2.0.4";
+
+  
+    src = pkgs.fetchurl {
+      url = "https://pypi.python.org/packages/source/R/RunSnakeRun/RunSnakeRun-2.0.4.tar.gz";
+      md5 = "3220b5b89994baee70b1c24d7e42a306";
+    };
+  
+    propagatedBuildInputs = [ self.squaremap self.wxPython28 ];
+  
+    meta = with stdenv.lib; {
+      description = "GUI Viewer for Python profiling runs";
+      homepage = http://www.vrplumber.com/programming/runsnakerun/;
+      license = licenses.bsd3;
+    };
+  };
+  
   rtslib_fb = buildPythonPackage rec {
     version = "2.1.fb43";
     name = "rtslib-fb-${version}";
diff --git a/pkgs/top-level/release.nix b/pkgs/top-level/release.nix
index b07efec5c674..a788427aa20c 100644
--- a/pkgs/top-level/release.nix
+++ b/pkgs/top-level/release.nix
@@ -129,7 +129,6 @@ let
       inkscape = linux;
       irssi = linux;
       jfsutils = linux;
-      jfsrec = linux;
       jnettop = linux;
       jwhois = linux;
       kbd = linux;