summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--doc/languages-frameworks/python.md354
-rw-r--r--lib/maintainers.nix3
-rw-r--r--lib/minver.nix2
-rwxr-xr-xmaintainers/scripts/hydra-eval-failures.py27
-rw-r--r--nixos/modules/hardware/raid/hpsa.nix61
-rw-r--r--nixos/modules/module-list.nix3
-rw-r--r--nixos/modules/rename.nix3
-rw-r--r--nixos/modules/services/misc/airsonic.nix117
-rw-r--r--nixos/modules/services/networking/i2pd.nix198
-rw-r--r--nixos/modules/services/networking/lldpd.nix9
-rw-r--r--nixos/modules/services/security/usbguard.nix200
-rw-r--r--nixos/modules/virtualisation/libvirtd.nix2
-rw-r--r--pkgs/applications/audio/abcde/default.nix4
-rw-r--r--pkgs/applications/audio/clementine/default.nix18
-rw-r--r--pkgs/applications/audio/drumkv1/default.nix4
-rw-r--r--pkgs/applications/audio/google-play-music-desktop-player/default.nix4
-rw-r--r--pkgs/applications/audio/guitarix/default.nix4
-rw-r--r--pkgs/applications/audio/i-score/default.nix4
-rw-r--r--pkgs/applications/audio/padthv1/default.nix23
-rw-r--r--pkgs/applications/audio/projectm/default.nix8
-rw-r--r--pkgs/applications/audio/samplv1/default.nix4
-rw-r--r--pkgs/applications/audio/synthv1/default.nix4
-rw-r--r--pkgs/applications/audio/yoshimi/default.nix4
-rw-r--r--pkgs/applications/editors/android-studio/packages.nix6
-rw-r--r--pkgs/applications/editors/atom/default.nix4
-rw-r--r--pkgs/applications/editors/jetbrains/default.nix6
-rw-r--r--pkgs/applications/graphics/ImageMagick/7.0.nix1
-rw-r--r--pkgs/applications/graphics/ImageMagick/default.nix1
-rw-r--r--pkgs/applications/graphics/ao/default.nix1
-rw-r--r--pkgs/applications/graphics/draftsight/default.nix4
-rw-r--r--pkgs/applications/kde/akonadiconsole.nix4
-rw-r--r--pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch11
-rw-r--r--pkgs/applications/kde/grantleetheme/grantleetheme_check_null.patch25
-rw-r--r--pkgs/applications/kde/grantleetheme/series1
-rw-r--r--pkgs/applications/kde/k3b.nix8
-rw-r--r--pkgs/applications/kde/kdepim-runtime.nix3
-rw-r--r--pkgs/applications/kde/kmail.nix4
-rw-r--r--pkgs/applications/kde/kontact.nix4
-rw-r--r--pkgs/applications/kde/mailcommon.nix4
-rw-r--r--pkgs/applications/misc/et/default.nix30
-rw-r--r--pkgs/applications/misc/fbreader/default.nix4
-rw-r--r--pkgs/applications/misc/gqrx/default.nix18
-rw-r--r--pkgs/applications/misc/polybar/default.nix14
-rw-r--r--pkgs/applications/misc/postage/default.nix4
-rw-r--r--pkgs/applications/misc/sqlmap/default.nix19
-rw-r--r--pkgs/applications/misc/styx/default.nix47
-rw-r--r--pkgs/applications/misc/styx/themes.nix104
-rw-r--r--pkgs/applications/misc/synergy/default.nix6
-rw-r--r--pkgs/applications/misc/taskwarrior/default.nix4
-rw-r--r--pkgs/applications/misc/xterm/default.nix6
-rw-r--r--pkgs/applications/networking/browsers/firefox-bin/release_sources.nix762
-rw-r--r--pkgs/applications/networking/browsers/firefox/packages.nix4
-rw-r--r--pkgs/applications/networking/cluster/minikube/default.nix4
-rw-r--r--pkgs/applications/networking/corebird/default.nix6
-rw-r--r--pkgs/applications/networking/ids/bro/default.nix11
-rw-r--r--pkgs/applications/networking/instant-messengers/discord/default.nix16
-rw-r--r--pkgs/applications/networking/instant-messengers/riot/riot-web.nix25
-rw-r--r--pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix15
-rw-r--r--pkgs/applications/networking/nextcloud-client/default.nix28
-rw-r--r--pkgs/applications/networking/p2p/frostwire/default.nix18
-rw-r--r--pkgs/applications/networking/remote/freerdp/default.nix6
-rw-r--r--pkgs/applications/office/zanshin/default.nix46
-rw-r--r--pkgs/applications/science/logic/lean2/default.nix2
-rw-r--r--pkgs/applications/science/logic/poly/default.nix4
-rw-r--r--pkgs/applications/science/logic/yices/default.nix8
-rw-r--r--pkgs/applications/version-management/bitkeeper/default.nix1
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-open/default.nix4
-rw-r--r--pkgs/applications/version-management/git-and-tools/git/default.nix8
-rw-r--r--pkgs/applications/version-management/pijul/default.nix10
-rw-r--r--pkgs/applications/video/mkvtoolnix/default.nix4
-rw-r--r--pkgs/applications/video/qarte/default.nix6
-rw-r--r--pkgs/applications/video/smplayer/default.nix4
-rw-r--r--pkgs/applications/virtualization/OVMF/default.nix2
-rw-r--r--pkgs/applications/virtualization/docker-distribution/default.nix4
-rw-r--r--pkgs/applications/window-managers/icewm/default.nix8
-rw-r--r--pkgs/data/fonts/iosevka/default.nix4
-rw-r--r--pkgs/data/misc/wireless-regdb/default.nix15
-rw-r--r--pkgs/desktops/enlightenment/default.nix3
-rw-r--r--pkgs/desktops/enlightenment/efl.nix15
-rw-r--r--pkgs/desktops/enlightenment/enlightenment.nix14
-rw-r--r--pkgs/desktops/enlightenment/ephoto.nix22
-rw-r--r--pkgs/desktops/enlightenment/rage.nix20
-rw-r--r--pkgs/desktops/enlightenment/terminology.nix19
-rw-r--r--pkgs/desktops/kde-4.14/kde-workspace.nix2
-rw-r--r--pkgs/desktops/maxx/default.nix4
-rw-r--r--pkgs/development/compilers/abcl/default.nix4
-rw-r--r--pkgs/development/compilers/edk2/default.nix11
-rw-r--r--pkgs/development/compilers/ghc/D2710.patch19
-rw-r--r--pkgs/development/compilers/ghc/D2711.patch22
-rw-r--r--pkgs/development/compilers/ghc/D2712.patch158
-rw-r--r--pkgs/development/compilers/ghc/D2713.patch17
-rw-r--r--pkgs/development/compilers/rdmd/default.nix28
-rw-r--r--pkgs/development/haskell-modules/configuration-hackage2nix.yaml81
-rw-r--r--pkgs/development/haskell-modules/hackage-packages.nix1791
-rw-r--r--pkgs/development/interpreters/racket/default.nix7
-rw-r--r--pkgs/development/libraries/SDL2_mixer/default.nix13
-rw-r--r--pkgs/development/libraries/SDL2_mixer/libmodplug.patch13
-rw-r--r--pkgs/development/libraries/audio/jamomacore/default.nix4
-rw-r--r--pkgs/development/libraries/dee/default.nix2
-rw-r--r--pkgs/development/libraries/gdal/default.nix2
-rw-r--r--pkgs/development/libraries/gdal/gdal-1_11.nix6
-rw-r--r--pkgs/development/libraries/gperftools/default.nix4
-rw-r--r--pkgs/development/libraries/languagemachines/frog.nix53
-rw-r--r--pkgs/development/libraries/languagemachines/frogdata.nix31
-rw-r--r--pkgs/development/libraries/languagemachines/libfolia.nix30
-rw-r--r--pkgs/development/libraries/languagemachines/mbt-add-libxml2-dep.patch13
-rw-r--r--pkgs/development/libraries/languagemachines/mbt.nix40
-rw-r--r--pkgs/development/libraries/languagemachines/packages.nix14
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frog.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frogdata.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-libfolia.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-mbt.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ticcutils.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timbl.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timblserver.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ucto.json5
-rw-r--r--pkgs/development/libraries/languagemachines/release-info/LanguageMachines-uctodata.json5
-rw-r--r--pkgs/development/libraries/languagemachines/test.nix25
-rw-r--r--pkgs/development/libraries/languagemachines/ticcutils.nix29
-rw-r--r--pkgs/development/libraries/languagemachines/timbl.nix36
-rw-r--r--pkgs/development/libraries/languagemachines/timblserver.nix37
-rw-r--r--pkgs/development/libraries/languagemachines/ucto.nix48
-rw-r--r--pkgs/development/libraries/languagemachines/uctodata.nix32
-rwxr-xr-xpkgs/development/libraries/languagemachines/update79
-rw-r--r--pkgs/development/libraries/libebml/default.nix6
-rw-r--r--pkgs/development/libraries/libgcrypt/default.nix11
-rw-r--r--pkgs/development/libraries/libhttpseverywhere/default.nix12
-rw-r--r--pkgs/development/libraries/libmusicbrainz/2.x.nix27
-rw-r--r--pkgs/development/libraries/libmusicbrainz/gcc-4.x.patch60
-rw-r--r--pkgs/development/libraries/libsigsegv/2.5.nix6
-rw-r--r--pkgs/development/libraries/libsigsegv/default.nix3
-rw-r--r--pkgs/development/libraries/libsigsegv/sigbus_fix.patch8
-rw-r--r--pkgs/development/libraries/libtunepimp/default.nix28
-rw-r--r--pkgs/development/libraries/libtunepimp/gcc-4.x.patch237
-rw-r--r--pkgs/development/libraries/log4cxx/default.nix14
-rw-r--r--pkgs/development/libraries/log4cxx/narrowing-fixes.patch117
-rw-r--r--pkgs/development/libraries/ppl/default.nix6
-rw-r--r--pkgs/development/libraries/ppl/ppl-cstddef.patch238
-rw-r--r--pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix4
-rw-r--r--pkgs/development/libraries/smpeg2/default.nix43
-rw-r--r--pkgs/development/libraries/smpeg2/gcc6.patch33
-rw-r--r--pkgs/development/libraries/smpeg2/sdl2.patch22
-rw-r--r--pkgs/development/libraries/vmime/default.nix27
-rw-r--r--pkgs/development/libraries/webkitgtk/2.4.nix6
-rw-r--r--pkgs/development/libraries/wolfssl/default.nix4
-rw-r--r--pkgs/development/libraries/xml-security-c/cxx11.patch11
-rw-r--r--pkgs/development/libraries/xml-security-c/default.nix17
-rw-r--r--pkgs/development/node-packages/composition-v4.nix2
-rw-r--r--pkgs/development/node-packages/composition-v6.nix2
-rw-r--r--pkgs/development/node-packages/node-packages-v4.nix198
-rw-r--r--pkgs/development/node-packages/node-packages-v6.json1
-rw-r--r--pkgs/development/node-packages/node-packages-v6.nix1738
-rw-r--r--pkgs/development/ocaml-modules/cohttp/default.nix19
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt-unix.nix19
-rw-r--r--pkgs/development/ocaml-modules/cohttp/lwt.nix16
-rw-r--r--pkgs/development/ocaml-modules/conduit/default.nix22
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt-unix.nix18
-rw-r--r--pkgs/development/ocaml-modules/conduit/lwt.nix16
-rw-r--r--pkgs/development/ocaml-modules/fileutils/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/git-http/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/git-unix/default.nix5
-rw-r--r--pkgs/development/ocaml-modules/git/default.nix4
-rw-r--r--pkgs/development/ocaml-modules/ojquery/default.nix6
-rw-r--r--pkgs/development/ocaml-modules/vg/default.nix5
-rw-r--r--pkgs/development/ocaml-modules/xtmpl/default.nix4
-rw-r--r--pkgs/development/pharo/launcher/default.nix19
-rw-r--r--pkgs/development/pharo/vm/build-vm-legacy.nix78
-rw-r--r--pkgs/development/pharo/vm/build-vm.nix153
-rw-r--r--pkgs/development/pharo/vm/default.nix34
-rw-r--r--pkgs/development/pharo/vm/share.nix6
-rw-r--r--pkgs/development/pharo/vm/vms.nix46
-rw-r--r--pkgs/development/pharo/wrapper/default.nix58
-rw-r--r--pkgs/development/pharo/wrapper/magic37
-rw-r--r--pkgs/development/pharo/wrapper/pharo-vm.sh57
-rw-r--r--pkgs/development/python-modules/cgroup-utils/default.nix27
-rw-r--r--pkgs/development/python-modules/gpy/default.nix31
-rw-r--r--pkgs/development/python-modules/keystoneclient/default.nix52
-rw-r--r--pkgs/development/python-modules/marionette-harness/mozinfo.nix14
-rw-r--r--pkgs/development/python-modules/piexif/default.nix22
-rw-r--r--pkgs/development/python-modules/pycuda/default.nix31
-rw-r--r--pkgs/development/python-modules/pygame_sdl2/default.nix5
-rw-r--r--pkgs/development/python-modules/pyramid_beaker/default.nix25
-rw-r--r--pkgs/development/python-modules/pyside/gcc6.patch18
-rw-r--r--pkgs/development/python-modules/pyside/shiboken.nix5
-rw-r--r--pkgs/development/python-modules/requests-oauthlib.nix2
-rw-r--r--pkgs/development/tools/build-managers/meson/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/meson/setup-hook.sh22
-rw-r--r--pkgs/development/tools/build-managers/ninja/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/ninja/setup-hook.sh43
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--pkgs/development/tools/dtools/default.nix54
-rw-r--r--pkgs/development/tools/flyway/default.nix29
-rw-r--r--pkgs/development/tools/misc/elfutils/default.nix4
-rw-r--r--pkgs/development/tools/misc/global/default.nix2
-rw-r--r--pkgs/development/tools/misc/uhd/default.nix6
-rw-r--r--pkgs/development/tools/misc/xxdiff/tip.nix18
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix15
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix13
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix (renamed from pkgs/development/tools/ocaml/js_of_ocaml-compiler/default.nix)0
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix15
-rw-r--r--pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix14
-rw-r--r--pkgs/development/tools/ocaml/obelisk/default.nix8
-rw-r--r--pkgs/development/tools/profiling/pprof/default.nix35
-rw-r--r--pkgs/development/tools/profiling/pprof/deps.nix12
-rw-r--r--pkgs/development/tools/xcbuild/default.nix2
-rw-r--r--pkgs/games/endless-sky/default.nix4
-rw-r--r--pkgs/games/gargoyle/darwin.patch65
-rw-r--r--pkgs/games/gargoyle/default.nix16
-rw-r--r--pkgs/games/globulation/default.nix8
-rw-r--r--pkgs/games/rocksndiamonds/default.nix49
-rw-r--r--pkgs/misc/screensavers/xlockmore/default.nix4
-rw-r--r--pkgs/misc/screensavers/xssproxy/default.nix29
-rw-r--r--pkgs/os-specific/darwin/usr-include/default.nix2
-rw-r--r--pkgs/os-specific/linux/fbterm/default.nix17
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.12.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-4.9.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix4
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing.nix6
-rw-r--r--pkgs/os-specific/linux/upstart/check-config.nix43
-rw-r--r--pkgs/os-specific/linux/upstart/default.nix58
-rw-r--r--pkgs/os-specific/linux/upstart/upstart-bash-completion18
-rw-r--r--pkgs/os-specific/linux/usbguard/daemon_read_only_config.patch13
-rw-r--r--pkgs/os-specific/linux/usbguard/default.nix68
-rw-r--r--pkgs/os-specific/linux/usbguard/documentation.patch32
-rw-r--r--pkgs/servers/http/darkhttpd/default.nix12
-rw-r--r--pkgs/servers/http/nginx/modules.nix4
-rw-r--r--pkgs/servers/misc/airsonic/default.nix24
-rw-r--r--pkgs/servers/monitoring/prometheus/alertmanager.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/haproxy-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/mysqld-exporter.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/pushgateway.nix4
-rw-r--r--pkgs/servers/monitoring/prometheus/statsd-bridge.nix8
-rw-r--r--pkgs/servers/monitoring/sensu/Gemfile.lock32
-rw-r--r--pkgs/servers/monitoring/sensu/gemset.nix45
-rw-r--r--pkgs/servers/nextcloud/default.nix4
-rw-r--r--pkgs/servers/nextcloud/news-updater.nix4
-rw-r--r--pkgs/servers/nosql/arangodb/default.nix25
-rw-r--r--pkgs/servers/squid/4.nix4
-rw-r--r--pkgs/servers/squid/default.nix4
-rw-r--r--pkgs/servers/web-apps/shaarli/default.nix6
-rw-r--r--pkgs/tools/X11/xdg-user-dirs/default.nix6
-rw-r--r--pkgs/tools/X11/xdg-utils/default.nix7
-rw-r--r--pkgs/tools/admin/ansible/2.1.nix (renamed from pkgs/development/python-modules/ansible/2.1.nix)29
-rw-r--r--pkgs/tools/admin/ansible/2.2.nix (renamed from pkgs/development/python-modules/ansible/2.2.nix)29
-rw-r--r--pkgs/tools/admin/ansible/2.3.nix (renamed from pkgs/development/python-modules/ansible/2.3.nix)30
-rw-r--r--pkgs/tools/compression/xar/default.nix8
-rw-r--r--pkgs/tools/filesystems/xfsprogs/4.3.0-sharedlibs.patch89
-rw-r--r--pkgs/tools/graphics/cuneiform/default.nix10
-rw-r--r--pkgs/tools/misc/fzf/default.nix4
-rw-r--r--pkgs/tools/misc/git-fire/default.nix29
-rw-r--r--pkgs/tools/misc/hdf5/default.nix1
-rw-r--r--pkgs/tools/misc/hdfjava/default.nix27
-rw-r--r--pkgs/tools/misc/hdfview/default.nix39
-rw-r--r--pkgs/tools/misc/kargo/default.nix2
-rw-r--r--pkgs/tools/misc/mbuffer/default.nix6
-rw-r--r--pkgs/tools/misc/xdo/default.nix10
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/networking/i2pd/default.nix2
-rw-r--r--pkgs/tools/networking/lldpd/default.nix5
-rw-r--r--pkgs/tools/networking/mitmproxy/default.nix24
-rw-r--r--pkgs/tools/networking/mitmproxy/tornado-4.6.patch11
-rw-r--r--pkgs/tools/networking/ngrok-1/default.nix (renamed from pkgs/tools/networking/ngrok/default.nix)0
-rw-r--r--pkgs/tools/networking/ngrok-1/deps.nix (renamed from pkgs/tools/networking/ngrok/deps.nix)0
-rw-r--r--pkgs/tools/networking/ngrok-2/default.nix31
-rw-r--r--pkgs/tools/networking/strongswan/default.nix10
-rw-r--r--pkgs/tools/networking/xl2tpd/default.nix4
-rw-r--r--pkgs/tools/security/bruteforce-luks/default.nix4
-rw-r--r--pkgs/tools/security/clamav/default.nix1
-rw-r--r--pkgs/tools/system/illum/default.nix4
-rw-r--r--pkgs/tools/system/syslog-ng-incubator/default.nix9
-rw-r--r--pkgs/tools/system/syslog-ng/default.nix4
-rw-r--r--pkgs/tools/text/silver-searcher/default.nix4
-rw-r--r--pkgs/tools/text/xsv/default.nix6
-rw-r--r--pkgs/top-level/aliases.nix2
-rw-r--r--pkgs/top-level/all-packages.nix100
-rw-r--r--pkgs/top-level/ocaml-packages.nix28
-rw-r--r--pkgs/top-level/php-packages.nix32
-rw-r--r--pkgs/top-level/python-packages.nix121
-rw-r--r--pkgs/top-level/release-small.nix1
279 files changed, 6283 insertions, 4352 deletions
diff --git a/doc/languages-frameworks/python.md b/doc/languages-frameworks/python.md
index c100c9d0c20..c57fd4aec17 100644
--- a/doc/languages-frameworks/python.md
+++ b/doc/languages-frameworks/python.md
@@ -2,115 +2,204 @@
 
 ## User Guide
 
-Several versions of Python are available on Nix as well as a high amount of
-packages. The default interpreter is CPython 2.7.
-
 ### Using Python
 
+#### Overview
+
+Several versions of the Python interpreter are available on Nix, as well as a
+high amount of packages. The attribute `python` refers to the default
+interpreter, which is currently CPython 2.7. It is also possible to refer to
+specific versions, e.g. `python35` refers to CPython 3.5, and `pypy` refers to
+the default PyPy interpreter.
+
+Python is used a lot, and in different ways. This affects also how it is
+packaged. In the case of Python on Nix, an important distinction is made between
+whether the package is considered primarily an application, or whether it should
+be used as a library, i.e., of primary interest are the modules in
+`site-packages` that should be importable.
+
+In the Nixpkgs tree Python applications can be found throughout, depending on
+what they do, and are called from the main package set. Python libraries,
+however, are in separate sets, with one set per interpreter version.
+
+The interpreters have several common attributes. One of these attributes is
+`pkgs`, which is a package set of Python libraries for this specific
+interpreter. E.g., the `toolz` package corresponding to the default interpreter
+is `python.pkgs.toolz`, and the CPython 3.5 version is `python35.pkgs.toolz`.
+The main package set contains aliases to these package sets, e.g.
+`pythonPackages` refers to `python.pkgs` and `python35Packages` to
+`python35.pkgs`.
+
 #### Installing Python and packages
 
-It is important to make a distinction between Python packages that are
-used as libraries, and applications that are written in Python.
+The Nix and NixOS manuals explain how packages are generally installed. In the
+case of Python and Nix, it is important to make a distinction between whether the
+package is considered an application or a library.
 
-Applications on Nix are installed typically into your user
+Applications on Nix are typically installed into your user
 profile imperatively using `nix-env -i`, and on NixOS declaratively by adding the
 package name to `environment.systemPackages` in `/etc/nixos/configuration.nix`.
 Dependencies such as libraries are automatically installed and should not be
 installed explicitly.
 
 The same goes for Python applications and libraries. Python applications can be
-installed in your profile, but Python libraries you would like to use to develop
-cannot. If you do install libraries in your profile, then you will end up with
-import errors.
+installed in your profile. But Python libraries you would like to use for
+development cannot be installed, at least not individually, because they won't
+be able to find each other resulting in import errors. Instead, it is possible
+to create an environment with `python.buildEnv` or `python.withPackages` where
+the interpreter and other executables are able to find each other and all of the
+modules.
 
-#### Python environments using `nix-shell`
+In the following examples we create an environment with Python 3.5, `numpy` and
+`toolz`. As you may imagine, there is one limitation here, and that's that
+you can install only one environment at a time. You will notice the complaints
+about collisions when you try to install a second environment.
 
-The recommended method for creating Python environments for development is with
-`nix-shell`. Executing
+##### Environment defined in separate `.nix` file
 
-```sh
-$ nix-shell -p python35Packages.numpy python35Packages.toolz
+Create a file, e.g. `build.nix`, with the following expression
+```nix
+with import <nixpkgs> {};
+
+python35.withPackages (ps: with ps; [ numpy toolz ])
+```
+and install it in your profile with
+```shell
+nix-env -if build.nix
+```
+Now you can use the Python interpreter, as well as the extra packages (`numpy`,
+`toolz`) that you added to the environment.
+
+##### Environment defined in `~/.config/nixpkgs/config.nix`
+
+If you prefer to, you could also add the environment as a package override to the Nixpkgs set, e.g.
+using `config.nix`,
+```nix
+{ # ...
+
+  packageOverrides = pkgs: with pkgs; {
+    myEnv = python35.withPackages (ps: with ps; [ numpy toolz ]);
+  };
+}
+```
+and install it in your profile with
+```shell
+nix-env -iA nixpkgs.myEnv
+```
+The environment is is installed by referring to the attribute, and considering
+the `nixpkgs` channel was used.
+
+##### Environment defined in `/etc/nixos/configuration.nix`
+
+For the sake of completeness, here's another example how to install the environment system-wide.
+
+```nix
+{ # ...
+
+  environment.systemPackages = with pkgs; [
+    (python35.withPackages(ps: with ps; [ numpy toolz ]))
+  ];
+}
 ```
 
-opens a Nix shell which has available the requested packages and dependencies.
-Now you can launch the Python interpreter (which is itself a dependency)
+#### Temporary Python environment with `nix-shell`
 
+The examples in the previous section showed how to install a Python environment
+into a profile. For development you may need to use multiple environments.
+`nix-shell` gives the possibility to temporarily load another environment, akin
+to `virtualenv`.
+
+There are two methods for loading a shell with Python packages. The first and recommended method
+is to create an environment with `python.buildEnv` or `python.withPackages` and load that. E.g.
+```sh
+$ nix-shell -p 'python35.withPackages(ps: with ps; [ numpy toolz ])'
+```
+opens a shell from which you can launch the interpreter
 ```sh
 [nix-shell:~] python3
 ```
-
-If the packages were not available yet in the Nix store, Nix would download or
-build them automatically. A convenient option with `nix-shell` is the `--run`
-option, with which you can execute a command in the `nix-shell`. Let's say we
-want the above environment and directly run the Python interpreter
+The other method, which is not recommended, does not create an environment and requires you to list the packages directly,
 
 ```sh
-$ nix-shell -p python35Packages.numpy python35Packages.toolz --run "python3"
+$ nix-shell -p python35.pkgs.numpy python35.pkgs.toolz
+```
+Again, it is possible to launch the interpreter from the shell.
+The Python interpreter has the attribute `pkgs` which contains all Python libraries for that specific interpreter.
+
+##### Load environment from `.nix` expression
+As explained in the Nix manual, `nix-shell` can also load an
+expression from a `.nix` file. Say we want to have Python 3.5, `numpy`
+and `toolz`, like before, in an environment. Consider a `shell.nix` file
+with
+```nix
+with import <nixpkgs> {};
+
+python35.withPackages (ps: [ps.numpy ps.toolz])
 ```
+Executing `nix-shell` gives you again a Nix shell from which you can run Python.
+
+What's happening here?
 
-This way you can use the `--run` option also to directly run a script
+1. We begin with importing the Nix Packages collections. `import <nixpkgs>` imports the `<nixpkgs>` function, `{}` calls it and the `with` statement brings all attributes of `nixpkgs` in the local scope. These attributes form the main package set.
+2. Then we create a Python 3.5 environment with the `withPackages` function.
+3. The `withPackages` function expects us to provide a function as an argument that takes the set of all python packages and returns a list of packages to include in the environment. Here, we select the packages `numpy` and `toolz` from the package set.
 
+##### Execute command with `--run`
+A convenient option with `nix-shell` is the `--run`
+option, with which you can execute a command in the `nix-shell`. We can
+e.g. directly open a Python shell
+```sh
+$ nix-shell -p python35Packages.numpy python35Packages.toolz --run "python3"
+```
+or run a script
 ```sh
 $ nix-shell -p python35Packages.numpy python35Packages.toolz --run "python3 myscript.py"
 ```
 
-In fact, for this specific use case there is a more convenient method. You can
+##### `nix-shell` as shebang
+In fact, for the second use case, there is a more convenient method. You can
 add a [shebang](https://en.wikipedia.org/wiki/Shebang_(Unix)) to your script
-specifying which dependencies Nix shell needs. With the following shebang, you
-can use `nix-shell myscript.py` and it will make available all dependencies and
+specifying which dependencies `nix-shell` needs. With the following shebang, you
+can just execute `./myscript.py`, and it will make available all dependencies and
 run the script in the `python3` shell.
 
 ```py
 #! /usr/bin/env nix-shell
-#! nix-shell -i python3 -p python3Packages.numpy
+#! nix-shell -i 'python3.withPackages(ps: [ps.numpy])'
 
 import numpy
 
 print(numpy.__version__)
 ```
 
-Likely you do not want to type your dependencies each and every time. What you
-can do is write a simple Nix expression which sets up an environment for you,
-requiring you only to type `nix-shell`. Say we want to have Python 3.5, `numpy`
-and `toolz`, like before, in an environment. With a `shell.nix` file
-containing
-```nix
-with import <nixpkgs> {};
-
-(pkgs.python35.withPackages (ps: [ps.numpy ps.toolz])).env
-```
-executing `nix-shell` gives you again a Nix shell from which you can run Python.
-
-What's happening here?
-
-1. We begin with importing the Nix Packages collections. `import <nixpkgs>` import the `<nixpkgs>` function, `{}` calls it and the `with` statement brings all attributes of `nixpkgs` in the local scope. Therefore we can now use `pkgs`.
-2. Then we create a Python 3.5 environment with the `withPackages` function.
-3. The `withPackages` function expects us to provide a function as an argument that takes the set of all python packages and returns a list of packages to include in the environment. Here, we select the packages `numpy` and `toolz` from the package set.
-4. And finally, for in interactive use we return the environment by using the `env` attribute.
-
 ### Developing with Python
 
+Now that you know how to get a working Python environment with Nix, it is time
+to go forward and start actually developing with Python. We will first have a
+look at how Python packages are packaged on Nix. Then, we will look at how you
+can use development mode with your code.
 
-Now that you know how to get a working Python environment on Nix, it is time to go forward and start actually developing with Python.
-We will first have a look at how Python packages are packaged on Nix. Then, we will look how you can use development mode with your code.
+#### Packaging a library
 
-#### Python packaging on Nix
-
-On Nix all packages are built by functions. The main function in Nix for building Python packages is [`buildPythonPackage`](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/interpreters/python/build-python-package.nix).
-Let's see how we would build the `toolz` package. According to [`python-packages.nix`](https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/python-packages.nix) `toolz` is build using
+With Nix all packages are built by functions. The main function in Nix for
+building Python libraries is `buildPythonPackage`. Let's see how we can build the
+`toolz` package.
 
 ```nix
 { # ...
 
   toolz = buildPythonPackage rec {
-    name = "toolz-${version}";
+    pname = "toolz";
     version = "0.7.4";
+    name = "${pname}-${version}";
 
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/t/toolz/toolz-${version}.tar.gz";
+    src = fetchPypi {
+      inherit pname version;
       sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd";
     };
 
+    doCheck = false;
+
     meta = {
       homepage = "http://github.com/pytoolz/toolz/";
       description = "List processing tools and functional utilities";
@@ -122,63 +211,37 @@ Let's see how we would build the `toolz` package. According to [`python-packages
 ```
 
 What happens here? The function `buildPythonPackage` is called and as argument
-it accepts a set. In this case the set is a recursive set ([`rec`](http://nixos.org/nix/manual/#sec-constructs)).
-One of the arguments is the name of the package, which consists of a basename
-(generally following the name on PyPi) and a version. Another argument, `src`
-specifies the source, which in this case is fetched from an url. `fetchurl` not
-only downloads the target file, but also validates its hash. Furthermore, we
-specify some (optional) [meta information](http://nixos.org/nixpkgs/manual/#chap-meta).
-
-The output of the function is a derivation, which is an attribute with the name
-`toolz` of the set `pythonPackages`. Actually, sets are created for all interpreter versions,
-so e.g. `python27Packages`, `python35Packages` and `pypyPackages`.
-
+it accepts a set. In this case the set is a recursive set, `rec`. One of the
+arguments is the name of the package, which consists of a basename (generally
+following the name on PyPi) and a version. Another argument, `src` specifies the
+source, which in this case is fetched from PyPI using the helper function
+`fetchPypi`. The argument `doCheck` is used to set whether tests should be run
+when building the package. Furthermore, we specify some (optional) meta
+information. The output of the function is a derivation.
+
+An expression for `toolz` can be found in the Nixpkgs repository. As explained
+in the introduction of this Python section, a derivation of `toolz` is available
+for each interpreter version, e.g. `python35.pkgs.toolz` refers to the `toolz`
+derivation corresponding to the CPython 3.5 interpreter.
 The above example works when you're directly working on
 `pkgs/top-level/python-packages.nix` in the Nixpkgs repository. Often though,
-you will want to test a Nix expression outside of the Nixpkgs tree. If you
-create a `shell.nix` file with the following contents
-
-```nix
-with import <nixpkgs> {};
-
-pkgs.python35Packages.buildPythonPackage rec {
-  name = "toolz-${version}";
-  version = "0.8.0";
-
-  src = pkgs.fetchurl {
-    url = "mirror://pypi/t/toolz/toolz-${version}.tar.gz";
-    sha256 = "e8451af61face57b7c5d09e71c0d27b8005f001ead56e9fdf470417e5cc6d479";
-  };
-
-  doCheck = false;
-
-  meta = {
-    homepage = "http://github.com/pytoolz/toolz/";
-    description = "List processing tools and functional utilities";
-    license = licenses.bsd3;
-    maintainers = with maintainers; [ fridh ];
-  };
-}
-```
-
-and then execute `nix-shell` will result in an environment in which you can use
-Python 3.5 and the `toolz` package. As you can see we had to explicitly mention
-for which Python version we want to build a package.
+you will want to test a Nix expression outside of the Nixpkgs tree.
 
-The above example considered only a single package. Generally you will want to use multiple packages.
-If we create a `shell.nix` file with the following contents
+The following expression creates a derivation for the `toolz` package,
+and adds it along with a `numpy` package to a Python environment.
 
 ```nix
 with import <nixpkgs> {};
 
 ( let
-    toolz = pkgs.python35Packages.buildPythonPackage rec {
-      name = "toolz-${version}";
-      version = "0.8.0";
-
-      src = pkgs.fetchurl {
-        url = "mirror://pypi/t/toolz/toolz-${version}.tar.gz";
-        sha256 = "e8451af61face57b7c5d09e71c0d27b8005f001ead56e9fdf470417e5cc6d479";
+    my_toolz = python35.pkgs.buildPythonPackage rec {
+      pname = "toolz";
+      version = "0.7.4";
+      name = "${pname}-${version}";
+
+      src = python35.pkgs.fetchPypi {
+        inherit pname version;
+        sha256 = "43c2c9e5e7a16b6c88ba3088a9bfc82f7db8e13378be7c78d6c14a5f8ed05afd";
       };
 
       doCheck = false;
@@ -189,24 +252,24 @@ with import <nixpkgs> {};
       };
     };
 
-  in pkgs.python35.withPackages (ps: [ps.numpy toolz])
+  in python35.withPackages (ps: [ps.numpy my_toolz])
 ).env
 ```
+Executing `nix-shell` will result in an environment in which you can use
+Python 3.5 and the `toolz` package. As you can see we had to explicitly mention
+for which Python version we want to build a package.
 
-and again execute `nix-shell`, then we get a Python 3.5 environment with our
-locally defined package as well as `numpy` which is build according to the
-definition in Nixpkgs. What did we do here? Well, we took the Nix expression
-that we used earlier to build a Python environment, and said that we wanted to
-include our own version of `toolz`. To introduce our own package in the scope of
-`withPackages` we used a
-[`let`](http://nixos.org/nix/manual/#sec-constructs) expression.
-You can see that we used `ps.numpy` to select numpy from the nixpkgs package set (`ps`).
-But we do not take `toolz` from the nixpkgs package set this time.
-Instead, `toolz` will resolve to our local definition that we introduced with `let`.
+So, what did we do here? Well, we took the Nix expression that we used earlier
+to build a Python environment, and said that we wanted to include our own
+version of `toolz`, named `my_toolz`. To introduce our own package in the scope
+of `withPackages` we used a `let` expression. You can see that we used
+`ps.numpy` to select numpy from the nixpkgs package set (`ps`). We did not take
+`toolz` from the Nixpkgs package set this time, but instead took our own version
+that we introduced with the `let` expression.
 
-### Handling dependencies
+#### Handling dependencies
 
-Our example, `toolz`, doesn't have any dependencies on other Python
+Our example, `toolz`, does not have any dependencies on other Python
 packages or system libraries. According to the manual,  `buildPythonPackage`
 uses the arguments `buildInputs` and `propagatedBuildInputs` to specify dependencies. If something is
 exclusively a build-time dependency, then the dependency should be included as a
@@ -713,63 +776,6 @@ Both are also exported in `nix-shell`.
 
 ## FAQ
 
-### How can I install a working Python environment?
-
-As explained in the user's guide installing individual Python packages
-imperatively with `nix-env -i` or declaratively in `environment.systemPackages`
-is not supported. However, it is possible to install a Python environment with packages (`python.buildEnv`).
-
-In the following examples we create an environment with Python 3.5, `numpy` and `ipython`.
-As you might imagine there is one limitation here, and that's you can install
-only one environment at a time. You will notice the complaints about collisions
-when you try to install a second environment.
-
-#### Environment defined in separate `.nix` file
-
-Create a file, e.g. `build.nix`, with the following expression
-```nix
-with import <nixpkgs> {};
-
-pkgs.python35.withPackages (ps: with ps; [ numpy ipython ])
-```
-and install it in your profile with
-```shell
-nix-env -if build.nix
-```
-Now you can use the Python interpreter, as well as the extra packages that you added to the environment.
-
-#### Environment defined in `~/.config/nixpkgs/config.nix`
-
-If you prefer to, you could also add the environment as a package override to the Nixpkgs set.
-```nix
-{ # ...
-
-  packageOverrides = pkgs: with pkgs; {
-    myEnv = python35.withPackages (ps: with ps; [ numpy ipython ]);
-  };
-}
-```
-and install it in your profile with
-```shell
-nix-env -iA nixpkgs.myEnv
-```
-
-We're installing using the attribute path and assume the channels is named `nixpkgs`.
-Note that I'm using the attribute path here.
-
-#### Environment defined in `/etc/nixos/configuration.nix`
-
-For the sake of completeness, here's another example how to install the environment system-wide.
-
-```nix
-{ # ...
-
-  environment.systemPackages = with pkgs; [
-    (python35.withPackages(ps: with ps; [ numpy ipython ]))
-  ];
-}
-```
-
 ### How to solve circular dependencies?
 
 Consider the packages `A` and `B` that depend on each other. When packaging `B`,
diff --git a/lib/maintainers.nix b/lib/maintainers.nix
index 7728749f054..8e97bac42ac 100644
--- a/lib/maintainers.nix
+++ b/lib/maintainers.nix
@@ -97,6 +97,7 @@
   canndrew = "Andrew Cann <shum@canndrew.org>";
   carlsverre = "Carl Sverre <accounts@carlsverre.com>";
   casey = "Casey Rodarmor <casey@rodarmor.net>";
+  caugner = "Claas Augner <nixos@caugner.de>";
   cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>";
   cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
   changlinli = "Changlin Li <mail@changlinli.com>";
@@ -215,6 +216,7 @@
   garrison = "Jim Garrison <jim@garrison.cc>";
   gavin = "Gavin Rogers <gavin@praxeology.co.uk>";
   gebner = "Gabriel Ebner <gebner@gebner.org>";
+  geistesk = "Alvar Penning <post@0x21.biz>";
   georgewhewell = "George Whewell <georgerw@gmail.com>";
   gilligan = "Tobias Pflug <tobias.pflug@gmail.com>";
   giogadi = "Luis G. Torres <lgtorres42@gmail.com>";
@@ -578,6 +580,7 @@
   thoughtpolice = "Austin Seipp <aseipp@pobox.com>";
   timbertson = "Tim Cuthbertson <tim@gfxmonk.net>";
   titanous = "Jonathan Rudenberg <jonathan@titanous.com>";
+  tnias = "Philipp Bartsch <phil@grmr.de>";
   tohl = "Tomas Hlavaty <tom@logand.com>";
   tokudan = "Daniel Frank <git@danielfrank.net>";
   tomberek = "Thomas Bereknyei <tomberek@gmail.com>";
diff --git a/lib/minver.nix b/lib/minver.nix
index 4f448266d06..2147820c0e4 100644
--- a/lib/minver.nix
+++ b/lib/minver.nix
@@ -1,2 +1,2 @@
 # Expose the minimum required version for evaluating Nixpkgs
-"1.10"
+"1.11"
diff --git a/maintainers/scripts/hydra-eval-failures.py b/maintainers/scripts/hydra-eval-failures.py
index 6bbc0a45e44..f82d14c3b46 100755
--- a/maintainers/scripts/hydra-eval-failures.py
+++ b/maintainers/scripts/hydra-eval-failures.py
@@ -31,18 +31,21 @@ EVAL_FILE = {
 
 
 def get_maintainers(attr_name):
-    nixname = attr_name.split('.')
-    meta_json = subprocess.check_output([
-        'nix-instantiate',
-        '--eval',
-        '--strict',
-        '-A',
-        '.'.join(nixname[1:]) + '.meta',
-        EVAL_FILE[nixname[0]],
-        '--json'])
-    meta = json.loads(meta_json)
-    if meta.get('maintainers'):
-        return [MAINTAINERS[name] for name in meta['maintainers'] if MAINTAINERS.get(name)]
+    try:
+        nixname = attr_name.split('.')
+        meta_json = subprocess.check_output([
+            'nix-instantiate',
+            '--eval',
+            '--strict',
+            '-A',
+            '.'.join(nixname[1:]) + '.meta',
+            EVAL_FILE[nixname[0]],
+            '--json'])
+        meta = json.loads(meta_json)
+        if meta.get('maintainers'):
+            return [MAINTAINERS[name] for name in meta['maintainers'] if MAINTAINERS.get(name)]
+    except:
+       return []
 
 
 @click.command()
diff --git a/nixos/modules/hardware/raid/hpsa.nix b/nixos/modules/hardware/raid/hpsa.nix
new file mode 100644
index 00000000000..1b4b1fa1954
--- /dev/null
+++ b/nixos/modules/hardware/raid/hpsa.nix
@@ -0,0 +1,61 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  hpssacli = pkgs.stdenv.mkDerivation rec {
+    name = "hpssacli-${version}";
+    version = "2.40-13.0";
+
+    src = pkgs.fetchurl {
+      url = "http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/${name}_amd64.deb";
+      sha256 = "11w7fwk93lmfw0yya4jpjwdmgjimqxx6412sqa166g1pz4jil4sw";
+    };
+
+    nativeBuildInputs = [ pkgs.dpkg ];
+
+    unpackPhase = "dpkg -x $src ./";
+
+    installPhase = ''
+      mkdir -p $out/bin $out/share/doc $out/share/man
+      mv opt/hp/hpssacli/bld/{hpssascripting,hprmstr,hpssacli} $out/bin/
+      mv opt/hp/hpssacli/bld/*.{license,txt}                   $out/share/doc/
+      mv usr/man                                               $out/share/
+
+      for file in $out/bin/*; do
+        chmod +w $file
+        patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+                 --set-rpath ${lib.makeLibraryPath [ pkgs.stdenv.cc.cc ]} \
+                 $file
+      done
+    '';
+
+    dontStrip = true;
+
+    meta = with lib; {
+      description = "HP Smart Array CLI";
+      homepage = http://downloads.linux.hpe.com/SDR/downloads/MCP/Ubuntu/pool/non-free/;
+      license = licenses.unfreeRedistributable;
+      platforms = [ "x86_64-linux" ];
+      maintainers = with maintainers; [ volth ];
+    };
+  };
+in {
+  ###### interface
+
+  options = {
+    hardware.raid.HPSmartArray = {
+      enable = mkEnableOption "HP Smart Array kernel modules and CLI utility";
+    };
+  };
+
+  ###### implementation
+
+  config = mkIf config.hardware.raid.HPSmartArray.enable {
+
+    boot.initrd.kernelModules = [ "sg" ]; /* hpssacli wants it */
+    boot.initrd.availableKernelModules = [ "hpsa" ];
+
+    environment.systemPackages = [ hpssacli ];
+  };
+}
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 1bb950ca7d6..dd9c3702b80 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -43,6 +43,7 @@
   ./hardware/nitrokey.nix
   ./hardware/opengl.nix
   ./hardware/pcmcia.nix
+  ./hardware/raid/hpsa.nix
   ./hardware/usb-wwan.nix
   ./hardware/video/amdgpu.nix
   ./hardware/video/amdgpu-pro.nix
@@ -269,6 +270,7 @@
   ./services/mail/rspamd.nix
   ./services/mail/rmilter.nix
   ./services/mail/nullmailer.nix
+  ./services/misc/airsonic.nix
   ./services/misc/apache-kafka.nix
   ./services/misc/autofs.nix
   ./services/misc/autorandr.nix
@@ -562,6 +564,7 @@
   ./services/security/tor.nix
   ./services/security/torify.nix
   ./services/security/torsocks.nix
+  ./services/security/usbguard.nix
   ./services/security/vault.nix
   ./services/system/cgmanager.nix
   ./services/system/cloud-init.nix
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index 2079ed544ae..800e12956f2 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -17,8 +17,9 @@ with lib;
     (mkRenamedOptionModule [ "services" "elasticsearch" "host" ] [ "services" "elasticsearch" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "graphite" "api" "host" ] [ "services" "graphite" "api" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "graphite" "web" "host" ] [ "services" "graphite" "web" "listenAddress" ])
-    (mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
+    (mkRenamedOptionModule [ "services" "i2pd" "extIp" ] [ "services" "i2pd" "address" ])
     (mkRenamedOptionModule [ "services" "kibana" "host" ] [ "services" "kibana" "listenAddress" ])
+    (mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "listenAddress" ])
     (mkRenamedOptionModule [ "services" "shout" "host" ] [ "services" "shout" "listenAddress" ])
diff --git a/nixos/modules/services/misc/airsonic.nix b/nixos/modules/services/misc/airsonic.nix
new file mode 100644
index 00000000000..b92104787a5
--- /dev/null
+++ b/nixos/modules/services/misc/airsonic.nix
@@ -0,0 +1,117 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+  cfg = config.services.airsonic;
+in {
+  options = {
+
+    services.airsonic = {
+      enable = mkEnableOption "Airsonic, the Free and Open Source media streaming server (fork of Subsonic and Libresonic)";
+
+      user = mkOption {
+        type = types.str;
+        default = "airsonic";
+        description = "User account under which airsonic runs.";
+      };
+
+      home = mkOption {
+        type = types.path;
+        default = "/var/lib/airsonic";
+        description = ''
+          The directory where Airsonic will create files.
+          Make sure it is writable.
+        '';
+      };
+
+      listenAddress = mkOption {
+        type = types.string;
+        default = "127.0.0.1";
+        description = ''
+          The host name or IP address on which to bind Airsonic.
+          Only relevant if you have multiple network interfaces and want
+          to make Airsonic available on only one of them. The default value
+          will bind Airsonic to all available network interfaces.
+        '';
+      };
+
+      port = mkOption {
+        type = types.int;
+        default = 4040;
+        description = ''
+          The port on which Airsonic will listen for
+          incoming HTTP traffic. Set to 0 to disable.
+        '';
+      };
+
+      contextPath = mkOption {
+        type = types.path;
+        default = "/";
+        description = ''
+          The context path, i.e., the last part of the Airsonic
+          URL. Typically '/' or '/airsonic'. Default '/'
+        '';
+      };
+
+      maxMemory = mkOption {
+        type = types.int;
+        default = 100;
+        description = ''
+          The memory limit (max Java heap size) in megabytes.
+          Default: 100
+        '';
+      };
+
+      transcoders = mkOption {
+        type = types.listOf types.path;
+        default = [ "${pkgs.ffmpeg.bin}/bin/ffmpeg" ];
+        defaultText= [ "\${pkgs.ffmpeg.bin}/bin/ffmpeg" ];
+        description = ''
+          List of paths to transcoder executables that should be accessible
+          from Airsonic. Symlinks will be created to each executable inside
+          ${cfg.home}/transcoders.
+        '';
+      };
+    };
+  };
+
+  config = mkIf cfg.enable {
+    systemd.services.airsonic = {
+      description = "Airsonic Media Server";
+      after = [ "local-fs.target" "network.target" ];
+      wantedBy = [ "multi-user.target" ];
+
+      preStart = ''
+        # Install transcoders.
+        rm -rf ${cfg.home}/transcode
+        mkdir -p ${cfg.home}/transcode
+        for exe in ${toString cfg.transcoders}; do
+          ln -sf "$exe" ${cfg.home}/transcode
+        done
+      '';
+      serviceConfig = {
+        ExecStart = ''
+          ${pkgs.jre}/bin/java -Xmx${toString cfg.maxMemory}m \
+          -Dairsonic.home=${cfg.home} \
+          -Dserver.address=${cfg.listenAddress} \
+          -Dserver.port=${toString cfg.port} \
+          -Dairsonic.contextPath=${cfg.contextPath} \
+          -Djava.awt.headless=true \
+          -verbose:gc \
+          -jar ${pkgs.airsonic}/webapps/airsonic.war
+        '';
+        Restart = "always";
+        User = "airsonic";
+        UMask = "0022";
+      };
+    };
+
+    users.extraUsers.airsonic = {
+      description = "Airsonic service user";
+      name = cfg.user;
+      home = cfg.home;
+      createHome = true;
+    };
+  };
+}
diff --git a/nixos/modules/services/networking/i2pd.nix b/nixos/modules/services/networking/i2pd.nix
index 7622f030f83..5c4932075fe 100644
--- a/nixos/modules/services/networking/i2pd.nix
+++ b/nixos/modules/services/networking/i2pd.nix
@@ -28,15 +28,15 @@ let
   };
 
   mkKeyedEndpointOpt = name: addr: port: keyFile:
-  (mkEndpointOpt name addr port) // {
-    keys = mkOption {
-      type = types.str;
-      default = "";
-      description = ''
-        File to persist ${lib.toUpper name} keys.
-      '';
+    (mkEndpointOpt name addr port) // {
+      keys = mkOption {
+        type = types.str;
+        default = "";
+        description = ''
+          File to persist ${lib.toUpper name} keys.
+        '';
+      };
     };
-  };
 
   commonTunOpts = let
     i2cpOpts = {
@@ -59,7 +59,7 @@ let
       description = "Number of ElGamal/AES tags to send.";
       default = 40;
     };
-   destination = mkOption {
+    destination = mkOption {
       type = types.str;
       description = "Remote endpoint, I2P hostname or b32.i2p address.";
     };
@@ -70,88 +70,91 @@ let
     };
   } // mkEndpointOpt name "127.0.0.1" 0;
 
-  i2pdConf = pkgs.writeText "i2pd.conf"
-  ''
-  ipv4 = ${boolToString cfg.enableIPv4}
-  ipv6 = ${boolToString cfg.enableIPv6}
-  notransit = ${boolToString cfg.notransit}
-  floodfill = ${boolToString cfg.floodfill}
-  netid = ${toString cfg.netid}
-  ${if isNull cfg.bandwidth then "" else "bandwidth = ${toString cfg.bandwidth}" }
-  ${if isNull cfg.port then "" else "port = ${toString cfg.port}"}
-
-  [limits]
-  transittunnels = ${toString cfg.limits.transittunnels}
-
-  [upnp]
-  enabled = ${boolToString cfg.upnp.enable}
-  name = ${cfg.upnp.name}
-
-  [precomputation]
-  elgamal = ${boolToString cfg.precomputation.elgamal}
-
-  [reseed]
-  verify = ${boolToString cfg.reseed.verify}
-  file = ${cfg.reseed.file}
-  urls = ${builtins.concatStringsSep "," cfg.reseed.urls}
-
-  [addressbook]
-  defaulturl = ${cfg.addressbook.defaulturl}
-  subscriptions = ${builtins.concatStringsSep "," cfg.addressbook.subscriptions}
-  ${flip concatMapStrings
+  i2pdConf = pkgs.writeText "i2pd.conf" ''
+    # DO NOT EDIT -- this file has been generated automatically.
+    loglevel = ${cfg.logLevel}
+
+    ipv4 = ${boolToString cfg.enableIPv4}
+    ipv6 = ${boolToString cfg.enableIPv6}
+    notransit = ${boolToString cfg.notransit}
+    floodfill = ${boolToString cfg.floodfill}
+    netid = ${toString cfg.netid}
+    ${if isNull cfg.bandwidth then "" else "bandwidth = ${toString cfg.bandwidth}" }
+    ${if isNull cfg.port then "" else "port = ${toString cfg.port}"}
+
+    [limits]
+    transittunnels = ${toString cfg.limits.transittunnels}
+
+    [upnp]
+    enabled = ${boolToString cfg.upnp.enable}
+    name = ${cfg.upnp.name}
+
+    [precomputation]
+    elgamal = ${boolToString cfg.precomputation.elgamal}
+
+    [reseed]
+    verify = ${boolToString cfg.reseed.verify}
+    file = ${cfg.reseed.file}
+    urls = ${builtins.concatStringsSep "," cfg.reseed.urls}
+
+    [addressbook]
+    defaulturl = ${cfg.addressbook.defaulturl}
+    subscriptions = ${builtins.concatStringsSep "," cfg.addressbook.subscriptions}
+
+    ${flip concatMapStrings
       (collect (proto: proto ? port && proto ? address && proto ? name) cfg.proto)
-      (proto: let portStr = toString proto.port; in
-        ''
-          [${proto.name}]
-          enabled = ${boolToString proto.enable}
-          address = ${proto.address}
-          port = ${toString proto.port}
-          ${if proto ? keys then "keys = ${proto.keys}" else ""}
-          ${if proto ? auth then "auth = ${boolToString proto.auth}" else ""}
-          ${if proto ? user then "user = ${proto.user}" else ""}
-          ${if proto ? pass then "pass = ${proto.pass}" else ""}
-          ${if proto ? outproxy then "outproxy = ${proto.outproxy}" else ""}
-          ${if proto ? outproxyPort then "outproxyport = ${toString proto.outproxyPort}" else ""}
-        '')
-      }
+      (proto: let portStr = toString proto.port; in ''
+        [${proto.name}]
+        enabled = ${boolToString proto.enable}
+        address = ${proto.address}
+        port = ${toString proto.port}
+        ${if proto ? keys then "keys = ${proto.keys}" else ""}
+        ${if proto ? auth then "auth = ${boolToString proto.auth}" else ""}
+        ${if proto ? user then "user = ${proto.user}" else ""}
+        ${if proto ? pass then "pass = ${proto.pass}" else ""}
+        ${if proto ? outproxy then "outproxy = ${proto.outproxy}" else ""}
+        ${if proto ? outproxyPort then "outproxyport = ${toString proto.outproxyPort}" else ""}
+      '')
+    }
   '';
 
   i2pdTunnelConf = pkgs.writeText "i2pd-tunnels.conf" ''
-  ${flip concatMapStrings
-    (collect (tun: tun ? port && tun ? destination) cfg.outTunnels)
-    (tun: let portStr = toString tun.port; in ''
-  [${tun.name}]
-  type = client
-  destination = ${tun.destination}
-  keys = ${tun.keys}
-  address = ${tun.address}
-  port = ${toString tun.port}
-  inbound.length = ${toString tun.inbound.length}
-  outbound.length = ${toString tun.outbound.length}
-  inbound.quantity = ${toString tun.inbound.quantity}
-  outbound.quantity = ${toString tun.outbound.quantity}
-  crypto.tagsToSend = ${toString tun.crypto.tagsToSend}
-  '')
-  }
-  ${flip concatMapStrings
-    (collect (tun: tun ? port && tun ? host) cfg.inTunnels)
-    (tun: let portStr = toString tun.port; in ''
-  [${tun.name}]
-  type = server
-  destination = ${tun.destination}
-  keys = ${tun.keys}
-  host = ${tun.address}
-  port = ${tun.port}
-  inport = ${tun.inPort}
-  accesslist = ${builtins.concatStringsSep "," tun.accessList}
-  '')
-  }
+    # DO NOT EDIT -- this file has been generated automatically.
+    ${flip concatMapStrings
+      (collect (tun: tun ? port && tun ? destination) cfg.outTunnels)
+      (tun: let portStr = toString tun.port; in ''
+        [${tun.name}]
+        type = client
+        destination = ${tun.destination}
+        keys = ${tun.keys}
+        address = ${tun.address}
+        port = ${toString tun.port}
+        inbound.length = ${toString tun.inbound.length}
+        outbound.length = ${toString tun.outbound.length}
+        inbound.quantity = ${toString tun.inbound.quantity}
+        outbound.quantity = ${toString tun.outbound.quantity}
+        crypto.tagsToSend = ${toString tun.crypto.tagsToSend}
+      '')
+    }
+    ${flip concatMapStrings
+      (collect (tun: tun ? port && tun ? host) cfg.inTunnels)
+      (tun: let portStr = toString tun.port; in ''
+        [${tun.name}]
+        type = server
+        destination = ${tun.destination}
+        keys = ${tun.keys}
+        host = ${tun.address}
+        port = ${tun.port}
+        inport = ${tun.inPort}
+        accesslist = ${builtins.concatStringsSep "," tun.accessList}
+      '')
+    }
   '';
 
   i2pdSh = pkgs.writeScriptBin "i2pd" ''
     #!/bin/sh
-    ${pkgs.i2pd}/bin/i2pd \
-      ${if isNull cfg.extIp then "" else "--host="+cfg.extIp} \
+    exec ${pkgs.i2pd}/bin/i2pd \
+      ${if isNull cfg.address then "" else "--host="+cfg.address} \
       --conf=${i2pdConf} \
       --tunconf=${i2pdTunnelConf}
   '';
@@ -176,11 +179,23 @@ in
         '';
       };
 
-      extIp = mkOption {
+      logLevel = mkOption {
+        type = types.enum ["debug" "info" "warn" "error"];
+        default = "error";
+        description = ''
+          The log level. <command>i2pd</command> defaults to "info"
+          but that generates copious amounts of log messages.
+
+          We default to "error" which is similar to the default log
+          level of <command>tor</command>.
+        '';
+      };
+
+      address = mkOption {
         type = with types; nullOr str;
         default = null;
         description = ''
-          Your external IP.
+          Your external IP or hostname.
         '';
       };
 
@@ -213,7 +228,7 @@ in
         default = null;
         description = ''
            Set a router bandwidth limit integer in KBps.
-           If not set, i2pd defaults to 32KBps.
+           If not set, <command>i2pd</command> defaults to 32KBps.
         '';
       };
 
@@ -261,9 +276,14 @@ in
 
       precomputation.elgamal = mkOption {
         type = types.bool;
-        default = false;
+        default = true;
         description = ''
-          Use ElGamal precomputated tables.
+          Whenever to use precomputated tables for ElGamal.
+          <command>i2pd</command> defaults to <literal>false</literal>
+          to save 64M of memory (and looses some performance).
+
+          We default to <literal>true</literal> as that is what most
+          users want anyway.
         '';
       };
 
@@ -353,7 +373,7 @@ in
         };
       };
 
-      proto.httpProxy = mkKeyedEndpointOpt "httpproxy" "127.0.0.1" 4446 "";
+      proto.httpProxy = mkKeyedEndpointOpt "httpproxy" "127.0.0.1" 4444 "";
       proto.socksProxy = (mkKeyedEndpointOpt "socksproxy" "127.0.0.1" 4447 "")
       // {
         outproxy = mkOption {
diff --git a/nixos/modules/services/networking/lldpd.nix b/nixos/modules/services/networking/lldpd.nix
index 4f951d843e2..ba4e1b1542f 100644
--- a/nixos/modules/services/networking/lldpd.nix
+++ b/nixos/modules/services/networking/lldpd.nix
@@ -28,16 +28,11 @@ in
     users.extraGroups._lldpd = {};
 
     environment.systemPackages = [ pkgs.lldpd ];
+    systemd.packages = [ pkgs.lldpd ];
 
     systemd.services.lldpd = {
       wantedBy = [ "multi-user.target" ];
-      after = [ "network.target" ];
-      requires = [ "network.target" ];
-      serviceConfig = {
-        ExecStart = "${pkgs.lldpd}/bin/lldpd -d ${concatStringsSep " " cfg.extraArgs}";
-        PrivateTmp = true;
-        PrivateDevices = true;
-      };
+      environment.LLDPD_OPTIONS = concatStringsSep " " cfg.extraArgs;
     };
   };
 }
diff --git a/nixos/modules/services/security/usbguard.nix b/nixos/modules/services/security/usbguard.nix
new file mode 100644
index 00000000000..1f2c56a9efa
--- /dev/null
+++ b/nixos/modules/services/security/usbguard.nix
@@ -0,0 +1,200 @@
+{config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+  cfg = config.services.usbguard;
+
+  # valid policy options
+  policy = (types.enum [ "allow" "block" "reject" "keep" "apply-policy" ]);
+
+  # decide what file to use for rules
+  ruleFile = if cfg.rules != null then pkgs.writeText "usbguard-rules" cfg.rules else cfg.ruleFile;
+
+  daemonConf = ''
+      # generated by nixos/modules/services/security/usbguard.nix
+      RuleFile=${ruleFile}
+      ImplicitPolicyTarget=${cfg.implictPolicyTarget}
+      PresentDevicePolicy=${cfg.presentDevicePolicy}
+      PresentControllerPolicy=${cfg.presentControllerPolicy}
+      InsertedDevicePolicy=${cfg.insertedDevicePolicy}
+      RestoreControllerDeviceState=${if cfg.restoreControllerDeviceState then "true" else "false"}
+      # this does not seem useful for endusers to change
+      DeviceManagerBackend=uevent
+      IPCAllowedUsers=${concatStringsSep " " cfg.IPCAllowedUsers}
+      IPCAllowedGroups=${concatStringsSep " " cfg.IPCAllowedGroups}
+      IPCAccessControlFiles=${cfg.IPCAccessControlFiles}
+      DeviceRulesWithPort=${if cfg.deviceRulesWithPort then "true" else "false"}
+      AuditFilePath=${cfg.auditFilePath}
+    '';
+
+    daemonConfFile = pkgs.writeText "usbguard-daemon-conf" daemonConf;
+
+in {
+
+  ###### interface
+
+  options = {
+    services.usbguard = {
+      enable = mkEnableOption "USBGuard daemon";
+
+      ruleFile = mkOption {
+        type = types.path;
+        default = "/var/lib/usbguard/rules.conf";
+        description = ''
+          The USBGuard daemon will use this file to load the policy rule set
+          from it and to write new rules received via the IPC interface.
+
+          Running the command <literal>usbguard generate-policy</literal> as
+          root will generate a config for your currently plugged in devices.
+          For a in depth guide consult the official documentation.
+
+          Setting the <literal>rules</literal> option will ignore the
+          <literal>ruleFile</literal> option.
+        '';
+      };
+
+      rules = mkOption {
+        type = types.nullOr types.str;
+        default = null;
+        example = ''
+          allow with-interface equals { 08:*:* }
+        '';
+        description = ''
+          The USBGuard daemon will load this policy rule set. Modifying it via
+          the IPC interface won't work if you use this option, since the
+          contents of this option will be written into the nix-store it will be
+          read-only.
+
+          You can still use <literal> usbguard generate-policy</literal> to
+          generate rules, but you would have to insert them here.
+
+          Setting the <literal>rules</literal> option will ignore the
+          <literal>ruleFile</literal> option.
+        '';
+      };
+
+      implictPolicyTarget = mkOption {
+        type = policy;
+        default = "block";
+        description = ''
+          How to treat USB devices that don't match any rule in the policy.
+          Target should be one of allow, block or reject (logically remove the
+          device node from the system).
+        '';
+      };
+
+      presentDevicePolicy = mkOption {
+        type = policy;
+        default = "apply-policy";
+        description = ''
+          How to treat USB devices that are already connected when the daemon
+          starts. Policy should be one of allow, block, reject, keep (keep
+          whatever state the device is currently in) or apply-policy (evaluate
+          the rule set for every present device).
+        '';
+      };
+
+      presentControllerPolicy = mkOption {
+        type = policy;
+        default = "keep";
+        description = ''
+          How to treat USB controller devices that are already connected when
+          the daemon starts. One of allow, block, reject, keep or apply-policy.
+        '';
+      };
+
+      insertedDevicePolicy = mkOption {
+        type = policy;
+        default = "apply-policy";
+        description = ''
+          How to treat USB devices that are already connected after the daemon
+          starts. One of block, reject, apply-policy.
+        '';
+      };
+
+      restoreControllerDeviceState = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          The  USBGuard  daemon  modifies  some attributes of controller
+          devices like the default authorization state of new child device
+          instances. Using this setting, you can controll whether the daemon
+          will try to restore the attribute values to the state before
+          modificaton on shutdown.
+        '';
+      };
+
+      IPCAllowedUsers = mkOption {
+        type = types.listOf types.str;
+        default = [ "root" ];
+        example = [ "root" "yourusername" ];
+        description = ''
+          A list of usernames that the daemon will accept IPC connections from.
+        '';
+      };
+
+      IPCAllowedGroups = mkOption {
+        type = types.listOf types.str;
+        default = [ ];
+        example = [ "wheel" ];
+        description = ''
+          A list of groupnames that the daemon will accept IPC connections
+          from.
+        '';
+      };
+
+      IPCAccessControlFiles = mkOption {
+        type = types.path;
+        default = "/var/lib/usbguard/IPCAccessControl.d/";
+        description = ''
+          The files at this location will be interpreted by the daemon as IPC
+          access control definition files. See the IPC ACCESS CONTROL section
+          in <citerefentry><refentrytitle>usbguard-daemon.conf</refentrytitle>
+          <manvolnum>5</manvolnum></citerefentry> for more details.
+        '';
+      };
+
+      deviceRulesWithPort = mkOption {
+        type = types.bool;
+        default = false;
+        description = ''
+          Generate device specific rules including the "via-port" attribute.
+        '';
+      };
+
+      auditFilePath = mkOption {
+        type = types.path;
+        default = "/var/log/usbguard/usbguard-audit.log";
+        description = ''
+          USBGuard audit events log file path.
+        '';
+      };
+    };
+  };
+
+
+  ###### implementation
+
+  config = mkIf cfg.enable {
+
+    environment.systemPackages = [ pkgs.usbguard ];
+
+    systemd.services.usbguard = {
+      description = "USBGuard daemon";
+
+      wantedBy = [ "basic.target" ];
+      wants = [ "systemd-udevd.service" "local-fs.target" ];
+
+      # make sure an empty rule file and required directories exist
+      preStart = ''mkdir -p $(dirname "${cfg.ruleFile}") "${cfg.IPCAccessControlFiles}" && ([ -f "${cfg.ruleFile}" ] || touch ${cfg.ruleFile})'';
+
+      serviceConfig = {
+        Type = "simple";
+        ExecStart = ''${pkgs.usbguard}/bin/usbguard-daemon -d -k -c ${daemonConfFile}'';
+        Restart = "on-failure";
+      };
+    };
+  };
+}
diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index ade0ba531cf..8aa7ad8e391 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -102,7 +102,7 @@ in {
 
   config = mkIf cfg.enable {
 
-    environment.systemPackages = with pkgs; [ libvirt netcat-openbsd ];
+    environment.systemPackages = with pkgs; [ libvirt netcat-openbsd qemu_kvm ];
 
     boot.kernelModules = [ "tun" ];
 
diff --git a/pkgs/applications/audio/abcde/default.nix b/pkgs/applications/audio/abcde/default.nix
index 6cb1ae6de71..a23af5b5caf 100644
--- a/pkgs/applications/audio/abcde/default.nix
+++ b/pkgs/applications/audio/abcde/default.nix
@@ -3,13 +3,13 @@
 , perl, DigestSHA, MusicBrainz, MusicBrainzDiscID
 , makeWrapper }:
 
-let version = "2.7.2";
+let version = "2.8.1";
 in
   stdenv.mkDerivation {
     name = "abcde-${version}";
     src = fetchurl {
       url = "http://abcde.einval.com/download/abcde-${version}.tar.gz";
-      sha256 = "1pakpi41k8yd780mfp0snhia6mmwjwxk9lcrq6gynimch8b8hfda";
+      sha256 = "0f9bjs0phk23vry7gvh0cll9vl6kmc1y4fwwh762scfdvpbp3774";
     };
 
     # FIXME: This package does not support `distmp3', `eject', etc.
diff --git a/pkgs/applications/audio/clementine/default.nix b/pkgs/applications/audio/clementine/default.nix
index 5b0d285f82d..d916b8957e6 100644
--- a/pkgs/applications/audio/clementine/default.nix
+++ b/pkgs/applications/audio/clementine/default.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, boost, cmake, chromaprint, gettext, gst_all_1, liblastfm
 , qt4, taglib, fftw, glew, qjson, sqlite, libgpod, libplist, usbmuxd, libmtp
-, libpulseaudio, gvfs, libcdio, libechonest, libspotify, pcre, protobuf
+, libpulseaudio, gvfs, libcdio, libechonest, libspotify, pcre, projectm, protobuf
 , qca2, pkgconfig, sparsehash, config, makeWrapper, runCommand, gst_plugins }:
 
 let
@@ -26,9 +26,10 @@ let
     ./clementine-spotify-blob-remove-from-build.patch
   ];
 
+  nativeBuildInputs = [ cmake pkgconfig ];
+
   buildInputs = [
     boost
-    cmake
     chromaprint
     fftw
     gettext
@@ -40,7 +41,7 @@ let
     liblastfm
     libpulseaudio
     pcre
-    pkgconfig
+    projectm
     protobuf
     qca2
     qjson
@@ -55,7 +56,10 @@ let
 
   free = stdenv.mkDerivation {
     name = "clementine-free-${version}";
-    inherit patches src buildInputs;
+    inherit src patches nativeBuildInputs buildInputs;
+
+    cmakeFlags = [ "-DUSE_SYSTEM_PROJECTM=ON" ];
+
     enableParallelBuilding = true;
     postPatch = ''
       sed -i src/CMakeLists.txt \
@@ -76,7 +80,7 @@ let
   blob = stdenv.mkDerivation {
     name = "clementine-blob-${version}";
     # Use the same patches and sources as Clementine
-    inherit src;
+    inherit src nativeBuildInputs;
 
     patches = [
       ./clementine-spotify-blob.patch
@@ -114,15 +118,13 @@ runCommand "clementine-${version}"
   dontPatchELF = true;
   dontStrip = true;
   meta = {
-    homepage = http://www.clementine-player.org;
     description = "A multiplatform music player"
       + " (" + (optionalString withSpotify "with Spotify, ")
       + "with gstreamer plugins: "
       + concatStrings (intersperse ", " (map (x: x.name) gst_plugins))
       + ")";
     license = licenses.gpl3Plus;
-    platforms = platforms.linux;
-    maintainers = [ maintainers.ttuegel ];
+    inherit (free.meta) homepage platforms maintainers;
   };
 }
 ''
diff --git a/pkgs/applications/audio/drumkv1/default.nix b/pkgs/applications/audio/drumkv1/default.nix
index 064feeb02a3..fb62b6ea3de 100644
--- a/pkgs/applications/audio/drumkv1/default.nix
+++ b/pkgs/applications/audio/drumkv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "drumkv1-${version}";
-  version = "0.8.1";
+  version = "0.8.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/drumkv1/${name}.tar.gz";
-    sha256 = "0l6kjb1q9vslwy56836a0c65mf8z8ycam5vzz3k4qvd8g74bs1zq";
+    sha256 = "0qqpklzy4wgw9jy0v2810j06712q90bwc69fp7da82536ba058a9";
   };
 
   buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools ];
diff --git a/pkgs/applications/audio/google-play-music-desktop-player/default.nix b/pkgs/applications/audio/google-play-music-desktop-player/default.nix
index ba9bd0338f5..9d9af631183 100644
--- a/pkgs/applications/audio/google-play-music-desktop-player/default.nix
+++ b/pkgs/applications/audio/google-play-music-desktop-player/default.nix
@@ -4,7 +4,7 @@
 }:
 
 let
-  version = "4.4.0";
+  version = "4.4.1";
 
   deps = [
     alsaLib
@@ -46,7 +46,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/releases/download/v${version}/google-play-music-desktop-player_${version}_amd64.deb";
-    sha256 = "01a52rsp0a9k47mm3wqnhnmlnd7fw6xmdrn882msldijjgwsq5cc";
+    sha256 = "0jqgawgij6jxf3zy3glviqj6s34mq7d756syg2c7kk1gkqkwgdpw";
   };
 
   dontBuild = true;
diff --git a/pkgs/applications/audio/guitarix/default.nix b/pkgs/applications/audio/guitarix/default.nix
index 6073008d541..b149aab06e1 100644
--- a/pkgs/applications/audio/guitarix/default.nix
+++ b/pkgs/applications/audio/guitarix/default.nix
@@ -12,11 +12,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "guitarix-${version}";
-  version = "0.35.3";
+  version = "0.35.6";
 
   src = fetchurl {
     url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
-    sha256 = "0pvw4ijkq6lcn45vrif9b4mqmgzi0qg1dp5b33kb5zan6n1aci4j";
+    sha256 = "0ffvfnvhj6vz73zsrpi88hs69ys4zskm847zf825dl2r39n9nn41";
   };
 
   nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 ];
diff --git a/pkgs/applications/audio/i-score/default.nix b/pkgs/applications/audio/i-score/default.nix
index 1a47b74e21c..eb2b2ca0702 100644
--- a/pkgs/applications/audio/i-score/default.nix
+++ b/pkgs/applications/audio/i-score/default.nix
@@ -67,10 +67,6 @@ stdenv.mkDerivation rec {
     export CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH:$(echo "${jamomacore}/jamoma/share/cmake/Jamoma")"
   '';
 
-  preBuild = ''
-    ninja
-  '';
-
   installPhase = ''
     cmake --build . --target install
   '';
diff --git a/pkgs/applications/audio/padthv1/default.nix b/pkgs/applications/audio/padthv1/default.nix
new file mode 100644
index 00000000000..820ff385c10
--- /dev/null
+++ b/pkgs/applications/audio/padthv1/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl, pkgconfig, libjack2, alsaLib, libsndfile, liblo, lv2, qt5, fftw }:
+
+stdenv.mkDerivation rec {
+  name = "padthv1-${version}";
+  version = "0.8.4";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/padthv1/${name}.tar.gz";
+    sha256 = "1p6wfgh90h7gj1j3hlvwik3zj07xamkxbya85va2lsj6fkkkk20r";
+  };
+
+  buildInputs = [ libjack2 alsaLib libsndfile liblo lv2 qt5.qtbase qt5.qttools fftw ];
+
+  nativeBuildInputs = [ pkgconfig ];
+
+  meta = with stdenv.lib; {
+    description = "polyphonic additive synthesizer";
+    homepage = http://padthv1.sourceforge.net/;
+    license = licenses.gpl2Plus;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.magnetophon ];
+  };
+}
diff --git a/pkgs/applications/audio/projectm/default.nix b/pkgs/applications/audio/projectm/default.nix
index 7b103286fe2..e7aace763a1 100644
--- a/pkgs/applications/audio/projectm/default.nix
+++ b/pkgs/applications/audio/projectm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, cmake
+{ stdenv, fetchurl, fetchpatch, pkgconfig, cmake
 , glew, ftgl, ttf_bitstream_vera
 , withQt ? true, qt4
 , withLibvisual ? false, libvisual, SDL
@@ -24,7 +24,13 @@ stdenv.mkDerivation {
     sha256 = "1vh6jk68a0jdb6qwppb6f8cbgmhnv2ba3bcavzfd6sq06gq08cji";
   };
 
+  patch_gcc6 = fetchpatch {
+    url = https://raw.githubusercontent.com/gentoo/gentoo/45abd63abc6644b6e177c057b5b42d894dbf8e29/media-libs/libprojectm/files/libprojectm-2.1.0-fix-c++14.patch;
+    sha256 = "1i50scxv1jlqvb3jm3sql89a7wqckxhlpvnhz20vvmm1kii6lrsn";
+  };
+
   patchPhase = ''
+    patch -d src/libprojectM -p1 -i "$patch_gcc6"
     sed -i 's:''${LIBVISUAL_PLUGINSDIR}:''${CMAKE_INSTALL_PREFIX}/lib/libvisual-0.4:' \
       src/projectM-libvisual/CMakeLists.txt
   '';
diff --git a/pkgs/applications/audio/samplv1/default.nix b/pkgs/applications/audio/samplv1/default.nix
index 10f06e16cf4..1eb366d6bbd 100644
--- a/pkgs/applications/audio/samplv1/default.nix
+++ b/pkgs/applications/audio/samplv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "samplv1-${version}";
-  version = "0.8.0";
+  version = "0.8.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/samplv1/${name}.tar.gz";
-    sha256 = "0j3hkmd9q0bw9b7nk9cssqywlrishkd1n790a9vq6gh3pdc5sf3r";
+    sha256 = "107p2xsj066q2bil0xcgqrrn7lawp02wzf7qmlajcbnd79jhsi6i";
   };
 
   buildInputs = [ libjack2 alsaLib liblo libsndfile lv2 qt5.qtbase qt5.qttools];
diff --git a/pkgs/applications/audio/synthv1/default.nix b/pkgs/applications/audio/synthv1/default.nix
index c7932a132d7..2f5a4ebb43f 100644
--- a/pkgs/applications/audio/synthv1/default.nix
+++ b/pkgs/applications/audio/synthv1/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "synthv1-${version}";
-  version = "0.8.0";
+  version = "0.8.4";
 
   src = fetchurl {
     url = "mirror://sourceforge/synthv1/${name}.tar.gz";
-    sha256 = "155pfyhr6d35ciw95pbxlqy7751cmij8j5d849rvblqbjzyzb5qx";
+    sha256 = "0awk2zx0xa6vl6ah24zz0k2mwsx50hh5g1rh32mp790fp4x7l5s8";
   };
 
   buildInputs = [ qt5.qtbase qt5.qttools libjack2 alsaLib liblo lv2 ];
diff --git a/pkgs/applications/audio/yoshimi/default.nix b/pkgs/applications/audio/yoshimi/default.nix
index ef10bfed9b6..2b79718809f 100644
--- a/pkgs/applications/audio/yoshimi/default.nix
+++ b/pkgs/applications/audio/yoshimi/default.nix
@@ -6,11 +6,11 @@ assert stdenv ? glibc;
 
 stdenv.mkDerivation  rec {
   name = "yoshimi-${version}";
-  version = "1.5.0";
+  version = "1.5.3";
 
   src = fetchurl {
     url = "mirror://sourceforge/yoshimi/${name}.tar.bz2";
-    sha256 = "10s1i18xlmvqfrnr0zn2mj2b28i7p62dlqzzzkmpaapqj1gsgpz5";
+    sha256 = "0sns35pyw2f74xrv1fxiyf9g9415kvh2rrbdjd60hsiv584nlari";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/editors/android-studio/packages.nix b/pkgs/applications/editors/android-studio/packages.nix
index 70755098497..471f78f0c07 100644
--- a/pkgs/applications/editors/android-studio/packages.nix
+++ b/pkgs/applications/editors/android-studio/packages.nix
@@ -27,9 +27,9 @@ in rec {
 
   preview = mkStudio rec {
     pname = "android-studio-preview";
-    version = "3.0.0.11"; # "Android Studio 3.0 Beta 3"
-    build = "171.4294784";
-    sha256Hash = "11m939hpwnrrz0grnc1x1ff19yjnwzx5w1dzaw9hpm8ylx692mrf";
+    version = "3.0.0.10"; # "Android Studio 3.0 Beta 2"
+    build = "171.4263559";
+    sha256Hash = "0bya69qa50s6dbvlzb198b5w6ixs21y6b56v3v1xjb3kndf9y44w";
 
     meta = stable.meta // {
       description = "The Official IDE for Android (preview version)";
diff --git a/pkgs/applications/editors/atom/default.nix b/pkgs/applications/editors/atom/default.nix
index 07728ed7f3b..e44d919ece6 100644
--- a/pkgs/applications/editors/atom/default.nix
+++ b/pkgs/applications/editors/atom/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "atom-${version}";
-  version = "1.19.2";
+  version = "1.19.3";
 
   src = fetchurl {
     url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
-    sha256 = "0bfhcxhjsa7p35s5dz3zjxm4wc802m3k137p04l9anr3v5hrgqmb";
+    sha256 = "0cms0zgxlzrm0sdqm97qdvrmvjcdcrbqi3bw66xabgx365pkry7z";
     name = "${name}.deb";
   };
 
diff --git a/pkgs/applications/editors/jetbrains/default.nix b/pkgs/applications/editors/jetbrains/default.nix
index ea1fc1022fd..95f3c0801d2 100644
--- a/pkgs/applications/editors/jetbrains/default.nix
+++ b/pkgs/applications/editors/jetbrains/default.nix
@@ -320,15 +320,15 @@ in
 
   phpstorm = buildPhpStorm rec {
     name = "phpstorm-${version}";
-    version = "2017.1.4";
+    version = "2017.2.1"; /* updated by script */
     description = "Professional IDE for Web and PHP developers";
     license = stdenv.lib.licenses.unfree;
     src = fetchurl {
       url = "https://download.jetbrains.com/webide/PhpStorm-${version}.tar.gz";
-      sha256 = "0zrbcziznz6dwh56snr27752xcsnl2gsxzi6jiraplkd92f2xlaf";
+      sha256 = "2f1af9ef6e9cda25a809a19a25f2d4fbaef00edf9d1d5a195572ab5e04e71e5e"; /* updated by script */
     };
     wmClass = "jetbrains-phpstorm";
-    update-channel = "PS2017.1";
+    update-channel = "PS2017.2";
   };
 
   phpstorm10 = buildPhpStorm rec {
diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix
index 5524f12077f..cd99861ea7b 100644
--- a/pkgs/applications/graphics/ImageMagick/7.0.nix
+++ b/pkgs/applications/graphics/ImageMagick/7.0.nix
@@ -10,6 +10,7 @@ let
     if stdenv.system == "i686-linux" then "i686"
     else if stdenv.system == "x86_64-linux" || stdenv.system == "x86_64-darwin" then "x86-64"
     else if stdenv.system == "armv7l-linux" then "armv7l"
+    else if stdenv.system == "aarch64-linux" then "aarch64"
     else throw "ImageMagick is not supported on this platform.";
 
   cfg = {
diff --git a/pkgs/applications/graphics/ImageMagick/default.nix b/pkgs/applications/graphics/ImageMagick/default.nix
index e31c249bb93..1cf08f286ef 100644
--- a/pkgs/applications/graphics/ImageMagick/default.nix
+++ b/pkgs/applications/graphics/ImageMagick/default.nix
@@ -10,6 +10,7 @@ let
     if stdenv.system == "i686-linux" then "i686"
     else if stdenv.system == "x86_64-linux" || stdenv.system == "x86_64-darwin" then "x86-64"
     else if stdenv.system == "armv7l-linux" then "armv7l"
+    else if stdenv.system == "aarch64-linux" then "aarch64"
     else throw "ImageMagick is not supported on this platform.";
 
   cfg = {
diff --git a/pkgs/applications/graphics/ao/default.nix b/pkgs/applications/graphics/ao/default.nix
index 2bba73fae1a..7396fdc045f 100644
--- a/pkgs/applications/graphics/ao/default.nix
+++ b/pkgs/applications/graphics/ao/default.nix
@@ -18,7 +18,6 @@ stdenv.mkDerivation rec {
   };
 
   cmakeFlags = "-G Ninja";
-  buildPhase = "ninja";
   installPhase = ''
     ninja install
     cd ..
diff --git a/pkgs/applications/graphics/draftsight/default.nix b/pkgs/applications/graphics/draftsight/default.nix
index a1cf91989eb..17334c5b366 100644
--- a/pkgs/applications/graphics/draftsight/default.nix
+++ b/pkgs/applications/graphics/draftsight/default.nix
@@ -6,7 +6,7 @@
 
 assert stdenv.system == "x86_64-linux";
 
-let version = "2017-SP1"; in
+let version = "2017-SP2"; in
 stdenv.mkDerivation {
   name = "draftsight-${version}";
 
@@ -56,7 +56,7 @@ stdenv.mkDerivation {
   src = requireFile {
     name = "draftSight.deb";
     url = "https://www.3ds.com/?eID=3ds_brand_download&uid=41&pidDown=13426&L=0";
-    sha256 = "0s7b74685r0961kd59hxpdp9s5yhvzx8307imsxm66f99s8rswdv";
+    sha256 = "04i3dqza6y4p2059pqg5inp3qzr5jmiqplzzk7h1a6gh380v1rbr";
   };
 
   libPath = stdenv.lib.makeLibraryPath [ gcc.cc mesa xdg_utils
diff --git a/pkgs/applications/kde/akonadiconsole.nix b/pkgs/applications/kde/akonadiconsole.nix
index 844cbc7d17f..3d7bf26c794 100644
--- a/pkgs/applications/kde/akonadiconsole.nix
+++ b/pkgs/applications/kde/akonadiconsole.nix
@@ -2,7 +2,7 @@
   mkDerivation, lib, kdepimTeam,
   extra-cmake-modules, kdoctools,
   akonadi, akonadi-contacts, calendarsupport, kcalcore, kcompletion,
-  kconfigwidgets, kcontacts, kdbusaddons, kitemmodels, kpimtextedit,
+  kconfigwidgets, kcontacts, kdbusaddons, kitemmodels, kpimtextedit, libkdepim,
   ktextwidgets, kxmlgui, messagelib, qtbase,
 }:
 
@@ -16,6 +16,6 @@ mkDerivation {
   buildInputs = [
     akonadi akonadi-contacts calendarsupport kcalcore kcompletion kconfigwidgets
     kcontacts kdbusaddons kitemmodels kpimtextedit ktextwidgets kxmlgui
-    messagelib qtbase
+    messagelib qtbase libkdepim
   ];
 }
diff --git a/pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch b/pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch
index 76b65a44475..6275bb84c17 100644
--- a/pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch
+++ b/pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch
@@ -44,17 +44,6 @@ Index: grantleetheme-17.04.0/src/grantleetheme.cpp
      loader->setTheme(dirName);
  
      if (!sEngine) {
-@@ -102,9 +105,7 @@ QString ThemePrivate::errorTemplate(cons
-     Grantlee::Context ctx = createContext();
-     ctx.insert(QStringLiteral("error"), reason);
-     ctx.insert(QStringLiteral("templateName"), origTemplateName);
--    const QString errorString = failedTemplate
--            ? failedTemplate->errorString()
--            : QStringLiteral("(null template)");
-+    const QString errorString = failedTemplate->errorString();
-     ctx.insert(QStringLiteral("errorMessage"), errorString);
-     return tpl->render(&ctx);
- }
 @@ -122,7 +123,7 @@ Theme::Theme(const QString &themePath, c
      KConfigGroup group(&config, QStringLiteral("Desktop Entry"));
      if (group.isValid()) {
diff --git a/pkgs/applications/kde/grantleetheme/grantleetheme_check_null.patch b/pkgs/applications/kde/grantleetheme/grantleetheme_check_null.patch
deleted file mode 100644
index 730d5b0fe26..00000000000
--- a/pkgs/applications/kde/grantleetheme/grantleetheme_check_null.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-diff --git a/src/grantleetheme.cpp b/src/grantleetheme.cpp
-index b86fc3a..8af72f4 100644
---- a/src/grantleetheme.cpp
-+++ b/src/grantleetheme.cpp
-@@ -102,7 +102,10 @@ QString ThemePrivate::errorTemplate(const QString &reason,
-     Grantlee::Context ctx = createContext();
-     ctx.insert(QStringLiteral("error"), reason);
-     ctx.insert(QStringLiteral("templateName"), origTemplateName);
--    ctx.insert(QStringLiteral("errorMessage"), failedTemplate->errorString());
-+    const QString errorString = failedTemplate
-+            ? failedTemplate->errorString()
-+            : QStringLiteral("(null template)");
-+    ctx.insert(QStringLiteral("errorMessage"), errorString);
-     return tpl->render(&ctx);
- }
- 
-@@ -208,7 +211,7 @@ QString Theme::render(const QString &templateName, const QVariantHash &data, con
-     }
- 
-     Grantlee::Template tpl = d->loader->loadByName(templateName, ThemePrivate::sEngine);
--    if (tpl->error()) {
-+    if (!tpl || tpl->error()) {
-         return d->errorTemplate(i18n("Template parsing error"), templateName, tpl);
-     }
- 
diff --git a/pkgs/applications/kde/grantleetheme/series b/pkgs/applications/kde/grantleetheme/series
index 5c38848de71..9095599ea56 100644
--- a/pkgs/applications/kde/grantleetheme/series
+++ b/pkgs/applications/kde/grantleetheme/series
@@ -1,2 +1 @@
-grantleetheme_check_null.patch
 grantlee-merge-theme-dirs.patch
diff --git a/pkgs/applications/kde/k3b.nix b/pkgs/applications/kde/k3b.nix
index c70c3ea877b..b032de84879 100644
--- a/pkgs/applications/kde/k3b.nix
+++ b/pkgs/applications/kde/k3b.nix
@@ -1,11 +1,11 @@
 { mkDerivation, lib
-, extra-cmake-modules, kdoctools, makeWrapper
+, extra-cmake-modules, kdoctools, makeWrapper, shared_mime_info
 , qtwebkit
 , libkcddb, karchive, kcmutils, kfilemetadata, knewstuff, knotifyconfig, solid, kxmlgui
 , flac, lame, libmad, libmpcdec, libvorbis
 , libsamplerate, libsndfile, taglib
 , cdparanoia, cdrdao, cdrtools, dvdplusrwtools, libburn, libdvdcss, libdvdread, vcdimager
-, ffmpeg, libmusicbrainz2, normalize, sox, transcode, shared_mime_info, kinit
+, ffmpeg, libmusicbrainz3, normalize, sox, transcode, kinit
 }:
 
 mkDerivation {
@@ -15,7 +15,7 @@ mkDerivation {
     maintainers = with maintainers; [ sander phreedom ];
     platforms = platforms.linux;
   };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper shared_mime_info ];
+  nativeBuildInputs = [ extra-cmake-modules kdoctools makeWrapper ];
   propagatedBuildInputs = [
     # qt
     qtwebkit
@@ -28,7 +28,7 @@ mkDerivation {
     # cd/dvd
     cdparanoia libdvdcss libdvdread
     # others
-    ffmpeg libmusicbrainz2 shared_mime_info
+    ffmpeg libmusicbrainz3 shared_mime_info
   ];
   propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
   postFixup =
diff --git a/pkgs/applications/kde/kdepim-runtime.nix b/pkgs/applications/kde/kdepim-runtime.nix
index 01683a6315c..0fde861a023 100644
--- a/pkgs/applications/kde/kdepim-runtime.nix
+++ b/pkgs/applications/kde/kdepim-runtime.nix
@@ -5,7 +5,7 @@
   akonadi, akonadi-calendar, akonadi-contacts, akonadi-mime, akonadi-notes,
   kalarmcal, kcalutils, kcontacts, kdav, kdelibs4support, kidentitymanagement,
   kimap, kmailtransport, kmbox, kmime, knotifications, knotifyconfig,
-  qtwebengine,
+  pimcommon, qtwebengine,
 }:
 
 mkDerivation {
@@ -19,6 +19,7 @@ mkDerivation {
     akonadi akonadi-calendar akonadi-contacts akonadi-mime akonadi-notes
     kalarmcal kcalutils kcontacts kdav kdelibs4support kidentitymanagement kimap
     kmailtransport kmbox kmime knotifications knotifyconfig qtwebengine
+    pimcommon
   ];
   # Attempts to build some files before dependencies have been generated
   enableParallelBuilding = false;
diff --git a/pkgs/applications/kde/kmail.nix b/pkgs/applications/kde/kmail.nix
index ec8c9892779..acb200c5970 100644
--- a/pkgs/applications/kde/kmail.nix
+++ b/pkgs/applications/kde/kmail.nix
@@ -2,7 +2,7 @@
   mkDerivation, lib, kdepimTeam,
   extra-cmake-modules, kdoctools,
   akonadi-search, kbookmarks, kcalutils, kcmutils, kcompletion, kconfig,
-  kconfigwidgets, kcoreaddons, kdelibs4support, kdepim-apps-libs,
+  kconfigwidgets, kcoreaddons, kdelibs4support, kdepim-apps-libs, libkdepim,
   kdepim-runtime, kguiaddons, ki18n, kiconthemes, kinit, kio, kldap,
   kmail-account-wizard, kmailtransport, knotifications, knotifyconfig,
   kontactinterface, kparts, kpty, kservice, ktextwidgets, ktnef, kwallet,
@@ -20,7 +20,7 @@ mkDerivation {
   buildInputs = [
     akonadi-search kbookmarks kcalutils kcmutils kcompletion kconfig
     kconfigwidgets kcoreaddons kdelibs4support kdepim-apps-libs kguiaddons ki18n
-    kiconthemes kinit kio kldap kmail-account-wizard kmailtransport
+    kiconthemes kinit kio kldap kmail-account-wizard kmailtransport libkdepim
     knotifications knotifyconfig kontactinterface kparts kpty kservice
     ktextwidgets ktnef kwidgetsaddons kwindowsystem kxmlgui libgravatar
     libksieve mailcommon messagelib pim-sieve-editor qtscript qtwebengine
diff --git a/pkgs/applications/kde/kontact.nix b/pkgs/applications/kde/kontact.nix
index 4bbee9c3ffa..bb44762e65c 100644
--- a/pkgs/applications/kde/kontact.nix
+++ b/pkgs/applications/kde/kontact.nix
@@ -4,7 +4,7 @@
   qtwebengine,
   kcmutils, kcrash, kdbusaddons, kwindowsystem,
   akonadi, grantleetheme, kdepim-apps-libs, kontactinterface, kpimtextedit,
-  mailcommon,
+  mailcommon, libkdepim
 }:
 
 mkDerivation {
@@ -18,6 +18,6 @@ mkDerivation {
     qtwebengine
     kcmutils kcrash kdbusaddons kwindowsystem
     akonadi grantleetheme kdepim-apps-libs kontactinterface kpimtextedit
-    mailcommon
+    mailcommon libkdepim
   ];
 }
diff --git a/pkgs/applications/kde/mailcommon.nix b/pkgs/applications/kde/mailcommon.nix
index ee958d701b3..44edea8f55e 100644
--- a/pkgs/applications/kde/mailcommon.nix
+++ b/pkgs/applications/kde/mailcommon.nix
@@ -3,7 +3,7 @@
   extra-cmake-modules, kdoctools,
   akonadi, akonadi-mime, karchive, kcodecs, kcompletion, kconfigwidgets,
   kdbusaddons, kdesignerplugin, kiconthemes, kio, kitemmodels, kldap,
-  kmailtransport, kwindowsystem, mailimporter, messagelib, phonon,
+  kmailtransport, kwindowsystem, mailimporter, messagelib, phonon, libkdepim
 }:
 
 mkDerivation {
@@ -16,7 +16,7 @@ mkDerivation {
   buildInputs = [
     akonadi akonadi-mime karchive kcodecs kcompletion kconfigwidgets kdbusaddons
     kdesignerplugin kiconthemes kio kitemmodels kldap kmailtransport
-    kwindowsystem mailimporter messagelib phonon
+    kwindowsystem mailimporter messagelib phonon libkdepim
   ];
   outputs = [ "out" "dev" ];
 }
diff --git a/pkgs/applications/misc/et/default.nix b/pkgs/applications/misc/et/default.nix
new file mode 100644
index 00000000000..23b2a57ea33
--- /dev/null
+++ b/pkgs/applications/misc/et/default.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchFromGitHub, pkgconfig, libnotify, gdk_pixbuf }:
+
+stdenv.mkDerivation rec {
+  name = "et-${version}";
+  version = "2017-03-04";
+
+  src = fetchFromGitHub {
+    owner = "geistesk";
+    repo = "et";
+    rev = "151e9b6bc0d2d4f45bda8ced740ee99d0f2012f6";
+    sha256 = "1a1jdnzmal05k506bbvzlwsj2f3kql6l5xc1gdabm79y6vaf4r7s";
+  };
+
+  buildInputs = [ libnotify gdk_pixbuf ];
+  nativeBuildInputs = [ pkgconfig ];
+
+  installPhase = ''
+    mkdir -p $out/bin
+    cp et $out/bin
+    cp et-status.sh $out/bin/et-status
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Minimal libnotify-based (egg) timer for GNU/Linux";
+    homepage = https://github.com/geistesk/et;
+    license = licenses.gpl3;
+    platforms = platforms.unix;
+    maintainers = with maintainers; [ geistesk ];
+  };
+}
diff --git a/pkgs/applications/misc/fbreader/default.nix b/pkgs/applications/misc/fbreader/default.nix
index 2b193ef42cd..6cfd1e05279 100644
--- a/pkgs/applications/misc/fbreader/default.nix
+++ b/pkgs/applications/misc/fbreader/default.nix
@@ -16,11 +16,13 @@ stdenv.mkDerivation {
 
   makeFlags = "INSTALLDIR=$(out)";
 
+  NIX_CFLAGS_COMPILE = [ "-Wno-error=narrowing" ]; # since gcc-6
+
   patchPhase = ''
     # don't try to use ccache
     substituteInPlace makefiles/arch/desktop.mk \
       --replace "CCACHE = " "# CCACHE = "
-  
+
     substituteInPlace fbreader/desktop/Makefile \
       --replace "/usr/share" "$out/share"
   '';
diff --git a/pkgs/applications/misc/gqrx/default.nix b/pkgs/applications/misc/gqrx/default.nix
index 5ad03c88c64..a0672f1810f 100644
--- a/pkgs/applications/misc/gqrx/default.nix
+++ b/pkgs/applications/misc/gqrx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, qt4, qmake4Hook, gnuradio, boost, gnuradio-osmosdr
+{ stdenv, fetchFromGitHub, cmake, qtbase, qtsvg, gnuradio, boost, gnuradio-osmosdr
 # drivers (optional):
 , rtl-sdr, hackrf
 , pulseaudioSupport ? true, libpulseaudio
@@ -8,29 +8,25 @@ assert pulseaudioSupport -> libpulseaudio != null;
 
 stdenv.mkDerivation rec {
   name = "gqrx-${version}";
-  version = "2.5.3";
+  version = "2.7";
 
   src = fetchFromGitHub {
     owner = "csete";
     repo = "gqrx";
     rev = "v${version}";
-    sha256 = "02pavd1kc0gsnrl18bfa01r2f3j4j05zly4a8zwss9yrsgf8432x";
+    sha256 = "1dslb8l8ggj6vf9257c2bj0z8z1wy9c6sr2zksp5jdgf8m4j71im";
   };
 
-  nativeBuildInputs = [ qmake4Hook ];
-
+  nativeBuildInputs = [ cmake ];
   buildInputs = [
-    qt4 gnuradio boost gnuradio-osmosdr rtl-sdr hackrf
+    qtbase qtsvg gnuradio boost gnuradio-osmosdr rtl-sdr hackrf
   ] ++ stdenv.lib.optionals pulseaudioSupport [ libpulseaudio ];
 
   enableParallelBuilding = true;
 
   postInstall = ''
-    mkdir -p "$out/share/applications"
-    mkdir -p "$out/share/icons"
-
-    cp gqrx.desktop "$out/share/applications/"
-    cp resources/icons/gqrx.svg "$out/share/icons/"
+    install -vD $src/gqrx.desktop -t "$out/share/applications/"
+    install -vD $src/resources/icons/gqrx.svg -t "$out/share/icons/"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/polybar/default.nix b/pkgs/applications/misc/polybar/default.nix
index 026a1289fb6..e88a4974074 100644
--- a/pkgs/applications/misc/polybar/default.nix
+++ b/pkgs/applications/misc/polybar/default.nix
@@ -1,6 +1,6 @@
 { cairo, cmake, fetchgit, libXdmcp, libpthreadstubs, libxcb, pcre, pkgconfig
 , python2 , stdenv, xcbproto, xcbutil, xcbutilimage, xcbutilrenderutil
-, xcbutilwm, xcbutilxrm
+, xcbutilwm, xcbutilxrm, fetchpatch
 
 # optional packages-- override the variables ending in 'Support' to enable or
 # disable modules
@@ -32,13 +32,21 @@ stdenv.mkDerivation rec {
       description = "A fast and easy-to-use tool for creatin status bars.";
       longDescription = ''
         Polybar aims to help users build beautiful and highly customizable
-        status bars for their desktop environment, without the need of 
+        status bars for their desktop environment, without the need of
         having a black belt in shell scripting.
-      ''; 
+      '';
       license = licenses.mit;
       maintainers = [ maintainers.afldcr ];
       platforms = platforms.unix;
     };
+    # This patch should be removed with next stable release.
+    patches = [
+      (fetchpatch {
+        name = "polybar-remove-curlbuild.patch";
+        url = "https://github.com/jaagr/polybar/commit/d35abc7620c8f06618b4708d9a969dfa2f309e96.patch";
+        sha256 = "14xr65vsjvd51hzg9linj09w0nnixgn26dh9lqxy25bxachcyzxy";
+      })
+    ];
 
     buildInputs = [
       cairo libXdmcp libpthreadstubs libxcb pcre python2 xcbproto xcbutil
diff --git a/pkgs/applications/misc/postage/default.nix b/pkgs/applications/misc/postage/default.nix
index 17f718182e2..eeb879ee6e4 100644
--- a/pkgs/applications/misc/postage/default.nix
+++ b/pkgs/applications/misc/postage/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "postage-${version}";
-  version = "3.2.17";
+  version = "3.2.18";
 
   src = fetchFromGitHub {
     owner  = "workflowproducts";
     repo   = "postage";
     rev    = "eV${version}";
-    sha256 = "1c9ss5vx8s05cgw68z7y224qq8z8kz8rxfgcayd2ny200kqyn5bl";
+    sha256 = "1kdg8pw2vxwkxw3b6dim4s740s60j3iyrh96524wi3lqkkq98krn";
   };
 
   buildInputs = [ postgresql openssl ];
diff --git a/pkgs/applications/misc/sqlmap/default.nix b/pkgs/applications/misc/sqlmap/default.nix
new file mode 100644
index 00000000000..f9150eb33af
--- /dev/null
+++ b/pkgs/applications/misc/sqlmap/default.nix
@@ -0,0 +1,19 @@
+{ stdenv, pythonPackages, pkgs }:
+
+pythonPackages.buildPythonPackage {
+  name = "sqlmap-1.1";
+
+  disabled = pythonPackages.isPy3k;
+
+  src = pkgs.fetchurl {
+    url = "mirror://pypi/s/sqlmap/sqlmap-1.1.tar.gz";
+    sha256 = "0px72p52w76cylr68i69kz0kagmbrslgx2221yi77322fih0mngi";
+  };
+
+  meta = with pkgs.stdenv.lib; {
+    homepage = "http://sqlmap.org";
+    license = licenses.gpl2;
+    description = "Automatic SQL injection and database takeover tool";
+    maintainers = with stdenv.lib.maintainers; [ bennofs ];
+  };
+}
diff --git a/pkgs/applications/misc/styx/default.nix b/pkgs/applications/misc/styx/default.nix
index 8e3b0e747ae..2cdf047a10f 100644
--- a/pkgs/applications/misc/styx/default.nix
+++ b/pkgs/applications/misc/styx/default.nix
@@ -4,22 +4,22 @@
 
 stdenv.mkDerivation rec {
   name    = "styx-${version}";
-  version = "0.6.0";
+  version = "0.7.0";
 
   src = fetchFromGitHub {
     owner  = "styx-static";
     repo   = "styx";
     rev    = "v${version}";
-    sha256 = "1dl6zmic8bv17f3ib8by66c2fj7izlnv9dh2cfa2m0ipkxk930vk";
+    sha256 = "044zpj92w96csaddf1qnnc2w2w9iq4b7rzlqqsqnd1s0a87lm1qd";
   };
 
-  setSourceRoot = "cd styx-*/src; export sourceRoot=`pwd`";
-
   server = "${caddy.bin}/bin/caddy";
   linkcheck = "${linkchecker}/bin/linkchecker";
 
   nativeBuildInputs = [ asciidoctor ];
 
+  outputs = [ "out" "lib" "themes" ];
+
   propagatedBuildInputs = [
     file
     lessc
@@ -30,39 +30,42 @@ stdenv.mkDerivation rec {
     (python27.withPackages (ps: [ ps.parsimonious ]))
   ];
 
-  outputs = [ "out" "lib" ];
-
   installPhase = ''
     mkdir $out
-    install -D -m 777 styx.sh $out/bin/styx
+    install -D -m 777 src/styx.sh $out/bin/styx
 
-    mkdir -p $out/share/styx
-    cp -r scaffold $out/share/styx
-    cp -r nix $out/share/styx
+    mkdir -p $out/share/styx-src
+    cp -r ./* $out/share/styx-src
 
     mkdir -p $out/share/doc/styx
-    asciidoctor doc/index.adoc       -o $out/share/doc/styx/index.html
-    asciidoctor doc/styx-themes.adoc -o $out/share/doc/styx/styx-themes.html
-    asciidoctor doc/library.adoc     -o $out/share/doc/styx/library.html
-    cp -r doc/highlight $out/share/doc/styx/
-    cp -r doc/imgs $out/share/doc/styx/
-    cp -r tools $out/share
+    asciidoctor src/doc/index.adoc       -o $out/share/doc/styx/index.html
+    asciidoctor src/doc/styx-themes.adoc -o $out/share/doc/styx/styx-themes.html
+    asciidoctor src/doc/library.adoc     -o $out/share/doc/styx/library.html
+    cp -r src/doc/highlight $out/share/doc/styx/
+    cp -r src/doc/imgs $out/share/doc/styx/
 
     substituteAllInPlace $out/bin/styx
     substituteAllInPlace $out/share/doc/styx/index.html
     substituteAllInPlace $out/share/doc/styx/styx-themes.html
     substituteAllInPlace $out/share/doc/styx/library.html
 
+    mkdir -p $out/share/styx/scaffold
+    cp -r src/scaffold $out/share/styx
+    cp -r src/tools $out/share/styx
+
     mkdir $lib
-    cp -r lib/* $lib
+    cp -r src/lib/* $lib
+
+    mkdir $themes
+    cp -r themes/* $themes
   '';
 
   meta = with stdenv.lib; {
-    description = "Nix based static site generator";
-    maintainers = with maintainers; [ ericsagnes ];
-    homepage = https://styx-static.github.io/styx-site/;
+    description  = "Nix based static site generator";
+    maintainers  = with maintainers; [ ericsagnes ];
+    homepage     = https://styx-static.github.io/styx-site/;
     downloadPage = https://github.com/styx-static/styx/;
-    platforms = platforms.all;
-    license = licenses.mit;
+    platforms    = platforms.all;
+    license      = licenses.mit;
   };
 }
diff --git a/pkgs/applications/misc/styx/themes.nix b/pkgs/applications/misc/styx/themes.nix
deleted file mode 100644
index e0bea3b23b6..00000000000
--- a/pkgs/applications/misc/styx/themes.nix
+++ /dev/null
@@ -1,104 +0,0 @@
-{ fetchFromGitHub, stdenv }:
-
-let
-
-  mkThemeDrv = args: stdenv.mkDerivation {
-    name = "styx-theme-${args.themeName}-${args.version}";
-
-    src = fetchFromGitHub ({
-      owner = "styx-static";
-      repo  = "styx-theme-${args.themeName}";
-    } // args.src);
-
-    installPhase = ''
-      mkdir $out
-      cp -r * $out/
-    '';
-
-    preferLocalBuild = true;
-
-    meta = with stdenv.lib; {
-      maintainer  = with maintainers; [ ericsagnes ];
-      description = "${args.themeName} theme for styx";
-      platforms   = platforms.all;
-    } // args.meta;
-  };
-
-in
-{
-  agency = mkThemeDrv rec {
-    themeName = "agency";
-    version   = "0.6.0";
-    src = {
-      rev    = "v${version}";
-      sha256 = "1i9bajzgmxd3ffvgic6wwnqijsgkfr2mfdijkgw9yf3bxcdq5cb6";
-    };
-    meta = {
-      license = stdenv.lib.licenses.asl20;
-      longDescription = ''
-        Agency Theme is a one page portfolio for companies and freelancers.
-        This theme features several content sections, a responsive portfolio
-        grid with hover effects, full page portfolio item modals, a timeline,
-        and a contact form.
-      '';
-    };
-  };
-
-  generic-templates = mkThemeDrv rec {
-    themeName = "generic-templates";
-    version   = "0.6.0";
-    src = {
-      rev    = "v${version}";
-      sha256 = "0wr2687pffczn0sns1xvqxr2gpf5v9j64zbj6q9f7km6bq0zpiiy";
-    };
-    meta = {
-      license = stdenv.lib.licenses.mit;
-    };
-  };
-
-  hyde = mkThemeDrv rec {
-    themeName = "hyde";
-    version   = "0.6.0";
-    src = {
-      rev    = "v${version}";
-      sha256 = "0yca76p297ymxd049fkcpw8bca5b9yvv36707z31jbijriy50zxb";
-    };
-    meta = {
-      license = stdenv.lib.licenses.mit;
-      longDescription = ''
-        Port of the Jekyll Hyde theme to styx; Hyde is a brazen two-column
-        Styx theme that pairs a prominent sidebar with uncomplicated content.
-      '';
-    };
-  };
-
-  orbit = mkThemeDrv rec {
-    themeName = "orbit";
-    version   = "0.6.0";
-    src = {
-      rev    = "v${version}";
-      sha256 = "0qdx1r7dcycr5hzl9ix70pl4xf0426ghpi1lgh61zdpdhcch0xfi";
-    };
-    meta = {
-      license = stdenv.lib.licenses.cc-by-30;
-      longDescription = ''
-        Orbit is a free resume/CV template designed for developers.
-      '';
-    };
-  };
-
-  showcase = mkThemeDrv rec {
-    themeName = "showcase";
-    version   = "0.6.0";
-    src = {
-      rev    = "v${version}";
-      sha256 = "1jfhw49yag8l1zr69l01y1p4p88waig3xv3b6c3mfxc8jrchp7pb";
-    };
-    meta = {
-      license = stdenv.lib.licenses.mit;
-      longDescription = ''
-        Theme that show most of styx functionalities with a basic design.
-      '';
-    };
-  };
-}
diff --git a/pkgs/applications/misc/synergy/default.nix b/pkgs/applications/misc/synergy/default.nix
index 89d493bcd01..3ecc772feaa 100644
--- a/pkgs/applications/misc/synergy/default.nix
+++ b/pkgs/applications/misc/synergy/default.nix
@@ -16,9 +16,15 @@ stdenv.mkDerivation rec {
 
   patches = [ ./openssl-1.1.patch ];
 
+  patch_gcc6 = fetchpatch {
+    url = https://raw.githubusercontent.com/gentoo/gentoo/20e2bff3697ebf5f291e9907b34aae3074a36b53/dev-cpp/gmock/files/gmock-1.7.0-gcc6.patch;
+    sha256 = "0j3f381x1lf8qci9pfv6mliggl8qs2w05v5lw3rs3gn7aibg174d";
+  };
+
   postPatch = ''
     ${unzip}/bin/unzip -d ext/gmock-1.6.0 ext/gmock-1.6.0.zip
     ${unzip}/bin/unzip -d ext/gtest-1.6.0 ext/gtest-1.6.0.zip
+    patch -d ext/gmock-1.6.0 -p1 -i ${patch_gcc6}
   ''
     # We have XRRNotifyEvent (libXrandr), but with the upstream CMakeLists.txt
     # it's not able to find it (it's trying to search the store path of libX11
diff --git a/pkgs/applications/misc/taskwarrior/default.nix b/pkgs/applications/misc/taskwarrior/default.nix
index 841e0a494e4..74ef55ee8cc 100644
--- a/pkgs/applications/misc/taskwarrior/default.nix
+++ b/pkgs/applications/misc/taskwarrior/default.nix
@@ -18,8 +18,8 @@ stdenv.mkDerivation rec {
   postInstall = ''
     mkdir -p "$out/share/bash-completion/completions"
     ln -s "../../doc/task/scripts/bash/task.sh" "$out/share/bash-completion/completions/"
-    mkdir -p "$out/etc/fish/completions"
-    ln -s "../../../share/doc/task/scripts/fish/task.fish" "$out/etc/fish/completions/"
+    mkdir -p "$out/share/fish/vendor_completions.d"
+    ln -s "../../../share/doc/task/scripts/fish/task.fish" "$out/share/fish/vendor_completions.d/"
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/misc/xterm/default.nix b/pkgs/applications/misc/xterm/default.nix
index 22e0466df36..9e64557838e 100644
--- a/pkgs/applications/misc/xterm/default.nix
+++ b/pkgs/applications/misc/xterm/default.nix
@@ -3,11 +3,11 @@
 }:
 
 stdenv.mkDerivation rec {
-  name = "xterm-327";
+  name = "xterm-330";
 
   src = fetchurl {
-    url = "ftp://invisible-island.net/xterm/${name}.tgz";
-    sha256 = "02qmfr1y24y5vq6kddksw84b8gxalc96n9wwaj7i8hmk6mn2zyv6";
+    url = "http://invisible-mirror.net/archives/xterm/${name}.tgz";
+    sha256 = "1psnfmqd23v9gxj8a98nzrgvymrk0p1whwqi92gy15bbkzrgkvks";
   };
 
   buildInputs =
diff --git a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
index cba850e33d5..8a8298ef818 100644
--- a/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
+++ b/pkgs/applications/networking/browsers/firefox-bin/release_sources.nix
@@ -1,955 +1,955 @@
 {
-  version = "55.0.2";
+  version = "55.0.3";
   sources = [
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ach/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ach/firefox-55.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-x86_64";
-      sha512 = "3824d633f5aec2bf1f9c6809ddde44a85081dcceee05898275b8c4c6dc26113e453ad701d4c05b5a81c81fe2ac42baf37fa2fa9c22129451435eb78791df51b1";
+      sha512 = "fdbe702f129c2e8c749fed009609c475282638b5e920defeb65b94cce807f96f8f07d02d916c91b3d50cb9f909b419d2c635b3914f8f059251f33f93b887c797";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/af/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/af/firefox-55.0.3.tar.bz2";
       locale = "af";
       arch = "linux-x86_64";
-      sha512 = "e3ad3df3469ced1f12fad5a6cc16c7be6754867bbd2871aaa07a9f49a26c3d8c07363892cfae0e8245d9020c5448e82d01d4d2b6c7fd93a7083b2d6480aec689";
+      sha512 = "b5ace58a9cffa219e3a56eb5e427a482dcce4f2e4ac2a6955c3bea6c40b48940763129499803e86742ca3407d4a80973094d9bfce869bc2a321b443258fa5806";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/an/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/an/firefox-55.0.3.tar.bz2";
       locale = "an";
       arch = "linux-x86_64";
-      sha512 = "1ace2fbf01cc30f70ba7dba7803f4052ec8c05f93e174225e9aff14a67e8b7214dfba43080b4c50c761b80801a9e16a92c0f753734cdc34dd7b482cf023ff0b1";
+      sha512 = "d737a3425592ecc474399feb2d1f82fd7cdab362ed406f26671ddb3ce88c8736b17627ac279c12551c2b27432f9ba8bb3dc93b6ca30124cd155848a63bccff06";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ar/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ar/firefox-55.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-x86_64";
-      sha512 = "a1dd8e128bec748c37b849c8c480c9f106c614440bc4f8d3b17b28cbf0558b8e6524a0b459d2ed5f6031133056f0f73826691b9ccc1a9efd216ffbc3f64a6eb2";
+      sha512 = "31e834d78399549ef670e78d2ff9befad6d300dc327853d1435d02533379e23ae38cf3dfff1222e314165c8f80e2e4fb9f364a9a3b33fb3d0aaed3259414d321";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/as/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/as/firefox-55.0.3.tar.bz2";
       locale = "as";
       arch = "linux-x86_64";
-      sha512 = "995993ac28d2ef309e025d15f75ce29c3cd028f79bcbc4aab65d1e10efda2887faaabc6beb8277baf81ef256d8365c062e6362f2dfa91b37a65930ba5cb59c0f";
+      sha512 = "8393861ad7e2ab0a070ba32f38afb59bfabba4510f0f9a85273b4300fd7b2f45461d8e2c0a485e1d5776533d4b0bb8d06c78efc2a2a0c87af55fe5eede33e6f2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ast/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ast/firefox-55.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-x86_64";
-      sha512 = "8bd9c1dbc549b7b8024c28f026e2b9b5a099b80904938955372e157016b4ddc729a378502fb7973a9352bbdd09646942241eb23d8a7528874ff500b0aaade77b";
+      sha512 = "e091884962a239f65f7bee05e1bdc516091b89ae7be1dd6517c4ae3b8ad34af0c49c04d365114cceca40a6a8af229256f100e4a1aec09e7e284fd6cbee497e54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/az/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/az/firefox-55.0.3.tar.bz2";
       locale = "az";
       arch = "linux-x86_64";
-      sha512 = "38ba0acf054195274043470d4c71c8f2800ea543806ab0d6f39b0545fe634c742072900075c319593e5a75b8403dc2228c049cd9c359497a71627d74bb750bbb";
+      sha512 = "3324d8041257adf120d08537ffb94e90ff1d701bd60b9bc3016570887c0a2ff2d10a406de599be8bf5146b62647f4b95b87e9fb48736c4d0e747be03a35b6d09";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/be/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/be/firefox-55.0.3.tar.bz2";
       locale = "be";
       arch = "linux-x86_64";
-      sha512 = "dde5852d9d000b81ef460e49c540fdf2731ba836d5df50771c551b96f857263552389dbe97289b6d95019630774c1e8b8a85a90ca94ac275410c1ea18bcde833";
+      sha512 = "65861965c8f3c5e37d9b6e919f0ec506340b38a2cfe71905b43802ff3cceaa062ffb49516541253a8c944ea2a6b0c09d6523da6f5b8419857921c08a53b70062";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/bg/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/bg/firefox-55.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-x86_64";
-      sha512 = "e0e642f9a7e6c1968f77cd34722acc77de84994b92745048093abb123d79ce9206945c9eea519b10a293ea349c7922937c27e6d9e7b6709b6aef388058f6e6ef";
+      sha512 = "948b2469ade253a0c174d996053e4855e477f93f6a35351c3c6db10aba6e9894fa850289aa90bc7d830edc8ddad6ddce78f6bf5047f91701152c4b7dea10accc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/bn-BD/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/bn-BD/firefox-55.0.3.tar.bz2";
       locale = "bn-BD";
       arch = "linux-x86_64";
-      sha512 = "49834af50d8f8e547f504a504d6161c07675cdcd98bb8d964d5f6c72c76d22925865677e64a90175ddb3312c8a9efc1d113e76aaa914e9d6315f635dc3095bac";
+      sha512 = "3cba3214ff62b5fbed875e7af40c04382564caa3ab613f44d25aba56eefca893dace583afbae172153fcbf1adc13cd0545e3c80ee72631862f46e4211589e103";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/bn-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/bn-IN/firefox-55.0.3.tar.bz2";
       locale = "bn-IN";
       arch = "linux-x86_64";
-      sha512 = "664692ced004e94e61ff9c44618931f62b316ddf0b56eb83dab7d4fe69a5016b3b5efd5a02c49e3ba41cb51b2298096c74ff2fa8131731bf79708a23203ce350";
+      sha512 = "8a9335fce85a4787c091053842a45e2234ba13ac75568209d965f28a8d40ec42f8eef8da62878c0f8f17b6db052f72a00798bf2bbc37c7de9c861efcebd9e41a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/br/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/br/firefox-55.0.3.tar.bz2";
       locale = "br";
       arch = "linux-x86_64";
-      sha512 = "e9ba0f8bfff1929820ca0cca3de5c377c8c483e4ba46b3064cb210f971aebbf2f5cc67d13a05e1c19e988006ff37dfee607d00317162f5146dd8a1b7e167ee83";
+      sha512 = "1b08b96c1030302ac47baafbaec63ce87a5744a284c20a6432208d0e3c7750f15941f89c69fe3f8a7875a7eaf7a9872855c72c4157447799edc2ba6bcf3768e0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/bs/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/bs/firefox-55.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-x86_64";
-      sha512 = "41fc17c916c3c23cbbcccdad686ebbbee3ff9d68b0b72f8e8e8819e438df2fda7aa954be3a0076d91fb5c05b507873a2bca90e2b661542b86ffb0bee3cf6bb77";
+      sha512 = "35e3a1c0b098c5ccf68e2b4547cedc513d31ca62897e0a6ceb6283e0af565ee7a1da847459217dca94c3e192e5b643dd0fb1e302ca54d866f7023841722f8aef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ca/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ca/firefox-55.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-x86_64";
-      sha512 = "d0880ef0357a3e8d9f3d419390b8bbd95c75d6f50469a63e7c1e0182cf98e85c942d75dd1c3736c856deace3f49c6751f9e8e1b320fb0aa73a78129340e5467e";
+      sha512 = "372881da1ab01c36e06c9bbc7a67c12adf2af454afb8baee79b506d65e99754340e0650a7c16f01ee6735d2c2bad6ba82ea437f3d6265f17efe2ba26d4b55471";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/cak/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/cak/firefox-55.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-x86_64";
-      sha512 = "62a6e53dd82ef2bc2881c1aa912bdcd9628123b13a769f43d640c05c1a02dde9ad5d69f486c2858c68ddac7dcd2275fd3970e56d48f4e842a3757f453e6843fd";
+      sha512 = "447414a13729e3eef3311802c4714a00c707f3567d4d90687420972f57f4ab7079afcc741f7ea0e992f916786919c27a6670424036b50fac3be52bfe8eefbc8a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/cs/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/cs/firefox-55.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-x86_64";
-      sha512 = "719e052b32b1e080b4627f286bacd9b3bc2b8f40cf8b79ba2643f08220a05201e649fa98f679c4fb926a23355a12ef744ff7b5ef819d9b825d5a5ae790f7a6ec";
+      sha512 = "2eb5388d2dfccc213c730cf605b134e51c68496c93dec255c9ede8820de2d40968371e989f125c4ee938622312e782d6d68b28c836e7c8cfbfbfb100ddf59441";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/cy/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/cy/firefox-55.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-x86_64";
-      sha512 = "ffbb24e8720f354c2a20d5d13d6b3f003a0b3d1606da231cc9c4750d837efeedb4a789fc4b787463d0e6f0fd9492583fc24b791de6ab4eeff6f2258dc2206f93";
+      sha512 = "f27a12d1e9c9c5712f2da5236a2d81b8958eb8a208cabb8b6e1e75e40579bcefd9ea17a64d5f530248ae8f288ac1628ee350b1b280aedf3dfb8948d5cb800983";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/da/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/da/firefox-55.0.3.tar.bz2";
       locale = "da";
       arch = "linux-x86_64";
-      sha512 = "62a53b150f4dce8d09e63c44bc4ec5d3657b8db624a71415b666101b5a4ff2c98da3ab4e0587bef824ad0303da78060c6ac5409747291dd021d2d62437417928";
+      sha512 = "f8957fea57b1f48ea18eb65bcf5caf3d5f71aa3ad44c697861d9b7c7655cfa99c66a49b034eacb8530d42a66b2a458ce4a4c97890bf8f28cb06d24d000517c57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/de/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/de/firefox-55.0.3.tar.bz2";
       locale = "de";
       arch = "linux-x86_64";
-      sha512 = "feddf89febf177d83e816900cdfcfc03c119c4aebb026586cee127d541db7d7c37c6d47e989402a657e51d66d7564e13016926f16cd3510ae0cbf6b4f767aeba";
+      sha512 = "11a2076a5502d2edcf91a0b1e8776f71be3e5970885843096ab2e576dc5910da6b758b9372caba83fb5a6c20fafbc1dfa8d0a238020b32f93a7ffe50ba1ec430";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/dsb/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/dsb/firefox-55.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-x86_64";
-      sha512 = "ceb9fe65ef661d721c43879082c1d99c90f293ff38137c7ff2994f0a7b53086452f139f3ccd2c15fdba1b09a16abe560d4a81499926830f06b5311eb05746157";
+      sha512 = "e788a73b2b77d2cf6aac1557814df1d88ad9e036b1d58218781dc284433f3b8b9e1a34be4c0bceabb99b6238dca2f9dee8f5e97a994e09f5fae175eec7e34b9a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/el/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/el/firefox-55.0.3.tar.bz2";
       locale = "el";
       arch = "linux-x86_64";
-      sha512 = "13c7ffaa22e1b9968b643d4cd6e4b46310476592ec894293be1f0179e9c16c02944c34e2b25fb5a0dcea5d374c8bd5258a370df1539b967b96b6781fdfbde753";
+      sha512 = "03099311390384c652e7dbbcb41d60eae522a1ecaa69b6e17e214fc0e06f81739456a2543adf9808b2b08d6b0c0b84dbea6168c70be4cc1ef71a04e81164792b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/en-GB/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/en-GB/firefox-55.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-x86_64";
-      sha512 = "566ff317b62ad2158866ca7f50509eed0272e00029686719c1843ea742d252c45137f9d6f867b0ca88e63e84a7f46444b9f6d669bca31f6bb2566edffa167f75";
+      sha512 = "e971fdbb2cbe2e080f75900df9a32506e26eb07859f635c9f9b4738ad20cf7bc939bfe6b8a91455178d124a29d869f5f960ad9bac64ac863d31dae3a2f4ab2b8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/en-US/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/en-US/firefox-55.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-x86_64";
-      sha512 = "93092a136943c8901a1d62d34582dc3d6c5a71629a274e54650901eddde89287d489572605a0d937f16d3ff9cf2b0e95ec8dd90acaf7da979f599623d1b9ff99";
+      sha512 = "99f270542b0d77a0bf2ce7926dcff04a356785af9269854eb12bd50c179e1d5b6db66885900a0f1dbfd1ae50a40298a2be7610b55380886719fbb3890f9e66fa";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/en-ZA/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/en-ZA/firefox-55.0.3.tar.bz2";
       locale = "en-ZA";
       arch = "linux-x86_64";
-      sha512 = "5898f88d188daed37bd8b5bf523d94bc3ae8064a3a020b463658f333140c4cbdecc24f053bc898dd2e81f3e945a2d0ae63a05bbeaf27f8ac94a7477f697e354a";
+      sha512 = "837b11040ac50920f41400bb7764864a42fa84da9da6c606c9475f862cec3bcae8ea1bba3b72424c668d9bc036a00c7c360ad248285ca8d6f6d94aa46c80b868";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/eo/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/eo/firefox-55.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-x86_64";
-      sha512 = "ca234eba852ce9ed736490e3db9185baba4d190fc631133747219dce7b24fdcb4fc3bf348de21bc81cc02cd818660158a94f0d2129a6869e9dc88f0b7a426c95";
+      sha512 = "0d7c650fa35e75a6af940bdb4662e03fe4a76f5fc3750ec4f813bc6570fce252256f6fd1e6b26a15c6f19c819a0e0bb2a26325015feb37b4f5318a018a8c09ef";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/es-AR/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/es-AR/firefox-55.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-x86_64";
-      sha512 = "c86897d532114b6e9039e4eff546e724177b9de1049af2634580e8ed8f2de54484fc9573fca1640ad544b8db092a477f3d855227ae1ddf2766fb5c453cfea876";
+      sha512 = "442370c45f57cf0a63da9d7b33e377b766d71c80606144d4cdfa956c6d4d5c91314cd3f9b7db007cefc762dd2cf79bbe1999842f1ff74bcd85affb7ed1305158";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/es-CL/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/es-CL/firefox-55.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-x86_64";
-      sha512 = "868ab44893d60c66da1389dd36c8b84bb44a52f0daae20a7de247bd22aa4fe3b9c5d22dd75fcfaf3b36933fdfd91f694d9758ec9ea6cd40f1882a3a721889742";
+      sha512 = "ce5cc274961638c396ea3350857c79fcf39bfd116a9f3ceda74bef9d5eee2dfab54b12d77cd9e0a01bf98856f0b7eb8ca155fab50f444a4eab785086e8045734";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/es-ES/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/es-ES/firefox-55.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-x86_64";
-      sha512 = "39c9841c7a1f6e1bd9028410b49f83d57193a6995053e7056d2f1884ac6706bc54972a531031b8e14a2aabeb0c8cc1f297bb580676b4c6e0b33edd5dbd6e43eb";
+      sha512 = "45aa1e6e9df4bde4fe67296ce735eac1356e20bdfde638944f809338869ce243c16a23bd6c066cc3df54cd1a8b7ed1937eeb56f556803dceb3b1fcdc2ecc273d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/es-MX/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/es-MX/firefox-55.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-x86_64";
-      sha512 = "d20bf48f886f739215fe2e46c30b355fb6113859ddc6c917c6936c119e3aa105161174f74d77e63f7bd59619b85f21353dba19be4f98d114551d585eccb70004";
+      sha512 = "17c4ccef75bbe794d398121beaccdc3110d58991d5a0bfca857914c8fca5c866b45d1e4cd07e2be8f4f029a058179d61c774b74f1e9c6fb513e547a79ea901cb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/et/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/et/firefox-55.0.3.tar.bz2";
       locale = "et";
       arch = "linux-x86_64";
-      sha512 = "a794a793a7e430c643007d20898ff21f25a364d0629c022073747d15882f1470ee6b50c1bc6ba2d4830d09598044086d81f6f81555e23c7f3492eb8ee7b29835";
+      sha512 = "072b65588b1829309af5b84fe46e15974f8689e07be1bd24fd09cf5ae403d66ff196b1deac32de70d97fd5984d5579aa991a9fcde4df8fdd1884050507dab13f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/eu/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/eu/firefox-55.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-x86_64";
-      sha512 = "ae8b65527a12e8db514dcdea7d533edb52a39426e96f50707374395cc88f427e6370e864c9d55da93b02e2c92443c2f06dcda4aacb882be0a4982408678a05c2";
+      sha512 = "dfde116081eb810215d29a142f6f3c16c0664c01415c6d2f3cd6385097b55a49b112090934700e9c217a286e345be13236df1768f602232db2da0a47edeecf03";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/fa/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/fa/firefox-55.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-x86_64";
-      sha512 = "ce8df8ad73cb30195a444dc9ca9f1514081315fa4a927af79eda41ea1b2fe22c67825157cae641f80b3dd8760bf8d3d26a538a211c5828b41458ff60337c6166";
+      sha512 = "7b934fcef4d9eda9895f4ea1a0e52e8ff40186bfec73e8c1171d0d96ee6a2b19d7a077e4208c0d6c768f6078a90525772086ca08a179036a2723443761e69259";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ff/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ff/firefox-55.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-x86_64";
-      sha512 = "d896277ff916832466ae58f567cac018d259b08df13b59433707bcf60f5e75975678a25fb8bc138d3e705310e10d0cce06118f6581760fc9c1e8e076e4a5c355";
+      sha512 = "1e6667da86ad91d5bdbd27bdd615f8152a84e01d6304de4da90d48baefd758fc6e124c4253a00a89431b6c860ea574687237fb20b8ff95f52ee55b661447e723";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/fi/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/fi/firefox-55.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-x86_64";
-      sha512 = "adc3dce086ea0113b8daf96e1ebc5d292d35007ef59b0febdf72868350e98696c4efc25ad9dc9cbee908a0721829a106ca4d72690f5e9295077e7971bc9950d8";
+      sha512 = "24d8f011fff7425163a3a1ebc497eef9fbecdba8deec7ced18d1af0dfbc2e0dc31dffe29a7d6179972026aa04f5111ecfb5d1bdb29f466d041e5ba8058ae7f31";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/fr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/fr/firefox-55.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-x86_64";
-      sha512 = "2446635b7fc3b76e3fdd15634c7563483fe6bdb3c26e98cbcfb0f025567a5a003bddeca68fb87a6119e46da7325b50bb429444a30b92137f7e7aac8a57ed382b";
+      sha512 = "651bbba82549e5309373cc8ba3bf00c0cb87f0a8e1f943ef4c55b1d9157879a6c0132a8a296a9df3d10a501a1a13dbbfc18ce97febeab9b2e19fd87c00ce860a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/fy-NL/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/fy-NL/firefox-55.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-x86_64";
-      sha512 = "fb02a7d115c00f36680d9b33a65b8ce459a2607e8c9bfc9ecb70b6712a59185e990415b4998583da70996331fe3ac7230b5f2c540d27e0d04c193940b398585a";
+      sha512 = "0adfc657c5e29e0af9c33972a93973ade9a4441e32998a1e8ac45ef814791637e26fad074ea2d3669f5d3261bd48afcf1abb30170844db12ad49a1a1b0a28bc6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ga-IE/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ga-IE/firefox-55.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-x86_64";
-      sha512 = "02f16ddfede728b0a1b103266805263414b2ffa959ee5e5b41d4d542c747ec2b819e4e4b1b6d30173f76d91eba388572ff4a84433b05ec7d02b7ea3d351232c9";
+      sha512 = "dca148b6cad926c1b57a2fa1d8e2175cca84f9ad7041a517fcd7436ae557219a19efffd6986ba7e7d1b0ff51f895d6894bc6c4316ec92b2ad79cdf747243bfc7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/gd/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/gd/firefox-55.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-x86_64";
-      sha512 = "e1e25afce2d91f582a2cd93cab594f08f47ea5bebf273db47b79950a674e39b580e8efc477611e5f0e288593508e9cc583c6a9509f08357e9c717c84fa54acb5";
+      sha512 = "f4f01d4253b0e2ce56aa15839ca619df93fff7b60a771440a7102df1d84d45e37a7981044ad40d03e8dc70317836968bd84cf3ab3985736593880f26d95d7e60";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/gl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/gl/firefox-55.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-x86_64";
-      sha512 = "f077016885b4780b91e9be185fce08398be4b34e496afba3b41c9dadea4d191d4c93a36f31ec094b0e57fe0636bcf1b38c67ad5180bd63086fc07800e90f076a";
+      sha512 = "2fb7a2ced35eb942cca10b4ca4b89fe4c0eb1a8f5aeeb9d62989717b704a922bf2678251e4c5fdb4a3507255f1548c183081d88e1586a727c17ec821240443e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/gn/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/gn/firefox-55.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-x86_64";
-      sha512 = "c935d587a2d5d5ef9278d265fe6d7225c4568e2f9058bddef99c677e9b89ab286bece8b066a44bc4ca6d155d83ccc14382e80f2fba4a44aaaf272cfce178f5f6";
+      sha512 = "28a720b0e8c3b452ca6824db44f274728d61471a815f858d95498ec8a8662973b0800e34cd8cceb5a0abdad405ee5eebb87f5f8efb5e07ebb8021bee41e73827";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/gu-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/gu-IN/firefox-55.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-x86_64";
-      sha512 = "9afa840dcf0de2386923186f6f3b2da1c78d3a31eb794b3aa1caa0092e90a8f7594b729970de8bb410457ec88b681abd99bb9be7eaabd8496bcfcd521ed0f14e";
+      sha512 = "5b1fbbba89814b15c6d8db09a1f335bdf37a300035ecd637909aba756a6986b3ed2107e5f015df2122e594e3a4a84775110f2e1faa9412302758f20915da5b03";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/he/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/he/firefox-55.0.3.tar.bz2";
       locale = "he";
       arch = "linux-x86_64";
-      sha512 = "41eefbde51929a1642310b62fc61881a16643372a94b9109dec6668e28ee71d3acfc154ff26052cf4702504523ea39e5e14679b14956dfaa21628717f66a5f10";
+      sha512 = "96dc38740133f31d385f5a2bfdac4af4eb9ec13c9a5fb29b989de34349eea3a682dc50a57b52037228dcea56b19535a31c37b47873b34a6383dc687eb3d61680";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/hi-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/hi-IN/firefox-55.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-x86_64";
-      sha512 = "4ab94bfa479c1dc703206fd5529ba9821afe9f388cc18a80512c5beb9411c3476ba4db7b859df4556e8382c1fa5a521e6f6682021daa46510c3497deeaad1ec4";
+      sha512 = "62ebb2492546d9d6923a93b506c573e1bbb1cdd563700db4980b0d9afcfe19ec3b31b34b5f0d141e1a5827bf922978860ab13e36338a611a6c1143b225d6c546";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/hr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/hr/firefox-55.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-x86_64";
-      sha512 = "7a0048bef5a50588220be7145a2449e2f2f16a2542e5e2af17bdf5fab10a7ca9f9441ee52bf8c274fa462d4590be6269129db5dbf3f55574b8e3257f80d2604c";
+      sha512 = "1de18ef034b46d2d610268bcc5735e10671a6e7e70c2239d869606cebc0421c0c99032c2deaba2b0ced97c937441731a8097598185a81ebfb609662471081533";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/hsb/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/hsb/firefox-55.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-x86_64";
-      sha512 = "d21ba3b5344ab0f105cc6f6c426dffb553f4b98d1b6c125266d8f53209ebb58011e41d72b431945656a2c619347e309ab57252c4ed7189f6160d61379017e062";
+      sha512 = "2a500029892890bbcc44937e02c2f8dfee42fcc0cf0397e635b2e564aff66806424f0c0105440e3fef973289ec655a109b480c9c52f9cf820ffdedc7a5314377";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/hu/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/hu/firefox-55.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-x86_64";
-      sha512 = "5bb2e9c79cc08ca3b9e4c47e85daf351e411899318abd6f97bc715a1c4134ff271f7c1830eab1da9465c975d2c1abaaac0c490b7c2504f175b3b468b7824b622";
+      sha512 = "3227cf91840b19e45e4d1eb1454d0d1ebfaae1f91a632c93e994cd576f3d6dbe1acee273e266b12a8d8d18409e8c7da8abb2284a2d85e0f48a3e2619d6ffbeaf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/hy-AM/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/hy-AM/firefox-55.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-x86_64";
-      sha512 = "25191d401eabab8adf1d603b4838ef5fd42630e5109cdc7fbdd638cb9537f91c16fc559dead9084ebc703f3ea0b3282c9ba72bc579466ac501b2d9446e398e21";
+      sha512 = "47d744ae1aa81e5caf0ec14bbb19289bac77c969c773a3a98ef6b22577a1b345127333281d9d041c9a835aa2a6313fee26dd5e8d20e452a9ebad049eff96c560";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/id/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/id/firefox-55.0.3.tar.bz2";
       locale = "id";
       arch = "linux-x86_64";
-      sha512 = "0c681e3f08b80e94b8b3c3c8fc2408e6161c3c8a665c6eaa29d5c33eaf508bcb8426dfdb0a3218d15c88b6a414e55d27468aaed43c2b87f8ccfb1ccd26f07817";
+      sha512 = "3745ceb9ac5cb1a11d4fde46787a435a44c6197d7cc557fcffd6c68a332105eee9e0aa4042dc010b11e0a4846caa066f96c786a744b45a2b13b832b29deacce7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/is/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/is/firefox-55.0.3.tar.bz2";
       locale = "is";
       arch = "linux-x86_64";
-      sha512 = "6bd3b4233ed6efa88b32047705ae9f5250cbf58f93e134924a0adb0ae7f569123b5d085011c35c0f022f37096fb812811f0fec0bf781e355a5342650820b269c";
+      sha512 = "cdcc14717bf8460b2ae2a21dc5ae4d9e3f9486ca29d744149f90e26f09f6fed54b40739f75ad644c57b8a1e4b16dac49f43167ab74e8e29b850d6dd8b22a68fd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/it/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/it/firefox-55.0.3.tar.bz2";
       locale = "it";
       arch = "linux-x86_64";
-      sha512 = "cf8bfaeef210cc2f94fc9405a9dcb8dda331fedb82e4743cbe6b75eb0eeca13b77a30fec648806057e0e8ec95bd957a4003e4210e38e9d122df50ee6c0c31b79";
+      sha512 = "d93cfd5b5bdf0dcef5a82a39e592cfb3aa6e4b128ad22c38fc5ba3dff8177947c877b55da6d45fdb0e8fedf73aed024630eebc45910dea6760e4cbc0cb47f971";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ja/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ja/firefox-55.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-x86_64";
-      sha512 = "ed12eef067d9505266b27bbf856be093bd3f6bd2b82c355a3c75db0d964ba3a86838cfc976cd142c142dd77b90d5a878615577c57e7861b41a4ae6ba69bb9933";
+      sha512 = "d9508e377e104c869c38d62edd255b2837092571c0748112554efa8fd9eb2f17319e3e7d36fad2538b49eb06a82151e364614416b3bd17c181923f5506cfb445";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ka/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ka/firefox-55.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-x86_64";
-      sha512 = "594f2a455ec525956e92e77e5de1f54f8cd7bc615567ebb4bb9b938d1978df1bd87f9865e6311cb4280d0b1d435cc8a522b7d7b5fe6279aa3f387a288df81d60";
+      sha512 = "6dd2fffd82ccf111b133431edde1c8bdd34769803cce8626987b7665203d64925aef1c2bcbdb2be70897e3f66fd40bdfedf4b6ffc9dfcb2e8f0ee585a1b75cea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/kab/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/kab/firefox-55.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-x86_64";
-      sha512 = "b7d3d54e7bff659074bfbab859acc3bb6c2141e9111fd0b207ec3ae81179356942f48ecae75a8f87af0514a79179e77f088be810cafe23eb234e85bebfffc798";
+      sha512 = "389d33267f621a82d08e179005dafe88284a2580cd2803a3c223e9d132b471a69ea97647883ca05fed98d96048b0f448f376dcb3994c64c3f25598b601f2226f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/kk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/kk/firefox-55.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-x86_64";
-      sha512 = "0cabe96911784264c984e23831b8e8170fa27af03b15c85706c20059f5e935910deab728e2e8b68e00b62d4f073f4d8e156e302bccaef6794de07fce48f99255";
+      sha512 = "48b5cc20a559aceff6f58fbc5bc18ef72e60ed5ae4ed86e7d30ba75169a1bb62bee19deed7dcf071ed470719c8f97117fbd2dd0f973edd3cd641500747fc1dae";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/km/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/km/firefox-55.0.3.tar.bz2";
       locale = "km";
       arch = "linux-x86_64";
-      sha512 = "e62980ea8f48280dfa8123e4ba8bfbf7627bcab855e2869ffc947c9538377721fa6ab52b9bb209f7e2db859a5f606232e39248d7da3020693f4d7de1125b8a2a";
+      sha512 = "783a67160300aa95ff851e913b5af9208db4d1c96696db9aeb153a6ca0d061b68d2d83fd231b1ff73d11fb6c9689ede2c1632d43e23fb2c923e761cbffd73b64";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/kn/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/kn/firefox-55.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-x86_64";
-      sha512 = "b5bd9a15cb1526dc39bfe15c9bf5c8624eb919f85c0f61f83da0477afed65aaa3a2af71a0118fd48fdcc7a73da778b9781d56f41d70971e52799ac04f3a8ee78";
+      sha512 = "a4ae433d78844021f0fbe9a36b2baedda3c80cc10fea1bdf865d110c52c23936c51f5670917947aca9c313d7de936012661a96b498f3a88dd73ef6862a1035b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ko/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ko/firefox-55.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-x86_64";
-      sha512 = "59462a1891d08c109827b1e92a267c28427222e62b945194d4c5610f823489e645714bc6a1975b42b3aed3b809c46f01670484ba8043538465a20c21b6519263";
+      sha512 = "a1075cb1d622af46b47110da0e0c846a3a245fd94a89427d1598cec1e30f2b43a5697075358bddece7b44fa4bb5dacb63751a6cb16f00a447b9c3f815a96838f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/lij/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/lij/firefox-55.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-x86_64";
-      sha512 = "b0c1dfacb6a1333306dca3b16bc815d707ede40b96511c6e130ec76572e0ebef264537b458c4040d45790868114f8f652c84b525e1cf92b05785631a67de2196";
+      sha512 = "ef16c60f7a479876655338a822d0a366340581f90ba6a5927336aa24c7241ae1de7295dac0aa9d94758fcf2f9de696ec5996066db51ab961e108b73717f93019";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/lt/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/lt/firefox-55.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-x86_64";
-      sha512 = "ea0f17e1b5f28e5ed0033ea5bdf8ef8461cb861123688dacc908e37670b22be9d115c3dbe8e92543a7b5234c3a45d159aa0c486eddb3348acd21f7430e5b3cdd";
+      sha512 = "4eb707f286d699948bcc7df14096f32581a0ba2edbde59b89f1568f6d5a96e412d2aac210d765707b4bd797845cfb70569e57b6587a8fa67b81ce56d23648666";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/lv/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/lv/firefox-55.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-x86_64";
-      sha512 = "2a6a5ede69b3280b43de68ad3c1082a4f46d606cd0e78a1968ab984b8b3aa8a455b809b3a6ecd9f8ffb2c296206e68446b2139a1739fdbc4f3fe8e6a736091a5";
+      sha512 = "45fed96d0e82dceb48853aaa08ac9f6b26ef16ee8fad04ef15cb76cc2f1969a3733fd74468088803a735feca5e5416b853f41956d240d4150254a61ac86f83cf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/mai/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/mai/firefox-55.0.3.tar.bz2";
       locale = "mai";
       arch = "linux-x86_64";
-      sha512 = "178d8d1446287d0f163166851f7ec2d404d4328fe6b901c6227cf4d195de7e97e5097477d0f2a9cd4c2c492ac27fb15d3dbc90b798d3ea05c3e2d2a017ab3ae5";
+      sha512 = "14739a5b2249386786c14816115a9b1a21bded28083bba11aba28012a9c7f5240d7b4dc3342192689d4d3a096d6a6f516d22f4370e49d465ee07721e937c1380";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/mk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/mk/firefox-55.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-x86_64";
-      sha512 = "52673259ddf45b072037c28f872a03b75a3a948517a27514b6623bc5a975c0d745340638b04a5c9d16503bb0ab62e08795d1e387ea37a69e796fe0842c3957d6";
+      sha512 = "fa44baf0e211a6efc3498c077911879593bb3dd715dfe3127f3177801f86fc7561f1ceefd5743cf4367bb01082a19df1f003ec879d314d252877bb69e2a12213";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ml/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ml/firefox-55.0.3.tar.bz2";
       locale = "ml";
       arch = "linux-x86_64";
-      sha512 = "a58262f6788002550220861c1a501fd9d15b7967bb538da738b831be91787e04c2f42ce5dcb045910ee022556af9330df4d0b985702995ec40f3368a3a52eb7f";
+      sha512 = "91b233c59500256bda1e9236df9e282af2a161b4085e4d3af4807e4d9bbb568bf1c83b1d7314c01e10dd5757fbb9d291ac3df334e40e3f155f996db506996bd0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/mr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/mr/firefox-55.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-x86_64";
-      sha512 = "c927b197ed833cb3beece57d247107865d6c1d9ddcf01292f28927ec4ad8cb325c8b75cc50e1bf9b31eaffef31a3d472c55338667c64425f80934534bd6b6f3d";
+      sha512 = "eaf62cb8a34af24dffd29daa1a5e2b9bab7f58a4016a6624335f621cb75f187d09c3fba71abe780b58c3e4861b640a1e8273a682d02c2179909249725a44da30";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ms/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ms/firefox-55.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-x86_64";
-      sha512 = "1b0227782120185c60cfc18f60fa592340fe5ff875d130d0d786b055c475dea9210e98867b8ac2c9c63273f138763cd73c2fc5e5085000af06aacfdcc9d69179";
+      sha512 = "f089fa240f58ebc248fed6922eb1c429043504df079027f0f8122288ca7277bfb24644852c73ba1cb8032e5951f6066b4175b59bcd894485e7adcaf7823776bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/my/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/my/firefox-55.0.3.tar.bz2";
       locale = "my";
       arch = "linux-x86_64";
-      sha512 = "a18326b32fd45e968dfdb4800209ad76265e8c72237fe3e0d799c7a66456d3020722a1ef702a349a0d19411c5645e7d286a2c523cdd826d474d40f02faffb129";
+      sha512 = "747ae8c0826f463a9b5f6e68283069ac35501245a3ec4e3df356e4244bf649bc83f3564bf7f7dfd572f7c09fc2b4cd533b7d60a1c2839de9ff9e049945d3238a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/nb-NO/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/nb-NO/firefox-55.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-x86_64";
-      sha512 = "6652b0cc7aef35e81e0bf1a4aa3ee26516a874338d23a9d216e4c8003bf86f4f73b1872d39969f77e878e9894f66c23f930cc133b666a4b1cb5490668153d653";
+      sha512 = "063eb5efc2a47e6ac39d71900844df00bd1508873ffda1a1a7910bceb83fcb33f33b6de00470e1ef23ffdcd46dbb7ee2e60d9272e43f74275ac1c3b34c330f68";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/nl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/nl/firefox-55.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-x86_64";
-      sha512 = "d6bb770bf841f7882ea61a2e780247d94333a8df7e72e99ce3574d9216b149fbf2d1c87cd385436492680c5c0e4d1cf897ce0987c43a15bb2776c4a80799229f";
+      sha512 = "77441aa1589345be58882ecf3890e2f029b80ba62946109d48a105d421db7259532ac153fc1b5dfb4ff54c788def590dfa98ebb6f5c95383374843e9f8dba1e7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/nn-NO/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/nn-NO/firefox-55.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-x86_64";
-      sha512 = "117ae9c5939cd7f4eaf6b353b2e14b2680114be27066782b2348f56f8ab7b72bc37f48043e382adc40f6315167035afb33a40437b86560100563f1e5e752abef";
+      sha512 = "0369a0732cd13ed14059041187de9bf10ad018b68449513da224ade76827a21df8b87743137028c788dcbc76c216345a50bc82f097aaa991d068cb37473ab5ee";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/or/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/or/firefox-55.0.3.tar.bz2";
       locale = "or";
       arch = "linux-x86_64";
-      sha512 = "c58300fe25da662c6227c89189a6e17666a8d0482d56fabf5a3bc1a3001a1d9b62e0c7ad55c8eac7b8294153ef12adcf1a61067a697011b7ea74e23060449ccb";
+      sha512 = "dd3a1a56f506cd20163d28c8aab98958dedc811f921f4a0c277be59d93379856b04fa7362d3528c5840cb024280919eabf7acec031bcd1a198012457a4061a88";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/pa-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/pa-IN/firefox-55.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-x86_64";
-      sha512 = "b2c5f59305be66f6c3bb4bc2bd67e787e56461ae1be29efebf4880bee2378f567cb719f6cbce90502cb0df6645239d2abaf101bf4c171efb226c28821544bd16";
+      sha512 = "04ac45c34a0373e40574662f841879172d6d49fb79c0b39d0394397f26e3291a5ef053b78dac8d1bcac9d55fdb9e3e60dbe315f2416d4b93ecf6a258bbad31d8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/pl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/pl/firefox-55.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-x86_64";
-      sha512 = "c7e062eac501d08bda55d0e2f642dcae3a3fff8e228521719999386e6b910ac9a0f101e36845a0cda326970aa7c6ada16d56a44ea27d5ce7deac773328272710";
+      sha512 = "1037efb25bc120e8aa8829362991461f22c0a7422afd45a3bcd29e81c81d009efdb9b8011e09fdf95e2d59a37199a75fa5ac46f042552140bd9ab571c63ac702";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/pt-BR/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/pt-BR/firefox-55.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-x86_64";
-      sha512 = "854054e7a77ae695f0344fa19d2c16afd112dd965f511c4d3d0a22d3e52e790e8adc1f86fe951f1daba7c390c851607af87a1886b6ca2970f4b4d921d7ee3998";
+      sha512 = "66372b345b017a46b0bc6a5eb2cd54854e15fb6229b72b418dabc605003542b97170c72ef4d22d05a41e8622c8f43767e32971e09d1d0c3c4f58c008a0028532";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/pt-PT/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/pt-PT/firefox-55.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-x86_64";
-      sha512 = "e490aaac75a1d7022ed79ec888963730cbe995a31755c62d431eed9cd7573cf607d361d190452fb1bbbcdf0e246fc52c0132637a2b58b6934e3564e221692efe";
+      sha512 = "99b5a21180578bcc24e2813e2304a3b70f6d19c199925b0771938366e40710329ac408b59635f741e3082048972a740e84166fad9d567d155bb714aeac35037d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/rm/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/rm/firefox-55.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-x86_64";
-      sha512 = "010c815bc7ff3b779f1d393e593eab21cb4740cf1ffa2eef670b508fa0915ad65bec15cdd916f6c4a6c1823fc800aa6f70c0c004e6c6910645e5dc9c109705f2";
+      sha512 = "d67cde6cce18638e061256a562774a332192242a506b817b033ba41fe2f0f854bc0c80ce9b956f5ed7f25e51fd257cdb17673b05cb139a7e619cf5f01d90fd96";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ro/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ro/firefox-55.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-x86_64";
-      sha512 = "970a35a149c512d30efc1842748a26febe4c323c8682791396354c80d5b9e71a1e6a1d2c918a4552229dffdd26982665f8c339f483a179002edcce05d6ef3fe1";
+      sha512 = "dc33064cebff3ba13f169fc1f52f4134c672214431db0d6309b111df8c53d59db5ac32ec54e5001d14b837cb8bcea02ed3b48763bde75c29fa8e4ba3a406fe08";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ru/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ru/firefox-55.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-x86_64";
-      sha512 = "02ece7c9664416da2be2042676d60e6dbfcc27568d74bf23f64517255675e19fd52f031c6579a9ef08f7ebf3d94b92426f3f8dc74fdb3843634e958597bb30c2";
+      sha512 = "24b5259c9a146176075e26b37744759ce3f9b24c7e7973b9394fe2a70ad10410e2c4453ee55a1bb2bef9b766fe829b3a7dc99cddc4686081f413f4cd2537be35";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/si/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/si/firefox-55.0.3.tar.bz2";
       locale = "si";
       arch = "linux-x86_64";
-      sha512 = "0f2f273b7912f73e8b022e5101ca40603a272914deb49159529fd96ac627fc106f039454941b902e5d9fdbf6aede57f38f263c93ea561fa9bd933acc21c329c2";
+      sha512 = "0d8590d03413e817baba1d5f32ccaa7516d258f7eb742ed619a8615f7b2191e5229674730e90accfaa1711d6730c458e60c2b142840a62e526127257632233ea";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/sk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/sk/firefox-55.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-x86_64";
-      sha512 = "fa95f13fc3cc513fa22012598a6bbd82b23b8e0d19d19aff100dddc1b0f123098db8306582b8ff27bc2e6188b579a2fa22d7205aa04e718f622c723df0ae78dc";
+      sha512 = "c2afd8ec0f78f6d8db747500c8dafa3a188a10ba6c1cf713d3997bfc349a02f8dff58663b51ab24d545f74308d4b7db29c2d6a5a92f9efa3520b42e84795696a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/sl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/sl/firefox-55.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-x86_64";
-      sha512 = "eddc485ee09e45685a99715ed62921453f3d647e4f2c10b152d6e3faf626c4e1e12cc5ca76403c10cc94ebdee7dd999faf35b3e4e6d544628fabc760c07e7fd4";
+      sha512 = "75d545f89dc2da70737910f0288a91a6a745675419aa2ed41e0652072dfce0696b0b01197f0cb7dbffbbcfc4e8350394e94c621d2f8e36c65fa95163e70db50d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/son/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/son/firefox-55.0.3.tar.bz2";
       locale = "son";
       arch = "linux-x86_64";
-      sha512 = "0a6b22284b2f65ce7cf8911b05a00df7675b042f7db31f8cbd9440929f4bd32a05b463a8c26399495847dd14881fa3fa1fd00309fa404b0cd12ffd24eb97131f";
+      sha512 = "0baf5dc181eca057107b2d2ea89fdbd5662a0e443f7ad7adc286773da3b0ba922a90583b4961908607f6b6f1f1849c56ca219e661b8ec3ecde2ae4e1dbec0f63";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/sq/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/sq/firefox-55.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-x86_64";
-      sha512 = "fce71fb0cefa5d975d0eb22a0a32cf99e3a6448b206170b260b68f6bc08957ee5fe7fc83fe3bd29a3ccefebb5faf731e9fbef2b642a99adb48deb9c0fa934374";
+      sha512 = "9d220d7177945732d27c77fede9528043f1ced0e26968c9589aab75c727d808440897b8246b0ecc72c91a375f532c2add002d2bd8d59e3fb0f5f9474f42e144b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/sr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/sr/firefox-55.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-x86_64";
-      sha512 = "21667d882d2065d7106077fe280dd07afbbfffef1cd5625f830fc76ba8798ff45c4af9bab382af3eb390f63cb94de108aa113caeb3cb07bbea3ccd6c51333aa8";
+      sha512 = "8e9ac8e24c3af617ec99e77ac849267712ef095d01b177c78e8e8a0c35ca28b4567b93fc9ce1eb5c5e7cc16f9e1e9ad19df30f483db86d25e01e665c73380838";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/sv-SE/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/sv-SE/firefox-55.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-x86_64";
-      sha512 = "691cb5961830be2a7813a3e5c67af793e1f716f916fdebadd4031f288d8439403b3f49abedb4410a30317fa4fc51446638e7f18d4b33bbe0f94a93ee9c4dcb21";
+      sha512 = "4a5895a1304c24c19ab270496f6de03a46059ac7d47edb834f36ec2ab39ab363af59eb742f2b11c325b69616cf4bfe93abe2a6720ebb5654cbf56e6868d07508";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ta/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ta/firefox-55.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-x86_64";
-      sha512 = "bed2f31f934f5feca3189e6064490c7e90401fc0373b8a46f9e3f19fc5245830fbec1bf84de63a5cda2c71577fc8e0cd834e60c722b2e6a4634f9cec3bb3912a";
+      sha512 = "00d6ef2853eff0f6e867087e0fbdc16f6243d349b14ada2c540c8d3bebb520b682248165725ca842c77925d71b07e27ec15426cc215fc256caf34f56055351af";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/te/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/te/firefox-55.0.3.tar.bz2";
       locale = "te";
       arch = "linux-x86_64";
-      sha512 = "6a43c634e534daf172ad8847e442c577172eae5478896bb01e34ef941156664ec55c633195e1fe82677fc0cf481ddaf847229f7029d279bb0a0bab256fb3b239";
+      sha512 = "ca9b12ba9c26bf12c709b8204206cf5766a819cbafee1d71fe4e12897fe76fc9144cb281e11b94f35243af6cb7d8deff2dd3d05444fc92a18a8babc8de9bb72a";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/th/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/th/firefox-55.0.3.tar.bz2";
       locale = "th";
       arch = "linux-x86_64";
-      sha512 = "9c91a5c6d2304b92111c392fd3d7b017b38c1c686df5f55073237a6655c4780d6c90100ddd13d6a7569f1b82797be8452aa6df0a4a22ceb3320d69bc902641c7";
+      sha512 = "d58decde55543eb8ae134335d3dc10f478b8354a723c0f0de2cef89d76c885ad442f989590bf5746a60e9bd46627ea520cc296f6811452d6ac4188da261ac941";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/tr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/tr/firefox-55.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-x86_64";
-      sha512 = "d38f8e7097164075bc5e6866968403acd5dd91d67782eee968065ee5f2eb0a6204d207b8249d97efcf955f52d510410b6b868712a3796796c0eeefebb0f6e5d2";
+      sha512 = "1852fe5c47454a7b5bffc236f12843f0fc7491311979bb0793cc8150943f6bbc39852b30c597a6167d23b8b3199da77347bcaaf8a7d58f50f65019dc6db5a8b2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/uk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/uk/firefox-55.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-x86_64";
-      sha512 = "bf10105b97b89bb8ddd4769ec0428d938843b9d2ceab2d63851fa0a6698c6d10241b65a3f2068503a4a41bf9d50811a7aaf01105918b8afa92879be96f043dfb";
+      sha512 = "c908a9385c9bb07bbe55e62962f19af59da63753284dbc90fa4418fbb601a787f9ac6448906a45da73929e7fd66ffaa1d1c643e240ff288b21e66494e73b9e9c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/ur/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/ur/firefox-55.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-x86_64";
-      sha512 = "b241c882c867a5ee808e9ac37cd14dffd17d8eabd241e4e01ef4573f7d4641007d58fbaa8875284ac640d1ec8f013b7a7278f19768b07d388b5f30c4d943955d";
+      sha512 = "e23aed0297c0605881baaed3df11f327db42467d8f0c764763ab0ac08697f1a7d3183ca0dbe8abe97d46503d6f71b9efaf046e5be68ac8e34027e8cc70c1c622";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/uz/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/uz/firefox-55.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-x86_64";
-      sha512 = "357ef3d85e8174e765682b9bd99b5865994119c73d41eafe3c6ce17e3430a1eabe358a1ae8c4af6d2d9562673a6ee65e469ca423ef7e0b135b8f79df4643112f";
+      sha512 = "894e4bfa2919983c8879bdbed542b39da58ccc237e93a981a7dfcdbd0fb91fb338770f89c46cb97d4af3f3b8b9472983ce72c4fccb458d50f70d79b3da6591ab";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/vi/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/vi/firefox-55.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-x86_64";
-      sha512 = "606c28e1777af2364c4a85557f6b173baa2f07ae198da154655d949b4999289e1a9de3ccf8086c771167abf70d74c576a4440a73cd1a34c3d1bb5e13f91da307";
+      sha512 = "5011071e8f1be873e69d7914c99b5fff3a510f74a064525f71c45373ea1444db4a2da46e806f0cc6f20032f96ef63a6147961acc4f6a7d9af161f08732b6b4bd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/xh/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/xh/firefox-55.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-x86_64";
-      sha512 = "2dd2317e3cf7a487730cba41d24db990844fac4b5f5c2b93e70fa5cf635478e26a60aa2ec60a98f670419c72564dde487050c1bf1d662cf7bc8440654cab2ca7";
+      sha512 = "9bb89e5614745a1fee19241d96abb15d7ba51a19b312c3d47d0a931d4e111b1e5796a47b97175af44331f4d7d86158d4c07d825b4f019383e5d93b2460a17ccf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/zh-CN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/zh-CN/firefox-55.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-x86_64";
-      sha512 = "714ef62fb08db12559e20d1bb6c7e253c4a12b275ad1db8279982ef5df9854e647241d9cfa15085620f12e894cc84a8d60da9b150cac222ca4b454e048e6ee68";
+      sha512 = "2d9a2a0c2d0b21f5c3d58fd14cd7b9fdf3a7b45cb31b124ad17eff538e4dc64e55c035834373d0093615e93fcf61033fd16151b74b411d774541872ee4e1e914";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-x86_64/zh-TW/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-x86_64/zh-TW/firefox-55.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-x86_64";
-      sha512 = "ca5852892d7ab49bb1473425bc5b1e158b045f647ed33fda1b22d0e25267f45a87cd4ea296c58a4f1b502e6e0ca8c82ecca25720e61596e49508a550ba43f9bd";
+      sha512 = "2d55a1458104fcbd6b6f24d5ab6df1103ce1390d4bae44fa4552b6172a25a36d2456c5f5466abdf8a1eebbda926f1c354b12183b12bba497ea1b7739f804a167";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ach/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ach/firefox-55.0.3.tar.bz2";
       locale = "ach";
       arch = "linux-i686";
-      sha512 = "3819fa366f4f5ca40276a30cc5a7e90325d40ddd281160948c06e9db8eba05b51b5e0f230a3c5113eb21e9638374d383b318df3905877d14b654874c83db0934";
+      sha512 = "f66fb15ed6671b27f03eeed20c42a93a31ec2589196160ab80d27b2db57f580ad52d3f23b03a3426e90753b8530ec766e35d3428561b837fac2444d0b9972e17";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/af/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/af/firefox-55.0.3.tar.bz2";
       locale = "af";
       arch = "linux-i686";
-      sha512 = "eb7b48ee9ce0b7c08f96f5d09b51e1819d38fccf7c71cfcfae72e3189ebc928ec4692a7a10964d6dbb42fc2ff04da13d5f058084e6376b67b0a1f4818922ab45";
+      sha512 = "41fa15ec74a0b53fccd6f572e4d350ede8eb637d1cdcfd38db1ef56e29672761abfaac76b2eed74b59c3a907238df02e5a193410829ba5b738a4a7d2ed74a0c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/an/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/an/firefox-55.0.3.tar.bz2";
       locale = "an";
       arch = "linux-i686";
-      sha512 = "956bf6e053fb566f4a6506f672e7102c37548af41807797078b2cd7560fa4dc17cefde0b21939a5fad75005a98adcc58893ef01d170c312065c2fb1904102bb3";
+      sha512 = "900409612c2ef05008c8c3b27852ab94038677df5fabb2ddf460ab731d57f5a39b9928b5cadb0996ffcce893983128bc04593ca6dbedb528ddd634199d92d311";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ar/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ar/firefox-55.0.3.tar.bz2";
       locale = "ar";
       arch = "linux-i686";
-      sha512 = "a05cfaf18d92d8b0a43587cb685e192c69cae3603c94bb60f9b7d5c3380d498dd050559fc1d041860893fa52651fd30f7a734cb98699348587f3211625e880df";
+      sha512 = "445af6192be988f8af74f2ef618c09c3ebb8f3bacedb0d622740b9068665b104146a7bb06306219193455cfdb1f508a924711a2480a31b5d1d554361a9ebf576";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/as/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/as/firefox-55.0.3.tar.bz2";
       locale = "as";
       arch = "linux-i686";
-      sha512 = "b855da6d338d80a58aa9dc6f4a39ee9a5d21c92b25f5a4b349f83070fca7e27cda8c7d070b2c543723f6cd061949e6c91f79979edc45c0dba9dab3dbc81fe4bb";
+      sha512 = "9230c78a28845292164c311fdd882a2e0be590f09ed680c5fa91cb400570b1da8efce86efb96c1f006d166f61fa463871c9c8d7276a4f49a07bdd89c9a67442f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ast/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ast/firefox-55.0.3.tar.bz2";
       locale = "ast";
       arch = "linux-i686";
-      sha512 = "57f498045089ee3e96b5f3f80caf3919d39c3a40ebf68b1b578e1bfb14555635fc216956387ee417cc1bd05cfee7bba3260890d161fc1ea8471bd73399a0ad41";
+      sha512 = "8b313ba678e7beb14788fccda7ab1ff4dcf8c2adee8eee7a8a1224184219b167f8b84d81ae1c73400781bdd0b6c8a5e3e0e6bbb3e34b26587d5eda71130f2215";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/az/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/az/firefox-55.0.3.tar.bz2";
       locale = "az";
       arch = "linux-i686";
-      sha512 = "38399cf0c73942f96df9a4a599092fcac64956353d14e6395a1c0507fd0c7cadd566f571c12bfe06275446a5412e69c29bae95dd86aec42b97acf960026b16f0";
+      sha512 = "8092452d5e2197932a4fe126e891b8985c008fc28d24ae2ebcbc8554a55f1592de2eb0e0ec6b8d33d483aaca29c644b4b5956ea49719e6bd06b88d07ce200169";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/be/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/be/firefox-55.0.3.tar.bz2";
       locale = "be";
       arch = "linux-i686";
-      sha512 = "047c06fb4ec91013521b237592af85715140ae17a10f095f5b8d54516f6b62a4dd90c262294702258161bf781a6babdf7ead4b2c5f7211cb5e87a332c552ed0d";
+      sha512 = "6020147ec72cad49e2d1ca93f3eb4e7f5c3c435f6f0a85bbe0a39335c3791d52c628ad5b9b97dfaf52ecb61e7ba354e0bb5d00770cb88c79a58db0c002f2aac1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/bg/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/bg/firefox-55.0.3.tar.bz2";
       locale = "bg";
       arch = "linux-i686";
-      sha512 = "9a823d322edb570bc53c07eb63414b65baf82df2f37c7d2a6d52221b6b23d0804c890af9c3ecf66032035505ec246e096864754930426aef4be008f5969fee67";
+      sha512 = "c34a98c08553a7961f3dd2af92e14f72c6bc9eb6fe0c613339570d9ecef1f015d0860ba5866107115cd1ea71a86b4c8177509c173f108db316b0d1a4feccf0b7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/bn-BD/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/bn-BD/firefox-55.0.3.tar.bz2";
       locale = "bn-BD";
       arch = "linux-i686";
-      sha512 = "a5f8b004170993b4317044df0c65711597b5eb8f046cc1115cd047835b90045bd16740c47901b8e261a037be9592493c11cd527f80465d46d19c06b692139103";
+      sha512 = "d1157740fc765119441aab489252db93698e82e43a8bf2577a1c36be535adc782fb418a439c56c1954d58091514db4c9e33b7a8f281930387a9bbe6066062b52";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/bn-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/bn-IN/firefox-55.0.3.tar.bz2";
       locale = "bn-IN";
       arch = "linux-i686";
-      sha512 = "2f161b15a10577a48386cf3277c027d2c0103c881ec33b57e87824b4e40f000348356ca0a6caaf20d50263c5d203ce02a6a734059ae477b72dd8b55e17bcbbbc";
+      sha512 = "ada0aec0383e3f43bc46d72e0e79e3adc64cdba5d5d6fb76315077403e233e5ebb8622795b4e3d78bd16ca3b5978259218c0873f547828f420aacdfb53753e7d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/br/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/br/firefox-55.0.3.tar.bz2";
       locale = "br";
       arch = "linux-i686";
-      sha512 = "1a99b157661a90607af89117321f1fbda167bc6804ac95434c6a17859c8c66d86bc957cc95d46e47c69f42b5f513dd39a876881ca69221adba9f7790da7e965f";
+      sha512 = "714d2433d3716d1d9f08025115a7c4a20be975a7d66684ffd25439f68cea2b5dab2c37689c688b7d6eedddaf756e810556bd53366a28ee11437e1180a563388b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/bs/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/bs/firefox-55.0.3.tar.bz2";
       locale = "bs";
       arch = "linux-i686";
-      sha512 = "f850f28cfb54798e0305dfc2525ae59f1568ae93133fef2fcaa5e30063d980263e47324a3bb038ba3a9512aa621d2232475d5c0098d4d5914d661d5f36e9b51a";
+      sha512 = "836310bd3eafd70edc760390fe0fa33659ce2c1f0243ffa21d5da95d59462cf9301f50e89f8e413a91c02f5f362ddc34e18498f635ba19667ae8bb5d69bfcd57";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ca/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ca/firefox-55.0.3.tar.bz2";
       locale = "ca";
       arch = "linux-i686";
-      sha512 = "5b67953d4fd2ef7235fab59b83a17814d9edf106183983dde21746ae1330c9a9169cffaba21b7cb9623d93a82b67c9c249800892601db58b4e42efb8323cb7e0";
+      sha512 = "51f2ce893ae1513c067dcdd0525b254a7c1049e952e56b31f86eb3249d741d131f7df529400039bc63b61a673cf1fc55e7dc12043679def7fcb583d748afe4e9";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/cak/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/cak/firefox-55.0.3.tar.bz2";
       locale = "cak";
       arch = "linux-i686";
-      sha512 = "05ac251aae543a91755b927db98ae44aa07b06ba824d784e72c91c8aed741eb54d0e4b27167dc11a96bbdb765c6daffefe6ad16982812664070d07b5b6a8dfc8";
+      sha512 = "ed948b4f57118d0e0fe7deb5d8e117c1cf8d7df0c6d5c1f1721490586720bea76e81f05ee07553f2ffb42675b2ce5fd8e3dae342fbe9ec7836d489472d1ca673";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/cs/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/cs/firefox-55.0.3.tar.bz2";
       locale = "cs";
       arch = "linux-i686";
-      sha512 = "c0789840e6a3bcc626ce99bc94db727c09d9b6e3b750dbe3c7e2310d00f3d3ef06d2dd3c755daf7e7081f7fa6d059a4e5b0982b513ce5cd4f4dcb2a63630743d";
+      sha512 = "2b16f351f4984310355f9f9b27d656bdaf15b2641ab5c83c08d6e590562284b9d4a89d7f26be605957ad3f4fc81775155255d1f0080ee0558dad96c05e6a5591";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/cy/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/cy/firefox-55.0.3.tar.bz2";
       locale = "cy";
       arch = "linux-i686";
-      sha512 = "8b8c1d7f561649f37b589cb11f4117a762e704a7374ff4f6aac1594d95482f13c7dc00924ffef76b41ad9c00780592c16f38fdecb60975de6d45f6d1b5e6a97f";
+      sha512 = "ad4719304c7ee807294853aacf1516e29339be23e5906bfb5725266ebc3105dc1bde876b29573609de0f38b180f75017fdcc40e8602f92d779578a450146f6c4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/da/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/da/firefox-55.0.3.tar.bz2";
       locale = "da";
       arch = "linux-i686";
-      sha512 = "42312ed0a97b2bc03a37cbbefb8027d373c0e1894a3b37e78a6bb8ee5f72a846d4e14835507ad771fbf4be60ef34768d5e866a4f691a0af827d3667f7b1c01e2";
+      sha512 = "158c318c5b83dacc3ca737e387d47845a43cfdae5add8230b9b4055f936f212fd9f25d2837ad9b4e177e18beb949ae2afe5853b24331facea3fe410216b8cf78";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/de/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/de/firefox-55.0.3.tar.bz2";
       locale = "de";
       arch = "linux-i686";
-      sha512 = "9a228c3e177b11539666b9c5f0a4ec19ff86da023f5a302c81266d85ade1c8e39be861e43e143bc0247f09af85863aed224011bfdb4c64bc2dac267fa1e548f3";
+      sha512 = "f9ff911f2cadc837685b814e906d6e03f019a004f0daff5b5af902467e905269b873f101b63b9e6cc33e357b5be06834878b072b2f8b7e08cf9f16d46122f987";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/dsb/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/dsb/firefox-55.0.3.tar.bz2";
       locale = "dsb";
       arch = "linux-i686";
-      sha512 = "d8c791da0654bd46fb52c866ca89399a65186d63e0262536ede7263ca3fb7af852281e50faff750e2d3020f16d4f85caef8e5d33629ff0019e249bfdd87bf439";
+      sha512 = "d4d92ccb3073d038836c92ece1e7cb94e8c2ad1210c1f70608f99381fb02fc88aa61db5845cb123af11794cb39d14562e9e034be4f1519234bb9f8b2f685eb61";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/el/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/el/firefox-55.0.3.tar.bz2";
       locale = "el";
       arch = "linux-i686";
-      sha512 = "9e466913d7d84dae64d0e537093cfcd46128f3ef9fef10f8ba675195e83e2fd0a32a4602231206cde599ee8be7e246e64e0858dba36c6e283649c59ac990db5b";
+      sha512 = "6eff466dd1b04611fa8af686dc70bb2530e4392d2eabdfbf51f4b679060c7d5f96fd95120e60cc629eea8b23f2452f5342fa5e5dff6067b820d152906ac19882";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/en-GB/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/en-GB/firefox-55.0.3.tar.bz2";
       locale = "en-GB";
       arch = "linux-i686";
-      sha512 = "5f4199493fc4c55c1b247cb729c65b83ed668c65704284dbe2206178e4264df852a73925a1adf1d079f77560c9538427544826af8ec311bfb604bc7a5c691073";
+      sha512 = "e8193bc433fccb5d02254892f2e4869cbad215ab9022dade1167082d3559545c7d9a8c28b6b6454183e1a0ab707f0535709cf551977c97398459f816ecfb1b05";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/en-US/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/en-US/firefox-55.0.3.tar.bz2";
       locale = "en-US";
       arch = "linux-i686";
-      sha512 = "51cbedf391e4b2b33c4bf4882a6183084291136064d2125e14da6cd86cbed8f979e20adbe386848d1a22c2a4c567b99cb68bff51668e53b6dcb85e92c73e47f5";
+      sha512 = "880084f39653f405a3a142267e0c6023779cac219932d89705750f1384e08e21d70025152dc010ed19a5a3c6c4059948892d6121135a44de96ba9c6dd185b5a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/en-ZA/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/en-ZA/firefox-55.0.3.tar.bz2";
       locale = "en-ZA";
       arch = "linux-i686";
-      sha512 = "33b6fcefc6d4867a670531e3de4d4a926c934a297b890fc60b3c4e6acb6237d2c2fc1d0655b8da42406ee4ed62fa98bac0a94fa7cdd3f70a918232e95df3a317";
+      sha512 = "d42d7a3e9bc2c3d06b7579077a99db5bd609b62e807862e5e03717cc84c2b26e9202f8e785ea16bc16182aaa8ebd8b83ba2b0b73dae133dd6466ed46a75351fd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/eo/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/eo/firefox-55.0.3.tar.bz2";
       locale = "eo";
       arch = "linux-i686";
-      sha512 = "64d93eff3cb4f19185975b830e4f956d2d76e8bb600176a322a57f873e7bf8856582149b9c86d7af7652e2e0ee2a355f821607810713bd95e5738ef1b436a7d5";
+      sha512 = "2f1aae311a095e8d48df3106513b94e9b1fb2cb426c0b35782a61bd7cb02215f26039e3090b78401120fbe81a548b5de819c3e49cdc46a41431534735527cf40";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/es-AR/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/es-AR/firefox-55.0.3.tar.bz2";
       locale = "es-AR";
       arch = "linux-i686";
-      sha512 = "6ac236b635ecdafd0864711c56bb3a4d339cb9540d5cfb4836c437f8df9c9fe9d6b65c4c8b1bcd68e2e04ae86f3e70edb5e704042c2ba00611b7f60fe0b3d071";
+      sha512 = "71b1c0ca8dd8483f6c40f62215b86b7633c76097aa9c2d94bb901eea5f6e8a9a5bd99255064c700308569d294caeafee7fd711191b9f393f0b607768edbe2488";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/es-CL/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/es-CL/firefox-55.0.3.tar.bz2";
       locale = "es-CL";
       arch = "linux-i686";
-      sha512 = "0ba857c7d7f1ed986110ec356cb4db75f7ac6291ba0684add7cc56f4505fb946ddac3c603f3bda2a9fe91b2a3031a7cf4dac59bd781dc148c09dfce4d4837e3b";
+      sha512 = "065fe812e9a4001b0cb282efa5c667a999429456de1be2679fb656b88be7119d252164036a9c23829722e5f52b29512809ed4ebdd0824f6904c81865a1a96a1b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/es-ES/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/es-ES/firefox-55.0.3.tar.bz2";
       locale = "es-ES";
       arch = "linux-i686";
-      sha512 = "0440a2e9eea08a43431c377bb4e8f4e747dcc8b608b68a2289ada27bd4b3950feb4ed2946845d725be15fb6fb910f984e791229631100d3cdfb39f9ab398780f";
+      sha512 = "c2c22c22624e55d2463644fd0e3812556b22b7c664ef412613485278b5bb9e0cda8f17e9e57798cbe6b93a3a8acfad9c287abef425e1c064374757abc7465edf";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/es-MX/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/es-MX/firefox-55.0.3.tar.bz2";
       locale = "es-MX";
       arch = "linux-i686";
-      sha512 = "7c9ef5df8bf96ac277e7488c2ac0743afb72165ffdc5723b4bc4c64e1c4f7d338f453fb50a7d938bec39cf04217b903a56b86ffe3856f8437ddb17f53a48f32d";
+      sha512 = "e0c84c217ff11d3ed882d49edd68b8b72589b5a1689dc75d54a895dbe261166bcbc2a14f89f633749b5c9ebc865e39a01bb992904e897d518a45840846710e79";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/et/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/et/firefox-55.0.3.tar.bz2";
       locale = "et";
       arch = "linux-i686";
-      sha512 = "297fa442fbdc2042b3b7756de00f2573da9c5544a4d83a6409808ee929d441bbb7fafefa023f4d858f0fe55f08e6cf6397ad2732ee197d01d4a03ac504e62087";
+      sha512 = "7639e65067d23d20f4ac96e1ec87efcf3fd6ba912dae1fb68e46c4eb23fa31352589bcd6841df66e292c08a332243dc305c1800ee26b4d91d6401b873d517607";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/eu/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/eu/firefox-55.0.3.tar.bz2";
       locale = "eu";
       arch = "linux-i686";
-      sha512 = "fc79272cb8d9c22607fdf0075681abfa34ccc78bcba8801e1181dc46ac9ce420dc3b789a4964fac37bd89fc9e8b03af8b09bf5353f7b3784014c8327deca28f4";
+      sha512 = "8251eab30eb48b0012d3df66ebfbe75d75d36fc4d2ef71947113f747741f42ae8942db7a40df777973245be3c72949a303fe013341bfa64753d30ff05407d592";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/fa/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/fa/firefox-55.0.3.tar.bz2";
       locale = "fa";
       arch = "linux-i686";
-      sha512 = "ec6429c1d78e9b5e1e174c7e13d8d99a8358289f67c76d2ba3c3bf096d9fef7558969df37693b86d7ff077206d35934187906f82edefa0634a3b2b111f42cc1e";
+      sha512 = "418c2ccaedc94c695dd77bacc399d7dda65cba53251eeea8e203c68a80fcc2fc83f7f6a75bd2d919a5e8f61a148b25da7ef4e4026bf2ab35eec99f39bbc4daf7";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ff/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ff/firefox-55.0.3.tar.bz2";
       locale = "ff";
       arch = "linux-i686";
-      sha512 = "fc7287c16143ce71075b2f0bd5724cc6568e4c7ccd08ef81d1f46f945b6af18615c0b465bdbd358919af03ee956437cdb912e41c94741ad916d5e0ed993fb37c";
+      sha512 = "eeb0f38f0aa9cca8c7d9530a60416685054394a016778006eee3fad363f05ef8a362425e1a318d18b9f88c409b60fe380dfd86080825929aa9cd2553392a8b79";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/fi/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/fi/firefox-55.0.3.tar.bz2";
       locale = "fi";
       arch = "linux-i686";
-      sha512 = "2a73b783ac0c9728385d7a47e94a430bb04c3d8d50f7d35fc8256551788f2b23156e0d8cd73595c2d11af26060a4f5caf9c711a2542d9d68197e5773fcd03cae";
+      sha512 = "678e4396e41c5674b8bb5a536c498b48312b2fc029ac8a34fe152b93392e6337f41f29c755157a0cbb3af39098eb9a821ca288b1b09d28da417164a46195f5f0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/fr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/fr/firefox-55.0.3.tar.bz2";
       locale = "fr";
       arch = "linux-i686";
-      sha512 = "c8c0fd587e0947793c734e8b8a71f50f8d9321e8ea5214290bfe721a95e7ddb5904a7254a39d1ce395cd674c47ee34e613e09174528fb5c5a94323018d03faed";
+      sha512 = "2f94ad8820602f0687da70da22dd1d09ab7901e3697f55fb094f7e9ef2aee87b02aef529b58b528cbc7a3d3f7245f5fe2886949201fe902463febb1900c9e38d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/fy-NL/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/fy-NL/firefox-55.0.3.tar.bz2";
       locale = "fy-NL";
       arch = "linux-i686";
-      sha512 = "965e29af8153a239da08de82ce52acf78a76a02634daafdb8919c2c8c82c553ad989c7d893c6e9c0f9c10b9540762997c2ecb4d41f0411593588edef34eeae22";
+      sha512 = "7641e748104314754fab92b8d08a3f1d45871b10997a7c42b1862bd69db8cb8df41251a8030488d673127b24da40159996f1f9d88869ddf90cd60f9017cdf1c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ga-IE/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ga-IE/firefox-55.0.3.tar.bz2";
       locale = "ga-IE";
       arch = "linux-i686";
-      sha512 = "7abe283e1898c11bfe5df5a5ef629a0d08887e12606648c39a21eac4c96235c2ea5e2493ac1515d4ed8aaba638cd14f85c929fd08d8f79d933428823e7096266";
+      sha512 = "8eaba21bf5b37552186db581f5f0da833170ccc1eb5c490911b51771a72d1c48678aa680f29ef5f1a3a3cc019ba5e9a58fddfdb9acd08b2356886a84eb5801b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/gd/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/gd/firefox-55.0.3.tar.bz2";
       locale = "gd";
       arch = "linux-i686";
-      sha512 = "f980334b4576c3ffabcc41431a90379ac8d13e1bc493d39928f30faaf343bfeff9cdf897551b21548b4556df43eb27103f2836b9797331304be2dea536b63a57";
+      sha512 = "71508a24090f347738fc0511432d4331007e4982a69d2b07e8ef39a6c0917db55b6a0a1c4b5397f7bc96213c6ab67747a4252bba3625b1ec7ad3dbce4b6976a6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/gl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/gl/firefox-55.0.3.tar.bz2";
       locale = "gl";
       arch = "linux-i686";
-      sha512 = "5fb1d134a6ad89556880d3df3208c796a14773e1c7a62f4191726d6eb24c13c2e76c9a4aba3927032da4865786b936667dd6f96b8ca49224494ceb0f08ee759e";
+      sha512 = "01f4fe34072d62b95e0197ce2622334dd851c14066bb988b2744a983bb766d60852f8a1144b2d2972ea0a7edc8bd974934e4e120b9e218ea8307744ec42ad268";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/gn/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/gn/firefox-55.0.3.tar.bz2";
       locale = "gn";
       arch = "linux-i686";
-      sha512 = "508a04bef58c1042cf04f47134e615cafe26497ebe1ec0401f9d12c3fb21f87386a01859ba26226c9d0267c40cf6e5843349035c1a3e2f49c7c9f9d1439abd25";
+      sha512 = "2857bad04c580841f58aa29d02d30c87fa72d5ca2695c124ee73f5cdcef93e5b7cd02daa42f2b93a569be6773b0edb9c9da55289bf49f2e442fc91c1cf97ac47";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/gu-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/gu-IN/firefox-55.0.3.tar.bz2";
       locale = "gu-IN";
       arch = "linux-i686";
-      sha512 = "5d44ee3027a37c8251a8c612a08d8f6916f809cc0d86f8906295a82efc6d98f475bb80c0f961bf95871e7b2dfed8faf151ecf43136a022a2f7796070625ac71d";
+      sha512 = "8ec3538b7d0278caeaae64b19300132c76cefc3345e66a76bf686391ce35cb578be9674d14b6cc54fee2017792e319496777af337401f3b3419af99e86710462";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/he/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/he/firefox-55.0.3.tar.bz2";
       locale = "he";
       arch = "linux-i686";
-      sha512 = "62d08c2ee0b7015808883e66e5c54ed09a5ecf3a0b730efd5a89bc8d4cd35aea9ad6dd9fbfe394f12c2846923f47fb66e393c41cf4c273590a890ef1701fb7a0";
+      sha512 = "82324d45dda57df70520e878938a646e6692817f4f35d6d0f0518d8f8c7ce6183f968f9863e83304f5f41a5a6e135d77f613dbd6d277a66f6d5db9996381d949";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/hi-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/hi-IN/firefox-55.0.3.tar.bz2";
       locale = "hi-IN";
       arch = "linux-i686";
-      sha512 = "b6b21ed97830233ce22658e4bd7637a6449f53e095cc92b7381afa30f4d74c8df5b1082bcf1704aa75b53c0dcd75ad509774e818ee4073bfe6986ae4e93538a0";
+      sha512 = "0359d570441db163c8d8346a0cf1e50704125e6f165a6e1d7bbfbcd0ffd89fede9487195de927d9eec5d4f23889dbf4ed69d8a7807ddf93291da79bae14267c0";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/hr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/hr/firefox-55.0.3.tar.bz2";
       locale = "hr";
       arch = "linux-i686";
-      sha512 = "124965251c04b4db521b79102be73b88d747d0ab47898b2929ab867b24cce50768f62b61afcd3e03d338c958065c429524ef61ccaa0ae80fa1ad7c3def20e1d5";
+      sha512 = "fd3e94d57decd57ac00450b9b76cdda282bc2b528cea4630d6e835c5a1ff9d56c7be6c67e18e977ff4b3d00cc4e1db3d21b73debb7194bc094e29a49de405010";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/hsb/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/hsb/firefox-55.0.3.tar.bz2";
       locale = "hsb";
       arch = "linux-i686";
-      sha512 = "aa08c3616051ff566576776977af5a5827c5dcb68472ca48af5adcf0a107325395f9fae8a51f824e126b74fc9f6816401acedc0bc61783a8416e6ea3431fdf85";
+      sha512 = "0a6896110e471501194086932f155d0a5302fbae75fc0403cf437d13d5e5e3ecdc382ac748688f7918307e45d294e0b29100831fbab5684afb8d78f9031512bc";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/hu/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/hu/firefox-55.0.3.tar.bz2";
       locale = "hu";
       arch = "linux-i686";
-      sha512 = "5b7e3c318657e20bc012f1324928c43b950cb1fc860ecad40fe6a64e4cf8ce30e4a32bf617b02e397dda7a1f8bfc40c8709ba09144ae1bf5676104fad1763798";
+      sha512 = "ed27b99b71dbe5f51db4a981e4c93b59c35d7ebb2965b7d12719c70de41512201f37f4540aee2bb723ebdb7b2737df668babef889847d3c136d6083433e75c20";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/hy-AM/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/hy-AM/firefox-55.0.3.tar.bz2";
       locale = "hy-AM";
       arch = "linux-i686";
-      sha512 = "31e5389d610ccc05d387ae23676bead9176d87ada142fc545e571ddf296a4bfe396725982f011a2c0b35dec8f8d06e97aad8b42235cb98aa9db5f0352356b3fa";
+      sha512 = "568c1e4bc95c26b5b0113c0784a305dd5ecfba56f5cb8318f71e135a676f9b86e38fe31675684785d2cbff7a1db46910c0ef7c60470791f9b6c0334422df83ec";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/id/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/id/firefox-55.0.3.tar.bz2";
       locale = "id";
       arch = "linux-i686";
-      sha512 = "b037671a6d63e0a55564987dfcd1b3bee1347c180e29a6e6df80db0d6cda284e08a6eb5b31a37a1eff208030aea3cd3d4ef0ed711ec1c936c746efa870e5bd46";
+      sha512 = "91e66bda4ef701bfd10e5170ba463fcd1849083651add4cd09103c5eb6532ce5f72bd30a15e0caa811e2e78326fa53429f7d232a27100ed03207f2a2110730bb";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/is/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/is/firefox-55.0.3.tar.bz2";
       locale = "is";
       arch = "linux-i686";
-      sha512 = "6a681a05885574a163d7603edf61a0d075728c7eb50d8e78690c0828d5189ee757cc225913f060b27a254f2a19d03eb63525fd5f305377e45ee4ce5c729ba397";
+      sha512 = "a9fe82f9045ca421c45bb9f2de9fd28b57b22329dc767b402a7393d0275acda591cd193d0285395a36907a9b497427a88d2d4da2c224bcd123dfbd53888b2e3b";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/it/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/it/firefox-55.0.3.tar.bz2";
       locale = "it";
       arch = "linux-i686";
-      sha512 = "5e37dde84cd5b7a162438d2d418fa80f8529cc3ff3b28bd37b0826d8f5981ffec6fcfbe7b41cbba92d7c921bdb1249e6b0f5188ef983187e7b60bde08e80bb24";
+      sha512 = "2ea32878113a4256eb9e264bfbf67a81803f8c89a63d74e3ba66a143ede3af2082e5fd13f1e761147f5545c29c70f578210b2a4e5dbf2985ce957ce79db2d568";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ja/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ja/firefox-55.0.3.tar.bz2";
       locale = "ja";
       arch = "linux-i686";
-      sha512 = "f59fe7957981b362d01f33483bb43ade19894c0f80fc2a1b889e3348b27876f54b7de20e9a67915bf8a4e0c4d89cefc87911841637c63f987b0aea183bba4ed4";
+      sha512 = "760b3c4ad18d6af0b1bc993dd9d12d76e30f6c197b1e58d9b4606d271ce502fb609b1208c0ccdea222bc7076f03dc8923e61cad092d23c0289ffb5bdd3d8442d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ka/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ka/firefox-55.0.3.tar.bz2";
       locale = "ka";
       arch = "linux-i686";
-      sha512 = "381f250da469df0245bf6a41165955b0dbac3a14268b9a9bd59836d3094695ac6ae434eaafd41138b24fec3507a6d020ec2bcde740865ec3605a554a1c7ca0e1";
+      sha512 = "5a2c4a3249be869c5e70369c38a3795de3cfc2ad9bf30f933f82b4a286d72fb9c936d4df8e1320105a4ba20ebadaaef1659ecbec80eb9e8e21aa8f403d912c41";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/kab/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/kab/firefox-55.0.3.tar.bz2";
       locale = "kab";
       arch = "linux-i686";
-      sha512 = "5f33d95c60567e02fd4f721a5a0084a255a16bb130737c7dc8e4ee3334f2eab33d4a415ef306bedf55f7f0aaca7e615bd5cc175a08edcbfd770c035ce928bca1";
+      sha512 = "7ef692ed2101c094a08b3593ba2d1738a616803b3649f83f650c0038316fd52b51e8cde53116015a54dcdfbfeb9d1209dea2273705142bf431b29c2f6b7611dd";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/kk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/kk/firefox-55.0.3.tar.bz2";
       locale = "kk";
       arch = "linux-i686";
-      sha512 = "ba2006d6b797fb63bdeb285d7eb5f91374f2b8df7593f712a6b5fd185bfbf8af082f7e2db1f7a79a15cc34a95458ed114b78daf89b362dffc7238a253421ddd5";
+      sha512 = "bd88bc609a6638f9cf825e2ce9b7a615c555532275dea9dc3c6e79376cd2d814b886f5266631166a53ea38542e66011608f52797febd2867d15c18223d5f7788";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/km/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/km/firefox-55.0.3.tar.bz2";
       locale = "km";
       arch = "linux-i686";
-      sha512 = "ff67a4724bd50795aa8161b74382f9b53caab3b98f6950b4d3285c0f8ea636c4b6626a4d3e8ed03c633f756ed9738b4ce69e6cffdd034aece4515ab7bb9ece07";
+      sha512 = "b38ca1ff78eff732ef54d71cc956a31fe87922e76df5cef63ffc13016b01394aae904a17b7c8905d62120420bf715b8c37f73cd5fbe2468003d55b8c28db47c8";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/kn/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/kn/firefox-55.0.3.tar.bz2";
       locale = "kn";
       arch = "linux-i686";
-      sha512 = "42eae0cb137fecfadc72dcbb0e7ff62e7b6701d1ebbf4190e1d20a1211d200b54989f15889f260566002a83d672b105453cdf23c2094af0f55cf4300381e9c81";
+      sha512 = "ae05bfa4914d479de80f0cb6842a570737b21097a60386b700cdd831374e6197cbc5d0b171b2091ce962e082bb7809fa46fcffb4a1281d7c38d5f57675b8e925";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ko/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ko/firefox-55.0.3.tar.bz2";
       locale = "ko";
       arch = "linux-i686";
-      sha512 = "8fcb7965e550c9fd510bf782f54a60bdc38f3707874c6f24d1a24de7ddd5eec2736490c6cdc2ed1206e99a75b3d7267a216bd6003652375841789c0d0e0ed71d";
+      sha512 = "20993f13768ea3b035b0b9d80db2baaae2d07757761a9d0a8e2a992df2e7ba3b891222c93dc3778f1b51b381ab99adf2671161560904f99a4756d5e4999cfc82";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/lij/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/lij/firefox-55.0.3.tar.bz2";
       locale = "lij";
       arch = "linux-i686";
-      sha512 = "0dc0d54b31816be522fda4572347f6c4f1c244b0a919650500cc66beb39da1e46637db089cb595228213cd4e99262bfe4689f6315f25f6e359ad299bd9d202db";
+      sha512 = "0bf873490e9a6dc237d5bf2b8f32676b78eb1d6d9a8cf5f5ca9d1913b4b235e9694010463ba13bd082a90cae23d65f6eb33a15a8dd8e21092a5c966c2805ef54";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/lt/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/lt/firefox-55.0.3.tar.bz2";
       locale = "lt";
       arch = "linux-i686";
-      sha512 = "9b498e3adc4d069e219af0034a69fddff2d70e7a28dee522448a2c4586e26b6b905ba8f501f5c9b83b9ff8a2888d7025171aefa002a815fb6d352889cad95016";
+      sha512 = "0660a016305c84dc4601bc1e324864702233cd08a356673f515d8b9a9b7be443c6e265cc6072f144c49a097ab3d512b033ef0ca657be92117f6b646b6e2102f6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/lv/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/lv/firefox-55.0.3.tar.bz2";
       locale = "lv";
       arch = "linux-i686";
-      sha512 = "2246366ee92a315330a4e8d1e77e21cbf875d599c169bffdcf32eace63b5794ca106d5801523bcf547dbb26ed24aab3ad108e461a8cfce0254b6389f6b1df077";
+      sha512 = "6fa4d166fd871e1d76d8324cfe50217a468c6da073905504919ab69c6dd14521f585e0e347fc076c985afb5d41f86b3ae691f09492c97400ad5245ddbaaadcf1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/mai/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/mai/firefox-55.0.3.tar.bz2";
       locale = "mai";
       arch = "linux-i686";
-      sha512 = "ca5bc8eee4fe7643c98a3c93381a7156373b1ec94c86d8601d1529daf8cb225ee12d813fa2d310384d99cfd130dc3480ff243017a15739533d7cf7552052f12c";
+      sha512 = "a18f5580bcf74d2dde0d2c1bed4413add943d0e7ce8529d3fb5ab55b91397352eb70ec8c393cf8f9dd89e3a32f4187b4cc93954800b63d1a10853bcf13202b10";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/mk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/mk/firefox-55.0.3.tar.bz2";
       locale = "mk";
       arch = "linux-i686";
-      sha512 = "ca81a90c97feedc7bda3ce61f5dccc0e3c2563d284a8e10c4ddd16a3d93042e3fa38f10dfbb0218df9fa83051b778ffa629d5f57735de85e44b74b820d180018";
+      sha512 = "72248c99fd9bc40ce579992438cd94b050c18100b26cbfe575c6199ae3b986d1d8aeb8fcfb63c8b8464b7d4ec35f6b332fc32595e72603eb7d41f0b0dbf3c2b1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ml/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ml/firefox-55.0.3.tar.bz2";
       locale = "ml";
       arch = "linux-i686";
-      sha512 = "7668eff72251028c9392774cb84742ed5027d4e0b617b4864b0e3d079061c95ab81c0a2471466a1b69a8e0e5d331b6b75c6a63be2411ff90bab48b3acab28ca6";
+      sha512 = "f9ae435602cfc796d93a2e5aa9ffe1216c1465de3beed4ecc6b04141c392df9d1b6280deb1d69c30330db4c9ac6568b3cc4849e57c8e84f8d3e69c47a473018f";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/mr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/mr/firefox-55.0.3.tar.bz2";
       locale = "mr";
       arch = "linux-i686";
-      sha512 = "27f6410bd1da1e7360cd86c493aaf7ec406a30957fa41b35c5ac8b7a5c32eae2da0b5197a018379215bfed60032c8291446d9e3a10f5b371675154cb54b8d0bd";
+      sha512 = "0cff95fc291a1874926ec895150cbc99b8219b29f4e66782ab182c29670b2356a5ccb1a765e0eb734666f7ff4a7be7806c62012b38118ce8d2a8f7c47a1e936c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ms/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ms/firefox-55.0.3.tar.bz2";
       locale = "ms";
       arch = "linux-i686";
-      sha512 = "cb1718ed34f2e1a48a2ac2f69a00d477cd3aacab7a6b0d149f240ddaacf04993c44403f68c9d5cbac95e03db893c8b713208466784f867d4b00b0122b9de5c39";
+      sha512 = "1add2335e98ad3ea9a2b57ca733087830c50e50872f8add7d8d5f2571f2d858b4f4a866298a8509398237ba62c363eccce9bb358c978cbd7b1ac6cf1dcaffce5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/my/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/my/firefox-55.0.3.tar.bz2";
       locale = "my";
       arch = "linux-i686";
-      sha512 = "9fa2f51c3666a7536dcfb8fa769645117c98eff0af9969bd0e54853c42345ad407b102db952ae2a9cbf286c221b0a821f56f3f67caf114fb62990b0564aacba8";
+      sha512 = "901404d74cdd090c0a63b2c0e60d0fb7afcdf3fbabda7dff07205613680ea315c2c33ee33001c8e10174f91698cc1cb4f03dfcf96e1104a5bd2d4750666627b3";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/nb-NO/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/nb-NO/firefox-55.0.3.tar.bz2";
       locale = "nb-NO";
       arch = "linux-i686";
-      sha512 = "230afe8420be9daeb270fbc836de70ae2eb197c2b1b9f8d7606d16c73c718190ebde135bdb8a78ef29b1b271a30bca3f5438434c54e76dd3f86076dc77fc5b6c";
+      sha512 = "50821c1cf2ff9b49c34f9e05007678068d73d9558e43083bb305049c47d62abeeb3c0a994d872de6c9dbe86971e4a5d70de716a9051180a0b2bd73df213416b6";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/nl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/nl/firefox-55.0.3.tar.bz2";
       locale = "nl";
       arch = "linux-i686";
-      sha512 = "8d8ba124d9efd39a2faee19d2e37fa11506a135aaf70fa780471a7ff763c943e943ff970a70023d4431da50f5e7f842382bef66eea6ddd07f3deac05850761ba";
+      sha512 = "a81331ef521173951d7b45e726dcc0d57fa4d1ae1d9c05a835163bd71bd6ec6ee410a355bd2d697b6c59f3a8d9d2a5122182e82ed800b0d8c1830ff759fff71c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/nn-NO/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/nn-NO/firefox-55.0.3.tar.bz2";
       locale = "nn-NO";
       arch = "linux-i686";
-      sha512 = "ee7125a2cbb47d1ad7b541ccd4480eae05ce5b94d8a280f8f99cc45a29e23480f3ba5610d5f97e2b5ad677a2d6b79b72162707fda851f5930b8f38ba030abdc4";
+      sha512 = "9e8e1337557ab07c07ceb5395d6cdaca647a606650ff00d76244df125e6e041b3580828cc25dc1e300559b05a83121454e77c88e47c0708c30a561b00f18a86c";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/or/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/or/firefox-55.0.3.tar.bz2";
       locale = "or";
       arch = "linux-i686";
-      sha512 = "f7dee58fa33c741aeb0a85e5d9a2787e6af7a74e48cf41f76fb381f8761ce5883b639e023246ad94efa42c51da88dbc1bf5c1af25832c01e71915a9156e07a42";
+      sha512 = "4dddf3bcc8b46c326a632f96844ec369c5593bbd70a846a4d041a5f14da29b953c3318aef820b46d4e77d25e79290fa77230ef17c0d57bd00802f830ae4a76a1";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/pa-IN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/pa-IN/firefox-55.0.3.tar.bz2";
       locale = "pa-IN";
       arch = "linux-i686";
-      sha512 = "28f22dacd509e904a61c915f40abfe315f724f919a1ef31d338173ba92df4e7977f77b48f7aac999a89b170f845d0bd1e21e07090189193a10568ed14749213a";
+      sha512 = "b22a57fb65257b25f2a7c083fbdfeb9ca0ff83919d5201fb6996a5af33a68a2722ed8174853d81a90d61beb79d811c6b756d1fca6dea6c70175165255dc92bda";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/pl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/pl/firefox-55.0.3.tar.bz2";
       locale = "pl";
       arch = "linux-i686";
-      sha512 = "712433bd8d4cc1d1a29adfd2c3de423f355dfe92ea9c341b1315272f22ae4c1a1b7cb34a9320e8ba2479652e99401b0d449824fca23b4a61bd2763265ccf401a";
+      sha512 = "76d98c31d80b581a910a703098a0f80d9b9dceebb8b8f5f69eb428a59d7b592ff3aea40f152b1c74a9a849c45cfe1334951261b84e84ed454afa3bf9d14afdd2";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/pt-BR/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/pt-BR/firefox-55.0.3.tar.bz2";
       locale = "pt-BR";
       arch = "linux-i686";
-      sha512 = "50701c3deac2821de87dde0858804bfe2e5ed25eaff5ab599a5a6fd03fc94ccbcae781f4b127bf4eee2cd068415d78535dc6f029ba472ab6060b803b815c33af";
+      sha512 = "b22cce3b391df6c945a7d84294b3ca36c90438d1eeeda002f1af4230bb8638733db1313b36f3d907b8ad4b7b117eec58c601abb21400ca2cd228a44fc49a499d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/pt-PT/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/pt-PT/firefox-55.0.3.tar.bz2";
       locale = "pt-PT";
       arch = "linux-i686";
-      sha512 = "4a03a6ee97a7576475c47c1eb9f4148fc242dab79f80013cc720f3e4f31a176d59ebbba9aa53e0ef72a3b890ac3c8d3905e22eabbac61b0c95bb50e8fd4aa2c1";
+      sha512 = "7f0f627c170f8db91525a3aebbe1afe47a84745eba53da6fec79c14a95d857f8ca65ed7b52d67d966f371d3c4cf1bc4d734e1c8f427775e234aa80c318aeac52";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/rm/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/rm/firefox-55.0.3.tar.bz2";
       locale = "rm";
       arch = "linux-i686";
-      sha512 = "868cf77f91cfba14156e5e053891407a831aa6e24c8050d20e7772a0e7d8f06b831d83134f177fa7fa1fe2fafa815036e7b9a6a5c3b1814d191aec9ffeede3a6";
+      sha512 = "3e7941441c09a0dbac44ae352b3817713b34c0a7cf694e465b75cdc53d977b97ae3e388ae580880bc33df134d11fbe941b4d1c63567ee6183f43bde31a2d9793";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ro/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ro/firefox-55.0.3.tar.bz2";
       locale = "ro";
       arch = "linux-i686";
-      sha512 = "a30d9ee09a94830d1196ea2ce0e92e304a28c696a8b8ccc9066ab67b03452fec4f93bd3c5975f9db22a8dba0cffd115000efad815fd9ae1a1a892cd5a3d87bc2";
+      sha512 = "67d270f1eed7b761499967d1d3ae6c1c7e067f124689f6214be6ba5687f3eb212e70a6089573ab2a90315593d8749496e48d047cb8642b19c01877ee394ef86d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ru/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ru/firefox-55.0.3.tar.bz2";
       locale = "ru";
       arch = "linux-i686";
-      sha512 = "de5678325845a719fdadc26928a6691887711e08a3067f2ad2c658db19e68a019b567e6916673ba6b869b8174cf9729015400feb7aae5cd9f7ea55e85d085348";
+      sha512 = "287e6a3fb2de71b31a0cfd74d3eca00ad8ae1cc68760fa5731c1cc9f58c4bcccecbfefab892b93864ffffca6433498d6daafd7928b9633f8a587de3c0787600e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/si/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/si/firefox-55.0.3.tar.bz2";
       locale = "si";
       arch = "linux-i686";
-      sha512 = "0942c285a4e4a5dee08bca7709337f01d03624287a0ff8030309d1f503da4ac13c0df8314c2eac4be3a13a9842ba8e9fc2b3ebaf6a7d405e733afb8ff1bc3d8e";
+      sha512 = "63260a1c9e333d05654ac7d912011228d0f787d2d2a5b084410ee6cef75b41ef3ee08dc305f95baf459d16fa4f206792e3811426500ded4d02eea0d6fbc0d5ce";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/sk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/sk/firefox-55.0.3.tar.bz2";
       locale = "sk";
       arch = "linux-i686";
-      sha512 = "881bf74e210e0b3430060644429bb77447014381e6aacee6901dfc35dfcd260e719e39dcd158fb7624261ca62c68587c12fc178ee62548f4a1f0844c8a9c1eea";
+      sha512 = "339c3df4c1a12e14f6e2156ec0fc64aa62fb5d5e93897fcd412980ffa37edd2f6a55f3da991e0ee4c00aaa30e469f862e288cd8c950ac03bcebbe8b84d12f374";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/sl/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/sl/firefox-55.0.3.tar.bz2";
       locale = "sl";
       arch = "linux-i686";
-      sha512 = "f813a8dbef0506e281c3e347d8a240da65940c7fcb0609a9510ab3c83f2fd13462d1ad749bbe768ca65b92ae1d9dab72880f5592b430d796fd377748291ba41e";
+      sha512 = "793c89b07c0fb8e7929aecb67bd37a1a97156d48f50972ec13583728614703b3d69e50249efb12b592aa6e5643d3f2af2aa57854ea1bb88d080983ded11ef676";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/son/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/son/firefox-55.0.3.tar.bz2";
       locale = "son";
       arch = "linux-i686";
-      sha512 = "61c75236138087ba7b56eaa5fcf4360fb869dcee60dd1f431b92a613ca00a64172bb48e9ff3a649e5e616566967ea0f254517ac1c98875efe2972bc9d2075b96";
+      sha512 = "51d941ebf974bc04f9aa7a02c14c14b4aa5190d3621604964262a92d298d68d36f3aaf84ed235760d1d9d766d29a97490ddd6df8cfc53ab215526741c8de0d31";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/sq/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/sq/firefox-55.0.3.tar.bz2";
       locale = "sq";
       arch = "linux-i686";
-      sha512 = "072fc33249af1ffe150ef5ab2ccf79322227844e1adc4928947b43b7956b98812ed80b1995e06d5e731f107e58cd1bb1d26eba1b9695fff7a69e00010c364e0e";
+      sha512 = "44ee948b537e8774fbc37361639a83508fa3e7bb0978e12bce9ecd8c9a02d9bcf6ba28922093e8701deac71fd577eb4d85cd349c85e93fb04f5e5e6a02d6fa48";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/sr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/sr/firefox-55.0.3.tar.bz2";
       locale = "sr";
       arch = "linux-i686";
-      sha512 = "bac3cfc1adf91712b58777b26fc506e1db025a58f94aef8016904d957cd8dbb2f91950ae652e076b27d4e6624458c1f10d60ca0e2906440663bfb9e239916e04";
+      sha512 = "77e9dd47c3967435a83e191c335791d03e6e63206f1e303eece5e1a813bf5e0b88aede11eea033972e578974beb4ec6bde260194a01e15f7b9ed7fd915ace77d";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/sv-SE/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/sv-SE/firefox-55.0.3.tar.bz2";
       locale = "sv-SE";
       arch = "linux-i686";
-      sha512 = "57499d98d877bbe491737ebf1b799ffef61ea41f7c903b3fc298c7006fb3a1d791cb716487f4b4fcd32d230f0fe8466ee1f36cdfd3832d920928bcdc62586ef5";
+      sha512 = "945a718d39d665e4b51a57ee4bb819eca8d4572c2e9098c448bece63b76bfbb652764667908c66ab4f9ace0c82b2d476f51a6fae5ba0f24aab8f94e47f506085";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ta/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ta/firefox-55.0.3.tar.bz2";
       locale = "ta";
       arch = "linux-i686";
-      sha512 = "dfc1348f2239d917c19aee05f2b0d181b8028ab14b5b60fef2d8eba955fe1cb50a1400f8b5639f86c2aa8b82cc3a248224dd126d3313a5dc2f2f16014db1d0dd";
+      sha512 = "17c5f121cee7d8b81fae8f1b2dec696e4fe02abeb0fb50124906dbb9d00c4a74a917d812760e671215f7391c408a391ecad2c590103956460dbbe5484595f457";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/te/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/te/firefox-55.0.3.tar.bz2";
       locale = "te";
       arch = "linux-i686";
-      sha512 = "50e89852e7799661c506f313440c7ef10ce96fa7562452cf9f6685a93d8d2f8ec15b8984d6fe971e9fe16b4ab916b665c1e4343e37a5cd4b75f0227dd2530915";
+      sha512 = "0f14c88d99afa7f299bff4d456d10a08bd4d359bd5ffae74b51eb907274e0ac5da1b762f357b845f7039e2b43fffa1b20c1a7fbd895ac57eb42615516ef0329e";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/th/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/th/firefox-55.0.3.tar.bz2";
       locale = "th";
       arch = "linux-i686";
-      sha512 = "d1538447ed93bc652131e6d608a784294cf5f6b828e88109ff452d8f8e537dd76f9fca95b29c7eb3874c1e0b284b8ff45680783282945820fce1609c2c1cd116";
+      sha512 = "2727f304314911aabbd34f46afda1c035fe018cd2efcfd2ab89cd71a265de176b5fef36f176086f93c28e0d456464634dd36f6e048761b24d276aecd0dc7fb97";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/tr/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/tr/firefox-55.0.3.tar.bz2";
       locale = "tr";
       arch = "linux-i686";
-      sha512 = "7e6984a3364c1da09ada8f4aff6c2e1c371b5a4a6ee64b13afd3144d8e221081248aad6baf0d5399c3dc8a9891b184ac9fb74c9572b66007b1f1fc29642c16d3";
+      sha512 = "74b31af4b6622d286aa145e41567b09e9d1f0d922dd256647f09c959f09c2637889d11a346ec303c0fc871c8b1a382707756b8d0fc38d7093387b0247d143ff5";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/uk/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/uk/firefox-55.0.3.tar.bz2";
       locale = "uk";
       arch = "linux-i686";
-      sha512 = "98ffd7e12a77387cb503d8c91cad07385d6d151319afd6c109712638e83ff2391555906c762c4127455487d5d9dc0ee68a20a0865791b4ebad3deb1bf9bae04a";
+      sha512 = "a9373c5d8379a7ab483d4587fdc3df8adee0371d2a40b7886033d0505022b8adb516f7164d67da7b504e170aa5ed105218124274173d29c232e2dab7f7279921";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/ur/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/ur/firefox-55.0.3.tar.bz2";
       locale = "ur";
       arch = "linux-i686";
-      sha512 = "2e1de51b606d155bb05c6e6f51dbfa0932ec0d9d521e3904859e0c3a98ecdcd174efe865ccf44f54814530c8a979d00508d7edd25fd3d8b2e2824dc2576898fd";
+      sha512 = "78578c99aefea3eb46d70d563868d2eb0bf43cc6a905b908305cf61ffe5b49064bf2845661af48c861e93cf50aa5e9d8dfaa755f11732760c1574cc0c88e5718";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/uz/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/uz/firefox-55.0.3.tar.bz2";
       locale = "uz";
       arch = "linux-i686";
-      sha512 = "850fed3fbca540e717bfc6941f1d41067e596b338173924cfd2bb4109f6c52d0eb83d0f5c405f3aa3074e853dc1f1cce205f1e599ea5a2dd1422ee37fc40b691";
+      sha512 = "0739b4d60e55b1d4e0ef5984050dca5ef484edb73ed590f948d8e4c4c2303cc0fcd177dbcca4ef66bf61821172675a4805aeaaf3349df1dad5a3080544316aa4";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/vi/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/vi/firefox-55.0.3.tar.bz2";
       locale = "vi";
       arch = "linux-i686";
-      sha512 = "aa512af12c17bf2703798b3e4bd846fcaaac2230be4062f1804b73461b78f9ea8fadec137783c8f7c6ecdb11d1a1f324c57884dd3e3deb7591c4203603887d73";
+      sha512 = "9e0185b988338a333e7d89a384bd42dcf6f6ca8db4eedd56236357909f9d43ec09685e8099fe25833dcd60c301297760972770bbca7b61aba87622abc2623428";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/xh/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/xh/firefox-55.0.3.tar.bz2";
       locale = "xh";
       arch = "linux-i686";
-      sha512 = "72273bedebc546a1fcb1869154cefe7cd542348e20d01a23a3cefa8eb8bd0766159d46d69759a7d444b8d28f9769d1ef693b9f16e4fded27eca2b1a93ace6ffd";
+      sha512 = "63c1cd434edcb6069959085526cc14845de1fbf4da135a1e705433fae305dacaccfc958b98e0905b5cb2627f50b768db0940aeb728a4ab84e4592b596e50a895";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/zh-CN/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/zh-CN/firefox-55.0.3.tar.bz2";
       locale = "zh-CN";
       arch = "linux-i686";
-      sha512 = "ef38cb84527c941be98315db0f9f6dd6c30a7eaf2ab8830429d79341e6af3ed919ae046b6e42d08e07990d2255b2600cb7dd3b3f24c36cb985d57e7828ab7f53";
+      sha512 = "a8c2473a2e172eb7bb34a66a4ce145218ba1cdbf951d3865561512cecd6cdda2a9741c6b383706f37537eea646fa1b282174ce9634bc69105c7611879c851a69";
     }
-    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.2/linux-i686/zh-TW/firefox-55.0.2.tar.bz2";
+    { url = "http://archive.mozilla.org/pub/firefox/releases/55.0.3/linux-i686/zh-TW/firefox-55.0.3.tar.bz2";
       locale = "zh-TW";
       arch = "linux-i686";
-      sha512 = "b7aa08e3e983c0453ae2d4482ab3d15c7a0a814cef78cb2103539a2771555e0c2c8675e3f8bebcbfb7c801bb2b1399e321b805d99aa28dcb3aee104d887cd6ac";
+      sha512 = "f40193e6390f143cac3cdc0c230fedf2e791792d16e8446becf2038b4916274b47522bf5f239454696a8cbfffbb001556ade3b1bee2bdd239843f3bc3448b03f";
     }
     ];
 }
diff --git a/pkgs/applications/networking/browsers/firefox/packages.nix b/pkgs/applications/networking/browsers/firefox/packages.nix
index a0a1b304d6c..36053045468 100644
--- a/pkgs/applications/networking/browsers/firefox/packages.nix
+++ b/pkgs/applications/networking/browsers/firefox/packages.nix
@@ -6,10 +6,10 @@ rec {
 
   firefox = common rec {
     pname = "firefox";
-    version = "55.0.2";
+    version = "55.0.3";
     src = fetchurl {
       url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
-      sha512 = "a27722cb5840aac89752fea0880a7e093e84b50dc78a36dc8c4bd493ffda10fa61446007f680bfe65db7a0debe4c21e6f0bf9f0de9876bba067abdda6fed7be4";
+      sha512 = "3cacc87b97871f3a8c5e97c17ef7025079cb5c81f32377d9402cdad45815ac6c4c4762c79187f1e477910161c2377c42d41de62a50b6741d5d7c1cd70e8c6416";
     };
 
     patches = lib.optional stdenv.isi686 (fetchpatch {
diff --git a/pkgs/applications/networking/cluster/minikube/default.nix b/pkgs/applications/networking/cluster/minikube/default.nix
index 081811ecd64..0a3cede66f3 100644
--- a/pkgs/applications/networking/cluster/minikube/default.nix
+++ b/pkgs/applications/networking/cluster/minikube/default.nix
@@ -14,10 +14,10 @@ let
   # instead, we download localkube ourselves and shove it into the minikube binary. The versions URL that minikube uses is
   # currently https://storage.googleapis.com/minikube/k8s_releases.json
 
-  localkube-version = "1.7.0";
+  localkube-version = "1.7.3";
   localkube-binary = fetchurl {
     url = "https://storage.googleapis.com/minikube/k8sReleases/v${localkube-version}/localkube-linux-amd64";
-    sha256 = "1pp5bi0bpxxzrshvkv47hqs20jfx3gp1i1p3pw1rvzm5n1fn2q1a";
+    sha256 = "1ay11321kg3waxzi9d885pr08hz97a8ajwk31kbfxlm3x5bk3jii";
   };
 in buildGoPackage rec {
   pname   = "minikube";
diff --git a/pkgs/applications/networking/corebird/default.nix b/pkgs/applications/networking/corebird/default.nix
index 376c70f3f44..412335094ff 100644
--- a/pkgs/applications/networking/corebird/default.nix
+++ b/pkgs/applications/networking/corebird/default.nix
@@ -3,14 +3,14 @@
 , glib_networking }:
 
 stdenv.mkDerivation rec {
-  version = "1.5.1";
+  version = "1.6";
   name = "corebird-${version}";
 
   src = fetchFromGitHub {
     owner = "baedert";
     repo = "corebird";
     rev = version;
-    sha256 = "1qajb4xms3vsfm5sg91z9ka0nrzgfi0fjgjxqm7snhkfgxlkph7w";
+    sha256 = "1bxjlamdy5d2j3xdahmxf6lwc7f6xdfxbzi712ppvh1dwggw654v";
   };
 
   preConfigure = ''
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ automake autoconf libtool pkgconfig wrapGAppsHook ];
 
   buildInputs = [
-    gtk3 json_glib sqlite libsoup gettext vala_0_32 gnome3.rest gnome3.dconf gnome3.gspell glib_networking
+    gtk3 json_glib sqlite libsoup gettext vala_0_32 gnome3.dconf gnome3.gspell glib_networking
   ] ++ (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good (gst-plugins-bad.override { gtkSupport = true; }) gst-libav ]);
 
   meta = {
diff --git a/pkgs/applications/networking/ids/bro/default.nix b/pkgs/applications/networking/ids/bro/default.nix
index 4117d409b93..f3962811a8a 100644
--- a/pkgs/applications/networking/ids/bro/default.nix
+++ b/pkgs/applications/networking/ids/bro/default.nix
@@ -1,20 +1,21 @@
 {stdenv, fetchurl, cmake, flex, bison, openssl, libpcap, perl, zlib, file, curl
-, geoip, gperftools, python }:
+, geoip, gperftools, python, swig }:
 
 stdenv.mkDerivation rec {
-  name = "bro-2.5";
+  name = "bro-2.5.1";
 
   src = fetchurl {
     url = "http://www.bro.org/downloads/${name}.tar.gz";
-    sha256 = "10603lwhwsmh08m5rgknbspbhd4lis71qv7z8ixacgv6sf8a40hm";
+    sha256 = "04cmm0vs8q31mgaq3pxybjk834py3ji16qp4qcir7vjbhq1fav1c";
   };
 
-  buildInputs = [ cmake flex bison openssl libpcap perl zlib file curl geoip gperftools python ];
+  nativeBuildInputs = [ cmake flex bison file ];
+  buildInputs = [ openssl libpcap perl zlib curl geoip gperftools python swig ];
 
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
-    description = "Powerful network analysis framework that is much different from the typical IDS you may know";
+    description = "Powerful network analysis framework much different from a typical IDS";
     homepage = https://www.bro.org/;
     license = licenses.bsd3;
     maintainers = with maintainers; [ pSub ];
diff --git a/pkgs/applications/networking/instant-messengers/discord/default.nix b/pkgs/applications/networking/instant-messengers/discord/default.nix
index 6267a3c8eb7..853a6c96a7a 100644
--- a/pkgs/applications/networking/instant-messengers/discord/default.nix
+++ b/pkgs/applications/networking/instant-messengers/discord/default.nix
@@ -25,21 +25,21 @@ stdenv.mkDerivation rec {
      ];
 
     installPhase = ''
-        mkdir -p $out/{bin,opt,share/pixmaps}
-        mv * $out/opt
+        mkdir -p $out/{bin,opt/discord,share/pixmaps}
+        mv * $out/opt/discord
 
         # Copying how adobe-reader does it,
         # see pkgs/applications/misc/adobe-reader/builder.sh
         patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
-                 --set-rpath "$out/opt:$libPath"                                   \
-                 $out/opt/Discord
+                 --set-rpath "$out/opt/discord:$libPath"                                   \
+                 $out/opt/discord/Discord
 
-        paxmark m $out/opt/Discord
+        paxmark m $out/opt/discord/Discord
 
-        wrapProgram $out/opt/Discord --prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH:${libcxx}/lib:${systemd.lib}/lib:${libpulseaudio}/lib"
+        wrapProgram $out/opt/discord/Discord --prefix LD_LIBRARY_PATH : "$LD_LIBRARY_PATH:${libcxx}/lib:${systemd.lib}/lib:${libpulseaudio}/lib"
 
-        ln -s $out/opt/Discord $out/bin/
-        ln -s $out/opt/discord.png $out/share/pixmaps
+        ln -s $out/opt/discord/Discord $out/bin/
+        ln -s $out/opt/discord/discord.png $out/share/pixmaps
 
         ln -s "${desktopItem}/share/applications" $out/share/
         '';
diff --git a/pkgs/applications/networking/instant-messengers/riot/riot-web.nix b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
new file mode 100644
index 00000000000..ea6ec1676ec
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/riot/riot-web.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, fetchpatch }:
+
+stdenv.mkDerivation rec {
+  name= "riot-web-${version}";
+  version = "0.12.2";
+
+  src = fetchurl {
+    url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
+    sha256 = "0zyddpnng1vjli12hn1hd0w99g6sfsk80dn2ll5h9276nc677pnh";
+  };
+
+  installPhase = ''
+    mkdir -p $out/
+    cp -R . $out/
+  '';
+
+  meta = {
+    description = "A glossy Matrix collaboration client for the web";
+    homepage = http://riot.im/;
+    maintainers = with stdenv.lib.maintainers; [ bachp ];
+    license = stdenv.lib.licenses.asl20;
+    platforms = stdenv.lib.platforms.all;
+    hydraPlatforms = [];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
index fed8dd223d6..90fc4944d80 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/default.nix
@@ -1,4 +1,4 @@
-{ mkDerivation, lib, fetchFromGitHub, fetchgit, pkgconfig, gyp, cmake
+{ mkDerivation, lib, fetchgit, pkgconfig, gyp, cmake
 , qtbase, qtimageformats
 , breakpad, gtk3, libappindicator-gtk3, dee
 , ffmpeg, openalSoft, minizip, libopus, alsaLib, libpulseaudio
@@ -7,19 +7,20 @@
 
 mkDerivation rec {
   name = "telegram-desktop-${version}";
-  version = "1.1.7";
+  version = "1.1.19";
 
   # Submodules
   src = fetchgit {
-    url = "https://github.com/telegramdesktop/tdesktop";
-    rev = "refs/tags/v${version}";
-    sha256 = "0y0nc8d4vlhsmzayy26zdxc5jaiwcv0rb2s1v5fwnnx71gf89m2w";
+    url = "git://github.com/telegramdesktop/tdesktop";
+    rev = "v${version}";
+    sha256 = "1zpl71k2lq861k89yp6nzkm4jm6szxrzigmmbxx63rh4v03di3b6";
+    fetchSubmodules = true;
   };
 
   tgaur = fetchgit {
     url = "https://aur.archlinux.org/telegram-desktop-systemqt.git";
-    rev = "83af81905de7fc5dc9fbea8f5318d56fa8a6efc6";
-    sha256 = "0v7g7y5cmxzp2yrcj6ylwzxlzr9yrqs2badzplm7sg012nc69yf9";
+    rev = "a4ba392309116003bc2b75c1c4c12dc733168d6f";
+    sha256 = "1n0yar8pm050770x36kjr4iap773xjigfbnrk289b51i5vijwhsv";
   };
 
   buildInputs = [
diff --git a/pkgs/applications/networking/nextcloud-client/default.nix b/pkgs/applications/networking/nextcloud-client/default.nix
new file mode 100644
index 00000000000..d369ec63a94
--- /dev/null
+++ b/pkgs/applications/networking/nextcloud-client/default.nix
@@ -0,0 +1,28 @@
+{ stdenv, fetchgit, cmake, pkgconfig, qtbase, qtwebkit, qtkeychain, sqlite }:
+
+stdenv.mkDerivation rec {
+  name = "nextcloud-client-${version}";
+  version = "2.3.2";
+
+  src = fetchgit {
+    url = "git://github.com/nextcloud/client_theming.git";
+    rev = "1ee750d1aeaaefc899629e85c311594603e9ac1b";
+    sha256 = "0dxyng8a7cg78z8yngiqypsb44lf5c6vkabvkfch0cl0cqmarc1a";
+    fetchSubmodules = true;
+  };
+
+  nativeBuildInputs = [ pkgconfig cmake ];
+  buildInputs = [ qtbase qtwebkit qtkeychain sqlite ];
+
+  preConfigure = ''
+    cmakeFlagsArray+=("-UCMAKE_INSTALL_LIBDIR" "-DOEM_THEME_DIR=$(realpath ./nextcloudtheme)" "../client")
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Nextcloud themed desktop client";
+    homepage = https://nextcloud.com;
+    license = licenses.gpl2;
+    maintainers = with maintainers; [ caugner ];
+    platforms = platforms.unix;
+  };
+}
diff --git a/pkgs/applications/networking/p2p/frostwire/default.nix b/pkgs/applications/networking/p2p/frostwire/default.nix
index 74f0ef392ef..8a159f033ae 100644
--- a/pkgs/applications/networking/p2p/frostwire/default.nix
+++ b/pkgs/applications/networking/p2p/frostwire/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jre }:
+{ stdenv, fetchurl, jre, makeWrapper }:
 
 with stdenv.lib;
 
@@ -11,20 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "01nq1vwkqdidmprlnz5d3c5412r6igv689barv64dmb9m6iqg53z";
   };
 
-  inherit jre;
+  nativeBuildInputs = [ makeWrapper ];
 
   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
+    mv $(ls */*.jar) $out/share/java
+
+    makeWrapper $out/share/java/frostwire $out/bin/frostwire \
+      --prefix PATH : ${jre}/bin/
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/remote/freerdp/default.nix b/pkgs/applications/networking/remote/freerdp/default.nix
index f4109bbd179..31e1a860ac9 100644
--- a/pkgs/applications/networking/remote/freerdp/default.nix
+++ b/pkgs/applications/networking/remote/freerdp/default.nix
@@ -14,13 +14,13 @@
 
 stdenv.mkDerivation rec {
   name = "freerdp-git-${version}";
-  version = "20170502";
+  version = "20170724";
 
   src = fetchFromGitHub {
     owner  = "FreeRDP";
     repo   = "FreeRDP";
-    rev    = "8569102c3a011602de3a1cdf69f7c69adbb864ee";
-    sha256 = "0m61aiy8l3ybnk2d2kjmpp9ql31zfs63gjixyj9x95jd4m507j67";
+    rev    = "2.0.0-rc0";
+    sha256 = "0ngwdy0lfv2k59z1z8yq1wj5zbhqigpyfqbgh38m9p35yzh33lv1";
   };
 
   # outputs = [ "bin" "out" "dev" ];
diff --git a/pkgs/applications/office/zanshin/default.nix b/pkgs/applications/office/zanshin/default.nix
index 0cf85840db6..021e7f87eee 100644
--- a/pkgs/applications/office/zanshin/default.nix
+++ b/pkgs/applications/office/zanshin/default.nix
@@ -1,21 +1,45 @@
-{ stdenv, fetchurl, automoc4, cmake, perl, pkgconfig
-, kdelibs4, kdepimlibs, boost, baloo }:
+{
+  stdenv,
+  fetchurl, fetchpatch,
+  extra-cmake-modules,
+  qtbase, boost,
+  akonadi-calendar, akonadi-notes, akonadi-search, kidentitymanagement, kontactinterface, kldap,
+  krunner, kwallet
+}:
 
 stdenv.mkDerivation rec {
-  name = "zanshin-0.3.1";
+  pname = "zanshin";
+  version = "0.4.1";
+  name = "${pname}-${version}";
 
   src = fetchurl {
-    url = "http://files.kde.org/zanshin/${name}.tar.bz2";
-    sha256 = "1ck2ncz8i816d6d1gcsdrh6agd2zri24swgz3bhn8vzbk4215yzl";
+    url = "https://files.kde.org/${pname}/${name}.tar.bz2";
+    sha256 = "1llqm4w4mhmdirgrmbgwrpqyn47phwggjdghf164k3qw0bi806as";
   };
 
-  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
+  patches = [
+    (fetchpatch {
+      name = "zanshin-fix-qt59-build.patch";
+      url = "https://phabricator.kde.org/R4:77ad64872f69ad9f7abe3aa8e103a12b95e100a4?diff=1";
+      sha256 = "0p497gqd3jmhbmqzh46zp6zwf6j1q77a9jp0in49xhgc2kj5ar7x";
+    })
+  ];
 
-  buildInputs = [ kdelibs4 kdepimlibs boost baloo ];
+  nativeBuildInputs = [
+    extra-cmake-modules
+  ];
 
-  meta = {
-    description = "GTD for KDE";
-    maintainers = [ ];
-    inherit (kdelibs4.meta) platforms;
+  buildInputs = [
+    qtbase boost
+    akonadi-calendar akonadi-notes akonadi-search kidentitymanagement kontactinterface kldap
+    krunner kwallet
+  ];
+
+  meta = with stdenv.lib; {
+    description = "A powerful yet simple application to manage your day to day actions, getting your mind like water";
+    homepage = https://zanshin.kde.org/;
+    maintainers = with maintainers; [ zraexy ];
+    platforms = platforms.linux;
+    license = licenses.gpl2Plus;
   };
 }
diff --git a/pkgs/applications/science/logic/lean2/default.nix b/pkgs/applications/science/logic/lean2/default.nix
index f45f65e9082..2b861b6d06d 100644
--- a/pkgs/applications/science/logic/lean2/default.nix
+++ b/pkgs/applications/science/logic/lean2/default.nix
@@ -20,6 +20,8 @@ stdenv.mkDerivation rec {
     cd src
   '';
 
+  cmakeFlags = [ "-GNinja" ];
+
   postInstall = ''
     wrapProgram $out/bin/linja --prefix PATH : $out/bin:${ninja}/bin
   '';
diff --git a/pkgs/applications/science/logic/poly/default.nix b/pkgs/applications/science/logic/poly/default.nix
index 2fdbd87a275..1b401c927b6 100644
--- a/pkgs/applications/science/logic/poly/default.nix
+++ b/pkgs/applications/science/logic/poly/default.nix
@@ -1,6 +1,6 @@
 {stdenv, fetchurl, gmp, cmake, python}:
 
-let version = "0.1.3";
+let version = "0.1.4";
 in
 
 stdenv.mkDerivation {
@@ -8,7 +8,7 @@ stdenv.mkDerivation {
 
   src = fetchurl {
     url = "https://github.com/SRI-CSL/libpoly/archive/v${version}.tar.gz";
-    sha256 = "0nd90585imnznyp04vg6a5ixxkd3bavhv1437397aj2k3dfc0y2k";
+    sha256 = "16x1pk2a3pcb5a0dzyw28ccjwkhmbsck4hy80ss7kx0dd7qgpi7j";
   };
 
   buildInputs = [ cmake gmp python ];
diff --git a/pkgs/applications/science/logic/yices/default.nix b/pkgs/applications/science/logic/yices/default.nix
index c8e20c7260c..489ca744bea 100644
--- a/pkgs/applications/science/logic/yices/default.nix
+++ b/pkgs/applications/science/logic/yices/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
   name    = "yices-${version}";
-  version = "2.5.2";
+  version = "2.5.3";
 
   src = fetchurl {
-    url = "http://yices.csl.sri.com/cgi-bin/yices2-newnewdownload.cgi?file=${name}-src.tar.gz&accept=I+Agree";
+    url = "https://github.com/SRI-CSL/yices2/archive/Yices-${version}.tar.gz";
     name = "${name}-src.tar.gz";
-    sha256 = "18mjnwg0pwc0fx4f99l7hxsi10mb5skkzk0k1m3xv5kx3qfnghs0";
+    sha256 = "0a3zzbvmgyiljzqn6xmc037gismm779p696jywk09j2pqbvp52ac";
   };
 
   patchPhase = ''patchShebangs tests/regress/check.sh'';
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
   # only installing the libyices.so.2.5.1 file.
   installPhase = ''
       make install LDCONFIG=true
-      (cd $out/lib && ln -s -f libyices.so.2.5.2 libyices.so.2.5)
+      (cd $out/lib && ln -s -f libyices.so.2.5.3 libyices.so.2.5)
   '';
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/version-management/bitkeeper/default.nix b/pkgs/applications/version-management/bitkeeper/default.nix
index 86e555a989c..d8597913c24 100644
--- a/pkgs/applications/version-management/bitkeeper/default.nix
+++ b/pkgs/applications/version-management/bitkeeper/default.nix
@@ -50,5 +50,6 @@ stdenv.mkDerivation rec {
     license     = stdenv.lib.licenses.asl20;
     platforms   = stdenv.lib.platforms.linux;
     maintainers = with stdenv.lib.maintainers; [ wscott thoughtpolice ];
+    broken      = true; # seems to fail on recent glibc versions
   };
 }
diff --git a/pkgs/applications/version-management/git-and-tools/git-open/default.nix b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
index 6b696821f1c..5272e2be07c 100644
--- a/pkgs/applications/version-management/git-and-tools/git-open/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git-open/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "git-open-${version}";
-  version = "1.3.0";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
     owner = "paulirish";
     repo = "git-open";
     rev = "v${version}";
-    sha256 = "005am4phf7j4ybc9k1hqsxjb7gv2i56a3axrza866pwwx1ayrhpq";
+    sha256 = "1klj41vqgyyigqzi6s1ykz9vd8wvaq3skin63pi989dlsjf7igyr";
   };
 
   buildInputs = [ makeWrapper ];
diff --git a/pkgs/applications/version-management/git-and-tools/git/default.nix b/pkgs/applications/version-management/git-and-tools/git/default.nix
index 746801eb908..46c48fd1579 100644
--- a/pkgs/applications/version-management/git-and-tools/git/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/git/default.nix
@@ -1,12 +1,13 @@
 { fetchurl, stdenv, curl, openssl, zlib, expat, perl, python, gettext, cpio
 , gnugrep, gnused, gawk, coreutils # needed at runtime by git-filter-branch etc
-, gzip, openssh
+, gzip, openssh, pcre2
 , asciidoc, texinfo, xmlto, docbook2x, docbook_xsl, docbook_xml_dtd_45
 , libxslt, tcl, tk, makeWrapper, libiconv
 , svnSupport, subversionClient, perlLibs, smtpPerlLibs, gitwebPerlLibs
 , guiSupport
 , withManual ? true
 , pythonSupport ? true
+, withpcre2 ? true
 , sendEmailSupport
 , darwin
 }:
@@ -44,6 +45,7 @@ stdenv.mkDerivation {
     ++ stdenv.lib.optionals withManual [ asciidoc texinfo xmlto docbook2x
          docbook_xsl docbook_xml_dtd_45 libxslt ]
     ++ stdenv.lib.optionals guiSupport [tcl tk]
+    ++ stdenv.lib.optionals withpcre2 [ pcre2 ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ darwin.Security ];
 
 
@@ -70,7 +72,9 @@ stdenv.mkDerivation {
   # so that `SPARSE_FLAGS' corresponds to the current architecture...
   #doCheck = true;
 
-  installFlags = "NO_INSTALL_HARDLINKS=1";
+  installFlags = "NO_INSTALL_HARDLINKS=1"
+    + (if withpcre2 then " USE_LIBPCRE2=1" else "");
+
 
   preInstall = stdenv.lib.optionalString stdenv.isDarwin ''
     mkdir -p $out/bin
diff --git a/pkgs/applications/version-management/pijul/default.nix b/pkgs/applications/version-management/pijul/default.nix
index d72c2945239..a5479a6c6a8 100644
--- a/pkgs/applications/version-management/pijul/default.nix
+++ b/pkgs/applications/version-management/pijul/default.nix
@@ -1,24 +1,24 @@
-{ stdenv, fetchurl, rustPlatform, perl, darwin }:
+{ stdenv, fetchurl, rustPlatform, darwin }:
 
 with rustPlatform;
 
 buildRustPackage rec {
   name = "pijul-${version}";
-  version = "0.6.0";
+  version = "0.7.3";
 
   src = fetchurl {
     url = "https://pijul.org/releases/${name}.tar.gz";
-    sha256 = "a6b066b49b25d1083320c5ab23941deee795e1fcbe1faa951e95189fd594cdb3";
+    sha256 = "08cffv6nfp1iv9m2qhr9hggy9kg8xp07p8kqkjypfsdsb983vz5n";
   };
 
-  sourceRoot = "pijul";
+  sourceRoot = "${name}/pijul";
 
   buildInputs = stdenv.lib.optionals stdenv.isDarwin
     (with darwin.apple_sdk.frameworks; [ Security ]);
 
   doCheck = false;
 
-  depsSha256 = "0raim0ahqg6fkidb6picfzircdzwdbsdmmv8in70r5hw770bv67r";
+  depsSha256 = "1qzzpnkyw1bn5fnj06c80f7985v1q0rqcphrrrkpbi33lg5mzgbv";
 
   meta = with stdenv.lib; {
     description = "A distributed version control system";
diff --git a/pkgs/applications/video/mkvtoolnix/default.nix b/pkgs/applications/video/mkvtoolnix/default.nix
index b902b96a7cd..442e9d8eeb3 100644
--- a/pkgs/applications/video/mkvtoolnix/default.nix
+++ b/pkgs/applications/video/mkvtoolnix/default.nix
@@ -10,13 +10,13 @@ with stdenv.lib;
 
 stdenv.mkDerivation rec {
   name = "mkvtoolnix-${version}";
-  version = "14.0.0";
+  version = "15.0.0";
 
   src = fetchFromGitHub {
     owner = "mbunkus";
     repo = "mkvtoolnix";
     rev = "release-${version}";
-    sha256 = "1ygc2qrd074vz2yw4iqml5ir31kkvkv7pz3hcfy423p9s06xi1k2";
+    sha256 = "06n0hbp484zpsjvnzp6p0nzzssym3illxdicn3y1jf8gy971rxi0";
   };
 
   nativeBuildInputs = [ pkgconfig autoconf automake gettext drake ruby docbook_xsl libxslt ];
diff --git a/pkgs/applications/video/qarte/default.nix b/pkgs/applications/video/qarte/default.nix
index 8bfe3c0b91f..aba3b81fde8 100644
--- a/pkgs/applications/video/qarte/default.nix
+++ b/pkgs/applications/video/qarte/default.nix
@@ -3,11 +3,11 @@
 let
   pythonEnv = python3.withPackages (ps: with ps; [ pyqt5 sip ]);
 in stdenv.mkDerivation {
-  name = "qarte-3.2.0+158";
+  name = "qarte-3.10.0+188";
   src = fetchbzr {
     url = http://bazaar.launchpad.net/~vincent-vandevyvre/qarte/qarte-3;
-    rev = "158";
-    sha256 = "0nj9yxylz1nz0hdjm0jzrq2l3dgfdqkafwxnzydp6qv6261w564n";
+    rev = "188";
+    sha256 = "06xpkjgm5ci5gfkza9f44m8l4jj32gfmr65cqs4x0j2ihrc6b4r9";
   };
 
   buildInputs = [ makeWrapper pythonEnv ];
diff --git a/pkgs/applications/video/smplayer/default.nix b/pkgs/applications/video/smplayer/default.nix
index 187f869bcfa..7877d8ec27a 100644
--- a/pkgs/applications/video/smplayer/default.nix
+++ b/pkgs/applications/video/smplayer/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, qmake, qtscript }:
 
 stdenv.mkDerivation rec {
-  name = "smplayer-17.7.0";
+  name = "smplayer-17.8.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/smplayer/${name}.tar.bz2";
-    sha256 = "1g35h8xqs2bdwjdibzgs1ab2z2lmwgj8h53a7vqydv3j3crxx9wk";
+    sha256 = "0sm7zf7nvcjlx8fvzfnlrs7rr0c549j7r60j68lv898vp6yhwybh";
   };
 
   buildInputs = [ qtscript ];
diff --git a/pkgs/applications/virtualization/OVMF/default.nix b/pkgs/applications/virtualization/OVMF/default.nix
index 121875a69de..98fb53e57dd 100644
--- a/pkgs/applications/virtualization/OVMF/default.nix
+++ b/pkgs/applications/virtualization/OVMF/default.nix
@@ -27,7 +27,7 @@ stdenv.mkDerivation (edk2.setup "OvmfPkg/OvmfPkg${targetArch}.dsc" {
     export OUTPUT_FD=$fd
 
     for file in \
-      "${edk2.src}"/{UefiCpuPkg,MdeModulePkg,IntelFrameworkModulePkg,PcAtChipsetPkg,FatBinPkg,EdkShellBinPkg,MdePkg,ShellPkg,OptionRomPkg,IntelFrameworkPkg};
+      "${edk2.src}"/{UefiCpuPkg,MdeModulePkg,IntelFrameworkModulePkg,PcAtChipsetPkg,FatBinPkg,EdkShellBinPkg,MdePkg,ShellPkg,OptionRomPkg,IntelFrameworkPkg,FatPkg,CryptoPkg,SourceLevelDebugPkg};
     do
       ln -sv "$file" .
     done
diff --git a/pkgs/applications/virtualization/docker-distribution/default.nix b/pkgs/applications/virtualization/docker-distribution/default.nix
index c3c0de14966..0af9abc852e 100644
--- a/pkgs/applications/virtualization/docker-distribution/default.nix
+++ b/pkgs/applications/virtualization/docker-distribution/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "distribution-${version}";
-  version = "2.6.0";
+  version = "2.6.2";
   rev = "v${version}";
 
   goPackagePath = "github.com/docker/distribution";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     owner = "docker";
     repo = "distribution";
     inherit rev;
-    sha256 = "1yg2zrikn3vkvkx5mn51p6bfjk840qdkn7ahhhvvcsc8mpigrjc6";
+    sha256 = "0nj4xd72mik4pj8g065cqb0yjmgpj5ppsqf2k5ibz9f68c39c00b";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index ef3ad8fda25..ffd1d995e87 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -3,22 +3,22 @@
 , freetype, fontconfig, pkgconfig, gdk_pixbuf
 , mkfontdir, libX11, libXft, libXext, libXinerama
 , libXrandr, libICE, libSM, libXpm, libXdmcp, libxcb
-, libpthreadstubs }:
+, libpthreadstubs, pcre }:
 
 with stdenv.lib;
 stdenv.mkDerivation rec {
   name = "icewm-${version}";
-  version = "1.3.12";
+  version = "1.4.2";
 
   buildInputs =
   [ cmake gettext libjpeg libtiff libungif libpng imlib expat
     freetype fontconfig pkgconfig gdk_pixbuf mkfontdir libX11
     libXft libXext libXinerama libXrandr libICE libSM libXpm
-    libXdmcp libxcb libpthreadstubs ];
+    libXdmcp libxcb libpthreadstubs pcre ];
 
   src = fetchurl {
     url = "https://github.com/bbidulock/icewm/archive/${version}.tar.gz";
-    sha256 = "0cmjnf0yvafwg73qy5wq7ghiknpn1jf1978c1yj7yabyn07zxq77";
+    sha256 = "05chzjjnb4n4j05ld2gmhhr07c887qb4j9inwg9izhvml51af1bw";
   };
 
   preConfigure = ''
diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix
index b72e5a27391..04f8ebc613c 100644
--- a/pkgs/data/fonts/iosevka/default.nix
+++ b/pkgs/data/fonts/iosevka/default.nix
@@ -1,7 +1,7 @@
 { stdenv, fetchzip }:
 
 let
-  version = "1.13.1";
+  version = "1.13.3";
 in fetchzip rec {
   name = "iosevka-${version}";
 
@@ -12,7 +12,7 @@ in fetchzip rec {
     unzip -j $downloadedFile \*.ttc -d $out/share/fonts/iosevka
   '';
 
-  sha256 = "0w35jkvfnzn4clm3010wv13sil2yj6pxffx40apjp7yhh19c4sw7";
+  sha256 = "0103rjxcp2sis42xp7fh7g8i03h5snvs8n78lgsf79g8ssw0p9d4";
 
   meta = with stdenv.lib; {
     homepage = https://be5invis.github.io/Iosevka/;
diff --git a/pkgs/data/misc/wireless-regdb/default.nix b/pkgs/data/misc/wireless-regdb/default.nix
index 3aae3adf2a8..b69762d933f 100644
--- a/pkgs/data/misc/wireless-regdb/default.nix
+++ b/pkgs/data/misc/wireless-regdb/default.nix
@@ -1,16 +1,15 @@
-{ stdenv, fetchgit }:
+{ stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
   name = "wireless-regdb-${version}";
-  version = "2016-06-10";
+  version = "2017.03.07";
 
-  src = fetchgit {
-    sha256 = "0im9likzpziircl96pql2jpyl8pfcqc5v0wgqy705j4ga5sx8pmn";
-    url = https://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git;
-    rev = "refs/tags/master-${version}";
+  src = fetchurl {
+    url = "https://www.kernel.org/pub/software/network/wireless-regdb/${name}.tar.xz";
+    sha256 = "1f9mcp78sdd4sci6v32vxfcl1rfjpv205jisz1p93kkfnaisy7ip";
   };
 
-  phases = [ "unpackPhase" "installPhase" ];
+  dontBuild = true;
 
   makeFlags = [
     "DESTDIR=$(out)"
@@ -22,6 +21,6 @@ stdenv.mkDerivation rec {
     homepage = http://wireless.kernel.org/en/developers/Regulatory/;
     license = licenses.isc;
     platforms = platforms.all;
-    maintainers = with maintainers; [ nckx ];
+    maintainers = with maintainers; [ nckx fpletz ];
   };
 }
diff --git a/pkgs/desktops/enlightenment/default.nix b/pkgs/desktops/enlightenment/default.nix
index c132f565632..a8b5e08abd6 100644
--- a/pkgs/desktops/enlightenment/default.nix
+++ b/pkgs/desktops/enlightenment/default.nix
@@ -2,7 +2,6 @@
 rec {
   #### CORE EFL
   efl = callPackage ./efl.nix { openjpeg = pkgs.openjpeg_1; };
-  efl_1_19 = callPackage ./efl.nix { eflVersion = "1.19.1"; openjpeg = pkgs.openjpeg_1; };
 
   #### WINDOW MANAGER
   enlightenment = callPackage ./enlightenment.nix { };
@@ -11,5 +10,5 @@ rec {
   econnman = callPackage ./econnman.nix { };
   terminology = callPackage ./terminology.nix { };
   rage = callPackage ./rage.nix { };
-  ephoto = callPackage ./ephoto.nix { efl = efl_1_19; };
+  ephoto = callPackage ./ephoto.nix { };
 }
diff --git a/pkgs/desktops/enlightenment/efl.nix b/pkgs/desktops/enlightenment/efl.nix
index 00980d4a94d..e93195de1f8 100644
--- a/pkgs/desktops/enlightenment/efl.nix
+++ b/pkgs/desktops/enlightenment/efl.nix
@@ -4,35 +4,30 @@
 , python27Packages, openjpeg, doxygen, expat, harfbuzz, jbig2dec, librsvg
 , dbus_libs, alsaLib, poppler, ghostscript, libraw, libspectre, xineLib, libwebp
 , curl, libinput, systemd, writeText
-# Support more than one version because for now ephoto does not work with efl-1.20.x
-, eflVersion ? "1.20.2"
 }:
 
 stdenv.mkDerivation rec {
   name = "efl-${version}";
-  version = eflVersion;
+  version = "1.20.2";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/libs/efl/${name}.tar.xz";
-    sha256 = {
-      "1.19.1" = "0fndwraca9rg0bz3al4isdprvyw56szr88qiyvglb4j8ygsylscc";
-      "1.20.2" = "0zll6k4xbbdsxqg53g8jddgv889g5m1xh20i03iz5a52y2bcnh55";
-    }.${version};
+    sha256 = "0zll6k4xbbdsxqg53g8jddgv889g5m1xh20i03iz5a52y2bcnh55";
   };
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ openssl zlib lz4 freetype fontconfig fribidi SDL2 SDL mesa
+  buildInputs = [ openssl zlib lz4 freetype fontconfig SDL mesa
     giflib libpng libtiff glib gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-good
     gst_all_1.gst-libav libpulseaudio libsndfile xorg.libXcursor xorg.printproto
-    xorg.libX11 udev utillinux systemd ];
+    xorg.libX11 udev systemd ];
 
   propagatedBuildInputs = [ libxkbcommon python27Packages.dbus-python dbus libjpeg xorg.libXcomposite
     xorg.libXdamage xorg.libXinerama xorg.libXp xorg.libXtst xorg.libXi xorg.libXext
     bullet xorg.libXScrnSaver xorg.libXrender xorg.libXfixes xorg.libXrandr
     xorg.libxkbfile xorg.libxcb xorg.xcbutilkeysyms openjpeg doxygen expat luajit
     harfbuzz jbig2dec librsvg dbus_libs alsaLib poppler ghostscript libraw libspectre xineLib libwebp curl libdrm
-    libinput ];
+    libinput utillinux fribidi SDL2 ];
 
   # ac_ct_CXX must be set to random value, because then it skips some magic which does alternative searching for g++
   configureFlags = [
diff --git a/pkgs/desktops/enlightenment/enlightenment.nix b/pkgs/desktops/enlightenment/enlightenment.nix
index 7976176af1b..b16b84acf14 100644
--- a/pkgs/desktops/enlightenment/enlightenment.nix
+++ b/pkgs/desktops/enlightenment/enlightenment.nix
@@ -1,6 +1,6 @@
 { stdenv, fetchurl, pkgconfig, efl, xcbutilkeysyms, libXrandr, libXdmcp,
 libxcb, libffi, pam, alsaLib, luajit, bzip2, libpthreadstubs, gdbm, libcap,
-mesa_glu, xkeyboard_config }:
+mesa_glu, xkeyboard_config, pcre }:
 
 stdenv.mkDerivation rec {
   name = "enlightenment-${version}";
@@ -11,22 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "0w5f3707hyfc20i6xqh4jlr5p2yhy1z794061mjsz2rp4w00qmpb";
   };
 
-  nativeBuildInputs = [ pkgconfig ];
+  nativeBuildInputs = [ (pkgconfig.override { vanilla = true; }) ];
 
   buildInputs = [
     efl libXdmcp libxcb xcbutilkeysyms libXrandr libffi pam alsaLib
-    luajit bzip2 libpthreadstubs gdbm
+    luajit bzip2 libpthreadstubs gdbm pcre
   ] ++
     stdenv.lib.optionals stdenv.isLinux [ libcap ];
 
-  NIX_CFLAGS_COMPILE = [
-    "-I${efl}/include/ecore-imf-1"
-    "-I${efl}/include/emile-1"
-    "-I${efl}/include/eo-1"
-    "-I${efl}/include/ethumb-1"
-    "-I${efl}/include/ethumb-client-1"
-  ];
-
   preConfigure = ''
     export USER_SESSION_DIR=$prefix/lib/systemd/user
 
diff --git a/pkgs/desktops/enlightenment/ephoto.nix b/pkgs/desktops/enlightenment/ephoto.nix
index ee6013dae29..eef9eafae38 100644
--- a/pkgs/desktops/enlightenment/ephoto.nix
+++ b/pkgs/desktops/enlightenment/ephoto.nix
@@ -1,29 +1,17 @@
-{ stdenv, fetchurl, pkgconfig, efl, curl, makeWrapper }:
+{ stdenv, fetchurl, pkgconfig, efl, pcre, curl, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "ephoto-${version}";
-  version = "1.0";
+  version = "1.5";
   
   src = fetchurl {
     url = "http://www.smhouston.us/stuff/${name}.tar.gz";
-    sha256 = "0l6zrk22fap6pylmzxwp6nycy8l5wdc7jza890h4zrwmpfag8w31";
+    sha256 = "09kraa5zz45728h2dw1ssh23b87j01bkfzf977m48y1r507sy3vb";
   };
 
-  nativeBuildInputs = [ pkgconfig makeWrapper ];
+  nativeBuildInputs = [ (pkgconfig.override { vanilla = true; }) makeWrapper ];
 
-  buildInputs = [ efl curl ];
-
-  NIX_CFLAGS_COMPILE = [
-    "-I${efl}/include/ecore-con-1"
-    "-I${efl}/include/ecore-evas-1"
-    "-I${efl}/include/ecore-imf-1"
-    "-I${efl}/include/ecore-input-1"
-    "-I${efl}/include/eet-1"
-    "-I${efl}/include/eldbus-1"
-    "-I${efl}/include/emile-1"
-    "-I${efl}/include/ethumb-1"
-    "-I${efl}/include/ethumb-client-1"
-  ];
+  buildInputs = [ efl pcre curl ];
 
   postInstall = ''
     wrapProgram $out/bin/ephoto --prefix LD_LIBRARY_PATH : ${curl.out}/lib
diff --git a/pkgs/desktops/enlightenment/rage.nix b/pkgs/desktops/enlightenment/rage.nix
index 4d102b31e3b..5f6a451d065 100644
--- a/pkgs/desktops/enlightenment/rage.nix
+++ b/pkgs/desktops/enlightenment/rage.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, efl, gst_all_1, curl, wrapGAppsHook }:
+{ stdenv, fetchurl, pkgconfig, efl, gst_all_1, pcre, curl, wrapGAppsHook }:
 
 stdenv.mkDerivation rec {
   name = "rage-${version}";
@@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
   };
 
   nativeBuildInputs = [
-    pkgconfig
+    (pkgconfig.override { vanilla = true; })
     wrapGAppsHook
   ];
 
@@ -21,24 +21,10 @@ stdenv.mkDerivation rec {
     gst_all_1.gst-plugins-good
     gst_all_1.gst-plugins-bad
     gst_all_1.gst-libav
+    pcre
     curl
  ];
 
-  NIX_CFLAGS_COMPILE = [
-    "-I${efl}/include/ecore-con-1"
-    "-I${efl}/include/ecore-evas-1"
-    "-I${efl}/include/ecore-file-1"
-    "-I${efl}/include/ecore-imf-1"
-    "-I${efl}/include/ecore-input-1"
-    "-I${efl}/include/eet-1"
-    "-I${efl}/include/efreet-1"
-    "-I${efl}/include/eldbus-1"
-    "-I${efl}/include/emile-1"
-    "-I${efl}/include/eo-1"
-    "-I${efl}/include/ethumb-1"
-    "-I${efl}/include/ethumb-client-1"
-  ];
-
   postInstall = ''
     wrapProgram $out/bin/rage --prefix LD_LIBRARY_PATH : ${curl.out}/lib
   '';
diff --git a/pkgs/desktops/enlightenment/terminology.nix b/pkgs/desktops/enlightenment/terminology.nix
index 5f2db064af2..71d92f6f3cb 100644
--- a/pkgs/desktops/enlightenment/terminology.nix
+++ b/pkgs/desktops/enlightenment/terminology.nix
@@ -1,26 +1,17 @@
-{ stdenv, fetchurl, pkgconfig, efl, curl, makeWrapper }:
+{ stdenv, fetchurl, pkgconfig, efl, pcre, curl, makeWrapper }:
 
 stdenv.mkDerivation rec {
   name = "terminology-${version}";
-  version = "1.0.0";
+  version = "1.1.0";
 
   src = fetchurl {
     url = "http://download.enlightenment.org/rel/apps/terminology/${name}.tar.xz";
-    sha256 = "1x4j2q4qqj10ckbka0zaq2r2zm66ff1x791kp8slv1ff7fw45vdz";
+    sha256 = "13rl1k22yf8qrpzdm5nh6ij641fibadr2ww1r7rnz7mbhzj3d4gb";
   };
 
-  nativeBuildInputs = [ pkgconfig makeWrapper ];
+  nativeBuildInputs = [ (pkgconfig.override { vanilla = true; }) makeWrapper ];
 
-  buildInputs = [ efl curl ];
-
-  NIX_CFLAGS_COMPILE = [
-    "-I${efl}/include/ecore-con-1"
-    "-I${efl}/include/eldbus-1"
-    "-I${efl}/include/elocation-1"
-    "-I${efl}/include/emile-1"
-    "-I${efl}/include/eo-1"
-    "-I${efl}/include/ethumb-1"
-  ];
+  buildInputs = [ efl pcre curl ];
 
   postInstall = ''
     for f in $out/bin/*; do
diff --git a/pkgs/desktops/kde-4.14/kde-workspace.nix b/pkgs/desktops/kde-4.14/kde-workspace.nix
index 53df146ab53..5aeba4be3a6 100644
--- a/pkgs/desktops/kde-4.14/kde-workspace.nix
+++ b/pkgs/desktops/kde-4.14/kde-workspace.nix
@@ -30,6 +30,8 @@ kde {
        --replace /usr/share/X11 ${xkeyboard_config}/etc/X11
    '';
 
+  NIX_CFLAGS_COMPILE = [ "-fpermissive" ]; # gcc-6
+
   enableParallelBuilding = false; # frequent problems on Hydra
 
   meta = {
diff --git a/pkgs/desktops/maxx/default.nix b/pkgs/desktops/maxx/default.nix
index 3e8ca1f388e..339183f906e 100644
--- a/pkgs/desktops/maxx/default.nix
+++ b/pkgs/desktops/maxx/default.nix
@@ -34,7 +34,7 @@ in stdenv.mkDerivation {
   nativeBuildInputs = [ makeWrapper ];
 
   buildPhase = ''
-    while IFS= read -r -d $'\0' i; do
+    while IFS= read -r -d ''$'\0' i; do
       substituteInPlace "$i" --replace /opt/MaXX $out/opt/MaXX
     done < <(find "." -type f -exec grep -Iq /opt/MaXX {} \; -and -print0)
 
@@ -57,7 +57,7 @@ in stdenv.mkDerivation {
       --prefix GDK_PIXBUF_MODULE_FILE : "$(echo ${librsvg.out}/lib/gdk-pixbuf-2.0/*/loaders.cache)" \
       --prefix PATH : ${stdenv.lib.makeBinPath runtime_deps}
 
-    while IFS= read -r -d $'\0' i; do
+    while IFS= read -r -d ''$'\0' i; do
       if isELF "$i"; then
         bin=`patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" "$i"; echo $?`
         patchelf --set-rpath "${stdenv.lib.makeLibraryPath deps}" "$i"
diff --git a/pkgs/development/compilers/abcl/default.nix b/pkgs/development/compilers/abcl/default.nix
index 678cdcc22cc..c48b36e5aba 100644
--- a/pkgs/development/compilers/abcl/default.nix
+++ b/pkgs/development/compilers/abcl/default.nix
@@ -2,11 +2,11 @@
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
   pname = "abcl";
-  version = "1.4.0";
+  version = "1.5.0";
   # or fetchFromGitHub(owner,repo,rev) or fetchgit(rev)
   src = fetchurl {
     url = "https://common-lisp.net/project/armedbear/releases/${version}/${pname}-src-${version}.tar.gz";
-    sha256 = "1y4nixm1459ch6226ikdilcsf91c2rg1d82cqqmcn24kfjl1m62i";
+    sha256 = "1hhvcg050nfpjbdmskc1cv2j38qi6qfl77a61b5cxx576kbff3lj";
   };
   configurePhase = ''
     mkdir nix-tools
diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix
index 1e6e0e8c1f6..b3e2ff909b7 100644
--- a/pkgs/development/compilers/edk2/default.nix
+++ b/pkgs/development/compilers/edk2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, libuuid, python2, iasl }:
+{ stdenv, fetchFromGitHub, libuuid, python2, iasl }:
 
 let
   pythonEnv = python2.withPackages(ps: [ps.tkinter]);
@@ -13,10 +13,11 @@ else
 edk2 = stdenv.mkDerivation {
   name = "edk2-2014-12-10";
 
-  src = fetchgit {
-    url = git://github.com/tianocore/edk2;
-    rev = "684a565a04";
-    sha256 = "0s9ywb8w7xzlnmm4kwzykxkrdaw53b7pky121cc9wjkllzqwyxrb";
+  src = fetchFromGitHub {
+    owner = "tianocore";
+    repo = "edk2";
+    rev = "vUDK2017";
+    sha256 = "0sswa028644yr8fbl8j6rhrdm717fj29h4dys3ygklmjhss90a2g";
   };
 
   buildInputs = [ libuuid pythonEnv];
diff --git a/pkgs/development/compilers/ghc/D2710.patch b/pkgs/development/compilers/ghc/D2710.patch
deleted file mode 100644
index 0ee1b06c734..00000000000
--- a/pkgs/development/compilers/ghc/D2710.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff --git a/rts/LinkerInternals.h b/rts/LinkerInternals.h
---- a/rts/LinkerInternals.h
-+++ b/rts/LinkerInternals.h
-@@ -303,4 +303,14 @@
- #  define OBJFORMAT_MACHO
- #endif
- 
-+/* In order to simplify control flow a bit, some references to mmap-related
-+   definitions are blocked off by a C-level if statement rather than a CPP-level
-+   #if statement. Since those are dead branches when !RTS_LINKER_USE_MMAP, we
-+   just stub out the relevant symbols here
-+*/
-+#if !RTS_LINKER_USE_MMAP
-+#define munmap(x,y) /* nothing */
-+#define MAP_ANONYMOUS 0
-+#endif
-+
- #endif /* LINKERINTERNALS_H */
-
diff --git a/pkgs/development/compilers/ghc/D2711.patch b/pkgs/development/compilers/ghc/D2711.patch
deleted file mode 100644
index 8d229f27399..00000000000
--- a/pkgs/development/compilers/ghc/D2711.patch
+++ /dev/null
@@ -1,22 +0,0 @@
-diff --git a/rts/sm/Storage.c b/rts/sm/Storage.c
---- a/rts/sm/Storage.c
-+++ b/rts/sm/Storage.c
-@@ -1314,7 +1314,7 @@
-    ------------------------------------------------------------------------- */
- 
- #if (defined(arm_HOST_ARCH) || defined(aarch64_HOST_ARCH)) && defined(ios_HOST_OS)
--void sys_icache_invalidate(void *start, size_t len);
-+#include <libkern/OSCacheControl.h>
- #endif
- 
- /* On ARM and other platforms, we need to flush the cache after
-@@ -1327,7 +1327,7 @@
-   (void)exec_addr;
- #elif (defined(arm_HOST_ARCH) || defined(aarch64_HOST_ARCH)) && defined(ios_HOST_OS)
-   /* On iOS we need to use the special 'sys_icache_invalidate' call. */
--  sys_icache_invalidate(exec_addr, ((unsigned char*)exec_addr)+len);
-+  sys_icache_invalidate(exec_addr, len);
- #elif defined(__GNUC__)
-   /* For all other platforms, fall back to a libgcc builtin. */
-   unsigned char* begin = (unsigned char*)exec_addr;
-
diff --git a/pkgs/development/compilers/ghc/D2712.patch b/pkgs/development/compilers/ghc/D2712.patch
deleted file mode 100644
index d938d70bbcf..00000000000
--- a/pkgs/development/compilers/ghc/D2712.patch
+++ /dev/null
@@ -1,158 +0,0 @@
-diff --git a/includes/rts/OSThreads.h b/includes/rts/OSThreads.h
---- a/includes/rts/OSThreads.h
-+++ b/includes/rts/OSThreads.h
-@@ -15,7 +15,12 @@
- #ifndef RTS_OSTHREADS_H
- #define RTS_OSTHREADS_H
- 
--#if defined(THREADED_RTS) /* to near the end */
-+#if defined(HAVE_PTHREAD_H) && !defined(mingw32_HOST_OS)
-+#define BUILD_OSTHREAD_POSIX
-+#endif
-+
-+
-+#if defined(THREADED_RTS) || defined(BUILD_OSTHREAD_POSIX) /* to near end */
- 
- #if defined(HAVE_PTHREAD_H) && !defined(mingw32_HOST_OS)
- 
-@@ -205,13 +210,25 @@
- void releaseThreadNode (void);
- #endif // !CMINUSMINUS
- 
--#else
-+#endif /* defined(THREADED_RTS) || defined(BUILD_OSTHREAD_POSIX) */
-+
-+#ifndef THREADED_RTS
-+
-+#ifdef ACQUIRE_LOCK
-+// If we have pthreads, we pull in the threading primitives even when the RTS
-+// isn't threaded, but we expect these macros to be noops on non-threaded RTS.
-+
-+#undef ACQUIRE_LOCK
-+#undef RELEASE_LOCK
-+#undef ASSERT_LOCK_HELD
-+
-+#endif
- 
- #define ACQUIRE_LOCK(l)
- #define RELEASE_LOCK(l)
- #define ASSERT_LOCK_HELD(l)
- 
--#endif /* defined(THREADED_RTS) */
-+#endif
- 
- #ifndef CMINUSMINUS
- //
-diff --git a/rts/posix/OSThreads.c b/rts/posix/OSThreads.c
---- a/rts/posix/OSThreads.c
-+++ b/rts/posix/OSThreads.c
-@@ -35,7 +35,7 @@
- #endif
- #endif
- 
--#if defined(THREADED_RTS)
-+#if defined(THREADED_RTS) || defined(BUILD_OSTHREAD_POSIX)
- #include "RtsUtils.h"
- #include "Task.h"
- 
-@@ -225,47 +225,6 @@
-     return NULL;
- }
- 
--int
--forkOS_createThread ( HsStablePtr entry )
--{
--    pthread_t tid;
--    int result = pthread_create(&tid, NULL,
--                                forkOS_createThreadWrapper, (void*)entry);
--    if(!result)
--        pthread_detach(tid);
--    return result;
--}
--
--void freeThreadingResources (void) { /* nothing */ }
--
--uint32_t
--getNumberOfProcessors (void)
--{
--    static uint32_t nproc = 0;
--
--    if (nproc == 0) {
--#if defined(HAVE_SYSCONF) && defined(_SC_NPROCESSORS_ONLN)
--        nproc = sysconf(_SC_NPROCESSORS_ONLN);
--#elif defined(HAVE_SYSCONF) && defined(_SC_NPROCESSORS_CONF)
--        nproc = sysconf(_SC_NPROCESSORS_CONF);
--#elif defined(darwin_HOST_OS)
--        size_t size = sizeof(uint32_t);
--        if(sysctlbyname("hw.logicalcpu",&nproc,&size,NULL,0) != 0) {
--            if(sysctlbyname("hw.ncpu",&nproc,&size,NULL,0) != 0)
--                nproc = 1;
--        }
--#elif defined(freebsd_HOST_OS)
--        size_t size = sizeof(uint32_t);
--        if(sysctlbyname("hw.ncpu",&nproc,&size,NULL,0) != 0)
--            nproc = 1;
--#else
--        nproc = 1;
--#endif
--    }
--
--    return nproc;
--}
--
- #if defined(HAVE_SCHED_H) && defined(HAVE_SCHED_SETAFFINITY)
- // Schedules the thread to run on CPU n of m.  m may be less than the
- // number of physical CPUs, in which case, the thread will be allowed
-@@ -353,6 +312,51 @@
-     pthread_kill(id, SIGPIPE);
- }
- 
-+#endif /* defined(THREADED_RTS) || defined(BUILD_OSTHREAD_POSIX) */
-+
-+#if defined(THREADED_RTS)
-+
-+int
-+forkOS_createThread ( HsStablePtr entry )
-+{
-+    pthread_t tid;
-+    int result = pthread_create(&tid, NULL,
-+                                forkOS_createThreadWrapper, (void*)entry);
-+    if(!result)
-+        pthread_detach(tid);
-+    return result;
-+}
-+
-+void freeThreadingResources (void) { /* nothing */ }
-+
-+uint32_t
-+getNumberOfProcessors (void)
-+{
-+    static uint32_t nproc = 0;
-+
-+    if (nproc == 0) {
-+#if defined(HAVE_SYSCONF) && defined(_SC_NPROCESSORS_ONLN)
-+        nproc = sysconf(_SC_NPROCESSORS_ONLN);
-+#elif defined(HAVE_SYSCONF) && defined(_SC_NPROCESSORS_CONF)
-+        nproc = sysconf(_SC_NPROCESSORS_CONF);
-+#elif defined(darwin_HOST_OS)
-+        size_t size = sizeof(uint32_t);
-+        if(sysctlbyname("hw.logicalcpu",&nproc,&size,NULL,0) != 0) {
-+            if(sysctlbyname("hw.ncpu",&nproc,&size,NULL,0) != 0)
-+                nproc = 1;
-+        }
-+#elif defined(freebsd_HOST_OS)
-+        size_t size = sizeof(uint32_t);
-+        if(sysctlbyname("hw.ncpu",&nproc,&size,NULL,0) != 0)
-+            nproc = 1;
-+#else
-+        nproc = 1;
-+#endif
-+    }
-+
-+    return nproc;
-+}
-+
- #else /* !defined(THREADED_RTS) */
- 
- int
-
diff --git a/pkgs/development/compilers/ghc/D2713.patch b/pkgs/development/compilers/ghc/D2713.patch
deleted file mode 100644
index 80cf35a5297..00000000000
--- a/pkgs/development/compilers/ghc/D2713.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/configure.ac b/configure.ac
---- a/configure.ac
-+++ b/configure.ac
-@@ -437,7 +437,11 @@
- else
-   CrossCompilePrefix=""
- fi
--TargetPlatformFull="${TargetPlatform}"
-+# Despite its similarity in name to TargetPlatform, TargetPlatformFull is used
-+# in calls to subproject configure scripts and thus must be set to the autoconf
-+# triple, not the normalized GHC triple that TargetPlatform is set to.
-+# It may be better to just do away with the GHC triples all together.
-+TargetPlatformFull="${target}"
- AC_SUBST(CrossCompiling)
- AC_SUBST(CrossCompilePrefix)
- AC_SUBST(TargetPlatformFull)
-
diff --git a/pkgs/development/compilers/rdmd/default.nix b/pkgs/development/compilers/rdmd/default.nix
deleted file mode 100644
index 38473897698..00000000000
--- a/pkgs/development/compilers/rdmd/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{stdenv, lib, fetchurl, dmd}:
-
-stdenv.mkDerivation {
-  name = "rdmd-2.067.0";
-
-  buildInputs = [ dmd ];
-
-  src = fetchurl {
-    url = "https://github.com/D-Programming-Language/tools/archive/v2.067.0.tar.gz";
-    sha256 = "2702ecda0427c675084d9b688449bc8c8392fd73e30257d79e2488640d5a9982";
-  };
-
-  buildPhase = ''
-    dmd rdmd.d
-  '';
-
-  installPhase = ''
-    mkdir -p $out/bin
-    cp rdmd $out/bin/
-	'';
-
-  meta = {
-    description = "Wrapper for D language compiler";
-    homepage = http://dlang.org/rdmd.html;
-    license = lib.licenses.boost;
-    platforms = stdenv.lib.platforms.unix;
-  };
-}
diff --git a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
index 40e50bd5ce9..426a015418a 100644
--- a/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
+++ b/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
@@ -37,7 +37,7 @@ core-packages:
   - ghcjs-base-0
 
 default-package-overrides:
-  # LTS Haskell 9.1
+  # LTS Haskell 9.2
   - abstract-deque ==0.3
   - abstract-deque-tests ==0.3
   - abstract-par ==0.3.3
@@ -364,7 +364,7 @@ default-package-overrides:
   - check-email ==1.0.2
   - checkers ==0.4.7
   - chell ==0.4.0.1
-  - choice ==0.2.1
+  - choice ==0.2.2
   - chunked-data ==0.3.0
   - cipher-aes ==0.2.11
   - cipher-aes128 ==0.7.0.3
@@ -411,6 +411,8 @@ default-package-overrides:
   - comonads-fd ==4.0
   - compactmap ==0.1.4.2.1
   - compensated ==0.7.2
+  - composable-associations ==0.1.0.0
+  - composable-associations-aeson ==0.1.0.0
   - composition ==1.0.2.1
   - composition-extra ==2.0.0
   - concise ==0.1.0.0
@@ -457,7 +459,7 @@ default-package-overrides:
   - crypto-api-tests ==0.3
   - crypto-cipher-tests ==0.0.11
   - crypto-cipher-types ==0.0.9
-  - crypto-enigma ==0.0.2.8
+  - crypto-enigma ==0.0.2.9
   - crypto-pubkey-types ==0.4.3
   - crypto-random ==0.0.9
   - crypto-random-api ==0.2.0
@@ -523,7 +525,7 @@ default-package-overrides:
   - Decimal ==0.4.2
   - declarative ==0.5.1
   - deepseq-generics ==0.2.0.0
-  - dejafu ==0.7.1.1
+  - dejafu ==0.7.1.2
   - dependent-map ==0.2.4.0
   - dependent-sum ==0.4
   - derive ==2.6.3
@@ -534,7 +536,7 @@ default-package-overrides:
   - diagrams-cairo ==1.4
   - diagrams-canvas ==1.4
   - diagrams-contrib ==1.4.1
-  - diagrams-core ==1.4
+  - diagrams-core ==1.4.0.1
   - diagrams-gtk ==1.4
   - diagrams-html5 ==1.4
   - diagrams-lib ==1.4.1.2
@@ -559,7 +561,7 @@ default-package-overrides:
   - disposable ==0.2.0.4
   - distance ==0.1.0.0
   - distributed-closure ==0.3.4.0
-  - distributed-static ==0.3.5.0
+  - distributed-static ==0.3.7
   - distribution ==1.1.1.0
   - distributive ==0.5.3
   - diversity ==0.8.0.2
@@ -666,7 +668,7 @@ default-package-overrides:
   - exp-pairs ==0.1.5.2
   - expiring-cache-map ==0.0.6.1
   - explicit-exception ==0.1.9
-  - extensible ==0.4.3
+  - extensible ==0.4.4
   - extensible-effects ==1.11.1.0
   - extensible-exceptions ==0.1.1.4
   - extra ==1.5.3
@@ -764,7 +766,7 @@ default-package-overrides:
   - ghc-syb-utils ==0.2.3.2
   - ghc-tcplugins-extra ==0.2.1
   - ghc-typelits-extra ==0.2.3
-  - ghc-typelits-knownnat ==0.3
+  - ghc-typelits-knownnat ==0.3.1
   - ghc-typelits-natnormalise ==0.5.3
   - ghcid ==0.6.6
   - ghcjs-base-stub ==0.1.0.2
@@ -776,7 +778,7 @@ default-package-overrides:
   - gi-gdkpixbuf ==2.0.14
   - gi-gio ==2.0.14
   - gi-glib ==2.0.14
-  - gi-gobject ==2.0.14
+  - gi-gobject ==2.0.15
   - gi-gtk ==3.0.17
   - gi-javascriptcore ==3.0.14
   - gi-pango ==1.0.15
@@ -1008,11 +1010,12 @@ default-package-overrides:
   - hbeanstalk ==0.2.4
   - Hclip ==3.0.0.4
   - HCodecs ==0.5
+  - hcwiid ==0.0.6.1
   - hdaemonize ==0.5.4
-  - HDBC ==2.4.0.1
+  - HDBC ==2.4.0.2
   - HDBC-mysql ==0.7.1.0
   - HDBC-session ==0.1.1.1
-  - hdevtools ==0.1.5.0
+  - hdevtools ==0.1.6.0
   - hdocs ==0.5.2.1
   - heap ==1.0.3
   - heaps ==0.3.5
@@ -1122,6 +1125,7 @@ default-package-overrides:
   - hstatistics ==0.3
   - hstatsd ==0.1
   - HStringTemplate ==0.8.6
+  - HSvm ==0.1.0.3.22
   - hsx-jmacro ==7.3.8
   - hsx2hs ==0.14.1.1
   - hsyslog ==5.0.1
@@ -1141,7 +1145,7 @@ default-package-overrides:
   - http-date ==0.0.6.1
   - http-link-header ==1.0.3
   - http-media ==0.6.4
-  - http-reverse-proxy ==0.4.4
+  - http-reverse-proxy ==0.4.5
   - http-streams ==0.8.5.3
   - http-types ==0.9.1
   - http2 ==1.6.3
@@ -1155,12 +1159,12 @@ default-package-overrides:
   - hw-bits ==0.5.0.3
   - hw-diagnostics ==0.0.0.5
   - hw-excess ==0.1.0.1
-  - hw-int ==0.0.0.1
-  - hw-parser ==0.0.0.2
-  - hw-prim ==0.4.0.3
+  - hw-int ==0.0.0.3
+  - hw-parser ==0.0.0.3
+  - hw-prim ==0.4.0.5
   - hw-rankselect ==0.8.0.2
-  - hw-rankselect-base ==0.2.0.1
-  - hw-string-parse ==0.0.0.3
+  - hw-rankselect-base ==0.2.0.2
+  - hw-string-parse ==0.0.0.4
   - hw-succinct ==0.1.0.1
   - hweblib ==0.6.3
   - hworker ==0.1.0.1
@@ -1227,7 +1231,7 @@ default-package-overrides:
   - ip6addr ==0.5.3
   - iproute ==1.7.1
   - IPv6Addr ==1.0.1
-  - IPv6DB ==0.2.1
+  - IPv6DB ==0.2.2
   - irc ==0.6.1.0
   - irc-client ==0.4.4.4
   - irc-conduit ==0.2.2.3
@@ -1258,7 +1262,7 @@ default-package-overrides:
   - json-rpc-generic ==0.2.1.2
   - json-schema ==0.7.4.1
   - json-stream ==0.4.1.3
-  - JuicyPixels ==3.2.8.2
+  - JuicyPixels ==3.2.8.3
   - JuicyPixels-extra ==0.2.1
   - JuicyPixels-scale-dct ==0.1.1.2
   - jvm ==0.2.2
@@ -1298,7 +1302,7 @@ default-package-overrides:
   - lattices ==1.5.0
   - lazyio ==0.1.0.4
   - lca ==0.3
-  - leancheck ==0.6.4
+  - leancheck ==0.6.5
   - leapseconds-announced ==2017
   - lens ==4.15.4
   - lens-action ==0.2.2
@@ -1416,7 +1420,7 @@ default-package-overrides:
   - mime-mail ==0.4.14
   - mime-mail-ses ==0.3.2.3
   - mime-types ==0.1.0.7
-  - minio-hs ==0.3.0
+  - minio-hs ==0.3.1
   - mintty ==0.1.1
   - miso ==0.4.0.0
   - missing-foreign ==0.1.1
@@ -1463,7 +1467,7 @@ default-package-overrides:
   - monoid-subclasses ==0.4.4
   - monoid-transformer ==0.0.3
   - monoidal-containers ==0.3.0.2
-  - morte ==1.6.9
+  - morte ==1.6.10
   - mountpoints ==1.0.2
   - mstate ==0.2.7
   - mtl ==2.2.1
@@ -1516,10 +1520,10 @@ default-package-overrides:
   - network-transport-composed ==0.2.0.1
   - network-transport-inmemory ==0.5.2
   - network-transport-tcp ==0.5.1
-  - network-transport-tests ==0.2.3.0
+  - network-transport-tests ==0.2.4.1
   - network-uri ==2.6.1.0
   - newtype ==0.2
-  - newtype-generics ==0.5
+  - newtype-generics ==0.5.1
   - next-ref ==0.1.0.2
   - nfc ==0.1.0
   - nicify-lib ==1.0.1
@@ -1587,7 +1591,7 @@ default-package-overrides:
   - pager ==0.1.1.0
   - pagerduty ==0.0.8
   - pagination ==0.2.1
-  - palette ==0.1.0.4
+  - palette ==0.1.0.5
   - pandoc ==1.19.2.1
   - pandoc-citeproc ==0.10.5.1
   - pandoc-types ==1.17.0.5
@@ -1783,7 +1787,7 @@ default-package-overrides:
   - raw-strings-qq ==1.1
   - rawfilepath ==0.2.4
   - rawstring-qm ==0.2.3.0
-  - rdf ==0.1.0.1
+  - rdf ==0.1.0.2
   - rdtsc ==1.3.0.1
   - reactive-banana ==1.1.0.1
   - read-editor ==0.1.0.2
@@ -1861,7 +1865,7 @@ default-package-overrides:
   - safe ==0.3.15
   - safe-exceptions ==0.1.6.0
   - safe-exceptions-checked ==0.1.0
-  - safecopy ==0.9.3.2
+  - safecopy ==0.9.3.3
   - safeio ==0.0.3.0
   - SafeSemaphore ==0.10.1
   - sample-frame ==0.0.3
@@ -1873,11 +1877,12 @@ default-package-overrides:
   - scalpel ==0.5.1
   - scalpel-core ==0.5.1
   - scanner ==0.2
-  - schematic ==0.1.4.0
+  - schematic ==0.1.6.0
   - scientific ==0.3.5.1
   - scotty ==0.11.0
   - scrape-changes ==0.1.0.5
   - scrypt ==0.5.0
+  - SDL ==0.6.5.1
   - sdl2 ==2.2.0
   - sdl2-gfx ==0.2
   - sdl2-image ==2.0.0
@@ -1932,7 +1937,7 @@ default-package-overrides:
   - SHA ==1.6.4.2
   - shake ==0.15.11
   - shake-language-c ==0.10.1
-  - shakespeare ==2.0.13
+  - shakespeare ==2.0.14
   - shell-conduit ==4.6.1
   - shelly ==1.6.8.3
   - shikensu ==0.3.7
@@ -2013,7 +2018,7 @@ default-package-overrides:
   - stateref ==0.3
   - statestack ==0.2.0.5
   - StateVar ==1.1.0.4
-  - stateWriter ==0.2.8.2
+  - stateWriter ==0.2.9
   - static-canvas ==0.2.0.3
   - statistics ==0.13.3.0
   - stemmer ==0.5.2
@@ -2064,7 +2069,7 @@ default-package-overrides:
   - superrecord ==0.3.0.0
   - svg-builder ==0.1.0.2
   - svg-tree ==0.6.2
-  - SVGFonts ==1.6.0.1
+  - SVGFonts ==1.6.0.2
   - swagger ==0.3.0
   - swagger2 ==2.1.4.1
   - syb ==0.7
@@ -2214,7 +2219,7 @@ default-package-overrides:
   - tries ==0.0.4.2
   - trifecta ==1.6.2.1
   - triplesec ==0.1.2.0
-  - true-name ==0.1.0.2
+  - true-name ==0.1.0.3
   - tsv2csv ==0.1.0.2
   - ttrie ==0.1.2.1
   - tttool ==1.7.0.3
@@ -2223,7 +2228,7 @@ default-package-overrides:
   - tuples-homogenous-h98 ==0.1.1.0
   - turtle ==1.3.6
   - turtle-options ==0.1.0.4
-  - twitter-conduit ==0.2.2.1
+  - twitter-conduit ==0.2.2.2
   - twitter-feed ==0.2.0.11
   - twitter-types ==0.7.2.2
   - twitter-types-lens ==0.7.2
@@ -2239,7 +2244,7 @@ default-package-overrides:
   - type-operators ==0.1.0.4
   - type-spec ==0.3.0.1
   - TypeCompose ==0.9.12
-  - typed-process ==0.1.0.0
+  - typed-process ==0.1.0.1
   - typelits-witnesses ==0.2.3.0
   - typography-geometry ==1.0.0.1
   - tz ==0.1.3.0
@@ -2447,11 +2452,11 @@ default-package-overrides:
   - yackage ==0.8.1
   - yahoo-finance-api ==0.2.0.2
   - yaml ==0.8.23.3
-  - Yampa ==0.10.6
+  - Yampa ==0.10.6.1
   - YampaSynth ==0.2
   - yes-precure5-command ==5.5.3
   - yesod ==1.4.5
-  - yesod-auth ==1.4.17.2
+  - yesod-auth ==1.4.17.3
   - yesod-auth-account ==1.4.3
   - yesod-auth-basic ==0.1.0.2
   - yesod-auth-fb ==1.8.1
@@ -2461,7 +2466,7 @@ default-package-overrides:
   - yesod-default ==1.2.0
   - yesod-eventsource ==1.4.1
   - yesod-fb ==0.4.0
-  - yesod-form ==1.4.13
+  - yesod-form ==1.4.15
   - yesod-form-bootstrap4 ==0.1.0.1
   - yesod-form-richtext ==0.1.0.2
   - yesod-gitrepo ==0.2.1.0
@@ -2657,6 +2662,8 @@ dont-distribute-packages:
   ccelerate-cuda:                               [ i686-linux, x86_64-linux, x86_64-darwin ]
   cublas:                                       [ i686-linux, x86_64-linux, x86_64-darwin ]
   cufft:                                        [ i686-linux, x86_64-linux, x86_64-darwin ]
+  cusolver:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
+  cusparse:                                     [ i686-linux, x86_64-linux, x86_64-darwin ]
   gloss-raster-accelerate:                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   libnvvm:                                      [ i686-linux, x86_64-linux, x86_64-darwin ]
   nvvm:                                         [ i686-linux, x86_64-linux, x86_64-darwin ]
diff --git a/pkgs/development/haskell-modules/hackage-packages.nix b/pkgs/development/haskell-modules/hackage-packages.nix
index b90e11cc51c..6e4f936245a 100644
--- a/pkgs/development/haskell-modules/hackage-packages.nix
+++ b/pkgs/development/haskell-modules/hackage-packages.nix
@@ -2730,8 +2730,8 @@ self: {
      }:
      mkDerivation {
        pname = "ChasingBottoms";
-       version = "1.3.1.2";
-       sha256 = "1mmqs8xhmlamb9ncvkwnsfb0zqprvw7flm91fyv4x8n4c25jfvkr";
+       version = "1.3.1.3";
+       sha256 = "04jwwjs22mqc4hvpp4c3gpb79inrrq5sapks5khknspv2hslm61q";
        libraryHaskellDepends = [
          base containers mtl QuickCheck random syb
        ];
@@ -4991,8 +4991,10 @@ self: {
      }:
      mkDerivation {
        pname = "Euterpea";
-       version = "2.0.3";
-       sha256 = "0khr4yqrg258x0fqrhzpwrzzsmzwdk3x3b3vyyqqmy5vh9hagvfy";
+       version = "2.0.4";
+       sha256 = "1n0b4ksdrr1457abvij76z8r4ski4cic80picddilpg83mxaasw6";
+       revision = "2";
+       editedCabalFile = "0f8fyib7cqb4w54rrcrd00c6ca4fgfj5v9rm7mih7lyybkrs44qv";
        libraryHaskellDepends = [
          array arrows base bytestring containers deepseq ghc-prim HCodecs
          heap PortMidi random stm
@@ -7111,27 +7113,6 @@ self: {
      }:
      mkDerivation {
        pname = "HDBC";
-       version = "2.4.0.1";
-       sha256 = "1bfjffn44n8w0bvznjiqm4ckfs28nipachip98f125p784ff4gks";
-       revision = "1";
-       editedCabalFile = "1zg7l48g45wc86kqyspzg92q3vnzb6c52rn8qkrhw85wk57yy76s";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         base bytestring containers convertible mtl old-time text time
-         utf8-string
-       ];
-       homepage = "https://github.com/hdbc/hdbc";
-       description = "Haskell Database Connectivity";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "HDBC_2_4_0_2" = callPackage
-    ({ mkDerivation, base, bytestring, containers, convertible, mtl
-     , old-time, text, time, utf8-string
-     }:
-     mkDerivation {
-       pname = "HDBC";
        version = "2.4.0.2";
        sha256 = "0nnvfyivmw5pykbna953yb6z4al1ak5vsd308lpsyv2bczymf1v7";
        isLibrary = true;
@@ -7143,7 +7124,6 @@ self: {
        homepage = "https://github.com/hdbc/hdbc";
        description = "Haskell Database Connectivity";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "HDBC-mysql" = callPackage
@@ -10200,36 +10180,6 @@ self: {
      }:
      mkDerivation {
        pname = "IPv6DB";
-       version = "0.2.1";
-       sha256 = "1730whn02k1d9w6znfiibz8slwwnbrm1z47s544c24vdziwfh54v";
-       isLibrary = true;
-       isExecutable = true;
-       libraryHaskellDepends = [
-         aeson attoparsec base bytestring hedis http-types IPv6Addr mtl text
-         unordered-containers vector
-       ];
-       executableHaskellDepends = [
-         aeson base bytestring fast-logger hedis http-types IPv6Addr mtl
-         optparse-applicative text unordered-containers vector wai
-         wai-logger warp
-       ];
-       testHaskellDepends = [
-         aeson base hspec http-client http-types vector
-       ];
-       homepage = "http://ipv6db.cybervisible.com";
-       description = "A RESTful Web Service for IPv6-related data";
-       license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "IPv6DB_0_2_2" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, bytestring, fast-logger
-     , hedis, hspec, http-client, http-types, IPv6Addr, mtl
-     , optparse-applicative, text, unordered-containers, vector, wai
-     , wai-logger, warp
-     }:
-     mkDerivation {
-       pname = "IPv6DB";
        version = "0.2.2";
        sha256 = "117qn9h25wi0q8nnj10yj33spqizcsf0inb7n4xpbccg60x9i51k";
        isLibrary = true;
@@ -10630,23 +10580,6 @@ self: {
      }:
      mkDerivation {
        pname = "JuicyPixels";
-       version = "3.2.8.2";
-       sha256 = "1s3qakm7jn2kjx59nlp81hkysz6bxidj3khd8xlny7x8gvjqjk5p";
-       libraryHaskellDepends = [
-         base binary bytestring containers deepseq mtl primitive
-         transformers vector zlib
-       ];
-       homepage = "https://github.com/Twinside/Juicy.Pixels";
-       description = "Picture loading/serialization (in png, jpeg, bitmap, gif, tga, tiff and radiance)";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "JuicyPixels_3_2_8_3" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, deepseq, mtl
-     , primitive, transformers, vector, zlib
-     }:
-     mkDerivation {
-       pname = "JuicyPixels";
        version = "3.2.8.3";
        sha256 = "1g4cjldlncll6snykgm4qwkryqq66m5a3a5jrxq79nzfizvwsl4c";
        libraryHaskellDepends = [
@@ -10656,7 +10589,6 @@ self: {
        homepage = "https://github.com/Twinside/Juicy.Pixels";
        description = "Picture loading/serialization (in png, jpeg, bitmap, gif, tga, tiff and radiance)";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "JuicyPixels-canvas" = callPackage
@@ -15867,26 +15799,6 @@ self: {
      }:
      mkDerivation {
        pname = "SVGFonts";
-       version = "1.6.0.1";
-       sha256 = "1w6hh8anpb0psilzbp4k80rbavdmkmb5rn34x9m2s72rz0jfy9zp";
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         attoparsec base blaze-markup blaze-svg bytestring cereal
-         cereal-vector containers data-default-class diagrams-core
-         diagrams-lib directory parsec split text tuple vector xml
-       ];
-       description = "Fonts from the SVG-Font format";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "SVGFonts_1_6_0_2" = callPackage
-    ({ mkDerivation, attoparsec, base, blaze-markup, blaze-svg
-     , bytestring, cereal, cereal-vector, containers, data-default-class
-     , diagrams-core, diagrams-lib, directory, parsec, split, text
-     , tuple, vector, xml
-     }:
-     mkDerivation {
-       pname = "SVGFonts";
        version = "1.6.0.2";
        sha256 = "07rimlhsvb5j77rkp1zw9567lbc0bq6172mzsm3yb4zw6x9aplaa";
        enableSeparateDataOutput = true;
@@ -15897,7 +15809,6 @@ self: {
        ];
        description = "Fonts from the SVG-Font format";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "SVGPath" = callPackage
@@ -19272,28 +19183,30 @@ self: {
      }) {};
 
   "Yampa" = callPackage
-    ({ mkDerivation, base, deepseq, random }:
+    ({ mkDerivation, base, deepseq, hcwiid, random, SDL }:
      mkDerivation {
        pname = "Yampa";
-       version = "0.10.6";
-       sha256 = "060aglv38snkf9p9d46mnvny517xvyzz561vlm8myxzx3jm38lsn";
+       version = "0.10.6.1";
+       sha256 = "108rn0hc5xqw8pmadaddgawxpsznhjg8kbn9m30lwz04hv2ivjrv";
+       isLibrary = true;
+       isExecutable = true;
        libraryHaskellDepends = [ base deepseq random ];
+       executableHaskellDepends = [ base deepseq hcwiid random SDL ];
        testHaskellDepends = [ base ];
        homepage = "http://www.haskell.org/haskellwiki/Yampa";
        description = "Library for programming hybrid systems";
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "Yampa_0_10_6_1" = callPackage
-    ({ mkDerivation, base, deepseq, hcwiid, random, SDL }:
+  "Yampa_0_10_6_2" = callPackage
+    ({ mkDerivation, base, deepseq, random }:
      mkDerivation {
        pname = "Yampa";
-       version = "0.10.6.1";
-       sha256 = "108rn0hc5xqw8pmadaddgawxpsznhjg8kbn9m30lwz04hv2ivjrv";
+       version = "0.10.6.2";
+       sha256 = "1d18m2id6dsdkpldmqsjxxi6mpqv8hg87mzpay99l8h937nyhj3g";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [ base deepseq random ];
-       executableHaskellDepends = [ base deepseq hcwiid random SDL ];
        testHaskellDepends = [ base ];
        homepage = "http://www.haskell.org/haskellwiki/Yampa";
        description = "Library for programming hybrid systems";
@@ -22167,6 +22080,35 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "aip" = callPackage
+    ({ mkDerivation, base, bytestring, digit, directory, doctest
+     , filepath, HTTP, lens, network-uri, papa, parsec, parsers
+     , QuickCheck, quickcheck-text, tagsoup, tagsoup-selection
+     , template-haskell, transformers
+     }:
+     mkDerivation {
+       pname = "aip";
+       version = "0.0.1";
+       sha256 = "162mmwniiwlyi3h7d4xxmk2a8pr3ldnl1mx9m9yjpl5vy0926lyd";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring digit directory filepath HTTP lens network-uri papa
+         parsec parsers tagsoup tagsoup-selection transformers
+       ];
+       executableHaskellDepends = [
+         base bytestring digit directory filepath HTTP lens network-uri papa
+         parsec parsers tagsoup tagsoup-selection transformers
+       ];
+       testHaskellDepends = [
+         base directory doctest filepath parsec QuickCheck quickcheck-text
+         template-haskell
+       ];
+       homepage = "https://github.com/qfpl/aip";
+       description = "Aeronautical Information Package (AIP)";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "air" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, directory
      , filepath, mtl, text, time
@@ -22334,8 +22276,8 @@ self: {
      }:
      mkDerivation {
        pname = "aivika-distributed";
-       version = "0.7";
-       sha256 = "0f1vb7948p7xn1x4ayzjpr222349bp70wsix384nhwsrksk2fiwp";
+       version = "0.7.2";
+       sha256 = "1b18sgnk5ybrfvwqhwixcnwzr7ffi2h93ck75ba9a1r8rkkd193c";
        libraryHaskellDepends = [
          aivika aivika-transformers base binary containers
          distributed-process exceptions mtl mwc-random random stm time
@@ -26261,6 +26203,35 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "apns-http2" = callPackage
+    ({ mkDerivation, aeson, aeson-qq, async, base, base16-bytestring
+     , bytestring, conduit, conduit-extra, containers, data-default
+     , http2, keys, lens, lifted-base, mmorph, mtl, network, stm
+     , stm-chans, stm-conduit, text, time, tls, x509, x509-store
+     , x509-system, x509-validation
+     }:
+     mkDerivation {
+       pname = "apns-http2";
+       version = "0.1.0.0";
+       sha256 = "1mbsvv202h6vh1gkv4rhx369wagil111qbphb502v02v2g5yibdb";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson async base bytestring conduit conduit-extra containers
+         data-default http2 keys lens lifted-base mmorph mtl network stm
+         stm-chans stm-conduit text time tls x509 x509-store x509-validation
+       ];
+       executableHaskellDepends = [
+         aeson aeson-qq async base base16-bytestring bytestring conduit
+         conduit-extra containers data-default http2 keys lens lifted-base
+         mmorph mtl network stm stm-chans stm-conduit text time tls x509
+         x509-store x509-system x509-validation
+       ];
+       homepage = "https://github.com/ConferHealth/apns-http2#readme";
+       description = "Apple Push Notification service HTTP/2 integration";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "apotiki" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, binary, bytestring
      , containers, crypto-api, cryptohash, directory, http-types
@@ -27306,15 +27277,15 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "arrowp-qq_0_2_0_1" = callPackage
+  "arrowp-qq_0_2_1_1" = callPackage
     ({ mkDerivation, arrows, base, containers, data-default
      , haskell-src-exts, haskell-src-exts-util, haskell-src-meta, NoHoed
      , template-haskell, transformers, uniplate
      }:
      mkDerivation {
        pname = "arrowp-qq";
-       version = "0.2.0.1";
-       sha256 = "18m9h5v1c3w0f5f0iw2vxmdms73d4w9s1z7aa301h2c43fv0iym8";
+       version = "0.2.1.1";
+       sha256 = "0sxcsjag31m773l9c02gq879rh0hllsjns2cl3pkazbj2jgf53i5";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -28618,8 +28589,8 @@ self: {
      }:
      mkDerivation {
        pname = "attoparsec-data";
-       version = "1.0.2";
-       sha256 = "0qkjl80vmprqq8fd6ksxaqmqq5izd1cg7c8v98s8j59kdzw322ab";
+       version = "1.0.3";
+       sha256 = "02bkrbdipd0940aq34dx4156z538jbfxpgdk3pkbb6vjdcghcw9g";
        libraryHaskellDepends = [
          attoparsec attoparsec-time base base-prelude bytestring scientific
          text time
@@ -28743,6 +28714,28 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "attoparsec-time_1" = callPackage
+    ({ mkDerivation, attoparsec, base, base-prelude, bytestring, Cabal
+     , cabal-doctest, directory, doctest, filepath, scientific, text
+     , time
+     }:
+     mkDerivation {
+       pname = "attoparsec-time";
+       version = "1";
+       sha256 = "0606rdwb6r5s819hid3fd4gkclprwjmqryl4fniflcpccy94gsyl";
+       setupHaskellDepends = [ base Cabal cabal-doctest ];
+       libraryHaskellDepends = [
+         attoparsec base base-prelude bytestring scientific text time
+       ];
+       testHaskellDepends = [
+         base base-prelude directory doctest filepath
+       ];
+       homepage = "https://github.com/nikita-volkov/attoparsec-time";
+       description = "Attoparsec parsers of time";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "attoparsec-trans" = callPackage
     ({ mkDerivation, attoparsec, base, transformers }:
      mkDerivation {
@@ -29232,8 +29225,8 @@ self: {
        pname = "avers";
        version = "0.0.17.1";
        sha256 = "1x96fvx0z7z75c39qcggw70qvqnw7kzjf0qqxb3jwg3b0fmdhi8v";
-       revision = "15";
-       editedCabalFile = "06vhxs4172liq6ayf2cg3b45hk3jkcxbgz1ilwqrw9bbn8lfgq6s";
+       revision = "16";
+       editedCabalFile = "0dv8lrnnb643fh1rsi10rq99nnb5a98akdl26lfxxjmmdmy238vd";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring clock containers cryptonite
          filepath inflections memory MonadRandom mtl network network-uri
@@ -33651,22 +33644,20 @@ self: {
      }) {};
 
   "biohazard" = callPackage
-    ({ mkDerivation, aeson, async, attoparsec, base, base-prelude
-     , binary, bytestring, bytestring-mmap, containers, directory
-     , exceptions, filepath, hashable, monad-control, primitive, random
-     , scientific, stm, text, transformers, transformers-base, unix
+    ({ mkDerivation, async, attoparsec, base, base-prelude, binary
+     , bytestring, containers, directory, exceptions, filepath, hashable
+     , primitive, random, scientific, stm, text, transformers, unix
      , unordered-containers, vector, vector-algorithms, vector-th-unbox
      , zlib
      }:
      mkDerivation {
        pname = "biohazard";
-       version = "0.6.15";
-       sha256 = "19w9rk0r835fzfk5k2fxfb54wa4fbyyfrppa4ifmc7z57bxii3gq";
+       version = "0.6.16";
+       sha256 = "05w44blv6bawkiw2vyb32swnv6wg92033xz9p03fhrc2yhl33pps";
        libraryHaskellDepends = [
-         aeson async attoparsec base base-prelude binary bytestring
-         bytestring-mmap containers directory exceptions filepath hashable
-         monad-control primitive random scientific stm text transformers
-         transformers-base unix unordered-containers vector
+         async attoparsec base base-prelude binary bytestring containers
+         directory exceptions filepath hashable primitive random scientific
+         stm text transformers unix unordered-containers vector
          vector-algorithms vector-th-unbox zlib
        ];
        homepage = "http://github.com/udo-stenzel/biohazard";
@@ -36290,7 +36281,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "brick_0_24_1" = callPackage
+  "brick_0_24_2" = callPackage
     ({ mkDerivation, base, containers, contravariant, data-clist
      , deepseq, dlist, microlens, microlens-mtl, microlens-th, stm
      , template-haskell, text, text-zipper, transformers, vector, vty
@@ -36298,8 +36289,8 @@ self: {
      }:
      mkDerivation {
        pname = "brick";
-       version = "0.24.1";
-       sha256 = "0vjj64h683m28kwhp98crdyywbhpk7q6bx7crg2dr2g2mj41bb58";
+       version = "0.24.2";
+       sha256 = "162p1sgiq25zymjnvjzkbblwwl7544ph7y8kpa1x07w7x9bq2jw3";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -38716,8 +38707,8 @@ self: {
      }:
      mkDerivation {
        pname = "cabal2nix";
-       version = "2.4.1";
-       sha256 = "0dplmm32kckb5mk2gfkw63qkakzbgz7f4j0scaj74ncga4vjkzxg";
+       version = "2.5";
+       sha256 = "19ywslwarwk84anfq78y249krqnddi2yyh66l78a88xfsh002abp";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -41493,6 +41484,19 @@ self: {
        license = "LGPL";
      }) {};
 
+  "charsetdetect-ae_1_1_0_3" = callPackage
+    ({ mkDerivation, base, bytestring }:
+     mkDerivation {
+       pname = "charsetdetect-ae";
+       version = "1.1.0.3";
+       sha256 = "15kf9g708ics81s3gj4vkx4xcvywj2fripf0g9p29v4xliwd9m7y";
+       libraryHaskellDepends = [ base bytestring ];
+       homepage = "http://github.com/aelve/charsetdetect-ae";
+       description = "Character set detection using Mozilla's Universal Character Set Detector";
+       license = "LGPL";
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "chart-histogram" = callPackage
     ({ mkDerivation, base, Chart }:
      mkDerivation {
@@ -41930,25 +41934,12 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "choice";
-       version = "0.2.1";
-       sha256 = "163p6ji6gsr0lgxvldnz0rmcbckfk75wpq0xn1n41fbhxzchr2gi";
-       libraryHaskellDepends = [ base ];
-       homepage = "https://github.com/mboes/choice#readme";
-       description = "A solution to boolean blindness";
-       license = stdenv.lib.licenses.publicDomain;
-     }) {};
-
-  "choice_0_2_2" = callPackage
-    ({ mkDerivation, base }:
-     mkDerivation {
-       pname = "choice";
        version = "0.2.2";
        sha256 = "0qcyf6nqi0nyhbf3xwyib95y29j5ir94d5vg449mkpr92crf8ryk";
        libraryHaskellDepends = [ base ];
        homepage = "https://github.com/mboes/choice#readme";
        description = "A solution to boolean blindness";
        license = stdenv.lib.licenses.publicDomain;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "choose" = callPackage
@@ -45323,17 +45314,17 @@ self: {
   "columbia" = callPackage
     ({ mkDerivation, array, base, bytestring, containers, contravariant
      , data-endian, directory, filelock, invariant, mmap, mmorph
-     , monad-loops, mtl, parallel, pointless-haskell, syb-with-class
-     , transformers
+     , monad-loops, mtl, parallel, pointed, pointless-haskell
+     , syb-with-class, transformers
      }:
      mkDerivation {
        pname = "columbia";
-       version = "0.1.0.2";
-       sha256 = "152f43s2dm81amag28kav9a1gfyg97rxhd2dm3ivip98j8p1d6j0";
+       version = "0.1.1";
+       sha256 = "10yd0rp9zzdsx2hcb7gn0yxz8b9zj0pfy4g8d09qgs3c8lg8fdan";
        libraryHaskellDepends = [
          array base bytestring containers contravariant data-endian
          directory filelock invariant mmap mmorph monad-loops mtl parallel
-         pointless-haskell syb-with-class transformers
+         pointed pointless-haskell syb-with-class transformers
        ];
        description = "Enhanced serialization for media that support seeking";
        license = stdenv.lib.licenses.bsd3;
@@ -46547,15 +46538,15 @@ self: {
      }) {};
 
   "concrete-haskell-autogen" = callPackage
-    ({ mkDerivation, base, bytestring, containers, hashable, QuickCheck
-     , text, thrift, unordered-containers, vector
+    ({ mkDerivation, base, bytestring, containers, hashable, lens
+     , QuickCheck, text, thrift, unordered-containers, vector
      }:
      mkDerivation {
        pname = "concrete-haskell-autogen";
-       version = "0.0.0.1";
-       sha256 = "09y6jj0f7kaibn9imnk6wrhkn1yq1dpjxr8pqdizqqm5dwrwy94m";
+       version = "0.0.0.2";
+       sha256 = "02y9ahcryrhwiam9fsh8r57lri3zhy2xhm6098j9x1zzr2vq72sl";
        libraryHaskellDepends = [
-         base bytestring containers hashable QuickCheck text thrift
+         base bytestring containers hashable lens QuickCheck text thrift
          unordered-containers vector
        ];
        homepage = "https://github.com/hltcoe";
@@ -50537,23 +50528,6 @@ self: {
      }:
      mkDerivation {
        pname = "crypto-enigma";
-       version = "0.0.2.8";
-       sha256 = "0dz8qr4afl360vc8mhcxsqm48y4pf1rvwxhzbvsgwhwjscvass3q";
-       revision = "4";
-       editedCabalFile = "1rvcphwavb3ns46fankpdlkz8rwl3rn591zlkmx0zdy3vygpwsfg";
-       libraryHaskellDepends = [ base containers MissingH mtl split ];
-       testHaskellDepends = [ base HUnit QuickCheck ];
-       homepage = "https://github.com/orome/crypto-enigma-hs";
-       description = "An Enigma machine simulator with display";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "crypto-enigma_0_0_2_9" = callPackage
-    ({ mkDerivation, base, containers, HUnit, MissingH, mtl, QuickCheck
-     , split
-     }:
-     mkDerivation {
-       pname = "crypto-enigma";
        version = "0.0.2.9";
        sha256 = "18nc5gqsy4dsm22van6iz96lqq45f7jqik4fljczgp6n1knyig9z";
        libraryHaskellDepends = [ base containers MissingH mtl split ];
@@ -50561,7 +50535,6 @@ self: {
        homepage = "https://github.com/orome/crypto-enigma-hs";
        description = "An Enigma machine simulator with display";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "crypto-multihash" = callPackage
@@ -51551,25 +51524,20 @@ self: {
      }) {};
 
   "cublas" = callPackage
-    ({ mkDerivation, base, c2hs, cublas, cuda, cusparse, filepath
-     , language-c, storable-complex, template-haskell
+    ({ mkDerivation, base, c2hs, Cabal, cuda, directory, filepath, half
+     , storable-complex
      }:
      mkDerivation {
        pname = "cublas";
-       version = "0.2.1.0";
-       sha256 = "02x8a9varkj770cl4nnb0mf4qh519gf9mv51awinlaikyz932q1w";
-       revision = "1";
-       editedCabalFile = "1myrmj4fc1nxgdlv5pmz30j4nlap7a6ylyc7bmrljpyjgciwg117";
-       libraryHaskellDepends = [
-         base cuda filepath language-c storable-complex template-haskell
-       ];
-       librarySystemDepends = [ cublas cusparse ];
+       version = "0.3.0.0";
+       sha256 = "1i2nqbf0zmc1xpqb8szklccki2jkwpiqslqbaahidzp18bc9cm2r";
+       setupHaskellDepends = [ base Cabal cuda directory filepath ];
+       libraryHaskellDepends = [ base cuda half storable-complex ];
        libraryToolDepends = [ c2hs ];
-       homepage = "https://github.com/bmsherman/cublas";
-       description = "FFI bindings to the CUDA CUBLAS and CUSPARSE libraries";
+       description = "FFI bindings to the CUDA BLAS library";
        license = stdenv.lib.licenses.bsd3;
        hydraPlatforms = stdenv.lib.platforms.none;
-     }) {cublas = null; cusparse = null;};
+     }) {};
 
   "cuboid" = callPackage
     ({ mkDerivation, base, GLUT, Yampa }:
@@ -51590,12 +51558,14 @@ self: {
      }:
      mkDerivation {
        pname = "cuda";
-       version = "0.7.5.3";
-       sha256 = "1xd7yyh9v8ndir98wgsbhkz8kfgd7xl58b423gw44c6i8wq3mky6";
+       version = "0.8.0.0";
+       sha256 = "0zlasd6c3da462qaffj9z44546551b2cvs0wv0f23739x4i929z9";
        isLibrary = true;
        isExecutable = true;
        setupHaskellDepends = [ base Cabal directory filepath ];
-       libraryHaskellDepends = [ base bytestring template-haskell ];
+       libraryHaskellDepends = [
+         base bytestring filepath template-haskell
+       ];
        libraryToolDepends = [ c2hs ];
        executableHaskellDepends = [ base pretty ];
        homepage = "https://github.com/tmcdonell/cuda";
@@ -51670,10 +51640,10 @@ self: {
      }:
      mkDerivation {
        pname = "cufft";
-       version = "0.7.5.0";
-       sha256 = "0w8i9r0xng3z2g8gjg4ahi6ybpvr1gmy2hqwjwdv48d52n487g89";
+       version = "0.8.0.0";
+       sha256 = "0n6x079d41s05s050vjyph67xm0gx8nnl9wbmqqgdfimgc8xiggp";
        setupHaskellDepends = [
-         base Cabal directory filepath template-haskell
+         base Cabal cuda directory filepath template-haskell
        ];
        libraryHaskellDepends = [ base cuda ];
        libraryToolDepends = [ c2hs ];
@@ -51750,6 +51720,22 @@ self: {
        license = "unknown";
      }) {};
 
+  "currency-codes" = callPackage
+    ({ mkDerivation, aeson, base, bson, lens, random, safe, swagger2
+     , text
+     }:
+     mkDerivation {
+       pname = "currency-codes";
+       version = "1.0.0.3";
+       sha256 = "0lfaikcig22y79fm75jc40d6ii3xrj4firyfssyqcqbyjhvf3fyn";
+       libraryHaskellDepends = [
+         aeson base bson lens random safe swagger2 text
+       ];
+       homepage = "https://gitlab.com/chordify/currency-codes";
+       description = "ISO-4217 Currency Codes";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "currency-convert" = callPackage
     ({ mkDerivation, aeson, base, http-conduit, text
      , unordered-containers
@@ -51887,6 +51873,40 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "cusolver" = callPackage
+    ({ mkDerivation, base, c2hs, Cabal, cublas, cuda, cusparse
+     , directory, filepath, half, storable-complex
+     }:
+     mkDerivation {
+       pname = "cusolver";
+       version = "0.1.0.0";
+       sha256 = "00ki40s6z9llsbxlp4c46qn7iaamrhnr5yfr983gqg2mfc3wx355";
+       setupHaskellDepends = [ base Cabal cuda directory filepath ];
+       libraryHaskellDepends = [
+         base cublas cuda cusparse half storable-complex
+       ];
+       libraryToolDepends = [ c2hs ];
+       description = "FFI bindings to CUDA Solver, a LAPACK-like library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
+  "cusparse" = callPackage
+    ({ mkDerivation, base, c2hs, Cabal, cuda, directory, filepath, half
+     , storable-complex
+     }:
+     mkDerivation {
+       pname = "cusparse";
+       version = "0.1.0.0";
+       sha256 = "0a45b7y18v50r5lzgkbjapivajqymndl3yvdzp1x25n3imi4knxn";
+       setupHaskellDepends = [ base Cabal cuda directory filepath ];
+       libraryHaskellDepends = [ base cuda half storable-complex ];
+       libraryToolDepends = [ c2hs ];
+       description = "FFI bindings to the CUDA Sparse BLAS library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "custom-prelude" = callPackage
     ({ mkDerivation, base, basic-prelude, monad-loops }:
      mkDerivation {
@@ -55823,24 +55843,6 @@ self: {
      }:
      mkDerivation {
        pname = "dejafu";
-       version = "0.7.1.1";
-       sha256 = "0mqi2jswdk9qid8h5q24ay2h0p3x48i8yz5m0hnwnvqv966lgq7v";
-       libraryHaskellDepends = [
-         base concurrency containers deepseq exceptions leancheck mtl random
-         ref-fd semigroups transformers transformers-base
-       ];
-       homepage = "https://github.com/barrucadu/dejafu";
-       description = "Systematic testing for Haskell concurrency";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "dejafu_0_7_1_2" = callPackage
-    ({ mkDerivation, base, concurrency, containers, deepseq, exceptions
-     , leancheck, mtl, random, ref-fd, semigroups, transformers
-     , transformers-base
-     }:
-     mkDerivation {
-       pname = "dejafu";
        version = "0.7.1.2";
        sha256 = "07ilcx6j4y587vda3y6maqjzn00zx9lz7mlgp2c1rhikbyk5dn03";
        libraryHaskellDepends = [
@@ -55850,7 +55852,6 @@ self: {
        homepage = "https://github.com/barrucadu/dejafu";
        description = "Systematic testing for Haskell concurrency";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "deka" = callPackage
@@ -56948,8 +56949,8 @@ self: {
      }:
      mkDerivation {
        pname = "diagrams-core";
-       version = "1.4";
-       sha256 = "1rrak6vym0q1c00cvhdlh29z8vsr6w81lq1xa9b61f5d7m42yl75";
+       version = "1.4.0.1";
+       sha256 = "0k951bi3b2n33lbjym87l0hcm8v2ww5w2cwfgdmjy8yl4gz1jyff";
        libraryHaskellDepends = [
          adjunctions base containers distributive dual-tree lens linear
          monoid-extras mtl profunctors semigroups unordered-containers
@@ -59175,22 +59176,6 @@ self: {
      }:
      mkDerivation {
        pname = "distributed-static";
-       version = "0.3.5.0";
-       sha256 = "1yai3sgqk1z8kyvnmkw1ngmj7wazlyxva4smvsk37q1ss7fjfyz5";
-       libraryHaskellDepends = [
-         base binary bytestring containers deepseq rank1dynamic
-       ];
-       homepage = "http://haskell-distributed.github.com";
-       description = "Compositional, type-safe, polymorphic static values and closures";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "distributed-static_0_3_7" = callPackage
-    ({ mkDerivation, base, binary, bytestring, containers, deepseq
-     , rank1dynamic
-     }:
-     mkDerivation {
-       pname = "distributed-static";
        version = "0.3.7";
        sha256 = "0aalqhk4d2qbkcxnjn5jnp8m2kbvvl6dm49psfgzpmaixbd6wr45";
        libraryHaskellDepends = [
@@ -59199,7 +59184,6 @@ self: {
        homepage = "http://haskell-distributed.github.com";
        description = "Compositional, type-safe, polymorphic static values and closures";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "distribution" = callPackage
@@ -60198,17 +60182,18 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "dotenv_0_4_0_0" = callPackage
+  "dotenv_0_5_0_1" = callPackage
     ({ mkDerivation, base, base-compat, exceptions, hspec
      , hspec-megaparsec, megaparsec, optparse-applicative, process, text
      , transformers
      }:
      mkDerivation {
        pname = "dotenv";
-       version = "0.4.0.0";
-       sha256 = "0f9c5p1nm7zdwz55wlgm56fb2xvyra0f4i37rfj7bb5kdhncqphg";
+       version = "0.5.0.1";
+       sha256 = "1gbb1h1wzxk6szrciw81kkiljf1gpnaymksspqa955qh4qhxj1bw";
        isLibrary = true;
        isExecutable = true;
+       enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          base base-compat exceptions megaparsec text transformers
        ];
@@ -61086,6 +61071,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "dublincore-xml-conduit" = callPackage
+    ({ mkDerivation, base, bytestring, conduit, conduit-combinators
+     , data-default, hlint, QuickCheck, quickcheck-instances, resourcet
+     , safe-exceptions, tasty, tasty-hunit, tasty-quickcheck, text, time
+     , timerep, uri-bytestring, xml-conduit, xml-types
+     }:
+     mkDerivation {
+       pname = "dublincore-xml-conduit";
+       version = "0.1.0.0";
+       sha256 = "1z09bpywiyv39mm2y4kfvqasg5492f655mbwlh8nn1nv12w9x9il";
+       libraryHaskellDepends = [
+         base conduit conduit-combinators safe-exceptions text time timerep
+         uri-bytestring xml-conduit xml-types
+       ];
+       testHaskellDepends = [
+         base bytestring conduit conduit-combinators data-default hlint
+         QuickCheck quickcheck-instances resourcet safe-exceptions tasty
+         tasty-hunit tasty-quickcheck text time uri-bytestring xml-conduit
+         xml-types
+       ];
+       homepage = "https://github.com/k0ral/dublincore-xml-conduit";
+       description = "XML streaming parser/renderer for the Dublin Core standard elements";
+       license = stdenv.lib.licenses.publicDomain;
+     }) {};
+
   "duckling" = callPackage
     ({ mkDerivation, aeson, array, attoparsec, base, bytestring
      , containers, deepseq, dependent-sum, directory, extra, filepath
@@ -66115,13 +66125,13 @@ self: {
      }) {};
 
   "executor" = callPackage
-    ({ mkDerivation, async, base, process }:
+    ({ mkDerivation, async, base, doctest, hspec, process }:
      mkDerivation {
        pname = "executor";
-       version = "0.0.3";
-       sha256 = "01whn23ycgm59zim6knna43p2dafh0bjwrmfwg3xq169im79n1zq";
+       version = "0.0.4";
+       sha256 = "0knqdlq3ziwpx5dx7i015009ks1qyhzs8cz0sx383xy5im5wcrg7";
        libraryHaskellDepends = [ async base process ];
-       testHaskellDepends = [ async base process ];
+       testHaskellDepends = [ async base doctest hspec process ];
        homepage = "https://github.com/GianlucaGuarini/executor";
        description = "Shell helpers";
        license = stdenv.lib.licenses.mit;
@@ -66681,30 +66691,6 @@ self: {
      }) {};
 
   "extensible" = callPackage
-    ({ mkDerivation, base, comonad, constraints, criterion, deepseq
-     , effin, extensible-effects, freer-effects, ghc-prim, lens
-     , monad-skeleton, mtl, primitive, profunctors, semigroups, StateVar
-     , tagged, template-haskell, transformers
-     }:
-     mkDerivation {
-       pname = "extensible";
-       version = "0.4.3";
-       sha256 = "0ix1dran0s17jpdzcwai79snfmls8al7a34b0sysgkp75g8lrgca";
-       libraryHaskellDepends = [
-         base comonad constraints deepseq ghc-prim monad-skeleton mtl
-         primitive profunctors semigroups StateVar tagged template-haskell
-         transformers
-       ];
-       testHaskellDepends = [ base ];
-       benchmarkHaskellDepends = [
-         base criterion effin extensible-effects freer-effects lens mtl
-       ];
-       homepage = "https://github.com/fumieval/extensible";
-       description = "Extensible, efficient, optics-friendly data types and effects";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "extensible_0_4_4" = callPackage
     ({ mkDerivation, base, comonad, constraints, deepseq, ghc-prim
      , monad-skeleton, mtl, primitive, profunctors, semigroups, StateVar
      , tagged, template-haskell, transformers
@@ -66722,7 +66708,6 @@ self: {
        homepage = "https://github.com/fumieval/extensible";
        description = "Extensible, efficient, optics-friendly data types and effects";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "extensible-data" = callPackage
@@ -68019,6 +68004,31 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "feed_1_0_0_0" = callPackage
+    ({ mkDerivation, base, base-compat, bytestring, HUnit, old-locale
+     , old-time, safe, test-framework, test-framework-hunit, text, time
+     , time-locale-compat, utf8-string, xml-conduit, xml-types
+     }:
+     mkDerivation {
+       pname = "feed";
+       version = "1.0.0.0";
+       sha256 = "05rgg7x1984mgfhkmz792xj8lhwjgznixhygzr8blf517lns2nck";
+       enableSeparateDataOutput = true;
+       libraryHaskellDepends = [
+         base base-compat bytestring old-locale old-time safe text time
+         time-locale-compat utf8-string xml-conduit xml-types
+       ];
+       testHaskellDepends = [
+         base base-compat HUnit old-locale old-time test-framework
+         test-framework-hunit text time time-locale-compat utf8-string
+         xml-conduit xml-types
+       ];
+       homepage = "https://github.com/bergmark/feed";
+       description = "Interfacing with RSS (v 0.9x, 2.x, 1.0) + Atom feeds.";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "feed-cli" = callPackage
     ({ mkDerivation, base, directory, feed, old-locale, old-time, time
      , xml
@@ -75726,6 +75736,19 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "ghc-proofs" = callPackage
+    ({ mkDerivation, base, ghc, transformers }:
+     mkDerivation {
+       pname = "ghc-proofs";
+       version = "0.1";
+       sha256 = "18zznyh84sv5qvxqzk1lkkx3lrqprkqnx996cjywyix5z5kdk5gk";
+       libraryHaskellDepends = [ base ghc ];
+       testHaskellDepends = [ base transformers ];
+       homepage = "https://github.com/nomeata/ghc-proofs";
+       description = "GHC plugin to prove program equations by simplification";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "ghc-server" = callPackage
     ({ mkDerivation }:
      mkDerivation {
@@ -75889,30 +75912,6 @@ self: {
      }:
      mkDerivation {
        pname = "ghc-typelits-knownnat";
-       version = "0.3";
-       sha256 = "0dq419pd8mf8x48wcr3ciygrwy40kvcl5iq307836ss2r506nrqc";
-       revision = "1";
-       editedCabalFile = "17k7rarp56ljxz2j7p17jh1wgbqfcv9l1pj8vrffidb9r8sj448q";
-       libraryHaskellDepends = [
-         base ghc ghc-tcplugins-extra ghc-typelits-natnormalise singletons
-         template-haskell transformers
-       ];
-       testHaskellDepends = [
-         base ghc-typelits-natnormalise singletons tasty tasty-hunit
-         tasty-quickcheck
-       ];
-       homepage = "http://clash-lang.org/";
-       description = "Derive KnownNat constraints from other KnownNat constraints";
-       license = stdenv.lib.licenses.bsd2;
-     }) {};
-
-  "ghc-typelits-knownnat_0_3_1" = callPackage
-    ({ mkDerivation, base, ghc, ghc-tcplugins-extra
-     , ghc-typelits-natnormalise, singletons, tasty, tasty-hunit
-     , tasty-quickcheck, template-haskell, transformers
-     }:
-     mkDerivation {
-       pname = "ghc-typelits-knownnat";
        version = "0.3.1";
        sha256 = "1kprh0fahkbpf7rqbgi8l6883784a8n7k8g40nkdhii7gal9715g";
        libraryHaskellDepends = [
@@ -75926,7 +75925,6 @@ self: {
        homepage = "http://clash-lang.org/";
        description = "Derive KnownNat constraints from other KnownNat constraints";
        license = stdenv.lib.licenses.bsd2;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "ghc-typelits-natnormalise" = callPackage
@@ -76607,27 +76605,6 @@ self: {
      }:
      mkDerivation {
        pname = "gi-gobject";
-       version = "2.0.14";
-       sha256 = "12w4fph341b6gxp6bd6xnrc4cs8bxhwkz33z4ndlkrb75a0289lg";
-       setupHaskellDepends = [ base Cabal haskell-gi ];
-       libraryHaskellDepends = [
-         base bytestring containers gi-glib haskell-gi haskell-gi-base
-         haskell-gi-overloading text transformers
-       ];
-       libraryPkgconfigDepends = [ glib ];
-       doHaddock = false;
-       homepage = "https://github.com/haskell-gi/haskell-gi";
-       description = "GObject bindings";
-       license = stdenv.lib.licenses.lgpl21;
-     }) {inherit (pkgs) glib;};
-
-  "gi-gobject_2_0_15" = callPackage
-    ({ mkDerivation, base, bytestring, Cabal, containers, gi-glib, glib
-     , haskell-gi, haskell-gi-base, haskell-gi-overloading, text
-     , transformers
-     }:
-     mkDerivation {
-       pname = "gi-gobject";
        version = "2.0.15";
        sha256 = "0h98lld62dhdbw7s0c833jw15wxajy6nmvr69604px3saf4mjrrl";
        setupHaskellDepends = [ base Cabal haskell-gi ];
@@ -76640,7 +76617,6 @@ self: {
        homepage = "https://github.com/haskell-gi/haskell-gi";
        description = "GObject bindings";
        license = stdenv.lib.licenses.lgpl21;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {inherit (pkgs) glib;};
 
   "gi-gst" = callPackage
@@ -77222,7 +77198,7 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
-  "ginger_0_6_0_1" = callPackage
+  "ginger_0_6_0_2" = callPackage
     ({ mkDerivation, aeson, base, bytestring, data-default, filepath
      , http-types, mtl, parsec, safe, scientific, tasty, tasty-hunit
      , tasty-quickcheck, text, time, transformers, unordered-containers
@@ -77230,8 +77206,8 @@ self: {
      }:
      mkDerivation {
        pname = "ginger";
-       version = "0.6.0.1";
-       sha256 = "0c843zx5jnw1z0gbiyq5asx5amz6bh87kn1f7359p4p1l4qg44sk";
+       version = "0.6.0.2";
+       sha256 = "0h6db6pm7i19rgn8hfx0m3qjl3b4ybf1ngd2451jn16n859sljbm";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -77747,8 +77723,8 @@ self: {
      }:
      mkDerivation {
        pname = "git-vogue";
-       version = "0.2.2.1";
-       sha256 = "1gx96rh97gbbf2h64rpar00pdph4vdvhwpw7hmmi1vh5ynqp4zrs";
+       version = "0.2.2.2";
+       sha256 = "13i5kb3bqkjhgla98ywl5rhjyi8dnxzi4srsjw3x3hwy0srmh7l8";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -78889,6 +78865,8 @@ self: {
        pname = "gloss-algorithms";
        version = "1.11.1.1";
        sha256 = "1wi3mrx8wzmsjz8al284rzgpsn9z77yw9l8p802hbld2hwf5d9z1";
+       revision = "1";
+       editedCabalFile = "08w84grwvl079gzjwnshfgs12kh1p2gbc5kvbw6qdxc7g292hd5m";
        libraryHaskellDepends = [ base containers ghc-prim gloss ];
        homepage = "http://gloss.ouroborus.net";
        description = "Data structures and algorithms for working with 2D graphics";
@@ -79281,8 +79259,8 @@ self: {
      }:
      mkDerivation {
        pname = "gnss-converters";
-       version = "0.3.11";
-       sha256 = "0f6953pp35rgy2x51db3faawmnr7lsbrdihyi16kcqbffdwcni9g";
+       version = "0.3.15";
+       sha256 = "0ki9s3drynmncd9nzw5xkbjpypz6qjzvbng3dv4kxf6jdd8wd6xl";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -79294,8 +79272,8 @@ self: {
        ];
        testHaskellDepends = [
          aeson aeson-pretty base basic-prelude binary binary-conduit
-         bytestring conduit conduit-extra lens resourcet rtcm sbp tasty
-         tasty-golden tasty-hunit text unordered-containers
+         bytestring conduit conduit-extra lens rtcm sbp tasty tasty-golden
+         tasty-hunit text unordered-containers
        ];
        homepage = "http://github.com/swift-nav/gnss-converters";
        description = "GNSS Converters";
@@ -81569,6 +81547,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "grakn" = callPackage
+    ({ mkDerivation, aeson, base, containers, hspec, http-client
+     , http-media, markdown-unlit, MissingH, mtl, process, QuickCheck
+     , regex-posix, scientific, servant, servant-client, text
+     }:
+     mkDerivation {
+       pname = "grakn";
+       version = "0.2.0";
+       sha256 = "0k6l3bd9bb5wzlk5b5kqp7pdza9vymhm03b65hjcv1djs8lf8hk4";
+       libraryHaskellDepends = [
+         aeson base containers http-client http-media mtl process
+         regex-posix scientific servant servant-client text
+       ];
+       testHaskellDepends = [
+         aeson base containers hspec http-client http-media markdown-unlit
+         MissingH mtl process QuickCheck regex-posix scientific servant
+         servant-client text
+       ];
+       homepage = "https://github.com/graknlabs/grakn-haskell";
+       description = "A Haskell client for <http://grakn.ai Grakn>";
+       license = stdenv.lib.licenses.asl20;
+     }) {};
+
   "grammar-combinators" = callPackage
     ({ mkDerivation, base, containers, enumerable, fgl, graphviz
      , MaybeT, mtl, multirec, parsec, template-haskell, text
@@ -88401,17 +88402,17 @@ self: {
 
   "haskdogs" = callPackage
     ({ mkDerivation, base, bytestring, containers, directory, filepath
-     , optparse-applicative, process, text
+     , hasktags, optparse-applicative, process, text
      }:
      mkDerivation {
        pname = "haskdogs";
-       version = "0.5.0";
-       sha256 = "16ba13qihpxfvb65szzs5ajhk854c0yii939xavwq76dk0cr01w3";
+       version = "0.5.1";
+       sha256 = "1iilnxw9xq3i5y1fvvjs557xbblfgq992576fpvr405wj6nlhmk3";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base bytestring containers directory filepath optparse-applicative
-         process text
+         base bytestring containers directory filepath hasktags
+         optparse-applicative process text
        ];
        homepage = "http://github.com/grwlf/haskdogs";
        description = "Generate tags file for Haskell project and its nearest deps";
@@ -89530,8 +89531,8 @@ self: {
      }:
      mkDerivation {
        pname = "haskell-src-exts-util";
-       version = "0.1.0";
-       sha256 = "0paqb9k7p7vnykrzmiwkmah50523svsifc7wjy1xc5c2cc19597m";
+       version = "0.2.1.2";
+       sha256 = "1a5y6fvzpjdi6az580rb1aq3gjxlcm6gn5dfd9mixyn5dv32aysv";
        libraryHaskellDepends = [
          base containers data-default haskell-src-exts transformers uniplate
        ];
@@ -89631,6 +89632,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-ast_0_9_0_0" = callPackage
+    ({ mkDerivation, base, ghc, mtl, references, template-haskell
+     , uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-ast";
+       version = "0.9.0.0";
+       sha256 = "1hhlp7bvn1q18jsfmi6pig26aggq6961p7lq7p140lk2jlvv9i1i";
+       libraryHaskellDepends = [
+         base ghc mtl references template-haskell uniplate
+       ];
+       homepage = "https://github.com/nboldi/haskell-tools";
+       description = "Haskell AST for efficient tooling";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-ast-fromghc" = callPackage
     ({ mkDerivation, base, bytestring, containers, ghc
      , haskell-tools-ast, mtl, references, safe, split, template-haskell
@@ -89703,6 +89721,25 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-backend-ghc_0_9_0_0" = callPackage
+    ({ mkDerivation, base, bytestring, containers, ghc, ghc-boot-th
+     , haskell-tools-ast, mtl, references, safe, split, template-haskell
+     , transformers, uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-backend-ghc";
+       version = "0.9.0.0";
+       sha256 = "17v38npf016pm80wiynimdqw83v3y8f1hdjjl7lbkwyj7rgkpx6n";
+       libraryHaskellDepends = [
+         base bytestring containers ghc ghc-boot-th haskell-tools-ast mtl
+         references safe split template-haskell transformers uniplate
+       ];
+       homepage = "https://github.com/nboldi/haskell-tools";
+       description = "Creating the Haskell-Tools AST from GHC's representations";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-cli" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, criterion
      , directory, filepath, ghc, ghc-paths, haskell-tools-ast
@@ -89733,6 +89770,43 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "haskell-tools-cli_0_9_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, criterion
+     , directory, filepath, ghc, ghc-paths, Glob
+     , haskell-tools-builtin-refactorings, haskell-tools-daemon
+     , haskell-tools-refactor, knob, mtl, optparse-applicative, process
+     , references, split, strict, tasty, tasty-hunit, time
+     }:
+     mkDerivation {
+       pname = "haskell-tools-cli";
+       version = "0.9.0.0";
+       sha256 = "04ycy6hqnzqj9gc4vqf95flc3yh3swx201n2daggkmxayasiivqj";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base containers directory filepath ghc ghc-paths
+         haskell-tools-builtin-refactorings haskell-tools-daemon
+         haskell-tools-refactor mtl references split strict
+       ];
+       executableHaskellDepends = [
+         base directory filepath Glob haskell-tools-builtin-refactorings mtl
+         optparse-applicative process split
+       ];
+       testHaskellDepends = [
+         base bytestring directory filepath
+         haskell-tools-builtin-refactorings knob tasty tasty-hunit
+       ];
+       benchmarkHaskellDepends = [
+         aeson base bytestring criterion directory filepath
+         haskell-tools-builtin-refactorings knob split time
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Command-line frontend for Haskell-tools Refact";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {haskell-tools-builtin-refactorings = null;};
+
   "haskell-tools-daemon" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, Diff
      , directory, filepath, ghc, ghc-paths, haskell-tools-ast
@@ -89782,6 +89856,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-debug_0_9_0_0" = callPackage
+    ({ mkDerivation, base, filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-backend-ghc, haskell-tools-builtin-refactorings
+     , haskell-tools-prettyprint, haskell-tools-refactor, references
+     , split, template-haskell
+     }:
+     mkDerivation {
+       pname = "haskell-tools-debug";
+       version = "0.9.0.0";
+       sha256 = "0lbb8ip5y511v41i9xw9yi4nk2f0xmxv8ddcr0faxvy503miv613";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base filepath ghc ghc-paths haskell-tools-ast
+         haskell-tools-backend-ghc haskell-tools-builtin-refactorings
+         haskell-tools-prettyprint haskell-tools-refactor references split
+         template-haskell
+       ];
+       executableHaskellDepends = [ base ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Debugging Tools for Haskell-tools";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {haskell-tools-builtin-refactorings = null;};
+
   "haskell-tools-demo" = callPackage
     ({ mkDerivation, aeson, base, bytestring, containers, directory
      , filepath, ghc, ghc-paths, haskell-tools-ast
@@ -89812,6 +89912,39 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-demo_0_9_0_0" = callPackage
+    ({ mkDerivation, aeson, base, bytestring, containers, directory
+     , filepath, ghc, ghc-paths, haskell-tools-ast
+     , haskell-tools-backend-ghc, haskell-tools-builtin-refactorings
+     , haskell-tools-prettyprint, haskell-tools-refactor, http-types
+     , HUnit, mtl, network, references, tasty, tasty-hunit, transformers
+     , wai, wai-websockets, warp, websockets
+     }:
+     mkDerivation {
+       pname = "haskell-tools-demo";
+       version = "0.9.0.0";
+       sha256 = "1mb2ica5x5x66z68px9sfy0gndla1qmydlb9vcwvvc2wv8jmn8mr";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson base bytestring containers directory filepath ghc ghc-paths
+         haskell-tools-ast haskell-tools-backend-ghc
+         haskell-tools-builtin-refactorings haskell-tools-prettyprint
+         haskell-tools-refactor http-types mtl references transformers wai
+         wai-websockets warp websockets
+       ];
+       executableHaskellDepends = [ base ];
+       testHaskellDepends = [
+         aeson base bytestring directory filepath HUnit network tasty
+         tasty-hunit websockets
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "A web-based demo for Haskell-tools Refactor";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+       broken = true;
+     }) {haskell-tools-builtin-refactorings = null;};
+
   "haskell-tools-prettyprint" = callPackage
     ({ mkDerivation, base, containers, ghc, haskell-tools-ast, mtl
      , references, split, text, uniplate
@@ -89829,6 +89962,24 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-prettyprint_0_9_0_0" = callPackage
+    ({ mkDerivation, base, containers, ghc, haskell-tools-ast, mtl
+     , references, split, text, uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-prettyprint";
+       version = "0.9.0.0";
+       sha256 = "15ym19dhn4lvv2szyp4bj7347bmbj43p76hj5fi1v2z20irjvmfi";
+       libraryHaskellDepends = [
+         base containers ghc haskell-tools-ast mtl references split text
+         uniplate
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Pretty printing of Haskell-Tools AST";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-refactor" = callPackage
     ({ mkDerivation, base, Cabal, containers, directory, either
      , filepath, ghc, ghc-paths, haskell-tools-ast
@@ -89859,6 +90010,28 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-refactor_0_9_0_0" = callPackage
+    ({ mkDerivation, base, Cabal, containers, directory, filepath, ghc
+     , ghc-paths, haskell-tools-ast, haskell-tools-backend-ghc
+     , haskell-tools-prettyprint, haskell-tools-rewrite, mtl, references
+     , split, template-haskell, transformers, uniplate
+     }:
+     mkDerivation {
+       pname = "haskell-tools-refactor";
+       version = "0.9.0.0";
+       sha256 = "0n9j8rlv613b0l5g3lihqp6rfkxxdm21f1m4fqygbi7fb3d6n7ss";
+       libraryHaskellDepends = [
+         base Cabal containers directory filepath ghc ghc-paths
+         haskell-tools-ast haskell-tools-backend-ghc
+         haskell-tools-prettyprint haskell-tools-rewrite mtl references
+         split template-haskell transformers uniplate
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Refactoring Tool for Haskell";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tools-rewrite" = callPackage
     ({ mkDerivation, base, containers, directory, filepath, ghc
      , haskell-tools-ast, haskell-tools-prettyprint, mtl, references
@@ -89881,6 +90054,29 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskell-tools-rewrite_0_9_0_0" = callPackage
+    ({ mkDerivation, base, containers, directory, filepath, ghc
+     , haskell-tools-ast, haskell-tools-prettyprint, mtl, references
+     , tasty, tasty-hunit
+     }:
+     mkDerivation {
+       pname = "haskell-tools-rewrite";
+       version = "0.9.0.0";
+       sha256 = "1vdbnb7808v2wycrg7nz0zx6rb8mjb1d50i57g6irfwk3s46k31s";
+       libraryHaskellDepends = [
+         base containers ghc haskell-tools-ast haskell-tools-prettyprint mtl
+         references
+       ];
+       testHaskellDepends = [
+         base directory filepath haskell-tools-ast haskell-tools-prettyprint
+         tasty tasty-hunit
+       ];
+       homepage = "https://github.com/haskell-tools/haskell-tools";
+       description = "Facilities for generating new parts of the Haskell-Tools AST";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "haskell-tor" = callPackage
     ({ mkDerivation, array, asn1-encoding, asn1-types, async
      , attoparsec, base, base64-bytestring, binary, bytestring, cereal
@@ -90515,6 +90711,38 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "haskey" = callPackage
+    ({ mkDerivation, async, base, binary, bytestring, containers
+     , directory, exceptions, filepath, focus, haskey-btree, HUnit
+     , list-t, lz4, mtl, QuickCheck, semigroups, stm, stm-containers
+     , temporary, test-framework, test-framework-hunit
+     , test-framework-quickcheck2, text, transformers, unix, vector
+     , xxhash-ffi
+     }:
+     mkDerivation {
+       pname = "haskey";
+       version = "0.1.0.1";
+       sha256 = "08kd48a67m1p55i3d4fla6zdpaqzq49piswhqwj1jnks4sj18ran";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base binary bytestring containers directory exceptions filepath
+         focus haskey-btree list-t lz4 mtl semigroups stm stm-containers
+         transformers unix xxhash-ffi
+       ];
+       executableHaskellDepends = [
+         async base bytestring haskey-btree text
+       ];
+       testHaskellDepends = [
+         base binary bytestring containers directory exceptions haskey-btree
+         HUnit mtl QuickCheck temporary test-framework test-framework-hunit
+         test-framework-quickcheck2 transformers vector
+       ];
+       homepage = "https://github.com/haskell-haskey";
+       description = "A transcatoinal, ACID compliant, embeddable key-value store";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "haskey-btree" = callPackage
     ({ mkDerivation, base, binary, bytestring, containers, data-ordlist
      , focus, hashable, HUnit, list-t, mtl, QuickCheck, semigroups, stm
@@ -91775,17 +92003,19 @@ self: {
      }) {};
 
   "haven" = callPackage
-    ({ mkDerivation, base, bytestring, containers, http-conduit
-     , http-types, mtl, SHA, xml
+    ({ mkDerivation, base, bytestring, containers, directory, filepath
+     , http-conduit, http-types, mtl, process, SHA, temporary
+     , transformers, xml
      }:
      mkDerivation {
        pname = "haven";
-       version = "0.1.0.0";
-       sha256 = "161m2msqr30460m9k1s67w3d05gil9d9gdhizl8rshll8pjhl6hg";
+       version = "0.2.0.0";
+       sha256 = "0cclphiq2jkk1msp5yg2mpkfn98jlqnc0vvwmi3vqcy5ln7641v1";
        isLibrary = false;
        isExecutable = true;
        executableHaskellDepends = [
-         base bytestring containers http-conduit http-types mtl SHA xml
+         base bytestring containers directory filepath http-conduit
+         http-types mtl process SHA temporary transformers xml
        ];
        description = "Recursively retrieve maven dependencies";
        license = stdenv.lib.licenses.bsd3;
@@ -92705,26 +92935,6 @@ self: {
      }:
      mkDerivation {
        pname = "hdevtools";
-       version = "0.1.5.0";
-       sha256 = "1rq41mlvfsjqf21hnv5jslnfk39z52p0a6a0yk2ng8q971pj70gd";
-       isLibrary = false;
-       isExecutable = true;
-       executableHaskellDepends = [
-         base Cabal cmdargs directory filepath ghc ghc-boot ghc-paths
-         network process syb time transformers unix
-       ];
-       homepage = "https://github.com/hdevtools/hdevtools/";
-       description = "Persistent GHC powered background server for FAST haskell development tools";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "hdevtools_0_1_6_0" = callPackage
-    ({ mkDerivation, base, Cabal, cmdargs, directory, filepath, ghc
-     , ghc-boot, ghc-paths, network, process, syb, time, transformers
-     , unix
-     }:
-     mkDerivation {
-       pname = "hdevtools";
        version = "0.1.6.0";
        sha256 = "0yp270sbz501vla87nhzv53ag0b64ny9gza6chr8mbjqkj86d5j5";
        isLibrary = false;
@@ -92736,7 +92946,6 @@ self: {
        homepage = "https://github.com/hdevtools/hdevtools/";
        description = "Persistent GHC powered background server for FAST haskell development tools";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "hdf" = callPackage
@@ -96496,8 +96705,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger";
-       version = "1.3";
-       sha256 = "0b9gaj68ykx1ak2v4kjif67kkwv1s8rf9nvcijs4garz98781sdd";
+       version = "1.3.1";
+       sha256 = "0h2ljdncxg5f17llnck6136mn9dn83ql85apnm04sm9cxq7iqqxd";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -96543,8 +96752,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-api";
-       version = "1.3";
-       sha256 = "0kl0sc11181bgpz65b5xg9l1hxdaai27icx13x15kwlc01jf9rcc";
+       version = "1.3.1";
+       sha256 = "149v81qslajzkr13ba7j4qqliagaq88v3d3pw301haf4v3wz9sv4";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -96673,8 +96882,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-lib";
-       version = "1.3";
-       sha256 = "052ynivzbyabp2yn7y2wfy9dvjly989rpbcla9kx8kvmqij5qdhm";
+       version = "1.3.1";
+       sha256 = "1pb49s54rg396b15753h5wi3iyhpd3dadn3cvs3bplb5r432ni1i";
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
          ansi-terminal array base base-compat blaze-markup bytestring
@@ -96704,10 +96913,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-ui";
-       version = "1.3";
-       sha256 = "0bixkihc2hcf98xpnb9a8lnqi5rcg2pj6d78w4pzwzd83vkmr1rj";
-       revision = "1";
-       editedCabalFile = "0dc5nqc9g4s0h1si6pcymbhfw32hlxafzavpp8y1jg7c9brc7ln0";
+       version = "1.3.1";
+       sha256 = "1mnvqhp32m9xfyabzl19djy74v5nr9mwaanpnwxqp1wkifq7cmxs";
        isLibrary = false;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -96753,8 +96960,8 @@ self: {
      }:
      mkDerivation {
        pname = "hledger-web";
-       version = "1.3";
-       sha256 = "01y8djakr4r0jm5wyi6fbp911y3i82r1xmfi4gm9sgf27fi6a3i4";
+       version = "1.3.2";
+       sha256 = "0lcrgg6d0gpi9z855byjibzr82bbvmr6bbca5k3ivigd0yzc467d";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
@@ -97122,6 +97329,27 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "hmatrix-morpheus" = callPackage
+    ({ mkDerivation, base, blas, criterion, hmatrix, HUnit, liblapack
+     , MonadRandom, test-framework, test-framework-hunit
+     , test-framework-quickcheck2
+     }:
+     mkDerivation {
+       pname = "hmatrix-morpheus";
+       version = "0.1.1.1";
+       sha256 = "1y7ckwgv20j72ji0n30jj0iiibx9i3k053jh2cp17q1lnks836vj";
+       libraryHaskellDepends = [ base hmatrix ];
+       librarySystemDepends = [ blas liblapack ];
+       testHaskellDepends = [
+         base hmatrix HUnit MonadRandom test-framework test-framework-hunit
+         test-framework-quickcheck2
+       ];
+       benchmarkHaskellDepends = [ base criterion hmatrix ];
+       homepage = "https://github.com/Alexander-Ignatyev/morpheus/tree/master/hmatrix-morpheus";
+       description = "Low-level machine learning auxiliary functions";
+       license = stdenv.lib.licenses.bsd3;
+     }) {inherit (pkgs) blas; inherit (pkgs) liblapack;};
+
   "hmatrix-nipals" = callPackage
     ({ mkDerivation, base, hmatrix }:
      mkDerivation {
@@ -97730,10 +97958,8 @@ self: {
      }:
      mkDerivation {
        pname = "hobbits";
-       version = "1.2.3";
-       sha256 = "1ws0k2cxqyyr20r03pmc7q0354axhy96w3vcj5nhp04gxalxz9l8";
-       revision = "1";
-       editedCabalFile = "1g0nsxlxa6jwwi550wq1z0c3mjg0l3dpl3497fxjfw2h9rjajh9k";
+       version = "1.2.4";
+       sha256 = "0hqg29s938hz1hxb7ljv3wnr8iaxwjmi66zjvvy1939g5r6fmdll";
        libraryHaskellDepends = [
          base deepseq haskell-src-exts haskell-src-meta mtl syb tagged
          template-haskell th-expand-syns transformers
@@ -97921,12 +98147,22 @@ self: {
      }) {};
 
   "hol" = callPackage
-    ({ mkDerivation, base }:
+    ({ mkDerivation, base, bytestring, containers, pretty, QuickCheck
+     , text, transformers
+     }:
      mkDerivation {
        pname = "hol";
-       version = "1.0";
-       sha256 = "02hzkx4zz47fky24ybjiqp6zfj77h13q06jipmc4rh15fz26q282";
-       libraryHaskellDepends = [ base ];
+       version = "1.1";
+       sha256 = "0d3m343zgnffjk5dnv7i5w5nj3jjbw17fnrrwb10vq177fkbq4gz";
+       libraryHaskellDepends = [
+         base bytestring containers pretty text transformers
+       ];
+       testHaskellDepends = [
+         base bytestring containers pretty QuickCheck text transformers
+       ];
+       benchmarkHaskellDepends = [
+         base bytestring containers pretty text transformers
+       ];
        description = "Higher order logic";
        license = stdenv.lib.licenses.mit;
      }) {};
@@ -105111,33 +105347,6 @@ self: {
      }:
      mkDerivation {
        pname = "http-reverse-proxy";
-       version = "0.4.4";
-       sha256 = "0y29jn65llbljpalshic673yxfd6jrpn057sx4xaf14pgcx99ahw";
-       libraryHaskellDepends = [
-         async base blaze-builder bytestring case-insensitive conduit
-         conduit-extra containers data-default-class http-client http-types
-         lifted-base monad-control network resourcet streaming-commons text
-         transformers wai wai-logger word8
-       ];
-       testHaskellDepends = [
-         base blaze-builder bytestring conduit conduit-extra hspec
-         http-conduit http-types lifted-base network resourcet
-         streaming-commons transformers wai warp
-       ];
-       homepage = "https://github.com/fpco/http-reverse-proxy";
-       description = "Reverse proxy HTTP requests, either over raw sockets or with WAI";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "http-reverse-proxy_0_4_5" = callPackage
-    ({ mkDerivation, async, base, blaze-builder, bytestring
-     , case-insensitive, conduit, conduit-extra, containers
-     , data-default-class, hspec, http-client, http-conduit, http-types
-     , lifted-base, monad-control, network, resourcet, streaming-commons
-     , text, transformers, wai, wai-logger, warp, word8
-     }:
-     mkDerivation {
-       pname = "http-reverse-proxy";
        version = "0.4.5";
        sha256 = "0v1f1z3gmc51sbxmxhnp4sspzj6mdm0ihl5x30218p1ynz9ssxjn";
        libraryHaskellDepends = [
@@ -105154,7 +105363,6 @@ self: {
        homepage = "https://github.com/fpco/http-reverse-proxy";
        description = "Reverse proxy HTTP requests, either over raw sockets or with WAI";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "http-server" = callPackage
@@ -106071,14 +106279,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-balancedparens_0_2_0_0" = callPackage
+  "hw-balancedparens_0_2_0_1" = callPackage
     ({ mkDerivation, base, criterion, hspec, hw-bits, hw-excess
      , hw-prim, hw-rankselect-base, QuickCheck, storable-tuple, vector
      }:
      mkDerivation {
        pname = "hw-balancedparens";
-       version = "0.2.0.0";
-       sha256 = "1yd7s4n93rparg99x3kjsfiyk1si8kfg2ibfz5da1dlnzpffvmfq";
+       version = "0.2.0.1";
+       sha256 = "1kg8nl2dvd8xyc37v11bf0pw9pvcbzpv31y8vjzm1z5iyphn9lcr";
        libraryHaskellDepends = [
          base hw-bits hw-excess hw-prim hw-rankselect-base storable-tuple
          vector
@@ -106115,14 +106323,14 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-bits_0_7_0_0" = callPackage
+  "hw-bits_0_7_0_1" = callPackage
     ({ mkDerivation, base, bytestring, criterion, hspec, hw-int
      , hw-prim, hw-string-parse, QuickCheck, safe, vector
      }:
      mkDerivation {
        pname = "hw-bits";
-       version = "0.7.0.0";
-       sha256 = "18vqxkdzq42186k9ynrhlhk5wigg302y0xcpmgwah6is6hng1mxw";
+       version = "0.7.0.1";
+       sha256 = "1h8gpxqlyiq6zfipbmv6377s21dx5idjjakw8rwwhp476pa6dxnw";
        libraryHaskellDepends = [
          base bytestring hw-int hw-prim hw-string-parse safe vector
        ];
@@ -106142,8 +106350,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-conduit";
-       version = "0.2.0.1";
-       sha256 = "1zsh8dvafxxrzrgdfa3fl40bzlm6f4isimmmcbgfv3whzxnv15z1";
+       version = "0.2.0.2";
+       sha256 = "052sgj1bny2d2j4gsmfj7mx9jcnkac7b0rsz7310nv2rc9h46sbl";
        libraryHaskellDepends = [
          array base bytestring conduit time word8
        ];
@@ -106256,8 +106464,8 @@ self: {
     ({ mkDerivation, base }:
      mkDerivation {
        pname = "hw-int";
-       version = "0.0.0.1";
-       sha256 = "1jx75lnsrzsbh2s9s2bx5rwaip4aa69b4aqa61hhlr3p7bv5j1rg";
+       version = "0.0.0.3";
+       sha256 = "0gsaimfx7gg39yfj2n6mlszri5x06f14b8f9cs12klrq2q8sadl3";
        libraryHaskellDepends = [ base ];
        homepage = "http://github.com/haskell-works/hw-int#readme";
        description = "Integers";
@@ -106274,15 +106482,15 @@ self: {
      }:
      mkDerivation {
        pname = "hw-json";
-       version = "0.4.0.0";
-       sha256 = "11fc66zhr6rl3psjdi6i5i6gxl6aa8gicrs9grwljwp91vbndpxd";
+       version = "0.5.0.0";
+       sha256 = "0vpdfa2kskrv7j2vajxlrbsd4hgjgv4yj9bmj2wyxk5v3mx3l422";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
          ansi-wl-pprint array attoparsec base bytestring conduit containers
-         dlist hw-balancedparens hw-bits hw-conduit hw-diagnostics hw-mquery
-         hw-parser hw-prim hw-rankselect hw-rankselect-base mmap
-         mono-traversable resourcet text vector word8
+         dlist hw-balancedparens hw-bits hw-conduit hw-mquery hw-parser
+         hw-prim hw-rankselect hw-rankselect-base mmap mono-traversable
+         resourcet text vector word8
        ];
        executableHaskellDepends = [
          ansi-wl-pprint array attoparsec base bytestring conduit containers
@@ -106471,8 +106679,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-parser";
-       version = "0.0.0.2";
-       sha256 = "0c9ns631f3lmar3xqkqk6lgdrfzmpphcray2c32li7n2hj5bcdik";
+       version = "0.0.0.3";
+       sha256 = "1wn68s00smwnivi813jcb71mx095v1kjgd2253gqknpmdv3ig16x";
        libraryHaskellDepends = [
          attoparsec base bytestring hw-prim mono-traversable text
        ];
@@ -106485,8 +106693,8 @@ self: {
     ({ mkDerivation, base, bytestring, hspec, QuickCheck, vector }:
      mkDerivation {
        pname = "hw-prim";
-       version = "0.4.0.3";
-       sha256 = "0025ilyzrhyjgc69jrkscy218gdscfq4mfh27a3f1niq67cpc2al";
+       version = "0.4.0.5";
+       sha256 = "1d2fs0w2bccxiw66m3brdbg0ynzb8kr8avj1rzid7g7v65nhpn5v";
        libraryHaskellDepends = [ base bytestring vector ];
        testHaskellDepends = [ base bytestring hspec QuickCheck vector ];
        homepage = "http://github.com/haskell-works/hw-prim#readme";
@@ -106527,7 +106735,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "hw-rankselect_0_10_0_2" = callPackage
+  "hw-rankselect_0_10_0_3" = callPackage
     ({ mkDerivation, base, bytestring, conduit, criterion, deepseq
      , directory, hedgehog, hspec, hw-balancedparens, hw-bits
      , hw-hedgehog, hw-hspec-hedgehog, hw-prim, hw-rankselect-base, mmap
@@ -106535,8 +106743,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-rankselect";
-       version = "0.10.0.2";
-       sha256 = "1l3s40jk6nsq87q83mj4kalzn4kphxkpy4h89bw4jzzlykqwpcz9";
+       version = "0.10.0.3";
+       sha256 = "1jqlyprb83bnffmq6ck6xpx27mqnmrarn890r2dn8k06asghf7da";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -106566,8 +106774,8 @@ self: {
      }:
      mkDerivation {
        pname = "hw-rankselect-base";
-       version = "0.2.0.1";
-       sha256 = "0nkbq0wzljhdjvcn04wkysqa357qhzacisimqpj8k5nbf3rkrlvj";
+       version = "0.2.0.2";
+       sha256 = "0yp2p87ijvb8lbh0spw1yjk10sq8gaa1iv517iy4fbxfjzdqhkyy";
        libraryHaskellDepends = [
          base hw-bits hw-int hw-prim hw-string-parse safe vector
        ];
@@ -106586,8 +106794,8 @@ self: {
     ({ mkDerivation, base, bytestring, hspec, QuickCheck, vector }:
      mkDerivation {
        pname = "hw-string-parse";
-       version = "0.0.0.3";
-       sha256 = "02pfmcx8mn3jzi9i7z7f32x4x418lw05z0nqyzkhy7hb7g39hn3g";
+       version = "0.0.0.4";
+       sha256 = "1dzjx6virpikbqnpzdjlliakm8kd6kxyn3y4jgr5bqhisgwfp8b4";
        libraryHaskellDepends = [ base ];
        testHaskellDepends = [ base bytestring hspec QuickCheck vector ];
        homepage = "http://github.com/haskell-works/hw-string-parse#readme";
@@ -106631,39 +106839,36 @@ self: {
 
   "hw-xml" = callPackage
     ({ mkDerivation, ansi-wl-pprint, array, attoparsec, base
-     , bytestring, conduit, containers, criterion, hspec
-     , hw-balancedparens, hw-bits, hw-conduit, hw-diagnostics, hw-parser
-     , hw-prim, hw-rankselect, hw-rankselect-base, mmap
-     , mono-traversable, parsec, QuickCheck, resourcet, text
-     , transformers, vector, word8
+     , bytestring, cereal, conduit, containers, criterion, ghc-prim
+     , hspec, hw-balancedparens, hw-bits, hw-conduit, hw-parser, hw-prim
+     , hw-rankselect, hw-rankselect-base, lens, mmap, mtl, QuickCheck
+     , resourcet, transformers, vector, word8
      }:
      mkDerivation {
        pname = "hw-xml";
-       version = "0.0.0.1";
-       sha256 = "05bahk2fl2cp0dgx4v91dghzhsh1bclaj8z24j4s0p25xbi63zvr";
+       version = "0.1.0.0";
+       sha256 = "04ld7ny0s43qin92ycw0j1xki7r93cnlw8aq7418m6k17pq9kicc";
        isLibrary = true;
        isExecutable = true;
        enableSeparateDataOutput = true;
        libraryHaskellDepends = [
-         ansi-wl-pprint array attoparsec base bytestring conduit containers
-         hw-balancedparens hw-bits hw-conduit hw-parser hw-prim
-         hw-rankselect hw-rankselect-base mono-traversable resourcet text
-         vector word8
+         ansi-wl-pprint array attoparsec base bytestring cereal conduit
+         containers ghc-prim hw-balancedparens hw-bits hw-conduit hw-parser
+         hw-prim hw-rankselect hw-rankselect-base lens mtl resourcet
+         transformers vector word8
        ];
        executableHaskellDepends = [
-         base bytestring conduit criterion hw-balancedparens hw-bits
-         hw-conduit hw-diagnostics hw-prim hw-rankselect mmap resourcet
+         base bytestring hw-balancedparens hw-bits hw-prim hw-rankselect
          vector
        ];
        testHaskellDepends = [
-         attoparsec base bytestring conduit containers hspec
-         hw-balancedparens hw-bits hw-conduit hw-prim hw-rankselect
-         hw-rankselect-base mmap parsec QuickCheck resourcet transformers
+         attoparsec base bytestring conduit hspec hw-balancedparens hw-bits
+         hw-conduit hw-prim hw-rankselect hw-rankselect-base QuickCheck
          vector
        ];
        benchmarkHaskellDepends = [
          base bytestring conduit criterion hw-balancedparens hw-bits
-         hw-conduit hw-prim hw-rankselect mmap resourcet vector
+         hw-conduit hw-prim mmap resourcet vector
        ];
        homepage = "http://github.com/haskell-works/hw-xml#readme";
        description = "Conduits for tokenizing streams";
@@ -110254,8 +110459,7 @@ self: {
        homepage = "https://github.com/diffusionkinetics/open/inliterate";
        description = "Interactive literate programming";
        license = stdenv.lib.licenses.mit;
-       broken = true;
-     }) {lucid-extras = null;};
+     }) {};
 
   "inquire" = callPackage
     ({ mkDerivation, aether, base, text }:
@@ -114767,8 +114971,8 @@ self: {
      }:
      mkDerivation {
        pname = "jukebox";
-       version = "0.2.19";
-       sha256 = "0f3iibpxgr2f7mvl6x4719gvjd4dcd5ajiz3y985rng6d7n5sbya";
+       version = "0.2.20";
+       sha256 = "178fnfn0bjgk9rp5sv00l5vs3cmp3rcxzmm163y68w2azm4125an";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -119405,19 +119609,6 @@ self: {
     ({ mkDerivation, base, template-haskell }:
      mkDerivation {
        pname = "leancheck";
-       version = "0.6.4";
-       sha256 = "0vvqzcl53d18axi3p6n9chggb2g7i2ip3wq8z5cbklkm9vb8qirc";
-       libraryHaskellDepends = [ base template-haskell ];
-       testHaskellDepends = [ base template-haskell ];
-       homepage = "https://github.com/rudymatela/leancheck#readme";
-       description = "Cholesterol-free property-based testing";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "leancheck_0_6_5" = callPackage
-    ({ mkDerivation, base, template-haskell }:
-     mkDerivation {
-       pname = "leancheck";
        version = "0.6.5";
        sha256 = "05mda73v91y951fc8lph2fq8nhq3q12d30xjwj5h7xqwi2c8sdiy";
        libraryHaskellDepends = [ base template-haskell ];
@@ -119425,7 +119616,6 @@ self: {
        homepage = "https://github.com/rudymatela/leancheck#readme";
        description = "Cholesterol-free property-based testing";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "leankit-api" = callPackage
@@ -122301,15 +122491,16 @@ self: {
     ({ mkDerivation, ansi-terminal, array, ascii-progress, async
      , attoparsec, base, bifunctors, binary, boxes, bytestring, cereal
      , cmdargs, containers, deepseq, directory, dotgen, fgl
-     , fgl-visualize, filemanip, filepath, ghc-prim, hashable, intern
-     , located-base, mtl, ocaml, parallel, parsec, pretty, process, syb
-     , tasty, tasty-hunit, tasty-rerun, text, text-format, time
-     , transformers, unordered-containers, z3
+     , fgl-visualize, filemanip, filepath, ghc-prim, git, hashable
+     , intern, located-base, mtl, nettools, ocaml, parallel, parallel-io
+     , parsec, pretty, process, stm, syb, tasty, tasty-ant-xml
+     , tasty-hunit, tasty-rerun, text, text-format, time, transformers
+     , unordered-containers, z3
      }:
      mkDerivation {
        pname = "liquid-fixpoint";
-       version = "0.6.0.1";
-       sha256 = "1zbhspcwqx8lqdz4niikz5g2hd8rd2h5lda3rqpkl3z8nw0v7vql";
+       version = "0.7.0.1";
+       sha256 = "1hw7xbnqmrbzqv6mvzgpi6rnqp3an8vf8ky5w25j7088c2f0chzr";
        configureFlags = [ "-fbuild-external" ];
        isLibrary = true;
        isExecutable = true;
@@ -122317,19 +122508,21 @@ self: {
          ansi-terminal array ascii-progress async attoparsec base bifunctors
          binary boxes bytestring cereal cmdargs containers deepseq directory
          dotgen fgl fgl-visualize filemanip filepath ghc-prim hashable
-         intern located-base mtl parallel parsec pretty process syb text
-         text-format time transformers unordered-containers
+         intern located-base mtl parallel parallel-io parsec pretty process
+         syb text text-format time transformers unordered-containers
        ];
        executableHaskellDepends = [ base ];
        executableSystemDepends = [ ocaml ];
        testHaskellDepends = [
-         base directory filepath process tasty tasty-hunit tasty-rerun text
+         base containers directory filepath mtl process stm tasty
+         tasty-ant-xml tasty-hunit tasty-rerun text transformers
        ];
-       testSystemDepends = [ z3 ];
+       testSystemDepends = [ git nettools z3 ];
        homepage = "https://github.com/ucsd-progsys/liquid-fixpoint";
        description = "Predicate Abstraction-based Horn-Clause/Implication Constraint Solver";
        license = stdenv.lib.licenses.bsd3;
-     }) {inherit (pkgs) ocaml; inherit (pkgs) z3;};
+     }) {inherit (pkgs) git; inherit (pkgs) nettools; 
+         inherit (pkgs) ocaml; inherit (pkgs) z3;};
 
   "liquidhaskell" = callPackage
     ({ mkDerivation, aeson, array, base, bifunctors, binary, bytestring
@@ -124932,6 +125125,23 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "lucid-extras" = callPackage
+    ({ mkDerivation, base, blaze-builder, bytestring, directory, lucid
+     , text
+     }:
+     mkDerivation {
+       pname = "lucid-extras";
+       version = "0.1.0.0";
+       sha256 = "0akpsh79lpdx7in1ffzz2l36i4gnvfn290cjz0pdr0y8bs0bv9dr";
+       libraryHaskellDepends = [
+         base blaze-builder bytestring lucid text
+       ];
+       testHaskellDepends = [ base directory lucid ];
+       homepage = "https://github.com/diffusionkinetics/open/lucid-extras";
+       description = "Generate more HTML with Lucid";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "lucid-foundation" = callPackage
     ({ mkDerivation, base, hspec, lucid, QuickCheck
      , quickcheck-instances, text
@@ -129874,41 +130084,6 @@ self: {
      }:
      mkDerivation {
        pname = "minio-hs";
-       version = "0.3.0";
-       sha256 = "0bnva7809g7ry31373j7qcmnfiamqfv4r50y6h1k0d7pnsck3bn5";
-       libraryHaskellDepends = [
-         async base bytestring case-insensitive conduit conduit-combinators
-         conduit-extra containers cryptonite cryptonite-conduit data-default
-         exceptions filepath http-client http-conduit http-types
-         lifted-async lifted-base memory monad-control protolude resourcet
-         text text-format time transformers transformers-base xml-conduit
-       ];
-       testHaskellDepends = [
-         async base bytestring case-insensitive conduit conduit-combinators
-         conduit-extra containers cryptonite cryptonite-conduit data-default
-         directory exceptions filepath http-client http-conduit http-types
-         lifted-async lifted-base memory monad-control protolude QuickCheck
-         resourcet tasty tasty-hunit tasty-quickcheck tasty-smallcheck
-         temporary text text-format time transformers transformers-base
-         xml-conduit
-       ];
-       homepage = "https://github.com/minio/minio-hs#readme";
-       description = "A Minio client library, compatible with S3 like services";
-       license = stdenv.lib.licenses.asl20;
-       hydraPlatforms = stdenv.lib.platforms.none;
-     }) {};
-
-  "minio-hs_0_3_1" = callPackage
-    ({ mkDerivation, async, base, bytestring, case-insensitive, conduit
-     , conduit-combinators, conduit-extra, containers, cryptonite
-     , cryptonite-conduit, data-default, directory, exceptions, filepath
-     , http-client, http-conduit, http-types, lifted-async, lifted-base
-     , memory, monad-control, protolude, QuickCheck, resourcet, tasty
-     , tasty-hunit, tasty-quickcheck, tasty-smallcheck, temporary, text
-     , text-format, time, transformers, transformers-base, xml-conduit
-     }:
-     mkDerivation {
-       pname = "minio-hs";
        version = "0.3.1";
        sha256 = "0mrrkd3yl1lbii5gjmhcky3g26anvki3liswrzmfjkff0l7s3riv";
        libraryHaskellDepends = [
@@ -132732,38 +132907,6 @@ self: {
      }:
      mkDerivation {
        pname = "morte";
-       version = "1.6.9";
-       sha256 = "1a0s0hj09rhgixs09ay7fjk12d3wrlhm2w957md7pkan412vx200";
-       isLibrary = true;
-       isExecutable = true;
-       enableSeparateDataOutput = true;
-       libraryHaskellDepends = [
-         array base binary containers deepseq Earley http-client
-         http-client-tls microlens microlens-mtl pipes system-fileio
-         system-filepath text text-format transformers
-       ];
-       libraryToolDepends = [ alex ];
-       executableHaskellDepends = [
-         base code-page optparse-applicative text text-format
-       ];
-       testHaskellDepends = [
-         base mtl QuickCheck system-filepath tasty tasty-hunit
-         tasty-quickcheck text transformers
-       ];
-       benchmarkHaskellDepends = [ base criterion system-filepath text ];
-       description = "A bare-bones calculus of constructions";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "morte_1_6_10" = callPackage
-    ({ mkDerivation, alex, array, base, binary, code-page, containers
-     , criterion, deepseq, Earley, http-client, http-client-tls
-     , microlens, microlens-mtl, mtl, optparse-applicative, pipes
-     , QuickCheck, system-fileio, system-filepath, tasty, tasty-hunit
-     , tasty-quickcheck, text, text-format, transformers
-     }:
-     mkDerivation {
-       pname = "morte";
        version = "1.6.10";
        sha256 = "0wlcizw6kfbir18mqplnyap76gslbzia6ni25z2r4jb8mxrh5z6d";
        isLibrary = true;
@@ -132785,7 +132928,6 @@ self: {
        benchmarkHaskellDepends = [ base criterion system-filepath text ];
        description = "A bare-bones calculus of constructions";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "mosaico-lib" = callPackage
@@ -136608,8 +136750,8 @@ self: {
      }:
      mkDerivation {
        pname = "network-api-support";
-       version = "0.3.0";
-       sha256 = "0jjd84wwxjdvj1d17rwwmpdv03c18am09xafysw33d6777xh8dmk";
+       version = "0.3.1";
+       sha256 = "0p3k19fv211rhrncc9l08m0wbm9ip1xima2xpfcq4pig8xc2fqbx";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring case-insensitive http-client
          http-client-tls http-types text time tls
@@ -137356,23 +137498,6 @@ self: {
      }:
      mkDerivation {
        pname = "network-transport-tests";
-       version = "0.2.3.0";
-       sha256 = "0v1vyn0v41kzw54qy2f46phwglyh0qsng534ma8rhwbxxfbvsxw2";
-       libraryHaskellDepends = [
-         ansi-terminal base bytestring containers mtl network-transport
-         random
-       ];
-       homepage = "http://haskell-distributed.github.com";
-       description = "Unit tests for Network.Transport implementations";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "network-transport-tests_0_2_4_1" = callPackage
-    ({ mkDerivation, ansi-terminal, base, bytestring, containers, mtl
-     , network-transport, random
-     }:
-     mkDerivation {
-       pname = "network-transport-tests";
        version = "0.2.4.1";
        sha256 = "1j3sfr8d0fjp7qiqw94rcfwk8hrb55w8vz7cmw891cjjdlf00nb3";
        libraryHaskellDepends = [
@@ -137382,7 +137507,6 @@ self: {
        homepage = "http://haskell-distributed.github.com";
        description = "Unit tests for Network.Transport implementations";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "network-transport-zeromq" = callPackage
@@ -137688,18 +137812,6 @@ self: {
      }) {};
 
   "newtype-generics" = callPackage
-    ({ mkDerivation, base, hspec, HUnit }:
-     mkDerivation {
-       pname = "newtype-generics";
-       version = "0.5";
-       sha256 = "173zdvwmx71i146yrp7pc1c6vdpi3bms73zqm29f4bk8kqnaqqyw";
-       libraryHaskellDepends = [ base ];
-       testHaskellDepends = [ base hspec HUnit ];
-       description = "A typeclass and set of functions for working with newtypes, with generics support";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "newtype-generics_0_5_1" = callPackage
     ({ mkDerivation, base, hspec, HUnit, transformers }:
      mkDerivation {
        pname = "newtype-generics";
@@ -137709,7 +137821,6 @@ self: {
        testHaskellDepends = [ base hspec HUnit ];
        description = "A typeclass and set of functions for working with newtypes, with generics support";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "newtype-th" = callPackage
@@ -137822,8 +137933,8 @@ self: {
      }:
      mkDerivation {
        pname = "ngx-export";
-       version = "0.6.0.0";
-       sha256 = "0bs0jxxgrq29b14mcslyqa29znbhlx6kwq93jzr995alhn7g92px";
+       version = "0.6.1.1";
+       sha256 = "09rrkxkc23yfm7vyzmq57lwhbwfn4x89b3r9i4s3r27qs1p2l7fa";
        libraryHaskellDepends = [
          async base binary bytestring template-haskell unix
        ];
@@ -139288,6 +139399,26 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "numhask_0_1_2" = callPackage
+    ({ mkDerivation, adjunctions, base, distributive, doctest, matrix
+     , protolude, QuickCheck, singletons, tasty, tasty-quickcheck
+     , vector
+     }:
+     mkDerivation {
+       pname = "numhask";
+       version = "0.1.2";
+       sha256 = "0vxs2qwgrq7ylp34r87hdnd2rxfyri2iyv933si8hzkgdg54zqk3";
+       libraryHaskellDepends = [
+         adjunctions base distributive matrix protolude QuickCheck
+         singletons vector
+       ];
+       testHaskellDepends = [ base doctest tasty tasty-quickcheck ];
+       homepage = "https://github.com/tonyday567/numhask";
+       description = "A numeric prelude";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "numhask-range" = callPackage
     ({ mkDerivation, base, containers, foldl, formatting, lens, linear
      , numhask, protolude, QuickCheck, tasty, tasty-quickcheck
@@ -139307,18 +139438,17 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
-  "numhask-range_0_1_0" = callPackage
-    ({ mkDerivation, adjunctions, base, containers, distributive
-     , doctest, formatting, numhask, protolude, QuickCheck
-     , semigroupoids, tasty, tasty-quickcheck
+  "numhask-range_0_1_1" = callPackage
+    ({ mkDerivation, adjunctions, base, distributive, doctest, numhask
+     , protolude, QuickCheck, semigroupoids, tasty, tasty-quickcheck
      }:
      mkDerivation {
        pname = "numhask-range";
-       version = "0.1.0";
-       sha256 = "1z5h7vmbq0jx8rcvxd8b9y1w1lnh3hv9mcykajwddjmrk2rxynnp";
+       version = "0.1.1";
+       sha256 = "09vg6b1ddd8v5lsz15x1g9164c33m5jv48g9f1i5ylbn4vyld90n";
        libraryHaskellDepends = [
-         adjunctions base containers distributive formatting numhask
-         protolude QuickCheck semigroupoids
+         adjunctions base distributive numhask protolude QuickCheck
+         semigroupoids
        ];
        testHaskellDepends = [
          base doctest numhask tasty tasty-quickcheck
@@ -139481,10 +139611,10 @@ self: {
      }:
      mkDerivation {
        pname = "nvvm";
-       version = "0.7.5.2";
-       sha256 = "07qg4y0ypmhcin7k4j2scb4c94sn9wiy5l6nradjw59hk2b8q97i";
+       version = "0.8.0.0";
+       sha256 = "1vs3694ybfzi9zv04mjnmcsy0b8w43pw2fw8yjnlzvknwzcf2sw3";
        setupHaskellDepends = [
-         base Cabal directory filepath template-haskell
+         base Cabal cuda directory filepath template-haskell
        ];
        libraryHaskellDepends = [ base bytestring cuda template-haskell ];
        libraryToolDepends = [ c2hs ];
@@ -141907,20 +142037,21 @@ self: {
 
   "orgmode-parse" = callPackage
     ({ mkDerivation, aeson, attoparsec, base, bytestring, containers
-     , free, hashable, HUnit, old-locale, tasty, tasty-hunit, text
-     , thyme, unordered-containers
+     , free, hashable, HUnit, neat-interpolation, old-locale, tasty
+     , tasty-hunit, text, thyme, unordered-containers
      }:
      mkDerivation {
        pname = "orgmode-parse";
-       version = "0.1.1.3";
-       sha256 = "09xnrbwihr8xm1azsgc0vhdcam3a5gdh4s04gnfzkq89aql7j9rj";
+       version = "0.2.0";
+       sha256 = "1xx0mqq4c2war7ykr7md67dhhgh7h74b5j25arh1im7hgn1iy52x";
        libraryHaskellDepends = [
          aeson attoparsec base bytestring containers free hashable
          old-locale text thyme unordered-containers
        ];
        testHaskellDepends = [
-         aeson attoparsec base bytestring containers hashable HUnit
-         old-locale tasty tasty-hunit text thyme unordered-containers
+         aeson attoparsec base bytestring containers free hashable HUnit
+         neat-interpolation old-locale tasty tasty-hunit text thyme
+         unordered-containers
        ];
        description = "A collection of Attoparsec combinators for parsing org-mode flavored documents";
        license = stdenv.lib.licenses.bsd3;
@@ -142618,25 +142749,12 @@ self: {
     ({ mkDerivation, array, base, colour, containers }:
      mkDerivation {
        pname = "palette";
-       version = "0.1.0.4";
-       sha256 = "1k57mp56zgjs8xpf57vwnnm2ilkbgp717hchrg3ilrbx0yhb9cz6";
-       libraryHaskellDepends = [ array base colour containers ];
-       homepage = "http://projects.haskell.org/diagrams";
-       description = "Utilities for choosing and creating color schemes";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "palette_0_1_0_5" = callPackage
-    ({ mkDerivation, array, base, colour, containers }:
-     mkDerivation {
-       pname = "palette";
        version = "0.1.0.5";
        sha256 = "04lqmd0c02fp3x57gbga9qf05f4a6hr8p2ywlasm0dkr740m6d3l";
        libraryHaskellDepends = [ array base colour containers ];
        homepage = "http://projects.haskell.org/diagrams";
        description = "Utilities for choosing and creating color schemes";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "palindromes" = callPackage
@@ -153116,6 +153234,26 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "projectile" = callPackage
+    ({ mkDerivation, base, deepseq, path, path-io, protolude
+     , safe-exceptions, tasty, tasty-hunit, tasty-rerun, text, vector
+     }:
+     mkDerivation {
+       pname = "projectile";
+       version = "0.0.0.2";
+       sha256 = "0bl5j1n0vvxglrr9fs6kid2n6qakkjpkwi8dz7la64lznfr96dji";
+       libraryHaskellDepends = [
+         base deepseq path path-io protolude safe-exceptions text vector
+       ];
+       testHaskellDepends = [
+         base deepseq path path-io protolude safe-exceptions tasty
+         tasty-hunit tasty-rerun text vector
+       ];
+       homepage = "https://github.com/roman/Haskell-projectile#readme";
+       description = "Go to README.md";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "projection" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -153334,8 +153472,8 @@ self: {
      }:
      mkDerivation {
        pname = "propellor";
-       version = "4.7.6";
-       sha256 = "0nqhhgrcjq8zbnvarrgn2ijk7pmyb2blzh1896jxij828zq9rddd";
+       version = "4.7.7";
+       sha256 = "04aglqwvnw40pxg479mhi1i81547bb7s26qrg9gga8xs1cqgnfbs";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -156530,6 +156668,32 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
+  "raaz_0_2_0" = callPackage
+    ({ mkDerivation, base, blaze-builder, bytestring, criterion
+     , deepseq, hspec, hspec-discover, HUnit, optparse-applicative
+     , pretty, QuickCheck, transformers, vector
+     }:
+     mkDerivation {
+       pname = "raaz";
+       version = "0.2.0";
+       sha256 = "0841p4yw0hd1mjx0ida662n6apfhmjyw76ar9gaysivbgh75dw4y";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [ base bytestring deepseq vector ];
+       executableHaskellDepends = [ base optparse-applicative ];
+       testHaskellDepends = [
+         base bytestring hspec hspec-discover HUnit QuickCheck transformers
+         vector
+       ];
+       benchmarkHaskellDepends = [
+         base blaze-builder bytestring criterion pretty
+       ];
+       homepage = "http://github.com/raaz-crypto/raaz";
+       description = "The raaz cryptographic library";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "rabocsv2qif" = callPackage
     ({ mkDerivation, base, bytestring, bytestring-conversion, split
      , time
@@ -158042,25 +158206,6 @@ self: {
      }:
      mkDerivation {
        pname = "rdf";
-       version = "0.1.0.1";
-       sha256 = "19iy6gfvmmz06bdacfrg3slaxvjikl7x152n7pcz3kwwv2qhscjg";
-       libraryHaskellDepends = [
-         attoparsec base bytestring deepseq dlist fgl text transformers
-       ];
-       benchmarkHaskellDepends = [
-         base bytestring criterion deepseq text
-       ];
-       homepage = "https://github.com/traviswhitaker/rdf";
-       description = "Representation and Incremental Processing of RDF Data";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "rdf_0_1_0_2" = callPackage
-    ({ mkDerivation, attoparsec, base, bytestring, criterion, deepseq
-     , dlist, fgl, text, transformers
-     }:
-     mkDerivation {
-       pname = "rdf";
        version = "0.1.0.2";
        sha256 = "0vqznprx5r7lqyj8b850pfyy7mvin55l1v4krmi1wyacynv977c8";
        libraryHaskellDepends = [
@@ -158072,7 +158217,6 @@ self: {
        homepage = "https://github.com/traviswhitaker/rdf";
        description = "Representation and Incremental Processing of RDF Data";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "rdf4h" = callPackage
@@ -159007,8 +159151,8 @@ self: {
      }:
      mkDerivation {
        pname = "recursion-schemes-ext";
-       version = "0.1.1.1";
-       sha256 = "10jyylpbcahxp64gnvb1pplvkrgga65nj4lapws5kl52jw1bf5z4";
+       version = "0.2.0.0";
+       sha256 = "0h74109rwybpg6wardmrzh3163868mi025a8wq5dbpcx284zv1w1";
        libraryHaskellDepends = [
          base composition-prelude deepseq recursion-schemes template-haskell
        ];
@@ -164199,8 +164343,8 @@ self: {
      }:
      mkDerivation {
        pname = "rtcm";
-       version = "0.2.5";
-       sha256 = "1idqvlva12ndm4nbjhigz6z8r7y8lr25yck6fxilkls766rdv61m";
+       version = "0.2.6";
+       sha256 = "1j3sgsrz6l6c77xcy1ni8jglrpahb7kg3ba92lgbdbr6jcrfqi1x";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -164836,8 +164980,8 @@ self: {
      }:
      mkDerivation {
        pname = "safecopy";
-       version = "0.9.3.2";
-       sha256 = "0dvbwjrgy6vzhp4mqxpk0kbzv1im2bjp6qq9aq8ggcbdis6m1x85";
+       version = "0.9.3.3";
+       sha256 = "17msazxg0iqvmsn4cwlnr1hwcw5bfp276zsg7x5r47ifi9j748nb";
        libraryHaskellDepends = [
          array base bytestring cereal containers old-time template-haskell
          text time vector
@@ -166000,39 +166144,14 @@ self: {
 
   "schematic" = callPackage
     ({ mkDerivation, aeson, base, bytestring, hspec, hspec-core
-     , hspec-discover, hspec-smallcheck, HUnit, regex-compat, scientific
-     , singletons, smallcheck, smallcheck-series, tagged, text
-     , unordered-containers, validationt, vector, vinyl
-     }:
-     mkDerivation {
-       pname = "schematic";
-       version = "0.1.4.0";
-       sha256 = "11dc24f657wh5g5yx256qnwmajxs5f6pv2ydzdqig3a7al32kvfb";
-       libraryHaskellDepends = [
-         aeson base bytestring regex-compat scientific singletons smallcheck
-         smallcheck-series tagged text unordered-containers validationt
-         vector vinyl
-       ];
-       testHaskellDepends = [
-         aeson base bytestring hspec hspec-core hspec-discover
-         hspec-smallcheck HUnit regex-compat singletons smallcheck
-         smallcheck-series tagged text unordered-containers validationt
-         vinyl
-       ];
-       description = "JSON-biased spec and validation tool";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "schematic_0_1_5_0" = callPackage
-    ({ mkDerivation, aeson, base, bytestring, hspec, hspec-core
      , hspec-discover, hspec-smallcheck, HUnit, lens, regex-compat
      , scientific, singletons, smallcheck, smallcheck-series, tagged
      , text, unordered-containers, validationt, vector, vinyl
      }:
      mkDerivation {
        pname = "schematic";
-       version = "0.1.5.0";
-       sha256 = "1zlpr0mp3qczylyn26chcndmvyn33pb36xh3d339mrbyalvrb5v7";
+       version = "0.1.6.0";
+       sha256 = "1pk75lrcw187nv3qf2xddi2v3pkmrq6vy6frv5piaaw12qzflfah";
        libraryHaskellDepends = [
          aeson base bytestring regex-compat scientific singletons smallcheck
          smallcheck-series tagged text unordered-containers validationt
@@ -166046,7 +166165,6 @@ self: {
        ];
        description = "JSON-biased spec and validation tool";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "scholdoc" = callPackage
@@ -167025,6 +167143,25 @@ self: {
        hydraPlatforms = [ "i686-linux" "x86_64-linux" ];
      }) {inherit (pkgs) SDL2; inherit (pkgs) SDL2_ttf;};
 
+  "sdl2-ttf_2_0_1" = callPackage
+    ({ mkDerivation, base, bytestring, SDL2, sdl2, SDL2_ttf
+     , template-haskell, text, transformers
+     }:
+     mkDerivation {
+       pname = "sdl2-ttf";
+       version = "2.0.1";
+       sha256 = "0sk1lnb9zrh2ip4lhxx4g6q4j23c35k62jvbzckzy4ajlbs3029v";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring sdl2 template-haskell text transformers
+       ];
+       libraryPkgconfigDepends = [ SDL2 SDL2_ttf ];
+       description = "Bindings to SDL2_ttf";
+       license = stdenv.lib.licenses.bsd3;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {inherit (pkgs) SDL2; inherit (pkgs) SDL2_ttf;};
+
   "sdnv" = callPackage
     ({ mkDerivation, base, binary, bytestring }:
      mkDerivation {
@@ -170995,32 +171132,6 @@ self: {
      }:
      mkDerivation {
        pname = "shakespeare";
-       version = "2.0.13";
-       sha256 = "03jqmkvsf5ygg3szqr65xpd7c3yjivkbaxvkz683pwx7hqqpyzm6";
-       libraryHaskellDepends = [
-         aeson base blaze-html blaze-markup bytestring containers directory
-         exceptions ghc-prim parsec process scientific template-haskell text
-         time transformers unordered-containers vector
-       ];
-       testHaskellDepends = [
-         aeson base blaze-html blaze-markup bytestring containers directory
-         exceptions ghc-prim hspec HUnit parsec process template-haskell
-         text time transformers
-       ];
-       homepage = "http://www.yesodweb.com/book/shakespearean-templates";
-       description = "A toolkit for making compile-time interpolated templates";
-       license = stdenv.lib.licenses.mit;
-       maintainers = with stdenv.lib.maintainers; [ psibi ];
-     }) {};
-
-  "shakespeare_2_0_14" = callPackage
-    ({ mkDerivation, aeson, base, blaze-html, blaze-markup, bytestring
-     , containers, directory, exceptions, ghc-prim, hspec, HUnit, parsec
-     , process, scientific, template-haskell, text, time, transformers
-     , unordered-containers, vector
-     }:
-     mkDerivation {
-       pname = "shakespeare";
        version = "2.0.14";
        sha256 = "0j5zx8ka7d7scvb9shm7k3376qzl3k4kpim9aqqfs6n86901zpl4";
        libraryHaskellDepends = [
@@ -171036,7 +171147,6 @@ self: {
        homepage = "http://www.yesodweb.com/book/shakespearean-templates";
        description = "A toolkit for making compile-time interpolated templates";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
        maintainers = with stdenv.lib.maintainers; [ psibi ];
      }) {};
 
@@ -171537,18 +171647,18 @@ self: {
      }) {};
 
   "shift" = callPackage
-    ({ mkDerivation, aeson, ansi-terminal, base, bytestring
+    ({ mkDerivation, ansi-terminal, base, binary, bytestring
      , composition, data-default, lens, optparse-applicative
      , system-fileio, system-filepath, text, turtle
      }:
      mkDerivation {
        pname = "shift";
-       version = "0.1.0.0";
-       sha256 = "10mbb64cxv4iin6ic9bgl5l431g3mc91jcpns71k85w8imbfiypd";
+       version = "0.2.0.1";
+       sha256 = "162b862m73dwdw3ci1k8ihwb2kng7nrn679zk01v5cq3s3qkbqgx";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         aeson ansi-terminal base bytestring composition data-default lens
+         ansi-terminal base binary bytestring composition data-default lens
          optparse-applicative system-fileio system-filepath text turtle
        ];
        executableHaskellDepends = [ base ];
@@ -177060,8 +177170,8 @@ self: {
     ({ mkDerivation, base, cmdargs, containers, leancheck }:
      mkDerivation {
        pname = "speculate";
-       version = "0.2.8";
-       sha256 = "1xv3pciz0badd4wbijw8zmiwr656gjimv7lxccggm2q3nsqnq9gz";
+       version = "0.2.9";
+       sha256 = "0xk8i5hskr59vrf8vkvwsvp4n048fd66k959q7nl0i5z3k0lx2m2";
        libraryHaskellDepends = [ base cmdargs containers leancheck ];
        testHaskellDepends = [ base leancheck ];
        benchmarkHaskellDepends = [ base leancheck ];
@@ -178776,6 +178886,52 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "stackage-curator_0_15_0_0" = callPackage
+    ({ mkDerivation, aeson, amazonka, amazonka-core, amazonka-s3, async
+     , base, base16-bytestring, blaze-html, byteable, bytestring, Cabal
+     , classy-prelude-conduit, conduit, conduit-extra, containers
+     , cryptohash, cryptohash-conduit, data-default-class, directory
+     , exceptions, filepath, hashable, hspec, html-conduit, http-client
+     , http-client-tls, http-conduit, lucid, mime-types, monad-unlift
+     , monad-unlift-ref, mono-traversable, mtl, old-locale
+     , optparse-applicative, optparse-simple, process, QuickCheck
+     , resourcet, safe, semigroups, stm, store, streaming-commons, syb
+     , system-fileio, system-filepath, tar, temporary, text, time
+     , transformers, unix-compat, unordered-containers, utf8-string
+     , vector, xml-conduit, xml-types, yaml, zlib
+     }:
+     mkDerivation {
+       pname = "stackage-curator";
+       version = "0.15.0.0";
+       sha256 = "0z84ywxh4zb996b0ir8hjl9pwdcb0ds0pgq6i8sfxmj5nrw5yjn5";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         aeson amazonka amazonka-core amazonka-s3 async base
+         base16-bytestring blaze-html byteable bytestring Cabal
+         classy-prelude-conduit conduit conduit-extra containers cryptohash
+         cryptohash-conduit data-default-class directory exceptions filepath
+         hashable html-conduit http-client http-client-tls http-conduit
+         lucid mime-types monad-unlift monad-unlift-ref mono-traversable mtl
+         old-locale process resourcet safe semigroups stm store
+         streaming-commons syb system-fileio system-filepath tar temporary
+         text time transformers unix-compat unordered-containers utf8-string
+         vector xml-conduit xml-types yaml zlib
+       ];
+       executableHaskellDepends = [
+         aeson base http-client http-client-tls optparse-applicative
+         optparse-simple system-filepath text
+       ];
+       testHaskellDepends = [
+         base Cabal classy-prelude-conduit containers directory hspec
+         http-client http-client-tls QuickCheck text yaml
+       ];
+       homepage = "https://github.com/fpco/stackage-curator";
+       description = "Tools for curating Stackage bundles";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "stackage-install" = callPackage
     ({ mkDerivation, aeson, async, base, bytestring, containers
      , cryptohash, directory, filepath, http-client, http-client-tls
@@ -179098,8 +179254,8 @@ self: {
      }:
      mkDerivation {
        pname = "state-codes";
-       version = "0.1.1";
-       sha256 = "17vfgvwrhx7h9hy6x2w52h326h9ana2gfpgwgd1war0cbws07sna";
+       version = "0.1.2";
+       sha256 = "08i4ly81yr8sxjhjl6y2kk58ya597q0rcyw3dr50gfxrg20p36dj";
        libraryHaskellDepends = [ aeson base shakespeare text ];
        testHaskellDepends = [ aeson base hspec QuickCheck text ];
        homepage = "https://github.com/acamino/state-codes#README";
@@ -179138,8 +179294,8 @@ self: {
      }:
      mkDerivation {
        pname = "stateWriter";
-       version = "0.2.8.2";
-       sha256 = "1y8580n66hif4pp2b6gsqssafcqf1vysf63209i2rcjr0dsgnjgz";
+       version = "0.2.9";
+       sha256 = "0kvkf3lh60sz0nfscjd6skr52b11mh7wk4ls64z5hmdjr4cnjgmm";
        libraryHaskellDepends = [ base mtl transformers ];
        testHaskellDepends = [ base free hspec mtl QuickCheck ];
        benchmarkHaskellDepends = [
@@ -181614,6 +181770,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "structured-cli" = callPackage
+    ({ mkDerivation, base, data-default, haskeline, mtl, split
+     , transformers
+     }:
+     mkDerivation {
+       pname = "structured-cli";
+       version = "0.9.0.3";
+       sha256 = "1w1a8ryj85iixzh3y5vr46dfmslsldngqyf0c1yg8wwb3sacca9n";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base data-default haskeline mtl split transformers
+       ];
+       executableHaskellDepends = [ base data-default mtl split ];
+       homepage = "https://github.com/erickg/structured-cli#readme";
+       description = "Application library for building interactive console CLIs";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "structured-haskell-mode" = callPackage
     ({ mkDerivation, base, descriptive, ghc-prim, haskell-src-exts
      , text
@@ -182430,6 +182605,8 @@ self: {
        pname = "svg-builder";
        version = "0.1.0.2";
        sha256 = "0m7fpxh2viafcfm04xzy64jakx5c0p5wcam3bdwxgmj3r3q0qjc1";
+       revision = "1";
+       editedCabalFile = "1h3bzkimiydj5j2rh7cyp5bhphvy6hglpkidhlfwy520sqsw3zvx";
        libraryHaskellDepends = [
          base blaze-builder bytestring hashable text unordered-containers
        ];
@@ -185239,6 +185416,25 @@ self: {
        hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
+  "tasty-hedgehog" = callPackage
+    ({ mkDerivation, base, hedgehog, tagged, tasty
+     , tasty-expected-failure
+     }:
+     mkDerivation {
+       pname = "tasty-hedgehog";
+       version = "0.1.0.1";
+       sha256 = "1sqwj5vzmc2rcr8yh2pqwmkdr11cwf20fv5z4wr5xsp9qnv3bzl1";
+       revision = "1";
+       editedCabalFile = "1aq46lrx467r3c6i8figzgyhwkg1n34zq9r39j6144mmmmgh2wpz";
+       libraryHaskellDepends = [ base hedgehog tagged tasty ];
+       testHaskellDepends = [
+         base hedgehog tasty tasty-expected-failure
+       ];
+       homepage = "https://github.com/qfpl/tasty-hedgehog";
+       description = "Integrates the hedgehog testing library with the tasty testing framework";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "tasty-hspec" = callPackage
     ({ mkDerivation, base, hspec, hspec-core, QuickCheck, random
      , tagged, tasty, tasty-quickcheck, tasty-smallcheck
@@ -185916,6 +186112,29 @@ self: {
        license = stdenv.lib.licenses.mit;
      }) {};
 
+  "teardown_0_2_0_0" = callPackage
+    ({ mkDerivation, ansi-wl-pprint, base, criterion, deepseq, doctest
+     , Glob, protolude, QuickCheck, tasty, tasty-hspec, tasty-hunit
+     , tasty-rerun, tasty-smallcheck, text, time
+     }:
+     mkDerivation {
+       pname = "teardown";
+       version = "0.2.0.0";
+       sha256 = "1ir84hm9z5n4dv1qvfs5f3qzmhdymcaak2whbvdz189kkziwhqsf";
+       libraryHaskellDepends = [
+         ansi-wl-pprint base deepseq protolude text time
+       ];
+       testHaskellDepends = [
+         base doctest Glob protolude QuickCheck tasty tasty-hspec
+         tasty-hunit tasty-rerun tasty-smallcheck text time
+       ];
+       benchmarkHaskellDepends = [ base criterion protolude text time ];
+       homepage = "https://github.com/roman/Haskell-teardown#readme";
+       description = "Build composable, idempotent & transparent application cleanup sub-routines";
+       license = stdenv.lib.licenses.mit;
+       hydraPlatforms = stdenv.lib.platforms.none;
+     }) {};
+
   "teeth" = callPackage
     ({ mkDerivation, base }:
      mkDerivation {
@@ -187542,6 +187761,23 @@ self: {
        license = stdenv.lib.licenses.isc;
      }) {};
 
+  "text-cp437" = callPackage
+    ({ mkDerivation, base, bytestring, QuickCheck, quickcheck-text
+     , text
+     }:
+     mkDerivation {
+       pname = "text-cp437";
+       version = "0.2.1";
+       sha256 = "1fzsb341yr1jiv9wflr35ra1z1cd41wmyp0y5dv2p0fq10kxcfgs";
+       libraryHaskellDepends = [ base bytestring text ];
+       testHaskellDepends = [
+         base bytestring QuickCheck quickcheck-text text
+       ];
+       homepage = "https://github.com/pliosoft/text-cp437#readme";
+       description = "Conversion of Text to and from CP437";
+       license = stdenv.lib.licenses.bsd3;
+     }) {};
+
   "text-format" = callPackage
     ({ mkDerivation, array, base, double-conversion, ghc-prim
      , integer-gmp, old-locale, text, time, transformers
@@ -189306,18 +189542,22 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "threepenny-editors_0_5_2" = callPackage
+  "threepenny-editors_0_5_3" = callPackage
     ({ mkDerivation, base, bifunctors, casing, containers, data-default
-     , generics-sop, lens, profunctors, threepenny-gui
+     , generics-sop, profunctors, template-haskell, threepenny-gui
      }:
      mkDerivation {
        pname = "threepenny-editors";
-       version = "0.5.2";
-       sha256 = "131gczj4nwcip1m2pry8h340mivpm4skydw0r8ir7mfr4pc6a1wj";
+       version = "0.5.3";
+       sha256 = "19h83mcrm22svdpb20bzvv3wfzkrynwybgf14qclf5wyf46qmf2b";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
-         base bifunctors casing containers data-default generics-sop lens
+         base bifunctors casing containers data-default generics-sop
+         profunctors template-haskell threepenny-gui
+       ];
+       executableHaskellDepends = [
+         base bifunctors casing containers data-default generics-sop
          profunctors threepenny-gui
        ];
        homepage = "https://github.com/pepeiborra/threepenny-editors";
@@ -191856,16 +192096,16 @@ self: {
 
   "traildb" = callPackage
     ({ mkDerivation, base, bytestring, cereal, containers, criterion
-     , deepseq, directory, exceptions, Judy, lens, primitive, random
-     , text, time, traildb, transformers, unix, vector
+     , deepseq, directory, exceptions, Judy, primitive, profunctors
+     , random, text, time, traildb, transformers, unix, vector
      }:
      mkDerivation {
        pname = "traildb";
-       version = "0.1.1.0";
-       sha256 = "0frv6wxa70jgxys9mjlj605xcwwzdf33k7igghzhsdmavbzqldqm";
+       version = "0.1.2.0";
+       sha256 = "0a6pjkslq4vi84l04g8s640hwg2yki3015z1glcslyyj4x4wb47m";
        libraryHaskellDepends = [
-         base bytestring containers directory exceptions lens primitive text
-         time transformers unix vector
+         base bytestring containers directory exceptions primitive
+         profunctors text time transformers unix vector
        ];
        librarySystemDepends = [ Judy traildb ];
        benchmarkHaskellDepends = [
@@ -192789,8 +193029,10 @@ self: {
     ({ mkDerivation, base, containers, template-haskell, time }:
      mkDerivation {
        pname = "true-name";
-       version = "0.1.0.2";
-       sha256 = "1c0wdqpdrannmsgf5qp9l8igmwmj8kgf1mvb3cj5mzk90n4jfxh6";
+       version = "0.1.0.3";
+       sha256 = "0s74fi3zfzk3apvwjz1c0k0ij24kdvlrn8lply9c04kyd20fyc66";
+       revision = "1";
+       editedCabalFile = "0x56r3wyrrsckx6kdvr4v9janrby5qa21fjqwg9k211765c9ddj6";
        libraryHaskellDepends = [ base template-haskell ];
        testHaskellDepends = [ base containers template-haskell time ];
        homepage = "https://github.com/liyang/true-name";
@@ -193377,7 +193619,7 @@ self: {
        license = stdenv.lib.licenses.bsd3;
      }) {};
 
-  "turtle_1_4_1" = callPackage
+  "turtle_1_4_2" = callPackage
     ({ mkDerivation, ansi-wl-pprint, async, base, bytestring, clock
      , criterion, directory, doctest, foldl, hostname, managed
      , optional-args, optparse-applicative, process, semigroups, stm
@@ -193386,8 +193628,8 @@ self: {
      }:
      mkDerivation {
        pname = "turtle";
-       version = "1.4.1";
-       sha256 = "1frq36axmzbcya2623vcs2cpvr7zh7bk7nzjpdpvzmwqykkfm4lc";
+       version = "1.4.2";
+       sha256 = "0zzc84k0126rnfm4sqb1a42n9carfq740vjnb7v7m5p1zf23x1f8";
        libraryHaskellDepends = [
          ansi-wl-pprint async base bytestring clock directory foldl hostname
          managed optional-args optparse-applicative process semigroups stm
@@ -193872,37 +194114,6 @@ self: {
 
   "twitter-conduit" = callPackage
     ({ mkDerivation, aeson, attoparsec, authenticate-oauth, base
-     , bytestring, case-insensitive, conduit, conduit-extra, containers
-     , data-default, doctest, exceptions, hlint, hspec, http-client
-     , http-conduit, http-types, lens, lens-aeson, network-uri
-     , resourcet, template-haskell, text, time, transformers
-     , transformers-base, twitter-types, twitter-types-lens
-     }:
-     mkDerivation {
-       pname = "twitter-conduit";
-       version = "0.2.2.1";
-       sha256 = "06nbbh9lx816klc1hcd7rvqaxhshscc4bbq10mnhqrfzq69al695";
-       libraryHaskellDepends = [
-         aeson attoparsec authenticate-oauth base bytestring conduit
-         conduit-extra containers data-default exceptions http-client
-         http-conduit http-types lens lens-aeson resourcet template-haskell
-         text time transformers transformers-base twitter-types
-         twitter-types-lens
-       ];
-       testHaskellDepends = [
-         aeson attoparsec authenticate-oauth base bytestring
-         case-insensitive conduit conduit-extra containers data-default
-         doctest hlint hspec http-client http-conduit http-types lens
-         lens-aeson network-uri resourcet template-haskell text time
-         twitter-types twitter-types-lens
-       ];
-       homepage = "https://github.com/himura/twitter-conduit";
-       description = "Twitter API package with conduit interface and Streaming API support";
-       license = stdenv.lib.licenses.bsd3;
-     }) {};
-
-  "twitter-conduit_0_2_2_2" = callPackage
-    ({ mkDerivation, aeson, attoparsec, authenticate-oauth, base
      , bytestring, Cabal, cabal-doctest, case-insensitive, conduit
      , conduit-extra, containers, data-default, doctest, exceptions
      , hlint, hspec, http-client, http-conduit, http-types, lens
@@ -193932,7 +194143,6 @@ self: {
        homepage = "https://github.com/himura/twitter-conduit";
        description = "Twitter API package with conduit interface and Streaming API support";
        license = stdenv.lib.licenses.bsd3;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "twitter-enumerator" = callPackage
@@ -194746,28 +194956,6 @@ self: {
      }:
      mkDerivation {
        pname = "typed-process";
-       version = "0.1.0.0";
-       sha256 = "1y0h19fh6pf3x8rr2ai59rxpsgwippcas087wb63rbmkrk36p1ny";
-       libraryHaskellDepends = [
-         async base bytestring conduit conduit-extra exceptions process stm
-         transformers
-       ];
-       testHaskellDepends = [
-         async base base64-bytestring bytestring conduit conduit-extra hspec
-         http-conduit temporary
-       ];
-       homepage = "https://github.com/fpco/typed-process#readme";
-       description = "Run external processes, with strong typing of streams";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "typed-process_0_1_0_1" = callPackage
-    ({ mkDerivation, async, base, base64-bytestring, bytestring
-     , conduit, conduit-extra, exceptions, hspec, http-conduit, process
-     , stm, temporary, transformers
-     }:
-     mkDerivation {
-       pname = "typed-process";
        version = "0.1.0.1";
        sha256 = "05pwpis2vm63qxg8kkqd52whbgkgf5k5sy0w1z1am7jsm6fiychc";
        libraryHaskellDepends = [
@@ -194781,7 +194969,6 @@ self: {
        homepage = "https://haskell-lang.org/library/typed-process";
        description = "Run external processes, with strong typing of streams";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "typed-spreadsheet" = callPackage
@@ -201821,6 +202008,25 @@ self: {
        license = stdenv.lib.licenses.mpl20;
      }) {};
 
+  "wai-secure-cookies" = callPackage
+    ({ mkDerivation, base, bytestring, cryptonite, http-types, memory
+     , protolude, random, split, wai
+     }:
+     mkDerivation {
+       pname = "wai-secure-cookies";
+       version = "0.1.0.1";
+       sha256 = "0i6ipcyqfndakr42d4cbskv5zkg1kizkhl46wi6km0l8lzbc42l4";
+       isLibrary = true;
+       isExecutable = true;
+       libraryHaskellDepends = [
+         base bytestring cryptonite http-types memory protolude random split
+         wai
+       ];
+       executableHaskellDepends = [ base bytestring cryptonite memory ];
+       homepage = "https://github.com/habibalamin/wai-secure-cookies";
+       license = stdenv.lib.licenses.mit;
+     }) {};
+
   "wai-session" = callPackage
     ({ mkDerivation, base, blaze-builder, bytestring, containers
      , cookie, http-types, StateVar, time, transformers, vault, wai
@@ -202200,8 +202406,8 @@ self: {
      }:
      mkDerivation {
        pname = "warc";
-       version = "1.0.1";
-       sha256 = "0vwml51prp730n5dmdla4s2116slp0wqg195b7psv4a3yqfx7v7p";
+       version = "1.0.3";
+       sha256 = "040kvm4nrd71hsjba5kjdp4620q2123asnfzsbxmbjw5p9jqjhh9";
        isLibrary = true;
        isExecutable = true;
        libraryHaskellDepends = [
@@ -208446,35 +208652,6 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-auth";
-       version = "1.4.17.2";
-       sha256 = "10wrl6g5q06mf751rwc8wclb5i5wajp30vhr7ggpvfylmqzjg933";
-       libraryHaskellDepends = [
-         aeson authenticate base base16-bytestring base64-bytestring binary
-         blaze-builder blaze-html blaze-markup byteable bytestring conduit
-         conduit-extra containers cryptonite data-default email-validate
-         file-embed http-client http-conduit http-types lifted-base memory
-         mime-mail network-uri nonce persistent persistent-template random
-         resourcet safe shakespeare template-haskell text time transformers
-         unordered-containers wai yesod-core yesod-form yesod-persistent
-       ];
-       homepage = "http://www.yesodweb.com/";
-       description = "Authentication for Yesod";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "yesod-auth_1_4_17_3" = callPackage
-    ({ mkDerivation, aeson, authenticate, base, base16-bytestring
-     , base64-bytestring, binary, blaze-builder, blaze-html
-     , blaze-markup, byteable, bytestring, conduit, conduit-extra
-     , containers, cryptonite, data-default, email-validate, file-embed
-     , http-client, http-conduit, http-types, lifted-base, memory
-     , mime-mail, network-uri, nonce, persistent, persistent-template
-     , random, resourcet, safe, shakespeare, template-haskell, text
-     , time, transformers, unordered-containers, wai, yesod-core
-     , yesod-form, yesod-persistent
-     }:
-     mkDerivation {
-       pname = "yesod-auth";
        version = "1.4.17.3";
        sha256 = "16z4rqzy8gzri6sbgm5cx3vm44myx2bzydfyhi91yd6ravi7rc9i";
        libraryHaskellDepends = [
@@ -208489,7 +208666,6 @@ self: {
        homepage = "http://www.yesodweb.com/";
        description = "Authentication for Yesod";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yesod-auth-account" = callPackage
@@ -209271,30 +209447,6 @@ self: {
      }:
      mkDerivation {
        pname = "yesod-form";
-       version = "1.4.13";
-       sha256 = "0yq98rk81nilm39djpwl2kvr83j96yakc1ysyy3zgywb2k1ncvqk";
-       libraryHaskellDepends = [
-         aeson attoparsec base blaze-builder blaze-html blaze-markup
-         byteable bytestring containers data-default email-validate
-         network-uri persistent resourcet semigroups shakespeare
-         template-haskell text time transformers wai xss-sanitize yesod-core
-         yesod-persistent
-       ];
-       testHaskellDepends = [ base hspec text time ];
-       homepage = "http://www.yesodweb.com/";
-       description = "Form handling support for Yesod Web Framework";
-       license = stdenv.lib.licenses.mit;
-     }) {};
-
-  "yesod-form_1_4_15" = callPackage
-    ({ mkDerivation, aeson, attoparsec, base, blaze-builder, blaze-html
-     , blaze-markup, byteable, bytestring, containers, data-default
-     , email-validate, hspec, network-uri, persistent, resourcet
-     , semigroups, shakespeare, template-haskell, text, time
-     , transformers, wai, xss-sanitize, yesod-core, yesod-persistent
-     }:
-     mkDerivation {
-       pname = "yesod-form";
        version = "1.4.15";
        sha256 = "107ddpngzwzmslrv1cc82fx775icvjpbsgjhinj7cnmpi3paq3w3";
        libraryHaskellDepends = [
@@ -209308,7 +209460,6 @@ self: {
        homepage = "http://www.yesodweb.com/";
        description = "Form handling support for Yesod Web Framework";
        license = stdenv.lib.licenses.mit;
-       hydraPlatforms = stdenv.lib.platforms.none;
      }) {};
 
   "yesod-form-bootstrap4" = callPackage
diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix
index 245ff7b006f..07f622931fa 100644
--- a/pkgs/development/interpreters/racket/default.nix
+++ b/pkgs/development/interpreters/racket/default.nix
@@ -33,11 +33,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "racket-${version}";
-  version = "6.9";
+  version = "6.10";
 
   src = fetchurl {
     url = "http://mirror.racket-lang.org/installers/${version}/${name}-src.tgz";
-    sha256 = "1cd218ee2ba1dc683de858a866c6666eb72a11adee8d1df6cdd59c5c5a47b714";
+    sha256 = "1mqnyj3bawad12dygsb11f2dbnkjp7q6d7ra714rqyw8mxix5ws0";
   };
 
   FONTCONFIG_FILE = fontsConf;
@@ -47,13 +47,14 @@ stdenv.mkDerivation rec {
   buildInputs = [ fontconfig libffi libtool makeWrapper sqlite ];
 
   preConfigure = ''
+    unset AR
     substituteInPlace src/configure --replace /usr/bin/uname ${coreutils}/bin/uname
     mkdir src/build
     cd src/build
   '';
 
   shared = if stdenv.isDarwin then "dylib" else "shared";
-  configureFlags = [ "--enable-${shared}" "--enable-lt=${libtool}/bin/libtool" ]
+  configureFlags = [ "--enable-${shared}"  "--enable-lt=${libtool}/bin/libtool" ]
                    ++ stdenv.lib.optional disableDocs [ "--disable-docs" ]
                    ++ stdenv.lib.optional stdenv.isDarwin [ "--enable-xonx" ];
 
diff --git a/pkgs/development/libraries/SDL2_mixer/default.nix b/pkgs/development/libraries/SDL2_mixer/default.nix
index 0203b8a1a8d..c0fdbf921a6 100644
--- a/pkgs/development/libraries/SDL2_mixer/default.nix
+++ b/pkgs/development/libraries/SDL2_mixer/default.nix
@@ -1,4 +1,6 @@
-{ stdenv, lib, fetchurl, SDL2, libogg, libvorbis, smpeg, flac, enableNativeMidi ? false, fluidsynth ? null }:
+{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig, which
+, SDL2, libogg, libvorbis, smpeg2, flac, libmodplug
+, enableNativeMidi ? false, fluidsynth ? null }:
 
 stdenv.mkDerivation rec {
   name = "SDL2_mixer-${version}";
@@ -9,9 +11,14 @@ stdenv.mkDerivation rec {
     sha256 = "0pv9jzjpcjlbiaybvwrb4avmv46qk7iqxlnqrd2dfj82c4mgc92s";
   };
 
-  propagatedBuildInputs = [ SDL2 libogg libvorbis fluidsynth smpeg flac ];
+  nativeBuildInputs = [ autoreconfHook pkgconfig which ];
 
-  configureFlags = [ "--disable-music-ogg-shared" ] ++ lib.optional enableNativeMidi "--enable-music-native-midi-gpl";
+  propagatedBuildInputs = [ SDL2 libogg libvorbis fluidsynth smpeg2 flac libmodplug ];
+
+  patches = [ ./libmodplug.patch ];
+
+  configureFlags = [ "--disable-music-ogg-shared" ]
+    ++ lib.optional enableNativeMidi "--enable-music-native-midi-gpl";
 
   meta = with stdenv.lib; {
     description = "SDL multi-channel audio mixer library";
diff --git a/pkgs/development/libraries/SDL2_mixer/libmodplug.patch b/pkgs/development/libraries/SDL2_mixer/libmodplug.patch
new file mode 100644
index 00000000000..63ed2732ebf
--- /dev/null
+++ b/pkgs/development/libraries/SDL2_mixer/libmodplug.patch
@@ -0,0 +1,13 @@
+diff --git a/configure.in b/configure.in
+index d511646..77dc3fe 100644
+--- a/configure.in
++++ b/configure.in
+@@ -258,7 +258,7 @@ if test x$enable_music_mod = xyes -a x$enable_music_mod_modplug = xyes; then
+             have_libmodplug_lib=yes
+         ], [dnl
+             AC_CHECK_HEADER([libmodplug/modplug.h], [have_libmodplug_hdr=yes])
+-            AC_CHECK_LIB([modplug], [have_libmodplug_lib=yes])
++            AC_CHECK_LIB([modplug], [ModPlug_Load], [have_libmodplug_lib=yes])
+         ])
+ 
+     if test x$have_libmodplug_hdr = xyes -a x$have_libmodplug_lib = xyes; then
diff --git a/pkgs/development/libraries/audio/jamomacore/default.nix b/pkgs/development/libraries/audio/jamomacore/default.nix
index a3d04fee7f6..5dac4d8e592 100644
--- a/pkgs/development/libraries/audio/jamomacore/default.nix
+++ b/pkgs/development/libraries/audio/jamomacore/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pkgconfig, alsaLib, portaudio, portmidi, libsndfile, cmake, libxml2,  ninja }:
+{ stdenv, fetchFromGitHub, pkgconfig, alsaLib, portaudio, portmidi, libsndfile, cmake, libxml2 }:
 
 stdenv.mkDerivation rec {
   version = "1.0-beta.1";
@@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
     sha256 = "1hb9b6qc18rsvzvixgllknn756m6zwcn22c79rdibbyz1bhrcnln";
   };
 
-  buildInputs = [ pkgconfig alsaLib portaudio portmidi libsndfile cmake libxml2  ninja ];
+  buildInputs = [ pkgconfig alsaLib portaudio portmidi libsndfile cmake libxml2 ];
 
   meta = {
     description = "A C++ platform for building dynamic and reflexive systems with an emphasis on audio and media";
diff --git a/pkgs/development/libraries/dee/default.nix b/pkgs/development/libraries/dee/default.nix
index 9b05d74a406..1288f4ac2f5 100644
--- a/pkgs/development/libraries/dee/default.nix
+++ b/pkgs/development/libraries/dee/default.nix
@@ -13,6 +13,8 @@ stdenv.mkDerivation rec {
   buildInputs = [ glib gobjectIntrospection icu ];
   nativeBuildInputs = [ python pkgconfig ];
 
+  NIX_CFLAGS_COMPILE = [ "-Wno-error=misleading-indentation" ]; # gcc-6
+
   enableParallelBuilding = true;
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/gdal/default.nix b/pkgs/development/libraries/gdal/default.nix
index 0bb91951a28..984d3da8119 100644
--- a/pkgs/development/libraries/gdal/default.nix
+++ b/pkgs/development/libraries/gdal/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib
+{ stdenv, fetchurl, unzip, libjpeg, libtiff, zlib
 , postgresql, mysql, libgeotiff, pythonPackages, proj, geos, openssl
 , libpng, sqlite, libspatialite, poppler, hdf4
 , libiconv
diff --git a/pkgs/development/libraries/gdal/gdal-1_11.nix b/pkgs/development/libraries/gdal/gdal-1_11.nix
index 5ed72a6669c..c9f0c076101 100644
--- a/pkgs/development/libraries/gdal/gdal-1_11.nix
+++ b/pkgs/development/libraries/gdal/gdal-1_11.nix
@@ -1,8 +1,8 @@
-{ stdenv, fetchurl, composableDerivation, unzip, libjpeg, libtiff, zlib
+{ stdenv, fetchurl, unzip, libjpeg, libtiff, zlib
 , postgresql, mysql, libgeotiff, python, pythonPackages, proj, geos, openssl
 , libpng }:
 
-composableDerivation.composableDerivation {} (fixed: rec {
+stdenv.mkDerivation rec {
   version = "1.11.3";
   name = "gdal-${version}";
 
@@ -58,4 +58,4 @@ composableDerivation.composableDerivation {} (fixed: rec {
     maintainers = [ stdenv.lib.maintainers.marcweber ];
     platforms = stdenv.lib.platforms.linux;
   };
-})
+}
diff --git a/pkgs/development/libraries/gperftools/default.nix b/pkgs/development/libraries/gperftools/default.nix
index 8eb79b27fdc..47c6134dd20 100644
--- a/pkgs/development/libraries/gperftools/default.nix
+++ b/pkgs/development/libraries/gperftools/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libunwind }:
 
 stdenv.mkDerivation rec {
-  name = "gperftools-2.5";
+  name = "gperftools-2.6.1";
 
   src = fetchurl {
     url = "https://github.com/gperftools/gperftools/releases/download/${name}/${name}.tar.gz";
-    sha256 = "0wsix3lhkpjv8lxmcbml549mfwifdv7n1qak09slvx6d3a7p98kg";
+    sha256 = "10cxd6s5pkm2d934gh47hrn9xcrw4qlc9yr7s99z4a508bmngd1q";
   };
 
   buildInputs = stdenv.lib.optional stdenv.isLinux libunwind;
diff --git a/pkgs/development/libraries/languagemachines/frog.nix b/pkgs/development/libraries/languagemachines/frog.nix
new file mode 100644
index 00000000000..c80c28eb14b
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/frog.nix
@@ -0,0 +1,53 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, icu
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-frog.json);
+in
+
+stdenv.mkDerivation {
+  name = "frog";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "frog-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                  libxml2 icu
+                  languageMachines.ticcutils
+                  languageMachines.timbl
+                  languageMachines.mbt
+                  languageMachines.libfolia
+                  languageMachines.ucto
+                  languageMachines.frogdata
+                ];
+
+  preConfigure = ''
+    sh bootstrap.sh
+  '';
+  postInstall = ''
+    # frog expects the data files installed in the same prefix
+    mkdir -p $out/share/frog/;
+    for f in ${languageMachines.frogdata}/share/frog/*; do
+      ln -s $f $out/share/frog/;
+    done;
+
+    make check
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A Tagger-Lemmatizer-Morphological-Analyzer-Dependency-Parser for Dutch";
+    homepage    = https://languagemachines.github.io/frog;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      Frog is an integration of memory-based natural language processing (NLP) modules developed for Dutch. All NLP modules are based on Timbl, the Tilburg memory-based learning software package. Most modules were created in the 1990s at the ILK Research Group (Tilburg University, the Netherlands) and the CLiPS Research Centre (University of Antwerp, Belgium). Over the years they have been integrated into a single text processing tool, which is currently maintained and developed by the Language Machines Research Group and the Centre for Language and Speech Technology at Radboud University Nijmegen. A dependency parser, a base phrase chunker, and a named-entity recognizer module were added more recently. Where possible, Frog makes use of multi-processor support to run subtasks in parallel.
+
+      Various (re)programming rounds have been made possible through funding by NWO, the Netherlands Organisation for Scientific Research, particularly under the CGN project, the IMIX programme, the Implicit Linguistics project, the CLARIN-NL programme and the CLARIAH programme.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/frogdata.nix b/pkgs/development/libraries/languagemachines/frogdata.nix
new file mode 100644
index 00000000000..d9578c380e6
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/frogdata.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, icu
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-frogdata.json);
+in
+
+stdenv.mkDerivation {
+  name = "frogdata";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "frogdata-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                ];
+
+  preConfigure = ''
+    sh bootstrap.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Data for Frog, a Tagger-Lemmatizer-Morphological-Analyzer-Dependency-Parser for Dutch";
+    homepage    = https://languagemachines.github.io/frog;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/libfolia.nix b/pkgs/development/libraries/languagemachines/libfolia.nix
new file mode 100644
index 00000000000..9cddbdd22d9
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/libfolia.nix
@@ -0,0 +1,30 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, icu
+, languageMachines }:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-libfolia.json);
+in
+
+stdenv.mkDerivation {
+  name = "libfolia";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "libfolia-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive libxml2 icu languageMachines.ticcutils ];
+  preConfigure = "sh bootstrap.sh";
+
+  meta = with stdenv.lib; {
+    description = "A C++ API for FoLiA documents; an XML-based linguistic annotation format.";
+    homepage    = https://proycon.github.io/folia/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      A high-level C++ API to read, manipulate, and create FoLiA documents. FoLiA is an XML-based annotation format, suitable for the representation of linguistically annotated language resources. FoLiA’s intended use is as a format for storing and/or exchanging language resources, including corpora.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/mbt-add-libxml2-dep.patch b/pkgs/development/libraries/languagemachines/mbt-add-libxml2-dep.patch
new file mode 100644
index 00000000000..9037f1093bb
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/mbt-add-libxml2-dep.patch
@@ -0,0 +1,13 @@
+--- a/configure.ac	2017-06-12 06:48:15.000000000 +0200
++++ b/configure.ac	2017-06-12 06:50:06.000000000 +0200
+@@ -76,6 +76,10 @@
+ CXXFLAGS="$CXXFLAGS $ticcutils_CFLAGS"
+ LIBS="$LIBS $ticcutils_LIBS"
+ 
++PKG_CHECK_MODULES([libxml2], [libxml-2.0 >= 2.6.16] )
++CXXFLAGS="$CXXFLAGS $libxml2_CFLAGS"
++LIBS="$LIBS $libxml2_LIBS"
++
+ AC_CONFIG_FILES([
+   Makefile
+   mbt.pc
diff --git a/pkgs/development/libraries/languagemachines/mbt.nix b/pkgs/development/libraries/languagemachines/mbt.nix
new file mode 100644
index 00000000000..0ba7e686e43
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/mbt.nix
@@ -0,0 +1,40 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-mbt.json);
+in
+
+stdenv.mkDerivation {
+  name = "mbt";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "mbt-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                  libxml2
+                  languageMachines.ticcutils
+                  languageMachines.timbl
+                ];
+  patches = [ ./mbt-add-libxml2-dep.patch ];
+  preConfigure = ''
+    sh bootstrap.sh
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Memory Based Tagger";
+    homepage    = https://languagemachines.github.io/mbt/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      MBT is a memory-based tagger-generator and tagger in one. The tagger-generator part can generate a sequence tagger on the basis of a training set of tagged sequences; the tagger part can tag new sequences. MBT can, for instance, be used to generate part-of-speech taggers or chunkers for natural language processing. It has also been used for named-entity recognition, information extraction in domain-specific texts, and disfluency chunking in transcribed speech.
+
+      Mbt is used by Frog for Dutch tagging.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/packages.nix b/pkgs/development/libraries/languagemachines/packages.nix
new file mode 100644
index 00000000000..c2d449ed13c
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/packages.nix
@@ -0,0 +1,14 @@
+{ callPackage }:
+{
+  ticcutils = callPackage ./ticcutils.nix { };
+  libfolia = callPackage ./libfolia.nix { };
+  ucto = callPackage ./ucto.nix { };
+  uctodata = callPackage ./uctodata.nix { };
+  timbl = callPackage ./timbl.nix { };
+  timblserver = callPackage ./timblserver.nix { };
+  mbt = callPackage ./mbt.nix { };
+  frog = callPackage ./frog.nix { };
+  frogdata = callPackage ./frogdata.nix { };
+
+  test = callPackage ./test.nix { };
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frog.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frog.json
new file mode 100644
index 00000000000..55c2ec20a31
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frog.json
@@ -0,0 +1,5 @@
+{
+  "version": "v0.13.7",
+  "url": "https://api.github.com/repos/LanguageMachines/frog/tarball/v0.13.7",
+  "sha256": "0swyfi3g862n888qj8v8kd18745hasy0vnc70i9qlv0ji0321bnf"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frogdata.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frogdata.json
new file mode 100644
index 00000000000..1147322be6d
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-frogdata.json
@@ -0,0 +1,5 @@
+{
+  "version": "v0.13",
+  "url": "https://api.github.com/repos/LanguageMachines/frogdata/tarball/v0.13",
+  "sha256": "13mhv8qacl0n20ddl1ay49xi6h2m0a149ya3rrsmaah3x4adb4sg"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-libfolia.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-libfolia.json
new file mode 100644
index 00000000000..792d958213f
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-libfolia.json
@@ -0,0 +1,5 @@
+{
+  "version": "v1.7",
+  "url": "https://api.github.com/repos/LanguageMachines/libfolia/tarball/v1.7",
+  "sha256": "0hpxdry7n2887klryc587xv46p6z6jp6hz9x7k2pk5v7jb0z4s65"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-mbt.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-mbt.json
new file mode 100644
index 00000000000..f1bbff47a28
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-mbt.json
@@ -0,0 +1,5 @@
+{
+  "version": "v3.2.16",
+  "url": "https://api.github.com/repos/LanguageMachines/mbt/tarball/v3.2.16",
+  "sha256": "0f9f5l84m0lmmv4km9myn3yhy67jbmk3qn2fi40dy025gx4l0x3x"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ticcutils.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ticcutils.json
new file mode 100644
index 00000000000..11069c6b02c
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ticcutils.json
@@ -0,0 +1,5 @@
+{
+  "version": "v0.15",
+  "url": "https://api.github.com/repos/LanguageMachines/ticcutils/tarball/v0.15",
+  "sha256": "0lssb1klx2flmr6fy78j37i5lbq3gfhzjx24j6n72ndm2rvprvcn"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timbl.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timbl.json
new file mode 100644
index 00000000000..d35f2c8333a
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timbl.json
@@ -0,0 +1,5 @@
+{
+  "version": "v6.4.9",
+  "url": "https://api.github.com/repos/LanguageMachines/timbl/tarball/v6.4.9",
+  "sha256": "1279npc3xlq05hnkylpbkgg941gjhvl6sd5fw4vgwcx2rwmmlaay"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timblserver.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timblserver.json
new file mode 100644
index 00000000000..d588da3f8b6
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-timblserver.json
@@ -0,0 +1,5 @@
+{
+  "version": "v1.11",
+  "url": "https://api.github.com/repos/LanguageMachines/timblserver/tarball/v1.11",
+  "sha256": "02k8c704wr5miy82w6zj0imm7sdfnxf3db34qiaa8l3myhn17qlw"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ucto.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ucto.json
new file mode 100644
index 00000000000..9b05cf3e139
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-ucto.json
@@ -0,0 +1,5 @@
+{
+  "version": "v0.9.6",
+  "url": "https://api.github.com/repos/LanguageMachines/ucto/tarball/v0.9.6",
+  "sha256": "0fxq4j32g7kp6789xz23651c4v2j7zlz87cshfv9g1xjs7jxns3f"
+}
diff --git a/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-uctodata.json b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-uctodata.json
new file mode 100644
index 00000000000..08069bb333b
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/release-info/LanguageMachines-uctodata.json
@@ -0,0 +1,5 @@
+{
+  "version": "v0.4",
+  "url": "https://api.github.com/repos/LanguageMachines/uctodata/tarball/v0.4",
+  "sha256": "02c78qmwi9ijpk5wila3p62fmfdy1rpmlvvzbxs3wg0rdb0nwvd2"
+}
diff --git a/pkgs/development/libraries/languagemachines/test.nix b/pkgs/development/libraries/languagemachines/test.nix
new file mode 100644
index 00000000000..48c41ac52f2
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/test.nix
@@ -0,0 +1,25 @@
+{ runCommand
+, languageMachines
+}:
+
+runCommand "frog-test" {} ''
+  ${languageMachines.frog}/bin/frog >$out <<EOF
+  Dit is een test
+  
+  EOF
+  echo "Frog output:"
+  cat $out
+
+  expected () {
+    echo "Test expectation failed: $@"
+    exit 1
+  }
+
+  lines="$(wc -l $out | awk '{print $1}')"
+  test 5 = $lines || expected "Five lines of output"
+  grep "is" $out | grep "zijn" >/dev/null || expected "Stemming works"
+  grep "een" $out | grep "onbep" >/dev/null || expected "Tagging works"
+
+  deps="$(echo $(awk 'BEGIN { FS = "\t*" } ; {print $1 " -> " $9 "; "}' <$out))"
+  test "1 -> 2; 2 -> 0; 3 -> 4; 4 -> 2; -> ;" = "$deps" || expected "Dependency parsing works"
+''
diff --git a/pkgs/development/libraries/languagemachines/ticcutils.nix b/pkgs/development/libraries/languagemachines/ticcutils.nix
new file mode 100644
index 00000000000..f1cb62e6802
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/ticcutils.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, zlib, bzip2, libtar }:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-ticcutils.json);
+in
+
+stdenv.mkDerivation {
+  name = "ticcutils";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "ticcutils-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive libxml2
+                  # optional:
+                  zlib bzip2 libtar
+                  # broken but optional: boost
+                ];
+  preConfigure = "sh bootstrap.sh";
+
+  meta = with stdenv.lib; {
+    description = "This module contains useful functions for general use in the TiCC software stack and beyond.";
+    homepage    = https://github.com/LanguageMachines/ticcutils;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/timbl.nix b/pkgs/development/libraries/languagemachines/timbl.nix
new file mode 100644
index 00000000000..6a60996dc60
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/timbl.nix
@@ -0,0 +1,36 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-timbl.json);
+in
+
+stdenv.mkDerivation {
+  name = "timbl";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "timbl-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                  libxml2
+                  languageMachines.ticcutils
+                ];
+  preConfigure = "sh bootstrap.sh";
+
+  meta = with stdenv.lib; {
+    description = "TiMBL implements several memory-based learning algorithms";
+    homepage    = https://github.com/LanguageMachines/timbl/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      TiMBL is an open source software package implementing several memory-based learning algorithms, among which IB1-IG, an implementation of k-nearest neighbor classification with feature weighting suitable for symbolic feature spaces, and IGTree, a decision-tree approximation of IB1-IG. All implemented algorithms have in common that they store some representation of the training set explicitly in memory. During testing, new cases are classified by extrapolation from the most similar stored cases.
+
+      For over fifteen years TiMBL has been mostly used in natural language processing as a machine learning classifier component, but its use extends to virtually any supervised machine learning domain. Due to its particular decision-tree-based implementation, TiMBL is in many cases far more efficient in classification than a standard k-nearest neighbor algorithm would be.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/timblserver.nix b/pkgs/development/libraries/languagemachines/timblserver.nix
new file mode 100644
index 00000000000..d8659c9a86b
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/timblserver.nix
@@ -0,0 +1,37 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-timblserver.json);
+in
+
+stdenv.mkDerivation {
+  name = "timblserver";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "timblserver-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                  libxml2
+                  languageMachines.ticcutils
+                  languageMachines.timbl
+                ];
+  preConfigure = "sh bootstrap.sh";
+
+  meta = with stdenv.lib; {
+    description = "This server for TiMBL implements several memory-based learning algorithms";
+    homepage    = https://github.com/LanguageMachines/timblserver/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      This implements a server for TiMBL. TiMBL is an open source software package implementing several memory-based learning algorithms, among which IB1-IG, an implementation of k-nearest neighbor classification with feature weighting suitable for symbolic feature spaces, and IGTree, a decision-tree approximation of IB1-IG. All implemented algorithms have in common that they store some representation of the training set explicitly in memory. During testing, new cases are classified by extrapolation from the most similar stored cases.
+
+      For over fifteen years TiMBL has been mostly used in natural language processing as a machine learning classifier component, but its use extends to virtually any supervised machine learning domain. Due to its particular decision-tree-based implementation, TiMBL is in many cases far more efficient in classification than a standard k-nearest neighbor algorithm would be.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/ucto.nix b/pkgs/development/libraries/languagemachines/ucto.nix
new file mode 100644
index 00000000000..d60bca41272
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/ucto.nix
@@ -0,0 +1,48 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, icu
+, languageMachines
+}:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-ucto.json);
+in
+
+stdenv.mkDerivation {
+  name = "ucto";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "ucto-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive
+                  icu libxml2
+                  languageMachines.ticcutils
+                  languageMachines.libfolia
+                  languageMachines.uctodata
+                  # TODO textcat from libreoffice? Pulls in X11 dependencies?
+                ];
+  preConfigure = "sh bootstrap.sh;";
+
+  postInstall = ''
+    # ucto expects the data files installed in the same prefix
+    mkdir -p $out/share/ucto/;
+    for f in ${languageMachines.uctodata}/share/ucto/*; do
+      echo "Linking $f"
+      ln -s $f $out/share/ucto/;
+    done;
+  '';
+
+  meta = with stdenv.lib; {
+    description = "A rule-based tokenizer for natural language";
+    homepage    = https://languagemachines.github.io/ucto/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      Ucto tokenizes text files: it separates words from punctuation, and splits sentences. It offers several other basic preprocessing steps such as changing case that you can all use to make your text suited for further processing such as indexing, part-of-speech tagging, or machine translation.
+
+      Ucto comes with tokenisation rules for several languages and can be easily extended to suit other languages. It has been incorporated for tokenizing Dutch text in Frog, a Dutch morpho-syntactic processor.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/uctodata.nix b/pkgs/development/libraries/languagemachines/uctodata.nix
new file mode 100644
index 00000000000..33037dbb87f
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/uctodata.nix
@@ -0,0 +1,32 @@
+{ stdenv, fetchurl
+, automake, autoconf, libtool, pkgconfig, autoconf-archive
+, libxml2, icu
+, languageMachines }:
+
+let
+  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-uctodata.json);
+in
+
+stdenv.mkDerivation {
+  name = "uctodata";
+  version = release.version;
+  src = fetchurl { inherit (release) url sha256;
+                   name = "uctodata-${release.version}.tar.gz"; };
+  buildInputs = [ automake autoconf libtool pkgconfig autoconf-archive ];
+  preConfigure = "sh bootstrap.sh";
+
+  meta = with stdenv.lib; {
+    description = "A rule-based tokenizer for natural language";
+    homepage    = https://languagemachines.github.io/ucto/;
+    license     = licenses.gpl3;
+    platforms   = platforms.all;
+    maintainers = with maintainers; [ roberth ];
+
+    longDescription = ''
+      Ucto tokenizes text files: it separates words from punctuation, and splits sentences. It offers several other basic preprocessing steps such as changing case that you can all use to make your text suited for further processing such as indexing, part-of-speech tagging, or machine translation.
+
+      Ucto comes with tokenisation rules for several languages and can be easily extended to suit other languages. It has been incorporated for tokenizing Dutch text in Frog, a Dutch morpho-syntactic processor.
+    '';
+  };
+
+}
diff --git a/pkgs/development/libraries/languagemachines/update b/pkgs/development/libraries/languagemachines/update
new file mode 100755
index 00000000000..3189637df74
--- /dev/null
+++ b/pkgs/development/libraries/languagemachines/update
@@ -0,0 +1,79 @@
+#!/usr/bin/env nix-shell
+#!nix-shell --packages curl
+#!nix-shell --packages jq
+#!nix-shell --packages parallel
+#!nix-shell -i bash
+
+# Exit immediately if a command exits with a non-zero status.
+# Exit when a producer fails in a pipe
+# Treat undefined variable references as errors
+set -e -o pipefail -u
+
+# Check if working directory is (probably) right
+test "./update" = $0 || {
+    echo "The working directory ought to be the same is the update script location. Please invoke as ./update" 1>&2
+    exit 1
+}
+
+# Create temporary directory with automatic cleanup
+readonly MY_TMP="$(mktemp -d)"
+cleanup () {
+    rm -rf "$MY_TMP"
+}
+trap cleanup EXIT
+
+# stdout: file containing release info and a convenient placeholder
+# for the sha256 attribute
+getRelease () {
+    local owner="$1"
+    local repo="$2"
+    local out="$MY_TMP/$owner--$repo-release"
+    curl -fSs https://api.github.com/repos/"$owner"/"$repo"/releases/latest \
+        | jq '{ version: .name, url: .tarball_url, sha256: "__SHA256__" }' \
+             > "$out"
+    echo "$out"
+}
+
+# 'getters' for the release info file
+
+# stdout: unquoted tarball url
+releaseUrl () {
+    local file="$1"
+    jq -r '.url' <"$file"
+}
+
+# stdout: unquoted version
+releaseVersion () {
+    local file="$1"
+    jq -r '.version' <"$file"
+}
+
+# Fetch release tarball and compute hash
+# stdout: base32 sha256 to be used in fetchurl
+getReleaseHash () {
+    local file="$1"
+    local name="$2"
+    nix-prefetch-url "$(releaseUrl "$file")" --name "$name-$(releaseVersion "$file").tar.gz"
+}
+
+# Write a release info file to release-info/$owner-$repo.json
+updateRelease () {
+    local owner="$1"
+    local repo="$2"
+    local r="$(getRelease "$owner" "$repo")"
+    local hash="$(getReleaseHash "$r" "$repo")"
+    sed \
+      -e s/__SHA256__/"$hash"/\
+      <"$r" \
+      >"release-info/$owner-$repo.json"
+}
+
+updateRelease LanguageMachines frogdata
+updateRelease LanguageMachines frog
+updateRelease LanguageMachines libfolia
+updateRelease LanguageMachines mbt
+updateRelease LanguageMachines ticcutils
+updateRelease LanguageMachines timbl
+updateRelease LanguageMachines timblserver
+updateRelease LanguageMachines ucto
+updateRelease LanguageMachines uctodata
diff --git a/pkgs/development/libraries/libebml/default.nix b/pkgs/development/libraries/libebml/default.nix
index 40d80329291..4b233301cce 100644
--- a/pkgs/development/libraries/libebml/default.nix
+++ b/pkgs/development/libraries/libebml/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl }:
 
 stdenv.mkDerivation rec {
-  name = "libebml-1.3.4";
+  name = "libebml-1.3.5";
 
   src = fetchurl {
-    url = "http://dl.matroska.org/downloads/libebml/${name}.tar.bz2";
-    sha256 = "11zka6z9ncywyjr1gfm5cnii33ln7y3w6s86kiacchip2g7kw3f5";
+    url = "http://dl.matroska.org/downloads/libebml/${name}.tar.xz";
+    sha256 = "005a0ipqnfbsq47zrc61zszi439jw32q5xd6dc1jyb3lc0zl266q";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix
index 5bcb8c5fe98..732f3710563 100644
--- a/pkgs/development/libraries/libgcrypt/default.nix
+++ b/pkgs/development/libraries/libgcrypt/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, libgpgerror, enableCapabilities ? false, libcap }:
+{ stdenv, fetchurl, fetchpatch, libgpgerror, enableCapabilities ? false, libcap }:
 
 assert enableCapabilities -> stdenv.isLinux;
 
@@ -22,6 +22,15 @@ stdenv.mkDerivation rec {
   buildInputs = [ libgpgerror ]
     ++ stdenv.lib.optional enableCapabilities libcap;
 
+  # Shouldn't be needed after 1.8.1
+  patches = if stdenv.isArm && stdenv.system != "armv7l-linux"
+    then fetchpatch {
+        url = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=patch;h=4a7aa30ae9f3ce798dd886c2f2d4164c43027748";
+        name = "arm.patch";
+        sha256 = "1dq9s0xwpbg7s5sghvssmwh4v88x733zm6c8ab3flllq8h7c8fq5";
+      }
+    else null;
+
   # Make sure libraries are correct for .pc and .la files
   # Also make sure includes are fixed for callers who don't use libgpgcrypt-config
   postFixup = ''
diff --git a/pkgs/development/libraries/libhttpseverywhere/default.nix b/pkgs/development/libraries/libhttpseverywhere/default.nix
index 239536140ec..88a3ebbc4fb 100644
--- a/pkgs/development/libraries/libhttpseverywhere/default.nix
+++ b/pkgs/development/libraries/libhttpseverywhere/default.nix
@@ -15,18 +15,6 @@ stdenv.mkDerivation rec {
   nativeBuildInputs = [ gnome3.vala valadoc  gobjectIntrospection meson ninja pkgconfig ];
   buildInputs = [ glib gnome3.libgee libxml2 json_glib libsoup libarchive ];
 
-  configurePhase = ''
-    mkdir build
-    cd build
-    meson --prefix "$out" ..
-  '';
-
-  buildPhase = ''
-    ninja
-   '';
-
-  installPhase = "ninja install";
-
   doCheck = true;
 
   checkPhase = "./httpseverywhere_test";
diff --git a/pkgs/development/libraries/libmusicbrainz/2.x.nix b/pkgs/development/libraries/libmusicbrainz/2.x.nix
deleted file mode 100644
index f12b854e778..00000000000
--- a/pkgs/development/libraries/libmusicbrainz/2.x.nix
+++ /dev/null
@@ -1,27 +0,0 @@
-{ stdenv, fetchurl, expat }:
-
-stdenv.mkDerivation rec {
-  name = "libmusicbrainz-2.1.5";
-
-  configureFlags = "--enable-cpp-headers";
-
-  buildInputs = [ expat ];
-
-  patches = [ ./gcc-4.x.patch ];
-
-  src = fetchurl {
-    url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/${name}.tar.gz";
-    sha256 = "183i4c109r5qx3mk4r986sx5xw4n5mdhdz4yz3rrv3s2xm5rqqn6";
-  };
-
-  meta = {
-    homepage = http://musicbrainz.org/doc/libmusicbrainz;
-    description = "MusicBrainz Client Library (deprecated 2.x version)";
-    longDescription = ''
-      The libmusicbrainz (also known as mb_client or MusicBrainz Client
-      Library) is a development library geared towards developers who wish to
-      add MusicBrainz lookup capabilities to their applications.'';
-    maintainers = [ ];
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libmusicbrainz/gcc-4.x.patch b/pkgs/development/libraries/libmusicbrainz/gcc-4.x.patch
deleted file mode 100644
index f55c4f2cd41..00000000000
--- a/pkgs/development/libraries/libmusicbrainz/gcc-4.x.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-diff --git a/lib/c_wrapper.cpp b/lib/c_wrapper.cpp
-index deae11d..ebc7854 100644
---- a/lib/c_wrapper.cpp
-+++ b/lib/c_wrapper.cpp
-@@ -24,6 +24,7 @@
- #include "musicbrainz.h"
- #include "trm.h"
- #include "mb_c.h"
-+#include <string.h>
- 
- extern "C"
- {
-diff --git a/lib/comhttpsocket.cpp b/lib/comhttpsocket.cpp
-index 067313b..4371772 100644
---- a/lib/comhttpsocket.cpp
-+++ b/lib/comhttpsocket.cpp
-@@ -20,6 +20,7 @@
- #endif
- #include <stdlib.h>
- #include <assert.h>
-+#include <string.h>
- 
- const char* g_strCOMVer = "libmusicbrainz/"VERSION;
- 
-diff --git a/lib/comsocket.cpp b/lib/comsocket.cpp
-index 01a94be..7bfc4dd 100644
---- a/lib/comsocket.cpp
-+++ b/lib/comsocket.cpp
-@@ -44,6 +44,7 @@ ____________________________________________________________________________*/
- #include <net/if.h>
- #include <sys/ioctl.h>
- #endif
-+#include <string.h>
- 
- #define mb_socklen_t ACCEPT_ARG3
- 
-diff --git a/lib/http.cpp b/lib/http.cpp
-index 85390a3..e63713c 100644
---- a/lib/http.cpp
-+++ b/lib/http.cpp
-@@ -67,6 +67,7 @@
- #ifdef __QNX__
- #include <strings.h>
- #endif
-+#include <string.h>
- 
- using namespace std;
- 
-diff --git a/lib/sigclient.cpp b/lib/sigclient.cpp
-index 9f76008..4bbbaae 100644
---- a/lib/sigclient.cpp
-+++ b/lib/sigclient.cpp
-@@ -32,6 +32,7 @@ email                : ijr@relatable.com
- #ifdef WIN32
- #pragma warning(disable:4786)
- #endif
-+#include <string.h>
- 
- #include "sigclient.h"
- #include "comhttpsocket.h"
diff --git a/pkgs/development/libraries/libsigsegv/2.5.nix b/pkgs/development/libraries/libsigsegv/2.5.nix
index 0712ba92f60..fd453defe71 100644
--- a/pkgs/development/libraries/libsigsegv/2.5.nix
+++ b/pkgs/development/libraries/libsigsegv/2.5.nix
@@ -1,4 +1,6 @@
-{ stdenv, fetchurl }:
+{ stdenv, fetchurl
+, enableSigbusFix ? false # required by kernels < 3.18.6
+}:
 
 stdenv.mkDerivation rec {
   name = "libsigsegv-2.5";
@@ -8,6 +10,8 @@ stdenv.mkDerivation rec {
     sha256 = "0fvcsq9msi63vrbpvks6mqkrnls5cfy6bzww063sqhk2h49vsyyg";
   };
 
+  patches = stdenv.lib.optional enableSigbusFix ./sigbus_fix.patch;
+
   meta = {
     homepage = http://libsigsegv.sf.net;
     description = "A library for handling page faults in user mode";
diff --git a/pkgs/development/libraries/libsigsegv/default.nix b/pkgs/development/libraries/libsigsegv/default.nix
index 961b3b2d883..8e1079bfbc8 100644
--- a/pkgs/development/libraries/libsigsegv/default.nix
+++ b/pkgs/development/libraries/libsigsegv/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl
 , buildPlatform, hostPlatform
+, enableSigbusFix ? false # required by kernels < 3.18.6
 }:
 
 stdenv.mkDerivation rec {
@@ -10,6 +11,8 @@ stdenv.mkDerivation rec {
     sha256 = "063swdvq7mbmc1clv0rnh20grwln1zfc2qnm0sa1hivcxyr2wz6x";
   };
 
+  patches = if enableSigbusFix then [ ./sigbus_fix.patch ] else null;
+
   doCheck = hostPlatform == buildPlatform;
 
   meta = {
diff --git a/pkgs/development/libraries/libsigsegv/sigbus_fix.patch b/pkgs/development/libraries/libsigsegv/sigbus_fix.patch
new file mode 100644
index 00000000000..6f1c399041d
--- /dev/null
+++ b/pkgs/development/libraries/libsigsegv/sigbus_fix.patch
@@ -0,0 +1,8 @@
+--- a/src/signals.h	2017-08-23 14:07:05.000000000 +0100
++++ b/src/signals.h	2017-08-23 14:06:53.000000000 +0100
+@@ -18,4 +18,4 @@
+ /* List of signals that are sent when an invalid virtual memory address
+    is accessed, or when the stack overflows.  */
+ #define SIGSEGV_FOR_ALL_SIGNALS(var,body) \
+-  { int var; var = SIGSEGV; { body } }
++  { int var; var = SIGSEGV; { body } var = SIGBUS; { body } }
diff --git a/pkgs/development/libraries/libtunepimp/default.nix b/pkgs/development/libraries/libtunepimp/default.nix
deleted file mode 100644
index 061b2cfedfb..00000000000
--- a/pkgs/development/libraries/libtunepimp/default.nix
+++ /dev/null
@@ -1,28 +0,0 @@
-{ stdenv, fetchurl, zlib, expat, curl, libmusicbrainz2, taglib, libmpcdec,
-  libmad, libogg, libvorbis, flac, mp4v2, libofa, libtool }:
-
-stdenv.mkDerivation rec {
-  name = "libtunepimp-0.5.3";
-
-  outputs = [ "out" "lib" "dev" ];
-
-  setOutputFlags = false;
-
-  preConfigure = ''
-    configureFlagsArray=(--includedir=$dev/include --libdir=$lib/lib)
-  '';
-
-  propagatedBuildInputs = [ zlib expat curl libmusicbrainz2 taglib libmpcdec
-    libmad libogg libvorbis flac libofa libtool ];
-
-  patches = [ ./gcc-4.x.patch ];
-
-  src = fetchurl {
-    url = "ftp://ftp.musicbrainz.org/pub/musicbrainz/${name}.tar.gz";
-    sha256 = "0s141zmsxv8xlivcgcmy6xhk9cyjjxmr1fy45xiqfqrqpsh485rl";
-  };
-
-  meta = {
-    platforms = stdenv.lib.platforms.linux;
-  };
-}
diff --git a/pkgs/development/libraries/libtunepimp/gcc-4.x.patch b/pkgs/development/libraries/libtunepimp/gcc-4.x.patch
deleted file mode 100644
index aed742b0490..00000000000
--- a/pkgs/development/libraries/libtunepimp/gcc-4.x.patch
+++ /dev/null
@@ -1,237 +0,0 @@
-diff -rc libtunepimp-0.5.3/include/tunepimp-0.5/metadata.h libtunepimp-0.5.3-new/include/tunepimp-0.5/metadata.h
-*** libtunepimp-0.5.3/include/tunepimp-0.5/metadata.h	2006-11-18 05:52:08.000000000 -0500
---- libtunepimp-0.5.3-new/include/tunepimp-0.5/metadata.h	2011-11-06 09:00:14.816684749 -0500
-***************
-*** 29,34 ****
---- 29,35 ----
-  
-  #include <string>
-  #include <cstdio>
-+ #include <cstring>
-  
-  #include "defs.h"
-  #include "tp_c.h"
-diff -rc libtunepimp-0.5.3/lib/c_wrapper.cpp libtunepimp-0.5.3-new/lib/c_wrapper.cpp
-*** libtunepimp-0.5.3/lib/c_wrapper.cpp	2006-11-18 05:52:33.000000000 -0500
---- libtunepimp-0.5.3-new/lib/c_wrapper.cpp	2011-11-06 09:00:14.816684749 -0500
-***************
-*** 43,48 ****
---- 43,49 ----
-                           if (obj == NULL) return;
-  
-  #include <deque>
-+ #include <cstdlib>
-  
-  class NotifyData
-  {
-diff -rc libtunepimp-0.5.3/lib/fileio.cpp libtunepimp-0.5.3-new/lib/fileio.cpp
-*** libtunepimp-0.5.3/lib/fileio.cpp	2006-11-18 05:52:33.000000000 -0500
---- libtunepimp-0.5.3-new/lib/fileio.cpp	2011-11-06 09:00:14.816684749 -0500
-***************
-*** 27,32 ****
---- 27,34 ----
-  
-  #include <assert.h>
-  #include <errno.h>
-+ #include <string.h>
-+ #include <stdlib.h>
-  #include <string>
-  #ifndef WIN32
-  #include <unistd.h>
-***************
-*** 122,128 ****
-  
-  void tmktempname(const char *path, char *newPath, int newPathLen)
-  {
-!     char *ptr, *temp;
-  
-      temp = (char *)malloc(strlen(path) + 32);
-      ptr = strrchr(path, dirSepChar);
---- 124,131 ----
-  
-  void tmktempname(const char *path, char *newPath, int newPathLen)
-  {
-!     char *temp;
-! 	const char *ptr;
-  
-      temp = (char *)malloc(strlen(path) + 32);
-      ptr = strrchr(path, dirSepChar);
-diff -rc libtunepimp-0.5.3/lib/metadata.cpp libtunepimp-0.5.3-new/lib/metadata.cpp
-*** libtunepimp-0.5.3/lib/metadata.cpp	2006-11-18 05:52:33.000000000 -0500
---- libtunepimp-0.5.3-new/lib/metadata.cpp	2011-11-06 09:00:14.817684754 -0500
-***************
-*** 24,31 ****
-     $Id: metadata.cpp 8359 2006-08-07 20:34:50Z luks $
-  
-  ----------------------------------------------------------------------------*/
-! #include <math.h>
-! #include <stdio.h>
-  #include "metadata.h"
-  #include "../config.h"
-  using namespace std;
---- 24,32 ----
-     $Id: metadata.cpp 8359 2006-08-07 20:34:50Z luks $
-  
-  ----------------------------------------------------------------------------*/
-! #include <cmath>
-! #include <cstdio>
-! #include <cstdlib>
-  #include "metadata.h"
-  #include "../config.h"
-  using namespace std;
-diff -rc libtunepimp-0.5.3/lib/protocol.cpp libtunepimp-0.5.3-new/lib/protocol.cpp
-*** libtunepimp-0.5.3/lib/protocol.cpp	2006-11-28 15:25:04.000000000 -0500
---- libtunepimp-0.5.3-new/lib/protocol.cpp	2011-11-06 09:00:23.281742454 -0500
-***************
-*** 8,18 ****
-  -------------------------------------------------------------------*/
-  #include <stdio.h>
-  #include <stdlib.h>
-  #include <string>
-  #include <map>
-  #include <expat.h>
-  #include <curl/curl.h>
-- #include <curl/types.h>
-  #include <curl/easy.h>
-  using namespace std;
-  
---- 8,18 ----
-  -------------------------------------------------------------------*/
-  #include <stdio.h>
-  #include <stdlib.h>
-+ #include <string.h>
-  #include <string>
-  #include <map>
-  #include <expat.h>
-  #include <curl/curl.h>
-  #include <curl/easy.h>
-  using namespace std;
-  
-diff -rc libtunepimp-0.5.3/lib/readmeta.cpp libtunepimp-0.5.3-new/lib/readmeta.cpp
-*** libtunepimp-0.5.3/lib/readmeta.cpp	2006-11-18 05:52:33.000000000 -0500
---- libtunepimp-0.5.3-new/lib/readmeta.cpp	2011-11-06 09:00:14.817684754 -0500
-***************
-*** 30,36 ****
-  #endif
-  #endif
-  
-! #include <stdio.h>
-  #ifndef WIN32
-  #include <unistd.h>
-  #endif
---- 30,37 ----
-  #endif
-  #endif
-  
-! #include <cstdio>
-! #include <cstdlib>
-  #ifndef WIN32
-  #include <unistd.h>
-  #endif
-diff -rc libtunepimp-0.5.3/lib/tunepimp.cpp libtunepimp-0.5.3-new/lib/tunepimp.cpp
-*** libtunepimp-0.5.3/lib/tunepimp.cpp	2006-11-18 05:52:33.000000000 -0500
---- libtunepimp-0.5.3-new/lib/tunepimp.cpp	2011-11-06 09:00:14.818684760 -0500
-***************
-*** 30,36 ****
-  #endif
-  #endif
-  
-! #include <stdio.h>
-  #include <map>
-  using namespace std;
-  
---- 30,37 ----
-  #endif
-  #endif
-  
-! #include <cstdio>
-! #include <cstdlib>
-  #include <map>
-  using namespace std;
-  
-diff -rc libtunepimp-0.5.3/lib/utf8/utf8util.cpp libtunepimp-0.5.3-new/lib/utf8/utf8util.cpp
-*** libtunepimp-0.5.3/lib/utf8/utf8util.cpp	2006-11-18 05:52:26.000000000 -0500
---- libtunepimp-0.5.3-new/lib/utf8/utf8util.cpp	2011-11-06 09:00:14.818684760 -0500
-***************
-*** 26,31 ****
---- 26,32 ----
-  ----------------------------------------------------------------------------*/
-  
-  #include <stdio.h>
-+ #include <stdlib.h>
-  #include "utf8util.h"
-  #include "utf8.h"
-  #ifdef WIN32
-diff -rc libtunepimp-0.5.3/plugins/mp3/id3_2_3_meta.cpp libtunepimp-0.5.3-new/plugins/mp3/id3_2_3_meta.cpp
-*** libtunepimp-0.5.3/plugins/mp3/id3_2_3_meta.cpp	2006-11-18 05:51:07.000000000 -0500
---- libtunepimp-0.5.3-new/plugins/mp3/id3_2_3_meta.cpp	2011-11-06 09:00:14.818684760 -0500
-***************
-*** 26,31 ****
---- 26,32 ----
-  ----------------------------------------------------------------------------*/
-  
-  #include <stdio.h>
-+ #include <stdlib.h>
-  #include <assert.h>
-  #include <ctype.h>
-  #include <musicbrainz/mb_c.h>
-diff -rc libtunepimp-0.5.3/plugins/mp3/id3_meta.cpp libtunepimp-0.5.3-new/plugins/mp3/id3_meta.cpp
-*** libtunepimp-0.5.3/plugins/mp3/id3_meta.cpp	2006-11-18 05:51:07.000000000 -0500
---- libtunepimp-0.5.3-new/plugins/mp3/id3_meta.cpp	2011-11-06 09:00:14.818684760 -0500
-***************
-*** 26,31 ****
---- 26,32 ----
-  ----------------------------------------------------------------------------*/
-  
-  #include <stdio.h>
-+ #include <stdlib.h>
-  #include <time.h>
-  #include <ctype.h>
-  #include <musicbrainz/mb_c.h>
-diff -rc libtunepimp-0.5.3/plugins/mp4/mp4.cpp libtunepimp-0.5.3-new/plugins/mp4/mp4.cpp
-*** libtunepimp-0.5.3/plugins/mp4/mp4.cpp	2006-11-18 05:51:08.000000000 -0500
---- libtunepimp-0.5.3-new/plugins/mp4/mp4.cpp	2011-11-06 09:00:14.819684766 -0500
-***************
-*** 27,33 ****
-  
-  #include <string.h>
-  #include <stdio.h>
-! #include <mp4.h>
-  #include "metadata.h"
-  #include "plugin.h"
-  #ifndef WIN32
---- 27,34 ----
-  
-  #include <string.h>
-  #include <stdio.h>
-! #include <stdlib.h>
-! #include <mp4v2/mp4v2.h>
-  #include "metadata.h"
-  #include "plugin.h"
-  #ifndef WIN32
-diff -rc libtunepimp-0.5.3/plugins/wma/wma.cpp libtunepimp-0.5.3-new/plugins/wma/wma.cpp
-*** libtunepimp-0.5.3/plugins/wma/wma.cpp	2006-11-18 05:51:28.000000000 -0500
---- libtunepimp-0.5.3-new/plugins/wma/wma.cpp	2011-11-06 09:00:14.819684766 -0500
-***************
-*** 27,32 ****
---- 27,33 ----
-  
-  #include <string.h>
-  #include <stdio.h>
-+ #include <stdlib.h>
-  #include <wmafile.h>
-  #include "metadata.h"
-  #include "plugin.h"
-diff -rc libtunepimp-0.5.3/plugins/wma/wmafile.cpp libtunepimp-0.5.3-new/plugins/wma/wmafile.cpp
-*** libtunepimp-0.5.3/plugins/wma/wmafile.cpp	2006-11-18 05:51:28.000000000 -0500
---- libtunepimp-0.5.3-new/plugins/wma/wmafile.cpp	2011-11-06 09:00:14.819684766 -0500
-***************
-*** 19,24 ****
---- 19,25 ----
-   *   USA                                                                   *
-   ***************************************************************************/
-  
-+ #include <string.h>
-  #include <tstring.h>
-  #include <wmafile.h>
-  #include <wmatag.h>
diff --git a/pkgs/development/libraries/log4cxx/default.nix b/pkgs/development/libraries/log4cxx/default.nix
index 7e5a62e63f4..ac0b7bf6834 100644
--- a/pkgs/development/libraries/log4cxx/default.nix
+++ b/pkgs/development/libraries/log4cxx/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, autoconf, automake, libtool, libxml2, cppunit, boost
+{ stdenv, fetchurl, libtool, libxml2, cppunit, boost
 , apr, aprutil, db, expat
 }:
 
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
     sha256 = "130cjafck1jlqv92mxbn47yhxd2ccwwnprk605c6lmm941i3kq0d";
   };
 
+  patches = [
+    # adapted from upstream commit; will be fixed in next version
+    ./narrowing-fixes.patch
+  ];
+
   postPatch = ''
     sed -i -e '1,/^#include/ {
       /^#include/i \
@@ -21,11 +26,12 @@ stdenv.mkDerivation rec {
        src/main/cpp/inputstreamreader.cpp \
        src/main/cpp/socketoutputstream.cpp
   '' + stdenv.lib.optionalString stdenv.isDarwin ''
-  sed -i 's/namespace std { class locale; }/#include <locale>/' src/main/include/log4cxx/helpers/simpledateformat.h
-  sed -i 's/\(#include <cctype>\)/\1\n#include <cstdlib>/' src/main/cpp/stringhelper.cpp
+    sed -i 's/namespace std { class locale; }/#include <locale>/' src/main/include/log4cxx/helpers/simpledateformat.h
+    sed -i 's/\(#include <cctype>\)/\1\n#include <cstdlib>/' src/main/cpp/stringhelper.cpp
   '';
 
-  buildInputs = [autoconf automake libtool libxml2 cppunit boost apr aprutil db expat];
+  buildInputs = [ libxml2 cppunit boost apr aprutil db expat ];
+  nativeBuildInputs = [ libtool ];
 
   meta = {
     homepage = http://logging.apache.org/log4cxx/index.html;
diff --git a/pkgs/development/libraries/log4cxx/narrowing-fixes.patch b/pkgs/development/libraries/log4cxx/narrowing-fixes.patch
new file mode 100644
index 00000000000..e583e7661d1
--- /dev/null
+++ b/pkgs/development/libraries/log4cxx/narrowing-fixes.patch
@@ -0,0 +1,117 @@
+diff --git a/src/main/cpp/locationinfo.cpp b/src/main/cpp/locationinfo.cpp
+index e76ea29..bd22a1d 100644
+--- a/src/main/cpp/locationinfo.cpp
++++ b/src/main/cpp/locationinfo.cpp
+@@ -149,18 +149,21 @@ void LocationInfo::write(ObjectOutputStream& os, Pool& p) const {
+          os.writeNull(p);
+     } else {
+         char prolog[] = {
+-         0x72, 0x00, 0x21, 0x6F, 0x72, 0x67, 0x2E, 
+-         0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2E, 0x6C, 
+-         0x6F, 0x67, 0x34, 0x6A, 0x2E, 0x73, 0x70, 0x69, 
+-         0x2E, 0x4C, 0x6F, 0x63, 0x61, 0x74, 0x69, 0x6F, 
+-         0x6E, 0x49, 0x6E, 0x66, 0x6F, 0xED, 0x99, 0xBB, 
+-         0xE1, 0x4A, 0x91, 0xA5, 0x7C, 0x02, 0x00, 0x01, 
+-         0x4C, 0x00, 0x08, 0x66, 0x75, 0x6C, 0x6C, 0x49, 
+-         0x6E, 0x66, 0x6F, 
+-            0x74, 0x00, 0x12, 0x4C, 0x6A, 
+-                0x61, 0x76, 0x61, 0x2F, 0x6C, 0x61, 0x6E, 0x67, 
+-                0x2F, 0x53, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x3B,
+-         0x78, 0x70 };
++         0x72,
++         0x00,
++         0x21, 0x6F, 0x72, 0x67, 0x2E, 0x61, 0x70, 0x61, 0x63, 0x68, 0x65, 0x2E,
++         0x6C, 0x6F, 0x67, 0x34, 0x6A, 0x2E, 0x73, 0x70, 0x69, 0x2E, 0x4C, 0x6F,
++         0x63, 0x61, 0x74, 0x69, 0x6F, 0x6E, 0x49, 0x6E, 0x66, 0x6F, static_cast<char>(0xED),
++         static_cast<char>(0x99), static_cast<char>(0xBB), static_cast<char>(0xE1),
++         0x4A, static_cast<char>(0x91), static_cast<char>(0xA5), 0x7C, 0x02,
++         0x00,
++         0x01, 0x4C,
++         0x00,
++         0x08, 0x66, 0x75, 0x6C, 0x6C, 0x49, 0x6E, 0x66, 0x6F, 0x74,
++         0x00,
++         0x12, 0x4C, 0x6A, 0x61, 0x76, 0x61, 0x2F, 0x6C, 0x61, 0x6E, 0x67, 0x2F,
++         0x53, 0x74, 0x72, 0x69, 0x6E, 0x67, 0x3B, 0x78, 0x70
++        };
+       os.writeProlog("org.apache.log4j.spi.LocationInfo", 2, prolog, sizeof(prolog), p);
+         char* line = p.itoa(lineNumber);
+         //
+diff --git a/src/main/cpp/loggingevent.cpp b/src/main/cpp/loggingevent.cpp
+index 1c0d4be..edbf40b 100644
+--- a/src/main/cpp/loggingevent.cpp
++++ b/src/main/cpp/loggingevent.cpp
+@@ -242,7 +242,7 @@ void LoggingEvent::writeProlog(ObjectOutputStream& os, Pool& p)  {
+         0x68, 0x65, 0x2E, 0x6C, 0x6F, 0x67, 0x34, 0x6A, 
+         0x2E, 0x73, 0x70, 0x69, 0x2E, 0x4C, 0x6F, 0x67, 
+         0x67, 0x69, 0x6E, 0x67, 0x45, 0x76, 0x65, 0x6E, 
+-        0x74, 0xF3, 0xF2, 0xB9, 0x23, 0x74, 0x0B, 0xB5, 
++        0x74, static_cast<char>(0xF3), static_cast<char>(0xF2), static_cast<char>(0xB9), 0x23, 0x74, 0x0B, static_cast<char>(0xB5), 
+         0x3F, 0x03, 0x00, 0x0A, 0x5A, 0x00, 0x15, 0x6D, 
+         0x64, 0x63, 0x43, 0x6F, 0x70, 0x79, 0x4C, 0x6F, 
+         0x6F, 0x6B, 0x75, 0x70, 0x52, 0x65, 0x71, 0x75, 
+diff --git a/src/main/cpp/objectoutputstream.cpp b/src/main/cpp/objectoutputstream.cpp
+index 7cd696b..5442420 100644
+--- a/src/main/cpp/objectoutputstream.cpp
++++ b/src/main/cpp/objectoutputstream.cpp
+@@ -36,7 +36,7 @@ ObjectOutputStream::ObjectOutputStream(OutputStreamPtr outputStream, Pool& p)
+        objectHandle(0x7E0000),
+        classDescriptions(new ClassDescriptionMap())
+ {
+-   char start[] = { 0xAC, 0xED, 0x00, 0x05 };
++   char start[] = { static_cast<char>(0xAC), static_cast<char>(0xED), 0x00, 0x05 };
+    ByteBuffer buf(start, sizeof(start));
+    os->write(buf, p);
+ }
+@@ -81,15 +81,15 @@ void ObjectOutputStream::writeObject(const MDC::Map& val, Pool& p) {
+     //
+     //  TC_OBJECT and the classDesc for java.util.Hashtable
+     //
+-    char prolog[] = {
+-        0x72, 0x00, 0x13, 0x6A, 0x61, 0x76, 0x61, 
+-        0x2E, 0x75, 0x74, 0x69, 0x6C, 0x2E, 0x48, 0x61, 
+-        0x73, 0x68, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x13, 
+-        0xBB, 0x0F, 0x25, 0x21, 0x4A, 0xE4, 0xB8, 0x03, 
+-        0x00, 0x02, 0x46, 0x00, 0x0A, 0x6C, 0x6F, 0x61, 
+-        0x64, 0x46, 0x61, 0x63, 0x74, 0x6F, 0x72, 0x49, 
+-        0x00, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 
+-        0x6F, 0x6C, 0x64, 0x78, 0x70  };
++	char prolog[] = {
++		0x72, 0x00, 0x13, 0x6A, 0x61, 0x76, 0x61,
++		0x2E, 0x75, 0x74, 0x69, 0x6C, 0x2E, 0x48, 0x61,
++		0x73, 0x68, 0x74, 0x61, 0x62, 0x6C, 0x65, 0x13,
++		static_cast<char>(0xBB), 0x0F, 0x25, 0x21, 0x4A, static_cast<char>(0xE4), static_cast<char>(0xB8), 0x03,
++		0x00, 0x02, 0x46, 0x00, 0x0A, 0x6C, 0x6F, 0x61,
++		0x64, 0x46, 0x61, 0x63, 0x74, 0x6F, 0x72, 0x49,
++		0x00, 0x09, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68,
++		0x6F, 0x6C, 0x64, 0x78, 0x70  };
+     writeProlog("java.util.Hashtable", 1, prolog, sizeof(prolog), p);
+     //
+     //   loadFactor = 0.75, threshold = 5, blockdata start, buckets.size = 7
+diff --git a/src/test/cpp/xml/domtestcase.cpp b/src/test/cpp/xml/domtestcase.cpp
+index a500628..29d67dd 100644
+--- a/src/test/cpp/xml/domtestcase.cpp
++++ b/src/test/cpp/xml/domtestcase.cpp
+@@ -190,9 +190,9 @@ public:
+                 DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase3.xml"));
+                 LOG4CXX_INFO(logger, "File name is expected to end with a superscript 3");
+ #if LOG4CXX_LOGCHAR_IS_UTF8
+-                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xC2, 0xB3, 0 };
++                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xC2), static_cast<logchar>(0xB3), 0 };
+ #else
+-                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xB3, 0 };
++                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xB3), 0 };
+ #endif
+                 File file;
+                 file.setPath(fname);
+@@ -209,9 +209,9 @@ public:
+                 DOMConfigurator::configure(LOG4CXX_TEST_STR("input/xml/DOMTestCase4.xml"));
+                 LOG4CXX_INFO(logger, "File name is expected to end with an ideographic 4");
+ #if LOG4CXX_LOGCHAR_IS_UTF8
+-                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0xE3, 0x86, 0x95, 0 };
++                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0xE3), static_cast<logchar>(0x86), static_cast<logchar>(0x95), 0 };
+ #else
+-                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, 0x3195, 0 };
++                const logchar fname[] = { 0x6F, 0x75, 0x74, 0x70, 0x75, 0x74, 0x2F, 0x64, 0x6F, 0x6D, static_cast<logchar>(0x3195), 0 };
+ #endif
+                 File file;
+                 file.setPath(fname);
\ No newline at end of file
diff --git a/pkgs/development/libraries/ppl/default.nix b/pkgs/development/libraries/ppl/default.nix
index d6e699929ba..73eda630e44 100644
--- a/pkgs/development/libraries/ppl/default.nix
+++ b/pkgs/development/libraries/ppl/default.nix
@@ -1,13 +1,13 @@
 { fetchurl, stdenv, gmpxx, perl, gnum4 }:
 
-let version = "1.1"; in
+let version = "1.2"; in
 
 stdenv.mkDerivation rec {
   name = "ppl-${version}";
 
   src = fetchurl {
     url = "http://bugseng.com/products/ppl/download/ftp/releases/${version}/ppl-${version}.tar.bz2";
-    sha256 = "1vrqhbpyca6sf984cfcwlp8wdnfzj1g7ph9958qdky9978i1nlny";
+    sha256 = "1wgxcbgmijgk11df43aiqfzv31r3bkxmgb4yl68g21194q60nird";
   };
 
   nativeBuildInputs = [ perl gnum4 ];
@@ -19,8 +19,6 @@ stdenv.mkDerivation rec {
       "--disable-ppl_lcdd" "--disable-ppl_lpsol" "--disable-ppl_pips"
     ];
 
-  patches = [ ./ppl-cstddef.patch /* from Fedora */ ];
-
   # Beware!  It took ~6 hours to compile PPL and run its tests on a 1.2 GHz
   # x86_64 box.  Nevertheless, being a dependency of GCC, it probably ought
   # to be tested.
diff --git a/pkgs/development/libraries/ppl/ppl-cstddef.patch b/pkgs/development/libraries/ppl/ppl-cstddef.patch
deleted file mode 100644
index 8c43b26bef7..00000000000
--- a/pkgs/development/libraries/ppl/ppl-cstddef.patch
+++ /dev/null
@@ -1,238 +0,0 @@
-diff -up ppl-1.1/src/Dense_Row_defs.hh.orig ppl-1.1/src/Dense_Row_defs.hh
---- ppl-1.1/src/Dense_Row_defs.hh.orig	2014-04-29 13:08:10.516682937 -0300
-+++ ppl-1.1/src/Dense_Row_defs.hh	2014-04-29 13:08:50.447684466 -0300
-@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
- #include <memory>
- #include <vector>
- #include <limits>
-+#include <cstddef>
- 
- #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
- //! A finite sequence of coefficients.
-@@ -433,7 +434,7 @@ public:
- 
-   typedef std::bidirectional_iterator_tag iterator_category;
-   typedef Coefficient value_type;
--  typedef ptrdiff_t difference_type;
-+  typedef std::ptrdiff_t difference_type;
-   typedef value_type* pointer;
-   typedef value_type& reference;
- 
-@@ -474,7 +475,7 @@ class Parma_Polyhedra_Library::Dense_Row
- public:
- 
-   typedef const Coefficient value_type;
--  typedef ptrdiff_t difference_type;
-+  typedef std::ptrdiff_t difference_type;
-   typedef value_type* pointer;
-   typedef Coefficient_traits::const_reference reference;
- 
-diff -up ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig ppl-1.1/src/Linear_Expression_Interface_defs.hh
---- ppl-1.1/src/Linear_Expression_Interface_defs.hh.orig	2014-04-29 13:08:17.337683198 -0300
-+++ ppl-1.1/src/Linear_Expression_Interface_defs.hh	2014-04-29 13:08:40.999684104 -0300
-@@ -32,6 +32,7 @@ site: http://bugseng.com/products/ppl/ .
- #include "Sparse_Row_types.hh"
- #include <vector>
- #include <set>
-+#include <cstddef>
- 
- #ifdef PPL_DOXYGEN_INCLUDE_IMPLEMENTATION_DETAILS
- //! A linear expression.
-@@ -65,7 +66,7 @@ public:
-   public:
-     typedef std::bidirectional_iterator_tag iterator_category;
-     typedef const Coefficient value_type;
--    typedef ptrdiff_t difference_type;
-+    typedef std::ptrdiff_t difference_type;
-     typedef value_type* pointer;
-     typedef Coefficient_traits::const_reference reference;
- 
-diff -up ppl-1.1/src/CO_Tree_defs.hh.orig ppl-1.1/src/CO_Tree_defs.hh
---- ppl-1.1/src/CO_Tree_defs.hh.orig	2014-04-29 13:11:33.725690719 -0300
-+++ ppl-1.1/src/CO_Tree_defs.hh	2014-04-29 13:11:55.943691569 -0300
-@@ -28,6 +28,7 @@ site: http://bugseng.com/products/ppl/ .
- 
- #include "Coefficient_defs.hh"
- #include <memory>
-+#include <cstddef>
- 
- #ifndef PPL_CO_TREE_EXTRA_DEBUG
- #ifdef PPL_ABI_BREAKING_EXTRA_DEBUG
-@@ -159,7 +160,7 @@ public:
- 
-     typedef std::bidirectional_iterator_tag iterator_category;
-     typedef const data_type value_type;
--    typedef ptrdiff_t difference_type;
-+    typedef std::ptrdiff_t difference_type;
-     typedef value_type* pointer;
-     typedef data_type_const_reference reference;
- 
-@@ -314,7 +315,7 @@ public:
- 
-     typedef std::bidirectional_iterator_tag iterator_category;
-     typedef data_type value_type;
--    typedef ptrdiff_t difference_type;
-+    typedef std::ptrdiff_t difference_type;
-     typedef value_type* pointer;
-     typedef value_type& reference;
- 
-diff -up ppl-1.1/src/CO_Tree_inlines.hh.orig ppl-1.1/src/CO_Tree_inlines.hh
---- ppl-1.1/src/CO_Tree_inlines.hh.orig	2014-04-29 13:14:12.738696808 -0300
-+++ ppl-1.1/src/CO_Tree_inlines.hh	2014-04-29 13:14:48.887698192 -0300
-@@ -24,6 +24,8 @@ site: http://bugseng.com/products/ppl/ .
- #ifndef PPL_CO_Tree_inlines_hh
- #define PPL_CO_Tree_inlines_hh 1
- 
-+#include <cstddef>
-+
- namespace Parma_Polyhedra_Library {
- 
- inline dimension_type
-@@ -31,7 +33,7 @@ CO_Tree::dfs_index(const_iterator itr) c
-   PPL_ASSERT(itr.current_index != 0);
-   PPL_ASSERT(itr.current_index >= indexes + 1);
-   PPL_ASSERT(itr.current_index <= indexes + reserved_size);
--  const ptrdiff_t index = itr.current_index - indexes;
-+  const std::ptrdiff_t index = itr.current_index - indexes;
-   return static_cast<dimension_type>(index);
- }
- 
-@@ -40,7 +42,7 @@ CO_Tree::dfs_index(iterator itr) const {
-   PPL_ASSERT(itr.current_index != 0);
-   PPL_ASSERT(itr.current_index >= indexes + 1);
-   PPL_ASSERT(itr.current_index <= indexes + reserved_size);
--  const ptrdiff_t index = itr.current_index - indexes;
-+  const std::ptrdiff_t index = itr.current_index - indexes;
-   return static_cast<dimension_type>(index);
- }
- 
-@@ -772,7 +774,7 @@ CO_Tree::tree_iterator::follow_left_chil
-   p -= (offset - 1);
-   while (*p == unused_index)
-     ++p;
--  const ptrdiff_t distance = p - tree.indexes;
-+  const std::ptrdiff_t distance = p - tree.indexes;
-   PPL_ASSERT(distance >= 0);
-   i = static_cast<dimension_type>(distance);
-   offset = least_significant_one_mask(i);
-@@ -787,7 +789,7 @@ CO_Tree::tree_iterator::follow_right_chi
-   p += (offset - 1);
-   while (*p == unused_index)
-     --p;
--  const ptrdiff_t distance = p - tree.indexes;
-+  const std::ptrdiff_t distance = p - tree.indexes;
-   PPL_ASSERT(distance >= 0);
-   i = static_cast<dimension_type>(distance);
-   offset = least_significant_one_mask(i);
-diff -up ppl-1.1/src/Linear_Expression_defs.hh.orig ppl-1.1/src/Linear_Expression_defs.hh
---- ppl-1.1/src/Linear_Expression_defs.hh.orig	2014-04-29 13:15:39.793700141 -0300
-+++ ppl-1.1/src/Linear_Expression_defs.hh	2014-04-29 13:16:07.464701201 -0300
-@@ -51,6 +51,7 @@ site: http://bugseng.com/products/ppl/ .
- 
- #include "Linear_Expression_Interface_defs.hh"
- #include "Variable_defs.hh"
-+#include <cstddef>
- 
- namespace Parma_Polyhedra_Library {
- 
-@@ -381,7 +382,7 @@ public:
-   public:
-     typedef std::bidirectional_iterator_tag iterator_category;
-     typedef const Coefficient value_type;
--    typedef ptrdiff_t difference_type;
-+    typedef std::ptrdiff_t difference_type;
-     typedef value_type* pointer;
-     typedef Coefficient_traits::const_reference reference;
- 
-diff -up ppl-1.1/src/CO_Tree.cc.orig ppl-1.1/src/CO_Tree.cc
---- ppl-1.1/src/CO_Tree.cc.orig	2014-04-29 13:19:37.192709232 -0300
-+++ ppl-1.1/src/CO_Tree.cc	2014-04-29 13:19:58.000710029 -0300
-@@ -954,7 +954,7 @@ PPL::CO_Tree
-     --subtree_size;
-   }
- 
--  const ptrdiff_t distance = first_unused_index - indexes;
-+  const std::ptrdiff_t distance = first_unused_index - indexes;
-   PPL_ASSERT(distance >= 0);
-   return static_cast<dimension_type>(distance);
- }
-diff -up ppl-1.1/src/Constraint_System_defs.hh.orig ppl-1.1/src/Constraint_System_defs.hh
---- ppl-1.1/src/Constraint_System_defs.hh.orig	2014-04-29 13:30:05.530733294 -0300
-+++ ppl-1.1/src/Constraint_System_defs.hh	2014-04-29 13:30:27.167734122 -0300
-@@ -37,6 +37,7 @@ site: http://bugseng.com/products/ppl/ .
- #include "termination_types.hh"
- #include <iterator>
- #include <iosfwd>
-+#include <cstddef>
- 
- namespace Parma_Polyhedra_Library {
- 
-@@ -609,7 +610,7 @@ for (Constraint_System::const_iterator i
- class Parma_Polyhedra_Library::Constraint_System_const_iterator
-   : public std::iterator<std::forward_iterator_tag,
-                          Constraint,
--                         ptrdiff_t,
-+                         std::ptrdiff_t,
-                          const Constraint*,
-                          const Constraint&> {
- public:
-diff -up ppl-1.1/src/Congruence_System_defs.hh.orig ppl-1.1/src/Congruence_System_defs.hh
---- ppl-1.1/src/Congruence_System_defs.hh.orig	2014-04-29 13:33:56.927742155 -0300
-+++ ppl-1.1/src/Congruence_System_defs.hh	2014-04-29 13:34:15.535742867 -0300
-@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
- #include "Congruence_defs.hh"
- #include "Constraint_System_types.hh"
- #include <iosfwd>
-+#include <cstddef>
- 
- namespace Parma_Polyhedra_Library {
- 
-@@ -249,7 +250,7 @@ public:
-   class const_iterator
-     : public std::iterator<std::forward_iterator_tag,
-                            Congruence,
--                           ptrdiff_t,
-+                           std::ptrdiff_t,
-                            const Congruence*,
-                            const Congruence&> {
-   public:
-diff -up ppl-1.1/src/Generator_System_defs.hh.orig ppl-1.1/src/Generator_System_defs.hh
---- ppl-1.1/src/Generator_System_defs.hh.orig	2014-04-29 13:44:30.122766402 -0300
-+++ ppl-1.1/src/Generator_System_defs.hh	2014-04-29 13:44:48.167767093 -0300
-@@ -33,6 +33,7 @@ site: http://bugseng.com/products/ppl/ .
- #include "Poly_Con_Relation_defs.hh"
- #include "Polyhedron_types.hh"
- #include <iosfwd>
-+#include <cstddef>
- 
- namespace Parma_Polyhedra_Library {
- 
-@@ -679,7 +680,7 @@ copy(gs.begin(), gs.end(), ostream_itera
- class Parma_Polyhedra_Library::Generator_System_const_iterator
-   : public std::iterator<std::forward_iterator_tag,
-         Generator,
--        ptrdiff_t,
-+        std::ptrdiff_t,
-         const Generator*,
-         const Generator&> {
- public:
-diff -up ppl-1.1/src/Grid_Generator_System_defs.hh.orig ppl-1.1/src/Grid_Generator_System_defs.hh
---- ppl-1.1/src/Grid_Generator_System_defs.hh.orig	2014-04-29 13:45:26.073768544 -0300
-+++ ppl-1.1/src/Grid_Generator_System_defs.hh	2014-04-29 13:45:42.535769175 -0300
-@@ -31,6 +31,7 @@ site: http://bugseng.com/products/ppl/ .
- #include "Variables_Set_types.hh"
- #include "Polyhedron_types.hh"
- #include <iosfwd>
-+#include <cstddef>
- 
- namespace Parma_Polyhedra_Library {
- 
-@@ -277,7 +278,7 @@ public:
-   class const_iterator
-     : public std::iterator<std::forward_iterator_tag,
-                            Grid_Generator,
--                           ptrdiff_t,
-+                           std::ptrdiff_t,
-                            const Grid_Generator*,
-                            const Grid_Generator&> {
-   public:
diff --git a/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix b/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix
index 1684e6aac70..c0b9aa83e19 100644
--- a/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix
+++ b/pkgs/development/libraries/qt-5/5.9/qtwebengine/default.nix
@@ -100,6 +100,10 @@ qtSubmodule {
     xlibs.libXcomposite
   ];
   patches = optional stdenv.needsPax ./qtwebengine-paxmark-mksnapshot.patch;
+
+  dontUseNinjaBuild = true;
+  dontUseNinjaInstall = true;
+
   postInstall = ''
     cat > $out/libexec/qt.conf <<EOF
     [Paths]
diff --git a/pkgs/development/libraries/smpeg2/default.nix b/pkgs/development/libraries/smpeg2/default.nix
new file mode 100644
index 00000000000..10386a7b33e
--- /dev/null
+++ b/pkgs/development/libraries/smpeg2/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchsvn, autoconf, automake, libtool, m4, pkgconfig, makeWrapper, SDL2 }:
+
+stdenv.mkDerivation rec {
+  name = "smpeg2-svn${version}";
+  version = "412";
+
+  src = fetchsvn {
+    url = svn://svn.icculus.org/smpeg/trunk;
+    rev = version;
+    sha256 = "1irf2d8f150j8cx8lbb0pz1rijap536crsz0mw871xrh6wd2fd96";
+  };
+
+  patches = [
+    ./gcc6.patch
+    ./sdl2.patch
+  ];
+
+  nativeBuildInputs = [ autoconf automake pkgconfig makeWrapper ];
+
+  buildInputs = [ SDL2 ];
+
+  preConfigure = ''
+    sh autogen.sh
+  '';
+
+  postInstall = ''
+    sed -e 's,#include "\(SDL.*.h\)",#include <SDL2/\1>,' -i $out/include/smpeg2/*.h
+
+    wrapProgram $out/bin/smpeg2-config \
+      --prefix PATH ":" "${pkgconfig}/bin" \
+      --prefix PKG_CONFIG_PATH ":" "${SDL2.dev}/lib/pkgconfig"
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    homepage = http://icculus.org/smpeg/;
+    description = "SDL2 MPEG Player Library";
+    license = licenses.lgpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ orivej ];
+  };
+}
diff --git a/pkgs/development/libraries/smpeg2/gcc6.patch b/pkgs/development/libraries/smpeg2/gcc6.patch
new file mode 100644
index 00000000000..165feb4428c
--- /dev/null
+++ b/pkgs/development/libraries/smpeg2/gcc6.patch
@@ -0,0 +1,33 @@
+--- a/audio/hufftable.cpp
++++ b/audio/hufftable.cpp
+@@ -9,6 +9,7 @@
+ #include "config.h"
+ #endif
+ 
++#include <climits>
+ #include "MPEGaudio.h"
+ 
+ static const unsigned int
+@@ -550,11 +551,11 @@ htd33[ 31][2]={{ 16,  1},{  8,  1},{  4,
+ 
+ const HUFFMANCODETABLE MPEGaudio::ht[HTN]=
+ {
+-  { 0, 0-1, 0-1, 0,  0, htd33},
++  { 0, UINT_MAX, UINT_MAX, 0,  0, htd33},
+   { 1, 2-1, 2-1, 0,  7,htd01},
+   { 2, 3-1, 3-1, 0, 17,htd02},
+   { 3, 3-1, 3-1, 0, 17,htd03},
+-  { 4, 0-1, 0-1, 0,  0, htd33},
++  { 4, UINT_MAX, UINT_MAX, 0,  0, htd33},
+   { 5, 4-1, 4-1, 0, 31,htd05},
+   { 6, 4-1, 4-1, 0, 31,htd06},
+   { 7, 6-1, 6-1, 0, 71,htd07},
+@@ -564,7 +565,7 @@ const HUFFMANCODETABLE MPEGaudio::ht[HTN
+   {11, 8-1, 8-1, 0,127,htd11},
+   {12, 8-1, 8-1, 0,127,htd12},
+   {13,16-1,16-1, 0,511,htd13},
+-  {14, 0-1, 0-1, 0,  0, htd33},
++  {14, UINT_MAX, UINT_MAX, 0,  0, htd33},
+   {15,16-1,16-1, 0,511,htd15},
+   {16,16-1,16-1, 1,511,htd16},
+   {17,16-1,16-1, 2,511,htd16},
diff --git a/pkgs/development/libraries/smpeg2/sdl2.patch b/pkgs/development/libraries/smpeg2/sdl2.patch
new file mode 100644
index 00000000000..63bc352976e
--- /dev/null
+++ b/pkgs/development/libraries/smpeg2/sdl2.patch
@@ -0,0 +1,22 @@
+diff --git a/smpeg2-config.in b/smpeg2-config.in
+index 5cce954..0e61939 100644
+--- a/smpeg2-config.in
++++ b/smpeg2-config.in
+@@ -42,7 +42,7 @@ while test $# -gt 0; do
+       if test @includedir@ != /usr/include ; then
+         includes=-I@includedir@
+       fi
+-      echo $includes -I@includedir@/smpeg2 `@SDL_CONFIG@ --cflags`
++      echo $includes -I@includedir@/smpeg2 `@SDL2_CONFIG@ --cflags`
+       ;;
+     --libs)
+       if [ "`uname`" = "SunOS" ]; then
+@@ -50,7 +50,7 @@ while test $# -gt 0; do
+       else
+         libdirs="-L@libdir@ @SMPEG_RLD_FLAGS@"
+       fi
+-      echo $libdirs -lsmpeg2 `@SDL_CONFIG@ --libs`
++      echo $libdirs -lsmpeg2 `@SDL2_CONFIG@ --libs`
+       ;;
+     *)
+       echo "${usage}" 1>&2
diff --git a/pkgs/development/libraries/vmime/default.nix b/pkgs/development/libraries/vmime/default.nix
index 846fc64a91e..9bef1b27e9c 100644
--- a/pkgs/development/libraries/vmime/default.nix
+++ b/pkgs/development/libraries/vmime/default.nix
@@ -1,14 +1,25 @@
-{stdenv, fetchurl, gsasl, gnutls, pkgconfig, zlib, libtasn1, libgcrypt }:
+{stdenv, fetchFromGitHub
+, gsasl, gnutls, pkgconfig, cmake, zlib, libtasn1, libgcrypt, gtk3
+# this will not work on non-nixos systems
+, sendmailPath ? "/run/wrappers/bin/sendmail"
+}:
 
-stdenv.mkDerivation {
-  name = "vmime-0.9.2-pre-svn603";
-  src = fetchurl {
-    url = http://download.zarafa.com/community/final/7.0/7.0.5-31880/sourcecode/libvmime-0.9.2+svn603.tar.bz2;
-    #url = mirror://sourceforge/vmime/libvmime-0.9.1.tar.bz2;
-    sha256 = "1jhxiy8c2cgzfjps0z4q40wygdpgm8jr7jn727cbzrscj2c48kxx";
+stdenv.mkDerivation rec {
+  name = "vmime-${version}";
+  version = "0.9.2";
+  src = fetchFromGitHub {
+    owner = "kisli";
+    repo = "vmime";
+    rev = "v${version}";
+    sha256 = "1304n50ny2av8bagjpgz55ag0nd7m313akm9bb73abjn6h5nzacv";
   };
 
-  buildInputs = [ gsasl gnutls pkgconfig zlib libtasn1 libgcrypt ];
+  buildInputs = [ gsasl gnutls zlib libtasn1 libgcrypt gtk3 ];
+  nativeBuildInputs = [ pkgconfig cmake ];
+
+  cmakeFlags = [
+    "-DVMIME_SENDMAIL_PATH=${sendmailPath}"
+  ];
 
   meta = {
     homepage = http://www.vmime.org/;
diff --git a/pkgs/development/libraries/webkitgtk/2.4.nix b/pkgs/development/libraries/webkitgtk/2.4.nix
index 40b27f67fff..6669b562400 100644
--- a/pkgs/development/libraries/webkitgtk/2.4.nix
+++ b/pkgs/development/libraries/webkitgtk/2.4.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, perl, python, ruby, bison, gperf, flex
+{ stdenv, fetchurl, fetchpatch, perl, python, ruby, bison, gperf, flex
 , pkgconfig, which, gettext, gobjectIntrospection
 , gtk2, gtk3, wayland, libwebp, enchant, sqlite
 , libxml2, libsoup, libsecret, libxslt, harfbuzz, xorg
@@ -44,6 +44,10 @@ stdenv.mkDerivation rec {
   '';
   patches = [
     ./webcore-svg-libxml-cflags.patch
+    (fetchpatch {
+      url = https://raw.githubusercontent.com/gentoo/gentoo/7c5457e265bd40c156a8fe6b2ff94a4e34bcea8e/net-libs/webkit-gtk/files/webkit-gtk-2.4.9-gcc-6.patch;
+      sha256 = "0ll93dr5vxd40wvly1jaw41lvw86krac0jc6k6cacrps4i5ql5j0";
+    })
   ] ++ optionals stdenv.isDarwin [
     ./configure.patch
     ./quartz-webcore.patch
diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix
index 0f1f87b9bd6..fdbef27705e 100644
--- a/pkgs/development/libraries/wolfssl/default.nix
+++ b/pkgs/development/libraries/wolfssl/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "wolfssl-${version}";
-  version = "3.11.0";
+  version = "3.12.0";
 
   src = fetchFromGitHub {
     owner = "wolfSSL";
     repo = "wolfssl";
     rev = "v${version}-stable";
-    sha256 = "0s4s9adni2q1sgqpavbmxhkl8i98bmlw6gla6dnifgsm1dirv75w";
+    sha256 = "0bjfzpgj50cd27lfz6vry9bdz0f0kvgq8plqdbhlk7kjp32nm2bv";
   };
 
   outputs = [ "out" "dev" "doc" "lib" ];
diff --git a/pkgs/development/libraries/xml-security-c/cxx11.patch b/pkgs/development/libraries/xml-security-c/cxx11.patch
new file mode 100644
index 00000000000..bc87d4c1411
--- /dev/null
+++ b/pkgs/development/libraries/xml-security-c/cxx11.patch
@@ -0,0 +1,11 @@
+--- xml-security-c-1.6.1/xsec/tools/checksig/InteropResolver.cpp.orig	2016-02-02 23:57:26.204655144 +0000
++++ xml-security-c-1.6.1/xsec/tools/checksig/InteropResolver.cpp	2016-02-02 23:57:35.796692305 +0000
+@@ -645,7 +645,7 @@
+ 
+ 	}
+ 
+-	return false;
++	return NULL;
+ 
+ }
+ 
diff --git a/pkgs/development/libraries/xml-security-c/default.nix b/pkgs/development/libraries/xml-security-c/default.nix
index 37936caf2b9..7ab6041e86d 100644
--- a/pkgs/development/libraries/xml-security-c/default.nix
+++ b/pkgs/development/libraries/xml-security-c/default.nix
@@ -9,18 +9,19 @@ stdenv.mkDerivation rec {
     sha256 = "e5226e7319d44f6fd9147a13fb853f5c711b9e75bf60ec273a0ef8a190592583";
   };
 
-  patchPhase = ''
+  patches = [ ./cxx11.patch ];
+
+  postPatch = ''
     mkdir -p xsec/yes/lib
     sed -i -e 's/-O2 -DNDEBUG/-DNDEBUG/g' configure
   '';
 
-  configurePhase = ''
-    ./configure --prefix=$out \
-                --with-openssl \
-                --with-xerces \
-                --with-xalan \
-                --disable-static
-  '';
+  configureFlags = [
+    "--with-openssl"
+    "--with-xerces"
+    "--with-xalan"
+    "--disable-static"
+  ];
 
   buildInputs = [ xalanc xercesc openssl pkgconfig ];
 
diff --git a/pkgs/development/node-packages/composition-v4.nix b/pkgs/development/node-packages/composition-v4.nix
index dc5899ebf1a..8c4a5390f55 100644
--- a/pkgs/development/node-packages/composition-v4.nix
+++ b/pkgs/development/node-packages/composition-v4.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.3.0. Do not edit!
+# This file has been generated by node2nix 1.2.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
diff --git a/pkgs/development/node-packages/composition-v6.nix b/pkgs/development/node-packages/composition-v6.nix
index 0c01a169af4..ea30c5b04c4 100644
--- a/pkgs/development/node-packages/composition-v6.nix
+++ b/pkgs/development/node-packages/composition-v6.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.3.0. Do not edit!
+# This file has been generated by node2nix 1.2.0. Do not edit!
 
 {pkgs ? import <nixpkgs> {
     inherit system;
diff --git a/pkgs/development/node-packages/node-packages-v4.nix b/pkgs/development/node-packages/node-packages-v4.nix
index e2d9b5c348e..15ec0536525 100644
--- a/pkgs/development/node-packages/node-packages-v4.nix
+++ b/pkgs/development/node-packages/node-packages-v4.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.3.0. Do not edit!
+# This file has been generated by node2nix 1.2.0. Do not edit!
 
 {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
 
@@ -73,7 +73,7 @@ let
       version = "3.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "1879a3j85h92ypvb7lpv1dqpcxl49rqnbgs5la18zmj1yqhwl60c2m74254wbr5pp3znckqpkg9dvjyrz6hfz8b9vag5a3j910db4f8";
+        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
       };
     };
     "once-1.4.0" = {
@@ -640,7 +640,7 @@ let
       version = "2.3.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz";
-        sha512 = "1wlizkv2wnz2nyb0lfxgs1m27zzcvasp3n5cfrd7hm4ch1wn79df2nbhzfadba5qqdfb28vhmw3drhp46vk2q6xk524qagvr76v7slv";
+        sha1 = "368f2512d79f9d46fdfc71349ae7878bbc1eb95c";
       };
     };
     "xtend-4.0.1" = {
@@ -676,7 +676,7 @@ let
       version = "5.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz";
-        sha512 = "1p28rllll1w65yzq5azi4izx962399xdsdlfbaynn7vmp981hiss05jhiy9hm7sbbfk3b4dhlcv0zy07fc59mnc07hdv6wcgqkcvawh";
+        sha1 = "893312af69b2123def71f57889001671eeb2c853";
       };
     };
     "string_decoder-1.0.3" = {
@@ -685,7 +685,7 @@ let
       version = "1.0.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz";
-        sha512 = "22vw5mmwlyblqc2zyqwl39wyhyahhpiyknim8iz5fk6xi002x777gkswiq8fh297djs5ii4pgrys57wq33hr5zf3xfd0d7kjxkzl0g0";
+        sha1 = "0fc67d7c141825de94282dd536bec6b9bce860ab";
       };
     };
     "util-deprecate-1.0.2" = {
@@ -793,7 +793,7 @@ let
       version = "1.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz";
-        sha512 = "3aygixvrv5l6jm5n2dfgzyx4z86l3q2v7c2rln6znai3877q0r5ajlxgdaj4qm9h70yp7grmg9kmvr77ww2zckc7bm22zzfldafqvk9";
+        sha1 = "a75be01c53da25d934a98ebd0e4c4a7312f92a86";
       };
     };
     "detect-file-0.1.0" = {
@@ -955,7 +955,7 @@ let
       version = "1.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz";
-        sha512 = "2vdly17xk5kw7bfzajrjdnw4ml3wrfblx8064n0i4fxlchcscx2mvnwkq2bnnqvbqvdy4vs9ad462lz0rid7khysly9m9vzjiblly1g";
+        sha1 = "36048bbff4e7b47e136644316c99669ea5ae91f1";
       };
     };
     "expand-range-1.8.2" = {
@@ -1018,7 +1018,7 @@ let
       version = "1.1.7";
       src = fetchurl {
         url = "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz";
-        sha512 = "2is2kipfnz3hl4yxgqk07rll6956cq3zzf9cddai3f0lij5acq76v98qv14qkpljh1pqfsyb8p69xa9cyaww6p0j91s4vc9zj6594hg";
+        sha1 = "c7abe9cc8b87c0baa876b19fde83fd464797e38c";
       };
     };
     "repeat-string-1.6.1" = {
@@ -1216,7 +1216,7 @@ let
       version = "1.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/which/-/which-1.3.0.tgz";
-        sha512 = "358cfi3qak701qp5pwkq47n87ca4m8k4lvjl0pdybvmp92nwwd7azzhahy9gy3kg8lqrqdry9l6pl2csflzr0nvwnc3p6asjyi6khn5";
+        sha1 = "ff04bdfc010ee547d780bec38e1ac1c2777d253a";
       };
     };
     "parse-passwd-1.0.0" = {
@@ -1252,7 +1252,7 @@ let
       version = "2.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz";
-        sha512 = "0xgsjz9m3kg5pm36lcchblxk53qay59ya7wi5jgdmz0dsl5b0j2j7wcd48yyfaip1m70mj9aqf8kib02fn62k0hy0vxg2hng60yk4w7";
+        sha1 = "2c163b3fafb1b606d9d17928f05c2a1c38e07677";
       };
     };
     "object.defaults-1.1.0" = {
@@ -1264,13 +1264,13 @@ let
         sha1 = "3a7f868334b407dea06da16d88d5cd29e435fecf";
       };
     };
-    "object.pick-1.2.0" = {
+    "object.pick-1.3.0" = {
       name = "object.pick";
       packageName = "object.pick";
-      version = "1.2.0";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.2.0.tgz";
-        sha1 = "b5392bee9782da6d9fb7d6afaf539779f1234c2b";
+        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
       };
     };
     "parse-filepath-1.0.1" = {
@@ -1711,7 +1711,7 @@ let
       version = "7.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz";
-        sha512 = "08vjxzixc9dwc1hn5pd60yyij98krk2pr758aiga97r02ncvaqx1hidi95wk470k1v84gg4alls9bm52m77174z128bgf13b61x951h";
+        sha1 = "c19c9df9a028702d678612384a6552404c636d15";
       };
     };
     "graceful-fs-4.1.11" = {
@@ -1729,7 +1729,7 @@ let
       version = "4.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz";
-        sha512 = "2967mavp7zw0aawf5fadqf4pmn7vy5gya1yx2s9wwppvivhd9q4mpdnszfqvd7p6yks649bwbpj8iviw86g0hpp4f93d5ca7dmjmrfs";
+        sha1 = "08a7f2a8bf734604779a9efa4ad5cc717abb954b";
       };
     };
     "osenv-0.1.4" = {
@@ -1837,7 +1837,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz";
-        sha512 = "0zmgm7vf91vxk5hdvkwhfnzjxz9r6hwpn8dlbpasaax8rxx7z1qqdmh8l631vawj7y1bkpsd0v0mhjh9agggkjl72f3vlnfhy61m5k6";
+        sha1 = "45c6629094de4e96f693ef7eab74ae079c240fc1";
       };
     };
     "has-unicode-2.0.1" = {
@@ -1882,7 +1882,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz";
-        sha512 = "39m5b8qc31vxhh0bz14vh9a1kf9znarvlpkf0v6vv1f2dxi61gihav2djq2mn7ns1z3yq6l8pyydj52fyzbm2q04rssrcrv4jbwnc4a";
+        sha1 = "571e0f1b0604636ebc0dfc21b0339bbe31341710";
       };
     };
     "code-point-at-1.1.0" = {
@@ -2098,7 +2098,7 @@ let
       version = "3.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz";
-        sha512 = "3x5mi85l1559nkb35pfksjjgiyfyqrcvmcf0nly1xjl1kb0d37jnxd6sk0b8d331waadnqbf60nfssb563x9pvnjcw87lrh976sv18c";
+        sha1 = "3dd3d3e790abc24d7b0d3a034ffababe28ebbc04";
       };
     };
     "delayed-stream-1.0.0" = {
@@ -2614,13 +2614,13 @@ let
         sha1 = "17eb2807987f76952e9c0485fc311d06a826a2e0";
       };
     };
-    "big-integer-1.6.23" = {
+    "big-integer-1.6.24" = {
       name = "big-integer";
       packageName = "big-integer";
-      version = "1.6.23";
+      version = "1.6.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.23.tgz";
-        sha1 = "e85d508220c74e3f43a4ce72eed51f3da4db94d1";
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.24.tgz";
+        sha1 = "1ed84d018ac3c1c72b307e7f7d94008e8ee20311";
       };
     };
     "camelcase-keys-2.1.0" = {
@@ -2665,7 +2665,7 @@ let
       version = "2.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha512 = "01wzws79ps84ylshjb7rfpjykgiqxnpr89s52p2yyzfx8nfvyh5flvf1almiiavsi75xgi8g3s5davc1mmgz7gn8yvlqz6gnhax8f7n";
+        sha1 = "12f95a307d58352075a04907b84ac8be98ac012f";
       };
     };
     "read-pkg-up-1.0.1" = {
@@ -2728,7 +2728,7 @@ let
       version = "2.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz";
-        sha512 = "355g980qsk8k9hkv60z58llbvpscjl5yqkh4wx719s8jcq2swzn4ynzinj8azmvdgs10r22wb297rmixh9vvsml55sbysdf2i8ipn54";
+        sha1 = "6d60e34b3abbc8313062c3b798ef8d901a07af3c";
       };
     };
     "is-builtin-module-1.0.0" = {
@@ -2947,13 +2947,13 @@ let
         sha1 = "5608aeadfc00be6c2901df5f9861788de0d597c8";
       };
     };
-    "accepts-1.3.3" = {
+    "accepts-1.3.4" = {
       name = "accepts";
       packageName = "accepts";
-      version = "1.3.3";
+      version = "1.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz";
-        sha1 = "c3ca7434938648c3e0d9c1e328dd68b622c284ca";
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz";
+        sha1 = "86246758c7dd6d21a6474ff084a4740ec05eb21f";
       };
     };
     "array-flatten-1.1.1" = {
@@ -3043,7 +3043,7 @@ let
       version = "1.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.0.4.tgz";
-        sha512 = "2vbps6iw562i2zxd973z5mmbs8ggx3wbz4g1jqwvkjibiwrk9ym8bxcvvwnlmxqad92x120x5xz5nyfq68nd8akk355bkk0qjppzafp";
+        sha1 = "18574f2e7c4b98b8ae3b230c21f201f31bdb3fb7";
       };
     };
     "fresh-0.5.0" = {
@@ -3115,7 +3115,7 @@ let
       version = "6.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/qs/-/qs-6.5.0.tgz";
-        sha512 = "2d5w08p3vr4l6rjcn5n5ph8g5wr0nzpypg1b7axvz3q3r9pp5jxanhywvd76wk76nqjcqb4p6n4l4ifjw8164bcahhs71kjdy6ladby";
+        sha1 = "8d04954d364def3efc55b5a0793e1e2c8b1e6e49";
       };
     };
     "range-parser-1.2.0" = {
@@ -3340,7 +3340,7 @@ let
       version = "5.4.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz";
-        sha512 = "2r13vwvb5ick34k6flr7vgbjfsdka8zbj5a74rd0ba4bp0nqmhppbaw3qlwn7f4smpifpa4iy4hxj137y598rbvsmy3h0d8vxgvzwar";
+        sha1 = "e059c09d8571f0540823733433505d3a2f00b18e";
       };
     };
     "tar-pack-3.4.0" = {
@@ -3502,7 +3502,7 @@ let
       version = "9.2.9";
       src = fetchurl {
         url = "https://registry.npmjs.org/cacache/-/cacache-9.2.9.tgz";
-        sha512 = "11qjza6qy62lkvynngcvx7nf2vhxvvp4g0l07a8zw5pzqc5iy0zznxzgs0dw1bb2i10dr2v7i624x6v9pkzp55snam9wk5jjf7ka642";
+        sha1 = "f9d7ffe039851ec94c28290662afa4dd4bb9e8dd";
       };
     };
     "call-limit-1.1.0" = {
@@ -3601,7 +3601,7 @@ let
       version = "1.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/fstream-npm/-/fstream-npm-1.2.1.tgz";
-        sha512 = "07r7qvmx5fjjk2ra3hjrz31ciy4vhfq2k8a3wjscjl7y52885zwfvz4caa5xr3kab8l3y4c9rsz1nkpjl530irrs6q5l3z6yadyj4c8";
+        sha1 = "08c4a452f789dcbac4c89a4563c902b2c862fd5b";
       };
     };
     "iferr-0.1.5" = {
@@ -3637,7 +3637,7 @@ let
       version = "9.2.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/libnpx/-/libnpx-9.2.3.tgz";
-        sha512 = "0ki52cm2pf27r9pkpfbrx6y1myg7yx1mghwnvv6mw4kmgscif08qlj0xzlc88kpfl549xip4z1ap64s22l7v3q26ygz6x12cch87wsr";
+        sha1 = "f6fb833dae64044c93dc31eff99cff4a019dc304";
       };
     };
     "lockfile-1.0.3" = {
@@ -3700,7 +3700,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz";
-        sha512 = "1xz91sizgyzh8plz5jx1labzpygapm6xy3qpxriaj00yvnhy4lnmhqcb20qln4lh80c5g3yzp4j5i6g63njq1r5sl9c0zlkh9xjk2xb";
+        sha1 = "622e32e82488b49279114a4f9ecf45e7cd6bba55";
       };
     };
     "mississippi-1.3.0" = {
@@ -3754,7 +3754,7 @@ let
       version = "5.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-5.1.2.tgz";
-        sha512 = "36g1gm57qcvdgb4lm6ibl9pgma8lgx8l8i2jzap6w3v36wfzsqa7vb411zd26yp9rgcq23951vl5j6pac22qd5h9x7jm9raznnnr460";
+        sha1 = "fb18d17bb61e60900d6312619919bd753755ab37";
       };
     };
     "npm-registry-client-8.4.0" = {
@@ -3763,7 +3763,7 @@ let
       version = "8.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.4.0.tgz";
-        sha512 = "20ka7w1mdgrazm20d5jihqam7gpiz0rnm2r6i91ax11mq96zn81ywwmmy3jr3yjddrc1bzcljxbs86wlwwrrzsgki2igj95mnm5ylrx";
+        sha1 = "d52b901685647fc62a4c03eafecb6ceaa5018d4c";
       };
     };
     "npm-user-validate-1.0.0" = {
@@ -3790,7 +3790,7 @@ let
       version = "2.7.38";
       src = fetchurl {
         url = "https://registry.npmjs.org/pacote/-/pacote-2.7.38.tgz";
-        sha512 = "0a0ar6lns179qdszia13prhj7gjpdjy334xafq791h48q00259lr6gpkzp17dagfcnff9pgcgxm7b68nidpj5qs0yah1v81fk4d84az";
+        sha1 = "5091f8774298c26c3eca24606037f1bb73db74c1";
       };
     };
     "path-is-inside-1.0.2" = {
@@ -3838,13 +3838,13 @@ let
         sha1 = "ff9b8b67f187d1e4c29b9feb31f6b223acd19067";
       };
     };
-    "read-package-json-2.0.11" = {
+    "read-package-json-2.0.12" = {
       name = "read-package-json";
       packageName = "read-package-json";
-      version = "2.0.11";
+      version = "2.0.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/read-package-json/-/read-package-json-2.0.11.tgz";
-        sha512 = "1y74w8zm70x1zc7qgg6fxg72pb78dmafg2bf5x4gn1z8d4amjrw2q3d4j9035ginsrigk372scwj57p0ll5ck9yxdgnyjpzcd5fj7wy";
+        url = "https://registry.npmjs.org/read-package-json/-/read-package-json-2.0.12.tgz";
+        sha1 = "68ea45f98b3741cb6e10ae3bbd42a605026a6951";
       };
     };
     "read-package-tree-5.1.6" = {
@@ -3853,7 +3853,7 @@ let
       version = "5.1.6";
       src = fetchurl {
         url = "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.1.6.tgz";
-        sha512 = "0v1k32zqj8bnqzyp5h0jxnkvpgpzpa6z7iyqbpm3p0ylqafbb2zm656mw6gs16zf98l7y218ygpx2kzks00qcycwwx2cny67mlza98l";
+        sha1 = "4f03e83d0486856fb60d97c94882841c2a7b1b7a";
       };
     };
     "retry-0.10.1" = {
@@ -3907,7 +3907,7 @@ let
       version = "4.1.6";
       src = fetchurl {
         url = "https://registry.npmjs.org/ssri/-/ssri-4.1.6.tgz";
-        sha512 = "283n1p781cl2pj3jk32blcvwjdlaixng0v5x2f9qi3ndxrmyg3hk4clsjpcfsszkymy40q426yz5skax4ivsmll2p9hhcc00ivc4ijr";
+        sha1 = "0cb49b6ac84457e7bdd466cb730c3cb623e9a25b";
       };
     };
     "strip-ansi-4.0.0" = {
@@ -3979,7 +3979,7 @@ let
       version = "1.4.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/worker-farm/-/worker-farm-1.4.1.tgz";
-        sha512 = "0vh5z2d6q3zgf7j3g5ngyq4piqq1y613wacfyildfnm2c2klb4h2gw32grgk6pv9ssyiliyfvj4p4alpaa85cqcj2nznb4q0fv400dn";
+        sha1 = "a438bc993a7a7d133bcb6547c95eca7cff4897d8";
       };
     };
     "write-file-atomic-2.1.0" = {
@@ -3988,7 +3988,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.1.0.tgz";
-        sha512 = "0jpbx5znf640m7icywa21hdgyss5h6c811z27mzk7mh1yhv8sqcqd2y0cwgkrnigx57k2chv5cqwv0z8ff8z32gpdw8jw5imz8pcdni";
+        sha1 = "1769f4b551eedce419f0505deae2e26763542d37";
       };
     };
     "debuglog-1.0.1" = {
@@ -4150,7 +4150,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz";
-        sha512 = "0lafrp0i2ajapsnma0x74q7zscn97a56i5hh58a0nyig2igfx9fqn4ain9kvjrr06as5gzdrv2wdf52qc5m861fd0f4cv69ghdjbjyy";
+        sha1 = "42bc2900a6b5b8bd17376c8e882b65afccf24bf2";
       };
     };
     "read-pkg-up-2.0.0" = {
@@ -4186,7 +4186,7 @@ let
       version = "2.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
-        sha512 = "29s1fqgr4mnhfxwczgdghfmmc1f792m9hysvcjxw2h5lfj8ndf2b6gm02m96qk5m75g4aisijvng4pk618anwbr8i9ay2jyszkqgslw";
+        sha1 = "ab93f27a8dc13d28cac815c462143a6d9012ae9e";
       };
     };
     "which-module-2.0.0" = {
@@ -4447,7 +4447,7 @@ let
       version = "3.5.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/duplexify/-/duplexify-3.5.1.tgz";
-        sha512 = "0cyjpkdqc1lkh2fh7z9p2i6va4fvwazvpn4153ndpb2ng8w0q9x9kb0hk07yy0baj50s1kl58m7f7zmx8fqdfcp2vsl0m7hfk22i64g";
+        sha1 = "4e1516be68838bc90a49994f0b39a6e5960befcd";
       };
     };
     "end-of-stream-1.4.0" = {
@@ -4540,13 +4540,13 @@ let
         sha1 = "1b33792e11e914a2fd6d6ed6447464444e5fa640";
       };
     };
-    "copy-concurrently-1.0.3" = {
+    "copy-concurrently-1.0.5" = {
       name = "copy-concurrently";
       packageName = "copy-concurrently";
-      version = "1.0.3";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.3.tgz";
-        sha1 = "45fb7866249a1ca889aa5708e6cbd273e75bb250";
+        url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
+        sha1 = "92297398cae34937fcafd6ec8139c18051f0b5e0";
       };
     };
     "run-queue-1.0.3" = {
@@ -4558,13 +4558,13 @@ let
         sha1 = "e848396f057d223f24386924618e25694161ec47";
       };
     };
-    "make-fetch-happen-2.4.13" = {
+    "make-fetch-happen-2.5.0" = {
       name = "make-fetch-happen";
       packageName = "make-fetch-happen";
-      version = "2.4.13";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-2.4.13.tgz";
-        sha512 = "0j8sgm5sh7lb4mdpg52yz9rv0jpgkd3bf701i30gd5s3aqxb0i2lq8qm4bndqqfcb8jgiw8wj6dwpv2497khvxmmx3bfj0iad7aqw7g";
+        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-2.5.0.tgz";
+        sha1 = "08c22d499f4f30111addba79fe87c98cf01b6bc8";
       };
     };
     "npm-pick-manifest-1.0.4" = {
@@ -4573,7 +4573,7 @@ let
       version = "1.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-1.0.4.tgz";
-        sha512 = "02pmkjkn2nbr1ypwzwybyd6bfckdwr8cr0nah5bwadz21yd7cd9fbvxqalfdc41n88p1zv8qbgp149knkaixnrl8l7jnrwfxislvb1h";
+        sha1 = "a5ee6510c1fe7221c0bc0414e70924c14045f7e8";
       };
     };
     "promise-retry-1.1.1" = {
@@ -4618,7 +4618,7 @@ let
       version = "3.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.3.0.tgz";
-        sha512 = "0svpj8gbh57a1l3zcds9kd8dkh4r2fyacpkrxvffbpj5pgvbf26h93q31niqbqsciswdxlx0fhikljqwg40lvmwxl299nb2gfjmqa7p";
+        sha1 = "6d5de5829afd3be2712201a39275fd11c651857c";
       };
     };
     "http-cache-semantics-3.7.3" = {
@@ -4645,7 +4645,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.1.0.tgz";
-        sha512 = "17fg8xbji1zam9ksqgdfsyhqfw1nyniz8gwp54q0z7rz1pxw2m3agniawm870nn4j88m1w9l0lfkw5wa4qf1593if0cwicv814xad7w";
+        sha1 = "1391bee7fd66aeabc0df2a1fa90f58954f43e443";
       };
     };
     "node-fetch-npm-2.0.2" = {
@@ -4654,7 +4654,7 @@ let
       version = "2.0.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz";
-        sha512 = "0bw6m444q0jc2gmw1yb0im1jv6vhky6d071p72c26ajvf2a7710jq8cp5ampf8j7kdbki7j0mbsi15dh93vrhkpvqpkw0i6ajdk34lw";
+        sha1 = "7258c9046182dca345b4208eda918daf33697ff7";
       };
     };
     "socks-proxy-agent-3.0.0" = {
@@ -4663,7 +4663,7 @@ let
       version = "3.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.0.tgz";
-        sha512 = "3zn9cz2ry5m1akapj7hvhgkxfq7ffwynia46lmwipsw2jk5sv8dvs32dc4hfx3xvp34i1jff1bg870a1xnknsgk5dl021jd4gwi75v0";
+        sha1 = "ea23085cd2bde94d084a62448f31139ca7ed6245";
       };
     };
     "humanize-ms-1.2.1" = {
@@ -4681,7 +4681,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/agent-base/-/agent-base-4.1.1.tgz";
-        sha512 = "2naw79i4m7pj1n5qw9xq6c0c8cdjfcqhdqk4j552nbrpb4c60hic13jfikqw7xga8xywpr57z2y5z70gn5xiihq47vzs3wrc1998qf9";
+        sha1 = "92d8a4fc2524a3b09b3666a33b6c97960f23d6a4";
       };
     };
     "es6-promisify-5.0.0" = {
@@ -4699,7 +4699,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.1.1.tgz";
-        sha512 = "2g2gkw8cxy2lww5lqjbv0imkxkhy684pagbq4qaw6np46xcx1r6rbkg7qy4wjv12b7jy7zs208iilim7clc9v6ws2dzy9g0g223b99r";
+        sha1 = "8811e90915d9a0dba36274f0b242dbda78f9c92a";
       };
     };
     "encoding-0.1.12" = {
@@ -4717,7 +4717,7 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz";
-        sha512 = "05ndp7b03ikx2vqivfxlm6c73yagjyrdp22ay8z592pqxldbsm7hjzpa3asal2vys99lvirqar3ly3sb1ibhhngls4sqc4nwp2jj967";
+        sha1 = "50183cd1b2d25275de069e9e71b467ac9eab973a";
       };
     };
     "iconv-lite-0.4.18" = {
@@ -4726,7 +4726,7 @@ let
       version = "0.4.18";
       src = fetchurl {
         url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.18.tgz";
-        sha512 = "2l97vd6kax8syr9aggcqhiyhd3b2rf506wdq6wapfrc74qwpdzqf2a3891kq9ri3g5sdzayph2sz4zkr8kbbps58z9h2lvpk115kgdj";
+        sha1 = "23d8656b16aae6742ac29732ea8f0336a4789cf2";
       };
     };
     "socks-1.1.10" = {
@@ -4801,6 +4801,15 @@ let
         sha1 = "a7c216d267545169637b3b6edc6ca9119e2ff93f";
       };
     };
+    "slash-1.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz";
+        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
+      };
+    };
     "from2-1.3.0" = {
       name = "from2";
       packageName = "from2";
@@ -4843,7 +4852,7 @@ let
       version = "3.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz";
-        sha512 = "2zmidvkp20q25yv6a5d7k1daawdg0w6ppgayxzpwfhyvmgwybkkv7ni0j4b2j9c8wjn8z33zf5d4bjr8jywb5qixc75vypyy87n90z6";
+        sha1 = "094ee662ab83fad9917678de114faaea8fcdca90";
       };
     };
     "import-lazy-2.1.0" = {
@@ -4906,7 +4915,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz";
-        sha512 = "1fnn3znivja3xq1lacvsdwkl2s8ki9w95sylnf2pkmaia1mjz3llbdb5r2dxsflqfky3h8f1bh0piv0l5waw2bkdniqnyv0yx5wch9d";
+        sha1 = "ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e";
       };
     };
     "cli-boxes-1.0.0" = {
@@ -4942,7 +4951,7 @@ let
       version = "3.2.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz";
-        sha512 = "2x19fs1qvg7ifsdvii4g8kqpa5hir1lm0k0y0fz6dhm5c8gh4z9il4wqczl078p2ikmrav23dmj86cxy8y1j22k4mv59d8qq6c8wx1n";
+        sha1 = "c159b8d5be0f9e5a6f346dab94f16ce022161b88";
       };
     };
     "supports-color-4.2.1" = {
@@ -4951,7 +4960,7 @@ let
       version = "4.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/supports-color/-/supports-color-4.2.1.tgz";
-        sha512 = "1ldz0jkrkclywnr7gwh85p6kljs5rm4jczbpj55vb9w5c81iyrf1ahgkw88nnzahgw2xvlg041vqk7gynxkwcqkzfagxjpphsrdh75b";
+        sha1 = "65a4bb2631e90e02420dba5554c375a4754bb836";
       };
     };
     "color-convert-1.9.0" = {
@@ -4987,7 +4996,7 @@ let
       version = "4.2.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz";
-        sha512 = "2wyv9brsq3dzp724y1q5z5j5ja83y834hgc193lnarfdycwz1ii3xg02qxx3dg05x3skwjm1di5s5a8hqi8l5v1afx2bia436pifhxm";
+        sha1 = "1f19e0c2e1aa0e32797c49799f2837ac6af69c57";
       };
     };
     "make-dir-1.0.0" = {
@@ -5431,13 +5440,13 @@ let
         sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
       };
     };
-    "source-map-0.5.6" = {
+    "source-map-0.5.7" = {
       name = "source-map";
       packageName = "source-map";
-      version = "0.5.6";
+      version = "0.5.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz";
-        sha1 = "75ce38f52bf0733c5a7f0c118d81334a2bb5f412";
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
       };
     };
     "uglify-to-browserify-1.0.2" = {
@@ -5581,16 +5590,16 @@ let
       version = "2.11.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz";
-        sha512 = "2yi2hwf0bghfnv1fdgd4wvh7s0acjrgqbgww97ncm6i6s6ffs1zahnj48f6gqpqj6fsf0jigvnr0civ25k2160c38281r80wvg7jkkg";
+        sha1 = "157152fd1e7a6c8d98a5b715cf376df928004563";
       };
     };
-    "is-my-json-valid-2.16.0" = {
+    "is-my-json-valid-2.16.1" = {
       name = "is-my-json-valid";
       packageName = "is-my-json-valid";
-      version = "2.16.0";
+      version = "2.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz";
-        sha1 = "f079dd9bfdae65ee2038aae8acbc86ab109e3693";
+        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz";
+        sha1 = "5a846777e2c2620d1e69104e5d3a03b1f6088f11";
       };
     };
     "generate-function-2.0.0" = {
@@ -5701,7 +5710,7 @@ in
     version = "1.12.7";
     src = fetchurl {
       url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz";
-      sha512 = "29mq40padyvizg4f141b00p0p74hx9v06d7gxk84ggsiyw6rf5bb65gnfwk1i02r276jwqybmi5hx98s943slyazjnqd69jmj389dvw";
+      sha1 = "c05dae0cb79591d05b3070a8433a98c9a89ccc53";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -6054,13 +6063,9 @@ in
                   sources."isobject-3.0.1"
                 ];
               })
-              (sources."object.pick-1.2.0" // {
+              (sources."object.pick-1.3.0" // {
                 dependencies = [
-                  (sources."isobject-2.1.0" // {
-                    dependencies = [
-                      sources."isarray-1.0.0"
-                    ];
-                  })
+                  sources."isobject-3.0.1"
                 ];
               })
               (sources."parse-filepath-1.0.1" // {
@@ -6517,7 +6522,7 @@ in
                 dependencies = [
                   (sources."bplist-parser-0.1.1" // {
                     dependencies = [
-                      sources."big-integer-1.6.23"
+                      sources."big-integer-1.6.24"
                     ];
                   })
                   (sources."meow-3.7.0" // {
@@ -6657,7 +6662,7 @@ in
       })
       (sources."express-4.15.4" // {
         dependencies = [
-          (sources."accepts-1.3.3" // {
+          (sources."accepts-1.3.4" // {
             dependencies = [
               (sources."mime-types-2.1.16" // {
                 dependencies = [
@@ -7605,7 +7610,7 @@ in
     version = "5.3.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/npm/-/npm-5.3.0.tgz";
-      sha512 = "29izly6jqqdaslak9xz3i3bsr7qgg5vjcbzf55as0hh630z4aml48n5a7dz6skqn34d02fg3bk2zwkq7n67z787wn14vr3na9chx6v4";
+      sha1 = "e2ae85ef09d53f7f570a05578692899bf7879f17";
     };
     dependencies = [
       (sources."JSONStream-1.3.1" // {
@@ -7889,7 +7894,7 @@ in
       })
       (sources."move-concurrently-1.0.1" // {
         dependencies = [
-          sources."copy-concurrently-1.0.3"
+          sources."copy-concurrently-1.0.5"
           sources."run-queue-1.0.3"
         ];
       })
@@ -7974,7 +7979,7 @@ in
       })
       (sources."pacote-2.7.38" // {
         dependencies = [
-          (sources."make-fetch-happen-2.4.13" // {
+          (sources."make-fetch-happen-2.5.0" // {
             dependencies = [
               (sources."agentkeepalive-3.3.0" // {
                 dependencies = [
@@ -8105,9 +8110,10 @@ in
           sources."util-extend-1.0.3"
         ];
       })
-      (sources."read-package-json-2.0.11" // {
+      (sources."read-package-json-2.0.12" // {
         dependencies = [
           sources."json-parse-better-errors-1.0.1"
+          sources."slash-1.0.0"
         ];
       })
       sources."read-package-tree-5.1.6"
@@ -8532,7 +8538,7 @@ in
           (sources."uglify-js-2.7.5" // {
             dependencies = [
               sources."async-0.2.10"
-              sources."source-map-0.5.6"
+              sources."source-map-0.5.7"
               sources."uglify-to-browserify-1.0.2"
               (sources."yargs-3.10.0" // {
                 dependencies = [
@@ -8619,7 +8625,7 @@ in
                 ];
               })
               sources."commander-2.11.0"
-              (sources."is-my-json-valid-2.16.0" // {
+              (sources."is-my-json-valid-2.16.1" // {
                 dependencies = [
                   sources."generate-function-2.0.0"
                   (sources."generate-object-property-1.2.0" // {
diff --git a/pkgs/development/node-packages/node-packages-v6.json b/pkgs/development/node-packages/node-packages-v6.json
index 10ab75e3dca..f9a3c9af2f2 100644
--- a/pkgs/development/node-packages/node-packages-v6.json
+++ b/pkgs/development/node-packages/node-packages-v6.json
@@ -42,6 +42,7 @@
 , { "kibana-authentication-proxy": "git://github.com/fangli/kibana-authentication-proxy.git" }
 , "lerna"
 , "lcov-result-merger"
+, "livedown"
 , "meat"
 , "mocha"
 , "nijs"
diff --git a/pkgs/development/node-packages/node-packages-v6.nix b/pkgs/development/node-packages/node-packages-v6.nix
index da1d79e02ed..15f37baf46e 100644
--- a/pkgs/development/node-packages/node-packages-v6.nix
+++ b/pkgs/development/node-packages/node-packages-v6.nix
@@ -1,4 +1,4 @@
-# This file has been generated by node2nix 1.3.0. Do not edit!
+# This file has been generated by node2nix 1.2.0. Do not edit!
 
 {nodeEnv, fetchurl, fetchgit, globalBuildInputs ? []}:
 
@@ -82,7 +82,7 @@ let
       version = "1.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz";
-        sha512 = "3aygixvrv5l6jm5n2dfgzyx4z86l3q2v7c2rln6znai3877q0r5ajlxgdaj4qm9h70yp7grmg9kmvr77ww2zckc7bm22zzfldafqvk9";
+        sha1 = "a75be01c53da25d934a98ebd0e4c4a7312f92a86";
       };
     };
     "global-paths-0.1.2" = {
@@ -202,13 +202,13 @@ let
         sha1 = "b6bbe0b0674b9d719708ca38de8c237cb526c3d1";
       };
     };
-    "source-map-0.5.6" = {
+    "source-map-0.5.7" = {
       name = "source-map";
       packageName = "source-map";
-      version = "0.5.6";
+      version = "0.5.7";
       src = fetchurl {
-        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz";
-        sha1 = "75ce38f52bf0733c5a7f0c118d81334a2bb5f412";
+        url = "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz";
+        sha1 = "8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc";
       };
     };
     "uglify-to-browserify-1.0.2" = {
@@ -424,7 +424,7 @@ let
       version = "1.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/which/-/which-1.3.0.tgz";
-        sha512 = "358cfi3qak701qp5pwkq47n87ca4m8k4lvjl0pdybvmp92nwwd7azzhahy9gy3kg8lqrqdry9l6pl2csflzr0nvwnc3p6asjyi6khn5";
+        sha1 = "ff04bdfc010ee547d780bec38e1ac1c2777d253a";
       };
     };
     "parse-passwd-1.0.0" = {
@@ -1162,7 +1162,7 @@ let
       version = "3.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/uuid/-/uuid-3.1.0.tgz";
-        sha512 = "3x5mi85l1559nkb35pfksjjgiyfyqrcvmcf0nly1xjl1kb0d37jnxd6sk0b8d331waadnqbf60nfssb563x9pvnjcw87lrh976sv18c";
+        sha1 = "3dd3d3e790abc24d7b0d3a034ffababe28ebbc04";
       };
     };
     "validator-5.2.0" = {
@@ -1270,7 +1270,7 @@ let
       version = "5.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz";
-        sha512 = "1p28rllll1w65yzq5azi4izx962399xdsdlfbaynn7vmp981hiss05jhiy9hm7sbbfk3b4dhlcv0zy07fc59mnc07hdv6wcgqkcvawh";
+        sha1 = "893312af69b2123def71f57889001671eeb2c853";
       };
     };
     "buffer-equal-constant-time-1.0.1" = {
@@ -1615,13 +1615,13 @@ let
         sha1 = "0e3c4f24a3f052b231b12d5049085a0a099be782";
       };
     };
-    "@types/node-7.0.42" = {
+    "@types/node-7.0.43" = {
       name = "@types/node";
       packageName = "@types/node";
-      version = "7.0.42";
+      version = "7.0.43";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@types/node/-/node-7.0.42.tgz";
-        sha512 = "3qxigqldpssvqrmzvaq4zsshk19240ad5284716hgf2h1ibp97pbqcjxxpx1zc0kkcpx2vf2zf7mk5a3cdahhvxgabywkh8f94gcpvh";
+        url = "https://registry.npmjs.org/@types/node/-/node-7.0.43.tgz";
+        sha1 = "a187e08495a075f200ca946079c914e1a5fe962c";
       };
     };
     "@types/request-0.0.45" = {
@@ -1630,7 +1630,7 @@ let
       version = "0.0.45";
       src = fetchurl {
         url = "https://registry.npmjs.org/@types/request/-/request-0.0.45.tgz";
-        sha512 = "37apdgz29nhb3cpz9l2m1j1vj646727yzrk6ch66ji4yz0al4529gp3zlwdqcsi2w1kw43n2jsr2jq4vs9n7i4qgklrkwpr6h9130iq";
+        sha1 = "c6e52be8b108eb035c35aa9af56a38a260c3e7e6";
       };
     };
     "@types/uuid-2.0.30" = {
@@ -1639,7 +1639,7 @@ let
       version = "2.0.30";
       src = fetchurl {
         url = "https://registry.npmjs.org/@types/uuid/-/uuid-2.0.30.tgz";
-        sha512 = "117asm25fci0i0w2igvz0mxydd0m4vsz1l55kibx36d19j8md4s9fmvispcy83m7zlf9w9s4di7v0j8rawnyn67xci916gn0b88jr4y";
+        sha1 = "4dca12da43ae530f89f46d6d203935d2199652d5";
       };
     };
     "is-stream-1.1.0" = {
@@ -1657,7 +1657,7 @@ let
       version = "2.2.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/@types/form-data/-/form-data-2.2.0.tgz";
-        sha512 = "26fb719b154ab3x89bbgpp3fk4jcrfal0y909ik8zss3d8ykn1dsh9wm3q08j5pzpy3wvfy41h0yzfhbl7k3lb4zjqm9swwq8d4wvmy";
+        sha1 = "a98aac91dc99857b6af24caef7ca6df302f31565";
       };
     };
     "debug-0.7.4" = {
@@ -1678,13 +1678,13 @@ let
         sha1 = "4de2e6cb3b29088c9e4cbc03bf9d42fb96ce2f75";
       };
     };
-    "pkginfo-0.4.0" = {
+    "pkginfo-0.4.1" = {
       name = "pkginfo";
       packageName = "pkginfo";
-      version = "0.4.0";
+      version = "0.4.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.0.tgz";
-        sha1 = "349dbb7ffd38081fcadc0853df687f0c7744cd65";
+        url = "https://registry.npmjs.org/pkginfo/-/pkginfo-0.4.1.tgz";
+        sha1 = "b5418ef0439de5425fc4995042dced14fb2a84ff";
       };
     };
     "revalidator-0.1.8" = {
@@ -1774,7 +1774,7 @@ let
       version = "7.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz";
-        sha512 = "08vjxzixc9dwc1hn5pd60yyij98krk2pr758aiga97r02ncvaqx1hidi95wk470k1v84gg4alls9bm52m77174z128bgf13b61x951h";
+        sha1 = "c19c9df9a028702d678612384a6552404c636d15";
       };
     };
     "fs.realpath-1.0.0" = {
@@ -1801,7 +1801,7 @@ let
       version = "3.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz";
-        sha512 = "1879a3j85h92ypvb7lpv1dqpcxl49rqnbgs5la18zmj1yqhwl60c2m74254wbr5pp3znckqpkg9dvjyrz6hfz8b9vag5a3j910db4f8";
+        sha1 = "5166e286457f03306064be5497e8dbb0c3d32083";
       };
     };
     "once-1.4.0" = {
@@ -2089,7 +2089,7 @@ let
       version = "2.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/async/-/async-2.5.0.tgz";
-        sha512 = "1ijrwmifg76a8wwhhfqxg23kd0rsjhzklwvj2czvqxs2k25ii6p3y6s3vhbcc5hnr87b0gfc4nb54b8bph2hn9c6z1f6nldjw04ksbv";
+        sha1 = "843190fd6b7357a0b9e1c956edddd5ec8462b54d";
       };
     };
     "lodash-4.17.4" = {
@@ -2116,16 +2116,16 @@ let
       version = "2.11.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz";
-        sha512 = "2yi2hwf0bghfnv1fdgd4wvh7s0acjrgqbgww97ncm6i6s6ffs1zahnj48f6gqpqj6fsf0jigvnr0civ25k2160c38281r80wvg7jkkg";
+        sha1 = "157152fd1e7a6c8d98a5b715cf376df928004563";
       };
     };
-    "is-my-json-valid-2.16.0" = {
+    "is-my-json-valid-2.16.1" = {
       name = "is-my-json-valid";
       packageName = "is-my-json-valid";
-      version = "2.16.0";
+      version = "2.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz";
-        sha1 = "f079dd9bfdae65ee2038aae8acbc86ab109e3693";
+        url = "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.16.1.tgz";
+        sha1 = "5a846777e2c2620d1e69104e5d3a03b1f6088f11";
       };
     };
     "pinkie-promise-2.0.1" = {
@@ -2512,7 +2512,7 @@ let
       version = "2.3.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz";
-        sha512 = "1wlizkv2wnz2nyb0lfxgs1m27zzcvasp3n5cfrd7hm4ch1wn79df2nbhzfadba5qqdfb28vhmw3drhp46vk2q6xk524qagvr76v7slv";
+        sha1 = "368f2512d79f9d46fdfc71349ae7878bbc1eb95c";
       };
     };
     "string_decoder-1.0.3" = {
@@ -2521,7 +2521,7 @@ let
       version = "1.0.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz";
-        sha512 = "22vw5mmwlyblqc2zyqwl39wyhyahhpiyknim8iz5fk6xi002x777gkswiq8fh297djs5ii4pgrys57wq33hr5zf3xfd0d7kjxkzl0g0";
+        sha1 = "0fc67d7c141825de94282dd536bec6b9bce860ab";
       };
     };
     "http-basic-2.5.1" = {
@@ -2539,7 +2539,7 @@ let
       version = "7.3.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz";
-        sha512 = "17cn4nns2nxh9r0pdiqsqx3fpvaa82c1mhcr8r84k2a9hkpb0mj4bxzfbg3l9iy74yn9hj6mh2gsddsi3v939a1zp7ycbzqkxfm12cy";
+        sha1 = "064b72602b18f90f29192b8b1bc418ffd1ebd3bf";
       };
     };
     "asap-2.0.6" = {
@@ -2665,7 +2665,7 @@ let
       version = "5.4.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz";
-        sha512 = "2r13vwvb5ick34k6flr7vgbjfsdka8zbj5a74rd0ba4bp0nqmhppbaw3qlwn7f4smpifpa4iy4hxj137y598rbvsmy3h0d8vxgvzwar";
+        sha1 = "e059c09d8571f0540823733433505d3a2f00b18e";
       };
     };
     "temp-0.8.3" = {
@@ -2746,7 +2746,7 @@ let
       version = "2.2.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/ext-list/-/ext-list-2.2.2.tgz";
-        sha512 = "0a77zmipy5silq8yx7adj0hw82ccvshbs5alv3h8l0vk83lkm5m7pw6y2781wnbks8h98ixyn2q3q065l6m8pwbrhxa3bcvrf191r5v";
+        sha1 = "0b98e64ed82f5acf0f2931babf69212ef52ddd37";
       };
     };
     "meow-3.7.0" = {
@@ -2809,7 +2809,7 @@ let
       version = "2.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz";
-        sha512 = "01wzws79ps84ylshjb7rfpjykgiqxnpr89s52p2yyzfx8nfvyh5flvf1almiiavsi75xgi8g3s5davc1mmgz7gn8yvlqz6gnhax8f7n";
+        sha1 = "12f95a307d58352075a04907b84ac8be98ac012f";
       };
     };
     "object-assign-4.1.1" = {
@@ -2890,7 +2890,7 @@ let
       version = "2.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.5.0.tgz";
-        sha512 = "355g980qsk8k9hkv60z58llbvpscjl5yqkh4wx719s8jcq2swzn4ynzinj8azmvdgs10r22wb297rmixh9vvsml55sbysdf2i8ipn54";
+        sha1 = "6d60e34b3abbc8313062c3b798ef8d901a07af3c";
       };
     };
     "is-builtin-module-1.0.0" = {
@@ -3250,7 +3250,7 @@ let
       version = "5.0.7";
       src = fetchurl {
         url = "https://registry.npmjs.org/buffer/-/buffer-5.0.7.tgz";
-        sha512 = "2p32xxvhb1b3dp3hjy1ga0iajddqfxqi25wx44lhd94jjry1g758zywadx6hq04c8zsrcnmjyjrlymxrfmgyxib837jd93rd1fqgrrm";
+        sha1 = "570a290b625cf2603290c1149223d27ccf04db97";
       };
     };
     "cached-path-relative-1.0.1" = {
@@ -3295,7 +3295,7 @@ let
       version = "3.11.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.11.1.tgz";
-        sha512 = "2alsgx5iqvf0nr641lz4g24bpvfgv6lza2h9n34d24jhvs3s0dklnds2x2nzs2w9sfiadi6zy93c2szm5ajn50wwnb8dalf02bxkbim";
+        sha1 = "948945efc6757a400d6e5e5af47194d10064279f";
       };
     };
     "defined-1.0.0" = {
@@ -3484,7 +3484,7 @@ let
       version = "2.7.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/stream-http/-/stream-http-2.7.2.tgz";
-        sha512 = "09n1hj53jy075fnbsaaiknry7in0l4yarh912abwgvk4hwl33lvn8wrfw891zg5bkfa7sxlmd5yz3xxd4dmcln19bnkahyvd87r6k3k";
+        sha1 = "40a050ec8dc3b53b33d9909415c02c0bf1abfbad";
       };
     };
     "subarg-1.0.0" = {
@@ -3646,7 +3646,7 @@ let
       version = "1.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/base64-js/-/base64-js-1.2.1.tgz";
-        sha512 = "0dhi66vsajfcm04s11xqklh5lj3abs4ncnl8h3689964aqam3ps9spmc454hz94rz3x1x5l1ad03jrba67mq9zc9vq9a1gchma581bp";
+        sha1 = "a91947da1f4a516ea38e5b4ec0ec3773675e0886";
       };
     };
     "ieee754-1.1.8" = {
@@ -3727,7 +3727,7 @@ let
       version = "3.0.13";
       src = fetchurl {
         url = "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.13.tgz";
-        sha512 = "3crgpf13g3zshm39jjfgnp4lfg5jilllwk6ixi07nzyf4yghmxrhrdmhsgr5jr855ma790a21hd4bcvpx8bv9h5irnk6xpy6728gl7r";
+        sha1 = "c37d295531e786b1da3e3eadc840426accb0ae25";
       };
     };
     "public-encrypt-4.0.0" = {
@@ -3745,7 +3745,7 @@ let
       version = "2.0.5";
       src = fetchurl {
         url = "https://registry.npmjs.org/randombytes/-/randombytes-2.0.5.tgz";
-        sha512 = "293m4ffiafbjg0b99a2k78wiffmlwc2v7cigrn5l3n7555x7qxyr34sp0s4p713vwlaf0ny5n57iysgkz08slld3hzw8ci1a2gxjgpi";
+        sha1 = "dc009a246b8d09a177b4b7a0ae77bc570f4b1b79";
       };
     };
     "browserify-aes-1.0.6" = {
@@ -3766,13 +3766,13 @@ let
         sha1 = "daa277717470922ed2fe18594118a175439721dd";
       };
     };
-    "evp_bytestokey-1.0.0" = {
+    "evp_bytestokey-1.0.2" = {
       name = "evp_bytestokey";
       packageName = "evp_bytestokey";
-      version = "1.0.0";
+      version = "1.0.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz";
-        sha1 = "497b66ad9fef65cd7c08a6180824ba1476b66e53";
+        url = "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.2.tgz";
+        sha1 = "f66bb88ecd57f71a766821e20283ea38c68bf80a";
       };
     };
     "buffer-xor-1.0.3" = {
@@ -3790,7 +3790,7 @@ let
       version = "1.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz";
-        sha512 = "3cm9kdc1sv7pakzlhrc1pazdvg9lk4hv31lximwbcrgmwfzg6imxrndszgx9yzlizknfh2b73cr7b5mfcv50bldpyq6jr5s4zknsj1a";
+        sha1 = "8760e4ecc272f4c363532f926d874aae2c1397de";
       };
     };
     "des.js-1.0.0" = {
@@ -3817,7 +3817,7 @@ let
       version = "4.11.8";
       src = fetchurl {
         url = "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz";
-        sha512 = "20bg51v29zygy89w84qb64pkjikxfjdsgjs0ry6pvv8fkwn5kd1izrqn022d838q3rcaq8dmy033g7q8b6960j4f8ipan74y9ydimr2";
+        sha1 = "2cde09eb5ee341f484746bb0309b3253b1b1442f";
       };
     };
     "browserify-rsa-4.0.1" = {
@@ -3862,7 +3862,7 @@ let
       version = "1.1.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz";
-        sha512 = "0f88i7rv3ib8lwdh5z5lwrml404frzb1a9n3g25y85jpfng82vzsv7m3c5fbyrpq5ki4c3pa8823z3s61xfigm45q469nqnzp416hgx";
+        sha1 = "340dedbe6290187151c1ea1d777a3448935df846";
       };
     };
     "hmac-drbg-1.0.1" = {
@@ -4270,13 +4270,13 @@ let
         sha1 = "68261be4efb48840239b5791af23ee3b8bd79808";
       };
     };
-    "xml2js-0.4.18" = {
+    "xml2js-0.4.19" = {
       name = "xml2js";
       packageName = "xml2js";
-      version = "0.4.18";
+      version = "0.4.19";
       src = fetchurl {
-        url = "https://registry.npmjs.org/xml2js/-/xml2js-0.4.18.tgz";
-        sha512 = "2hgm5fp1zqiy89nn0i4j11j3h53h1hh0w2kbnfja16f8xbzkam62blrvz46xm8jnnaixwpxg8ydifvzmmyly0aml2c7k8gj1a9jvi9h";
+        url = "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz";
+        sha1 = "686c20f213209e94abf0d1bcf1efaa291c7827a7";
       };
     };
     "xspfr-0.3.1" = {
@@ -4780,16 +4780,16 @@ let
       version = "4.0.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-4.0.3.tgz";
-        sha512 = "2shaz6cv4fgbmy1hq6hc59spkja51qg0vvx514r1nqsspdnsq6xzxabk0gs17x3n8s03y9mj8hx1xn5c0bkq9fvx59sxms2a4mlig9r";
+        sha1 = "3e2ab0a464a803cc35d1357a1029d1cbd11dae37";
       };
     };
-    "simple-get-2.6.0" = {
+    "simple-get-2.7.0" = {
       name = "simple-get";
       packageName = "simple-get";
-      version = "2.6.0";
+      version = "2.7.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.6.0.tgz";
-        sha1 = "bb01144db49b3d4c107615dcf48d3ee404b16e06";
+        url = "https://registry.npmjs.org/simple-get/-/simple-get-2.7.0.tgz";
+        sha1 = "ad37f926d08129237ff08c4f2edfd6f10e0380b5";
       };
     };
     "thirty-two-1.0.2" = {
@@ -4816,7 +4816,7 @@ let
       version = "1.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/bencode/-/bencode-1.0.0.tgz";
-        sha512 = "1kvjv5hs1c53b5g2vghpnncn4zj397sa0vpbx1pzpn8ngq52s3xq9923gnl2kzkh1mhyrl277jrh87a766yks89qvz8b4jczr44xr9p";
+        sha1 = "0b83aea885b3547b579ada0c6a5e7739fe4d073e";
       };
     };
     "simple-sha1-2.1.0" = {
@@ -4837,6 +4837,15 @@ let
         sha1 = "b264ddaa4d49a1d67300061858ba9358c4adca14";
       };
     };
+    "decompress-response-3.3.0" = {
+      name = "decompress-response";
+      packageName = "decompress-response";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz";
+        sha1 = "80a4dd323748384bfa248083622aedec982adff3";
+      };
+    };
     "simple-concat-1.0.0" = {
       name = "simple-concat";
       packageName = "simple-concat";
@@ -4846,13 +4855,13 @@ let
         sha1 = "7344cbb8b6e26fb27d66b2fc86f9f6d5997521c6";
       };
     };
-    "unzip-response-2.0.1" = {
-      name = "unzip-response";
-      packageName = "unzip-response";
-      version = "2.0.1";
+    "mimic-response-1.0.0" = {
+      name = "mimic-response";
+      packageName = "mimic-response";
+      version = "1.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz";
-        sha1 = "d2f0f737d16b0615e72a6935ed04214572d56f97";
+        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz";
+        sha1 = "df3d3652a73fded6b9b0b24146e6fd052353458e";
       };
     };
     "once-1.2.0" = {
@@ -5023,7 +5032,7 @@ let
       version = "1.8.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/random-access-file/-/random-access-file-1.8.1.tgz";
-        sha512 = "3pvi9knrjp8krj1hsg8i2qmv5097fid3qnyz4wh2dvpr37x2ga6qqk7afh5f1i5sb9dsw169bara13knccdmjwnivb62xgywz868j7r";
+        sha1 = "b1a54a0f924fbd4d45731a5771aea36be2166532";
       };
     };
     "run-parallel-1.1.6" = {
@@ -5257,7 +5266,7 @@ let
       version = "1.7.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/k-rpc-socket/-/k-rpc-socket-1.7.1.tgz";
-        sha512 = "1xigw4j1na5gxiff1dad35vn0h91i77a9jzwsczl47rypanm2vfwyx2zchzdgny7mrxrn14bk9xss16nj2k3vng60v8pc7snjdc6q8n";
+        sha1 = "e6e92a00b2c74906ad69c42b6ea213dce8914d95";
       };
     };
     "bencode-0.8.0" = {
@@ -5332,13 +5341,13 @@ let
         sha1 = "57f40d036832e5f5055662a397c4de76ed66bf61";
       };
     };
-    "ipaddr.js-1.4.0" = {
+    "ipaddr.js-1.5.2" = {
       name = "ipaddr.js";
       packageName = "ipaddr.js";
-      version = "1.4.0";
+      version = "1.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.4.0.tgz";
-        sha1 = "296aca878a821816e5b85d0a285a99bcff4582f0";
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.5.2.tgz";
+        sha1 = "d4b505bde9946987ccf0fc58d9010ff9607e3fa0";
       };
     };
     "get-browser-rtc-1.0.2" = {
@@ -5671,7 +5680,7 @@ let
       version = "1.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/voc/-/voc-1.0.0.tgz";
-        sha512 = "1zss1rcd373slj9qjmy4zp7ann95isbkvjlrgp2dirpazvn1sy23hgnw6p72w0mj8hcgqpxvs0ls035zmb8isilqhqqpkmya9d3234r";
+        sha1 = "5465c0ce11d0881f7d8e36d8ca587043f33a25ae";
       };
     };
     "exit-on-epipe-1.0.1" = {
@@ -5680,7 +5689,7 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz";
-        sha512 = "2kxcf7dq1q9z2wqwwfjagn77kpzg2zpjqf2kd3vj5drx576gwglbsfly2b1imabj3svgcz5xsx79kspq1xsdgm4wwg1fksfnjdgjv47";
+        sha1 = "0bdd92e87d5285d267daa8171d0eb06159689692";
       };
     };
     "sax-1.2.4" = {
@@ -5689,7 +5698,7 @@ let
       version = "1.2.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz";
-        sha512 = "1dn291mjsda42w8kldlbmngk6dhjxfbvvd5lckyqmwbjaj6069iq3wx0nvcfglwnpddz2qa93lzf4hv77iz43bd2qixa079sjzl799n";
+        sha1 = "2816234e2378bddc4e5354fab5caa895df7100d9";
       };
     };
     "xmlbuilder-9.0.4" = {
@@ -5926,13 +5935,13 @@ let
         sha1 = "364200d5f13646ca8bcd44490271335614792300";
       };
     };
-    "big-integer-1.6.23" = {
+    "big-integer-1.6.24" = {
       name = "big-integer";
       packageName = "big-integer";
-      version = "1.6.23";
+      version = "1.6.24";
       src = fetchurl {
-        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.23.tgz";
-        sha1 = "e85d508220c74e3f43a4ce72eed51f3da4db94d1";
+        url = "https://registry.npmjs.org/big-integer/-/big-integer-1.6.24.tgz";
+        sha1 = "1ed84d018ac3c1c72b307e7f7d94008e8ee20311";
       };
     };
     "sax-0.3.5" = {
@@ -6157,7 +6166,7 @@ let
       version = "5.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/acorn/-/acorn-5.1.1.tgz";
-        sha512 = "1rkrq8iizbb4v8qv16qdknj2m9cjbxyl6d0jlp1jsnkys56b7xnn50f7qxbcsmz5z1m9r8j1pas6ai7bnhlmvmv88pyvdhw8fw3msdw";
+        sha1 = "53fe161111f912ab999ee887a90a0bc52822fd75";
       };
     };
     "foreach-2.0.5" = {
@@ -6286,13 +6295,13 @@ let
         sha1 = "032e2253489cf8fce02666beca3d11ed7a2daed1";
       };
     };
-    "accepts-1.3.3" = {
+    "accepts-1.3.4" = {
       name = "accepts";
       packageName = "accepts";
-      version = "1.3.3";
+      version = "1.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz";
-        sha1 = "c3ca7434938648c3e0d9c1e328dd68b622c284ca";
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz";
+        sha1 = "86246758c7dd6d21a6474ff084a4740ec05eb21f";
       };
     };
     "bytes-2.5.0" = {
@@ -6427,7 +6436,7 @@ let
       version = "1.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/finalhandler/-/finalhandler-1.0.4.tgz";
-        sha512 = "2vbps6iw562i2zxd973z5mmbs8ggx3wbz4g1jqwvkjibiwrk9ym8bxcvvwnlmxqad92x120x5xz5nyfq68nd8akk355bkk0qjppzafp";
+        sha1 = "18574f2e7c4b98b8ae3b230c21f201f31bdb3fb7";
       };
     };
     "fresh-0.5.0" = {
@@ -6499,7 +6508,7 @@ let
       version = "6.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/qs/-/qs-6.5.0.tgz";
-        sha512 = "2d5w08p3vr4l6rjcn5n5ph8g5wr0nzpypg1b7axvz3q3r9pp5jxanhywvd76wk76nqjcqb4p6n4l4ifjw8164bcahhs71kjdy6ladby";
+        sha1 = "8d04954d364def3efc55b5a0793e1e2c8b1e6e49";
       };
     };
     "send-0.15.4" = {
@@ -6583,6 +6592,15 @@ let
         sha1 = "19ef9874c4ae1c297bcf078fde63a09b66a84363";
       };
     };
+    "ipaddr.js-1.4.0" = {
+      name = "ipaddr.js";
+      packageName = "ipaddr.js";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.4.0.tgz";
+        sha1 = "296aca878a821816e5b85d0a285a99bcff4582f0";
+      };
+    };
     "destroy-1.0.4" = {
       name = "destroy";
       packageName = "destroy";
@@ -6634,7 +6652,7 @@ let
       version = "5.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-5.1.2.tgz";
-        sha512 = "36g1gm57qcvdgb4lm6ibl9pgma8lgx8l8i2jzap6w3v36wfzsqa7vb411zd26yp9rgcq23951vl5j6pac22qd5h9x7jm9raznnnr460";
+        sha1 = "fb18d17bb61e60900d6312619919bd753755ab37";
       };
     };
     "promzard-0.3.0" = {
@@ -6646,13 +6664,13 @@ let
         sha1 = "26a5d6ee8c7dee4cb12208305acfb93ba382a9ee";
       };
     };
-    "read-package-json-2.0.11" = {
+    "read-package-json-2.0.12" = {
       name = "read-package-json";
       packageName = "read-package-json";
-      version = "2.0.11";
+      version = "2.0.12";
       src = fetchurl {
-        url = "https://registry.npmjs.org/read-package-json/-/read-package-json-2.0.11.tgz";
-        sha512 = "1y74w8zm70x1zc7qgg6fxg72pb78dmafg2bf5x4gn1z8d4amjrw2q3d4j9035ginsrigk372scwj57p0ll5ck9yxdgnyjpzcd5fj7wy";
+        url = "https://registry.npmjs.org/read-package-json/-/read-package-json-2.0.12.tgz";
+        sha1 = "68ea45f98b3741cb6e10ae3bbd42a605026a6951";
       };
     };
     "validate-npm-package-name-3.0.0" = {
@@ -6670,7 +6688,16 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.1.tgz";
-        sha512 = "05ndp7b03ikx2vqivfxlm6c73yagjyrdp22ay8z592pqxldbsm7hjzpa3asal2vys99lvirqar3ly3sb1ibhhngls4sqc4nwp2jj967";
+        sha1 = "50183cd1b2d25275de069e9e71b467ac9eab973a";
+      };
+    };
+    "slash-1.0.0" = {
+      name = "slash";
+      packageName = "slash";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz";
+        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
       };
     };
     "builtins-1.0.3" = {
@@ -7624,7 +7651,7 @@ let
       version = "3.5.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/duplexify/-/duplexify-3.5.1.tgz";
-        sha512 = "0cyjpkdqc1lkh2fh7z9p2i6va4fvwazvpn4153ndpb2ng8w0q9x9kb0hk07yy0baj50s1kl58m7f7zmx8fqdfcp2vsl0m7hfk22i64g";
+        sha1 = "4e1516be68838bc90a49994f0b39a6e5960befcd";
       };
     };
     "infinity-agent-2.0.3" = {
@@ -8156,7 +8183,7 @@ let
       version = "1.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz";
-        sha512 = "15lvjac4av3h7xmks8jgd56vryz5xb27r8xcpfwhfyr9dv305lms5llc1x6nx6nfvha873d4vg04nfi89aj4jkxplrnjiyc9kjf34hf";
+        sha1 = "b346f6ecf6a95f5a815c5839fc7cdb22502f1ed7";
       };
     };
     "nan-2.6.2" = {
@@ -8891,13 +8918,13 @@ let
         sha1 = "cac328f7bee45730d404b692203fcb590e172d5e";
       };
     };
-    "aws-sdk-2.100.0" = {
+    "aws-sdk-2.104.0" = {
       name = "aws-sdk";
       packageName = "aws-sdk";
-      version = "2.100.0";
+      version = "2.104.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.100.0.tgz";
-        sha1 = "fc0fbca7690d6c28effd28bd51fe85f7dba42bff";
+        url = "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.104.0.tgz";
+        sha1 = "335e0553380c0ae8dd43d11b76d73dfb926f6333";
       };
     };
     "request-2.81.0" = {
@@ -9068,7 +9095,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/conf/-/conf-1.1.2.tgz";
-        sha512 = "0x5jhmsdnq5y7m1wdvvcdg2rxf6435lw7s00gim8zsb4l2z4slvb2g7macl1376v9mcznfvl9p65m7xzm6f3cb20yfq3v2xi1qfd6yi";
+        sha1 = "a164003022dd1643cd5abd9653071bd3b0a19f50";
       };
     };
     "got-7.1.0" = {
@@ -9077,7 +9104,7 @@ let
       version = "7.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/got/-/got-7.1.0.tgz";
-        sha512 = "0phvycaq4yl6jjpyc9vwmgghfy7a6nnpynscpgpbx74zjaa5dbpl1ag0jf7jvimfk0vf6xfjqgh67xdlvi0ycgvp1kasajapjiqr5b3";
+        sha1 = "05450fd84094e6bbea56f451a43a9c289166385a";
       };
     };
     "has-ansi-3.0.0" = {
@@ -9095,7 +9122,7 @@ let
       version = "1.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/import-jsx/-/import-jsx-1.3.0.tgz";
-        sha512 = "26xxz57vqm8p6mg0syr21risma4h5h9n8kn4zv4pcxqap4zxicc210w5m7vz6a4zldhd102sbi7giwzmw0wjlpr6rb1hycr8iv703b1";
+        sha1 = "079df1da943b3274f46932fb740c9b56dd6351fb";
       };
     };
     "ink-0.3.1" = {
@@ -9104,7 +9131,7 @@ let
       version = "0.3.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/ink/-/ink-0.3.1.tgz";
-        sha512 = "0km0z5smnzrh4c5386h3vbmvps6m45m6hbbf62as9wl4vw370q411gpxxhqz3i83n0qjds7py2ylgjx2y3915m5v77c1sf428w4wwkv";
+        sha1 = "551047276cb93baa3f14eafaef2ae5b1526e8213";
       };
     };
     "ink-text-input-1.1.0" = {
@@ -9113,7 +9140,7 @@ let
       version = "1.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/ink-text-input/-/ink-text-input-1.1.0.tgz";
-        sha512 = "3dlsk820l687ixfmi4qx8czzb7cr0hfz5gijxvm5x0qrnhrcg4kqzhvph2hrf50whjj3cxcbyx6ldqxnp6msw7ai5rs3b4vs50vcpak";
+        sha1 = "887a9623c23fd5c6f173b9704e6cc6029d0a15c1";
       };
     };
     "lodash.debounce-4.0.8" = {
@@ -9203,7 +9230,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz";
-        sha512 = "1xz91sizgyzh8plz5jx1labzpygapm6xy3qpxriaj00yvnhy4lnmhqcb20qln4lh80c5g3yzp4j5i6g63njq1r5sl9c0zlkh9xjk2xb";
+        sha1 = "622e32e82488b49279114a4f9ecf45e7cd6bba55";
       };
     };
     "shebang-command-1.2.0" = {
@@ -9239,7 +9266,7 @@ let
       version = "4.2.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz";
-        sha512 = "2wyv9brsq3dzp724y1q5z5j5ja83y834hgc193lnarfdycwz1ii3xg02qxx3dg05x3skwjm1di5s5a8hqi8l5v1afx2bia436pifhxm";
+        sha1 = "1f19e0c2e1aa0e32797c49799f2837ac6af69c57";
       };
     };
     "env-paths-1.0.0" = {
@@ -9314,15 +9341,6 @@ let
         sha1 = "b07ff2d9a5d88bec806035895a2bab66a27988bc";
       };
     };
-    "decompress-response-3.3.0" = {
-      name = "decompress-response";
-      packageName = "decompress-response";
-      version = "3.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz";
-        sha1 = "80a4dd323748384bfa248083622aedec982adff3";
-      };
-    };
     "duplexer3-0.1.4" = {
       name = "duplexer3";
       packageName = "duplexer3";
@@ -9347,7 +9365,7 @@ let
       version = "1.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/isurl/-/isurl-1.0.0.tgz";
-        sha512 = "3vs53bpdrwiwwcql2xs20jmd8qha27k4iypdhr0b3isgdaj18vz80nhxwvvqxk6y3x5vj3slchxl0r91gjhz487xmkkp52gridg5zyl";
+        sha1 = "b27f4f49f3cdaa3ea44a0a5b7f3462e6edc39d67";
       };
     };
     "p-cancelable-0.3.0" = {
@@ -9356,7 +9374,7 @@ let
       version = "0.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz";
-        sha512 = "35jir2yjv2l3v8aj062w0hfinzgwpb1sbhmaym8h4xn78j498naj7mkf4rpv74n5bfkysxb7l893l2yw3dpqk5dgb2yiwr8pcydjmj5";
+        sha1 = "b9e123800bcebb7ac13a479be195b507b98d30fa";
       };
     };
     "p-timeout-1.2.0" = {
@@ -9395,22 +9413,13 @@ let
         sha1 = "1505a03a289a48cbd7a434efbaeec5055f5633a9";
       };
     };
-    "mimic-response-1.0.0" = {
-      name = "mimic-response";
-      packageName = "mimic-response";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.0.tgz";
-        sha1 = "df3d3652a73fded6b9b0b24146e6fd052353458e";
-      };
-    };
     "has-to-string-tag-x-1.4.0" = {
       name = "has-to-string-tag-x";
       packageName = "has-to-string-tag-x";
       version = "1.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/has-to-string-tag-x/-/has-to-string-tag-x-1.4.0.tgz";
-        sha512 = "0ldd58k8nhlbx35b3bbvyq9w38sdg9ac3334s6bxjw2zn803aa8zal9jvg793561g11yhwrlj4bw160ppmmswidhpwh3s33zww9sws7";
+        sha1 = "49d7bcde85c2409be38ac327e3e119a451657c7b";
       };
     };
     "is-object-1.0.1" = {
@@ -9428,7 +9437,7 @@ let
       version = "1.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/has-symbol-support-x/-/has-symbol-support-x-1.4.0.tgz";
-        sha512 = "14khsaf360hn87pdlz9scgn3c5s1ndihc6prcsi5k2rkiapz4ag3lg448a69srpsvdk7jyp4hf4a9fp113nkprdmnadrx2n7cn6slqp";
+        sha1 = "442d89b1d0ac6cf5ff2f7b916ee539869b93a256";
       };
     };
     "ansi-regex-3.0.0" = {
@@ -9590,7 +9599,7 @@ let
       version = "6.18.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz";
-        sha512 = "1qk460vyxfs08g8586jdc02wqzyy2y06596qcn1na9bz7yxra6vgh6177qf345xai0virpaz56bkpgmfcrd8yx5l2vjkn49y66h9xdb";
+        sha1 = "af2f3b88fa6f5c1e4c634d1a0f8eac4f55b395e3";
       };
     };
     "convert-source-map-1.5.0" = {
@@ -9620,15 +9629,6 @@ let
         sha1 = "68ce5e8a1ef0a23bb570cc28537b5332aba63ef1";
       };
     };
-    "slash-1.0.0" = {
-      name = "slash";
-      packageName = "slash";
-      version = "1.0.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz";
-        sha1 = "c41f2f6c39fc16d1cd17ad4b5d896114ae470d55";
-      };
-    };
     "esutils-2.0.2" = {
       name = "esutils";
       packageName = "esutils";
@@ -9698,7 +9698,7 @@ let
       version = "0.4.16";
       src = fetchurl {
         url = "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.16.tgz";
-        sha512 = "2p8x22bgrc6cyxz8j73zzcwpqcb7fszycq7qrvbb0wd4g5wvdrz40lv3hyagx5if3xw0x1sjisx1a298gl51xl2mxizj7rvsv4ybaq3";
+        sha1 = "16fecf98212467d017d586a2af68d628b9421cd8";
       };
     };
     "regenerator-runtime-0.11.0" = {
@@ -9707,7 +9707,7 @@ let
       version = "0.11.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz";
-        sha512 = "3a1pn2aankj443h5v8png8dbgrlyb7fcdn66vjglxwqvdpivpq959qsl2n44i6zwf1k5y6y23xwhim0x077yy275dyr6vwiny83987x";
+        sha1 = "7e54fe5b5ccd5d6624ea6255c3473be090b802e1";
       };
     };
     "globals-9.18.0" = {
@@ -9716,7 +9716,7 @@ let
       version = "9.18.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz";
-        sha512 = "18psd5ig23apaw07k4mma3z1hi2ndfwsqkm05hxashnf5lf7mpfs6kjiircc0x3x3q15j2x2j4zfzsqacxvfsmw40zjchn44bfccjab";
+        sha1 = "aa3896b3e69b487f17e31ed2143d69a8e30c2d8a";
       };
     };
     "invariant-2.2.2" = {
@@ -9806,7 +9806,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz";
-        sha512 = "1fnn3znivja3xq1lacvsdwkl2s8ki9w95sylnf2pkmaia1mjz3llbdb5r2dxsflqfky3h8f1bh0piv0l5waw2bkdniqnyv0yx5wch9d";
+        sha1 = "ac5becf14fa21b99c6c92ca7a7d7cfd5b17e743e";
       };
     };
     "indent-string-3.2.0" = {
@@ -9860,7 +9860,7 @@ let
       version = "3.2.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz";
-        sha512 = "2x19fs1qvg7ifsdvii4g8kqpa5hir1lm0k0y0fz6dhm5c8gh4z9il4wqczl078p2ikmrav23dmj86cxy8y1j22k4mv59d8qq6c8wx1n";
+        sha1 = "c159b8d5be0f9e5a6f346dab94f16ce022161b88";
       };
     };
     "supports-color-4.2.1" = {
@@ -9869,7 +9869,7 @@ let
       version = "4.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/supports-color/-/supports-color-4.2.1.tgz";
-        sha512 = "1ldz0jkrkclywnr7gwh85p6kljs5rm4jczbpj55vb9w5c81iyrf1ahgkw88nnzahgw2xvlg041vqk7gynxkwcqkzfagxjpphsrdh75b";
+        sha1 = "65a4bb2631e90e02420dba5554c375a4754bb836";
       };
     };
     "color-convert-1.9.0" = {
@@ -9959,7 +9959,7 @@ let
       version = "2.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz";
-        sha512 = "29s1fqgr4mnhfxwczgdghfmmc1f792m9hysvcjxw2h5lfj8ndf2b6gm02m96qk5m75g4aisijvng4pk618anwbr8i9ay2jyszkqgslw";
+        sha1 = "ab93f27a8dc13d28cac815c462143a6d9012ae9e";
       };
     };
     "strip-ansi-4.0.0" = {
@@ -10031,7 +10031,7 @@ let
       version = "1.7.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.2.tgz";
-        sha512 = "250k1k343w8g1ndd16h1lqcdvp989id6agsppfqi9a6lcqk89ga56xjz78hhy1dqn86vha8n8s551pwpyd1n87mkw4a7143djmm95n5";
+        sha1 = "c54e9aac57e432875233525f3c891c4159ffefd7";
       };
     };
     "whatwg-fetch-2.0.3" = {
@@ -10058,7 +10058,7 @@ let
       version = "0.4.18";
       src = fetchurl {
         url = "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.18.tgz";
-        sha512 = "2l97vd6kax8syr9aggcqhiyhd3b2rf506wdq6wapfrc74qwpdzqf2a3891kq9ri3g5sdzayph2sz4zkr8kbbps58z9h2lvpk115kgdj";
+        sha1 = "23d8656b16aae6742ac29732ea8f0336a4789cf2";
       };
     };
     "unicode-emoji-modifier-base-1.0.0" = {
@@ -10142,13 +10142,13 @@ let
         sha1 = "1b0ab3bd553b2a0d6399d29c0e3ea0b252078327";
       };
     };
-    "ignore-3.3.3" = {
+    "ignore-3.3.4" = {
       name = "ignore";
       packageName = "ignore";
-      version = "3.3.3";
+      version = "3.3.4";
       src = fetchurl {
-        url = "https://registry.npmjs.org/ignore/-/ignore-3.3.3.tgz";
-        sha1 = "432352e57accd87ab3110e82d3fea0e47812156d";
+        url = "https://registry.npmjs.org/ignore/-/ignore-3.3.4.tgz";
+        sha1 = "85ab6d0a9ca8b27b31604c09efe1c14dc21ab872";
       };
     };
     "inquirer-3.2.2" = {
@@ -10157,7 +10157,7 @@ let
       version = "3.2.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/inquirer/-/inquirer-3.2.2.tgz";
-        sha512 = "0gsmdyd280pgvy7aqam9hdjhpljwmyn2axwmf2gp6qrc8cxrykrshan1kr1s1f9cb8pf13m3jav92df9dbn1gwkk7i08m698768nckd";
+        sha1 = "c2aaede1507cc54d826818737742d621bef2e823";
       };
     };
     "is-resolvable-1.0.0" = {
@@ -10175,7 +10175,7 @@ let
       version = "3.9.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.1.tgz";
-        sha512 = "31wxw267vdf4nnjpksnzcb4i603366sjrw7g08bkxi3cwlrfl67458v7rvj72vbxcycq43z4ldkrfvqjrsvrjqrb2kfzmabpzghddq9";
+        sha1 = "08775cebdfdd359209f0d2acd383c8f86a6904a0";
       };
     };
     "levn-0.3.0" = {
@@ -10301,7 +10301,7 @@ let
       version = "0.3.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz";
-        sha512 = "3hadrrn41znfv3gbqjxf0ckzjmns7w7zgsqw73sdz8nclaff9b0cg1mqhz3zxw3ndnmqqvrdcfykkfpv2v1pv4jdyzcccbn3hsbg4ji";
+        sha1 = "815c99ea84f6809529d2f45791bdf82711352d66";
       };
     };
     "del-2.2.2" = {
@@ -10376,13 +10376,13 @@ let
         sha1 = "fc06e5a1683fbda13de667aff717bbc10a48f37f";
       };
     };
-    "cli-width-2.1.0" = {
+    "cli-width-2.2.0" = {
       name = "cli-width";
       packageName = "cli-width";
-      version = "2.1.0";
+      version = "2.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/cli-width/-/cli-width-2.1.0.tgz";
-        sha1 = "b234ca209b29ef66fc518d9b98d5847b00edf00a";
+        url = "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz";
+        sha1 = "ff19ede8a9a5e579324147b0c11f0fbcbabed639";
       };
     };
     "external-editor-2.0.4" = {
@@ -10436,7 +10436,7 @@ let
       version = "1.5.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz";
-        sha512 = "3c44v9rz6j4z6i7gj2v3wmfcqv5i47psysgd1p4jcgz114vfk99fif1n1r08jbsdkp4g3smv1wx7x4ikwa7q9dp5i1bc77la17s2kdw";
+        sha1 = "c519f629f86b3a5bedba58a88d311309eec097f9";
       };
     };
     "tmp-0.0.31" = {
@@ -10481,7 +10481,7 @@ let
       version = "4.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz";
-        sha512 = "27mkhd94y9vrr8pb97br0ym5h85rawwb0biswgwdfp31x0387y12k9p9598bi4fc83fif6crfzqiqmmjs4x7gcb22ml3z1fldqm7yx1";
+        sha1 = "4499eddcd1110e0b218bacf2fa7f7f59f55ca804";
       };
     };
     "prelude-ls-1.1.2" = {
@@ -10574,13 +10574,13 @@ let
         sha1 = "edbf8903f66f7ce2f8eafd6ceed65e264c831b35";
       };
     };
-    "eslint-4.4.1" = {
+    "eslint-4.5.0" = {
       name = "eslint";
       packageName = "eslint";
-      version = "4.4.1";
+      version = "4.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/eslint/-/eslint-4.4.1.tgz";
-        sha1 = "99cd7eafcffca2ff99a5c8f5f2a474d6364b4bd3";
+        url = "https://registry.npmjs.org/eslint/-/eslint-4.5.0.tgz";
+        sha1 = "bb75d3b8bde97fb5e13efcd539744677feb019c3";
       };
     };
     "supports-color-3.2.3" = {
@@ -10643,7 +10643,7 @@ let
       version = "0.5.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/zen-observable/-/zen-observable-0.5.2.tgz";
-        sha512 = "3sy4za4hd6lczig5ah6ksh92i4ds0pk9b8nn4nwjwpsyyabywrnayf78zh41jf7amm6khqyjb3iknbp2mc3nfgvpkvphj3a993py6hf";
+        sha1 = "845a1cfda804a13419ec8ec12343e1f4c45cd07a";
       };
     };
     "cli-spinners-1.0.0" = {
@@ -10967,7 +10967,7 @@ let
       version = "1.3.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz";
-        sha512 = "269dbx666z4ws49vag1dma5kdpjlx83s74c1jlngrn2672rhvbc47i5ay5h40spmrzgvbvcm33i4yrp88rrc6lg70v78k155z45lwyi";
+        sha1 = "553dcb8f91e3c889845dfdba34c77721b90b9d7a";
       };
     };
     "async-each-1.0.1" = {
@@ -11021,7 +11021,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz";
-        sha512 = "25k3z64r4fhzjs1crh981lkkvkrhn2xv67k7y00zpnpsl571y5apg0r0kanddirms8kxf2xgf4yx9n2hzs9ml3v3p9qcnqhkh9khzja";
+        sha1 = "3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4";
       };
     };
     "micromatch-2.3.11" = {
@@ -11129,7 +11129,7 @@ let
       version = "1.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz";
-        sha512 = "2vdly17xk5kw7bfzajrjdnw4ml3wrfblx8064n0i4fxlchcscx2mvnwkq2bnnqvbqvdy4vs9ad462lz0rid7khysly9m9vzjiblly1g";
+        sha1 = "36048bbff4e7b47e136644316c99669ea5ae91f1";
       };
     };
     "expand-range-1.8.2" = {
@@ -11192,7 +11192,7 @@ let
       version = "1.1.7";
       src = fetchurl {
         url = "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz";
-        sha512 = "2is2kipfnz3hl4yxgqk07rll6956cq3zzf9cddai3f0lij5acq76v98qv14qkpljh1pqfsyb8p69xa9cyaww6p0j91s4vc9zj6594hg";
+        sha1 = "c7abe9cc8b87c0baa876b19fde83fd464797e38c";
       };
     };
     "is-number-3.0.0" = {
@@ -11327,7 +11327,7 @@ let
       version = "4.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz";
-        sha512 = "2967mavp7zw0aawf5fadqf4pmn7vy5gya1yx2s9wwppvivhd9q4mpdnszfqvd7p6yks649bwbpj8iviw86g0hpp4f93d5ca7dmjmrfs";
+        sha1 = "08a7f2a8bf734604779a9efa4ad5cc717abb954b";
       };
     };
     "tar-pack-3.4.0" = {
@@ -11372,7 +11372,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/aproba/-/aproba-1.1.2.tgz";
-        sha512 = "0zmgm7vf91vxk5hdvkwhfnzjxz9r6hwpn8dlbpasaax8rxx7z1qqdmh8l631vawj7y1bkpsd0v0mhjh9agggkjl72f3vlnfhy61m5k6";
+        sha1 = "45c6629094de4e96f693ef7eab74ae079c240fc1";
       };
     };
     "string-width-1.0.2" = {
@@ -11390,7 +11390,7 @@ let
       version = "1.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz";
-        sha512 = "39m5b8qc31vxhh0bz14vh9a1kf9znarvlpkf0v6vv1f2dxi61gihav2djq2mn7ns1z3yq6l8pyydj52fyzbm2q04rssrcrv4jbwnc4a";
+        sha1 = "571e0f1b0604636ebc0dfc21b0339bbe31341710";
       };
     };
     "event-stream-0.5.3" = {
@@ -11544,7 +11544,7 @@ let
       version = "1.12.7";
       src = fetchurl {
         url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz";
-        sha512 = "29mq40padyvizg4f141b00p0p74hx9v06d7gxk84ggsiyw6rf5bb65gnfwk1i02r276jwqybmi5hx98s943slyazjnqd69jmj389dvw";
+        sha1 = "c05dae0cb79591d05b3070a8433a98c9a89ccc53";
       };
     };
     "jade-1.11.0" = {
@@ -12255,7 +12255,7 @@ let
       version = "2.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz";
-        sha512 = "0xgsjz9m3kg5pm36lcchblxk53qay59ya7wi5jgdmz0dsl5b0j2j7wcd48yyfaip1m70mj9aqf8kib02fn62k0hy0vxg2hng60yk4w7";
+        sha1 = "2c163b3fafb1b606d9d17928f05c2a1c38e07677";
       };
     };
     "object.defaults-1.1.0" = {
@@ -12267,13 +12267,13 @@ let
         sha1 = "3a7f868334b407dea06da16d88d5cd29e435fecf";
       };
     };
-    "object.pick-1.2.0" = {
+    "object.pick-1.3.0" = {
       name = "object.pick";
       packageName = "object.pick";
-      version = "1.2.0";
+      version = "1.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.2.0.tgz";
-        sha1 = "b5392bee9782da6d9fb7d6afaf539779f1234c2b";
+        url = "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz";
+        sha1 = "87a10ac4c1694bd2e1cbf53591a66141fb5dd747";
       };
     };
     "parse-filepath-1.0.1" = {
@@ -12813,7 +12813,7 @@ let
       version = "5.4.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/@reactivex/rxjs/-/rxjs-5.4.3.tgz";
-        sha512 = "20pswi06vxjrv64d6i7z1zcsml98fma05a3xbyaycyfn7xmhbg8zwhnswx9pd03hrlxr4ypgikjgr65a0kkycjcyw9819gffaw95jvm";
+        sha1 = "d28f83ed19f10cf4bc9dc84db3c424788a1c541e";
       };
     };
     "chai-4.1.1" = {
@@ -12831,7 +12831,7 @@ let
       version = "7.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/chai-as-promised/-/chai-as-promised-7.1.1.tgz";
-        sha512 = "1lf4xj5gc7gxbqjx1pmshsddaqah4zlvzm1r4rbrf4rsgjgf2zj9lx8rccgy0y7ps7wv2i1wf259dwd6mj8aaryxdpfryi2rb2glckb";
+        sha1 = "08645d825deb8696ee61725dbf590c012eb00ca0";
       };
     };
     "fast-json-patch-2.0.4" = {
@@ -12921,7 +12921,7 @@ let
       version = "3.3.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.3.1.tgz";
-        sha512 = "1dwznr02qr6wd7886k3i7y3vxgzqdm14gc5vs892vrc8azhh6hl79bvl5lgc05004lzqbazj9p7vdkbms62f1iys92h5w1xpvdldfc8";
+        sha1 = "b7857be58b97af664a8cdd071c91891d6c7d6a67";
       };
     };
     "vscode-languageserver-3.3.0" = {
@@ -12930,7 +12930,7 @@ let
       version = "3.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-3.3.0.tgz";
-        sha512 = "380fi37ifwdgndnglvymyrb844aybpm5mjpwmq4p3dm1b93iqdfr00pr2b692d15k5hn9x82h98zw0bs0k7287pwdvdkv3v75pc92zi";
+        sha1 = "f547d4f0e5702f88ff3695bae5905f9604c8cc62";
       };
     };
     "vscode-languageserver-types-3.3.0" = {
@@ -12939,7 +12939,7 @@ let
       version = "3.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.3.0.tgz";
-        sha512 = "1xjiay30jyp6sj9nq55zwjmxyq5ajcdrv4bw9ypkplv7mg57h4skiqvcsd6wbizidpx3xanqmnl04l66491fmlrwijn9ph3rsa044z4";
+        sha1 = "8964dc7c2247536fbefd2d6836bf3febac80dd00";
       };
     };
     "symbol-observable-1.0.4" = {
@@ -13137,7 +13137,7 @@ let
       version = "0.13.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/editorconfig/-/editorconfig-0.13.3.tgz";
-        sha512 = "08ysphnfa9fynh31z9sbxq8nyw0v2w2q6xkvqpy13xr16mh58na9xrxjxj0r6vwr01xjna3jyz6njwbxw0dvyrq509y5fs2sm8fqj2s";
+        sha1 = "e5219e587951d60958fd94ea9a9a008cdeff1b34";
       };
     };
     "bluebird-3.5.0" = {
@@ -13194,13 +13194,13 @@ let
         sha1 = "f90b858507f81dea4dcfbb3c4c3dbfa2b557faaa";
       };
     };
-    "superagent-3.5.2" = {
+    "superagent-3.6.0" = {
       name = "superagent";
       packageName = "superagent";
-      version = "3.5.2";
+      version = "3.6.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/superagent/-/superagent-3.5.2.tgz";
-        sha1 = "3361a3971567504c351063abeaae0faa23dbf3f8";
+        url = "https://registry.npmjs.org/superagent/-/superagent-3.6.0.tgz";
+        sha1 = "eb679651057c3462199c7b902b696c25350e1b87";
       };
     };
     "component-emitter-1.2.1" = {
@@ -13221,13 +13221,13 @@ let
         sha1 = "41ad57b1b555951ec171412a81942b1e8200d34a";
       };
     };
-    "form-data-2.2.0" = {
+    "form-data-2.3.1" = {
       name = "form-data";
       packageName = "form-data";
-      version = "2.2.0";
+      version = "2.3.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/form-data/-/form-data-2.2.0.tgz";
-        sha1 = "9a5e3b9295f980b2623cf64fa238b14cebca707b";
+        url = "https://registry.npmjs.org/form-data/-/form-data-2.3.1.tgz";
+        sha1 = "6fb94fbd71885306d73d15cc497fe4cc4ecd44bf";
       };
     };
     "formidable-1.1.1" = {
@@ -13704,7 +13704,7 @@ let
       version = "3.6.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/connect/-/connect-3.6.3.tgz";
-        sha512 = "2fkfixwv0fqqxw5rhmzrczj8ayxccwnxwkgyv4w8sxnkz52sl6dsx2nirg1vryxxqdlwph4ag9vc17yzzydmzshc73gpi6m12m9kd0q";
+        sha1 = "f7320d46a25b4be7b483a2236517f24b1e27e301";
       };
     };
     "di-0.0.1" = {
@@ -13941,6 +13941,15 @@ let
         sha1 = "ae25cf2512b3885a1d95d7f037868d8431124765";
       };
     };
+    "accepts-1.3.3" = {
+      name = "accepts";
+      packageName = "accepts";
+      version = "1.3.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz";
+        sha1 = "c3ca7434938648c3e0d9c1e328dd68b622c284ca";
+      };
+    };
     "base64id-1.0.0" = {
       name = "base64id";
       packageName = "base64id";
@@ -14667,7 +14676,7 @@ let
       version = "1.3.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/conventional-changelog-cli/-/conventional-changelog-cli-1.3.2.tgz";
-        sha512 = "0mvmzv0c23159jkmwd32hlbilf9lby2iz7xpmxi6i5ym75am5m355dpfv0wwkw2s41f8lncgnx6plxl361bqkfbmds8083llmf6dkv7";
+        sha1 = "33abf2b5720a9b094df38e81741ccb502e1a4125";
       };
     };
     "conventional-recommended-bump-1.0.1" = {
@@ -14676,7 +14685,7 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/conventional-recommended-bump/-/conventional-recommended-bump-1.0.1.tgz";
-        sha512 = "0cn224cp4qa787r0gkxg66f8m3s6l4nimfi2hm9mi5b0fh1365nqcipq3p5g1l82lkz6xdc9ihv46pvrx7gr8l0lh563dvh8bqw8nnq";
+        sha1 = "56b8ae553a8a1152fa069e767599e1f6948bd36c";
       };
     };
     "dedent-0.7.0" = {
@@ -14688,22 +14697,31 @@ let
         sha1 = "2495ddbaf6eb874abb0e1be9df22d2e5a544326c";
       };
     };
-    "fs-extra-3.0.1" = {
+    "execa-0.8.0" = {
+      name = "execa";
+      packageName = "execa";
+      version = "0.8.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz";
+        sha1 = "d8d76bbc1b55217ed190fd6dd49d3c774ecfc8da";
+      };
+    };
+    "fs-extra-4.0.1" = {
       name = "fs-extra";
       packageName = "fs-extra";
-      version = "3.0.1";
+      version = "4.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz";
-        sha1 = "3794f378c58b342ea7dbbb23095109c4b3b62291";
+        url = "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.1.tgz";
+        sha1 = "7fc0c6c8957f983f57f306a24e5b9ddd8d0dd880";
       };
     };
-    "get-port-3.1.0" = {
+    "get-port-3.2.0" = {
       name = "get-port";
       packageName = "get-port";
-      version = "3.1.0";
+      version = "3.2.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/get-port/-/get-port-3.1.0.tgz";
-        sha1 = "ef01b18a84ca6486970ff99e54446141a73ffd3e";
+        url = "https://registry.npmjs.org/get-port/-/get-port-3.2.0.tgz";
+        sha1 = "dd7ce7de187c06c8bf353796ac71e099f0980ebc";
       };
     };
     "globby-6.1.0" = {
@@ -14724,13 +14742,13 @@ let
         sha1 = "f739336b2632365061a9d48270cd56ae3369318e";
       };
     };
-    "load-json-file-2.0.0" = {
+    "load-json-file-3.0.0" = {
       name = "load-json-file";
       packageName = "load-json-file";
-      version = "2.0.0";
+      version = "3.0.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz";
-        sha1 = "7947e42149af80d696cbf797bcaabcfe1fe29ca8";
+        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-3.0.0.tgz";
+        sha1 = "7eb3735d983a7ed2262ade4ff769af5369c5c440";
       };
     };
     "read-cmd-shim-1.0.1" = {
@@ -14769,13 +14787,13 @@ let
         sha1 = "c1a96de2b36061342eae81f44ff001aec8f615a9";
       };
     };
-    "write-file-atomic-2.1.0" = {
+    "write-file-atomic-2.3.0" = {
       name = "write-file-atomic";
       packageName = "write-file-atomic";
-      version = "2.1.0";
+      version = "2.3.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.1.0.tgz";
-        sha512 = "0jpbx5znf640m7icywa21hdgyss5h6c811z27mzk7mh1yhv8sqcqd2y0cwgkrnigx57k2chv5cqwv0z8ff8z32gpdw8jw5imz8pcdni";
+        url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz";
+        sha1 = "1ff61575c2e2a4e8e510d6fa4e243cce183999ab";
       };
     };
     "write-json-file-2.2.0" = {
@@ -14838,7 +14856,7 @@ let
       version = "1.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-1.4.0.tgz";
-        sha512 = "2cp0yhzf0kjmhawbj1v8kq71ddksbx8g7k1h7snwxijqy2xdgl6y6c63q6qg8ck3ar6n6wcs7yxzrq6kc9ddphclaqdg5s9d7drfhms";
+        sha1 = "118b9f7d41a3d99500bfb6bea1f3525e055e8b9b";
       };
     };
     "conventional-changelog-atom-0.1.1" = {
@@ -14847,7 +14865,7 @@ let
       version = "0.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/conventional-changelog-atom/-/conventional-changelog-atom-0.1.1.tgz";
-        sha512 = "0h2y3wj5pfwir1ynh6i7qibcv30z2vy6l6q11nh9z9vzl15433c00bvjy1iz9zirkb57g4xyilak59hdzfzinadxqi8h3r2wgznxng8";
+        sha1 = "d40a9b297961b53c745e5d1718fd1a3379f6a92f";
       };
     };
     "conventional-changelog-codemirror-0.1.0" = {
@@ -15018,7 +15036,7 @@ let
       version = "1.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/git-semver-tags/-/git-semver-tags-1.2.1.tgz";
-        sha512 = "16mn1j3vray2l88lrl57pkaxz3bvv4ahnx3qr6r3hkdjarzqn1d8w99n44mn39y4kdmcva1z6annx92h06r870yq05382f76jvv2p3w";
+        sha1 = "6ccd2a52e735b736748dc762444fcd9588e27490";
       };
     };
     "conventional-commits-filter-1.0.0" = {
@@ -15036,7 +15054,7 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/split/-/split-1.0.1.tgz";
-        sha512 = "2916kdi862ik0dlvr2wf2kvzmw8i8wk5spbr9wpdcksrkhrl3m0082jj1q4mqzvv50mlah5s4vcy6k18nacbj09kxbzp2pbysh8wg4r";
+        sha1 = "605bd9be303aa59fb35f9229fbea0ddec9ea07d9";
       };
     };
     "is-subset-0.1.1" = {
@@ -15135,7 +15153,7 @@ let
       version = "2.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-2.0.0.tgz";
-        sha512 = "0mh43bfdx21ll5dn629cyh7p65drm2zcrazqvi6kq0m17h0y27brzsf8shjpi4idj3h9sqqa1dnq47xdwa00y4saswih5iqmy1pm1zj";
+        sha1 = "71d01910cb0a99aeb20c144e50f81f4df3178447";
       };
     };
     "jsonfile-3.0.1" = {
@@ -15165,6 +15183,15 @@ let
         sha1 = "dc5285f2b4e251821683681c381c3388f46ec534";
       };
     };
+    "parse-json-3.0.0" = {
+      name = "parse-json";
+      packageName = "parse-json";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/parse-json/-/parse-json-3.0.0.tgz";
+        sha1 = "fa6f47b18e23826ead32f263e744d0e1e847fb13";
+      };
+    };
     "strip-bom-3.0.0" = {
       name = "strip-bom";
       packageName = "strip-bom";
@@ -15174,6 +15201,15 @@ let
         sha1 = "2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3";
       };
     };
+    "load-json-file-2.0.0" = {
+      name = "load-json-file";
+      packageName = "load-json-file";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz";
+        sha1 = "7947e42149af80d696cbf797bcaabcfe1fe29ca8";
+      };
+    };
     "path-type-2.0.0" = {
       name = "path-type";
       packageName = "path-type";
@@ -15243,7 +15279,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz";
-        sha512 = "0lafrp0i2ajapsnma0x74q7zscn97a56i5hh58a0nyig2igfx9fqn4ain9kvjrr06as5gzdrv2wdf52qc5m861fd0f4cv69ghdjbjyy";
+        sha1 = "42bc2900a6b5b8bd17376c8e882b65afccf24bf2";
       };
     };
     "which-module-2.0.0" = {
@@ -15435,6 +15471,213 @@ let
         sha1 = "51af7d614ad9a9f610ea1bafbb989d6b1c56890f";
       };
     };
+    "markdown-it-8.4.0" = {
+      name = "markdown-it";
+      packageName = "markdown-it";
+      version = "8.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-it/-/markdown-it-8.4.0.tgz";
+        sha1 = "e2400881bf171f7018ed1bd9da441dac8af6306d";
+      };
+    };
+    "markdown-it-emoji-1.4.0" = {
+      name = "markdown-it-emoji";
+      packageName = "markdown-it-emoji";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-it-emoji/-/markdown-it-emoji-1.4.0.tgz";
+        sha1 = "9bee0e9a990a963ba96df6980c4fddb05dfb4dcc";
+      };
+    };
+    "markdown-it-github-headings-1.0.1" = {
+      name = "markdown-it-github-headings";
+      packageName = "markdown-it-github-headings";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-it-github-headings/-/markdown-it-github-headings-1.0.1.tgz";
+        sha1 = "ac3e694de3fa3f0296961f4057f5160143fc2710";
+      };
+    };
+    "markdown-it-task-checkbox-1.0.4" = {
+      name = "markdown-it-task-checkbox";
+      packageName = "markdown-it-task-checkbox";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/markdown-it-task-checkbox/-/markdown-it-task-checkbox-1.0.4.tgz";
+        sha1 = "183d2d81cf2b8e4de1b91bab73a13ef5c6c16581";
+      };
+    };
+    "opn-5.1.0" = {
+      name = "opn";
+      packageName = "opn";
+      version = "5.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/opn/-/opn-5.1.0.tgz";
+        sha1 = "72ce2306a17dbea58ff1041853352b4a8fc77519";
+      };
+    };
+    "socket.io-2.0.3" = {
+      name = "socket.io";
+      packageName = "socket.io";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io/-/socket.io-2.0.3.tgz";
+        sha1 = "4359f06a24933ae6bd087798af78c680eae345e3";
+      };
+    };
+    "linkify-it-2.0.3" = {
+      name = "linkify-it";
+      packageName = "linkify-it";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/linkify-it/-/linkify-it-2.0.3.tgz";
+        sha1 = "d94a4648f9b1c179d64fa97291268bdb6ce9434f";
+      };
+    };
+    "mdurl-1.0.1" = {
+      name = "mdurl";
+      packageName = "mdurl";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz";
+        sha1 = "fe85b2ec75a59037f2adfec100fd6c601761152e";
+      };
+    };
+    "uc.micro-1.0.3" = {
+      name = "uc.micro";
+      packageName = "uc.micro";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.3.tgz";
+        sha1 = "7ed50d5e0f9a9fb0a573379259f2a77458d50192";
+      };
+    };
+    "github-slugger-1.1.3" = {
+      name = "github-slugger";
+      packageName = "github-slugger";
+      version = "1.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/github-slugger/-/github-slugger-1.1.3.tgz";
+        sha1 = "314a6e759a18c2b0cc5760d512ccbab549c549a7";
+      };
+    };
+    "innertext-1.0.2" = {
+      name = "innertext";
+      packageName = "innertext";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/innertext/-/innertext-1.0.2.tgz";
+        sha1 = "11a197b3143a593636fba5d59213835e6954580a";
+      };
+    };
+    "emoji-regex-6.1.1" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "6.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.1.1.tgz";
+        sha1 = "c6cd0ec1b0642e2a3c67a1137efc5e796da4f88e";
+      };
+    };
+    "html-entities-1.2.1" = {
+      name = "html-entities";
+      packageName = "html-entities";
+      version = "1.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz";
+        sha1 = "0df29351f0721163515dfb9e5543e5f6eed5162f";
+      };
+    };
+    "is-wsl-1.1.0" = {
+      name = "is-wsl";
+      packageName = "is-wsl";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz";
+        sha1 = "1f16e4aa22b04d1336b66188a66af3c600c3a66d";
+      };
+    };
+    "engine.io-3.1.0" = {
+      name = "engine.io";
+      packageName = "engine.io";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io/-/engine.io-3.1.0.tgz";
+        sha1 = "5ca438e3ce9fdbc915c4a21c8dd9e1266706e57e";
+      };
+    };
+    "socket.io-adapter-1.1.1" = {
+      name = "socket.io-adapter";
+      packageName = "socket.io-adapter";
+      version = "1.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz";
+        sha1 = "2a805e8a14d6372124dd9159ad4502f8cb07f06b";
+      };
+    };
+    "socket.io-client-2.0.3" = {
+      name = "socket.io-client";
+      packageName = "socket.io-client";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.3.tgz";
+        sha1 = "6caf4aff9f85b19fd91b6ce13d69adb564f8873b";
+      };
+    };
+    "socket.io-parser-3.1.2" = {
+      name = "socket.io-parser";
+      packageName = "socket.io-parser";
+      version = "3.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.2.tgz";
+        sha1 = "dbc2282151fc4faebbe40aeedc0772eba619f7f2";
+      };
+    };
+    "engine.io-parser-2.1.1" = {
+      name = "engine.io-parser";
+      packageName = "engine.io-parser";
+      version = "2.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.1.tgz";
+        sha1 = "e0fb3f0e0462f7f58bb77c1a52e9f5a7e26e4668";
+      };
+    };
+    "uws-0.14.5" = {
+      name = "uws";
+      packageName = "uws";
+      version = "0.14.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/uws/-/uws-0.14.5.tgz";
+        sha1 = "67aaf33c46b2a587a5f6666d00f7691328f149dc";
+      };
+    };
+    "has-binary2-1.0.2" = {
+      name = "has-binary2";
+      packageName = "has-binary2";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.2.tgz";
+        sha1 = "e83dba49f0b9be4d026d27365350d9f03f54be98";
+      };
+    };
+    "isarray-2.0.1" = {
+      name = "isarray";
+      packageName = "isarray";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz";
+        sha1 = "a37d94ed9cda2d59865c9f76fe596ee1f338741e";
+      };
+    };
+    "engine.io-client-3.1.1" = {
+      name = "engine.io-client";
+      packageName = "engine.io-client";
+      version = "3.1.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.1.tgz";
+        sha1 = "415a9852badb14fa008fa3ef1e31608db6761325";
+      };
+    };
     "express-2.5.11" = {
       name = "express";
       packageName = "express";
@@ -15648,7 +15891,7 @@ let
       version = "8.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.4.0.tgz";
-        sha512 = "20ka7w1mdgrazm20d5jihqam7gpiz0rnm2r6i91ax11mq96zn81ywwmmy3jr3yjddrc1bzcljxbs86wlwwrrzsgki2igj95mnm5ylrx";
+        sha1 = "d52b901685647fc62a4c03eafecb6ceaa5018d4c";
       };
     };
     "npmconf-2.1.2" = {
@@ -15666,7 +15909,7 @@ let
       version = "3.1.15";
       src = fetchurl {
         url = "https://registry.npmjs.org/tar/-/tar-3.1.15.tgz";
-        sha512 = "1ryql8hyrrhd0gdd71ishbj3cnr8ay0i0wpvy9mj3hjiy35cc1wa0h07wz8jwils98j00gr03ix3cf2j1xm43xjn9bsavwn1yr4a0x5";
+        sha1 = "cccdc35b90917d58e4c3837795d5d022d7a1f46f";
       };
     };
     "fs.extra-1.3.2" = {
@@ -15702,7 +15945,7 @@ let
       version = "4.1.6";
       src = fetchurl {
         url = "https://registry.npmjs.org/ssri/-/ssri-4.1.6.tgz";
-        sha512 = "283n1p781cl2pj3jk32blcvwjdlaixng0v5x2f9qi3ndxrmyg3hk4clsjpcfsszkymy40q426yz5skax4ivsmll2p9hhcc00ivc4ijr";
+        sha1 = "0cb49b6ac84457e7bdd466cb730c3cb623e9a25b";
       };
     };
     "uid-number-0.0.5" = {
@@ -15720,7 +15963,7 @@ let
       version = "2.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/minipass/-/minipass-2.2.1.tgz";
-        sha512 = "3yy9s65iwrx5hndcqbxrks88xi9cf8hra6zalgf8xfr4ahpp31s0i8lv6jpyb42p0y7z55ac3390sbqxcgcvan3xls449agbjb98mmv";
+        sha1 = "5ada97538b1027b4cf7213432428578cb564011f";
       };
     };
     "minizlib-1.0.3" = {
@@ -16089,7 +16332,7 @@ let
       version = "1.2.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.2.4.tgz";
-        sha512 = "2mxs6nll208xgqy9asgc0iq4k9ynd2aanig2qkfi3drd8axdafhhx36a58ssksmjgl6s1m2bh2j8igrlpm3k11cg58nhmqbxhlkmv2a";
+        sha1 = "355e8f4d16876b43f577b0d5ce2668b9723214ea";
       };
     };
     "fs.notify-0.0.4" = {
@@ -16134,7 +16377,7 @@ let
       version = "1.2.6";
       src = fetchurl {
         url = "https://registry.npmjs.org/jsonata/-/jsonata-1.2.6.tgz";
-        sha512 = "3bpyhs9imacbmpq0r7l65qvkx0dfnx92qz5vm59i983h2xvw2yrr1934i979accigkr33b65n51m5zx73glbi3pwl8n6zm5b3y74a8a";
+        sha1 = "d44fea5a54145600c1a3875e942ab6727adbddb5";
       };
     };
     "mqtt-2.9.0" = {
@@ -16143,7 +16386,7 @@ let
       version = "2.9.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/mqtt/-/mqtt-2.9.0.tgz";
-        sha512 = "181qi8xb0lxxqvwq2xcslv35dbhphyr67w02bad6n4rlibcm6z0j055dyfpdh12mrrvgjzfj11cjylsj26y7vr17cvk1kbgkiqgzpb9";
+        sha1 = "379ceb787a52fc15cb8fc96d558a32c123f12a9d";
       };
     };
     "multer-1.3.0" = {
@@ -16215,7 +16458,7 @@ let
       version = "3.0.20";
       src = fetchurl {
         url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.20.tgz";
-        sha512 = "3apvpzjbs9vds18x8pxb8ysn94658xnajl5zfagr23xpbfhgbmlmajm0lnmz9h4jk99snzf51vcc1r0l0g4gmbdzcn574vvvzy3dxrv";
+        sha1 = "cb35b2bcfe478051b6f3282be8db4e4add49a1e5";
       };
     };
     "when-3.7.8" = {
@@ -16272,13 +16515,13 @@ let
         sha1 = "a670c1542a6eaf5e06db45490c2a7edf8a9f70b6";
       };
     };
-    "bcrypt-1.0.2" = {
+    "bcrypt-1.0.3" = {
       name = "bcrypt";
       packageName = "bcrypt";
-      version = "1.0.2";
+      version = "1.0.3";
       src = fetchurl {
-        url = "https://registry.npmjs.org/bcrypt/-/bcrypt-1.0.2.tgz";
-        sha1 = "d05fc5d223173e0e28ec381c0f00cc25ffaf2736";
+        url = "https://registry.npmjs.org/bcrypt/-/bcrypt-1.0.3.tgz";
+        sha1 = "b02ddc6c0b52ea16b8d3cf375d5a32e780dab548";
       };
     };
     "css-select-1.2.0" = {
@@ -16494,7 +16737,7 @@ let
       version = "2.1.5";
       src = fetchurl {
         url = "https://registry.npmjs.org/uid-safe/-/uid-safe-2.1.5.tgz";
-        sha512 = "2h6492mk9v9dzy26i5wfajinhi2pg729ksbcsmm0sp8s32hlr432q19g97qghfp5x98hsm77hmzwdzhgi3vhm2drz53ax7rabhydw98";
+        sha1 = "2b3d5c7240e8fc2e58f8aa269e5ee49c0857bd3a";
       };
     };
     "retry-0.6.1" = {
@@ -16575,7 +16818,7 @@ let
       version = "5.4.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/mqtt-packet/-/mqtt-packet-5.4.0.tgz";
-        sha512 = "2d1hvibps8d4xlw8wm937ykc76yb02rp2065hd6186vygjx3wixjjzrn3fia4wfj7d38ic8gh5ij5rsi9389kl6gpxxjbdcbjwpn8yf";
+        sha1 = "387104c06aa68fbb9f8159d0c722dd5c3e45df22";
       };
     };
     "reinterval-1.1.0" = {
@@ -16593,7 +16836,7 @@ let
       version = "5.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/websocket-stream/-/websocket-stream-5.0.1.tgz";
-        sha512 = "3w842xsi7pgjjr5fkdzbx9dfsjl87x6c8wrvxgy8i1lr399yjiggbwrfdvpccv698f7n4ywvf7dbc8g61ly99yw1lf7fwpfrypg8x9p";
+        sha1 = "51cb992988c2eeb4525ccd90eafbac52a5ac6700";
       };
     };
     "leven-1.0.2" = {
@@ -16656,7 +16899,7 @@ let
       version = "3.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/ws/-/ws-3.1.0.tgz";
-        sha512 = "07wdh2llaz8j5nbjpvl1zbbksw2pikqnw243c6a1ifmshp095hgam79vv5nbp1pjwnlm120m4d3sih9iwm5mkc46im03jb5l6l3ykjd";
+        sha1 = "8afafecdeab46d572e5397ee880739367aa2f41c";
       };
     };
     "append-field-0.1.0" = {
@@ -16929,42 +17172,6 @@ let
         sha1 = "c5748883a40b53de30ade9cabf2100414b8a0971";
       };
     };
-    "nan-2.5.0" = {
-      name = "nan";
-      packageName = "nan";
-      version = "2.5.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/nan/-/nan-2.5.0.tgz";
-        sha1 = "aa8f1e34531d807e9e27755b234b4a6ec0c152a8";
-      };
-    };
-    "node-pre-gyp-0.6.32" = {
-      name = "node-pre-gyp";
-      packageName = "node-pre-gyp";
-      version = "0.6.32";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz";
-        sha1 = "fc452b376e7319b3d255f5f34853ef6fd8fe1fd5";
-      };
-    };
-    "rc-1.1.7" = {
-      name = "rc";
-      packageName = "rc";
-      version = "1.1.7";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/rc/-/rc-1.1.7.tgz";
-        sha1 = "c5ea564bb07aff9fd3a5b32e906c1d3a65940fea";
-      };
-    };
-    "tar-pack-3.3.0" = {
-      name = "tar-pack";
-      packageName = "tar-pack";
-      version = "3.3.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/tar-pack/-/tar-pack-3.3.0.tgz";
-        sha1 = "30931816418f55afc4d21775afdd6720cee45dae";
-      };
-    };
     "mongoose-3.6.7" = {
       name = "mongoose";
       packageName = "mongoose";
@@ -17235,13 +17442,13 @@ let
         sha1 = "44e072148af01e6e8e24afbf12690d68ae698ecb";
       };
     };
-    "debug-3.0.0" = {
+    "debug-3.0.1" = {
       name = "debug";
       packageName = "debug";
-      version = "3.0.0";
+      version = "3.0.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/debug/-/debug-3.0.0.tgz";
-        sha512 = "3ra092awfmss9asigji0v03n1n27376c2h94zyzv5sr206nd0p3p6hyzaadlyfz8vj1pcypk2bmjqmnx1v0iasvrkz2dc4v3b3hf2ax";
+        url = "https://registry.npmjs.org/debug/-/debug-3.0.1.tgz";
+        sha1 = "0564c612b521dc92d9f2988f0549e34f9c98db64";
       };
     };
     "qs-0.5.1" = {
@@ -17574,7 +17781,7 @@ let
       version = "9.2.9";
       src = fetchurl {
         url = "https://registry.npmjs.org/cacache/-/cacache-9.2.9.tgz";
-        sha512 = "11qjza6qy62lkvynngcvx7nf2vhxvvp4g0l07a8zw5pzqc5iy0zznxzgs0dw1bb2i10dr2v7i624x6v9pkzp55snam9wk5jjf7ka642";
+        sha1 = "f9d7ffe039851ec94c28290662afa4dd4bb9e8dd";
       };
     };
     "call-limit-1.1.0" = {
@@ -17592,7 +17799,7 @@ let
       version = "1.2.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/fstream-npm/-/fstream-npm-1.2.1.tgz";
-        sha512 = "07r7qvmx5fjjk2ra3hjrz31ciy4vhfq2k8a3wjscjl7y52885zwfvz4caa5xr3kab8l3y4c9rsz1nkpjl530irrs6q5l3z6yadyj4c8";
+        sha1 = "08c4a452f789dcbac4c89a4563c902b2c862fd5b";
       };
     };
     "lazy-property-1.0.0" = {
@@ -17610,7 +17817,7 @@ let
       version = "9.2.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/libnpx/-/libnpx-9.2.3.tgz";
-        sha512 = "0ki52cm2pf27r9pkpfbrx6y1myg7yx1mghwnvv6mw4kmgscif08qlj0xzlc88kpfl549xip4z1ap64s22l7v3q26ygz6x12cch87wsr";
+        sha1 = "f6fb833dae64044c93dc31eff99cff4a019dc304";
       };
     };
     "lodash._baseuniq-4.6.0" = {
@@ -17709,7 +17916,7 @@ let
       version = "2.7.38";
       src = fetchurl {
         url = "https://registry.npmjs.org/pacote/-/pacote-2.7.38.tgz";
-        sha512 = "0a0ar6lns179qdszia13prhj7gjpdjy334xafq791h48q00259lr6gpkzp17dagfcnff9pgcgxm7b68nidpj5qs0yah1v81fk4d84az";
+        sha1 = "5091f8774298c26c3eca24606037f1bb73db74c1";
       };
     };
     "promise-inflight-1.0.1" = {
@@ -17727,7 +17934,7 @@ let
       version = "5.1.6";
       src = fetchurl {
         url = "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.1.6.tgz";
-        sha512 = "0v1k32zqj8bnqzyp5h0jxnkvpgpzpa6z7iyqbpm3p0ylqafbb2zm656mw6gs16zf98l7y218ygpx2kzks00qcycwwx2cny67mlza98l";
+        sha1 = "4f03e83d0486856fb60d97c94882841c2a7b1b7a";
       };
     };
     "sorted-union-stream-2.1.3" = {
@@ -17763,7 +17970,16 @@ let
       version = "1.4.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/worker-farm/-/worker-farm-1.4.1.tgz";
-        sha512 = "0vh5z2d6q3zgf7j3g5ngyq4piqq1y613wacfyildfnm2c2klb4h2gw32grgk6pv9ssyiliyfvj4p4alpaa85cqcj2nznb4q0fv400dn";
+        sha1 = "a438bc993a7a7d133bcb6547c95eca7cff4897d8";
+      };
+    };
+    "write-file-atomic-2.1.0" = {
+      name = "write-file-atomic";
+      packageName = "write-file-atomic";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.1.0.tgz";
+        sha1 = "1769f4b551eedce419f0505deae2e26763542d37";
       };
     };
     "lodash._baseindexof-3.1.0" = {
@@ -17856,13 +18072,13 @@ let
         sha1 = "1b33792e11e914a2fd6d6ed6447464444e5fa640";
       };
     };
-    "copy-concurrently-1.0.3" = {
+    "copy-concurrently-1.0.5" = {
       name = "copy-concurrently";
       packageName = "copy-concurrently";
-      version = "1.0.3";
+      version = "1.0.5";
       src = fetchurl {
-        url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.3.tgz";
-        sha1 = "45fb7866249a1ca889aa5708e6cbd273e75bb250";
+        url = "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz";
+        sha1 = "92297398cae34937fcafd6ec8139c18051f0b5e0";
       };
     };
     "run-queue-1.0.3" = {
@@ -17874,13 +18090,13 @@ let
         sha1 = "e848396f057d223f24386924618e25694161ec47";
       };
     };
-    "make-fetch-happen-2.4.13" = {
+    "make-fetch-happen-2.5.0" = {
       name = "make-fetch-happen";
       packageName = "make-fetch-happen";
-      version = "2.4.13";
+      version = "2.5.0";
       src = fetchurl {
-        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-2.4.13.tgz";
-        sha512 = "0j8sgm5sh7lb4mdpg52yz9rv0jpgkd3bf701i30gd5s3aqxb0i2lq8qm4bndqqfcb8jgiw8wj6dwpv2497khvxmmx3bfj0iad7aqw7g";
+        url = "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-2.5.0.tgz";
+        sha1 = "08c22d499f4f30111addba79fe87c98cf01b6bc8";
       };
     };
     "npm-pick-manifest-1.0.4" = {
@@ -17889,7 +18105,7 @@ let
       version = "1.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-1.0.4.tgz";
-        sha512 = "02pmkjkn2nbr1ypwzwybyd6bfckdwr8cr0nah5bwadz21yd7cd9fbvxqalfdc41n88p1zv8qbgp149knkaixnrl8l7jnrwfxislvb1h";
+        sha1 = "a5ee6510c1fe7221c0bc0414e70924c14045f7e8";
       };
     };
     "promise-retry-1.1.1" = {
@@ -17925,7 +18141,7 @@ let
       version = "3.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.3.0.tgz";
-        sha512 = "0svpj8gbh57a1l3zcds9kd8dkh4r2fyacpkrxvffbpj5pgvbf26h93q31niqbqsciswdxlx0fhikljqwg40lvmwxl299nb2gfjmqa7p";
+        sha1 = "6d5de5829afd3be2712201a39275fd11c651857c";
       };
     };
     "http-cache-semantics-3.7.3" = {
@@ -17952,7 +18168,7 @@ let
       version = "2.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.1.0.tgz";
-        sha512 = "17fg8xbji1zam9ksqgdfsyhqfw1nyniz8gwp54q0z7rz1pxw2m3agniawm870nn4j88m1w9l0lfkw5wa4qf1593if0cwicv814xad7w";
+        sha1 = "1391bee7fd66aeabc0df2a1fa90f58954f43e443";
       };
     };
     "node-fetch-npm-2.0.2" = {
@@ -17961,7 +18177,7 @@ let
       version = "2.0.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz";
-        sha512 = "0bw6m444q0jc2gmw1yb0im1jv6vhky6d071p72c26ajvf2a7710jq8cp5ampf8j7kdbki7j0mbsi15dh93vrhkpvqpkw0i6ajdk34lw";
+        sha1 = "7258c9046182dca345b4208eda918daf33697ff7";
       };
     };
     "socks-proxy-agent-3.0.0" = {
@@ -17970,7 +18186,7 @@ let
       version = "3.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.0.tgz";
-        sha512 = "3zn9cz2ry5m1akapj7hvhgkxfq7ffwynia46lmwipsw2jk5sv8dvs32dc4hfx3xvp34i1jff1bg870a1xnknsgk5dl021jd4gwi75v0";
+        sha1 = "ea23085cd2bde94d084a62448f31139ca7ed6245";
       };
     };
     "humanize-ms-1.2.1" = {
@@ -17988,7 +18204,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/agent-base/-/agent-base-4.1.1.tgz";
-        sha512 = "2naw79i4m7pj1n5qw9xq6c0c8cdjfcqhdqk4j552nbrpb4c60hic13jfikqw7xga8xywpr57z2y5z70gn5xiihq47vzs3wrc1998qf9";
+        sha1 = "92d8a4fc2524a3b09b3666a33b6c97960f23d6a4";
       };
     };
     "es6-promisify-5.0.0" = {
@@ -18006,7 +18222,7 @@ let
       version = "4.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/es6-promise/-/es6-promise-4.1.1.tgz";
-        sha512 = "2g2gkw8cxy2lww5lqjbv0imkxkhy684pagbq4qaw6np46xcx1r6rbkg7qy4wjv12b7jy7zs208iilim7clc9v6ws2dzy9g0g223b99r";
+        sha1 = "8811e90915d9a0dba36274f0b242dbda78f9c92a";
       };
     };
     "socks-1.1.10" = {
@@ -18078,7 +18294,7 @@ let
       version = "3.1.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/configstore/-/configstore-3.1.1.tgz";
-        sha512 = "2zmidvkp20q25yv6a5d7k1daawdg0w6ppgayxzpwfhyvmgwybkkv7ni0j4b2j9c8wjn8z33zf5d4bjr8jywb5qixc75vypyy87n90z6";
+        sha1 = "094ee662ab83fad9917678de114faaea8fcdca90";
       };
     };
     "import-lazy-2.1.0" = {
@@ -18162,6 +18378,15 @@ let
         sha1 = "240cd05785a9a18e561dc1b44b41c763ef1e8db0";
       };
     };
+    "unzip-response-2.0.1" = {
+      name = "unzip-response";
+      packageName = "unzip-response";
+      version = "2.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz";
+        sha1 = "d2f0f737d16b0615e72a6935ed04214572d56f97";
+      };
+    };
     "argparse-0.1.15" = {
       name = "argparse";
       packageName = "argparse";
@@ -18387,13 +18612,13 @@ let
         sha1 = "27d92fec34d27cfa42707d3b40d025ae9855f2df";
       };
     };
-    "snyk-1.38.3" = {
+    "snyk-1.40.1" = {
       name = "snyk";
       packageName = "snyk";
-      version = "1.38.3";
+      version = "1.40.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk/-/snyk-1.38.3.tgz";
-        sha1 = "76988492a24030ee1b496fd6c0b45aedaf349ec4";
+        url = "https://registry.npmjs.org/snyk/-/snyk-1.40.1.tgz";
+        sha1 = "36120e6ab1659185db33fd3404377152bb92cdf2";
       };
     };
     "spawn-please-0.3.0" = {
@@ -18504,13 +18729,13 @@ let
         sha1 = "754bb5bfe55451da69a58b94d45f4c5b0462d58f";
       };
     };
-    "es5-ext-0.10.27" = {
+    "es5-ext-0.10.30" = {
       name = "es5-ext";
       packageName = "es5-ext";
-      version = "0.10.27";
+      version = "0.10.30";
       src = fetchurl {
-        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.27.tgz";
-        sha512 = "39v1b13qiq02g8qwdjqnnqla20yy3bbhvvk66vhjyywbha8bjb9ry6q4hk8zlckvws880azkrxyw994dkkfcwpiqmxkfpfaii2wk9fw";
+        url = "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.30.tgz";
+        sha1 = "7141a16836697dbabfaaaeee41495ce29f52c939";
       };
     };
     "es6-iterator-2.0.1" = {
@@ -18558,13 +18783,22 @@ let
         sha1 = "f27aec2498b24027ac719214026521591111508f";
       };
     };
-    "snyk-gradle-plugin-1.0.3" = {
+    "snyk-go-plugin-1.1.2" = {
+      name = "snyk-go-plugin";
+      packageName = "snyk-go-plugin";
+      version = "1.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.1.2.tgz";
+        sha1 = "af93ab38d34ab40c67f1ffb00eb3bf6e4b6ab17c";
+      };
+    };
+    "snyk-gradle-plugin-1.1.1" = {
       name = "snyk-gradle-plugin";
       packageName = "snyk-gradle-plugin";
-      version = "1.0.3";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-1.0.3.tgz";
-        sha512 = "0mfvgmyrysvs5vfwnv6scysgkjq2917zay5s5x884a0xv0rdzr6rcc283lmkzm9g4rwikf06mz5aq99j59vl168iwpcfdk2q4w0l8l9";
+        url = "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-1.1.1.tgz";
+        sha1 = "9d75c973ce0e2e94bbf031ca737a354d9f2aa026";
       };
     };
     "snyk-module-1.8.1" = {
@@ -18582,7 +18816,7 @@ let
       version = "1.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-1.0.0.tgz";
-        sha512 = "01vcacjw51v7n21nb72chxlgqnzslg4dxqf2m5v4dlig0mk03jbvhhib2a48ji9kda2gplnq94xnjgqkc6ckp4xjyv7ajqacdabfwnv";
+        sha1 = "99ae297b7ae40fa8df78a39fa13816dc513c2d10";
       };
     };
     "snyk-policy-1.7.1" = {
@@ -18600,7 +18834,7 @@ let
       version = "1.2.3";
       src = fetchurl {
         url = "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.2.3.tgz";
-        sha512 = "32brr3jb8vs1253ls0bmhmnp26873sc40805wvxl3x40i84czzr5nrnf5x2ikwk8hb4nwcy5bwpm192wj43z7g0gcd2k19afq8ixifn";
+        sha1 = "c7c7df73576c6f8e9fab25364e8bab0b325b5ca9";
       };
     };
     "snyk-recursive-readdir-2.0.0" = {
@@ -18636,7 +18870,7 @@ let
       version = "1.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-1.1.0.tgz";
-        sha512 = "20rfszcqyzsbkrq0289dg335kdls788r81chv7kwhp440hj7aqckzydc1hdgkcqpq7qic1v6bzknl06jkrbh5mb1nysxi3qz8y11333";
+        sha1 = "922bc70220ee95f26fbb1e482ff1dcbccdd1f050";
       };
     };
     "snyk-tree-1.0.0" = {
@@ -18702,6 +18936,24 @@ let
         sha1 = "3d9446ef21fb3791b3985690662e4b9683c7f181";
       };
     };
+    "fs-0.0.1-security" = {
+      name = "fs";
+      packageName = "fs";
+      version = "0.0.1-security";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz";
+        sha1 = "8a7bd37186b6dddf3813f23858b57ecaaf5e41d4";
+      };
+    };
+    "toml-2.3.2" = {
+      name = "toml";
+      packageName = "toml";
+      version = "2.3.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/toml/-/toml-2.3.2.tgz";
+        sha1 = "5eded5ca42887924949fd06eb0e955656001e834";
+      };
+    };
     "clone-deep-0.3.0" = {
       name = "clone-deep";
       packageName = "clone-deep";
@@ -19189,7 +19441,7 @@ let
       version = "3.5.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/msgpack5/-/msgpack5-3.5.0.tgz";
-        sha512 = "2sgk5bgncdhki1x3pl5lc9l4j1p1p9v2nkrc24gb1gkmycc8svqgx3712h0nmb00zbn1nkzgfzrsy708cpgxfmwkyvbvb9q56nvys2f";
+        sha1 = "193b3e864959a826d33074460c2651d1ed04b07a";
       };
     };
     "dom-storage-2.0.2" = {
@@ -19354,13 +19606,13 @@ let
         sha1 = "1cbc691c45cdf6d6c1dc63bf368b2505f56ef839";
       };
     };
-    "buffer-indexof-1.1.0" = {
+    "buffer-indexof-1.1.1" = {
       name = "buffer-indexof";
       packageName = "buffer-indexof";
-      version = "1.1.0";
+      version = "1.1.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.0.tgz";
-        sha1 = "f54f647c4f4e25228baa656a2e57e43d5f270982";
+        url = "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz";
+        sha1 = "52fabcc6a606d1a00302802648ef68f639da268c";
       };
     };
     "next-line-1.1.0" = {
@@ -19432,7 +19684,7 @@ let
       version = "1.2.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/dns-packet/-/dns-packet-1.2.2.tgz";
-        sha512 = "0770ymyc0rv6a11mj3990d0z1jl1b2qxp4bapqa819y269sszfd96wn2y7pb6aw8bdgsn3bvpr7bmig5lcmkrxya13d5vc5y66q7pwh";
+        sha1 = "a8a26bec7646438963fc86e06f8f8b16d6c8bf7a";
       };
     };
     "external-editor-1.1.1" = {
@@ -20156,24 +20408,6 @@ let
         sha1 = "0773526c317c8fd13bd534ee1d180ff88abf881a";
       };
     };
-    "mdurl-1.0.1" = {
-      name = "mdurl";
-      packageName = "mdurl";
-      version = "1.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz";
-        sha1 = "fe85b2ec75a59037f2adfec100fd6c601761152e";
-      };
-    };
-    "uc.micro-1.0.3" = {
-      name = "uc.micro";
-      packageName = "uc.micro";
-      version = "1.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.3.tgz";
-        sha1 = "7ed50d5e0f9a9fb0a573379259f2a77458d50192";
-      };
-    };
     "regexp-quote-0.0.0" = {
       name = "regexp-quote";
       packageName = "regexp-quote";
@@ -20471,6 +20705,15 @@ let
         sha1 = "0abf1af89a8f5129a81f18c2b35b21df22622f60";
       };
     };
+    "http-signature-1.2.0" = {
+      name = "http-signature";
+      packageName = "http-signature";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz";
+        sha1 = "9aecd925114772f3d95b65a60abb8f7c18fbace1";
+      };
+    };
     "once-1.3.0" = {
       name = "once";
       packageName = "once";
@@ -20693,7 +20936,7 @@ let
       version = "1.15.5";
       src = fetchurl {
         url = "https://registry.npmjs.org/express-session/-/express-session-1.15.5.tgz";
-        sha512 = "0xr0b4wp67nzril9h59g1ag2siwazl9kkfy45cq317w0x9q6apr82i9hvqrmjpp9zfvzfidz0vvd1pczsa7namwsdwk1anp9zl74584";
+        sha1 = "f49a18227263b316f6f8544da5fee25a540259ec";
       };
     };
     "forever-monitor-1.1.0" = {
@@ -20792,7 +21035,7 @@ let
       version = "2.1.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/raven/-/raven-2.1.2.tgz";
-        sha512 = "136ylazswrblh2b1kc29xsmzk3i3bhm6vcirl1zb60fv9h0nf3hipz7qm91vs6my1lry00xrzpy1x96y51siciwwq7k3fs0ynl2j6m4";
+        sha1 = "4aa7a72c4b3061d7fde06bfc62d669a74a651e27";
       };
     };
     "signals-1.0.0" = {
@@ -20813,13 +21056,13 @@ let
         sha1 = "0caf52c79189a290746fc446cc5e863f6bdddfe3";
       };
     };
-    "socket.io-2.0.3" = {
-      name = "socket.io";
-      packageName = "socket.io";
-      version = "2.0.3";
+    "superagent-3.5.2" = {
+      name = "superagent";
+      packageName = "superagent";
+      version = "3.5.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io/-/socket.io-2.0.3.tgz";
-        sha1 = "4359f06a24933ae6bd087798af78c680eae345e3";
+        url = "https://registry.npmjs.org/superagent/-/superagent-3.5.2.tgz";
+        sha1 = "3361a3971567504c351063abeaae0faa23dbf3f8";
       };
     };
     "winston-2.3.1" = {
@@ -20864,7 +21107,7 @@ let
       version = "3.3.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/diff/-/diff-3.3.0.tgz";
-        sha512 = "0vcr20wa3j8j9b5xs7d5wnkm74g7ka45zfmw813s6ibwk8gbzyj87ifas3qklfdj7ydrqjfcylhazar038qzaf6jqfl17snn6wxjif3";
+        sha1 = "056695150d7aa93237ca7e378ac3b1682b7963b9";
       };
     };
     "hogan.js-3.0.2" = {
@@ -21026,7 +21269,7 @@ let
       version = "2.2.11";
       src = fetchurl {
         url = "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.11.tgz";
-        sha512 = "3sn0n3ncghvdrhy082cysiswswps9d5824ppjkl7gl1z1r6f11ij6z9nvs3l8gbp7vys1kgamrnikas3azjh7dwaqi1j4haffpkxvw7";
+        sha1 = "0796b31f8d7688007ff0b93a8088d34aa17c0f72";
       };
     };
     "update-notifier-2.1.0" = {
@@ -21083,87 +21326,6 @@ let
         sha1 = "67d080b9725291d7e389e34c26860dd97f1debaa";
       };
     };
-    "engine.io-3.1.0" = {
-      name = "engine.io";
-      packageName = "engine.io";
-      version = "3.1.0";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io/-/engine.io-3.1.0.tgz";
-        sha1 = "5ca438e3ce9fdbc915c4a21c8dd9e1266706e57e";
-      };
-    };
-    "socket.io-adapter-1.1.1" = {
-      name = "socket.io-adapter";
-      packageName = "socket.io-adapter";
-      version = "1.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-1.1.1.tgz";
-        sha1 = "2a805e8a14d6372124dd9159ad4502f8cb07f06b";
-      };
-    };
-    "socket.io-client-2.0.3" = {
-      name = "socket.io-client";
-      packageName = "socket.io-client";
-      version = "2.0.3";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.3.tgz";
-        sha1 = "6caf4aff9f85b19fd91b6ce13d69adb564f8873b";
-      };
-    };
-    "socket.io-parser-3.1.2" = {
-      name = "socket.io-parser";
-      packageName = "socket.io-parser";
-      version = "3.1.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.2.tgz";
-        sha1 = "dbc2282151fc4faebbe40aeedc0772eba619f7f2";
-      };
-    };
-    "engine.io-parser-2.1.1" = {
-      name = "engine.io-parser";
-      packageName = "engine.io-parser";
-      version = "2.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.1.tgz";
-        sha1 = "e0fb3f0e0462f7f58bb77c1a52e9f5a7e26e4668";
-      };
-    };
-    "uws-0.14.5" = {
-      name = "uws";
-      packageName = "uws";
-      version = "0.14.5";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/uws/-/uws-0.14.5.tgz";
-        sha1 = "67aaf33c46b2a587a5f6666d00f7691328f149dc";
-      };
-    };
-    "has-binary2-1.0.2" = {
-      name = "has-binary2";
-      packageName = "has-binary2";
-      version = "1.0.2";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/has-binary2/-/has-binary2-1.0.2.tgz";
-        sha1 = "e83dba49f0b9be4d026d27365350d9f03f54be98";
-      };
-    };
-    "isarray-2.0.1" = {
-      name = "isarray";
-      packageName = "isarray";
-      version = "2.0.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz";
-        sha1 = "a37d94ed9cda2d59865c9f76fe596ee1f338741e";
-      };
-    };
-    "engine.io-client-3.1.1" = {
-      name = "engine.io-client";
-      packageName = "engine.io-client";
-      version = "3.1.1";
-      src = fetchurl {
-        url = "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.1.tgz";
-        sha1 = "415a9852badb14fa008fa3ef1e31608db6761325";
-      };
-    };
     "adm-zip-0.4.7" = {
       name = "adm-zip";
       packageName = "adm-zip";
@@ -21206,7 +21368,7 @@ let
       version = "0.0.33";
       src = fetchurl {
         url = "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz";
-        sha512 = "0drg2bck1cj8677rgs1l98v7vqaxawcqh6ja87qilwnd719l5y0lzv5ssn3pcwa37fdbg4188y6x15a90vkllyvfpd9v7fai2b8j44d";
+        sha1 = "6d34335889768d21b2bcda0aa277ced3b1bfadf9";
       };
     };
     "follow-redirects-0.0.3" = {
@@ -21260,7 +21422,7 @@ let
       version = "0.5.7";
       src = fetchurl {
         url = "https://registry.npmjs.org/json-loader/-/json-loader-0.5.7.tgz";
-        sha512 = "3iwy9jwca9hg6h1k7cmcdlsygn2qzjv7w72fsrfjfpdrcyd4xc5fb11sf664rvnzrfmz24f19kvi3qawif4n63lggvpg5pv73qfrcs0";
+        sha1 = "dca14a70235ff82f0ac9a3abeb60d337a365185d";
       };
     };
     "loader-runner-2.3.0" = {
@@ -21323,7 +21485,7 @@ let
       version = "1.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.0.1.tgz";
-        sha512 = "27l6lhqai0bhgk7mbchvf608bgmrgbqmgjd07k1rsg7xh12lnaflr459cy7ay108jr7dk8g5ybx70xi7cbz6lm5c7m022sl5b34r6yk";
+        sha1 = "c7356436a4d13123be2e2426a05d1dad9cbe65cf";
       };
     };
     "es6-map-0.1.5" = {
@@ -21395,7 +21557,7 @@ let
       version = "2.0.4";
       src = fetchurl {
         url = "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.4.tgz";
-        sha512 = "2pddj1k7206wrs3q5z7dzwc657rbdd2m00llzz0h1241fp0y5i32qi2slmfys217hqszbqmvnmjr32msgbjgzh33nxw6py49p4j35mr";
+        sha1 = "96ca53f4b794a5e7c0e1bd7cc88a372298fa01e6";
       };
     };
     "source-list-map-2.0.0" = {
@@ -21404,7 +21566,7 @@ let
       version = "2.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz";
-        sha512 = "3q09f2w67qqhl3lwiisj4422mj9nfldg4cxmidfrjcwn3k7spm9g46x4n1j6kv39bi9khmcpyvfa3fwski488ibivyg9bwijjw2cr93";
+        sha1 = "aaa47403f7b245a92fbc97ea08f250d6087ed085";
       };
     };
     "death-1.1.0" = {
@@ -21422,7 +21584,7 @@ let
       version = "1.4.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.1.tgz";
-        sha512 = "3d6jyhcq21cxy2n6mnalnxcdxl9i00n8qka7awrqamggss8yllz57msx7c480knv037snkzkymq6npl36wlpl71h54x511dlchavnxa";
+        sha1 = "39c72ed89d1b49ba708e18776500488902a52027";
       };
     };
     "leven-2.1.0" = {
@@ -21440,7 +21602,7 @@ let
       version = "1.8.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/node-emoji/-/node-emoji-1.8.1.tgz";
-        sha512 = "1bdm7sms59bj5fa575nda007mvn4nibjla4hm9bf9ry70kgqw7slmz3l4md4cyx2j4zda0dh0mcjildkzq7ba3i9qzapha93l14qjzs";
+        sha1 = "6eec6bfb07421e2148c75c6bba72421f8530a826";
       };
     };
     "object-path-0.11.4" = {
@@ -21638,7 +21800,7 @@ let
       version = "2.0.2";
       src = fetchurl {
         url = "https://registry.npmjs.org/yeoman-environment/-/yeoman-environment-2.0.2.tgz";
-        sha512 = "2wkqnb0q3hbfvgxiyi21kaw7rcn4grpxaajnhxry03y05xfr39xh25c9nqj4drp6c89snssd741ra24v5ibngj460hgs4ldsz90w5r0";
+        sha1 = "504ece28e11b5ac487e90b97d8189afa38db4331";
       };
     };
     "yosay-2.0.1" = {
@@ -21647,7 +21809,7 @@ let
       version = "2.0.1";
       src = fetchurl {
         url = "https://registry.npmjs.org/yosay/-/yosay-2.0.1.tgz";
-        sha512 = "1n6z65vkm1r31a1ms8wn32m9q61vrlz9isn43lm00qka1zvnich78zbnp29xwy72z361is2yimrpglmc55w97hbi9pas5pqlnvqbpw4";
+        sha1 = "078167f0365732e5c82d3f64633f9cd3a0526d2f";
       };
     };
     "filter-obj-1.1.0" = {
@@ -21665,7 +21827,7 @@ let
       version = "1.1.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/p-any/-/p-any-1.1.0.tgz";
-        sha512 = "3da1hqkqhwx9xiw283nnq04pvsj1a69k7k0np5126v33dmpgxyhg19s99bz6djzd6sp713yg02h3h636wlgi9v2099rlrq2mrajvz8i";
+        sha1 = "1d03835c7eed1e34b8e539c47b7b60d0d015d4e1";
       };
     };
     "p-try-1.0.0" = {
@@ -21692,7 +21854,7 @@ let
       version = "2.0.0";
       src = fetchurl {
         url = "https://registry.npmjs.org/p-some/-/p-some-2.0.0.tgz";
-        sha512 = "23lpz1jyj01f06bndx53w1k931l6ki6m94mgf9lqpxka3366q0w1ql0igm7bj5nc0imzdjv3x5825c05mjnhkgahw99hd0h1kk5ri0a";
+        sha1 = "60b408e21f5da11a417fad13740bf20f9024ab3b";
       };
     };
     "aggregate-error-1.0.0" = {
@@ -22013,7 +22175,7 @@ in
       sources."jsonlint-1.5.1"
       (sources."uglify-js-2.6.1" // {
         dependencies = [
-          sources."source-map-0.5.6"
+          sources."source-map-0.5.7"
         ];
       })
       sources."resolve-1.4.0"
@@ -22364,7 +22526,7 @@ in
       sources."has-color-0.1.7"
       sources."ansi-styles-1.0.0"
       sources."strip-ansi-0.1.1"
-      sources."@types/node-7.0.42"
+      sources."@types/node-7.0.43"
       sources."@types/request-0.0.45"
       sources."@types/uuid-2.0.30"
       sources."is-buffer-1.1.5"
@@ -22372,7 +22534,7 @@ in
       sources."@types/form-data-2.2.0"
       sources."debug-0.7.4"
       sources."q-0.9.7"
-      sources."pkginfo-0.4.0"
+      sources."pkginfo-0.4.1"
       sources."revalidator-0.1.8"
       (sources."utile-0.2.1" // {
         dependencies = [
@@ -22432,7 +22594,7 @@ in
       sources."tunnel-agent-0.4.3"
       sources."delayed-stream-1.0.0"
       sources."lodash-4.17.4"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."pinkie-promise-2.0.1"
       sources."escape-string-regexp-1.0.5"
       sources."has-ansi-2.0.0"
@@ -22743,7 +22905,7 @@ in
       sources."convert-source-map-1.1.3"
       sources."inline-source-map-0.6.2"
       sources."lodash.memoize-3.0.4"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."pako-0.2.9"
       sources."base64-js-1.2.1"
       sources."ieee754-1.1.8"
@@ -22764,12 +22926,14 @@ in
       sources."randombytes-2.0.5"
       sources."browserify-aes-1.0.6"
       sources."browserify-des-1.0.0"
-      sources."evp_bytestokey-1.0.0"
+      sources."evp_bytestokey-1.0.2"
       sources."buffer-xor-1.0.3"
       sources."cipher-base-1.0.4"
       sources."safe-buffer-5.1.1"
       sources."des.js-1.0.0"
       sources."minimalistic-assert-1.0.0"
+      sources."md5.js-1.3.4"
+      sources."hash-base-3.0.4"
       sources."bn.js-4.11.8"
       sources."browserify-rsa-4.0.1"
       sources."elliptic-6.4.0"
@@ -22779,9 +22943,12 @@ in
       sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
-      sources."ripemd160-2.0.1"
+      (sources."ripemd160-2.0.1" // {
+        dependencies = [
+          sources."hash-base-2.0.2"
+        ];
+      })
       sources."sha.js-2.4.8"
-      sources."hash-base-2.0.2"
       sources."miller-rabin-4.0.0"
       sources."fs.realpath-1.0.0"
       sources."inflight-1.0.6"
@@ -22872,7 +23039,7 @@ in
       sources."router-0.6.2"
       sources."srt2vtt-1.3.1"
       sources."stream-transcoder-0.0.5"
-      (sources."xml2js-0.4.18" // {
+      (sources."xml2js-0.4.19" // {
         dependencies = [
           sources."xmlbuilder-9.0.4"
         ];
@@ -23015,16 +23182,17 @@ in
       sources."blob-to-buffer-1.2.6"
       sources."magnet-uri-5.1.7"
       sources."parse-torrent-file-4.0.3"
-      sources."simple-get-2.6.0"
+      sources."simple-get-2.7.0"
       sources."safe-buffer-5.1.1"
       sources."thirty-two-1.0.2"
       sources."uniq-1.0.1"
       sources."bencode-1.0.0"
       sources."simple-sha1-2.1.0"
       sources."rusha-0.8.6"
+      sources."decompress-response-3.3.0"
       sources."once-1.4.0"
       sources."simple-concat-1.0.0"
-      sources."unzip-response-2.0.1"
+      sources."mimic-response-1.0.0"
       sources."wrappy-1.0.2"
       (sources."end-of-stream-1.0.0" // {
         dependencies = [
@@ -23132,7 +23300,7 @@ in
           sources."ultron-1.0.2"
         ];
       })
-      sources."ipaddr.js-1.4.0"
+      sources."ipaddr.js-1.5.2"
       sources."get-browser-rtc-1.0.2"
       sources."process-nextick-args-1.0.7"
       sources."util-deprecate-1.0.2"
@@ -23197,7 +23365,7 @@ in
     version = "1.12.7";
     src = fetchurl {
       url = "https://registry.npmjs.org/coffee-script/-/coffee-script-1.12.7.tgz";
-      sha512 = "29mq40padyvizg4f141b00p0p74hx9v06d7gxk84ggsiyw6rf5bb65gnfwk1i02r276jwqybmi5hx98s943slyazjnqd69jmj389dvw";
+      sha1 = "c05dae0cb79591d05b3070a8433a98c9a89ccc53";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -23272,7 +23440,7 @@ in
       sources."shelljs-0.5.3"
       sources."underscore-1.8.3"
       sources."unorm-1.4.1"
-      sources."big-integer-1.6.23"
+      sources."big-integer-1.6.24"
       sources."sax-0.3.5"
       sources."inflight-1.0.6"
       sources."inherits-2.0.3"
@@ -23465,7 +23633,7 @@ in
       sources."convert-source-map-1.1.3"
       sources."inline-source-map-0.6.2"
       sources."lodash.memoize-3.0.4"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."pako-0.2.9"
       sources."ieee754-1.1.8"
       sources."typedarray-0.0.6"
@@ -23483,12 +23651,14 @@ in
       sources."randombytes-2.0.5"
       sources."browserify-aes-1.0.6"
       sources."browserify-des-1.0.0"
-      sources."evp_bytestokey-1.0.0"
+      sources."evp_bytestokey-1.0.2"
       sources."buffer-xor-1.0.3"
       sources."cipher-base-1.0.4"
       sources."safe-buffer-5.1.1"
       sources."des.js-1.0.0"
       sources."minimalistic-assert-1.0.0"
+      sources."md5.js-1.3.4"
+      sources."hash-base-3.0.4"
       sources."bn.js-4.11.8"
       sources."browserify-rsa-4.0.1"
       sources."elliptic-6.4.0"
@@ -23498,9 +23668,12 @@ in
       sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
-      sources."ripemd160-2.0.1"
+      (sources."ripemd160-2.0.1" // {
+        dependencies = [
+          sources."hash-base-2.0.2"
+        ];
+      })
       sources."sha.js-2.4.8"
-      sources."hash-base-2.0.2"
       sources."miller-rabin-4.0.0"
       sources."function-bind-1.1.0"
       sources."is-buffer-1.1.5"
@@ -23536,7 +23709,7 @@ in
       sources."strip-ansi-3.0.1"
       sources."supports-color-2.0.0"
       sources."ansi-regex-2.1.1"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."bytes-2.5.0"
       sources."compressible-2.0.11"
       sources."debug-2.6.8"
@@ -23582,7 +23755,7 @@ in
       sources."npm-package-arg-5.1.2"
       sources."promzard-0.3.0"
       sources."read-1.0.7"
-      (sources."read-package-json-2.0.11" // {
+      (sources."read-package-json-2.0.12" // {
         dependencies = [
           sources."glob-7.1.2"
         ];
@@ -23593,6 +23766,7 @@ in
       sources."mute-stream-0.0.7"
       sources."json-parse-better-errors-1.0.1"
       sources."normalize-package-data-2.4.0"
+      sources."slash-1.0.0"
       sources."is-builtin-module-1.0.0"
       sources."builtin-modules-1.1.1"
       sources."spdx-correct-1.0.2"
@@ -23707,7 +23881,7 @@ in
         ];
       })
       sources."commander-2.11.0"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."pinkie-promise-2.0.1"
       sources."generate-function-2.0.0"
       sources."generate-object-property-1.2.0"
@@ -23856,7 +24030,7 @@ in
     version = "0.2.9";
     src = fetchurl {
       url = "https://registry.npmjs.org/dhcp/-/dhcp-0.2.9.tgz";
-      sha512 = "0xvz5ppq82s4yhrp4alp1ni696v960p9a8hycwns0bj33qjdsd2nn9h2xzpgssn9c27jbr91h9fr851rnc7sz7nd2ycblcsfy193sj0";
+      sha1 = "204208be1cef2788d528744fb263f60a528363a2";
     };
     dependencies = [
       sources."minimist-1.2.0"
@@ -24167,13 +24341,13 @@ in
     version = "3.3.1";
     src = fetchurl {
       url = "https://registry.npmjs.org/elasticdump/-/elasticdump-3.3.1.tgz";
-      sha512 = "21mmlyi12vnfg5s88vh8i7jk43m69bp4qhgkch8i2qbzf9fv4hqn7b6wcxkbbdxzdvnkkpklb2xxpxi5nflwl513w08d6ykvac2ambh";
+      sha1 = "84218b1184cec4859e63ae2ef44b5a7d877e4fe4";
     };
     dependencies = [
       sources."JSONStream-1.3.1"
       sources."async-2.5.0"
       sources."aws4-1.6.0"
-      sources."aws-sdk-2.100.0"
+      sources."aws-sdk-2.104.0"
       sources."ini-1.3.4"
       sources."optimist-0.6.1"
       sources."request-2.81.0"
@@ -24281,7 +24455,7 @@ in
     version = "2.0.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/emoj/-/emoj-2.0.0.tgz";
-      sha512 = "06w3hpcnxg63wg262ldhw4s2shyr1f1bvilqshy88i4svamgxk0qzdhhma2rwcwq7qpjwjlr8m1z2qbmqw9faff5f8hl45yj3jxrs3z";
+      sha1 = "6f6faf41a8f48e6080bffb2012041fc89491dd9f";
     };
     dependencies = [
       sources."auto-bind-1.1.0"
@@ -24376,7 +24550,7 @@ in
       sources."path-is-absolute-1.0.1"
       sources."private-0.1.7"
       sources."slash-1.0.0"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       (sources."chalk-1.1.3" // {
         dependencies = [
           sources."has-ansi-2.0.0"
@@ -24514,15 +24688,25 @@ in
   eslint = nodeEnv.buildNodePackage {
     name = "eslint";
     packageName = "eslint";
-    version = "4.4.1";
+    version = "4.5.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/eslint/-/eslint-4.4.1.tgz";
-      sha1 = "99cd7eafcffca2ff99a5c8f5f2a474d6364b4bd3";
+      url = "https://registry.npmjs.org/eslint/-/eslint-4.5.0.tgz";
+      sha1 = "bb75d3b8bde97fb5e13efcd539744677feb019c3";
     };
     dependencies = [
       sources."ajv-5.2.2"
-      sources."babel-code-frame-6.26.0"
-      sources."chalk-1.1.3"
+      (sources."babel-code-frame-6.26.0" // {
+        dependencies = [
+          sources."chalk-1.1.3"
+          sources."strip-ansi-3.0.1"
+        ];
+      })
+      (sources."chalk-2.1.0" // {
+        dependencies = [
+          sources."ansi-styles-3.2.0"
+          sources."supports-color-4.2.1"
+        ];
+      })
       sources."concat-stream-1.6.0"
       sources."cross-spawn-5.1.0"
       sources."debug-2.6.8"
@@ -24536,17 +24720,9 @@ in
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.2"
       sources."globals-9.18.0"
-      sources."ignore-3.3.3"
+      sources."ignore-3.3.4"
       sources."imurmurhash-0.1.4"
-      (sources."inquirer-3.2.2" // {
-        dependencies = [
-          sources."chalk-2.1.0"
-          sources."strip-ansi-4.0.0"
-          sources."ansi-styles-3.2.0"
-          sources."supports-color-4.2.1"
-          sources."ansi-regex-3.0.0"
-        ];
-      })
+      sources."inquirer-3.2.2"
       sources."is-resolvable-1.0.0"
       sources."js-yaml-3.9.1"
       sources."json-stable-stringify-1.0.1"
@@ -24561,10 +24737,17 @@ in
       sources."progress-2.0.0"
       sources."require-uncached-1.0.3"
       sources."semver-5.4.1"
+      (sources."strip-ansi-4.0.0" // {
+        dependencies = [
+          sources."ansi-regex-3.0.0"
+        ];
+      })
       sources."strip-json-comments-2.0.1"
       (sources."table-4.0.1" // {
         dependencies = [
           sources."ajv-4.11.8"
+          sources."chalk-1.1.3"
+          sources."strip-ansi-3.0.1"
         ];
       })
       sources."text-table-0.2.0"
@@ -24575,9 +24758,11 @@ in
       sources."ansi-styles-2.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."has-ansi-2.0.0"
-      sources."strip-ansi-3.0.1"
       sources."supports-color-2.0.0"
       sources."ansi-regex-2.1.1"
+      sources."color-convert-1.9.0"
+      sources."color-name-1.1.3"
+      sources."has-flag-2.0.0"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
       sources."readable-stream-2.3.3"
@@ -24626,23 +24811,15 @@ in
       sources."wrappy-1.0.2"
       sources."ansi-escapes-2.0.0"
       sources."cli-cursor-2.1.0"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-2.0.4"
       sources."figures-2.0.0"
       sources."mute-stream-0.0.7"
       sources."run-async-2.3.0"
       sources."rx-lite-4.0.8"
       sources."rx-lite-aggregates-4.0.8"
-      (sources."string-width-2.1.1" // {
-        dependencies = [
-          sources."strip-ansi-4.0.0"
-          sources."ansi-regex-3.0.0"
-        ];
-      })
+      sources."string-width-2.1.1"
       sources."through-2.3.8"
-      sources."color-convert-1.9.0"
-      sources."color-name-1.1.3"
-      sources."has-flag-2.0.0"
       sources."restore-cursor-2.0.0"
       sources."onetime-2.0.1"
       sources."signal-exit-3.0.2"
@@ -24687,7 +24864,7 @@ in
     version = "5.1.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/eslint_d/-/eslint_d-5.1.0.tgz";
-      sha512 = "3a69fni3gypbhmr458lzxnz7qpik5v7zsxhv4sfb85a7ygngibaxazv5z4i39zvcyivab5z8mnayn496z7v6m0r8j0zkfm39d6i5gwq";
+      sha1 = "937da79d43f4411c92837c8aec22cf307bc6a572";
     };
     dependencies = [
       (sources."chalk-1.1.3" // {
@@ -24695,7 +24872,15 @@ in
           sources."supports-color-2.0.0"
         ];
       })
-      sources."eslint-4.4.1"
+      (sources."eslint-4.5.0" // {
+        dependencies = [
+          sources."chalk-2.1.0"
+          sources."strip-ansi-4.0.0"
+          sources."ansi-styles-3.2.0"
+          sources."supports-color-4.2.1"
+          sources."ansi-regex-3.0.0"
+        ];
+      })
       sources."optionator-0.8.2"
       sources."resolve-1.4.0"
       (sources."supports-color-3.2.3" // {
@@ -24723,7 +24908,7 @@ in
       sources."functional-red-black-tree-1.0.1"
       sources."glob-7.1.2"
       sources."globals-9.18.0"
-      sources."ignore-3.3.3"
+      sources."ignore-3.3.4"
       sources."imurmurhash-0.1.4"
       (sources."inquirer-3.2.2" // {
         dependencies = [
@@ -24758,6 +24943,9 @@ in
       sources."fast-deep-equal-1.0.0"
       sources."json-schema-traverse-0.3.1"
       sources."js-tokens-3.0.2"
+      sources."color-convert-1.9.0"
+      sources."color-name-1.1.3"
+      sources."has-flag-2.0.0"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
       sources."readable-stream-2.3.3"
@@ -24806,7 +24994,7 @@ in
       sources."wrappy-1.0.2"
       sources."ansi-escapes-2.0.0"
       sources."cli-cursor-2.1.0"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-2.0.4"
       sources."figures-2.0.0"
       sources."mute-stream-0.0.7"
@@ -24820,9 +25008,6 @@ in
         ];
       })
       sources."through-2.3.8"
-      sources."color-convert-1.9.0"
-      sources."color-name-1.1.3"
-      sources."has-flag-2.0.0"
       sources."restore-cursor-2.0.0"
       sources."onetime-2.0.1"
       sources."signal-exit-3.0.2"
@@ -25463,7 +25648,7 @@ in
           sources."asap-2.0.6"
         ];
       })
-      sources."xml2js-0.4.18"
+      sources."xml2js-0.4.19"
       sources."msgpack-1.0.2"
       sources."character-parser-1.2.1"
       (sources."clean-css-3.4.28" // {
@@ -25485,7 +25670,7 @@ in
       })
       (sources."uglify-js-2.8.29" // {
         dependencies = [
-          sources."source-map-0.5.6"
+          sources."source-map-0.5.7"
         ];
       })
       sources."void-elements-2.0.1"
@@ -25707,7 +25892,11 @@ in
           sources."isobject-3.0.1"
         ];
       })
-      sources."object.pick-1.2.0"
+      (sources."object.pick-1.3.0" // {
+        dependencies = [
+          sources."isobject-3.0.1"
+        ];
+      })
       sources."parse-filepath-1.0.1"
       sources."array-each-1.0.1"
       sources."array-slice-1.0.0"
@@ -25947,7 +26136,7 @@ in
       })
       (sources."uglify-js-2.8.29" // {
         dependencies = [
-          sources."source-map-0.5.6"
+          sources."source-map-0.5.7"
         ];
       })
       sources."minimist-0.0.10"
@@ -26070,7 +26259,7 @@ in
     version = "0.3.2";
     src = fetchurl {
       url = "https://registry.npmjs.org/jayschema/-/jayschema-0.3.2.tgz";
-      sha512 = "0v4070gii05w3qhq7bnl5jp358f3dibvjml3vnmphqhgdn2g9i94a2mrvmcyrhpa7k9f3gp63p6vgpmhihja5b3is5xc8mv4vdy8wjh";
+      sha1 = "7630ef74577274e95ad6d386ddfa091fcee8df4b";
     };
     dependencies = [
       sources."when-3.4.6"
@@ -26240,12 +26429,12 @@ in
       sources."argparse-1.0.9"
       sources."esprima-4.0.0"
       sources."sprintf-js-1.0.3"
-      sources."superagent-3.5.2"
+      sources."superagent-3.6.0"
       sources."component-emitter-1.2.1"
       sources."cookiejar-2.1.1"
       sources."debug-2.6.8"
       sources."extend-3.0.1"
-      sources."form-data-2.2.0"
+      sources."form-data-2.3.1"
       sources."formidable-1.1.1"
       sources."methods-1.1.2"
       sources."mime-1.3.6"
@@ -26280,7 +26469,7 @@ in
     version = "0.12.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/json-server/-/json-server-0.12.0.tgz";
-      sha512 = "2iqk65hy94j010zlqsl4rzfkz4f9ic1pqbvsf5w1lrgmda9wmhxl5kmvnmwikjilmn6kz9kniqzl7rpq3xv3cmpx8rppb7ipk5ddhzj";
+      sha1 = "e8764bcb2fccbbe2a0c3bc406ea1ef04e9007308";
     };
     dependencies = [
       sources."body-parser-1.17.2"
@@ -26356,7 +26545,7 @@ in
       sources."strip-ansi-3.0.1"
       sources."supports-color-2.0.0"
       sources."ansi-regex-2.1.1"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."compressible-2.0.11"
       sources."on-headers-1.0.1"
       sources."safe-buffer-5.1.1"
@@ -26583,7 +26772,7 @@ in
     version = "3.9.1";
     src = fetchurl {
       url = "https://registry.npmjs.org/js-yaml/-/js-yaml-3.9.1.tgz";
-      sha512 = "31wxw267vdf4nnjpksnzcb4i603366sjrw7g08bkxi3cwlrfl67458v7rvj72vbxcycq43z4ldkrfvqjrsvrjqrb2kfzmabpzghddq9";
+      sha1 = "08775cebdfdd359209f0d2acd383c8f86a6904a0";
     };
     dependencies = [
       sources."argparse-1.0.9"
@@ -26659,7 +26848,7 @@ in
           sources."ms-0.7.2"
         ];
       })
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."tmp-0.0.31"
       sources."useragent-2.2.1"
       sources."bytes-2.4.0"
@@ -26961,7 +27150,7 @@ in
       })
       sources."passport-google-oauth-1.0.0"
       sources."connect-restreamer-1.0.3"
-      sources."xml2js-0.4.18"
+      sources."xml2js-0.4.19"
       sources."basic-auth-1.0.4"
       sources."connect-2.30.2"
       sources."content-disposition-0.5.0"
@@ -26997,7 +27186,7 @@ in
       sources."csurf-1.8.3"
       (sources."errorhandler-1.4.3" // {
         dependencies = [
-          sources."accepts-1.3.3"
+          sources."accepts-1.3.4"
           sources."escape-html-1.0.3"
           sources."negotiator-0.6.1"
         ];
@@ -27103,14 +27292,14 @@ in
   lerna = nodeEnv.buildNodePackage {
     name = "lerna";
     packageName = "lerna";
-    version = "2.0.0";
+    version = "2.1.0";
     src = fetchurl {
-      url = "https://registry.npmjs.org/lerna/-/lerna-2.0.0.tgz";
-      sha1 = "49a72fe70e06aebfd7ea23efb2ab41abe60ebeea";
+      url = "https://registry.npmjs.org/lerna/-/lerna-2.1.0.tgz";
+      sha1 = "22da4c9cb09f7733a7e87ba8f34779a509c172ea";
     };
     dependencies = [
       sources."async-1.5.2"
-      sources."chalk-1.1.3"
+      sources."chalk-2.1.0"
       sources."cmd-shim-2.0.2"
       sources."columnify-1.5.4"
       sources."command-join-2.0.0"
@@ -27121,25 +27310,23 @@ in
         ];
       })
       sources."dedent-0.7.0"
-      sources."execa-0.6.3"
+      sources."execa-0.8.0"
       sources."find-up-2.1.0"
-      sources."fs-extra-3.0.1"
-      sources."get-port-3.1.0"
+      sources."fs-extra-4.0.1"
+      sources."get-port-3.2.0"
       sources."glob-7.1.2"
       sources."globby-6.1.0"
       sources."graceful-fs-4.1.11"
       (sources."inquirer-3.2.2" // {
         dependencies = [
-          sources."chalk-2.1.0"
           sources."strip-ansi-4.0.0"
-          sources."ansi-styles-3.2.0"
-          sources."supports-color-4.2.1"
           sources."ansi-regex-3.0.0"
         ];
       })
       sources."is-ci-1.0.10"
-      (sources."load-json-file-2.0.0" // {
+      (sources."load-json-file-3.0.0" // {
         dependencies = [
+          sources."parse-json-3.0.0"
           sources."strip-bom-3.0.0"
         ];
       })
@@ -27151,7 +27338,9 @@ in
       sources."read-cmd-shim-1.0.1"
       (sources."read-pkg-2.0.0" // {
         dependencies = [
+          sources."load-json-file-2.0.0"
           sources."path-type-2.0.0"
+          sources."strip-bom-3.0.0"
         ];
       })
       sources."rimraf-2.6.1"
@@ -27168,7 +27357,7 @@ in
           sources."uuid-3.1.0"
         ];
       })
-      sources."write-file-atomic-2.1.0"
+      sources."write-file-atomic-2.3.0"
       sources."write-json-file-2.2.0"
       (sources."write-pkg-3.1.0" // {
         dependencies = [
@@ -27186,15 +27375,17 @@ in
           sources."is-fullwidth-code-point-1.0.0"
         ];
       })
-      sources."ansi-styles-2.2.1"
+      sources."ansi-styles-3.2.0"
       sources."escape-string-regexp-1.0.5"
-      sources."has-ansi-2.0.0"
-      sources."strip-ansi-3.0.1"
-      sources."supports-color-2.0.0"
-      sources."ansi-regex-2.1.1"
+      sources."supports-color-4.2.1"
+      sources."color-convert-1.9.0"
+      sources."color-name-1.1.3"
+      sources."has-flag-2.0.0"
       sources."mkdirp-0.5.1"
       sources."minimist-0.0.8"
+      sources."strip-ansi-3.0.1"
       sources."wcwidth-1.0.1"
+      sources."ansi-regex-2.1.1"
       sources."defaults-1.0.3"
       sources."clone-1.0.2"
       sources."add-stream-1.0.0"
@@ -27254,7 +27445,7 @@ in
       sources."source-map-0.4.4"
       (sources."uglify-js-2.8.29" // {
         dependencies = [
-          sources."source-map-0.5.6"
+          sources."source-map-0.5.7"
           sources."yargs-3.10.0"
         ];
       })
@@ -27364,7 +27555,7 @@ in
       sources."array-uniq-1.0.3"
       sources."ansi-escapes-2.0.0"
       sources."cli-cursor-2.1.0"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-2.0.4"
       sources."figures-2.0.0"
       sources."mute-stream-0.0.7"
@@ -27377,9 +27568,6 @@ in
           sources."ansi-regex-3.0.0"
         ];
       })
-      sources."color-convert-1.9.0"
-      sources."color-name-1.1.3"
-      sources."has-flag-2.0.0"
       sources."restore-cursor-2.0.0"
       sources."onetime-2.0.1"
       sources."mimic-fn-1.1.0"
@@ -27417,7 +27605,6 @@ in
       sources."make-dir-1.0.0"
       sources."temp-dir-1.0.0"
       sources."imurmurhash-0.1.4"
-      sources."slide-1.1.6"
       sources."detect-indent-5.0.0"
       sources."sort-keys-1.1.2"
       sources."is-plain-obj-1.1.0"
@@ -27595,6 +27782,322 @@ in
     };
     production = true;
   };
+  livedown = nodeEnv.buildNodePackage {
+    name = "livedown";
+    packageName = "livedown";
+    version = "2.1.1";
+    src = fetchurl {
+      url = "https://registry.npmjs.org/livedown/-/livedown-2.1.1.tgz";
+      sha1 = "896f8e28af72fdaa1137fda105d1066aadc65314";
+    };
+    dependencies = [
+      sources."body-parser-1.17.2"
+      sources."chokidar-1.7.0"
+      (sources."express-4.15.4" // {
+        dependencies = [
+          sources."debug-2.6.8"
+          sources."qs-6.5.0"
+        ];
+      })
+      sources."markdown-it-8.4.0"
+      sources."markdown-it-emoji-1.4.0"
+      sources."markdown-it-github-headings-1.0.1"
+      sources."markdown-it-task-checkbox-1.0.4"
+      sources."minimist-1.2.0"
+      sources."opn-5.1.0"
+      sources."request-2.81.0"
+      sources."socket.io-2.0.3"
+      sources."bytes-2.4.0"
+      sources."content-type-1.0.2"
+      sources."debug-2.6.7"
+      sources."depd-1.1.1"
+      sources."http-errors-1.6.2"
+      sources."iconv-lite-0.4.15"
+      sources."on-finished-2.3.0"
+      sources."qs-6.4.0"
+      sources."raw-body-2.2.0"
+      sources."type-is-1.6.15"
+      sources."ms-2.0.0"
+      sources."inherits-2.0.3"
+      sources."setprototypeof-1.0.3"
+      sources."statuses-1.3.1"
+      sources."ee-first-1.1.1"
+      sources."unpipe-1.0.0"
+      sources."media-typer-0.3.0"
+      sources."mime-types-2.1.16"
+      sources."mime-db-1.29.0"
+      sources."anymatch-1.3.2"
+      sources."async-each-1.0.1"
+      sources."glob-parent-2.0.0"
+      sources."is-binary-path-1.0.1"
+      sources."is-glob-2.0.1"
+      sources."path-is-absolute-1.0.1"
+      sources."readdirp-2.1.0"
+      sources."fsevents-1.1.2"
+      sources."micromatch-2.3.11"
+      sources."normalize-path-2.1.1"
+      sources."arr-diff-2.0.0"
+      sources."array-unique-0.2.1"
+      sources."braces-1.8.5"
+      sources."expand-brackets-0.1.5"
+      sources."extglob-0.3.2"
+      sources."filename-regex-2.0.1"
+      sources."is-extglob-1.0.0"
+      sources."kind-of-3.2.2"
+      sources."object.omit-2.0.1"
+      sources."parse-glob-3.0.4"
+      sources."regex-cache-0.4.3"
+      sources."arr-flatten-1.1.0"
+      sources."expand-range-1.8.2"
+      sources."preserve-0.2.0"
+      sources."repeat-element-1.1.2"
+      sources."fill-range-2.2.3"
+      sources."is-number-2.1.0"
+      sources."isobject-2.1.0"
+      (sources."randomatic-1.1.7" // {
+        dependencies = [
+          (sources."is-number-3.0.0" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."kind-of-4.0.0"
+        ];
+      })
+      sources."repeat-string-1.6.1"
+      sources."isarray-1.0.0"
+      sources."is-buffer-1.1.5"
+      sources."is-posix-bracket-0.1.1"
+      sources."for-own-0.1.5"
+      sources."is-extendable-0.1.1"
+      sources."for-in-1.0.2"
+      sources."glob-base-0.3.0"
+      sources."is-dotfile-1.0.3"
+      sources."is-equal-shallow-0.1.3"
+      sources."is-primitive-2.0.0"
+      sources."remove-trailing-separator-1.1.0"
+      sources."binary-extensions-1.10.0"
+      sources."graceful-fs-4.1.11"
+      sources."minimatch-3.0.4"
+      sources."readable-stream-2.3.3"
+      sources."set-immediate-shim-1.0.1"
+      sources."brace-expansion-1.1.8"
+      sources."balanced-match-1.0.0"
+      sources."concat-map-0.0.1"
+      sources."core-util-is-1.0.2"
+      sources."process-nextick-args-1.0.7"
+      sources."safe-buffer-5.1.1"
+      sources."string_decoder-1.0.3"
+      sources."util-deprecate-1.0.2"
+      sources."nan-2.6.2"
+      sources."node-pre-gyp-0.6.36"
+      (sources."mkdirp-0.5.1" // {
+        dependencies = [
+          sources."minimist-0.0.8"
+        ];
+      })
+      sources."nopt-4.0.1"
+      sources."npmlog-4.1.2"
+      sources."rc-1.2.1"
+      sources."rimraf-2.6.1"
+      sources."semver-5.4.1"
+      sources."tar-2.2.1"
+      sources."tar-pack-3.4.0"
+      sources."abbrev-1.1.0"
+      sources."osenv-0.1.4"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
+      sources."are-we-there-yet-1.1.4"
+      sources."console-control-strings-1.1.0"
+      sources."gauge-2.7.4"
+      sources."set-blocking-2.0.0"
+      sources."delegates-1.0.0"
+      sources."aproba-1.1.2"
+      sources."has-unicode-2.0.1"
+      sources."object-assign-4.1.1"
+      sources."signal-exit-3.0.2"
+      sources."string-width-1.0.2"
+      sources."strip-ansi-3.0.1"
+      sources."wide-align-1.1.2"
+      sources."code-point-at-1.1.0"
+      sources."is-fullwidth-code-point-1.0.0"
+      sources."number-is-nan-1.0.1"
+      sources."ansi-regex-2.1.1"
+      sources."deep-extend-0.4.2"
+      sources."ini-1.3.4"
+      sources."strip-json-comments-2.0.1"
+      sources."glob-7.1.2"
+      sources."fs.realpath-1.0.0"
+      sources."inflight-1.0.6"
+      sources."once-1.4.0"
+      sources."wrappy-1.0.2"
+      sources."block-stream-0.0.9"
+      sources."fstream-1.0.11"
+      sources."fstream-ignore-1.0.5"
+      sources."uid-number-0.0.6"
+      sources."accepts-1.3.4"
+      sources."array-flatten-1.1.1"
+      sources."content-disposition-0.5.2"
+      sources."cookie-0.3.1"
+      sources."cookie-signature-1.0.6"
+      sources."encodeurl-1.0.1"
+      sources."escape-html-1.0.3"
+      sources."etag-1.8.0"
+      (sources."finalhandler-1.0.4" // {
+        dependencies = [
+          sources."debug-2.6.8"
+        ];
+      })
+      sources."fresh-0.5.0"
+      sources."merge-descriptors-1.0.1"
+      sources."methods-1.1.2"
+      sources."parseurl-1.3.1"
+      sources."path-to-regexp-0.1.7"
+      sources."proxy-addr-1.1.5"
+      sources."range-parser-1.2.0"
+      (sources."send-0.15.4" // {
+        dependencies = [
+          sources."debug-2.6.8"
+        ];
+      })
+      sources."serve-static-1.12.4"
+      sources."utils-merge-1.0.0"
+      sources."vary-1.1.1"
+      sources."negotiator-0.6.1"
+      sources."forwarded-0.1.0"
+      sources."ipaddr.js-1.4.0"
+      sources."destroy-1.0.4"
+      sources."mime-1.3.4"
+      sources."argparse-1.0.9"
+      sources."entities-1.1.1"
+      sources."linkify-it-2.0.3"
+      sources."mdurl-1.0.1"
+      sources."uc.micro-1.0.3"
+      sources."sprintf-js-1.0.3"
+      sources."github-slugger-1.1.3"
+      sources."innertext-1.0.2"
+      sources."emoji-regex-6.1.1"
+      sources."html-entities-1.2.1"
+      sources."is-wsl-1.1.0"
+      sources."aws-sign2-0.6.0"
+      sources."aws4-1.6.0"
+      sources."caseless-0.12.0"
+      sources."combined-stream-1.0.5"
+      sources."extend-3.0.1"
+      sources."forever-agent-0.6.1"
+      sources."form-data-2.1.4"
+      sources."har-validator-4.2.1"
+      sources."hawk-3.1.3"
+      sources."http-signature-1.1.1"
+      sources."is-typedarray-1.0.0"
+      sources."isstream-0.1.2"
+      sources."json-stringify-safe-5.0.1"
+      sources."oauth-sign-0.8.2"
+      sources."performance-now-0.2.0"
+      sources."stringstream-0.0.5"
+      sources."tough-cookie-2.3.2"
+      sources."tunnel-agent-0.6.0"
+      sources."uuid-3.1.0"
+      sources."delayed-stream-1.0.0"
+      sources."asynckit-0.4.0"
+      sources."ajv-4.11.8"
+      sources."har-schema-1.0.5"
+      sources."co-4.6.0"
+      sources."json-stable-stringify-1.0.1"
+      sources."jsonify-0.0.0"
+      sources."hoek-2.16.3"
+      sources."boom-2.10.1"
+      sources."cryptiles-2.0.5"
+      sources."sntp-1.0.9"
+      sources."assert-plus-0.2.0"
+      (sources."jsprim-1.4.1" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      (sources."sshpk-1.13.1" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."extsprintf-1.3.0"
+      sources."json-schema-0.2.3"
+      (sources."verror-1.10.0" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."asn1-0.2.3"
+      (sources."dashdash-1.14.1" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      (sources."getpass-0.1.7" // {
+        dependencies = [
+          sources."assert-plus-1.0.0"
+        ];
+      })
+      sources."jsbn-0.1.1"
+      sources."tweetnacl-0.14.5"
+      sources."ecc-jsbn-0.1.1"
+      sources."bcrypt-pbkdf-1.0.1"
+      sources."punycode-1.4.1"
+      (sources."engine.io-3.1.0" // {
+        dependencies = [
+          sources."accepts-1.3.3"
+        ];
+      })
+      sources."socket.io-adapter-1.1.1"
+      sources."socket.io-client-2.0.3"
+      (sources."socket.io-parser-3.1.2" // {
+        dependencies = [
+          sources."isarray-2.0.1"
+        ];
+      })
+      sources."base64id-1.0.0"
+      sources."engine.io-parser-2.1.1"
+      (sources."ws-2.3.1" // {
+        dependencies = [
+          sources."safe-buffer-5.0.1"
+        ];
+      })
+      sources."uws-0.14.5"
+      sources."after-0.8.2"
+      sources."arraybuffer.slice-0.0.6"
+      sources."base64-arraybuffer-0.1.5"
+      sources."blob-0.0.4"
+      (sources."has-binary2-1.0.2" // {
+        dependencies = [
+          sources."isarray-2.0.1"
+        ];
+      })
+      sources."ultron-1.1.0"
+      sources."backo2-1.0.2"
+      sources."component-bind-1.0.0"
+      sources."component-emitter-1.2.1"
+      sources."engine.io-client-3.1.1"
+      sources."has-cors-1.1.0"
+      sources."indexof-0.0.1"
+      sources."object-component-0.0.3"
+      sources."parseqs-0.0.5"
+      sources."parseuri-0.0.5"
+      sources."to-array-0.1.4"
+      sources."component-inherit-0.0.3"
+      sources."parsejson-0.0.3"
+      sources."xmlhttprequest-ssl-1.5.3"
+      sources."yeast-0.1.2"
+      sources."better-assert-1.0.2"
+      sources."callsite-1.0.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+      description = "Live Markdown previews for your favourite editor.";
+      homepage = https://github.com/shime/livedown;
+      license = "MIT";
+    };
+    production = true;
+  };
   meat = nodeEnv.buildNodePackage {
     name = "meat";
     packageName = "meat";
@@ -27636,7 +28139,7 @@ in
     version = "3.5.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/mocha/-/mocha-3.5.0.tgz";
-      sha512 = "0ygdqmd1pxvdrgyympyhfy8cg90632jkggbv7l7irnzl0gaxdmyrrs9bf634046q8xq41bfxysabapgwdy8ssd58vc8nggbk0y3d1d4";
+      sha1 = "1328567d2717f997030f8006234bce9b8cd72465";
     };
     dependencies = [
       sources."browser-stdout-1.3.0"
@@ -28070,7 +28573,7 @@ in
       sources."bplist-parser-0.1.1"
       sources."meow-3.7.0"
       sources."untildify-2.1.0"
-      sources."big-integer-1.6.23"
+      sources."big-integer-1.6.24"
       sources."camelcase-keys-2.1.0"
       sources."decamelize-1.2.0"
       sources."loud-rejection-1.6.0"
@@ -28112,7 +28615,7 @@ in
       sources."number-is-nan-1.0.1"
       sources."get-stdin-4.0.1"
       sources."ms-2.0.0"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."array-flatten-1.1.1"
       sources."content-disposition-0.5.2"
       sources."content-type-1.0.2"
@@ -28787,7 +29290,7 @@ in
         ];
       })
       sources."node-red-node-rbe-0.1.11"
-      sources."bcrypt-1.0.2"
+      sources."bcrypt-1.0.3"
       sources."bytes-2.4.0"
       sources."content-type-1.0.2"
       sources."debug-2.6.7"
@@ -28842,7 +29345,7 @@ in
       sources."vary-1.1.1"
       sources."moment-timezone-0.5.13"
       sources."moment-2.18.1"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."array-flatten-1.1.1"
       sources."content-disposition-0.5.2"
       sources."encodeurl-1.0.1"
@@ -28965,7 +29468,7 @@ in
       sources."passport-strategy-1.0.0"
       sources."pause-0.0.1"
       sources."commander-2.9.0"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."graceful-readlink-1.0.1"
       sources."options-0.0.6"
       sources."sax-1.2.4"
@@ -29011,7 +29514,7 @@ in
       sources."tunnel-agent-0.4.3"
       sources."delayed-stream-1.0.0"
       sources."chalk-1.1.3"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."pinkie-promise-2.0.1"
       sources."ansi-styles-2.2.1"
       sources."escape-string-regexp-1.0.5"
@@ -29113,10 +29616,10 @@ in
       sources."ajv-4.11.8"
       sources."har-schema-1.0.5"
       sources."co-4.6.0"
-      sources."bindings-1.2.1"
-      sources."nan-2.5.0"
-      (sources."node-pre-gyp-0.6.32" // {
+      sources."nan-2.6.2"
+      (sources."node-pre-gyp-0.6.36" // {
         dependencies = [
+          sources."nopt-4.0.1"
           sources."request-2.81.0"
           sources."caseless-0.12.0"
           sources."form-data-2.1.4"
@@ -29125,18 +29628,13 @@ in
         ];
       })
       sources."npmlog-4.1.2"
-      sources."rc-1.1.7"
-      sources."rimraf-2.5.4"
+      sources."rc-1.2.1"
+      sources."rimraf-2.6.1"
       sources."tar-2.2.1"
-      (sources."tar-pack-3.3.0" // {
-        dependencies = [
-          sources."debug-2.2.0"
-          sources."once-1.3.3"
-          sources."readable-stream-2.1.5"
-          sources."ms-0.7.1"
-          sources."string_decoder-0.10.31"
-        ];
-      })
+      sources."tar-pack-3.4.0"
+      sources."osenv-0.1.4"
+      sources."os-homedir-1.0.2"
+      sources."os-tmpdir-1.0.2"
       sources."are-we-there-yet-1.1.4"
       sources."console-control-strings-1.1.0"
       sources."gauge-2.7.4"
@@ -29157,7 +29655,6 @@ in
       sources."fstream-1.0.11"
       sources."fstream-ignore-1.0.5"
       sources."uid-number-0.0.6"
-      sources."buffer-shims-1.0.0"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -29221,7 +29718,7 @@ in
       sources."methods-0.0.1"
       sources."send-0.1.0"
       sources."cookie-signature-1.0.1"
-      (sources."debug-3.0.0" // {
+      (sources."debug-3.0.1" // {
         dependencies = [
           sources."ms-2.0.0"
         ];
@@ -29299,7 +29796,7 @@ in
     version = "5.3.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/npm/-/npm-5.3.0.tgz";
-      sha512 = "29izly6jqqdaslak9xz3i3bsr7qgg5vjcbzf55as0hh630z4aml48n5a7dz6skqn34d02fg3bk2zwkq7n67z787wn14vr3na9chx6v4";
+      sha1 = "e2ae85ef09d53f7f570a05578692899bf7879f17";
     };
     dependencies = [
       sources."JSONStream-1.3.1"
@@ -29371,7 +29868,7 @@ in
       sources."read-1.0.7"
       sources."read-cmd-shim-1.0.1"
       sources."read-installed-4.0.3"
-      sources."read-package-json-2.0.11"
+      sources."read-package-json-2.0.12"
       sources."read-package-tree-5.1.6"
       sources."readable-stream-2.3.3"
       sources."request-2.81.0"
@@ -29512,7 +30009,7 @@ in
       sources."cyclist-0.2.2"
       sources."xtend-4.0.1"
       sources."minimist-0.0.8"
-      sources."copy-concurrently-1.0.3"
+      sources."copy-concurrently-1.0.5"
       sources."run-queue-1.0.3"
       sources."is-builtin-module-1.0.0"
       sources."builtin-modules-1.1.1"
@@ -29536,7 +30033,7 @@ in
       })
       sources."os-homedir-1.0.2"
       sources."os-tmpdir-1.0.2"
-      sources."make-fetch-happen-2.4.13"
+      sources."make-fetch-happen-2.5.0"
       sources."npm-pick-manifest-1.0.4"
       sources."promise-retry-1.1.1"
       sources."protoduck-4.0.0"
@@ -29565,6 +30062,7 @@ in
       sources."bl-1.2.1"
       sources."mute-stream-0.0.7"
       sources."util-extend-1.0.3"
+      sources."slash-1.0.0"
       sources."core-util-is-1.0.2"
       sources."isarray-1.0.0"
       sources."process-nextick-args-1.0.7"
@@ -29913,7 +30411,7 @@ in
     version = "2.12.1";
     src = fetchurl {
       url = "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-2.12.1.tgz";
-      sha512 = "2p62mjf7a9bjycq3x1jbp3vsvn8ww3ccrfx96syp7p19bzgg58q80didz4ygwn8cf1xxiyqhr3v3mwi7v9v90gnb8lsas4yz62z55ac";
+      sha1 = "9a41006f5186e8a59da7fd2b466fee9e896d865d";
     };
     dependencies = [
       sources."bluebird-3.5.0"
@@ -29940,7 +30438,7 @@ in
       sources."require-dir-0.3.2"
       sources."semver-5.4.1"
       sources."semver-utils-1.1.1"
-      (sources."snyk-1.38.3" // {
+      (sources."snyk-1.40.1" // {
         dependencies = [
           sources."update-notifier-0.5.0"
           sources."latest-version-1.0.1"
@@ -29970,7 +30468,7 @@ in
           sources."strip-ansi-4.0.0"
           sources."ansi-regex-3.0.0"
           sources."dot-prop-4.2.0"
-          sources."write-file-atomic-2.1.0"
+          sources."write-file-atomic-2.3.0"
           sources."package-json-4.0.1"
           sources."got-6.7.1"
           sources."timed-out-4.0.1"
@@ -30053,7 +30551,7 @@ in
       sources."read-1.0.7"
       sources."read-cmd-shim-1.0.1"
       sources."read-installed-4.0.3"
-      sources."read-package-json-2.0.11"
+      sources."read-package-json-2.0.12"
       sources."read-package-tree-5.1.6"
       (sources."readable-stream-2.1.5" // {
         dependencies = [
@@ -30126,7 +30624,7 @@ in
       sources."es6-symbol-3.1.1"
       sources."ms-2.0.0"
       sources."d-1.0.0"
-      sources."es5-ext-0.10.27"
+      sources."es5-ext-0.10.30"
       sources."es6-iterator-2.0.1"
       sources."is-builtin-module-1.0.0"
       sources."builtin-modules-1.1.1"
@@ -30147,6 +30645,7 @@ in
       sources."mute-stream-0.0.7"
       sources."util-extend-1.0.3"
       sources."json-parse-better-errors-1.0.1"
+      sources."slash-1.0.0"
       sources."buffer-shims-1.0.0"
       sources."aws-sign2-0.6.0"
       sources."aws4-1.6.0"
@@ -30176,7 +30675,7 @@ in
       sources."tunnel-agent-0.4.3"
       sources."delayed-stream-1.0.0"
       sources."asynckit-0.4.0"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."generate-function-2.0.0"
       sources."generate-object-property-1.2.0"
       sources."jsonpointer-4.0.1"
@@ -30243,7 +30742,8 @@ in
       sources."open-0.0.5"
       sources."os-name-1.0.3"
       sources."snyk-config-1.0.1"
-      sources."snyk-gradle-plugin-1.0.3"
+      sources."snyk-go-plugin-1.1.2"
+      sources."snyk-gradle-plugin-1.1.1"
       sources."snyk-module-1.8.1"
       sources."snyk-mvn-plugin-1.0.0"
       sources."snyk-policy-1.7.1"
@@ -30278,7 +30778,7 @@ in
       sources."xdg-basedir-2.0.0"
       sources."async-1.5.2"
       sources."cli-cursor-1.0.2"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."figures-1.7.0"
       sources."run-async-2.3.0"
       sources."rx-4.1.0"
@@ -30312,6 +30812,8 @@ in
       sources."longest-1.0.1"
       sources."repeat-string-1.6.1"
       sources."is-buffer-1.1.5"
+      sources."fs-0.0.1-security"
+      sources."toml-2.3.2"
       sources."clone-deep-0.3.0"
       sources."for-own-1.0.0"
       sources."is-plain-object-2.0.4"
@@ -30544,7 +31046,7 @@ in
       sources."media-typer-0.3.0"
       sources."mime-types-2.1.16"
       sources."mime-db-1.29.0"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."compressible-2.0.11"
       sources."on-headers-1.0.1"
       sources."safe-buffer-5.1.1"
@@ -30602,7 +31104,7 @@ in
       sources."source-map-0.4.4"
       (sources."uglify-js-2.8.29" // {
         dependencies = [
-          sources."source-map-0.5.6"
+          sources."source-map-0.5.7"
           sources."yargs-3.10.0"
         ];
       })
@@ -30826,7 +31328,7 @@ in
     version = "0.37.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/peerflix/-/peerflix-0.37.0.tgz";
-      sha512 = "0i2j5pgw72bkg5s5crh3p534sz6m6yvbyg174kkgyj1l0sgaqmzj22xmh0dvxqk7r3rp79w2vs27gdqzb8azmlr6ag13m17h20cyhhf";
+      sha1 = "535019f8dcbae8932bd38b28533bf61c0f979048";
     };
     dependencies = [
       sources."airplayer-2.0.0"
@@ -30879,7 +31381,7 @@ in
       sources."plist-1.2.0"
       sources."reverse-http-1.3.0"
       sources."stream-buffers-2.2.0"
-      sources."big-integer-1.6.23"
+      sources."big-integer-1.6.24"
       sources."inherits-2.0.3"
       sources."typedarray-0.0.6"
       sources."readable-stream-2.3.3"
@@ -30897,7 +31399,7 @@ in
       sources."once-1.4.0"
       sources."consume-until-1.0.0"
       sources."http-headers-3.0.1"
-      sources."buffer-indexof-1.1.0"
+      sources."buffer-indexof-1.1.1"
       sources."next-line-1.1.0"
       sources."wrappy-1.0.2"
       sources."chalk-1.1.3"
@@ -30964,7 +31466,7 @@ in
       sources."get-stdin-4.0.1"
       sources."ansi-escapes-1.4.0"
       sources."cli-cursor-1.0.2"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-1.1.1"
       sources."figures-1.7.0"
       sources."mute-stream-0.0.6"
@@ -30984,14 +31486,15 @@ in
       sources."blob-to-buffer-1.2.6"
       sources."magnet-uri-5.1.7"
       sources."parse-torrent-file-4.0.3"
-      sources."simple-get-2.6.0"
+      sources."simple-get-2.7.0"
       sources."thirty-two-1.0.2"
       sources."uniq-1.0.1"
       sources."bencode-1.0.0"
       sources."simple-sha1-2.1.0"
       sources."rusha-0.8.6"
+      sources."decompress-response-3.3.0"
       sources."simple-concat-1.0.0"
-      sources."unzip-response-2.0.1"
+      sources."mimic-response-1.0.0"
       sources."end-of-stream-1.4.0"
       sources."deep-extend-0.4.2"
       sources."ini-1.3.4"
@@ -31084,7 +31587,7 @@ in
           sources."ultron-1.0.2"
         ];
       })
-      sources."ipaddr.js-1.4.0"
+      sources."ipaddr.js-1.5.2"
       sources."get-browser-rtc-1.0.2"
       sources."ultron-1.1.0"
       sources."addr-to-ip-port-1.4.2"
@@ -31180,7 +31683,7 @@ in
       sources."csurf-1.8.3"
       (sources."errorhandler-1.4.3" // {
         dependencies = [
-          sources."accepts-1.3.3"
+          sources."accepts-1.3.4"
           sources."escape-html-1.0.3"
           sources."negotiator-0.6.1"
         ];
@@ -31427,7 +31930,7 @@ in
       sources."compact2string-1.4.0"
       sources."random-iterate-1.0.1"
       sources."run-series-1.1.4"
-      sources."simple-get-2.6.0"
+      sources."simple-get-2.7.0"
       (sources."simple-peer-6.4.4" // {
         dependencies = [
           sources."readable-stream-2.3.3"
@@ -31447,8 +31950,9 @@ in
       })
       sources."string2compact-1.2.2"
       sources."uniq-1.0.1"
+      sources."decompress-response-3.3.0"
       sources."simple-concat-1.0.0"
-      sources."unzip-response-2.0.1"
+      sources."mimic-response-1.0.0"
       sources."get-browser-rtc-1.0.2"
       sources."process-nextick-args-1.0.7"
       sources."util-deprecate-1.0.2"
@@ -31576,7 +32080,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."chalk-1.1.3"
       sources."commander-2.11.0"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."ansi-styles-2.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."has-ansi-2.0.0"
@@ -31653,7 +32157,7 @@ in
       sources."minimist-0.0.8"
       sources."ast-types-0.9.6"
       sources."esprima-3.1.3"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."base62-0.1.1"
       sources."esprima-fb-13001.1001.0-dev-harmony-fb"
       sources."amdefine-1.0.1"
@@ -31716,7 +32220,7 @@ in
       sources."methods-0.1.0"
       sources."send-0.1.4"
       sources."cookie-signature-1.0.1"
-      sources."debug-3.0.0"
+      sources."debug-3.0.1"
       sources."qs-0.6.5"
       sources."bytes-0.2.1"
       sources."pause-0.0.1"
@@ -31825,7 +32329,7 @@ in
     version = "5.4.1";
     src = fetchurl {
       url = "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz";
-      sha512 = "2r13vwvb5ick34k6flr7vgbjfsdka8zbj5a74rd0ba4bp0nqmhppbaw3qlwn7f4smpifpa4iy4hxj137y598rbvsmy3h0d8vxgvzwar";
+      sha1 = "e059c09d8571f0540823733433505d3a2f00b18e";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -31888,7 +32392,7 @@ in
       })
       sources."fs-ext-0.6.0"
       sources."crypt3-0.2.0"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."array-flatten-2.1.1"
       sources."content-disposition-0.5.2"
       sources."content-type-1.0.2"
@@ -32152,9 +32656,9 @@ in
           sources."assert-plus-0.1.2"
           sources."clone-0.1.5"
           sources."dashdash-1.10.1"
-          (sources."http-signature-1.1.1" // {
+          (sources."http-signature-1.2.0" // {
             dependencies = [
-              sources."assert-plus-0.2.0"
+              sources."assert-plus-1.0.0"
             ];
           })
           sources."once-1.3.0"
@@ -32274,7 +32778,7 @@ in
     dependencies = [
       sources."css-parse-1.7.0"
       sources."mkdirp-0.5.1"
-      sources."debug-3.0.0"
+      sources."debug-3.0.1"
       sources."sax-0.5.8"
       sources."glob-7.0.6"
       sources."source-map-0.1.43"
@@ -32322,7 +32826,7 @@ in
       sources."sprintf-js-1.0.3"
       sources."minimist-0.0.8"
       sources."clap-1.2.0"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."chalk-1.1.3"
       sources."ansi-styles-2.2.1"
       sources."escape-string-regexp-1.0.5"
@@ -32403,14 +32907,14 @@ in
   uglify-js = nodeEnv.buildNodePackage {
     name = "uglify-js";
     packageName = "uglify-js";
-    version = "3.0.27";
+    version = "3.0.28";
     src = fetchurl {
-      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.27.tgz";
-      sha512 = "111q9l8r0c6pfhpdpx4wi99f71n1ykfdc2h73ycdy0q1cnk78qvw837j0994nf337bm1irdj1mgzhrillmplw4vpyv8wl6p2fdh4gqw";
+      url = "https://registry.npmjs.org/uglify-js/-/uglify-js-3.0.28.tgz";
+      sha1 = "96b8495f0272944787b5843a1679aa326640d5f7";
     };
     dependencies = [
       sources."commander-2.11.0"
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
     ];
     buildInputs = globalBuildInputs;
     meta = {
@@ -32423,10 +32927,10 @@ in
   ungit = nodeEnv.buildNodePackage {
     name = "ungit";
     packageName = "ungit";
-    version = "1.1.27";
+    version = "1.1.28";
     src = fetchurl {
-      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.27.tgz";
-      sha1 = "47d7f0cedbecd9c9a1f7377cbaea944053727153";
+      url = "https://registry.npmjs.org/ungit/-/ungit-1.1.28.tgz";
+      sha1 = "372d0d57bd8efc3570de6b2743a4da8aaa83eefb";
     };
     dependencies = [
       sources."async-2.5.0"
@@ -32451,7 +32955,7 @@ in
       sources."forever-monitor-1.1.0"
       sources."getmac-1.2.1"
       sources."hasher-1.2.0"
-      sources."ignore-3.3.3"
+      sources."ignore-3.3.4"
       sources."just-detect-adblock-1.0.0"
       (sources."keen.io-0.1.3" // {
         dependencies = [
@@ -32546,7 +33050,7 @@ in
           sources."component-emitter-1.2.1"
           sources."cookiejar-2.1.1"
           sources."extend-3.0.1"
-          sources."form-data-2.2.0"
+          sources."form-data-2.3.1"
           sources."formidable-1.1.1"
           sources."readable-stream-2.3.3"
           sources."combined-stream-1.0.5"
@@ -32609,7 +33113,7 @@ in
       sources."whatwg-fetch-2.0.3"
       sources."nopt-1.0.10"
       sources."abbrev-1.1.0"
-      sources."accepts-1.3.3"
+      sources."accepts-1.3.4"
       sources."array-flatten-1.1.1"
       sources."content-disposition-0.5.2"
       sources."encodeurl-1.0.1"
@@ -32655,7 +33159,7 @@ in
         ];
       })
       sources."minimatch-0.0.5"
-      sources."pkginfo-0.4.0"
+      sources."pkginfo-0.4.1"
       sources."ps-tree-0.0.3"
       sources."watch-0.5.1"
       (sources."utile-0.1.7" // {
@@ -32795,7 +33299,7 @@ in
       sources."read-1.0.7"
       sources."read-cmd-shim-1.0.1"
       sources."read-installed-4.0.3"
-      sources."read-package-json-2.0.11"
+      sources."read-package-json-2.0.12"
       sources."read-package-tree-5.1.6"
       sources."realize-package-specifier-3.0.3"
       sources."retry-0.10.1"
@@ -32911,7 +33415,7 @@ in
       sources."stream-shift-1.0.0"
       sources."cyclist-0.2.2"
       sources."xtend-4.0.1"
-      sources."copy-concurrently-1.0.3"
+      sources."copy-concurrently-1.0.5"
       sources."run-queue-1.0.3"
       sources."is-builtin-module-1.0.0"
       sources."builtin-modules-1.1.1"
@@ -32937,6 +33441,7 @@ in
       sources."mute-stream-0.0.7"
       sources."util-extend-1.0.3"
       sources."json-parse-better-errors-1.0.1"
+      sources."slash-1.0.0"
       sources."aws-sign2-0.6.0"
       sources."aws4-1.6.0"
       sources."caseless-0.12.0"
@@ -33013,7 +33518,7 @@ in
       })
       (sources."configstore-3.1.1" // {
         dependencies = [
-          sources."write-file-atomic-2.1.0"
+          sources."write-file-atomic-2.3.0"
         ];
       })
       sources."is-npm-1.0.0"
@@ -33086,7 +33591,11 @@ in
       sources."deep-extend-0.4.2"
       sources."strip-json-comments-2.0.1"
       sources."eve-0.5.4"
-      sources."engine.io-3.1.0"
+      (sources."engine.io-3.1.0" // {
+        dependencies = [
+          sources."accepts-1.3.3"
+        ];
+      })
       sources."socket.io-adapter-1.1.1"
       (sources."socket.io-client-2.0.3" // {
         dependencies = [
@@ -33311,7 +33820,7 @@ in
       sources."delayed-stream-1.0.0"
       sources."chalk-1.1.3"
       sources."commander-2.11.0"
-      sources."is-my-json-valid-2.16.0"
+      sources."is-my-json-valid-2.16.1"
       sources."ansi-styles-2.2.1"
       sources."escape-string-regexp-1.0.5"
       sources."has-ansi-2.0.0"
@@ -33342,7 +33851,7 @@ in
     version = "3.5.5";
     src = fetchurl {
       url = "https://registry.npmjs.org/webpack/-/webpack-3.5.5.tgz";
-      sha512 = "079rx5l3h8prapxbrdddakxp5s7cbcmzy2hlmzvydmn7c4cpnlba7cprhxqazzs26iv63hm8lrc3crrwk6lx3davvwv4y0vfbi33rd9";
+      sha1 = "3226f09fc8b3e435ff781e7af34f82b68b26996c";
     };
     dependencies = [
       sources."acorn-5.1.1"
@@ -33368,7 +33877,7 @@ in
           sources."string_decoder-0.10.31"
         ];
       })
-      sources."source-map-0.5.6"
+      sources."source-map-0.5.7"
       sources."supports-color-4.2.1"
       sources."tapable-0.2.8"
       sources."uglifyjs-webpack-plugin-0.4.6"
@@ -33401,7 +33910,7 @@ in
       sources."esrecurse-4.2.0"
       sources."estraverse-4.2.0"
       sources."d-1.0.0"
-      sources."es5-ext-0.10.27"
+      sources."es5-ext-0.10.30"
       sources."es6-iterator-2.0.1"
       sources."es6-set-0.1.5"
       sources."es6-symbol-3.1.1"
@@ -33463,11 +33972,13 @@ in
       sources."randombytes-2.0.5"
       sources."browserify-aes-1.0.6"
       sources."browserify-des-1.0.0"
-      sources."evp_bytestokey-1.0.0"
+      sources."evp_bytestokey-1.0.2"
       sources."buffer-xor-1.0.3"
       sources."cipher-base-1.0.4"
       sources."des.js-1.0.0"
       sources."minimalistic-assert-1.0.0"
+      sources."md5.js-1.3.4"
+      sources."hash-base-3.0.4"
       sources."bn.js-4.11.8"
       sources."browserify-rsa-4.0.1"
       sources."elliptic-6.4.0"
@@ -33477,9 +33988,12 @@ in
       sources."hmac-drbg-1.0.1"
       sources."minimalistic-crypto-utils-1.0.1"
       sources."asn1.js-4.9.1"
-      sources."ripemd160-2.0.1"
+      (sources."ripemd160-2.0.1" // {
+        dependencies = [
+          sources."hash-base-2.0.2"
+        ];
+      })
       sources."sha.js-2.4.8"
-      sources."hash-base-2.0.2"
       sources."miller-rabin-4.0.0"
       sources."builtin-status-codes-3.0.0"
       sources."to-arraybuffer-1.0.1"
@@ -33844,7 +34358,7 @@ in
       sources."xtend-4.0.1"
       sources."ansi-escapes-2.0.0"
       sources."cli-cursor-2.1.0"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-2.0.4"
       sources."figures-2.0.0"
       sources."lodash-4.17.4"
@@ -34009,7 +34523,7 @@ in
     version = "2.0.0";
     src = fetchurl {
       url = "https://registry.npmjs.org/yo/-/yo-2.0.0.tgz";
-      sha512 = "3maxk0a2p7xyz9bkfyx3jd0inm9y7a3wc8b7rqx8p5fsmx8qkqnbvhxwn4210l689vd5p3xphn147dyclqsqmmgp7cqyswyyfsmm1lr";
+      sha1 = "0cd75211379ed87105f99510885759062147b517";
     };
     dependencies = [
       sources."async-2.5.0"
@@ -34127,13 +34641,13 @@ in
       sources."graceful-fs-4.1.11"
       sources."make-dir-1.0.0"
       sources."unique-string-1.0.0"
-      sources."write-file-atomic-2.1.0"
+      sources."write-file-atomic-2.3.0"
       sources."xdg-basedir-3.0.0"
       sources."is-obj-1.0.1"
       sources."pify-2.3.0"
       sources."crypto-random-string-1.0.0"
       sources."imurmurhash-0.1.4"
-      sources."slide-1.1.6"
+      sources."signal-exit-3.0.2"
       sources."lru-cache-4.1.1"
       sources."shebang-command-1.2.0"
       sources."which-1.3.0"
@@ -34158,7 +34672,6 @@ in
       sources."is-stream-1.1.0"
       sources."npm-run-path-2.0.2"
       sources."p-finally-1.0.0"
-      sources."signal-exit-3.0.2"
       sources."strip-eof-1.0.0"
       sources."path-key-2.0.1"
       sources."mimic-fn-1.1.0"
@@ -34186,7 +34699,7 @@ in
       sources."decamelize-1.2.0"
       sources."ansi-escapes-2.0.0"
       sources."cli-cursor-2.1.0"
-      sources."cli-width-2.1.0"
+      sources."cli-width-2.2.0"
       sources."external-editor-2.0.4"
       sources."mute-stream-0.0.7"
       sources."run-async-2.3.0"
@@ -34222,6 +34735,7 @@ in
       })
       sources."osenv-0.1.4"
       sources."os-homedir-1.0.2"
+      sources."slide-1.1.6"
       (sources."readline2-1.0.1" // {
         dependencies = [
           sources."is-fullwidth-code-point-1.0.0"
diff --git a/pkgs/development/ocaml-modules/cohttp/default.nix b/pkgs/development/ocaml-modules/cohttp/default.nix
index 1fd4446f1ee..adde3094e27 100644
--- a/pkgs/development/ocaml-modules/cohttp/default.nix
+++ b/pkgs/development/ocaml-modules/cohttp/default.nix
@@ -1,29 +1,26 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild
+{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
 , ppx_fields_conv, ppx_sexp_conv
-, base64, fieldslib, uri, conduit
-# Optional for async and lwt support:
-, async , async_ssl, cmdliner, fmt, magic-mime, ocaml_lwt, tls
+, base64, fieldslib, jsonm, logs, re, stringext, uri
 }:
 
 stdenv.mkDerivation rec {
-	version = "0.22.0";
+	version = "0.99.0";
 	name = "ocaml${ocaml.version}-cohttp-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-cohttp";
 		rev = "v${version}";
-		sha256 = "1iy4ynh0yrw8337nsa9zvgcf476im0bhccsbs0vki3c5yxw2x60d";
+		sha256 = "0y8qhzfwrc6486apmp2rsj822cnfhnz4w8rsb52w5wqmsgjxx1bj";
 	};
 
-	buildInputs = [ ocaml findlib ocamlbuild ppx_fields_conv ppx_sexp_conv conduit
-		async async_ssl cmdliner fmt magic-mime ocaml_lwt tls ];
+	buildInputs = [ ocaml findlib jbuilder jsonm ppx_fields_conv ppx_sexp_conv ];
 
-	propagatedBuildInputs = [ base64 fieldslib uri ];
+	propagatedBuildInputs = [ base64 fieldslib re stringext uri ];
 
-	makeFlags = [ "PREFIX=$(out)" ];
+	buildPhase = "jbuilder build -p cohttp";
 
-	createFindlibDestdir = true;
+	inherit (jbuilder) installPhase;
 
 	meta = {
 		description = "HTTP(S) library for Lwt, Async and Mirage";
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
new file mode 100644
index 00000000000..c526a101dd9
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cohttp/lwt-unix.nix
@@ -0,0 +1,19 @@
+{ stdenv, ocaml, findlib, jbuilder, cohttp-lwt
+, conduit-lwt-unix, ppx_sexp_conv
+, cmdliner, fmt, magic-mime
+}:
+
+if !stdenv.lib.versionAtLeast cohttp-lwt.version "0.99"
+then cohttp-lwt
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-cohttp-lwt-unix-${version}";
+	inherit (cohttp-lwt) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder cmdliner ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ cohttp-lwt conduit-lwt-unix fmt magic-mime ];
+
+	buildPhase = "jbuilder build -p cohttp-lwt-unix";
+}
diff --git a/pkgs/development/ocaml-modules/cohttp/lwt.nix b/pkgs/development/ocaml-modules/cohttp/lwt.nix
new file mode 100644
index 00000000000..21bea646d72
--- /dev/null
+++ b/pkgs/development/ocaml-modules/cohttp/lwt.nix
@@ -0,0 +1,16 @@
+{ stdenv, ocaml, findlib, jbuilder, cohttp, lwt3, uri, ppx_sexp_conv }:
+
+if !stdenv.lib.versionAtLeast cohttp.version "0.99"
+then cohttp
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-cohttp-lwt-${version}";
+	inherit (cohttp) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder uri ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ cohttp lwt3 ];
+
+	buildPhase = "jbuilder build -p cohttp-lwt";
+}
diff --git a/pkgs/development/ocaml-modules/conduit/default.nix b/pkgs/development/ocaml-modules/conduit/default.nix
index 750bded2893..98ac997383c 100644
--- a/pkgs/development/ocaml-modules/conduit/default.nix
+++ b/pkgs/development/ocaml-modules/conduit/default.nix
@@ -1,27 +1,25 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild
-, ppx_driver, ppx_sexp_conv
-, ipaddr, uri, logs
-, ocaml_lwt ? null
-, async ? null, async_ssl ? null
-, tls ? null
+{ stdenv, fetchFromGitHub, ocaml, findlib, jbuilder
+, ppx_sexp_conv
+, astring, ipaddr, uri
 }:
 
 stdenv.mkDerivation rec {
-	version = "0.15.4";
+	version = "1.0.0";
 	name = "ocaml${ocaml.version}-conduit-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-conduit";
 		rev = "v${version}";
-		sha256 = "1ya7jqvhl8hc22cid5myf31w5c473imdxjnl9785lavsqj3djjxq";
+		sha256 = "1ryigzh7sfif1mly624fpm87aw5h60n5wzdlrvqsf71qcpxc6iiz";
 	};
 
-	buildInputs = [ ocaml findlib ocamlbuild ppx_driver ppx_sexp_conv
-		ocaml_lwt async async_ssl tls ];
-	propagatedBuildInputs = [ ipaddr uri logs ];
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+	propagatedBuildInputs = [ astring ipaddr uri ];
 
-	createFindlibDestdir = true;
+	buildPhase = "jbuilder build -p conduit";
+
+	inherit (jbuilder) installPhase;
 
 	meta = {
 		description = "Network connection library for TCP and SSL";
diff --git a/pkgs/development/ocaml-modules/conduit/lwt-unix.nix b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
new file mode 100644
index 00000000000..ce7a33a11ee
--- /dev/null
+++ b/pkgs/development/ocaml-modules/conduit/lwt-unix.nix
@@ -0,0 +1,18 @@
+{ stdenv, ocaml, findlib, jbuilder, conduit-lwt
+, logs, ppx_sexp_conv
+}:
+
+if !stdenv.lib.versionAtLeast conduit-lwt.version "1.0"
+then conduit-lwt
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-conduit-lwt-unix-${version}";
+	inherit (conduit-lwt) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ conduit-lwt logs ];
+
+	buildPhase = "jbuilder build -p conduit-lwt-unix";
+}
diff --git a/pkgs/development/ocaml-modules/conduit/lwt.nix b/pkgs/development/ocaml-modules/conduit/lwt.nix
new file mode 100644
index 00000000000..8ee3d827ecc
--- /dev/null
+++ b/pkgs/development/ocaml-modules/conduit/lwt.nix
@@ -0,0 +1,16 @@
+{ stdenv, ocaml, findlib, jbuilder, ppx_sexp_conv, conduit, lwt3 }:
+
+if !stdenv.lib.versionAtLeast conduit.version "1.0"
+then conduit
+else
+
+stdenv.mkDerivation rec {
+	name = "ocaml${ocaml.version}-conduit-lwt-${version}";
+	inherit (conduit) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ppx_sexp_conv ];
+
+	propagatedBuildInputs = [ conduit lwt3 ];
+
+	buildPhase = "jbuilder build -p conduit-lwt";
+}
diff --git a/pkgs/development/ocaml-modules/fileutils/default.nix b/pkgs/development/ocaml-modules/fileutils/default.nix
index 6265a4b90ca..15942812754 100644
--- a/pkgs/development/ocaml-modules/fileutils/default.nix
+++ b/pkgs/development/ocaml-modules/fileutils/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, ocaml, findlib, ocamlbuild, ounit }:
 
 stdenv.mkDerivation {
-  name = "ocaml-fileutils-0.5.1";
+  name = "ocaml-fileutils-0.5.2";
 
   src = fetchurl {
-    url = https://forge.ocamlcore.org/frs/download.php/1651/ocaml-fileutils-0.5.1.tar.gz;
-    sha256 = "0g6zx2rcvacklxyli19ixcf6ich9ipxsps4k3jz98f5zlaab0a7g";
+    url = https://forge.ocamlcore.org/frs/download.php/1695/ocaml-fileutils-0.5.2.tar.gz;
+    sha256 = "06l8hva3jmb2b7n4aa84dhhh1lr2mj8632gz4q83glc00khkn1vv";
   };
 
   buildInputs = [ ocaml findlib ocamlbuild ounit ];
diff --git a/pkgs/development/ocaml-modules/git-http/default.nix b/pkgs/development/ocaml-modules/git-http/default.nix
index 7df47b093b3..5b93b960765 100644
--- a/pkgs/development/ocaml-modules/git-http/default.nix
+++ b/pkgs/development/ocaml-modules/git-http/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, ocaml, findlib, jbuilder, git, cohttp }:
+{ stdenv, ocaml, findlib, jbuilder, git, cohttp-lwt }:
 
 stdenv.mkDerivation rec {
 	name = "ocaml${ocaml.version}-git-http-${version}";
@@ -6,7 +6,7 @@ stdenv.mkDerivation rec {
 
 	buildInputs = [ ocaml findlib jbuilder ];
 
-	propagatedBuildInputs = [ git cohttp ];
+	propagatedBuildInputs = [ git cohttp-lwt ];
 
 	buildPhase = "jbuilder build -p git-http";
 
diff --git a/pkgs/development/ocaml-modules/git-unix/default.nix b/pkgs/development/ocaml-modules/git-unix/default.nix
index 1fd4fd92649..189388efe32 100644
--- a/pkgs/development/ocaml-modules/git-unix/default.nix
+++ b/pkgs/development/ocaml-modules/git-unix/default.nix
@@ -1,5 +1,6 @@
 { stdenv, ocaml, findlib, jbuilder, git-http
-, ocaml_lwt, tls, conduit, magic-mime, cmdliner, mtime
+, cohttp-lwt-unix
+, tls, magic-mime, cmdliner, mtime
 }:
 
 stdenv.mkDerivation rec {
@@ -8,7 +9,7 @@ stdenv.mkDerivation rec {
 
 	buildInputs = [ ocaml findlib jbuilder cmdliner mtime ];
 
-	propagatedBuildInputs = [ conduit git-http magic-mime ocaml_lwt tls ];
+	propagatedBuildInputs = [ cohttp-lwt-unix git-http tls ];
 
 	buildPhase = "jbuilder build -p git-unix";
 
diff --git a/pkgs/development/ocaml-modules/git/default.nix b/pkgs/development/ocaml-modules/git/default.nix
index e3b4b4333e1..4d4f86e57eb 100644
--- a/pkgs/development/ocaml-modules/git/default.nix
+++ b/pkgs/development/ocaml-modules/git/default.nix
@@ -3,14 +3,14 @@
 }:
 
 stdenv.mkDerivation rec {
-	version = "1.11.1";
+	version = "1.11.2";
 	name = "ocaml${ocaml.version}-git-${version}";
 
 	src = fetchFromGitHub {
 		owner = "mirage";
 		repo = "ocaml-git";
 		rev = version;
-		sha256 = "04az2bpbhgdhh7y6pagqx4wf3jbmqrm8w20dgimpbj5h3hnak744";
+		sha256 = "1z5b0g4vck1sh1w076i2p3ppxrmb9h30q3nip5snw2r9prkm6y1j";
 	};
 
 	buildInputs = [ ocaml findlib jbuilder ];
diff --git a/pkgs/development/ocaml-modules/ojquery/default.nix b/pkgs/development/ocaml-modules/ojquery/default.nix
index ec4a6114810..6e9ca15fb38 100644
--- a/pkgs/development/ocaml-modules/ojquery/default.nix
+++ b/pkgs/development/ocaml-modules/ojquery/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchgit, ocaml, findlib, ocamlbuild, js_of_ocaml, camlp4 }:
+{ stdenv, fetchgit, ocaml, findlib, ocamlbuild, js_of_ocaml, js_of_ocaml-camlp4, camlp4, lwt3, ocaml_react }:
 
 stdenv.mkDerivation rec {
   version = "0.1";
@@ -9,8 +9,8 @@ stdenv.mkDerivation rec {
     sha256 = "1n01bsk4car40p94fk1ssvww0inqapwwhdylmrb7vv40drsdldp1";
   };
 
-  buildInputs = [ ocaml findlib ocamlbuild ];
-  propagatedBuildInputs = [ js_of_ocaml camlp4 ];
+  buildInputs = [ ocaml findlib ocamlbuild js_of_ocaml-camlp4 camlp4 ];
+  propagatedBuildInputs = [ js_of_ocaml lwt3 ocaml_react ];
 
   createFindlibDestdir = true;
 
diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix
index ba33081486d..0ef3ef4939b 100644
--- a/pkgs/development/ocaml-modules/vg/default.nix
+++ b/pkgs/development/ocaml-modules/vg/default.nix
@@ -1,5 +1,6 @@
 { stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
-, uchar, result, gg, uutf, otfm, js_of_ocaml,
+, uchar, result, gg, uutf, otfm
+, js_of_ocaml, js_of_ocaml-ocamlbuild, js_of_ocaml-ppx,
   pdfBackend ? true, # depends on uutf and otfm
   htmlcBackend ? true # depends on js_of_ocaml
 }:
@@ -29,7 +30,7 @@ stdenv.mkDerivation rec {
 
   propagatedBuildInputs = [ uchar result gg ]
                           ++ optionals pdfBackend [ uutf otfm ]
-                          ++ optionals htmlcBackend [ js_of_ocaml ];
+                          ++ optionals htmlcBackend [ js_of_ocaml js_of_ocaml-ocamlbuild js_of_ocaml-ppx ];
 
   createFindlibDestdir = true;
 
diff --git a/pkgs/development/ocaml-modules/xtmpl/default.nix b/pkgs/development/ocaml-modules/xtmpl/default.nix
index 77569c44bec..0d25b3785fc 100644
--- a/pkgs/development/ocaml-modules/xtmpl/default.nix
+++ b/pkgs/development/ocaml-modules/xtmpl/default.nix
@@ -1,5 +1,5 @@
 { stdenv, fetchFromGitHub, ocaml, findlib, uutf, sedlex, ppx_tools, js_of_ocaml
-, re }:
+, js_of_ocaml-camlp4, camlp4, re }:
 
 if stdenv.lib.versionOlder ocaml.version "4.03"
 then throw "xtmpl not supported for ocaml ${ocaml.version}"
@@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
     sha256 = "1dj5b4b266y4d8q3v1g0xsivz4vkhj0gi0jis37w84xcnlgiik8k";
   };
 
-  buildInputs = [ ocaml findlib ppx_tools js_of_ocaml ];
+  buildInputs = [ ocaml findlib ppx_tools js_of_ocaml js_of_ocaml-camlp4 camlp4 ];
   propagatedBuildInputs = [ sedlex uutf re ];
 
   createFindlibDestdir = true;
diff --git a/pkgs/development/pharo/launcher/default.nix b/pkgs/development/pharo/launcher/default.nix
index 911680b1eb8..9cec6e81ae6 100644
--- a/pkgs/development/pharo/launcher/default.nix
+++ b/pkgs/development/pharo/launcher/default.nix
@@ -1,11 +1,11 @@
-{ stdenv, fetchurl, bash, pharo-vm, unzip, makeDesktopItem }:
+{ stdenv, fetchurl, bash, pharo, unzip, makeDesktopItem }:
 
 stdenv.mkDerivation rec {
-  version = "0.2.9-2016.01.14";
+  version = "2017.02.28";
   name = "pharo-launcher-${version}";
   src = fetchurl {
-    url = "http://files.pharo.org/platform/launcher/blessed/PharoLauncher-user-${version}.zip";
-    sha256 = "0lzdnaw7l1rrzbrq53xsy38aiz6id5x7s78ds1dhb31vqc241yy8";
+    url = "http://files.pharo.org/platform/launcher/PharoLauncher-user-stable-${version}.zip";
+    sha256 = "1hfwjyx0c47s6ivc1zr2sf5mk1xw2zspsv0ns8mj3kcaglzqwiq0";
   };
 
   executable-name = "pharo-launcher";
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   # because upstream tarball has no top-level directory.
   sourceRoot = ".";
 
-  buildInputs = [ bash pharo-vm unzip ];
+  buildInputs = [ bash pharo unzip ];
 
   installPhase = ''
     mkdir -p $prefix/share/pharo-launcher
@@ -37,8 +37,7 @@ stdenv.mkDerivation rec {
 
     cat > $prefix/bin/${executable-name} <<EOF
     #!${bash}/bin/bash
-
-    exec ${pharo-vm}/bin/pharo-vm-x $prefix/share/pharo-launcher/pharo-launcher.image
+    exec "${pharo}/bin/pharo" $prefix/share/pharo-launcher/pharo-launcher.image
     EOF
     chmod +x $prefix/bin/${executable-name}
   '';
@@ -52,7 +51,7 @@ stdenv.mkDerivation rec {
      secs=5
      echo -n "Running headless Pharo for $secs seconds to check for a crash... "
      timeout $secs \
-       ${pharo-vm}/bin/pharo-vm-nox PharoLauncher.image --no-quit eval 'true'
+       "${pharo}/bin/pharo" -nodisplay PharoLauncher.image --no-quit eval 'true'
      test "$?" == 124 && echo "ok")
   '';
 
@@ -78,7 +77,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = http://pharo.org;
     license = stdenv.lib.licenses.mit;
-    maintainers = [ stdenv.lib.maintainers.lukego ];
-    platforms = pharo-vm.meta.platforms;
+    maintainers = [ ];
+    platforms = pharo.meta.platforms;
   };
 }
diff --git a/pkgs/development/pharo/vm/build-vm-legacy.nix b/pkgs/development/pharo/vm/build-vm-legacy.nix
new file mode 100644
index 00000000000..b2e37344afc
--- /dev/null
+++ b/pkgs/development/pharo/vm/build-vm-legacy.nix
@@ -0,0 +1,78 @@
+{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo, libuuid, makeWrapper, ... }:
+
+{ name, src, ... }:
+
+stdenv.mkDerivation rec {
+
+  inherit name src;
+
+  pharo-share = import ./share.nix { inherit stdenv fetchurl unzip; };
+
+  hardeningDisable = [ "format" "pic" ];
+
+  # Building
+  preConfigure = ''
+    cd build/
+  '';
+  resources = ./resources;
+
+  installPhase = ''
+    mkdir -p "$prefix/lib/$name"
+
+    cd ../../results
+
+    mv vm-display-null vm-display-null.so
+    mv vm-display-X11 vm-display-X11.so
+    mv vm-sound-null vm-sound-null.so
+    mv vm-sound-ALSA vm-sound-ALSA.so
+    mv pharo pharo-vm
+
+    cp * "$prefix/lib/$name"
+
+    mkdir $prefix/bin
+
+    chmod u+w $prefix/bin
+    cat > $prefix/bin/pharo-cog <<EOF
+    #!${bash}/bin/bash
+    # disable parameter expansion to forward all arguments unprocessed to the VM
+    set -f
+    exec $prefix/lib/$name/pharo-vm "\$@"
+    EOF
+
+    chmod +x $prefix/bin/pharo-cog
+
+    # Add cairo library to the library path.
+    wrapProgram $prefix/bin/pharo-cog --prefix LD_LIBRARY_PATH : ${LD_LIBRARY_PATH}
+
+    ln -s "${pharo-share}/lib/"*.sources $prefix/lib/$name
+  '';
+
+  LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath [ cairo mesa freetype openssl libuuid alsaLib xorg.libICE xorg.libSM ];
+  nativeBuildInputs = [ unzip cmake gcc makeWrapper ];
+  buildInputs = [ bash glibc openssl mesa freetype xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share ];
+
+  meta = {
+    description = "Clean and innovative Smalltalk-inspired environment";
+    longDescription = ''
+      Pharo's goal is to deliver a clean, innovative, free open-source
+      Smalltalk-inspired environment. By providing a stable and small core
+      system, excellent dev tools, and maintained releases, Pharo is an
+      attractive platform to build and deploy mission critical applications.
+
+      This package provides the executable VM. You should probably not care
+      about this package (which represents a packaging detail) and have a
+      look at the pharo-vm-core package instead.
+
+      Please fill bug reports on http://bugs.pharo.org under the 'Ubuntu
+      packaging (ppa:pharo/stable)' project.
+    '';
+    homepage = http://pharo.org;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.lukego ];
+    # Pharo VM sources are packaged separately for darwin (OS X)
+    platforms = with stdenv.lib;
+                  intersectLists
+                    platforms.mesaPlatforms
+                    (subtractLists platforms.darwin platforms.unix);
+  };
+}
diff --git a/pkgs/development/pharo/vm/build-vm.nix b/pkgs/development/pharo/vm/build-vm.nix
index c855919f802..7e80acb97c4 100644
--- a/pkgs/development/pharo/vm/build-vm.nix
+++ b/pkgs/development/pharo/vm/build-vm.nix
@@ -1,76 +1,109 @@
-{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo, makeDesktopItem }:
+{ stdenv, fetchurl, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo, libuuid, autoreconfHook, gcc48, ... }:
 
-{ name, src, binary-basename, ... }:
+{ name, src, version, source-date, source-url, ... }:
 
+# Build the Pharo VM
 stdenv.mkDerivation rec {
+  inherit name src;
 
-  inherit name src binary-basename;
+  # Command line invocation name.
+  # Distinct name for 64-bit builds because they only work with 64-bit images.
+  cmd = if stdenv.is64bit then "pharo-spur64" else "pharo-spur";
 
-  pharo-share = import ./share.nix { inherit stdenv fetchurl unzip; };
+  # Choose desired VM sources. Separate for 32-bit and 64-bit VM.
+  # (Could extent to building more VM variants e.g. SpurV3, Sista, etc.)
+  vm = if stdenv.is64bit then "spur64src" else "spursrc";
 
-  desktopItem = makeDesktopItem {
-    inherit name;
-    desktopName = "Pharo VM";
-    genericName = "Pharo Virtual Machine";
-    exec = "${binary-basename}-x %F";
-    icon = "pharo";
-    terminal = "false";
-    type="Application";
-    startupNotify = "false";
-    categories = "Development;";
-    mimeType = "application/x-pharo-image";
-  };
+  # Choose target platform name in the format used by the vm.
+  flavor =
+    if      stdenv.isLinux && stdenv.isi686    then "linux32x86"
+    else if stdenv.isLinux && stdenv.isx86_64  then "linux64x64"
+    else if stdenv.isDarwin && stdenv.isi686   then "macos32x86"
+    else if stdenv.isDarwin && stdenv.isx86_64 then "macos64x64"
+    else abort "Unsupported platform: only Linux/Darwin x86/x64 are supported.";
 
-  hardeningDisable = [ "format" "pic" ];
+  # Shared data (for the sources file)
+  pharo-share = import ./share.nix { inherit stdenv fetchurl unzip; };
 
-  # Building
-  preConfigure = ''
-    cd build/
+  # Note: -fPIC causes the VM to segfault.
+  hardeningDisable = [ "format" "pic"
+                       # while the VM depends on <= gcc48:
+                       "stackprotector" ];
+
+  # Regenerate the configure script.
+  # Unnecessary? But the build breaks without this.
+  autoreconfPhase = ''
+    pushd platforms/unix/config
+    make
+    popd
   '';
-  resources = ./resources;
-  installPhase = ''
-    mkdir -p "$prefix/lib/$name"
-
-    cd ../../results
-
-    mv vm-display-null vm-display-null.so
-    mv vm-display-X11 vm-display-X11.so
-    mv vm-sound-null vm-sound-null.so
-    mv vm-sound-ALSA vm-sound-ALSA.so
-    mv pharo pharo-vm
-
-    cp * "$prefix/lib/$name"
-
-    mkdir -p "$prefix/share/applications"
-    cp "${desktopItem}/share/applications/"* $prefix/share/applications
-
-    mkdir $prefix/bin
-
-    chmod u+w $prefix/bin
-    cat > $prefix/bin/${binary-basename}-x <<EOF
-    #!${bash}/bin/bash
 
-    # disable parameter expansion to forward all arguments unprocessed to the VM
-    set -f
+  # Configure with options modeled on the 'mvm' build script from the vm.
+  configureScript = "platforms/unix/config/configure";
+  configureFlags = [ "--without-npsqueak"
+                     "--with-vmversion=5.0"
+                     "--with-src=${vm}" ];
+  CFLAGS = "-DPharoVM -DIMMUTABILITY=1 -msse2 -D_GNU_SOURCE -DCOGMTVM=0 -g -O2 -DNDEBUG -DDEBUGVM=0";
+  LDFLAGS = "-Wl,-z,now";
+
+  # VM sources require some patching before build.
+  prePatch = ''
+    patchShebangs build.${flavor}
+    # Fix hard-coded path to /bin/rm in a script
+    sed -i -e 's:/bin/rm:rm:' platforms/unix/config/mkmf
+    # Fill in mandatory metadata about the VM source version
+    sed -i -e 's!\$Date\$!$Date: ${source-date} $!' \
+           -e 's!\$Rev\$!$Rev: ${version} $!' \
+           -e 's!\$URL\$!$URL: ${source-url} $!' \
+           platforms/Cross/vm/sqSCCSVersion.h
+  '';
 
-    exec $prefix/lib/$name/pharo-vm "\$@"
-    EOF
+  # Note: --with-vmcfg configure option is broken so copy plugin specs to ./
+  preConfigure = ''
+    cp build."${flavor}"/pharo.cog.spur/plugins.{ext,int} .
+  '';
 
-    cat > $prefix/bin/${binary-basename}-nox <<EOF
-    #!${bash}/bin/bash
+  # (No special build phase.)
 
-    # disable parameter expansion to forward all arguments unprocessed to the VM
+  installPhase = ''
+    # Install in working directory and then copy
+    make install-squeak install-plugins prefix=$(pwd)/products
+
+    # Copy binaries & rename from 'squeak' to 'pharo'
+    mkdir -p "$out"
+    cp products/lib/squeak/5.0-*/squeak "$out/pharo"
+    cp -r products/lib/squeak/5.0-*/*.so "$out"
+    ln -s "${pharo-share}/lib/"*.sources "$out"
+
+    # Create a shell script to run the VM in the proper environment.
+    #
+    # These wrapper puts all relevant libraries into the
+    # LD_LIBRARY_PATH. This is important because various C code in the VM
+    # and Smalltalk code in the image will search for them there.
+    mkdir -p "$out/bin"
+
+    # Note: include ELF rpath in LD_LIBRARY_PATH for finding libc.
+    libs=$out:$(patchelf --print-rpath "$out/pharo"):${cairo}/lib:${mesa}/lib:${freetype}/lib:${openssl}/lib:${libuuid}/lib:${alsaLib}/lib:${xorg.libICE}/lib:${xorg.libSM}/lib
+
+    # Create the script
+    cat > "$out/bin/${cmd}" <<EOF
+    #!/bin/sh
     set -f
-
-    exec $prefix/lib/$name/pharo-vm -vm-display-null "\$@"
+    LD_LIBRARY_PATH="\$LD_LIBRARY_PATH:$libs" exec $out/pharo "\$@"
     EOF
-
-    chmod +x $prefix/bin/${binary-basename}-x $prefix/bin/${binary-basename}-nox
-
-    ln -s "${pharo-share}/lib/"*.sources $prefix/lib/$name
+    chmod +x "$out/bin/${cmd}"
   '';
 
-  buildInputs = [ bash unzip cmake glibc openssl gcc mesa freetype xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share ];
+  enableParallelBuilding = true;
+
+  # gcc 4.8 used for the build:
+  #
+  # gcc5 crashes during compilation; gcc >= 4.9 produces a
+  # binary that crashes when forking a child process. See:
+  # http://forum.world.st/OSProcess-fork-issue-with-Debian-built-VM-td4947326.html
+  #
+  # (stack protection is disabled above for gcc 4.8 compatibility.)
+  buildInputs = [ bash unzip glibc openssl gcc48 mesa freetype xorg.libX11 xorg.libICE xorg.libSM alsaLib cairo pharo-share libuuid autoreconfHook ];
 
   meta = {
     description = "Clean and innovative Smalltalk-inspired environment";
@@ -89,11 +122,7 @@ stdenv.mkDerivation rec {
     '';
     homepage = http://pharo.org;
     license = stdenv.lib.licenses.mit;
-    maintainers = [ ];
-    # Pharo VM sources are packaged separately for darwin (macOS)
-    platforms = with stdenv.lib;
-                  intersectLists
-                    platforms.mesaPlatforms
-                    (subtractLists platforms.darwin platforms.unix);
+    maintainers = [ stdenv.lib.maintainers.lukego ];
+    platforms = [ "i686-linux" "x86_64-linux" "i686-darwin" "x86_64-darwin" ];
   };
 }
diff --git a/pkgs/development/pharo/vm/default.nix b/pkgs/development/pharo/vm/default.nix
index aca5c37d265..e6269503a4c 100644
--- a/pkgs/development/pharo/vm/default.nix
+++ b/pkgs/development/pharo/vm/default.nix
@@ -1,27 +1,15 @@
-{ stdenv, fetchurl, cmake, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo, makeDesktopItem } @args:
+{ stdenv, callPackage, callPackage_i686, makeWrapper, ...} @pkgs:
 
-rec {
-  pharo-vm-build = import ./build-vm.nix args;
+let
+  i686    = callPackage_i686 ./vms.nix {};
+  native  = callPackage ./vms.nix {};
+in
 
-  base-url = http://files.pharo.org/vm/src/vm-unix-sources/blessed;
+rec {
+  cog32 = i686.cog;
+  spur32 = i686.spur;
+  spur64 = if stdenv.is64bit then native.spur else "none";
+  multi-vm-wrapper  = callPackage ../wrapper { inherit cog32 spur32 spur64; };
+}
 
-  pharo-no-spur = pharo-vm-build rec {
-    version = "2016.02.18";
-    name = "pharo-vm-i386-${version}";
-    binary-basename = "pharo-vm";
-    src = fetchurl {
-      url = "${base-url}/pharo-vm-${version}.tar.bz2";
-      sha256 = "16n2zg7v2s1ml0vvpbhkw6khmgn637sr0d7n2b28qm5yc8pfhcj4";
-    };
-  };
 
-  pharo-spur = pharo-vm-build rec {
-    version = "2016.07.16";
-    name = "pharo-vm-spur-i386-${version}";
-    binary-basename = "pharo-spur-vm";
-    src = fetchurl {
-      url = "${base-url}/pharo-vm-spur-${version}.tar.bz2";
-      sha256 = "07nk4w5wh7gcf27cch5paqp9zdlshnknpv4y7imxlkjd76viac2b";
-    };
-  };
-}
diff --git a/pkgs/development/pharo/vm/share.nix b/pkgs/development/pharo/vm/share.nix
index aba42e3981c..54e686c82fe 100644
--- a/pkgs/development/pharo/vm/share.nix
+++ b/pkgs/development/pharo/vm/share.nix
@@ -31,6 +31,11 @@ stdenv.mkDerivation rec {
     sha256 = "0ykl1y0a4yy5qn8fwz0wkl8fcn4pqv9q0w0r2llhzdz3jdg1k69g";
   };
 
+  sources60Zip = fetchurl {
+    url = http://files.pharo.org/sources/PharoV60.sources.zip;
+    sha256 = "0xbdi679ryb2zg412xy6zkh22l20pmbl92m3qhfgzjvgybna8z2a";
+  };
+
   buildInputs = [ unzip ];
 
   installPhase = ''
@@ -43,6 +48,7 @@ stdenv.mkDerivation rec {
     unzip ${sources30Zip} -d $prefix/lib/
     unzip ${sources40Zip} -d $prefix/lib/
     unzip ${sources50Zip} -d $prefix/lib/
+    unzip ${sources60Zip} -d $prefix/lib/
   '';
 
   meta = {
diff --git a/pkgs/development/pharo/vm/vms.nix b/pkgs/development/pharo/vm/vms.nix
new file mode 100644
index 00000000000..5258f4f6e77
--- /dev/null
+++ b/pkgs/development/pharo/vm/vms.nix
@@ -0,0 +1,46 @@
+{ cmake, stdenv, fetchurl, bash, unzip, glibc, openssl, gcc, mesa, freetype, xorg, alsaLib, cairo, libuuid, autoreconfHook, gcc48, fetchFromGitHub, makeWrapper} @args:
+
+let
+  pharo-vm-build = import ./build-vm.nix args;
+  pharo-vm-build-legacy = import ./build-vm-legacy.nix args;
+in
+
+let suffix = if stdenv.is64bit then "64" else "32"; in
+
+rec {
+  # Build the latest VM
+  spur = pharo-vm-build rec {
+    name = "pharo-spur${suffix}";
+    version = "git.${revision}";
+    src = fetchFromGitHub {
+      owner = "pharo-project";
+      repo = "pharo-vm";
+      rev = revision;
+      sha256 = "0dkiy5fq1xn2n93cwf767xz24c01ic0wfw94jk9nvn7pmcfj7m62";
+    };
+    # This metadata will be compiled into the VM and introspectable
+    # from Smalltalk. This has been manually extracted from 'git log'.
+    #
+    # The build would usually generate this automatically using
+    # opensmalltalk-vm/.git_filters/RevDateURL.smudge but that script
+    # is too impure to run from nix.
+    revision = "6a63f68a3dd4deb7c17dd2c7ac6e4dd4b0b6d937";
+    source-date = "Tue May 30 19:41:27 2017 -0700";
+    source-url  = "https://github.com/pharo-project/pharo-vm";
+  };
+
+  # Build an old ("legacy") CogV3 VM for running pre-spur images.
+  # (Could be nicer to build the latest VM in CogV3 mode but this is
+  # not supported on the Pharo VM variant at the moment.)
+  cog = pharo-vm-build-legacy rec {
+    version = "2016.02.18";
+    name = "pharo-cog${suffix}";
+    base-url = http://files.pharo.org/vm/src/vm-unix-sources/blessed;
+    src = fetchurl {
+      url = "${base-url}/pharo-vm-${version}.tar.bz2";
+      sha256 = "16n2zg7v2s1ml0vvpbhkw6khmgn637sr0d7n2b28qm5yc8pfhcj4";
+    };
+  };
+
+}
+
diff --git a/pkgs/development/pharo/wrapper/default.nix b/pkgs/development/pharo/wrapper/default.nix
new file mode 100644
index 00000000000..f60b8a6d203
--- /dev/null
+++ b/pkgs/development/pharo/wrapper/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, file, makeDesktopItem, cog32, spur32, spur64 ? "none" }:
+
+stdenv.mkDerivation rec {
+  name = "pharo";
+  src = ./.;
+  inherit cog32 spur32 spur64 file;
+  magic = ./magic;
+  desktopItem = makeDesktopItem {
+    inherit name;
+    desktopName = "Pharo VM";
+    genericName = "Pharo Virtual Machine";
+    exec = "pharo %F";
+    icon = "pharo";
+    terminal = "false";
+    type="Application";
+    startupNotify = "false";
+    categories = "Development;";
+    mimeType = "application/x-pharo-image";
+  };
+  buildPhase = ''
+    substituteAllInPlace ./pharo-vm.sh
+  '';
+  installPhase = ''
+    mkdir -p $out/bin
+    cp pharo-vm.sh $out/bin/pharo
+    chmod +x $out/bin/pharo
+  '';
+  meta = {
+    description = "Pharo virtual machine (multiple variants)";
+
+    longDescription = ''
+      Pharo's goal is to deliver a clean, innovative, free open-source
+      Smalltalk-inspired environment. By providing a stable and small core
+      system, excellent dev tools, and maintained releases, Pharo is an
+      attractive platform to build and deploy mission critical applications.
+
+      This package provides a front-end for starting the virtual
+      machine. The command 'pharo-vm' automatically detects the type
+      of image and executes a suitable virtual machine: CogV3, Spur,
+      or Spur64. This makes it easy to open Pharo images because you
+      do not have to worry about which virtual machine variant is
+      required.
+
+      More about the Cog family of virtual machines:
+        http://www.mirandabanda.org/cogblog/about-cog/
+    '';
+
+    homepage = http://pharo.org;
+    license = stdenv.lib.licenses.mit;
+    maintainers = [ stdenv.lib.maintainers.lukego ];
+    # Pharo VM sources are packaged separately for darwin (OS X)
+    platforms = with stdenv.lib;
+                  intersectLists
+                    platforms.mesaPlatforms
+                    (subtractLists platforms.darwin platforms.unix);
+  };
+}
+
diff --git a/pkgs/development/pharo/wrapper/magic b/pkgs/development/pharo/wrapper/magic
new file mode 100644
index 00000000000..3870ef2dd01
--- /dev/null
+++ b/pkgs/development/pharo/wrapper/magic
@@ -0,0 +1,37 @@
+# Smalltalk image file formats
+0 lelong    6502  Smalltalk image V3 32b  (%d)
+!:mime application/squeak-image
+0      belong   6502    Smalltalk image V3 32b  (%d)
+!:mime application/squeak-image
+0      lelong   6504    Smalltalk image V3 32b +C (%d)
+!:mime application/cog-image
+0      belong   6504    Smalltalk image V3 32b +C (%d)
+!:mime application/cog-image
+0      lelong   68000   Smalltalk image V3 64b  (%d)
+!:mime application/squeak64-image
+4      belong   68000   Smalltalk image V3 64b  (%d)
+!:mime application/squeak64-image
+0      lelong   68002   Smalltalk image V3 64b +C (%d)
+!:mime application/cog64-image
+4      belong   68002   Smalltalk image V3 64b +C (%d)
+!:mime application/cog64-image
+0      lelong   6505    Smalltalk image V3 32b +C+NF (%d)
+!:mime application/cog-image
+0      belong   6505    Smalltalk image V3 32b +C+NF (%d)
+!:mime application/cog-image
+0      lelong   68003   Smalltalk image V3 64b +C+NF (%d)
+!:mime application/cog64-image
+4      belong   68003   Smalltalk image V3 64b +C+NF (%d)
+!:mime application/cog64-image
+0      lelong   6521    Smalltalk image Spur 32b +C+NF (%d)
+!:mime application/spur-image
+0      belong   6521    Smalltalk image Spur 32b +C+NF (%d)
+!:mime application/spur-image
+0      lelong   68019   Smalltalk image Spur 64b +C+NF (%d)
+!:mime application/spur64-image
+4      belong   68019   Smalltalk image Spur 64b +C+NF (%d)
+!:mime application/spur64-image
+0      lelong   68021   Smalltalk image Spur 64b +C+NF+Tag (%d)
+!:mime application/spur64-image
+4      belong   68021   Smalltalk image Spur 64b +C+NF+Tag (%d)
+!:mime application/spur64-image
diff --git a/pkgs/development/pharo/wrapper/pharo-vm.sh b/pkgs/development/pharo/wrapper/pharo-vm.sh
new file mode 100644
index 00000000000..d5bd1a2d801
--- /dev/null
+++ b/pkgs/development/pharo/wrapper/pharo-vm.sh
@@ -0,0 +1,57 @@
+#!/bin/sh
+# This is based on the script by David T. Lewis posted here:
+#  http://lists.squeakfoundation.org/pipermail/vm-dev/2017-April/024836.html
+#
+# VM run utility script
+# usage: run <myimage>
+#
+# Select a VM and run an image based on the image format number
+
+PATH=$PATH:@file@/bin
+
+# Search for the image filename in the command line arguments
+for arg in $* $SQUEAK_IMAGE; do
+    case ${arg} in
+        -*) # ignore
+        ;;
+        *) # either an option argument or the image name
+            if test -e ${arg}; then
+                magic=$(file -L -b -m @magic@ "$arg")
+                case "$magic" in
+                    "Smalltalk image V3 32b"*)
+                        image=${arg}
+                        vm=@cog32@/bin/pharo-cog
+                        ;;
+                    "Smalltalk image Spur 32b"*)
+                        image=${arg}
+                        vm=@spur32@/bin/pharo-spur
+                        ;;
+                    "Smalltalk image Spur 64b"*)
+                        if [ "@spur64vm@" == "none" ]; then
+                            echo "error: detected 64-bit image but 64-bit VM is not available" >&2
+                            exit 1
+                        fi
+                        image=${arg}
+                        vm=@spur64@/bin/pharo-spur64
+                        ;;
+                esac
+            fi
+            ;;
+    esac
+done
+
+# Print a message to explain our DWIM'ery.
+if [ -n "$image" ]; then
+    echo "using VM selected by image type."
+    echo "  image: $image"
+    echo "  type:  $magic"
+    echo "  vm:    $vm"
+else
+    echo "using default vm; image type not detected"
+    vm=@cog32@/bin/pharo-cog
+fi
+
+# Run the VM
+set -f
+exec -- "${vm}" "$@"
+
diff --git a/pkgs/development/python-modules/cgroup-utils/default.nix b/pkgs/development/python-modules/cgroup-utils/default.nix
new file mode 100644
index 00000000000..ed0623fa778
--- /dev/null
+++ b/pkgs/development/python-modules/cgroup-utils/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, pep8, nose }:
+
+buildPythonPackage rec {
+  version = "0.6";
+  name = "cgroup-utils-${version}";
+
+  buildInputs = [ pep8 nose ];
+  # Pep8 tests fail...
+  doCheck = false;
+
+  postPatch = ''
+    sed -i -e "/argparse/d" setup.py
+  '';
+
+  src = fetchFromGitHub {
+    owner = "peo3";
+    repo = "cgroup-utils";
+    rev = "v${version}";
+    sha256 = "1ck0aijzrg9xf6hjdxnynkapnyxw0y385jb0q7wyq4jf77ayfszc";
+  };
+
+  meta = with stdenv.lib; {
+    description = "Utility tools for control groups of Linux";
+    maintainers = with maintainers; [ layus ];
+    license = licenses.gpl2;
+  };
+}
diff --git a/pkgs/development/python-modules/gpy/default.nix b/pkgs/development/python-modules/gpy/default.nix
new file mode 100644
index 00000000000..0bdc7247b3d
--- /dev/null
+++ b/pkgs/development/python-modules/gpy/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, buildPythonPackage, fetchPypi
+, numpy, scipy, six, paramz, nose, matplotlib, cython }:
+
+buildPythonPackage rec {
+  pname = "GPy";
+  version = "1.7.7";
+  name  = "${pname}-${version}";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "1b4siirlkqic1lsn9bi9mnp8fpbpw1ijwv0z2i6r2zdrk3d6szs1";
+  };
+
+  # running tests produces "ImportError: cannot import name 'linalg_cython'"
+  # even though Cython has run
+  checkPhase = "nosetests -d";
+  doCheck = false;
+
+  checkInputs = [ nose ];
+
+  buildInputs = [ cython ];
+
+  propagatedBuildInputs = [ numpy scipy six paramz matplotlib ];
+
+  meta = with stdenv.lib; {
+    description = "Gaussian process framework in Python";
+    homepage = https://sheffieldml.github.io/GPy;
+    license = licenses.bsd3;
+    maintainers = with maintainers; [ bcdarwin ];
+  };
+}
diff --git a/pkgs/development/python-modules/keystoneclient/default.nix b/pkgs/development/python-modules/keystoneclient/default.nix
new file mode 100644
index 00000000000..5b09992295f
--- /dev/null
+++ b/pkgs/development/python-modules/keystoneclient/default.nix
@@ -0,0 +1,52 @@
+{ stdenv, buildPythonPackage, fetchFromGitHub, python
+
+, pbr, testtools, testresources, testrepository
+, requests-mock, fixtures, openssl, oslotest, pep8
+
+, oslo-serialization, oslo-config, oslo-i18n, oslo-utils
+, Babel, prettytable, requests, six, iso8601, stevedore
+, netaddr, debtcollector, bandit, webob, mock, pycrypto
+}:
+
+buildPythonPackage rec {
+  name = "keystoneclient-${version}";
+  version = "1.8.1";
+
+  src = fetchFromGitHub {
+    owner = "openstack";
+    repo = "python-keystoneclient";
+    rev = version;
+    sha256 = "0yayn1hb3mncqb0isy8vy6d519xya7mhf5pcbn60fzdqjrkj2prq";
+  };
+
+  PBR_VERSION = "${version}";
+
+  buildInputs = [
+    pbr testtools testresources testrepository requests-mock fixtures openssl
+    oslotest pep8
+  ];
+  propagatedBuildInputs = [
+    oslo-serialization oslo-config oslo-i18n oslo-utils
+    Babel prettytable requests six iso8601 stevedore
+    netaddr debtcollector bandit webob mock pycrypto
+  ];
+
+  postPatch = ''
+    sed -i 's@python@${python.interpreter}@' .testr.conf
+    sed -ie '/argparse/d' requirements.txt
+    '';
+
+  doCheck = false; # The checkPhase below is broken
+
+  checkPhase = ''
+    patchShebangs run_tests.sh
+    ./run_tests.sh
+  '';
+
+  meta = with stdenv.lib; {
+    homepage = https://github.com/openstack/python-novaclient/;
+    description = "Client library and command line tool for the OpenStack Nova API";
+    license = licenses.asl20;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/python-modules/marionette-harness/mozinfo.nix b/pkgs/development/python-modules/marionette-harness/mozinfo.nix
index d22e92876bf..0e24ab09de6 100644
--- a/pkgs/development/python-modules/marionette-harness/mozinfo.nix
+++ b/pkgs/development/python-modules/marionette-harness/mozinfo.nix
@@ -1,7 +1,7 @@
-{ lib
-, stdenv
+{ stdenv
 , buildPythonPackage
 , fetchPypi
+, isPy3k
 , mozfile
 }:
 
@@ -15,12 +15,14 @@ buildPythonPackage rec {
     sha256 = "1jwhnhbj7xipwh33wf7m12pw5g662dpr1chkp6p2fmy0mwpn2y4z";
   };
 
-  propagatedBuildInputs = [ mozfile ]; 
+  disabled = isPy3k;
 
-  meta = {
+  propagatedBuildInputs = [ mozfile ];
+
+  meta = with stdenv.lib; {
     description = "System information utilities for Mozilla testing";
     homepage = https://wiki.mozilla.org/Auto-tools/Projects/Mozbase;
-    license = lib.licenses.mpl20;
-    maintainers = with lib.maintainers; [ raskin ];
+    license = licenses.mpl20;
+    maintainers = with maintainers; [ raskin ];
   };
 }
diff --git a/pkgs/development/python-modules/piexif/default.nix b/pkgs/development/python-modules/piexif/default.nix
index e21593993cd..2c921959852 100644
--- a/pkgs/development/python-modules/piexif/default.nix
+++ b/pkgs/development/python-modules/piexif/default.nix
@@ -1,4 +1,4 @@
-{lib, buildPythonPackage, fetchurl, pillow}:
+{ stdenv, buildPythonPackage, fetchPypi, pillow }:
 
 buildPythonPackage rec {
   name = "${pname}-${version}";
@@ -8,17 +8,23 @@ buildPythonPackage rec {
   # pillow needed for unit tests
   buildInputs = [ pillow ];
 
-  # No .tar.gz source available at PyPI, only .zip source, so need to use
-  # fetchurl because fetchPypi doesn't support .zip.
-  src = fetchurl {
-    url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.zip";
+  postPatch = ''
+    # incompatibility with pillow => 4.2.0
+    # has been resolved in https://github.com/hMatoba/Piexif/commit/c3a8272f5e6418f223b25f6486d8ddda201bbdf1
+    # remove this in the next version
+    sed -i -e 's/RGBA/RGB/' tests/s_test.py
+  '';
+
+  src = fetchPypi {
+    inherit pname version;
+    extension = "zip";
     sha256 = "15dvdr7b5xxsbsq5k6kq8h0xnzrkqzc08dzlih48a21x27i02bii";
   };
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Simplify Exif manipulations with Python";
     homepage = https://github.com/hMatoba/Piexif;
-    license = lib.licenses.mit;
-    maintainers = with lib.maintainers; [ jluttine ];
+    license = licenses.mit;
+    maintainers = with maintainers; [ jluttine ];
   };
 }
diff --git a/pkgs/development/python-modules/pycuda/default.nix b/pkgs/development/python-modules/pycuda/default.nix
index 71bf64b7733..0bd8800eddc 100644
--- a/pkgs/development/python-modules/pycuda/default.nix
+++ b/pkgs/development/python-modules/pycuda/default.nix
@@ -1,6 +1,7 @@
-{ buildPythonPackage 
-, fetchurl
+{ buildPythonPackage
+, fetchPypi
 , fetchFromGitHub
+, Mako
 , boost
 , numpy
 , pytools
@@ -22,28 +23,23 @@ let
 in
 buildPythonPackage rec {
   pname = "pycuda";
-  version = "2017.1";
+  version = "2017.1.1";
   name = "${pname}-${version}";
 
-  src = fetchurl {
-    url = "mirror://pypi/${builtins.substring 0 1 pname}/${pname}/${name}.tar.gz";
-    sha256 = "a92725ccd8515b4d7284b9127184b6fdb61f224daa086e7fc6b926e2094b055f";
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0qxmcjax32p1ywicw9sha2rvfbak4kjbx9pq57j3wq4cwf296nkb";
   };
 
   preConfigure = ''
-    findInputs ${boost.dev} boost_dirs propagated-native-build-inputs
-
-    export BOOST_INCLUDEDIR=$(echo $boost_dirs | sed -e s/\ /\\n/g - | grep '\-dev')/include
-    export BOOST_LIBRARYDIR=$(echo $boost_dirs | sed -e s/\ /\\n/g - | grep -v '\-dev')/lib
-
-    ${python.interpreter} configure.py --boost-inc-dir=$BOOST_INCLUDEDIR \
-                            --boost-lib-dir=$BOOST_LIBRARYDIR \
-                            --no-use-shipped-boost \
-                            --boost-python-libname=boost_python
+    ${python.interpreter} configure.py --boost-inc-dir=${boost.dev}/include \
+                          --boost-lib-dir=${boost}/lib \
+                          --no-use-shipped-boost \
+                          --boost-python-libname=boost_python
   '';
 
   postInstall = ''
-    ln -s ${compyte} $out/${python.sitePackages}/pycuda/compyte 
+    ln -s ${compyte} $out/${python.sitePackages}/pycuda/compyte
   '';
 
   # Requires access to libcuda.so.1 which is provided by the driver
@@ -63,7 +59,8 @@ buildPythonPackage rec {
     cudatoolkit
     compyte
     python
-  ]; 
+    Mako
+  ];
 
   meta = with stdenv.lib; {
     homepage = https://github.com/inducer/pycuda/;
diff --git a/pkgs/development/python-modules/pygame_sdl2/default.nix b/pkgs/development/python-modules/pygame_sdl2/default.nix
index 6f6163bb35e..eab56f9f7ac 100644
--- a/pkgs/development/python-modules/pygame_sdl2/default.nix
+++ b/pkgs/development/python-modules/pygame_sdl2/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgs, buildPythonPackage, fetchFromGitHub
+{ stdenv, pkgs, buildPythonPackage, fetchFromGitHub, isPy27
 , cython, SDL2, SDL2_image, SDL2_ttf, SDL2_mixer, libjpeg, libpng }:
 
 buildPythonPackage rec {
@@ -18,6 +18,9 @@ buildPythonPackage rec {
     cython libjpeg libpng
   ];
 
+
+  doCheck = isPy27; # python3 tests are non-functional
+
   postInstall = ''
     ( cd "$out"/include/python*/ ;
       ln -s pygame-sdl2 pygame_sdl2 || true ; )
diff --git a/pkgs/development/python-modules/pyramid_beaker/default.nix b/pkgs/development/python-modules/pyramid_beaker/default.nix
new file mode 100644
index 00000000000..a95c67b96d2
--- /dev/null
+++ b/pkgs/development/python-modules/pyramid_beaker/default.nix
@@ -0,0 +1,25 @@
+{ stdenv, buildPythonPackage, fetchPypi, pytest, beaker, pyramid }:
+
+buildPythonPackage rec {
+  name = "${pname}-${version}";
+  pname = "pyramid_beaker";
+  version = "0.8";
+
+  src = fetchPypi {
+    inherit pname version;
+    sha256 = "0hflx3qkcdml1mwpq53sz46s7jickpfn0zy0ns2c7j445j66bp3p";
+  };
+
+  checkPhase = ''
+    # https://github.com/Pylons/pyramid_beaker/issues/29
+    py.test -k 'not test_includeme' pyramid_beaker/tests.py
+  '';
+
+  buildInputs = [ pytest ];
+
+  propagatedBuildInputs = [ beaker pyramid ];
+
+  meta = with stdenv.lib; {
+    maintainers = with maintainers; [ domenkozar ];
+  };
+}
diff --git a/pkgs/development/python-modules/pyside/gcc6.patch b/pkgs/development/python-modules/pyside/gcc6.patch
new file mode 100644
index 00000000000..440e94508c5
--- /dev/null
+++ b/pkgs/development/python-modules/pyside/gcc6.patch
@@ -0,0 +1,18 @@
+--- Shiboken-1.2.4.org/tests/libsample/simplefile.cpp	2017-08-26 09:06:27.216859143 +0100
++++ Shiboken-1.2.4/tests/libsample/simplefile.cpp	2017-08-26 09:05:40.037029652 +0100
+@@ -90,13 +90,13 @@
+ SimpleFile::exists() const
+ {
+     std::ifstream ifile(p->m_filename);
+-    return ifile;
++    return (bool)ifile;
+ }
+ 
+ bool
+ SimpleFile::exists(const char* filename)
+ {
+     std::ifstream ifile(filename);
+-    return ifile;
++    return (bool)ifile;
+ }
+ 
diff --git a/pkgs/development/python-modules/pyside/shiboken.nix b/pkgs/development/python-modules/pyside/shiboken.nix
index 82a40c96f64..c588bac69cc 100644
--- a/pkgs/development/python-modules/pyside/shiboken.nix
+++ b/pkgs/development/python-modules/pyside/shiboken.nix
@@ -14,6 +14,7 @@ buildPythonPackage rec {
     sha256 = "1536f73a3353296d97a25e24f9554edf3e6a48126886f8d21282c3645ecb96a4";
   };
 
+
   enableParallelBuilding = true;
 
   buildInputs = [ cmake libxml2 libxslt pysideApiextractor pysideGeneratorrunner python sphinx qt4 ];
@@ -23,7 +24,9 @@ buildPythonPackage rec {
     substituteInPlace generator/CMakeLists.txt --replace \
       \"$\{GENERATORRUNNER_PLUGIN_DIR}\" lib/generatorrunner/
   '';
-  patches = if (isPy35 || isPy36) then [ ./shiboken_py35.patch ] else null;
+
+  # gcc6 patch was also sent upstream: https://github.com/pyside/Shiboken/pull/86
+  patches = [ ./gcc6.patch ] ++ (lib.optional (isPy35 || isPy36) ./shiboken_py35.patch);
 
   cmakeFlags = if isPy3k then "-DUSE_PYTHON3=TRUE" else null;
 
diff --git a/pkgs/development/python-modules/requests-oauthlib.nix b/pkgs/development/python-modules/requests-oauthlib.nix
index 0162d6f6eb5..03b9586d67f 100644
--- a/pkgs/development/python-modules/requests-oauthlib.nix
+++ b/pkgs/development/python-modules/requests-oauthlib.nix
@@ -8,7 +8,7 @@ buildPythonPackage rec {
 
   src = fetchurl {
     url = "http://github.com/requests/requests-oauthlib/archive/v${version}.tar.gz";
-    sha256 = "883ac416757eada6d3d07054ec7092ac21c7f35cb1d2cf82faf205637081f468";
+    sha256 = "18gg9dwral153c10f8bwhz2dy4nw7c6mws5a2g7gidk3z5xhqy4n";
   };
 
   doCheck = false;        # Internet tests fail when building in chroot
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 1855985f09f..1f38ad58453 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -18,6 +18,8 @@ python3Packages.buildPythonApplication rec {
     popd
   '';
 
+  setupHook = ./setup-hook.sh;
+
   meta = with lib; {
     homepage = http://mesonbuild.com;
     description = "SCons-like build system that use python as a front-end language and Ninja as a building backend";
diff --git a/pkgs/development/tools/build-managers/meson/setup-hook.sh b/pkgs/development/tools/build-managers/meson/setup-hook.sh
new file mode 100644
index 00000000000..dacad017ede
--- /dev/null
+++ b/pkgs/development/tools/build-managers/meson/setup-hook.sh
@@ -0,0 +1,22 @@
+mesonConfigurePhase() {
+    runHook preConfigure
+
+    if [ -z "$dontAddPrefix" ]; then
+        mesonFlags="--prefix=$prefix $mesonFlags"
+    fi
+
+    # Build release by default.
+    mesonFlags="--buildtype=${mesonBuildType:-release} $mesonFlags"
+
+    echo "meson flags: $mesonFlags ${mesonFlagsArray[@]}"
+
+    meson build $mesonFlags "${mesonFlagsArray[@]}"
+    cd build
+
+    runHook postConfigure
+}
+
+if [ -z "$dontUseMesonConfigure" -a -z "$configurePhase" ]; then
+    setOutputFlags=
+    configurePhase=mesonConfigurePhase
+fi
diff --git a/pkgs/development/tools/build-managers/ninja/default.nix b/pkgs/development/tools/build-managers/ninja/default.nix
index 39d0d4e0e39..fff6af396b9 100644
--- a/pkgs/development/tools/build-managers/ninja/default.nix
+++ b/pkgs/development/tools/build-managers/ninja/default.nix
@@ -26,6 +26,8 @@ stdenv.mkDerivation rec {
     cp doc/manual.html $out/share/doc/ninja/
   '';
 
+  setupHook = ./setup-hook.sh;
+
   meta = with stdenv.lib; {
     description = "Small build system with a focus on speed";
     longDescription = ''
diff --git a/pkgs/development/tools/build-managers/ninja/setup-hook.sh b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
new file mode 100644
index 00000000000..9ea6549a824
--- /dev/null
+++ b/pkgs/development/tools/build-managers/ninja/setup-hook.sh
@@ -0,0 +1,43 @@
+ninjaBuildPhase() {
+    runHook preBuild
+
+    if [[ -z "$ninjaFlags" && ! ( -e build.ninja ) ]]; then
+        echo "no build.ninja, doing nothing"
+    else
+        # shellcheck disable=SC2086
+        local flagsArray=( \
+            ${enableParallelBuilding:+-j${NIX_BUILD_CORES} -l${NIX_BUILD_CORES}} \
+            $ninjaFlags "${ninjaFlagsArray[@]}" \
+            $buildFlags "${buildFlagsArray[@]}")
+
+        echoCmd 'build flags' "${flagsArray[@]}"
+        ninja "${flagsArray[@]}"
+        unset flagsArray
+    fi
+
+    runHook postBuild
+}
+
+if [ -z "$dontUseNinjaBuild" -a -z "$buildPhase" ]; then
+    buildPhase=ninjaBuildPhase
+fi
+
+ninjaInstallPhase() {
+    runHook preInstall
+
+    installTargets="${installTargets:-install}"
+
+    # shellcheck disable=SC2086
+    local flagsArray=( $installTargets \
+        $ninjaFlags "${ninjaFlagsArray[@]}")
+
+    echoCmd 'install flags' "${flagsArray[@]}"
+    ninja "${flagsArray[@]}"
+    unset flagsArray
+
+    runHook postInstall
+}
+
+if [ -z "$dontUseNinjaInstall" -a -z "$installPhase" ]; then
+    installPhase=ninjaInstallPhase
+fi
diff --git a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
index 4d827471687..d6b2ce42cdc 100644
--- a/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
+++ b/pkgs/development/tools/continuous-integration/gitlab-runner/default.nix
@@ -1,16 +1,16 @@
 { lib, buildGoPackage, fetchFromGitLab, fetchurl, go-bindata }:
 
 let
-  version = "9.4.2";
+  version = "9.5.0";
   # Gitlab runner embeds some docker images these are prebuilt for arm and x86_64
   docker_x86_64 = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-x86_64.tar.xz";
-    sha256 = "1cf8iasn47dlnbchh389ishzx5dqbyzg94w83j1w2ik4z0na6b7g";
+    sha256 = "05vph5pqw3wlrh76bfgrmhgzsjsf7llzscr9vr7nk3b2pcigawdp";
   };
 
   docker_arm = fetchurl {
     url = "https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v${version}/docker/prebuilt-arm.tar.xz";
-    sha256 = "120rvxlksza9zpjin0awq8gnnplnv6qmqlidgnxs63c71kyjiwf3";
+    sha256 = "0ilp793kbw0n6nhbcdqc1cb05h2ir27c1rkijyxaqvpczrm11lqj";
   };
 in
 buildGoPackage rec {
@@ -29,7 +29,7 @@ buildGoPackage rec {
     owner = "gitlab-org";
     repo = "gitlab-ci-multi-runner";
     rev = "v${version}";
-    sha256 = "06g4y6vn99b0g0k2als7fz5y2f87pg1cfwsxs8psqgl7nxmhw3i6";
+    sha256 = "0zpyvaflq62qazjw60xnzfw52fqbcmjaqig9y8i6wjzdzlm803f0";
   };
 
   patches = [ ./fix-shell-path.patch ];
diff --git a/pkgs/development/tools/dtools/default.nix b/pkgs/development/tools/dtools/default.nix
new file mode 100644
index 00000000000..28d0c57f2e3
--- /dev/null
+++ b/pkgs/development/tools/dtools/default.nix
@@ -0,0 +1,54 @@
+{stdenv, lib, fetchFromGitHub, dmd, curl}:
+
+stdenv.mkDerivation rec {
+  name = "dtools-${version}";
+  version = "2.075.1";
+
+  src = fetchFromGitHub {
+    owner = "dlang";
+    repo = "tools";
+    rev = "v${version}";
+    sha256 = "0lxn400s9las9hq6h9vj4mis2jr662k2yw0zcrvqcm1yg9pd245d";
+  };
+
+  postPatch = ''
+      substituteInPlace posix.mak \
+          --replace "../dmd/generated/\$(OS)/release/\$(MODEL)/dmd" ${dmd.out}/bin/dmd
+
+      substituteInPlace posix.mak \
+          --replace gcc $CC
+  '';
+
+  nativeBuildInputs = [ dmd ];
+  buildInputs = [ curl ];
+
+  buildPhase = ''
+    make -f posix.mak DMD=${dmd.out}/bin/dmd INSTALL_DIR=$out
+  '';
+
+  doCheck = true;
+
+  checkPhase = ''
+      export BITS=${builtins.toString stdenv.hostPlatform.parsed.cpu.bits}
+      export OSNAME=${if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name}
+      ./generated/$OSNAME/$BITS/rdmd -main -unittest rdmd.d
+      ${dmd.out}/bin/dmd rdmd_test.d
+      ./rdmd_test
+    '';
+
+  installPhase = ''
+    mkdir -p $out/bin
+    ${
+      let bits = builtins.toString stdenv.hostPlatform.parsed.cpu.bits;
+      osname = if stdenv.hostPlatform.isDarwin then "osx" else stdenv.hostPlatform.parsed.kernel.name; in
+      "find $PWD/generated/${osname}/${bits} -perm /a+x -type f -exec cp {} $out/bin \\;"
+    }
+	'';
+
+  meta = {
+    description = "Ancillary tools for the D programming language compiler";
+    homepage = https://github.com/dlang/tools;
+    license = lib.licenses.boost;
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/development/tools/flyway/default.nix b/pkgs/development/tools/flyway/default.nix
new file mode 100644
index 00000000000..6233b9c6bdb
--- /dev/null
+++ b/pkgs/development/tools/flyway/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, jre_headless, makeWrapper }:
+  let
+    version = "4.2.0";
+  in
+    stdenv.mkDerivation {
+      name = "flyway-${version}";
+      src = fetchurl {
+        url = "https://repo1.maven.org/maven2/org/flywaydb/flyway-commandline/4.2.0/flyway-commandline-${version}.tar.gz";
+        sha256 = "1fxj760qx6apsz50p60c9n79k6bqkjcv2zfgab0awvmdvdy4k661";
+      };
+      buildInputs = [ makeWrapper ];
+      dontBuild = true;
+      dontStrip = true;
+      installPhase = ''
+        mkdir -p $out/bin $out/share/flyway
+        cp -r sql jars lib drivers $out/share/flyway
+        makeWrapper "${jre_headless}/bin/java" $out/bin/flyway \
+          --add-flags "-Djava.security.egd=file:/dev/../dev/urandom" \
+          --add-flags "-cp '$out/share/flyway/lib/*:$out/share/flyway/drivers/*'" \
+          --add-flags "org.flywaydb.commandline.Main"
+      '';
+      meta = with stdenv.lib; {
+        description = "Evolve your Database Schema easily and reliably across all your instances";
+        homepage = "https://flywaydb.org/";
+        license = licenses.asl20;
+        platforms = platforms.linux;
+        maintainers = maintainers.cmcdragonkai;
+      };
+    }
diff --git a/pkgs/development/tools/misc/elfutils/default.nix b/pkgs/development/tools/misc/elfutils/default.nix
index 591e263205c..e89aba67999 100644
--- a/pkgs/development/tools/misc/elfutils/default.nix
+++ b/pkgs/development/tools/misc/elfutils/default.nix
@@ -3,11 +3,11 @@
 # TODO: Look at the hardcoded paths to kernel, modules etc.
 stdenv.mkDerivation rec {
   name = "elfutils-${version}";
-  version = "0.169";
+  version = "0.170";
 
   src = fetchurl {
     url = "https://sourceware.org/elfutils/ftp/${version}/${name}.tar.bz2";
-    sha256 = "1hiv1yqig3292dwqhrwsxwk3qjalxp5fpl8yphwbfwh8ng3zl4ll";
+    sha256 = "0rp0r54z44is49c594qy7hr211nhb00aa5y7z74vsybbaxslg10z";
   };
 
   patches = ./debug-info-from-env.patch;
diff --git a/pkgs/development/tools/misc/global/default.nix b/pkgs/development/tools/misc/global/default.nix
index f55130ae104..35126c85d3f 100644
--- a/pkgs/development/tools/misc/global/default.nix
+++ b/pkgs/development/tools/misc/global/default.nix
@@ -34,10 +34,8 @@ stdenv.mkDerivation rec {
     cp -v *.el "$out/share/emacs/site-lisp"
 
     wrapProgram $out/bin/gtags \
-      --prefix GTAGSCONF : "$out/share/gtags/gtags.conf" \
       --prefix PYTHONPATH : "$(toPythonPath ${pythonPackages.pygments})"
     wrapProgram $out/bin/global \
-      --prefix GTAGSCONF : "$out/share/gtags/gtags.conf" \
       --prefix PYTHONPATH : "$(toPythonPath ${pythonPackages.pygments})"
   '';
 
diff --git a/pkgs/development/tools/misc/uhd/default.nix b/pkgs/development/tools/misc/uhd/default.nix
index e3af8181601..889595ab743 100644
--- a/pkgs/development/tools/misc/uhd/default.nix
+++ b/pkgs/development/tools/misc/uhd/default.nix
@@ -9,7 +9,7 @@
 
 stdenv.mkDerivation rec {
   name = "uhd-${version}";
-  version = "3.10.1.1";
+  version = "3.10.2.0";
 
   # UHD seems to use three different version number styles: x.y.z, xxx_yyy_zzz
   # and xxx.yyy.zzz. Hrmpf...
@@ -17,8 +17,8 @@ stdenv.mkDerivation rec {
   src = fetchFromGitHub {
     owner = "EttusResearch";
     repo = "uhd";
-    rev = "release_003_010_001_001";
-    sha256 = "009pynjfpwbf3vfyg4w5yhcn4xb93afagqb3p5svjxzswh90j1d2";
+    rev = "release_003_010_002_000";
+    sha256 = "0g6f4amw7h0vr6faa1nc1zs3bc645binza0zqqx5cwgfxybv8cfy";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/development/tools/misc/xxdiff/tip.nix b/pkgs/development/tools/misc/xxdiff/tip.nix
index b613508c5c0..f05988e7026 100644
--- a/pkgs/development/tools/misc/xxdiff/tip.nix
+++ b/pkgs/development/tools/misc/xxdiff/tip.nix
@@ -1,25 +1,25 @@
-{ stdenv, fetchFromBitbucket, qt5, flex, bison, docutils }:
+{ stdenv, fetchFromBitbucket, qtbase, flex, bison, docutils }:
 
 stdenv.mkDerivation rec {
-  name = "xxdiff-4.0.1.20170101";
+  name = "xxdiff-4.0.1.20170623";
 
   src = fetchFromBitbucket {
     owner = "blais";
     repo = "xxdiff";
-    rev = "1cf6b23ad30a845daba28a3409c65f93aec7f5e8";
-    sha256 = "0rq7grpndj85i7qzlj93jpzpfzk7bwsi55033fc63hb55rbdzz6z";
+    rev = "5e5f885dfc43559549a81c59e9e8c9525306356a";
+    sha256 = "0gbvxrkwkbvag3298j89smszghpr8ilxxfb0cvsknfqdf15b296w";
   };
 
-  nativeBuildInputs = [ flex bison qt5.qtbase docutils ];
+  nativeBuildInputs = [ flex bison docutils ];
 
-  buildInputs = [ qt5.qtbase ];
+  buildInputs = [ qtbase ];
 
   preConfigure = ''
-    ln -s ${qt5.qtbase.dev}/mkspecs/* ../__nix_qt*__/mkspecs
-    ln -s ${qt5.qtbase.dev}/bin/* ../__nix_qt*__/bin || true
+    ln -s ${qtbase.dev}/mkspecs/* ../__nix_qt*__/mkspecs
+    ln -s ${qtbase.dev}/bin/* ../__nix_qt*__/bin || true
   '';
 
-  NIX_CFLAGS_COMPILE="-I${qt5.qtbase.dev}/include/QtCore -I${qt5.qtbase.dev}/include/QtGui -I${qt5.qtbase.dev}/include/QtWidgets";
+  NIX_CFLAGS_COMPILE="-I${qtbase.dev}/include/QtCore -I${qtbase.dev}/include/QtGui -I${qtbase.dev}/include/QtWidgets";
   
   configurePhase = "${preConfigure} cd src; make -f Makefile.bootstrap";
 
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
new file mode 100644
index 00000000000..a4852a8aba0
--- /dev/null
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
@@ -0,0 +1,15 @@
+{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+, ocaml-migrate-parsetree, ppx_tools_versioned, uchar
+}:
+
+stdenv.mkDerivation rec {
+	name = "js_of_ocaml-${version}"; 
+
+	inherit (js_of_ocaml-compiler) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ocaml-migrate-parsetree ppx_tools_versioned ];
+
+	propagatedBuildInputs = [ js_of_ocaml-compiler uchar ];
+
+	buildPhase = "jbuilder build -p js_of_ocaml";
+}
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix b/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix
new file mode 100644
index 00000000000..b3a37e3f760
--- /dev/null
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/camlp4.nix
@@ -0,0 +1,13 @@
+{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+, camlp4
+}:
+
+stdenv.mkDerivation rec {
+	name = "js_of_ocaml-camlp4-${version}"; 
+
+	inherit (js_of_ocaml-compiler) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder camlp4 ];
+
+	buildPhase = "jbuilder build -p js_of_ocaml-camlp4";
+}
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml-compiler/default.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index 11df26818c1..11df26818c1 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml-compiler/default.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix b/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix
new file mode 100644
index 00000000000..60ad695dc0b
--- /dev/null
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/ocamlbuild.nix
@@ -0,0 +1,15 @@
+{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+, ocamlbuild
+}:
+
+stdenv.mkDerivation rec {
+	name = "js_of_ocaml-ocamlbuild-${version}"; 
+
+	inherit (js_of_ocaml-compiler) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ];
+
+	propagatedBuildInputs = [ ocamlbuild ];
+
+	buildPhase = "jbuilder build -p js_of_ocaml-ocamlbuild";
+}
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix b/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix
new file mode 100644
index 00000000000..4f6b281c8b9
--- /dev/null
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/ppx.nix
@@ -0,0 +1,14 @@
+{ stdenv, ocaml, findlib, jbuilder, js_of_ocaml-compiler
+, ocaml-migrate-parsetree, ppx_tools_versioned
+, js_of_ocaml
+}:
+
+stdenv.mkDerivation rec {
+	name = "js_of_ocaml-ppx-${version}"; 
+
+	inherit (js_of_ocaml-compiler) version src installPhase meta;
+
+	buildInputs = [ ocaml findlib jbuilder ocaml-migrate-parsetree ppx_tools_versioned js_of_ocaml ];
+
+	buildPhase = "jbuilder build -p js_of_ocaml-ppx";
+}
diff --git a/pkgs/development/tools/ocaml/obelisk/default.nix b/pkgs/development/tools/ocaml/obelisk/default.nix
index 1ec0fef49d3..0f072c5dd93 100644
--- a/pkgs/development/tools/ocaml/obelisk/default.nix
+++ b/pkgs/development/tools/ocaml/obelisk/default.nix
@@ -2,12 +2,12 @@
 
 stdenv.mkDerivation rec {
 	name = "obelisk-${version}";
-	version = "0.2.0";
+	version = "0.3.0";
 	src = fetchFromGitHub {
-		owner = "Lelio-Brun";
-		repo = "Obelisk";
+		owner = "lelio-brun";
+		repo = "obelisk";
 		rev = "v${version}";
-		sha256 = "0kbadib53x7mzqri9asd8fmhl4xfgk4ajgzd7rlq3irf2j3bmcqp";
+		sha256 = "12gldzi1mp15vwkk6llz2ignpc8ndqlycm88njb4k7r9hpv59m97";
 	};
 
 	buildInputs = with ocamlPackages; [ ocaml findlib ocamlbuild menhir ];
diff --git a/pkgs/development/tools/profiling/pprof/default.nix b/pkgs/development/tools/profiling/pprof/default.nix
new file mode 100644
index 00000000000..f506db32d9a
--- /dev/null
+++ b/pkgs/development/tools/profiling/pprof/default.nix
@@ -0,0 +1,35 @@
+# This file was originally generated by https://github.com/kamilchm/go2nix v1.2.1
+{ stdenv, buildGoPackage, fetchgit }:
+
+buildGoPackage rec {
+  name = "pprof-${version}";
+  version = "2017-08-28";
+  rev = "d19a98b9bcec464f178b20da0f936cef7e15462e";
+
+  goPackagePath = "github.com/google/pprof";
+
+  src = fetchgit {
+    inherit rev;
+    url = "git://github.com/google/pprof";
+    sha256 = "0wh589fndvvidisy0jy19y0ykw4l05paqd53s8kli7h9zdcl11gq";
+  };
+
+  goDeps = ./deps.nix;
+
+  meta = with stdenv.lib; {
+    description = "A tool for visualization and analysis of profiling data";
+    homepage = https://github.com/google/pprof;
+    license = licenses.asl20;
+    longDescription = ''
+      pprof reads a collection of profiling samples in profile.proto format and generates reports to visualize and help analyze the data. It can generate both text and graphical reports (through the use of the dot visualization package).
+
+      profile.proto is a protocol buffer that describes a set of callstacks and symbolization information. A common usage is to represent a set of sampled callstacks from statistical profiling. The format is described on the proto/profile.proto file. For details on protocol buffers, see https://developers.google.com/protocol-buffers
+
+      Profiles can be read from a local file, or over http. Multiple profiles of the same type can be aggregated or compared.
+
+      If the profile samples contain machine addresses, pprof can symbolize them through the use of the native binutils tools (addr2line and nm).
+
+      This is not an official Google product.
+    '';
+  };
+}
diff --git a/pkgs/development/tools/profiling/pprof/deps.nix b/pkgs/development/tools/profiling/pprof/deps.nix
new file mode 100644
index 00000000000..f8bd466423c
--- /dev/null
+++ b/pkgs/development/tools/profiling/pprof/deps.nix
@@ -0,0 +1,12 @@
+# This file was generated by https://github.com/kamilchm/go2nix v1.2.1
+[
+  {
+    goPackagePath = "github.com/ianlancetaylor/demangle";
+    fetch = {
+      type = "git";
+      url = "https://github.com/ianlancetaylor/demangle";
+      rev = "4883227f66371e02c4948937d3e2be1664d9be38";
+      sha256 = "1yj7c9i1sg26fyx6cmz87x3qh71rldkl6h87x5gysqzipm9jg54l";
+    };
+  }
+]
diff --git a/pkgs/development/tools/xcbuild/default.nix b/pkgs/development/tools/xcbuild/default.nix
index 649c7d14927..d38c85a5d83 100644
--- a/pkgs/development/tools/xcbuild/default.nix
+++ b/pkgs/development/tools/xcbuild/default.nix
@@ -50,6 +50,8 @@ in stdenv.mkDerivation rec {
 
   NIX_CFLAGS_COMPILE = "-Wno-error=strict-aliasing";
 
+  cmakeFlags = [ "-GNinja" ];
+
   buildInputs = [ cmake zlib libxml2 libpng ninja ]
     ++ stdenv.lib.optionals stdenv.isDarwin [ CoreServices CoreGraphics ImageIO ];
 
diff --git a/pkgs/games/endless-sky/default.nix b/pkgs/games/endless-sky/default.nix
index f39e32eb752..40dbd1d33a7 100644
--- a/pkgs/games/endless-sky/default.nix
+++ b/pkgs/games/endless-sky/default.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  version = "0.9.6";
+  version = "0.9.8";
 
 in
 stdenv.mkDerivation rec {
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
     owner = "endless-sky";
     repo = "endless-sky";
     rev = "v${version}";
-    sha256 = "166wr861w415kynim0yx3x7c16x66f5367hv2mfzhpyp244jzccx";
+    sha256 = "0i36lawypikbq8vvzfis1dn7yf6q0d2s1cllshfn7kmjb6pqfi6c";
   };
 
   enableParallelBuilding = true;
diff --git a/pkgs/games/gargoyle/darwin.patch b/pkgs/games/gargoyle/darwin.patch
index fa0337fc585..cf44dffc897 100644
--- a/pkgs/games/gargoyle/darwin.patch
+++ b/pkgs/games/gargoyle/darwin.patch
@@ -1,39 +1,3 @@
-From 06255a8b5a378a2484cd0faa1dd718d5b4e98042 Mon Sep 17 00:00:00 2001
-From: Orivej Desh <orivej@gmx.fr>
-Date: Fri, 17 Mar 2017 08:43:57 +0000
-Subject: [PATCH] darwin
-
----
- Jamrules        | 5 ++---
- Jamshared       | 2 +-
- support/Jamfile | 4 ++--
- tads/Jamfile    | 4 ++--
- terps/Jamfile   | 4 ++--
- 5 files changed, 9 insertions(+), 10 deletions(-)
-
-diff --git a/Jamrules b/Jamrules
-index 698220d..2294dfc 100644
---- a/Jamrules
-+++ b/Jamrules
-@@ -141,8 +141,7 @@ switch $(OS)
-     case MACOSX :
-         Echo "OS is MACOSX (cocoa)" ;
-         SUFDLL = .dylib ;
--        MAINARCH = -arch i386 ;
--        CCFLAGS = -Wno-pointer-sign $(MAINARCH) $(ALTARCH) ;
-+        CCFLAGS = -Wno-pointer-sign $(ALTARCH) ;
-         PKGCONFIG = "pkg-config freetype2" ;
-         GARGLKCCFLAGS = "`$(PKGCONFIG) --cflags`" ;
-         SHRLINKLIBS += "`$(PKGCONFIG) --libs`" -ljpeg -lpng -lz ;
-@@ -155,7 +154,7 @@ switch $(OS)
-             SHRLINKLIBS += -lSDL_mixer -lSDL -lsmpeg -lvorbisfile ;
-         }
- 
--        LINK = $(CC) -headerpad_max_install_names $(FRAMEWORKS) $(MAINARCH) $(ALTARCH) ;
-+        LINK = $(CC) $(FRAMEWORKS) $(ALTARCH) ;
- 
- 
-     case * :
 diff --git a/Jamshared b/Jamshared
 index 13db835..fd42928 100644
 --- a/Jamshared
@@ -47,21 +11,6 @@ index 13db835..fd42928 100644
      }
  }
  else
-diff --git a/support/Jamfile b/support/Jamfile
-index aedf8fe..70cfefd 100644
---- a/support/Jamfile
-+++ b/support/Jamfile
-@@ -41,8 +41,8 @@ if $(USESDL) = yes
-         ;
- 
-     if $(OS) = MINGW   { SubDirCcFlags -DSDL_SOUND_DLL_EXPORTS ; }
--    if $(OS) = SOLARIS { SubDirCcFlags -I/usr/include/SDL -fPIC ; }
--    if $(OS) = MACOSX  { SubDirCcFlags -I/opt/local/include/SDL -fPIC ; }
-+    if $(OS) = SOLARIS { SubDirCcFlags -ISDL -fPIC ; }
-+    if $(OS) = MACOSX  { SubDirCcFlags -ISDL -fPIC ; }
- 
-     SEARCH_SOURCE =
-         [ FDirName $(TOP) support sdl_sound ]
 diff --git a/tads/Jamfile b/tads/Jamfile
 index 1f8829d..d8455eb 100644
 --- a/tads/Jamfile
@@ -77,6 +26,17 @@ index 1f8829d..d8455eb 100644
  }
  
  SEARCH_SOURCE =
+diff --git a/tads/tads3/vmtz.cpp b/tads/tads3/vmtz.cpp
+index 5e193a1..dce46f7 100644
+--- a/tads/tads3/vmtz.cpp
++++ b/tads/tads3/vmtz.cpp
+@@ -1985,5 +1985,5 @@ void CVmTimeZone::query(vmtzquery *result, int32_t dayno, int32_t daytime,
+              *   up until that moment

+              */

+-            result->set(tcur > 0 ? tcur - 1 : tcur);

++            result->set(tcur != 0 ? tcur - 1 : tcur);

+            return;

+        }

 diff --git a/terps/Jamfile b/terps/Jamfile
 index b5f6d52..2d1ccdb 100644
 --- a/terps/Jamfile
@@ -92,6 +52,3 @@ index b5f6d52..2d1ccdb 100644
      }
  
      SUBDIRC++FLAGS = $(SUBDIRCCFLAGS) ;
--- 
-2.12.0
-
diff --git a/pkgs/games/gargoyle/default.nix b/pkgs/games/gargoyle/default.nix
index ecee61513b4..7a461fbfa0d 100644
--- a/pkgs/games/gargoyle/default.nix
+++ b/pkgs/games/gargoyle/default.nix
@@ -1,8 +1,10 @@
-{ stdenv, fetchFromGitHub, jam, pkgconfig, gtk2, SDL, SDL_mixer, SDL_sound, smpeg, libvorbis }:
+{ stdenv, fetchFromGitHub, jam, libtool, pkgconfig, gtk2, SDL, SDL_mixer, SDL_sound, smpeg, libvorbis }:
 
 let
 
-  jamenv = if stdenv.isDarwin then ''
+  jamenv = ''
+    unset AR
+  '' + (if stdenv.isDarwin then ''
     export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${SDL.dev}/include/SDL"
     export GARGLKINI="$out/Applications/Gargoyle.app/Contents/Resources/garglk.ini"
   '' else ''
@@ -12,21 +14,21 @@ let
     export _APPDIR=libexec/gargoyle
     export _LIBDIR=libexec/gargoyle
     export GARGLKINI="$out/etc/garglk.ini"
-  '';
+  '');
 
 in
 
 stdenv.mkDerivation {
-  name = "gargoyle-2017-03-12";
+  name = "gargoyle-2017-05-17";
 
   src = fetchFromGitHub {
     owner = "garglk";
     repo = "garglk";
-    rev = "7d8fe875927c332ea30d75656bc982354b42f602";
-    sha256 = "00nac7j84gfql1cr11cs9ad4j1gsxrnkqfx6mis4ijf7d6px3sih";
+    rev = "2da2824748b0b99107f481801f818efc54a43d3a";
+    sha256 = "184lgylcbhj205pfccwgl7avs0pczwrc53nvkzhj2p5inxak20kk";
   };
 
-  nativeBuildInputs = [ jam pkgconfig ];
+  nativeBuildInputs = [ jam pkgconfig ] ++ stdenv.lib.optional stdenv.isDarwin libtool;
 
   buildInputs = [ gtk2 SDL SDL_mixer ] ++ (
     if stdenv.isDarwin then [ smpeg libvorbis ] else [ SDL_sound ]
diff --git a/pkgs/games/globulation/default.nix b/pkgs/games/globulation/default.nix
index 061f7c328d6..49353f5d7b5 100644
--- a/pkgs/games/globulation/default.nix
+++ b/pkgs/games/globulation/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, mesa, SDL, scons, SDL_ttf, SDL_image, zlib, SDL_net
 , speex, libvorbis, libogg, boost, fribidi, bsdiff
+, fetchpatch
 }:
 let
   version = "0.9.4";
@@ -18,7 +19,12 @@ stdenv.mkDerivation rec {
     sha256 = "1f0l2cqp2g3llhr9jl6jj15k0wb5q8n29vqj99xy4p5hqs78jk8g";
   };
 
-  patches = [ ./header-order.patch ./public-buildproject.patch ];
+  patches = [ ./header-order.patch ./public-buildproject.patch
+    (fetchpatch {
+	  url = https://bitbucket.org/giszmo/glob2/commits/c9dc715624318e4fea4abb24e04f0ebdd9cd8d2a/raw;
+	  sha256 = "0017xg5agj3dy0hx71ijdcrxb72bjqv7x6aq7c9zxzyyw0mkxj0k";
+	})
+  ];
 
   postPatch = ''
     cp campaigns/tutorial-part4.map{,.orig}
diff --git a/pkgs/games/rocksndiamonds/default.nix b/pkgs/games/rocksndiamonds/default.nix
new file mode 100644
index 00000000000..caaedc44ee0
--- /dev/null
+++ b/pkgs/games/rocksndiamonds/default.nix
@@ -0,0 +1,49 @@
+{ stdenv, fetchurl, makeDesktopItem, SDL2, SDL2_image, SDL2_mixer, SDL2_net }:
+
+stdenv.mkDerivation rec {
+  name = "${project}-${version}";
+  project = "rocksndiamonds";
+  version = "4.0.0.2";
+
+  src = fetchurl {
+    url = "https://www.artsoft.org/RELEASES/unix/${project}/${name}.tar.gz";
+    sha256 = "0dzn6vlayvnkjm64zwva337rn07lc21kq93m2h8zz8j3wpl11pb4";
+  };
+
+  desktopItem = makeDesktopItem {
+    name = "rocksndiamonds";
+    exec = "rocksndiamonds";
+    icon = "rocksndiamonds";
+    comment = meta.description;
+    desktopName = "Rocks'n'Diamonds";
+    genericName = "Tile-based puzzle";
+    categories = "Game;LogicGame;";
+  };
+
+  buildInputs = [ SDL2 SDL2_image SDL2_mixer SDL2_net ];
+
+  preBuild = ''
+    dataDir="$out/share/rocksndiamonds"
+    makeFlags+="RO_GAME_DIR=$dataDir"
+  '';
+
+  installPhase = ''
+    appDir=$out/share/applications
+    iconDir=$out/share/icons/hicolor/32x32/apps
+    mkdir -p $out/bin $appDir $iconDir $dataDir
+    cp rocksndiamonds $out/bin/
+    ln -s ${desktopItem}/share/applications/* $appDir/
+    ln -s $dataDir/graphics/gfx_classic/RocksIcon32x32.png $iconDir/rocksndiamonds.png
+    cp -r docs graphics levels music sounds $dataDir
+  '';
+
+  enableParallelBuilding = true;
+
+  meta = with stdenv.lib; {
+    description = "Scrolling tile-based arcade style puzzle game";
+    homepage = https://www.artsoft.org/rocksndiamonds/;
+    license = licenses.gpl2;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ orivej ];
+  };
+}
diff --git a/pkgs/misc/screensavers/xlockmore/default.nix b/pkgs/misc/screensavers/xlockmore/default.nix
index f87e24efe18..998e4055464 100644
--- a/pkgs/misc/screensavers/xlockmore/default.nix
+++ b/pkgs/misc/screensavers/xlockmore/default.nix
@@ -2,11 +2,11 @@
 , libX11, libXext, libXinerama, libXdmcp, libXt }:
 
 stdenv.mkDerivation rec {
+  name = "xlockmore-5.55";
 
-  name = "xlockmore-5.54";
   src = fetchurl {
     url = "http://sillycycle.com/xlock/${name}.tar.xz";
-    sha256 = "0mdgl20619iii1i04pj2dq29nwvasbngy48cvd819h0wfawsqkwz";
+    sha256 = "1y3f76rq2nd10fgi2rx81aj6pijglmm661vjsxi05hpg35dzmwfl";
     curlOpts = "--user-agent 'Mozilla/5.0'";
   };
 
diff --git a/pkgs/misc/screensavers/xssproxy/default.nix b/pkgs/misc/screensavers/xssproxy/default.nix
new file mode 100644
index 00000000000..e5b6bf0d167
--- /dev/null
+++ b/pkgs/misc/screensavers/xssproxy/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub, glib, pkgconfig, xorg, dbus }:
+
+let rev = "1.0.0"; in
+
+stdenv.mkDerivation {
+  name = "xssproxy-${rev}";
+
+  src = fetchFromGitHub {
+    owner = "timakro";
+    repo = "xssproxy";
+    rev = "v${rev}";
+    sha256 = "0c83wmipnsdnbihc5niyczs7jrkss2s8n6iwwjdia7hkjzbd0hl7";
+  };
+
+  buildInputs = [ glib pkgconfig xorg.libX11 xorg.libXScrnSaver dbus ];
+
+  makeFlags = [
+    "bindir=$(out)/bin"
+    "man1dir=$(out)/share/man/man1"
+  ];
+
+  meta = {
+    description = "Forward freedesktop.org Idle Inhibition Service calls to Xss";
+    homepage = https://github.com/timakro/xssproxy;
+    license = stdenv.lib.licenses.gpl3;
+    maintainers = with stdenv.lib.maintainers; [ benley ];
+    platforms = stdenv.lib.platforms.unix;
+  };
+}
diff --git a/pkgs/os-specific/darwin/usr-include/default.nix b/pkgs/os-specific/darwin/usr-include/default.nix
index f0af0f6ba55..4fef1388764 100644
--- a/pkgs/os-specific/darwin/usr-include/default.nix
+++ b/pkgs/os-specific/darwin/usr-include/default.nix
@@ -18,4 +18,6 @@ stdenv.mkDerivation {
     mkdir CoreFoundation
     ln -sf ${darwin.CF}/Library/Frameworks/CoreFoundation.framework/Headers/* CoreFoundation
   '';
+
+  meta.platforms = stdenv.lib.platforms.darwin;
 }
diff --git a/pkgs/os-specific/linux/fbterm/default.nix b/pkgs/os-specific/linux/fbterm/default.nix
index ad3c145cd8a..e97f911534a 100644
--- a/pkgs/os-specific/linux/fbterm/default.nix
+++ b/pkgs/os-specific/linux/fbterm/default.nix
@@ -28,6 +28,23 @@ stdenv.mkDerivation {
     mkdir -p "$out/share/terminfo"
     tic -a -v2 -o"$out/share/terminfo" terminfo/fbterm
   '';
+
+  patches = [
+    # fixes from Arch Linux package
+    (fetchurl {
+      url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/gcc-6-build-fixes.patch";
+      sha256 = "1kl9fjnrri6pamjdl4jpkqxk5wxcf6jcchv5801xz8vxp4542m40";
+    })
+    (fetchurl {
+      url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/insertmode-fix.patch";
+      sha256 = "1bad9mqcfpqb94lpx23lsamlhplil73ahzin2xjva0gl3gr1038l";
+    })
+    (fetchurl {
+      url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/miscoloring-fix.patch";
+      sha256 = "1mjszji0jgs2jsagjp671fv0d1983wmxv009ff1jfhi9pbay6jd0";
+    })
+  ];
+
   meta = {
     inherit (s) version;
     description = "Framebuffer terminal emulator";
diff --git a/pkgs/os-specific/linux/kernel/linux-4.12.nix b/pkgs/os-specific/linux/kernel/linux-4.12.nix
index c223584c92d..df64bffe80b 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.12.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.12.nix
@@ -1,12 +1,12 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.12.8";
+  version = "4.12.9";
   extraMeta.branch = "4.12";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "0z4viglsqk9mv3hp6svwihncpxdgxdkzap74say1cqlbm1dqrdyi";
+    sha256 = "1734l7h9rc8y0gr68ir6j99nf480y56b5i5xb40vkywxbhbkj139";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-4.9.nix b/pkgs/os-specific/linux/kernel/linux-4.9.nix
index 0c5a82c0290..393ae9d63ad 100644
--- a/pkgs/os-specific/linux/kernel/linux-4.9.nix
+++ b/pkgs/os-specific/linux/kernel/linux-4.9.nix
@@ -1,12 +1,12 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.9.44";
+  version = "4.9.45";
   extraMeta.branch = "4.9";
 
   src = fetchurl {
     url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
-    sha256 = "18z3ijxdb6gmk6n37016233hq15bf9wkfqrkw67xlhyqa1hki9j4";
+    sha256 = "0vb62np19i88nslb24ydwnlhkb4018d247ha4xmn0ncsqy6x3rb6";
   };
 
   kernelPatches = args.kernelPatches;
diff --git a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
index 9e0c55fed6e..0edc17a6274 100644
--- a/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
+++ b/pkgs/os-specific/linux/kernel/linux-hardened-copperhead.nix
@@ -1,9 +1,9 @@
 { stdenv, hostPlatform, fetchFromGitHub, perl, buildLinux, ... } @ args:
 
 let
-  version = "4.12.8";
+  version = "4.12.9";
   revision = "a";
-  sha256 = "03ldbgs4w70q756bl5gsxr2z428njnlslh6293y34r54gz5li9a3";
+  sha256 = "0bdhzh483l9g6c7n263f4wxx5klfciswzkmd5p6jlf9wqx72km33";
 in
 
 import ./generic.nix (args // {
diff --git a/pkgs/os-specific/linux/kernel/linux-testing.nix b/pkgs/os-specific/linux/kernel/linux-testing.nix
index 5bbee02b9aa..6778e11710f 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing.nix
@@ -1,13 +1,13 @@
 { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
 
 import ./generic.nix (args // rec {
-  version = "4.13-rc6";
-  modDirVersion = "4.13.0-rc6";
+  version = "4.13-rc7";
+  modDirVersion = "4.13.0-rc7";
   extraMeta.branch = "4.13";
 
   src = fetchurl {
     url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
-    sha256 = "06jdbgihdjmq84d7km43f3w6d3hwmbnv3sgzip3nhx77l14cp7f2";
+    sha256 = "1xkfxsvdhd0xcfjcr78222sa58i02z2ca9fv804jbyp7w9g628rm";
   };
 
   features.iwlwifi = true;
diff --git a/pkgs/os-specific/linux/upstart/check-config.nix b/pkgs/os-specific/linux/upstart/check-config.nix
deleted file mode 100644
index 5803b4ed833..00000000000
--- a/pkgs/os-specific/linux/upstart/check-config.nix
+++ /dev/null
@@ -1,43 +0,0 @@
-# Useful tool to check syntax of a config file. Upstart needs a dbus
-# session, so this script wraps one up and makes the operation not
-# require any prior state.
-#
-# See: http://mwhiteley.com/scripts/2012/12/11/dbus-init-checkconf.html
-{stdenv, coreutils, upstart, writeScript, dbus}:
-
-writeScript "upstart-check-config" ''
-  #!${stdenv.shell}
-
-  set -o errexit
-  set -o nounset
-
-  export PATH=${stdenv.lib.makeBinPath [dbus.out upstart coreutils]}:$PATH
-
-  if [[ $# -ne 1 ]]
-  then
-    echo "Usage: $0 upstart-conf-file" >&2
-    exit 1
-  fi
-  config=$1 && shift
-
-  dbus_pid_file=$(mktemp)
-  exec 4<> $dbus_pid_file
-
-  dbus_add_file=$(mktemp)
-  exec 6<> $dbus_add_file
-
-  dbus-daemon --fork --print-pid 4 --print-address 6 --session
-
-  function clean {
-    dbus_pid=$(cat $dbus_pid_file)
-    if [[ -n $dbus_pid ]]; then
-      kill $dbus_pid
-    fi
-    rm -f $dbus_pid_file $dbus_add_file
-  }
-  trap "{ clean; }" EXIT
-
-  export DBUS_SESSION_BUS_ADDRESS=$(cat $dbus_add_file)
-
-  init-checkconf $config
-''
diff --git a/pkgs/os-specific/linux/upstart/default.nix b/pkgs/os-specific/linux/upstart/default.nix
deleted file mode 100644
index 76ce2637ced..00000000000
--- a/pkgs/os-specific/linux/upstart/default.nix
+++ /dev/null
@@ -1,58 +0,0 @@
-{ stdenv, fetchurl, pkgconfig, dbus, libnih, python, makeWrapper, utillinux
-, writeScript }:
-
-let
-  inherit (stdenv.lib) makeBinPath;
-  version = "1.5";
-
-  upstart = stdenv.mkDerivation rec {
-  name = "upstart-${version}";
-
-  src = fetchurl {
-    url = "http://upstart.ubuntu.com/download/${version}/${name}.tar.gz";
-    sha256 = "01w4ab6nlisz5blb0an1sxjkndwikr7sjp0cmz4lg00g3n7gahmx";
-  };
-
-  buildInputs = [ pkgconfig dbus libnih python makeWrapper];
-
-  NIX_CFLAGS_COMPILE =
-    ''
-      -DSHELL="${stdenv.shell}"
-      -DCONFFILE="/etc/init.conf"
-      -DCONFDIR="/etc/init"
-      -DPATH="/no-path"
-    '';
-
-  # The interface version prevents NixOS from switching to an
-  # incompatible Upstart at runtime.  (Switching across reboots is
-  # fine, of course.)  It should be increased whenever Upstart changes
-  # in a backwards-incompatible way.  If the interface version of two
-  # Upstart builds is the same, then we can switch between them at
-  # runtime; otherwise we can't and we need to reboot.
-  passthru.interfaceVersion = 2;
-
-  postInstall =
-    ''
-      t=$out/etc/bash_completion.d
-      mkdir -p $t
-      cp ${./upstart-bash-completion} $t/upstart
-
-      # Patch some binaries to refer to the correct binary location.
-      sed -i "s,/sbin/init,$out/bin/init,g" $out/bin/init-checkconf
-      sed -i "s,initctl,$out/bin/initctl," $out/bin/initctl2dot
-
-      # Add some missing executable permissions, and wrap binaries.
-      chmod +x $out/bin/init-checkconf $out/bin/init-checkconf
-      wrapProgram $out/bin/init-checkconf \
-        --prefix PATH : $out/bin:${makeBinPath [utillinux dbus]}
-      wrapProgram $out/bin/initctl2dot --prefix PATH : $out/bin
-    '';
-
-  meta = {
-    homepage = http://upstart.ubuntu.com/;
-    description = "An event-based replacement for the /sbin/init daemon";
-    platforms = stdenv.lib.platforms.linux;
-  };
-};
-
-in upstart
diff --git a/pkgs/os-specific/linux/upstart/upstart-bash-completion b/pkgs/os-specific/linux/upstart/upstart-bash-completion
deleted file mode 100644
index f47d38c90ad..00000000000
--- a/pkgs/os-specific/linux/upstart/upstart-bash-completion
+++ /dev/null
@@ -1,18 +0,0 @@
-_upstart_comp_list(){
-  COMPREPLY=()
-  cur=${COMP_WORDS[COMP_CWORD]}
-  if [ $COMP_CWORD -eq 1 ]; then
-      COMPREPLY=( $(compgen -o filenames -W "$@" $cur) )
-  fi
-}
-
-_upstart_complete() { _upstart_comp_list "$(initctl list 2>&1 | grep -E "$1" | cut -f2 -d ' ')"; }
-
-_waiting(){ _upstart_complete "(waiting|instance)"; }
-_running(){ _upstart_complete "(running|instance)"; }
-_jobs(){ _upstart_comp_list "$(ls -1 /etc/event.d 2> /dev/null)"; }
-
-complete -F _jobs status
-complete -F _waiting start
-complete -F _running stop
-complete -F _running restart
diff --git a/pkgs/os-specific/linux/usbguard/daemon_read_only_config.patch b/pkgs/os-specific/linux/usbguard/daemon_read_only_config.patch
new file mode 100644
index 00000000000..eb4d5df698a
--- /dev/null
+++ b/pkgs/os-specific/linux/usbguard/daemon_read_only_config.patch
@@ -0,0 +1,13 @@
+diff --git a/src/Library/ConfigFilePrivate.cpp b/src/Library/ConfigFilePrivate.cpp
+index 8aefa65..40914f7 100644
+--- a/src/Library/ConfigFilePrivate.cpp
++++ b/src/Library/ConfigFilePrivate.cpp
+@@ -51,7 +51,7 @@ namespace usbguard
+ 
+   void ConfigFilePrivate::open(const std::string& path)
+   {
+-    _stream.open(path, std::ios::in|std::ios::out);
++    _stream.open(path, std::ios::in);
+     if (!_stream.is_open()) {
+       throw std::runtime_error("Can't open " + path);
+     }
diff --git a/pkgs/os-specific/linux/usbguard/default.nix b/pkgs/os-specific/linux/usbguard/default.nix
new file mode 100644
index 00000000000..b88d96e02a4
--- /dev/null
+++ b/pkgs/os-specific/linux/usbguard/default.nix
@@ -0,0 +1,68 @@
+{
+  stdenv, fetchurl, lib,
+  libxslt, pandoc, pkgconfig,
+  dbus_glib, libcap_ng, libqb, libseccomp, polkit, protobuf, qtbase, qttools, qtsvg,
+  libgcrypt ? null,
+  libsodium ? null
+}:
+
+with stdenv.lib;
+
+assert libgcrypt != null -> libsodium == null;
+
+stdenv.mkDerivation rec {
+  version = "0.7.0";
+  name = "usbguard-${version}";
+
+  repo = "https://github.com/dkopecek/usbguard";
+
+  src = fetchurl {
+    url = "${repo}/releases/download/${name}/${name}.tar.gz";
+    sha256 = "1e1485a2b47ba3bde9de2851b371d2552a807047a21e0b81553cf80d7f722709";
+  };
+
+  patches = [
+    ./daemon_read_only_config.patch
+    ./documentation.patch
+  ];
+
+  nativeBuildInputs = [
+    libxslt
+    pandoc # for rendering documentation
+    pkgconfig
+  ];
+
+  buildInputs = [
+    dbus_glib
+    libcap_ng
+    libqb
+    libseccomp
+    polkit
+    protobuf
+
+    qtbase
+    qtsvg
+    qttools
+  ]
+  ++ (lib.optional (libgcrypt != null) libgcrypt)
+  ++ (lib.optional (libsodium != null) libsodium);
+
+  configureFlags = [
+    "--with-bundled-catch"
+    "--with-bundled-pegtl"
+    "--with-dbus"
+    "--with-gui-qt=qt5"
+    "--with-polkit"
+  ]
+  ++ (lib.optional (libgcrypt != null) "--with-crypto-library=gcrypt")
+  ++ (lib.optional (libsodium != null) "--with-crypto-library=sodium");
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "The USBGuard software framework helps to protect your computer against BadUSB.";
+    homepage = "https://dkopecek.github.io/usbguard/";
+    license = licenses.gpl2;
+    maintainers = [ maintainers.tnias ];
+  };
+}
diff --git a/pkgs/os-specific/linux/usbguard/documentation.patch b/pkgs/os-specific/linux/usbguard/documentation.patch
new file mode 100644
index 00000000000..89de627131f
--- /dev/null
+++ b/pkgs/os-specific/linux/usbguard/documentation.patch
@@ -0,0 +1,32 @@
+diff --git a/doc/usbguard-daemon.conf.5.md b/doc/usbguard-daemon.conf.5.md
+index ea86ad1..63aec70 100644
+--- a/doc/usbguard-daemon.conf.5.md
++++ b/doc/usbguard-daemon.conf.5.md
+@@ -30,21 +30,21 @@ The **usbguard-daemon.conf** file is loaded by the USBGuard daemon after it pars
+ **RestoreControllerDeviceState**=<*boolean*>
+ :   The USBGuard daemon modifies some attributes of controller devices like the default authorization state of new child device instances. Using this setting, you can control whether the daemon will try to restore the attribute values to the state before modification on shutdown.
+ 
++**DeviceManagerBackend**=<*backend*>
++:   Which device manager backend implementation to use. Backend should be one of `uevent` (default) or `dummy`.
++
+ **IPCAllowedUsers**=<*username*> [<*username*> ...]
+ :   A space delimited list of usernames that the daemon will accept IPC connections from.
+ 
+ **IPCAllowedGroups**=<*groupname*> [<*groupname*> ...]
+ :   A space delimited list of groupnames that the daemon will accept IPC connections from.
+ 
+-**IPCAccessControlFiles**=<*path*>
+-:   Path to a directory holding the IPC access control files.
+-
+-**DeviceManagerBackend**=<*backend*>
+-:   Which device manager backend implementation to use. Backend should be one of `uevent` (default) or `dummy`.
+-
+ **IPCAccessControlFiles**=<*path*>
+ :   The files at this location will be interpreted by the daemon as IPC access control definition files. See the **IPC ACCESS CONTROL** section for more details.
+ 
++**DeviceRulesWithPort**=<*boolean*>
++:   Generate device specific rules including the "via-port" attribute.
++
+ **AuditFilePath**=<*filepath*>
+ :   USBGuard audit events log file path.
+ 
diff --git a/pkgs/servers/http/darkhttpd/default.nix b/pkgs/servers/http/darkhttpd/default.nix
index 0ca888fd6ed..3efc97f6296 100644
--- a/pkgs/servers/http/darkhttpd/default.nix
+++ b/pkgs/servers/http/darkhttpd/default.nix
@@ -9,9 +9,9 @@ stdenv.mkDerivation rec {
     sha256 = "0185wlyx4iqiwfigp1zvql14zw7gxfacncii3d15yaxk4av1f155";
   };
 
-  installPhase = ''
-    install -d "$out/bin"
+  enableParallelBuilding = true;
 
+  installPhase = ''
     # install darkhttpd
     install -Dm755 "darkhttpd" "$out/bin/darkhttpd"
 
@@ -22,9 +22,9 @@ stdenv.mkDerivation rec {
 
   meta = with stdenv.lib; {
     description = "Small and secure static webserver";
-    homepage = https://unix4lyfe.org/darkhttpd/;
-    license = stdenv.lib.licenses.bsd3;
-    platforms = platforms.all;
-    maintainers = [ maintainers.bobvanderlinden ];
+    homepage    = https://unix4lyfe.org/darkhttpd/;
+    license     = licenses.bsd3;
+    maintainers = with maintainers; [ bobvanderlinden ];
+    platforms   = platforms.all;
   };
 }
diff --git a/pkgs/servers/http/nginx/modules.nix b/pkgs/servers/http/nginx/modules.nix
index ea819c7ec83..98141c13c01 100644
--- a/pkgs/servers/http/nginx/modules.nix
+++ b/pkgs/servers/http/nginx/modules.nix
@@ -24,8 +24,8 @@
     src = fetchFromGitHub {
       owner = "arut";
       repo = "nginx-dav-ext-module";
-      rev = "v0.0.3";
-      sha256 = "1qck8jclxddncjad8yv911s9z7lrd58bp96jf13m0iqk54xghx91";
+      rev = "v0.1.0";
+      sha256 = "1ifahd69vz715g3zim618jbmxb7kcmzykc696grskxm0svpy294k";
     };
     inputs = [ pkgs.expat ];
   };
diff --git a/pkgs/servers/misc/airsonic/default.nix b/pkgs/servers/misc/airsonic/default.nix
new file mode 100644
index 00000000000..57040f46947
--- /dev/null
+++ b/pkgs/servers/misc/airsonic/default.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl }:
+
+stdenv.mkDerivation rec {
+  name = "airsonic-${version}";
+  version = "10.0.1";
+
+  src = fetchurl {
+    url = "https://github.com/airsonic/airsonic/releases/download/v${version}/airsonic.war";
+    sha256 = "1qky8dz49200f6100ivkn5g7i0hzkv3gpq2r0cj6z53s8d1ayblc";
+  };
+
+  buildCommand = ''
+    mkdir -p "$out/webapps"
+    cp "$src" "$out/webapps/airsonic.war"
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Personal media streamer";
+    homepage = https://airsonic.github.io;
+    license = stdenv.lib.licenses.gpl3;
+    platforms = platforms.all;
+    maintainers = with maintainers; [ disassembler ];
+  };
+}
diff --git a/pkgs/servers/monitoring/prometheus/alertmanager.nix b/pkgs/servers/monitoring/prometheus/alertmanager.nix
index 78cd69714e8..3ae2a45ca6d 100644
--- a/pkgs/servers/monitoring/prometheus/alertmanager.nix
+++ b/pkgs/servers/monitoring/prometheus/alertmanager.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "alertmanager-${version}";
-  version = "0.6.0";
+  version = "0.8.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/prometheus/alertmanager";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "prometheus";
     repo = "alertmanager";
-    sha256 = "04969hqig0llfkvk3b0yqrywcxm6rgd7ph6nn5rx8pnq21i77sqm";
+    sha256 = "0bqc58j0nrq7y8nbd927z7x74m8mcd2782cxkqwscpq6d9983qql";
   };
 
   # Tests exist, but seem to clash with the firewall.
diff --git a/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix b/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
index 3a61480aea5..b2a0e387589 100644
--- a/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/haproxy-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "haproxy_exporter-${version}";
-  version = "0.7.1";
+  version = "0.8.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/prometheus/haproxy_exporter";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "prometheus";
     repo = "haproxy_exporter";
-    sha256 = "1svwa1cw4yc5k8acj2r2hkall9csxjw51hgmwkmx5dq55gr9lzai";
+    sha256 = "0gx8pq67w71ch3g3c77xaz39msrd9graizc6d3shwabdjx35yc6q";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
index ff6eca621e8..9180a511349 100644
--- a/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
+++ b/pkgs/servers/monitoring/prometheus/mysqld-exporter.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "mysqld_exporter-${version}";
-  version = "0.9.0";
+  version = "0.10.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/prometheus/mysqld_exporter";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "prometheus";
     repo = "mysqld_exporter";
-    sha256 = "0ldjrbhm6n7in4lj6l78xii10mg162rsp09ymjm7y2xar9sd70vp";
+    sha256 = "1133bgyp5vljz2qvfh0qzq8h8bkc8vci3jnmbr633bh3jpaqm2py";
   };
 
   meta = with stdenv.lib; {
diff --git a/pkgs/servers/monitoring/prometheus/pushgateway.nix b/pkgs/servers/monitoring/prometheus/pushgateway.nix
index ccddb078f47..6509f55d46e 100644
--- a/pkgs/servers/monitoring/prometheus/pushgateway.nix
+++ b/pkgs/servers/monitoring/prometheus/pushgateway.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "pushgateway-${version}";
-  version = "0.3.1";
+  version = "0.4.0";
   rev = "v${version}";
 
   goPackagePath = "github.com/prometheus/pushgateway";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "prometheus";
     repo = "pushgateway";
-    sha256 = "0ax83yy5hbfppcr66l9al7wxibcqfnyps05jdscvpwvgrg4q7ldk";
+    sha256 = "19hsv42addcx4dsjdbh64y7ggjvaaay9gag0342gz7gyl9sr719f";
   };
 
   buildInputs = [ go-bindata ];
diff --git a/pkgs/servers/monitoring/prometheus/statsd-bridge.nix b/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
index 0ff1386074b..f4d9f5a8503 100644
--- a/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
+++ b/pkgs/servers/monitoring/prometheus/statsd-bridge.nix
@@ -1,17 +1,17 @@
 { stdenv, lib, buildGoPackage, fetchFromGitHub }:
 
 buildGoPackage rec {
-  name = "statsd_bridge-${version}";
-  version = "0.3.0";
+  name = "statsd_exporter-${version}";
+  version = "0.4.0";
   rev = version;
 
   goPackagePath = "github.com/prometheus/statsd_bridge";
 
   src = fetchFromGitHub {
-    inherit rev;
+    rev = "v${version}";
     owner = "prometheus";
     repo = "statsd_exporter";
-    sha256 = "1gg9v224n05khcwy27637w3rwh0cymm7hx6bginfxd7730rmpp2r";
+    sha256 = "1w11n7g663g7d7mbf6jfzcqmcm9rhaxy52bg0rqnad9v0rs5qxr6";
   };
 
   goDeps = ./statsd-bridge_deps.nix;
diff --git a/pkgs/servers/monitoring/sensu/Gemfile.lock b/pkgs/servers/monitoring/sensu/Gemfile.lock
index 9e47e697c3b..d12e17130b0 100644
--- a/pkgs/servers/monitoring/sensu/Gemfile.lock
+++ b/pkgs/servers/monitoring/sensu/Gemfile.lock
@@ -5,13 +5,13 @@ GEM
     amqp (1.6.0)
       amq-protocol (>= 2.0.1)
       eventmachine
-    aws-sdk (2.10.19)
-      aws-sdk-resources (= 2.10.19)
-    aws-sdk-core (2.10.19)
+    aws-sdk (2.10.34)
+      aws-sdk-resources (= 2.10.34)
+    aws-sdk-core (2.10.34)
       aws-sigv4 (~> 1.0)
       jmespath (~> 1.0)
-    aws-sdk-resources (2.10.19)
-      aws-sdk-core (= 2.10.19)
+    aws-sdk-resources (2.10.34)
+      aws-sdk-core (= 2.10.34)
     aws-sigv4 (1.0.1)
     cause (0.1)
     childprocess (0.5.8)
@@ -23,7 +23,7 @@ GEM
       eventmachine
     em-worker (0.0.2)
       eventmachine
-    eventmachine (1.2.2)
+    eventmachine (1.2.5)
     ffi (1.9.18)
     http-cookie (1.0.3)
       domain_name (~> 0.5)
@@ -34,19 +34,21 @@ GEM
     json (1.8.6)
     jsonpath (0.5.8)
       multi_json
-    mime-types (2.99.3)
+    mime-types (3.1)
+      mime-types-data (~> 3.2015)
+    mime-types-data (3.2016.0521)
     mixlib-cli (1.7.0)
     multi_json (1.12.1)
     netrc (0.11.0)
     oj (2.18.1)
     parse-cron (0.1.4)
-    rest-client (1.8.0)
+    rest-client (2.0.2)
       http-cookie (>= 1.0.2, < 2.0)
-      mime-types (>= 1.16, < 3.0)
-      netrc (~> 0.7)
-    sensu (1.0.2)
+      mime-types (>= 1.16, < 4.0)
+      netrc (~> 0.8)
+    sensu (1.0.3)
       em-http-server (= 0.1.8)
-      eventmachine (= 1.2.2)
+      eventmachine (= 1.2.5)
       parse-cron (= 0.1.4)
       sensu-extension (= 1.5.1)
       sensu-extensions (= 1.9.0)
@@ -89,12 +91,12 @@ GEM
     sensu-plugin (1.4.5)
       json (< 2.0.0)
       mixlib-cli (>= 1.5.0)
-    sensu-plugins-disk-checks (2.4.0)
+    sensu-plugins-disk-checks (2.4.2)
       sensu-plugin (~> 1.2)
       sys-filesystem (= 1.1.7)
-    sensu-plugins-http (2.5.0)
+    sensu-plugins-http (2.6.0)
       aws-sdk (~> 2.3)
-      rest-client (= 1.8.0)
+      rest-client (~> 2.0.2)
       sensu-plugin (~> 1.2)
     sensu-plugins-influxdb (1.2.0)
       dentaku (= 2.0.9)
diff --git a/pkgs/servers/monitoring/sensu/gemset.nix b/pkgs/servers/monitoring/sensu/gemset.nix
index 36bef969c2a..cce9a45e9ed 100644
--- a/pkgs/servers/monitoring/sensu/gemset.nix
+++ b/pkgs/servers/monitoring/sensu/gemset.nix
@@ -20,28 +20,28 @@
     dependencies = ["aws-sdk-resources"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "04fgpkhjjmwxppb7b0jbsc6zykkw7hpkncld8mm1zamajf653sf6";
+      sha256 = "09k367vs9gb640cr1afphxjfmlykw7knnb9xz0kl2x5f9yr3zz23";
       type = "gem";
     };
-    version = "2.10.19";
+    version = "2.10.34";
   };
   aws-sdk-core = {
     dependencies = ["aws-sigv4" "jmespath"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0f0qq7h4bpmlvcsl1bncxdyw63zanz6jdxch9i457irc5l6z8sm0";
+      sha256 = "0gfsph8kr59jdpvycq8qh0c0ah64k0n96ag5qbvy7mzq9292085w";
       type = "gem";
     };
-    version = "2.10.19";
+    version = "2.10.34";
   };
   aws-sdk-resources = {
     dependencies = ["aws-sdk-core"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "0c107vlh475jph5i2szchmcwlsimpvdbd2cc0m5p39jmw8prkysa";
+      sha256 = "0knip45mhx0dm8llp1akhhar2z007r7kjg3i3xbws7lhvms8fbjc";
       type = "gem";
     };
-    version = "2.10.19";
+    version = "2.10.34";
   };
   aws-sigv4 = {
     source = {
@@ -106,10 +106,10 @@
   eventmachine = {
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "00mlcq33q104spkb5c997lwallpilhj0d6fzsbd4lr9s8lmjga5f";
+      sha256 = "075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z";
       type = "gem";
     };
-    version = "1.2.2";
+    version = "1.2.5";
   };
   ffi = {
     source = {
@@ -163,12 +163,21 @@
     version = "0.5.8";
   };
   mime-types = {
+    dependencies = ["mime-types-data"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "03j98xr0qw2p2jkclpmk7pm29yvmmh0073d8d43ajmr0h3w7i5l9";
+      sha256 = "0087z9kbnlqhci7fxh9f6il63hj1k02icq2rs0c6cppmqchr753m";
       type = "gem";
     };
-    version = "2.99.3";
+    version = "3.1";
+  };
+  mime-types-data = {
+    source = {
+      remotes = ["https://rubygems.org"];
+      sha256 = "04my3746hwa4yvbx1ranhfaqkgf6vavi1kyijjnw8w3dy37vqhkm";
+      type = "gem";
+    };
+    version = "3.2016.0521";
   };
   mixlib-cli = {
     source = {
@@ -214,19 +223,19 @@
     dependencies = ["http-cookie" "mime-types" "netrc"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1m8z0c4yf6w47iqz6j2p7x1ip4qnnzvhdph9d5fgx081cvjly3p7";
+      sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
       type = "gem";
     };
-    version = "1.8.0";
+    version = "2.0.2";
   };
   sensu = {
     dependencies = ["em-http-server" "eventmachine" "parse-cron" "sensu-extension" "sensu-extensions" "sensu-json" "sensu-logger" "sensu-redis" "sensu-settings" "sensu-spawn" "sensu-transport"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1vk9bvxwh6ah8xkncf16f8r0bq84cnnx16ffc4k6sq73v8wpk116";
+      sha256 = "07fa9rv7hdj2n58a0cm1i5nis309w7xbs9lmgckmrpj190q1gvdm";
       type = "gem";
     };
-    version = "1.0.2";
+    version = "1.0.3";
   };
   sensu-extension = {
     dependencies = ["eventmachine"];
@@ -331,19 +340,19 @@
     dependencies = ["sensu-plugin" "sys-filesystem"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "1r7kzqp0kwhz7kk0s25r7lh2sw4yr99m5lr8cb99kq73fnsjqipq";
+      sha256 = "1m5pygdaf8xqrby61vcsq6ynhzcvjr2xgahwmkkcai8a4xqrpq9x";
       type = "gem";
     };
-    version = "2.4.0";
+    version = "2.4.2";
   };
   sensu-plugins-http = {
     dependencies = ["aws-sdk" "rest-client" "sensu-plugin"];
     source = {
       remotes = ["https://rubygems.org"];
-      sha256 = "13126hx2fgjsrfqnlh2hf2czn35pi8rkc5ql9yxf4y8x9a7dyksj";
+      sha256 = "1yg05x9dl4xwqi7lvglyv374a3hbp7ag0z9325jmc9bazm6i2q2d";
       type = "gem";
     };
-    version = "2.5.0";
+    version = "2.6.0";
   };
   sensu-plugins-influxdb = {
     dependencies = ["dentaku" "influxdb" "jsonpath" "sensu-plugin"];
diff --git a/pkgs/servers/nextcloud/default.nix b/pkgs/servers/nextcloud/default.nix
index 03c8463f9ea..ffd2ad18796 100644
--- a/pkgs/servers/nextcloud/default.nix
+++ b/pkgs/servers/nextcloud/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name= "nextcloud-${version}";
-  version = "12.0.0";
+  version = "12.0.2";
 
   src = fetchurl {
     url = "https://download.nextcloud.com/server/releases/${name}.tar.bz2";
-    sha256 = "0gr47bwwni7y33qz3l8g3sjrqridykxiid2jlmjdaz35bvq9r78v";
+    sha256 = "0z5145xnwmmim5j25ylghhhm74nvijqb8iyq5azq9vjmkz5xcd7b";
   };
 
   installPhase = ''
diff --git a/pkgs/servers/nextcloud/news-updater.nix b/pkgs/servers/nextcloud/news-updater.nix
index 0e99378c92c..a78b3d59095 100644
--- a/pkgs/servers/nextcloud/news-updater.nix
+++ b/pkgs/servers/nextcloud/news-updater.nix
@@ -2,11 +2,11 @@
 
 python3Packages.buildPythonApplication rec {
   name = "nextcloud-news-updater-${version}";
-  version = "9.0.2";
+  version = "10.0.0";
 
   src = fetchurl {
     url = "mirror://pypi/n/nextcloud_news_updater/nextcloud_news_updater-${version}.tar.gz";
-    sha256 = "1m6g4591zyvjl2fji4iwl9api02racgc9rqa0gf0mfsqwdr77alw";
+    sha256 = "00pscz0p4s10y1ymb6sm0gx4a5wdbhimn30582x8i28n58nnl8j0";
   };
 
   doCheck = false;
diff --git a/pkgs/servers/nosql/arangodb/default.nix b/pkgs/servers/nosql/arangodb/default.nix
index e7dc7ae9225..c4a616856ad 100644
--- a/pkgs/servers/nosql/arangodb/default.nix
+++ b/pkgs/servers/nosql/arangodb/default.nix
@@ -1,29 +1,28 @@
-{ stdenv, fetchFromGitHub, openssl, zlib, python2Packages, bash, go, readline }:
+{ stdenv, fetchFromGitHub
+, openssl, zlib, python2Packages, readline, cmake, python }:
 
 let
-  inherit (python2Packages) python gyp;
 in stdenv.mkDerivation rec {
-  version = "2.5.3";
+  version = "3.2.2";
   name    = "arangodb-${version}";
 
   src = fetchFromGitHub {
     repo = "arangodb";
     owner = "arangodb";
-    rev = "67d995aa22ea341129398326fa10c5f6c14e94e9";
-    sha256 = "1v07fghf2jd2mvkfqhag0xblf6sxw7kx9kmhs2xpyrpns58lirvc";
+    rev = "v${version}";
+    sha256 = "0f87r0fr3i09fnmwjqz6q1lwd5k32a2knrls0nv0zhqrma7sdy01";
   };
 
-  postPatch = ''
-    substituteInPlace 3rdParty/V8-3.31.74.1/build/gyp/gyp --replace /bin/bash ${bash}/bin/bash
-    substituteInPlace 3rdParty/etcd/build --replace /bin/bash ${bash}/bin/bash
-    sed '1i#include <cmath>' -i arangod/Aql/Functions.cpp \
-      -i lib/Basics/string-buffer.cpp
-  '';
-
   buildInputs = [
-    openssl zlib python gyp go readline
+    openssl zlib readline python
   ];
 
+  nativeBuildInputs = [ cmake ];
+
+  postPatch = ''
+    sed -ie 's!/bin/echo!echo!' 3rdParty/V8/v*/gypfiles/*.gypi
+  '';
+
   configureFlagsArray = [ "--with-openssl-lib=${openssl.out}/lib" ];
 
   NIX_CFLAGS_COMPILE = "-Wno-error=strict-overflow";
diff --git a/pkgs/servers/squid/4.nix b/pkgs/servers/squid/4.nix
index af1a3f1eb0e..9f43af418e6 100644
--- a/pkgs/servers/squid/4.nix
+++ b/pkgs/servers/squid/4.nix
@@ -2,11 +2,11 @@
 , expat, libxml2, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "squid-4.0.20";
+  name = "squid-4.0.21";
 
   src = fetchurl {
     url = "http://www.squid-cache.org/Versions/v4/${name}.tar.xz";
-    sha256 = "1apb496psfv513fad82m52s6x7l74lsdq2dkzifmfgh3zrlc7r9i";
+    sha256 = "0cwfj3qpl72k5l1h2rvkv1xg0720rifk4wcvi49z216hznyqwk8m";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/squid/default.nix b/pkgs/servers/squid/default.nix
index 1133b697a25..2da0316483b 100644
--- a/pkgs/servers/squid/default.nix
+++ b/pkgs/servers/squid/default.nix
@@ -2,11 +2,11 @@
 , expat, libxml2, openssl }:
 
 stdenv.mkDerivation rec {
-  name = "squid-3.5.26";
+  name = "squid-3.5.27";
 
   src = fetchurl {
     url = "http://www.squid-cache.org/Versions/v3/3.5/${name}.tar.xz";
-    sha256 = "10m9g7wcik11gv7xqpv9wbkmmfbwxs00s1jm8hgqh63fgp5yx8ds";
+    sha256 = "1v7hzvwwghrs751iag90z8909nvyp3c5jynaz4hmjqywy9kl7nsx";
   };
 
   buildInputs = [
diff --git a/pkgs/servers/web-apps/shaarli/default.nix b/pkgs/servers/web-apps/shaarli/default.nix
index 41a27690a2a..711b1282b80 100644
--- a/pkgs/servers/web-apps/shaarli/default.nix
+++ b/pkgs/servers/web-apps/shaarli/default.nix
@@ -2,11 +2,11 @@
 
 stdenv.mkDerivation rec {
   name = "shaarli-${version}";
-  version = "0.9.0";
+  version = "0.9.1";
 
   src = fetchurl {
     url = "https://github.com/shaarli/Shaarli/releases/download/v${version}/shaarli-v${version}-full.tar.gz";
-    sha256 = "1l8waa26cq9rjh8hvhnlrsvj4606pz81msdmhljgqx7fdn5wzs5c";
+    sha256 = "10arm3sm9dbzi97x1mjh46r5f6zii4f1w8nl0zfw3knbapab8xv5";
   };
 
   outputs = [ "out" "doc" ];
@@ -55,7 +55,7 @@ stdenv.mkDerivation rec {
     description = "The personal, minimalist, super-fast, database free, bookmarking service";
     license = licenses.gpl3Plus;
     homepage = https://github.com/shaarli/Shaarli;
-    maintainers = with maintainers; [ schneefux ];
+    maintainers = with maintainers; [ ];
     platforms = platforms.all;
   };
 }
diff --git a/pkgs/tools/X11/xdg-user-dirs/default.nix b/pkgs/tools/X11/xdg-user-dirs/default.nix
index 8829427b79c..0af94531753 100644
--- a/pkgs/tools/X11/xdg-user-dirs/default.nix
+++ b/pkgs/tools/X11/xdg-user-dirs/default.nix
@@ -1,11 +1,11 @@
 { stdenv, fetchurl, libxslt, docbook_xsl, makeWrapper }:
 
 stdenv.mkDerivation rec {
-  name = "xdg-user-dirs-0.15";
-  
+  name = "xdg-user-dirs-0.16";
+
   src = fetchurl {
     url = "http://user-dirs.freedesktop.org/releases/${name}.tar.gz";
-    sha256 = "20b4a751f41d0554bce3e0ce5e8d934be98cc62d48f0b90a894c3e1916552786";
+    sha256 = "1rp3c94hxjlfsryvwajklynfnrcvxplhwnjqc7395l89i0nb83vp";
   };
 
   buildInputs = [ libxslt docbook_xsl makeWrapper ];
diff --git a/pkgs/tools/X11/xdg-utils/default.nix b/pkgs/tools/X11/xdg-utils/default.nix
index a1d3a059a83..717ad327c67 100644
--- a/pkgs/tools/X11/xdg-utils/default.nix
+++ b/pkgs/tools/X11/xdg-utils/default.nix
@@ -17,11 +17,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "xdg-utils-${version}";
-  version = "1.1.1";
+  version = "1.1.2";
 
   src = fetchurl {
     url = "https://portland.freedesktop.org/download/${name}.tar.gz";
-    sha256 = "09a1pk3ifsndc5qz2kcd1557i137gpgnv3d739pv22vfayi67pdh";
+    sha256 = "1k4b4m3aiyqn9k12a0ihcdahzlspl3zhskmm1d7228dvqvi546cm";
   };
 
   # just needed when built from git
@@ -46,6 +46,9 @@ stdenv.mkDerivation rec {
     substituteInPlace $out/bin/xdg-mime \
       --replace "/usr/bin/file" "${file}/bin/file"
 
+    substituteInPlace $out/bin/xdg-email \
+      --replace "/bin/echo" "${coreutils}/bin/echo"
+
     sed 's# which # type -P #g' -i "$out"/bin/*
   '';
 
diff --git a/pkgs/development/python-modules/ansible/2.1.nix b/pkgs/tools/admin/ansible/2.1.nix
index 6c7f2090523..5a20b525607 100644
--- a/pkgs/development/python-modules/ansible/2.1.nix
+++ b/pkgs/tools/admin/ansible/2.1.nix
@@ -1,19 +1,11 @@
-{ lib
+{ stdenv
 , fetchurl
-, buildPythonPackage
-, pycrypto
-, paramiko
-, jinja2
-, pyyaml
-, httplib2
-, boto
-, six
-, netaddr
-, dns
+, pythonPackages
 , windowsSupport ? false
-, pywinrm ? null
 }:
 
+with pythonPackages;
+
 let
   jinja = jinja2.override rec {
     pname = "Jinja2";
@@ -45,17 +37,18 @@ in buildPythonPackage rec {
   dontPatchELF = true;
   dontPatchShebangs = false;
 
-  propagatedBuildInputs = [ pycrypto paramiko jinja pyyaml httplib2
-    boto six netaddr dns ] ++ lib.optional windowsSupport pywinrm;
+  propagatedBuildInputs = [
+    pycrypto paramiko jinja pyyaml httplib2 boto six netaddr dns
+  ] ++ stdenv.lib.optional windowsSupport pywinrm;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.ansible.com;
     description = "A simple automation tool";
-    license = with lib.licenses; [ gpl3] ;
-    maintainers = with lib.maintainers; [
+    license = with licenses; [ gpl3] ;
+    maintainers = with maintainers; [
       jgeerds
       joamaki
     ];
-    platforms = with lib.platforms; linux ++ darwin;
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/python-modules/ansible/2.2.nix b/pkgs/tools/admin/ansible/2.2.nix
index 48e3be96695..528dbf0e97b 100644
--- a/pkgs/development/python-modules/ansible/2.2.nix
+++ b/pkgs/tools/admin/ansible/2.2.nix
@@ -1,19 +1,11 @@
-{ lib
+{ stdenv
 , fetchurl
-, buildPythonPackage
-, pycrypto
-, paramiko
-, jinja2
-, pyyaml
-, httplib2
-, boto
-, six
-, netaddr
-, dns
+, pythonPackages
 , windowsSupport ? false
-, pywinrm ? null
 }:
 
+with pythonPackages;
+
 let
   # Shouldn't be needed anymore in next version
   # https://github.com/NixOS/nixpkgs/pull/22345#commitcomment-20718521
@@ -46,17 +38,18 @@ in buildPythonPackage rec {
   dontPatchELF = true;
   dontPatchShebangs = false;
 
-  propagatedBuildInputs = [ pycrypto paramiko jinja pyyaml httplib2
-    boto six netaddr dns ] ++ lib.optional windowsSupport pywinrm;
+  propagatedBuildInputs = [
+    pycrypto paramiko jinja pyyaml httplib2 boto six netaddr dns
+  ] ++ stdenv.lib.optional windowsSupport pywinrm;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.ansible.com;
     description = "A simple automation tool";
-    license = with lib.licenses; [ gpl3] ;
-    maintainers = with lib.maintainers; [
+    license = with licenses; [ gpl3] ;
+    maintainers = with maintainers; [
       jgeerds
       joamaki
     ];
-    platforms = with lib.platforms; linux ++ darwin;
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/development/python-modules/ansible/2.3.nix b/pkgs/tools/admin/ansible/2.3.nix
index 36fb44498b5..599ea75836c 100644
--- a/pkgs/development/python-modules/ansible/2.3.nix
+++ b/pkgs/tools/admin/ansible/2.3.nix
@@ -1,25 +1,14 @@
-{ lib
+{ stdenv
 , fetchurl
-, buildPythonPackage
-, pycrypto
-, paramiko
-, jinja2
-, pyyaml
-, httplib2
-, boto
-, six
-, netaddr
-, dns
+, pythonPackages
 , windowsSupport ? false
-, pywinrm ? null
 }:
 
-buildPythonPackage rec {
+pythonPackages.buildPythonPackage rec {
   pname = "ansible";
   version = "2.3.1.0";
   name = "${pname}-${version}";
 
-
   src = fetchurl {
     url = "http://releases.ansible.com/ansible/${name}.tar.gz";
     sha256 = "1xdr82fy8gahxh3586wm5k1bxksys7yl1f2n24shrk8gf99qyjyd";
@@ -34,17 +23,18 @@ buildPythonPackage rec {
   dontPatchELF = true;
   dontPatchShebangs = false;
 
-  propagatedBuildInputs = [ pycrypto paramiko jinja2 pyyaml httplib2
-    boto six netaddr dns ] ++ lib.optional windowsSupport pywinrm;
+  propagatedBuildInputs = with pythonPackages; [
+    pycrypto paramiko jinja2 pyyaml httplib2 boto six netaddr dns
+  ] ++ stdenv.lib.optional windowsSupport pywinrm;
 
-  meta = {
+  meta = with stdenv.lib; {
     homepage = http://www.ansible.com;
     description = "A simple automation tool";
-    license = with lib.licenses; [ gpl3] ;
-    maintainers = with lib.maintainers; [
+    license = with licenses; [ gpl3] ;
+    maintainers = with maintainers; [
       jgeerds
       joamaki
     ];
-    platforms = with lib.platforms; linux ++ darwin;
+    platforms = with platforms; linux ++ darwin;
   };
 }
diff --git a/pkgs/tools/compression/xar/default.nix b/pkgs/tools/compression/xar/default.nix
index 0bb4a1fb2ae..c62eead3cb7 100644
--- a/pkgs/tools/compression/xar/default.nix
+++ b/pkgs/tools/compression/xar/default.nix
@@ -1,18 +1,18 @@
 { stdenv, fetchurl, libxml2, openssl, zlib, bzip2 }:
 
 stdenv.mkDerivation rec {
-  version = "1.5.2";
+  version = "1.6.1";
   name    = "xar-${version}";
 
   src = fetchurl {
-    url    = "https://xar.googlecode.com/files/${name}.tar.gz";
-    sha256 = "1rp3va6akzlh35yqrapfqnbxaxa0zi8wyr93swbapprwh215cpac";
+    url    = "https://github.com/downloads/mackyle/xar/${name}.tar.gz";
+    sha256 = "0ghmsbs6xwg1092v7pjcibmk5wkyifwxw6ygp08gfz25d2chhipf";
   };
 
   buildInputs = [ libxml2 openssl zlib bzip2 ];
 
   meta = {
-    homepage    = https://code.google.com/p/xar/;
+    homepage    = https://mackyle.github.io/xar/;
     description = "Extensible Archiver";
 
     longDescription =
diff --git a/pkgs/tools/filesystems/xfsprogs/4.3.0-sharedlibs.patch b/pkgs/tools/filesystems/xfsprogs/4.3.0-sharedlibs.patch
deleted file mode 100644
index 622708f7b9c..00000000000
--- a/pkgs/tools/filesystems/xfsprogs/4.3.0-sharedlibs.patch
+++ /dev/null
@@ -1,89 +0,0 @@
---- xfsprogs-4.3.0/include/buildmacros
-+++ xfsprogs-4.3.0/include/buildmacros
-@@ -70,18 +70,9 @@
- # /usr/lib.
- ifeq ($(ENABLE_SHARED),yes)
- INSTALL_LTLIB_DEV = \
--	cd $(TOPDIR)/$(LIBNAME)/.libs; \
--	../$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
--	../$(INSTALL) -m 644 -T old_lib $(LIBNAME).lai $(PKG_LIB_DIR); \
--	../$(INSTALL) -m 644 $(LIBNAME).lai $(PKG_LIB_DIR)/$(LIBNAME).la ; \
--	../$(INSTALL) -m 755 -d $(PKG_ROOT_LIB_DIR); \
--	../$(INSTALL) -T so_base $(LIBNAME).lai $(PKG_ROOT_LIB_DIR); \
--	if [ "x$(shell readlink -f $(PKG_LIB_DIR))" != \
--	     "x$(shell readlink -f $(PKG_ROOT_LIB_DIR))" ]; then \
--		../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).a $(PKG_ROOT_LIB_DIR)/$(LIBNAME).a; \
--		../$(INSTALL) -S $(PKG_LIB_DIR)/$(LIBNAME).la $(PKG_ROOT_LIB_DIR)/$(LIBNAME).la; \
--		../$(INSTALL) -S $(PKG_ROOT_LIB_DIR)/$(LIBNAME).so $(PKG_LIB_DIR)/$(LIBNAME).so; \
--	fi
-+	set -e; cd $(TOPDIR)/$(LIBNAME); \
-+	$(INSTALL) -m 755 -d $(PKG_LIB_DIR); \
-+	env -uDIST_ROOT $(LTINSTALL) $(TOPDIR)/$(LIBNAME)/$(LIBNAME).la $(DIST_ROOT)$(PKG_LIB_DIR)/$(LIBNAME).la
- else
- INSTALL_LTLIB_DEV = $(INSTALL_LTLIB_STATIC)
- endif
---- xfsprogs-4.3.0/libxcmd/Makefile
-+++ xfsprogs-4.3.0/libxcmd/Makefile
-@@ -34,6 +34,9 @@
- 
- include $(BUILDRULES)
- 
--install install-dev: default
-+install: default
-+
-+install-dev: default
-+	$(INSTALL_LTLIB_DEV)
- 
- -include .ltdep
---- xfsprogs-4.3.0/libxfs/Makefile
-+++ xfsprogs-4.3.0/libxfs/Makefile
-@@ -138,6 +138,7 @@
- 
- install-dev: install
- 	$(INSTALL) -m 644 $(PKGHFILES) $(PKG_INC_DIR)
-+	$(INSTALL_LTLIB_DEV)
- 
- # We need to install the headers before building the dependencies.  If we
- # include the .ltdep file, the makefile decides that it needs to build the
---- xfsprogs-4.3.0/libxlog/Makefile
-+++ xfsprogs-4.3.0/libxlog/Makefile
-@@ -12,6 +12,8 @@
- 
- CFILES = xfs_log_recover.c util.c
- 
-+LTLIBS = $(LIBUUID) $(LIBXFS)
-+
- # don't want to link xfs_repair with a debug libxlog.
- DEBUG = -DNDEBUG
- 
-@@ -19,6 +21,9 @@
- 
- include $(BUILDRULES)
- 
--install install-dev: default
-+install: default
-+
-+install-dev: default
-+	$(INSTALL_LTLIB_DEV)
- 
- -include .ltdep
---- xfsprogs-4.3.0/quota/Makefile
-+++ xfsprogs-4.3.0/quota/Makefile
-@@ -16,7 +16,6 @@ LSRCFILES = $(shell echo $(PCFILES) | sed -e "s/$(PKG_PLATFORM).c//g")
- 
- LLDLIBS = $(LIBXCMD)
- LTDEPENDENCIES = $(LIBXCMD)
--LLDFLAGS = -static
- 
- ifeq ($(ENABLE_READLINE),yes)
- LLDLIBS += $(LIBREADLINE) $(LIBTERMCAP)
---- xfsprogs-4.3.0/mdrestore/Makefile
-+++ xfsprogs-4.3.0/mdrestore/Makefile
-@@ -10,7 +10,6 @@ CFILES = xfs_mdrestore.c
- 
- LLDLIBS = $(LIBXFS) $(LIBRT) $(LIBPTHREAD) $(LIBUUID)
- LTDEPENDENCIES = $(LIBXFS)
--LLDFLAGS = -static
- 
- default: depend $(LTCOMMAND)
- 
diff --git a/pkgs/tools/graphics/cuneiform/default.nix b/pkgs/tools/graphics/cuneiform/default.nix
index 6ae6df35a51..28699bf6931 100644
--- a/pkgs/tools/graphics/cuneiform/default.nix
+++ b/pkgs/tools/graphics/cuneiform/default.nix
@@ -1,12 +1,13 @@
-{ stdenv, fetchurl, cmake, patchelf, imagemagick }:
+{ stdenv, fetchbzr, cmake, patchelf, imagemagick }:
 
 stdenv.mkDerivation rec {
   name = "cuneiform-${version}";
   version = "1.1.0";
 
-  src = fetchurl {
-    url = "https://launchpad.net/cuneiform-linux/1.1/1.1/+download/cuneiform-linux-1.1.0.tar.bz2";
-    sha256 = "1bdvppyfx2184zmzcylskd87cxv56d8f32jf7g1qc8779l2hszjp";
+  src = fetchbzr {
+    url = "lp:~f0ma/cuneiform-linux/devel";
+    rev = "540";
+    sha256 = "0sj7v3plf2rrc2vzxl946h9yfribc0jfn4b3ffppghxk2g6kicsb";
   };
 
   buildInputs = [
@@ -16,5 +17,6 @@ stdenv.mkDerivation rec {
   meta = {
     description = "Multi-language OCR system";
     platforms = stdenv.lib.platforms.linux;
+    maintainers = with stdenv.lib.maintainers; [raskin];
   };
 }
diff --git a/pkgs/tools/misc/fzf/default.nix b/pkgs/tools/misc/fzf/default.nix
index 5bf42fae9ea..4b76b85287a 100644
--- a/pkgs/tools/misc/fzf/default.nix
+++ b/pkgs/tools/misc/fzf/default.nix
@@ -2,7 +2,7 @@
 
 buildGoPackage rec {
   name = "fzf-${version}";
-  version = "0.16.11";
+  version = "0.17.0";
   rev = "${version}";
 
   goPackagePath = "github.com/junegunn/fzf";
@@ -11,7 +11,7 @@ buildGoPackage rec {
     inherit rev;
     owner = "junegunn";
     repo = "fzf";
-    sha256 = "1jm7v482ad85l627k7a265p2clzy2yk88hqqbjsihi53mj8agxa0";
+    sha256 = "0cj9vvrsrxj7752fxww1bkflz9rap0n4hhwd6shs0qbss1awwqk9";
   };
 
   outputs = [ "bin" "out" "man" ];
diff --git a/pkgs/tools/misc/git-fire/default.nix b/pkgs/tools/misc/git-fire/default.nix
new file mode 100644
index 00000000000..0b5deccaa90
--- /dev/null
+++ b/pkgs/tools/misc/git-fire/default.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchFromGitHub }:
+
+stdenv.mkDerivation {
+  name = "git-fire-unstable-2017-08-27";
+
+  src = fetchFromGitHub {
+    owner = "qw3rtman";
+    repo = "git-fire";
+    rev = "d72b68ed356f726c77c60294f9220275f16c9931";
+    sha256 = "1hdwkhyjjx31y0lpjkhbb4f5y9f7g70fnd4c2246cmk2rbsvj5b2";
+  };
+
+  installPhase = ''
+    install -D -m755 $src/git-fire $out/bin/git-fire
+  '';
+
+  meta = with stdenv.lib; {
+    description = ''
+      Push ALL changes in a git repository
+    '';
+    longDescription = ''
+      In the event of an emergency (fire, etc.), automatically commit all changes/files in a repository, pushing to all known remotes all commits and stashes.
+    '';
+    homepage = "https://github.com/qw3rtman/git-fire";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = [ maintainers.swflint ];
+  };
+}
diff --git a/pkgs/tools/misc/hdf5/default.nix b/pkgs/tools/misc/hdf5/default.nix
index ea71def3619..eb29e7d914c 100644
--- a/pkgs/tools/misc/hdf5/default.nix
+++ b/pkgs/tools/misc/hdf5/default.nix
@@ -55,6 +55,7 @@ stdenv.mkDerivation rec {
       applications to evolve in their use of HDF5. The HDF5 Technology suite includes tools and 
       applications for managing, manipulating, viewing, and analyzing data in the HDF5 format.
     '';
+    license = stdenv.lib.licenses.free; # BSD-like
     homepage = https://www.hdfgroup.org/HDF5/;
     platforms = stdenv.lib.platforms.unix;
   };
diff --git a/pkgs/tools/misc/hdfjava/default.nix b/pkgs/tools/misc/hdfjava/default.nix
new file mode 100644
index 00000000000..553e78c58a7
--- /dev/null
+++ b/pkgs/tools/misc/hdfjava/default.nix
@@ -0,0 +1,27 @@
+{ stdenv, fetchurl, cmake, javac }:
+
+stdenv.mkDerivation rec {
+  name = "hdf-java-${version}";
+  version = "3.3.2";
+
+  src = fetchurl {
+    url = "http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-${version}/src/CMake-hdfjava-${version}.tar.gz";
+    sha256 = "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr";
+  };
+
+  nativeBuildInputs = [ cmake javac ];
+
+  configurePhase = "true";
+  buildPhase = "./build-hdfjava-unix.sh";
+  installPhase = ''
+    mkdir -p $out
+    cp -r build/_CPack_Packages/Linux/TGZ/HDFJava-3.3.2-Linux/HDF_Group/HDFJava/${version}/* $out/
+  '';
+
+  meta = {
+    description = "A Java package that implements HDF4 and HDF5 data objects in an object-oriented form";
+    license = stdenv.lib.licenses.free; # BSD-like
+    homepage = https://support.hdfgroup.org/products/java/index.html;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/hdfview/default.nix b/pkgs/tools/misc/hdfview/default.nix
new file mode 100644
index 00000000000..405e19e75bf
--- /dev/null
+++ b/pkgs/tools/misc/hdfview/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchurl, cmake, ant, javac, hdf_java }:
+
+stdenv.mkDerivation rec {
+  name = "hdfview-${version}";
+  version = "2.14";
+
+  src = fetchurl {
+    url = "http://support.hdfgroup.org/ftp/HDF5/hdf-java/current/src/${name}.tar.gz";
+    sha256 = "0lv9djfm7hnp14mcyzbiax3xjb8vkbzhh7bdl6cvgy53pc08784p";
+  };
+
+  nativeBuildInputs = [ ant javac ];
+
+  HDFLIBS = hdf_java;
+
+  buildPhase = ''
+    ant run
+    ant package
+  '';
+
+  installPhase = ''
+    mkdir $out
+    # exclude jre
+    cp -r build/HDF_Group/HDFView/*/{lib,share} $out/
+    mkdir $out/bin
+    cp -r build/HDF_Group/HDFView/*/hdfview.sh $out/bin/hdfview
+    chmod +x $out/bin/hdfview
+    substituteInPlace $out/bin/hdfview \
+      --replace "@JAVABIN@" "${javac}/bin/" \
+      --replace "@INSTALLDIR@" "$out"
+  '';
+
+  meta = {
+    description = "A visual tool for browsing and editing HDF4 and HDF5 files";
+    license = stdenv.lib.licenses.free; # BSD-like
+    homepage = https://support.hdfgroup.org/products/java/index.html;
+    platforms = stdenv.lib.platforms.linux;
+  };
+}
diff --git a/pkgs/tools/misc/kargo/default.nix b/pkgs/tools/misc/kargo/default.nix
index 4c390f1e80e..cb2109e195e 100644
--- a/pkgs/tools/misc/kargo/default.nix
+++ b/pkgs/tools/misc/kargo/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, python2Packages }:
+{ stdenv, fetchurl, python2Packages, ansible2 }:
 
 python2Packages.buildPythonApplication rec {
   version = "0.4.6";
diff --git a/pkgs/tools/misc/mbuffer/default.nix b/pkgs/tools/misc/mbuffer/default.nix
index 51c0ebc82ae..4c4204badb1 100644
--- a/pkgs/tools/misc/mbuffer/default.nix
+++ b/pkgs/tools/misc/mbuffer/default.nix
@@ -3,19 +3,19 @@
  } :
 
 stdenv.mkDerivation rec {
-  version = "20160613";
+  version = "20170806";
   name = "mbuffer-${version}";
 
   src = fetchurl {
     url = "http://www.maier-komor.de/software/mbuffer/mbuffer-${version}.tgz";
-    sha256 = "1za9yqfn23axnp4zymdsrjkqcci3wxywqw3bv4dxms57q1ljiab7";
+    sha256 = "0kbvxrd1k0509whgyl7w20cmqn5q16vjjh7d9glpl2j4lfd66ljw";
   };
 
   buildInputs = [ openssl ];
 
   meta = {
     homepage = http://www.maier-komor.de/mbuffer.html;
-    description  = "mbuffer is a tool for buffering data streams with a large set of unique features";
+    description  = "A tool for buffering data streams with a large set of unique features";
     license = stdenv.lib.licenses.gpl3;
     maintainers = with stdenv.lib.maintainers; [ tokudan ];
     platforms = with stdenv.lib.platforms; allBut darwin;
diff --git a/pkgs/tools/misc/xdo/default.nix b/pkgs/tools/misc/xdo/default.nix
index 72b42cdc3b9..b3c97207b1d 100644
--- a/pkgs/tools/misc/xdo/default.nix
+++ b/pkgs/tools/misc/xdo/default.nix
@@ -1,19 +1,19 @@
-{ stdenv, fetchFromGitHub, libxcb, xcbutilwm }:
+{ stdenv, fetchFromGitHub, libxcb, xcbutil, xcbutilwm }:
 
 stdenv.mkDerivation rec {
    name = "xdo-${version}";
-   version = "0.5.5";
+   version = "0.5.6";
 
    src = fetchFromGitHub {
      owner = "baskerville";
      repo = "xdo";
      rev = version;
-     sha256 = "17i7ym4jrrbsiqs0jnm6k49hp9qn32hswad4j0lavwgv4wawachz";
+     sha256 = "1i8xlsp36ji7cvyh66ajqsf59hxpwm0xvnn9laq7nbajcx3qqlnh";
    };
-   
+
    makeFlags = "PREFIX=$(out)";
 
-   buildInputs = [ libxcb xcbutilwm ];
+   buildInputs = [ libxcb xcbutilwm xcbutil ];
 
    meta = with stdenv.lib; {
      description = "Small X utility to perform elementary actions on windows";
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index bf05cd9bf5c..3820b95405e 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -15,11 +15,11 @@ with stdenv.lib;
 buildPythonApplication rec {
 
   name = "youtube-dl-${version}";
-  version = "2017.07.30.1";
+  version = "2017.08.23";
 
   src = fetchurl {
     url = "https://yt-dl.org/downloads/${version}/${name}.tar.gz";
-    sha256 = "1m1n5d06xh8hnild6kssiv9yaq2sm7vy0c8h506v3nff7i9wf0a7";
+    sha256 = "1vq0r37ynnj2hx0ssh3hycg4wzhwch5pphq76swfz76r1klnrich";
   };
 
   nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/i2pd/default.nix b/pkgs/tools/networking/i2pd/default.nix
index 8d2ac5ce9d7..ef2bc0c4828 100644
--- a/pkgs/tools/networking/i2pd/default.nix
+++ b/pkgs/tools/networking/i2pd/default.nix
@@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
   meta = with stdenv.lib; {
     homepage = https://i2pd.website;
     description = "Minimal I2P router written in C++";
-    license = licenses.gpl2;
+    license = licenses.bsd3;
     maintainers = with maintainers; [ edwtjo ];
     platforms = platforms.linux;
   };
diff --git a/pkgs/tools/networking/lldpd/default.nix b/pkgs/tools/networking/lldpd/default.nix
index 5a97f2219ce..1ce9f7cb323 100644
--- a/pkgs/tools/networking/lldpd/default.nix
+++ b/pkgs/tools/networking/lldpd/default.nix
@@ -3,17 +3,18 @@
 
 stdenv.mkDerivation rec {
   name = "lldpd-${version}";
-  version = "0.9.7";
+  version = "0.9.8";
 
   src = fetchurl {
     url = "https://media.luffy.cx/files/lldpd/${name}.tar.gz";
-    sha256 = "1f0d5s4643pjmgycc5ssgl1pggyq5a7navhabkyhcg0aqdah6dmr";
+    sha256 = "0kwck17cr2f1a395a8bfmj7fz1n4i1hv429cbdbkhff33glr9r4y";
   };
 
   configureFlags = [
     "--localstatedir=/var"
     "--enable-pie"
     "--with-snmp"
+    "--with-systemdsystemunitdir=\${out}/lib/systemd/system"
   ];
 
   nativeBuildInputs = [ pkgconfig removeReferencesTo ];
diff --git a/pkgs/tools/networking/mitmproxy/default.nix b/pkgs/tools/networking/mitmproxy/default.nix
index 7d36b6b4ac7..5259f246012 100644
--- a/pkgs/tools/networking/mitmproxy/default.nix
+++ b/pkgs/tools/networking/mitmproxy/default.nix
@@ -13,14 +13,25 @@ python3Packages.buildPythonPackage rec {
   };
 
   patches = [
-    # Bump pyopenssl dependency
-    # https://github.com/mitmproxy/mitmproxy/pull/2252
+    # fix tests
     (fetchpatch {
-      url = "https://patch-diff.githubusercontent.com/raw/mitmproxy/mitmproxy/pull/2252.patch";
-      sha256 = "1smld21df79249qbh412w8gi2agcf4zjhxnlawy19yjl1fk2h67c";
+      url = "https://github.com/mitmproxy/mitmproxy/commit/b3525570929ba47c10d9d08696876c39487f7000.patch";
+      sha256 = "111fld5gqdii7rs1jhqaqrxgbyhfn6qd0y7l15k4npamsnvdnv20";
     })
+    # bump pyOpenSSL
+    (fetchpatch {
+      url = https://github.com/mitmproxy/mitmproxy/commit/6af72160bf98b58682b8f9fc5aabf51928d2b1d3.patch;
+      sha256 = "1q4ml81pq9c8j9iscq8janbxf4s37w3bqskbs6r30yqzy63v54f2";
+    })
+    # https://github.com/mitmproxy/mitmproxy/commit/3d7cde058b7e6242d93b9bc9d3e17520ffb578a5
+    ./tornado-4.6.patch
   ];
 
+  checkPhase = ''
+    export HOME=$(mktemp -d)
+    LC_CTYPE=en_US.UTF-8 python setup.py pytest
+  '';
+
   propagatedBuildInputs = with python3Packages; [
     blinker click certifi construct cryptography
     cssutils editorconfig h2 html2text hyperframe
@@ -29,8 +40,9 @@ python3Packages.buildPythonPackage rec {
     urwid watchdog brotlipy sortedcontainers
   ];
 
-  # Tests fail due to an error with a decorator
-  doCheck = false;
+  buildInputs = with python3Packages; [
+    beautifulsoup4 flask pytz pytest pytestrunner protobuf3_2
+  ];
 
   meta = with stdenv.lib; {
     description = "Man-in-the-middle proxy";
diff --git a/pkgs/tools/networking/mitmproxy/tornado-4.6.patch b/pkgs/tools/networking/mitmproxy/tornado-4.6.patch
new file mode 100644
index 00000000000..879b8a4c379
--- /dev/null
+++ b/pkgs/tools/networking/mitmproxy/tornado-4.6.patch
@@ -0,0 +1,11 @@
+--- mitmproxy-v2.0.2-src.org/setup.py	2017-08-28 07:31:51.727424688 +0100
++++ mitmproxy-v2.0.2-src/setup.py	2017-08-28 07:35:55.608919302 +0100
+@@ -78,7 +78,7 @@
+         "pyperclip>=1.5.22, <1.6",
+         "requests>=2.9.1, <3",
+         "ruamel.yaml>=0.13.2, <0.14",
+-        "tornado>=4.3, <4.5",
++        "tornado>=4.3, <4.6",
+         "urwid>=1.3.1, <1.4",
+         "watchdog>=0.8.3, <0.9",
+         "brotlipy>=0.5.1, <0.7",
diff --git a/pkgs/tools/networking/ngrok/default.nix b/pkgs/tools/networking/ngrok-1/default.nix
index e354ad223b8..e354ad223b8 100644
--- a/pkgs/tools/networking/ngrok/default.nix
+++ b/pkgs/tools/networking/ngrok-1/default.nix
diff --git a/pkgs/tools/networking/ngrok/deps.nix b/pkgs/tools/networking/ngrok-1/deps.nix
index 1db3c3e6519..1db3c3e6519 100644
--- a/pkgs/tools/networking/ngrok/deps.nix
+++ b/pkgs/tools/networking/ngrok-1/deps.nix
diff --git a/pkgs/tools/networking/ngrok-2/default.nix b/pkgs/tools/networking/ngrok-2/default.nix
new file mode 100644
index 00000000000..031161da4d5
--- /dev/null
+++ b/pkgs/tools/networking/ngrok-2/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, unzip }:
+
+stdenv.mkDerivation rec {
+  name = "ngrok-${version}";
+  version = "2.2.8";
+
+  src = if stdenv.system == "i686-linux" then fetchurl {
+    url = "https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-i386.tgz";
+    sha256 = "0s5ymlaxrvm13q3mlvfirh74sx60qh56c5sgdma2r7q5qlsq41xg";
+  } else if stdenv.system == "x86_64-linux" then fetchurl {
+    url = "https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.tgz";
+    sha256 = "1mn9iwgy6xzrjihikwc2k2j59igqmph0cwx17qp0ziap9lp5xxad";
+  } else throw "platform ${stdenv.system} not supported!";
+
+  sourceRoot = ".";
+
+  installPhase = ''
+    install -D ngrok $out/bin/ngrok
+  '';
+
+  meta = with stdenv.lib; {
+    description = "ngrok";
+    longDescription = ''
+      Allows you to expose a web server running on your local machine to the internet.
+    '';
+    homepage = https://ngrok.com/;
+    license = stdenv.lib.licenses.unfree;
+    platforms = [ "i686-linux" "x86_64-linux" ];
+    maintainers = [ maintainers.bobvanderlinden ];
+  };
+}
diff --git a/pkgs/tools/networking/strongswan/default.nix b/pkgs/tools/networking/strongswan/default.nix
index 4d7bc7b3d0d..0671b7d0089 100644
--- a/pkgs/tools/networking/strongswan/default.nix
+++ b/pkgs/tools/networking/strongswan/default.nix
@@ -1,15 +1,15 @@
-{ stdenv, fetchurl, fetchpatch, gmp, pkgconfig, python, autoreconfHook
+{ stdenv, fetchurl, gmp, pkgconfig, python, autoreconfHook
 , curl, trousers, sqlite, iptables, libxml2, openresolv
 , ldns, unbound, pcsclite, openssl, systemd, pam
 , enableTNC ? false }:
 
 stdenv.mkDerivation rec {
   name = "strongswan-${version}";
-  version = "5.5.3";
+  version = "5.6.0";
 
   src = fetchurl {
     url = "http://download.strongswan.org/${name}.tar.bz2";
-    sha256 = "1m7qq0l5pwj1wy0f7h2b7msb1d98rx78z6xg27g0hiqpk6qm9sn5";
+    sha256 = "04vvha2zgsg1cq05cnn6sf7a4hq9ndnsfxpw1drm5v9l4vcw0kd1";
   };
 
   dontPatchELF = true;
@@ -21,10 +21,6 @@ stdenv.mkDerivation rec {
     ++ stdenv.lib.optionals stdenv.isLinux [ systemd.dev pam ];
 
   patches = [
-    (fetchpatch {
-      url = "https://download.strongswan.org/security/CVE-2017-11185/strongswan-4.4.0-5.5.3_gmp_mpz_export.patch";
-      sha256 = "1vqf077dq71wai7ma3bpzv55i76b48gp2cf6507chgy4wj04gi73";
-    })
     ./ext_auth-path.patch
     ./firewall_defaults.patch
     ./updown-path.patch
diff --git a/pkgs/tools/networking/xl2tpd/default.nix b/pkgs/tools/networking/xl2tpd/default.nix
index c032ee7dd6b..e50f208e95f 100644
--- a/pkgs/tools/networking/xl2tpd/default.nix
+++ b/pkgs/tools/networking/xl2tpd/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "xl2tpd-${version}";
-  version = "1.3.7";
+  version = "1.3.10";
 
   src = fetchFromGitHub {
     owner = "xelerance";
     repo = "xl2tpd";
     rev = "v${version}";
-    sha256 = "0wjkj2b5rkxhx522wmkml5s0zdp68hkvrh7npx839dvsr79fji7k";
+    sha256 = "1z8a33hz82nla1342lfxdihssbhw9lzkgavdhl275im5byj8qgkg";
   };
 
   buildInputs = [ libpcap ];
diff --git a/pkgs/tools/security/bruteforce-luks/default.nix b/pkgs/tools/security/bruteforce-luks/default.nix
index 85773953af0..7b505722efa 100644
--- a/pkgs/tools/security/bruteforce-luks/default.nix
+++ b/pkgs/tools/security/bruteforce-luks/default.nix
@@ -2,10 +2,10 @@
 
 stdenv.mkDerivation rec {
   name = "bruteforce-luks-${version}";
-  version = "1.2.1";
+  version = "1.3.1";
 
   src = fetchFromGitHub {
-    sha256 = "1i3qr2qgqdx3a5kjl0wrjh9kw8fx2indrj57z6911nx747pmda0n";
+    sha256 = "14ckm31wbzf3lnk472bywjjlh9kysb793nsh2gp04aa5hp5lym58";
     rev = version;
     repo = "bruteforce-luks";
     owner = "glv2";
diff --git a/pkgs/tools/security/clamav/default.nix b/pkgs/tools/security/clamav/default.nix
index da469771c6e..83a2a1fd85e 100644
--- a/pkgs/tools/security/clamav/default.nix
+++ b/pkgs/tools/security/clamav/default.nix
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
     "--sysconfdir=/etc/clamav"
     "--with-zlib=${zlib.dev}"
     "--disable-zlib-vcheck" # it fails to recognize that 1.2.10 >= 1.2.2
+    "--disable-llvm" # enabling breaks the build at the moment
     "--with-libbz2-prefix=${bzip2.dev}"
     "--with-iconv-dir=${libiconv}"
     "--with-xml=${libxml2.dev}"
diff --git a/pkgs/tools/system/illum/default.nix b/pkgs/tools/system/illum/default.nix
index 4cdfeec12b7..d8faeea19d8 100644
--- a/pkgs/tools/system/illum/default.nix
+++ b/pkgs/tools/system/illum/default.nix
@@ -17,10 +17,6 @@ stdenv.mkDerivation rec {
     bash ./configure
   '';
 
-  buildPhase = ''
-    ninja
-  '';
-
   installPhase = ''
     mkdir -p $out/bin
     mv illum-d $out/bin
diff --git a/pkgs/tools/system/syslog-ng-incubator/default.nix b/pkgs/tools/system/syslog-ng-incubator/default.nix
index 3fd529b0a50..ef92bdfe47e 100644
--- a/pkgs/tools/system/syslog-ng-incubator/default.nix
+++ b/pkgs/tools/system/syslog-ng-incubator/default.nix
@@ -1,22 +1,22 @@
 { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, glib, syslogng
-, eventlog, perl, python, yacc, protobufc, libivykis
+, eventlog, perl, python, yacc, protobufc, libivykis, libcap, czmq
 }:
 
 stdenv.mkDerivation rec {
   name = "syslog-ng-incubator-${version}";
-  version = "0.5.0";
+  version = "0.6.0";
 
   src = fetchFromGitHub {
     owner = "balabit";
     repo = "syslog-ng-incubator";
     rev = name;
-    sha256 = "00j123ya0xfj1jicaqnk1liffx07mhhf0r406pabxjjj97gy8nlk";
+    sha256 = "1wiv289lc5kxsd3ydyn1zvvgjrj1mv2jghv0cm425wsdsfr7fjb0";
   };
 
   nativeBuildInputs = [ pkgconfig autoreconfHook yacc ];
 
   buildInputs = [
-    glib syslogng eventlog perl python protobufc libivykis
+    glib syslogng eventlog perl python protobufc libivykis libcap czmq
   ];
 
   configureFlags = [
@@ -29,6 +29,5 @@ stdenv.mkDerivation rec {
     license = licenses.gpl2;
     maintainers = [ maintainers.rickynils ];
     platforms = platforms.linux;
-    broken = true; # does not work with our new syslog-ng version yet
   };
 }
diff --git a/pkgs/tools/system/syslog-ng/default.nix b/pkgs/tools/system/syslog-ng/default.nix
index 812fab65ef6..397ba053841 100644
--- a/pkgs/tools/system/syslog-ng/default.nix
+++ b/pkgs/tools/system/syslog-ng/default.nix
@@ -9,11 +9,11 @@ in
 
 stdenv.mkDerivation rec {
   name = "${pname}-${version}";
-  version = "3.9.1";
+  version = "3.11.1";
 
   src = fetchurl {
     url = "https://github.com/balabit/${pname}/releases/download/${name}/${name}.tar.gz";
-    sha256 = "05qaqw115py5iz55vmc0j1xcwcpr8wa9vpmbixhr1rqaamm8ay2n";
+    sha256 = "1sa51bh3rs4gq4zpgkyv94lqcx3qvxa41d2dsa7hyxidkp1rs2b4";
   };
 
   nativeBuildInputs = [ pkgconfig which ];
diff --git a/pkgs/tools/text/silver-searcher/default.nix b/pkgs/tools/text/silver-searcher/default.nix
index 14680896312..34aa0e9c7ed 100644
--- a/pkgs/tools/text/silver-searcher/default.nix
+++ b/pkgs/tools/text/silver-searcher/default.nix
@@ -2,13 +2,13 @@
 
 stdenv.mkDerivation rec {
   name = "silver-searcher-${version}";
-  version = "2.0.0";
+  version = "2.1.0";
 
   src = fetchFromGitHub {
     owner = "ggreer";
     repo = "the_silver_searcher";
     rev = "${version}";
-    sha256 = "074ll6l0486ak4ijvfzhwsp6fp8w55x4yjviql5kb8qpisi9ll7y";
+    sha256 = "0wcw4kyivb10m9b173183jrj46a0gisd35yqxi1mr9hw5l5dhkpa";
   };
 
   NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
diff --git a/pkgs/tools/text/xsv/default.nix b/pkgs/tools/text/xsv/default.nix
index 12061b75a9d..db84eac4a23 100644
--- a/pkgs/tools/text/xsv/default.nix
+++ b/pkgs/tools/text/xsv/default.nix
@@ -4,16 +4,16 @@ with rustPlatform;
 
 buildRustPackage rec {
   name = "xsv-${version}";
-  version = "0.12.1";
+  version = "0.12.2";
 
   src = fetchFromGitHub {
     owner = "BurntSushi";
     repo = "xsv";
     rev = "${version}";
-    sha256 = "0xmjx5grwjrx2zsqmpblid9pqpwkk9pv468ffqlza3w35n9x5dax";
+    sha256 = "0z1z3b6nzaid510jaikkawvpmv4kjphzz84p0hppq6vcp5jy00s2";
   };
 
-  depsSha256 = "0gdbxgykhy6wm89mbdvl7ck2v0f66hwlm0m1q7r64bkb7i10fmkd";
+  depsSha256 = "13hy835871zxdnakwsr4bjm4krahlz4aqk5lh0rw78avfla89q9q";
 
   meta = with stdenv.lib; {
     description = "A fast CSV toolkit written in Rust";
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 5c9ae26c77b..181e8a35277 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -112,6 +112,7 @@ mapAliases (rec {
   pidgin-with-plugins = pidgin; # added 2016-06
   pidginlatexSF = pidginlatex; # added 2014-11-02
   poppler_qt5 = libsForQt5.poppler;  # added 2015-12-19
+  prometheus-statsd-bridge = prometheus-statsd-exporter;  # added 2017-08-27
   qca-qt5 = libsForQt5.qca-qt5;  # added 2015-12-19
   QmidiNet = qmidinet;  # added 2016-05-22
   qt_gstreamer = qt-gstreamer;  # added 2017-02
@@ -119,6 +120,7 @@ mapAliases (rec {
   quake3game = ioquake3; # added 2016-01-14
   qwt6 = libsForQt5.qwt;  # added 2015-12-19
   rdiff_backup = rdiff-backup;  # added 2014-11-23
+  rdmd = dtools;  # added 2017-08-19
   rssglx = rss-glx; #added 2015-03-25
   rubygems = throw "deprecated 2016-03-02: rubygems is now bundled with ruby";
   rustUnstable = rustNightly; # added 2016-11-29
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 336009476ca..b077d5238ce 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -412,6 +412,8 @@ with pkgs;
 
   airfield = callPackage ../tools/networking/airfield { };
 
+  airsonic = callPackage ../servers/misc/airsonic { };
+
   aj-snapshot  = callPackage ../applications/audio/aj-snapshot { };
 
   albert = libsForQt5.callPackage ../applications/misc/albert {};
@@ -569,6 +571,8 @@ with pkgs;
 
   genymotion = callPackage ../development/mobile/genymotion { };
 
+  git-fire = callPackage ../tools/misc/git-fire { };
+
   grc = callPackage ../tools/misc/grc { };
 
   green-pdfviewer = callPackage ../applications/misc/green-pdfviewer {
@@ -971,6 +975,8 @@ with pkgs;
     gtk = gtk3;
   };
 
+  dtools = callPackage ../development/tools/dtools { };
+
   dtrx = callPackage ../tools/compression/dtrx { };
 
   duperemove = callPackage ../tools/filesystems/duperemove { };
@@ -1003,6 +1009,8 @@ with pkgs;
 
   ephemeralpg = callPackage ../applications/misc/ephemeralpg {};
 
+  et = callPackage ../applications/misc/et {};
+
   f3 = callPackage ../tools/filesystems/f3 { };
 
   facedetect = callPackage ../tools/graphics/facedetect { };
@@ -1137,6 +1145,8 @@ with pkgs;
 
   ring-daemon = callPackage ../applications/networking/instant-messengers/ring-daemon { };
 
+  riot-web = callPackage ../applications/networking/instant-messengers/riot/riot-web.nix { };
+
   rsyslog = callPackage ../tools/system/rsyslog {
     hadoop = null; # Currently Broken
     czmq = czmq3;
@@ -2470,6 +2480,14 @@ with pkgs;
     inherit gfortran;
   });
 
+  hdfview = callPackage ../tools/misc/hdfview {
+    javac = jdk;
+  };
+
+  hdf_java = callPackage ../tools/misc/hdfjava {
+    javac = jdk;
+  };
+
   hecate = callPackage ../applications/editors/hecate { };
 
   heaptrack = libsForQt5.callPackage ../development/tools/profiling/heaptrack {};
@@ -3398,11 +3416,17 @@ with pkgs;
 
   nextcloud = callPackage ../servers/nextcloud { };
 
+  nextcloud-client = libsForQt56.callPackage ../applications/networking/nextcloud-client { };
+
   nextcloud-news-updater = callPackage ../servers/nextcloud/news-updater.nix { };
 
   ngrep = callPackage ../tools/networking/ngrep { };
 
-  ngrok = callPackage ../tools/networking/ngrok { };
+  ngrok = ngrok-2;
+
+  ngrok-2 = callPackage ../tools/networking/ngrok-2 { };
+
+  ngrok-1 = callPackage ../tools/networking/ngrok-1 { };
 
   noice = callPackage ../applications/misc/noice { };
 
@@ -3622,6 +3646,8 @@ with pkgs;
 
   packetdrill = callPackage ../tools/networking/packetdrill { };
 
+  padthv1 = callPackage ../applications/audio/padthv1 { };
+
   pakcs = callPackage ../development/compilers/pakcs {};
 
   pal = callPackage ../tools/misc/pal { };
@@ -4052,8 +4078,6 @@ with pkgs;
 
   rdfind = callPackage ../tools/filesystems/rdfind { };
 
-  rdmd = callPackage ../development/compilers/rdmd { };
-
   rhash = callPackage ../tools/security/rhash { };
 
   riemann_c_client = callPackage ../tools/misc/riemann-c-client { };
@@ -4291,6 +4315,8 @@ with pkgs;
 
   sqliteman = callPackage ../applications/misc/sqliteman { };
 
+  sqlmap = callPackage ../applications/misc/sqlmap { };
+
   stdman = callPackage ../data/documentation/stdman { };
 
   storebrowse = callPackage ../tools/system/storebrowse { };
@@ -6566,10 +6592,11 @@ with pkgs;
 
   guile-xcb = callPackage ../development/guile-modules/guile-xcb { };
 
-  pharo-vms = callPackage_i686 ../development/pharo/vm { };
-  pharo-vm  = pharo-vms.pharo-no-spur;
-  pharo-vm5 = pharo-vms.pharo-spur;
-
+  pharo-vms = callPackage ../development/pharo/vm { };
+  pharo = pharo-vms.multi-vm-wrapper;
+  pharo-cog32 = pharo-vms.cog32;
+  pharo-spur32 = pharo-vms.spur32;
+  pharo-spur64 = assert stdenv.is64bit; pharo-vms.spur64;
   pharo-launcher = callPackage ../development/pharo/launcher { };
 
   srecord = callPackage ../development/tools/misc/srecord { };
@@ -6593,8 +6620,11 @@ with pkgs;
 
   augeas = callPackage ../tools/system/augeas { };
 
-  ansible  = python2Packages.ansible2;
-  ansible2 = python2Packages.ansible2;
+  ansible_2_1 = callPackage ../tools/admin/ansible/2.1.nix {};
+  ansible_2_2 = callPackage ../tools/admin/ansible/2.2.nix {};
+  ansible_2_3 = callPackage ../tools/admin/ansible/2.3.nix {};
+  ansible  = ansible_2_3;
+  ansible2 = ansible_2_3;
 
   antlr = callPackage ../development/tools/parsing/antlr/2.7.7.nix { };
 
@@ -7195,6 +7225,8 @@ with pkgs;
 
   postiats-utilities = callPackage ../development/tools/postiats-utilities {};
 
+  pprof = callPackage ../development/tools/profiling/pprof { };
+
   prelink = callPackage ../development/tools/misc/prelink { };
 
   premake3 = callPackage ../development/tools/misc/premake/3.nix { };
@@ -7413,7 +7445,7 @@ with pkgs;
   xxdiff = callPackage ../development/tools/misc/xxdiff {
     bison = bison2;
   };
-  xxdiff-tip = callPackage ../development/tools/misc/xxdiff/tip.nix { };
+  xxdiff-tip = qt56.callPackage ../development/tools/misc/xxdiff/tip.nix { };
 
   yacc = bison;
 
@@ -7867,6 +7899,8 @@ with pkgs;
   fltk13 = callPackage ../development/libraries/fltk { };
   fltk = self.fltk13;
 
+  flyway = callPackage ../development/tools/flyway { };
+
   fplll = callPackage ../development/libraries/fplll {};
   fplll_20160331 = callPackage ../development/libraries/fplll/20160331.nix {};
 
@@ -7874,6 +7908,8 @@ with pkgs;
 
   freetts = callPackage ../development/libraries/freetts { };
 
+  frog = self.languageMachines.frog;
+
   fstrm = callPackage ../development/libraries/fstrm { };
 
   cfitsio = callPackage ../development/libraries/cfitsio { };
@@ -8476,6 +8512,8 @@ with pkgs;
   };
   libkrb5 = krb5Full.override { type = "lib"; };
 
+  languageMachines = recurseIntoAttrs (import ../development/libraries/languagemachines/packages.nix { inherit callPackage; });
+
   lasso = callPackage ../development/libraries/lasso { };
 
   LASzip = callPackage ../development/libraries/LASzip { };
@@ -9084,8 +9122,6 @@ with pkgs;
 
   libmspack = callPackage ../development/libraries/libmspack { };
 
-  libmusicbrainz2 = callPackage ../development/libraries/libmusicbrainz/2.x.nix { };
-
   libmusicbrainz3 = callPackage ../development/libraries/libmusicbrainz { };
 
   libmusicbrainz5 = callPackage ../development/libraries/libmusicbrainz/5.x.nix { };
@@ -9267,8 +9303,6 @@ with pkgs;
 
   libtsm = callPackage ../development/libraries/libtsm { };
 
-  libtunepimp = callPackage ../development/libraries/libtunepimp { };
-
   libtxc_dxtn = callPackage ../development/libraries/libtxc_dxtn { };
 
   libtxc_dxtn_s2tc = callPackage ../development/libraries/libtxc_dxtn_s2tc { };
@@ -10280,6 +10314,8 @@ with pkgs;
 
   smpeg = callPackage ../development/libraries/smpeg { };
 
+  smpeg2 = callPackage ../development/libraries/smpeg2 { };
+
   snack = callPackage ../development/libraries/snack {
         # optional
   };
@@ -11487,7 +11523,7 @@ with pkgs;
   prometheus-openvpn-exporter = callPackage ../servers/monitoring/prometheus/openvpn-exporter.nix { };
   prometheus-pushgateway = callPackage ../servers/monitoring/prometheus/pushgateway.nix { };
   prometheus-snmp-exporter = callPackage ../servers/monitoring/prometheus/snmp-exporter.nix { };
-  prometheus-statsd-bridge = callPackage ../servers/monitoring/prometheus/statsd-bridge.nix { };
+  prometheus-statsd-exporter = callPackage ../servers/monitoring/prometheus/statsd-bridge.nix { };
   prometheus-unifi-exporter = callPackage ../servers/monitoring/prometheus/unifi-exporter { };
   prometheus-varnish-exporter = callPackage ../servers/monitoring/prometheus/varnish-exporter.nix { };
 
@@ -12720,9 +12756,9 @@ with pkgs;
 
   upower = callPackage ../os-specific/linux/upower { };
 
-  upstart = callPackage ../os-specific/linux/upstart { };
-
-  upstart-check-config = callPackage ../os-specific/linux/upstart/check-config.nix {};
+  usbguard = libsForQt5.callPackage ../os-specific/linux/usbguard {
+    libgcrypt = null;
+  };
 
   usbutils = callPackage ../os-specific/linux/usbutils { };
 
@@ -14205,7 +14241,7 @@ with pkgs;
     gtk2 = gtk2-x11;
   };
 
-  gqrx = callPackage ../applications/misc/gqrx { };
+  gqrx = qt5.callPackage ../applications/misc/gqrx { };
 
   grass = callPackage ../applications/gis/grass { };
 
@@ -14423,6 +14459,7 @@ with pkgs;
   gitMinimal = git.override {
     withManual = false;
     pythonSupport = false;
+    withpcre2 = false;
   };
 
   gitRepo = callPackage ../applications/version-management/git-repo {
@@ -14852,8 +14889,6 @@ with pkgs;
     boost = boost155;
   };
 
-  k3b = kdeApplications.k3b;
-
   k9copy = libsForQt5.callPackage ../applications/video/k9copy {};
 
   kadu = kde4.callPackage ../applications/networking/instant-messengers/kadu { };
@@ -14874,10 +14909,10 @@ with pkgs;
       recurseIntoAttrs (makeOverridable mkApplications attrs);
 
   inherit (kdeApplications)
-    akonadi ark dolphin ffmpegthumbs filelight gwenview kate kdenlive
-    kcachegrind kcalc kcolorchooser kcontacts kdf kgpg khelpcenter kig kmail
-    kmix kolourpaint kompare konsole krfb kwalletmanager marble okteta okular
-    spectacle;
+    akonadi akregator ark dolphin ffmpegthumbs filelight gwenview k3b
+    kaddressbook kate kcachegrind kcalc kcolorchooser kcontacts kdenlive kdf
+    kgpg khelpcenter kig kleopatra kmail kmix kolourpaint kompare konsole
+    kontact korganizer krfb kwalletmanager marble okteta okular spectacle;
 
   kdeconnect = libsForQt5.callPackage ../applications/misc/kdeconnect { };
 
@@ -16040,8 +16075,6 @@ with pkgs;
 
   styx = callPackage ../applications/misc/styx { };
 
-  styx-themes = callPackage ../applications/misc/styx/themes.nix { };
-
   tecoc = callPackage ../applications/editors/tecoc { };
 
   viber = callPackage ../applications/networking/instant-messengers/viber { };
@@ -16977,6 +17010,8 @@ with pkgs;
 
   xss-lock = callPackage ../misc/screensavers/xss-lock { };
 
+  xssproxy = callPackage ../misc/screensavers/xssproxy { };
+
   xsynth_dssi = callPackage ../applications/audio/xsynth-dssi { };
 
   xterm = callPackage ../applications/misc/xterm { };
@@ -17032,7 +17067,10 @@ with pkgs;
 
   zam-plugins = callPackage ../applications/audio/zam-plugins { };
 
-  zanshin = kde4.callPackage ../applications/office/zanshin { };
+  zanshin = libsForQt5.callPackage ../applications/office/zanshin {
+    inherit (kdeApplications) akonadi-calendar akonadi-notes akonadi-search kidentitymanagement kontactinterface kldap;
+    inherit (kdeFrameworks) krunner kwallet;
+  };
 
   zathura = callPackage ../applications/misc/zathura {
     useMupdf = config.zathura.useMupdf or true;
@@ -17258,7 +17296,9 @@ with pkgs;
 
   garden-of-coloured-lights = callPackage ../games/garden-of-coloured-lights { allegro = allegro4; };
 
-  gargoyle = callPackage ../games/gargoyle { };
+  gargoyle = callPackage ../games/gargoyle {
+    libtool = darwin.cctools;
+  };
 
   gav = callPackage ../games/gav { };
 
@@ -17483,6 +17523,8 @@ with pkgs;
 
   robotfindskitten = callPackage ../games/robotfindskitten { };
 
+  rocksndiamonds = callPackage ../games/rocksndiamonds { };
+
   saga = callPackage ../applications/gis/saga { };
 
   samplv1 = callPackage ../applications/audio/samplv1 { };
diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix
index 9462eb3d3da..64656990d0e 100644
--- a/pkgs/top-level/ocaml-packages.nix
+++ b/pkgs/top-level/ocaml-packages.nix
@@ -137,6 +137,10 @@ let
       then callPackage ../development/ocaml-modules/cohttp { }
       else cohttp_p4;
 
+    cohttp-lwt = callPackage ../development/ocaml-modules/cohttp/lwt.nix { };
+
+    cohttp-lwt-unix = callPackage ../development/ocaml-modules/cohttp/lwt-unix.nix { };
+
     conduit_p4 = callPackage ../development/ocaml-modules/conduit/0.10.0.nix {
        lwt = lwt2;
     };
@@ -146,6 +150,10 @@ let
       then callPackage ../development/ocaml-modules/conduit { }
       else conduit_p4;
 
+    conduit-lwt = callPackage ../development/ocaml-modules/conduit/lwt.nix { };
+
+    conduit-lwt-unix = callPackage ../development/ocaml-modules/conduit/lwt-unix.nix { };
+
     config-file = callPackage ../development/ocaml-modules/config-file { };
 
     containers = callPackage ../development/ocaml-modules/containers { };
@@ -182,7 +190,10 @@ let
 
     eff = callPackage ../development/interpreters/eff { };
 
-    eliom = callPackage ../development/ocaml-modules/eliom { lwt = lwt2; };
+    eliom = callPackage ../development/ocaml-modules/eliom {
+      lwt = lwt2;
+      js_of_ocaml = js_of_ocaml_2;
+    };
 
     enumerate = callPackage ../development/ocaml-modules/enumerate { };
 
@@ -270,9 +281,20 @@ let
       pcre = ocaml_pcre;
     };
 
-    js_of_ocaml = callPackage ../development/tools/ocaml/js_of_ocaml { lwt = lwt2; };
+    js_of_ocaml =
+    if lib.versionOlder "4.02" ocaml.version
+    then callPackage ../development/tools/ocaml/js_of_ocaml/3.0.nix { }
+    else js_of_ocaml_2;
+
+    js_of_ocaml_2 = callPackage ../development/tools/ocaml/js_of_ocaml { lwt = lwt2; };
+
+    js_of_ocaml-camlp4 = callPackage ../development/tools/ocaml/js_of_ocaml/camlp4.nix {};
+
+    js_of_ocaml-compiler = callPackage ../development/tools/ocaml/js_of_ocaml/compiler.nix {};
+
+    js_of_ocaml-ocamlbuild = callPackage ../development/tools/ocaml/js_of_ocaml/ocamlbuild.nix {};
 
-    js_of_ocaml-compiler = callPackage ../development/tools/ocaml/js_of_ocaml-compiler {};
+    js_of_ocaml-ppx = callPackage ../development/tools/ocaml/js_of_ocaml/ppx.nix {};
 
     jsonm = callPackage ../development/ocaml-modules/jsonm { };
 
diff --git a/pkgs/top-level/php-packages.nix b/pkgs/top-level/php-packages.nix
index b88cebda432..d7ad2eb85b6 100644
--- a/pkgs/top-level/php-packages.nix
+++ b/pkgs/top-level/php-packages.nix
@@ -29,6 +29,38 @@ let
     sha256 = "0vv2w5fkkw9n7qdmi5aq50416zxmvyzjym8kb6j1v8kd4xcsjjgw";
   };
 
+  couchbase = buildPecl rec {
+    name = "couchbase-${version}";
+    version = "2.3.4";
+
+    buildInputs = [ pkgs.libcouchbase pcs ];
+
+    src = pkgs.fetchFromGitHub {
+      owner = "couchbase";
+      repo = "php-couchbase";
+      rev = "v${version}";
+      sha256 = "0rdlrl7vh4kbxxj9yxp54xpnnrxydpa9fab7dy4nas474j5vb2bp";
+    };
+
+    configureFlags = [ "--with-couchbase" ];
+
+    patches = [
+      (pkgs.writeText "php-couchbase.patch" ''
+        --- a/config.m4
+        +++ b/config.m4
+        @@ -9,7 +9,7 @@ if test "$PHP_COUCHBASE" != "no"; then
+             LIBCOUCHBASE_DIR=$PHP_COUCHBASE
+           else
+             AC_MSG_CHECKING(for libcouchbase in default path)
+        -    for i in /usr/local /usr; do
+        +    for i in ${pkgs.libcouchbase}; do
+               if test -r $i/include/libcouchbase/couchbase.h; then
+                 LIBCOUCHBASE_DIR=$i
+                 AC_MSG_RESULT(found in $i)
+      '')
+    ];
+  };
+
   imagick = buildPecl {
     name = "imagick-3.4.3RC1";
     sha256 = "0siyxpszjz6s095s2g2854bhprjq49rf22v6syjiwvndg1pc9fsh";
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index 072494381a5..03808ed0789 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -519,13 +519,6 @@ in {
 
   amqplib = callPackage ../development/python-modules/amqplib {};
 
-  ansible  = self.ansible2;
-  ansible2 = self.ansible_2_3;
-
-  ansible_2_1 = callPackage ../development/python-modules/ansible/2.1.nix {};
-  ansible_2_2 = callPackage ../development/python-modules/ansible/2.2.nix {};
-  ansible_2_3 = callPackage ../development/python-modules/ansible/2.3.nix {};
-
   apipkg = callPackage ../development/python-modules/apipkg {};
 
   appdirs = callPackage ../development/python-modules/appdirs { };
@@ -1656,28 +1649,7 @@ in {
     };
   };
 
-  cgroup-utils = buildPythonPackage rec {
-    version = "0.6";
-    name = "cgroup-utils-${version}";
-
-    propagatedBuildInputs = with self; [ argparse ];
-    buildInputs = with self; [ pep8 nose ];
-    # Pep8 tests fail...
-    doCheck = false;
-
-    src = pkgs.fetchFromGitHub {
-      owner = "peo3";
-      repo = "cgroup-utils";
-      rev = "v${version}";
-      sha256 = "1ck0aijzrg9xf6hjdxnynkapnyxw0y385jb0q7wyq4jf77ayfszc";
-    };
-
-    meta = {
-      description = "Utility tools for control groups of Linux";
-      maintainers = with maintainers; [ layus ];
-      license = licenses.gpl2;
-    };
-  };
+  cgroup-utils = callPackage ../development/python-modules/cgroup-utils {};
 
   channels = callPackage ../development/python-modules/channels {};
 
@@ -6224,6 +6196,8 @@ in {
     '';
   };
 
+  gpy = callPackage ../development/python-modules/gpy { };
+
   gitdb = buildPythonPackage rec {
     name = "gitdb-0.6.4";
 
@@ -7383,23 +7357,6 @@ in {
     };
   };
 
-  oger = buildPythonPackage rec {
-    name = "oger-${version}";
-    version = "1.1.3";
-    src = pkgs.fetchurl {
-      url = "http://organic.elis.ugent.be/sites/organic.elis.ugent.be/files/Oger-${version}.tar.gz";
-      sha256 = "1k02ys812lz0x0yymljp102amkm8bvfgqsrphnk235xbcrb0akg5";
-    };
-
-    propagatedBuildInputs = with self; [ MDP scipy numpy matplotlib ];
-
-    meta = {
-      homepage = http://organic.elis.ugent.be/organic/engine;
-      description = "Rapidly build, train, and evalue modular learning architectures";
-      maintainers = with maintainers; [ nico202 ];
-      license = licenses.lgpl3;
-    };
-  };
 
   pamela = buildPythonPackage rec {
     name = "pamela-${version}";
@@ -7986,23 +7943,7 @@ in {
 
   };
 
-
-  pyramid_beaker = buildPythonPackage rec {
-    name = "pyramid_beaker-0.8";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/p/pyramid_beaker/${name}.tar.gz";
-      sha256 = "0hflx3qkcdml1mwpq53sz46s7jickpfn0zy0ns2c7j445j66bp3p";
-    };
-
-    propagatedBuildInputs = with self; [ beaker pyramid ];
-
-    meta = {
-      maintainers = with maintainers; [ domenkozar ];
-      platforms = platforms.all;
-    };
-  };
-
+  pyramid_beaker = callPackage ../development/python-modules/pyramid_beaker { };
 
   pyramid_chameleon = buildPythonPackage rec {
     name = "pyramid_chameleon-0.3";
@@ -21424,22 +21365,6 @@ in {
     };
   };
 
-  sqlmap = buildPythonPackage {
-    name = "sqlmap-1.0.11";
-
-    src = pkgs.fetchurl {
-      url = "mirror://pypi/s/sqlmap/sqlmap-1.0.11.tar.gz";
-      sha256 = "1x4amyjqnd9j5g2kp9nvg8pr5sqzbhr8gd0m6d671bshvgj568vr";
-    };
-
-    meta = with pkgs.stdenv.lib; {
-      homepage = "http://sqlmap.org";
-      license = licenses.gpl2;
-      description = "Automatic SQL injection and database takeover tool";
-      maintainers = with stdenv.lib.maintainers; [ bennofs ];
-    };
-  };
-
   pgpdump = self.buildPythonPackage rec {
     name = "pgpdump-1.5";
 
@@ -22934,43 +22859,7 @@ in {
     };
   };
 
-  keystoneclient = buildPythonPackage rec {
-    name = "keystoneclient-${version}";
-    version = "1.8.1";
-
-    src = pkgs.fetchurl {
-      url = "https://github.com/openstack/python-keystoneclient/archive/${version}.tar.gz";
-      sha256 = "0lijri0xa5fvmynvq148z13kw4xd3bam4zrfd8aj0gb3lnzh9y6v";
-    };
-
-    PBR_VERSION = "${version}";
-
-    buildInputs = with self; [
-        pbr testtools testresources testrepository requests-mock fixtures pkgs.openssl
-        oslotest pep8 ];
-    propagatedBuildInputs = with self; [
-        oslo-serialization oslo-config oslo-i18n oslo-utils
-        Babel argparse prettytable requests six iso8601 stevedore
-        netaddr debtcollector bandit webob mock pycrypto ];
-
-    patchPhase = ''
-      sed -i 's@python@${python.interpreter}@' .testr.conf
-    '';
-
-    doCheck = false; # The checkPhase below is broken
-
-    checkPhase = ''
-      patchShebangs run_tests.sh
-      ./run_tests.sh
-    '';
-
-    meta = {
-      homepage = https://github.com/openstack/python-novaclient/;
-      description = "Client library and command line tool for the OpenStack Nova API";
-      license = stdenv.lib.licenses.asl20;
-      platforms = stdenv.lib.platforms.linux;
-    };
-  };
+  keystoneclient = callPackage ../development/python-modules/keystoneclient { };
 
   keystonemiddleware = buildPythonPackage rec {
     name = "keystonemiddleware-${version}";
diff --git a/pkgs/top-level/release-small.nix b/pkgs/top-level/release-small.nix
index 40218a2b702..be055ccb285 100644
--- a/pkgs/top-level/release-small.nix
+++ b/pkgs/top-level/release-small.nix
@@ -159,7 +159,6 @@ with import ./release-lib.nix { inherit supportedSystems; };
   udev = linux;
   unar = linux;
   unzip = all;
-  upstart = linux;
   usbutils = linux;
   utillinux = linux;
   utillinuxMinimal = linux;